EX-99 6 intex.htm EXHIBIT 99.1 COMPUTATIONAL MATERIALS Converted by FileMerlin

!  Z_SEMT0307_MKT.CDI  #CMOVER_3.0C1 WHOLE_LOAN  !  MAX_CF_VECTSIZE 551

!

!! Created by Intex Deal Maker v3.5.362  ,  subroutines 3.0f

!!   11/12/2003   3:22 PM

!

!  Modeled in the Intex CMO Modeling Language, (GPWWS195)

!  which is copyright (c) 2003 by Intex Solutions, Inc.

!  Intex shall not be held liable for the accuracy of this data

!  nor for the accuracy of information which is derived from this data.

!

 COLLAT_GROUPS 1 2

!

!

  DEFINE CONSTANT #OrigCollBal = 725975211.85

  DEFINE CONSTANT #OrigCollBal1 = 362988095.12

  DEFINE CONSTANT #OrigCollBal2 = 362987116.73

!

  DEFINE CONSTANT #OrigBondBal = 725975211.85

  DEFINE CONSTANT #OrigBondBal1 = 362988095.12

  DEFINE CONSTANT #OrigBondBal2 = 362987116.73

!

  DEFINE #BondBal1                       = 378415211.85

  DEFINE #BondBal2                       = 378414111.85

!

       FULL_DEALNAME:    Sequoia Mortgage Trust 03-7

!

       DEAL SIZE:        $ 725975211.85

       PRICING SPEED:    20% CPR

!      ISSUE DATE:       20031101

       SETTLEMENT DATE:  20031125

!

  Record date delay: 19

!

 DEFINE TR_INDEXDEPS_ALL

!

DEFINE TRANCHE "SUBORD_1", "SUBORD_2", "AR", "A1", "A2", "B1", "B2", "B3", "B4", "B5", "B6", "XB"

!

 DEFINE SCHEDULE "SHIFT1%","SHIFT2%","GRP1_NAS_SCHED","GRP2_NAS_SCHED"

!

   DEAL_CLOCK_INFO _

       ISSUE_CDU_DATE             20031101 _

       DEAL_FIRSTPAY_DATE         20031220

!

!

  CREDIT_SUPPORT_BASIS DEAL

  DEFINE DYNAMIC STICKY #NetRate  = ( COLL_I_MISC("COUPON") ) / COLL_PREV_BAL * 1200

  DEFINE DYNAMIC STICKY #NetRate1  = ( COLL_I_MISC("COUPON",1) ) / COLL_PREV_BAL(1) * 1200

  DEFINE DYNAMIC STICKY #NetRate2  = ( COLL_I_MISC("COUPON",2) ) / COLL_PREV_BAL(2) * 1200

!

!

  DEFINE TABLE "SI_LOSSA1" (6, 2) = "MONTH" "SHIFTR"

      36.1   20%

      132.1   30%

      144.1   35%

      156.1   40%

      168.1   45%

      180.1   50%

!

  DEFINE TABLE "SI_LOSSA2" (6, 2) = "MONTH" "SHIFTR"

      36.1   20%

      132.1   30%

      144.1   35%

      156.1   40%

      168.1   45%

      180.1   50%

!

  DEFINE #COUPON_ALL_SUBS = 0

  DEFINE #COUPON_ALL_SUBS_B1 = 0

  DEFINE #COUPON_ALL_SUBS_B2 = 0

  DEFINE #COUPON_ALL_SUBS_B3 = 0

  DEFINE #COUPON_ALL_SUBS_B4 = 0

  DEFINE #COUPON_ALL_SUBS_B5 = 0

  DEFINE #COUPON_ALL_SUBS_B6 = 0

  DEFINE #COUPON_ALL_SUBS_XB = 0

!

TOLERANCE CLEANUP 0.00

!

TOLERANCE WRITEDOWN_0LOSS 1.00

!

!!  DEFINE DYNAMIC  #X1NAS_OptCoupon = (( #NetRate1 -  (OPTIMAL_INTPMT("A1") - COUPONCAP_SHORTFALL("A1")) / BBAL("A1") * 1200 )  * 30 / NDAYS_ACCRUE_INT("X1_NAS"))

!!  DEFINE DYNAMIC  #X2NAS_OptCoupon = (( #NetRate2 -  (OPTIMAL_INTPMT("A2") - COUPONCAP_SHORTFALL("A2")) / BBAL("A2") * 1200 )  * 30 / NDAYS_ACCRUE_INT("X2_NAS"))

!!  DEFINE DYNAMIC  #UncoveredIntX1NAS = MAX(0, -1 * #X1NAS_OptCoupon * BBAL("A1") / 1200 _

!!                                * NDAYS_ACCRUE_INT("X1_NAS") / 30)

!!  DEFINE DYNAMIC  #UncoveredIntX2NAS = MAX(0, -1 * #X2NAS_OptCoupon * BBAL("A2") / 1200 _

!!                                * NDAYS_ACCRUE_INT("X2_NAS") / 30)

!!  DEFINE DYNAMIC  #X1NAS_Coupon = MIN ( 0.95, MAX(0, #X1NAS_OptCoupon - _

!!                            #UncoveredIntX1NAS / ( BBAL("A1") ) * 1200 ) )

!!  DEFINE DYNAMIC  #X2NAS_Coupon = MIN ( 0.95, MAX(0, #X2NAS_OptCoupon - _

!!                            #UncoveredIntX2NAS / ( BBAL("A2") ) * 1200 ) )

!

!!  DEFINE DYNAMIC  #X1COMP_OptCoupon = (( #NetRate1 -  (OPTIMAL_INTPMT("A1","X1_NAS") - COUPONCAP_SHORTFALL("A1")) / BBAL("A1") * 1200 )  * 30 / NDAYS_ACCRUE_INT("X1_COMP"))

!!  DEFINE DYNAMIC  #X2COMP_OptCoupon = (( #NetRate2 -  (OPTIMAL_INTPMT("A2","X2_NAS") - COUPONCAP_SHORTFALL("A2")) / BBAL("A2") * 1200 )  * 30 / NDAYS_ACCRUE_INT("X2_COMP"))

!!  DEFINE DYNAMIC  #UncoveredIntX1COMP = MAX(0, -1 * #X1COMP_OptCoupon * BBAL("A1") / 1200 _

!!                                * NDAYS_ACCRUE_INT("X1_COMP") / 30)

!!  DEFINE DYNAMIC  #UncoveredIntX2COMP = MAX(0, -1 * #X2COMP_OptCoupon * BBAL("A2") / 1200 _

!!                                * NDAYS_ACCRUE_INT("X2_COMP") / 30)

!!  DEFINE DYNAMIC  #X1COMP_Coupon = MAX(0, #X1COMP_OptCoupon - _

!!                            #UncoveredIntX1COMP / ( BBAL("A1") ) * 1200 )

!!  DEFINE DYNAMIC  #X2COMP_Coupon = MAX(0, #X2COMP_OptCoupon - _

!!                            #UncoveredIntX2COMP / ( BBAL("A2") ) * 1200 )

!

  INITIAL INDEX    LIBOR_1MO          1.12

  INITIAL INDEX    LIBOR_6MO          1.27

!

!

Tranche "SUBORD_1" MODELING EXCHANGE

   Block 15426995.12 FLOAT GROUP 1 _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

    ( #NetRate1 )

     0     999

!

Tranche "SUBORD_2" MODELING EXCHANGE

   Block 15427116.73 FLOAT GROUP 2 _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

    ( #NetRate2 )

     0     999

!

Tranche "AR" SEN_WAC

   Block 100.00 FLOAT GROUP 1 _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

    ( #NetRate1 )

     0     999

!

Tranche "A1" SEN_FLT

   Block 347561000.00 at 1.45 GROUP 1  FREQ M FLOAT RESET M _

          COUPONCAP 30360 NONE ( ( COLL_I_MISC("COUPON",1) ) / COLL_PREV_BAL(1) * 1200  ); _

          DAYCOUNT 30360 BUSINESS_DAY NONE _

          Delay 0  Dated 20031125  Next 20031220

     (1 * LIBOR_1MO + ( IF ((COLL_BAL("LAGMON_1") / #OrigCollBal) < 10%) THEN 0.66 ELSE 0.33 ))

     0     11.50

!

Tranche "A2" SEN_FLT

   Block 347560000.00 at 1.62 GROUP 2  FREQ M FLOAT RESET S _

          COUPONCAP 30360 NONE ( ( COLL_I_MISC("COUPON",2) ) / COLL_PREV_BAL(2) * 1200  ); _

          DAYCOUNT 30360 BUSINESS_DAY NONE _

          Delay 0  Dated 20031125  Next 20031220

     (1 * LIBOR_6MO + ( IF ((COLL_BAL("LAGMON_1") / #OrigCollBal) < 10%) THEN 0.7 ELSE 0.35 ))

     0     11.500

!

Tranche "B1" JUN_FLT

   Block 14518000.00 at 1.77  FREQ M FLOAT RESET M _

          COUPONCAP 30360 NONE ( #COUPON_ALL_SUBS_B1 ); _

          DAYCOUNT 30360 BUSINESS_DAY NONE _

          Delay 0  Dated 20031125  Next 20031220

     (1 * LIBOR_1MO + ( IF ((COLL_BAL("LAGMON_1") / #OrigCollBal) < 10%) THEN 0.975 ELSE 0.65 ))

     0     11.500

!

Tranche "B2" JUN_WAC

   Block 5806000.00 FLOAT _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

     ( #COUPON_ALL_SUBS_B2 )

    0    999

!

Tranche "B3" JUN_WAC

   Block 4354000.00 FLOAT _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

     ( #COUPON_ALL_SUBS_B3 )

    0    999

!

Tranche "B4" JUN_WAC

   Block 2176000.00 FLOAT _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

     ( #COUPON_ALL_SUBS_B4 )

    0    999

!

Tranche "B5" JUN_WAC

   Block 1450000.00 FLOAT _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

     ( #COUPON_ALL_SUBS_B5 )

    0    999

!

Tranche "B6" JUN_WAC

   Block 2550111.85 FLOAT _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

     ( #COUPON_ALL_SUBS_B6 )

    0    999

!

Tranche "XB" SEN_WAC_IO

   Block 14518000.00 FLOAT  NOTIONAL WITH BLOCK "B1#1" _

          DAYCOUNT 30360 BUSINESS_DAY NONE  FREQ M _

          Delay 19  Dated 20031101  Next 20031220

 ( ( #COUPON_ALL_SUBS_XB) - ((OPTIMAL_INTPMT("B1#1") - COUPONCAP_SHORTFALL("B1#1")) / BBAL("B1#1") * 36000 / NDAYS_ACCRUE_INT("XB") ))

     0     999

!

!

ifndef #_CMOVER_3.0D2 _

DEFINE EXCHANGE "SUBORD_1" + "SUBORD_2" = "B1" + "B2" + "B3" + "B4" + "B5" + "B6"

!

DEFINE PSEUDO_TRANCHE COLLAT GROUP 1 _

   Delay 19 Dated 20031101 Next 20031220 Settle 20031125

DEFINE PSEUDO_TRANCHE COLLAT GROUP 2 _

   Delay 19 Dated 20031101 Next 20031220 Settle 20031125

!

  CLASS "X"         NO_BUILD_TRANCHE _

                    = "XB"

  CLASS "AR"        NO_BUILD_TRANCHE _

                    = "AR"

  CLASS "A1"        NO_BUILD_TRANCHE _

                    SHORTFALL_PAYBACK  COUPONCAP TRUE _

                    SHORTFALL_EARN_INT COUPONCAP TRUE _

                    = "A1"

  CLASS "SNR_2"     NO_BUILD_TRANCHE _

                    SHORTFALL_PAYBACK  COUPONCAP TRUE _

                    SHORTFALL_EARN_INT COUPONCAP TRUE _

                    WRITEDOWN_LIMIT BALANCE (#OrigCollBal2); _

                    = "A2"

  CLASS "SUBORD_1"  DISTRIB_CLASS RULES _

                    = "SUBORD_1"

  CLASS "SUBORD_2"  DISTRIB_CLASS RULES _

                    = "SUBORD_2"

  CLASS "B6"        NO_BUILD_TRANCHE _

                    = "B6"

  CLASS "B5"        NO_BUILD_TRANCHE _

                    = "B5", SUPPORT_CLASSES = "B6"

  CLASS "B4"        NO_BUILD_TRANCHE _

                    = "B4", SUPPORT_CLASSES = "B6" "B5"

  CLASS "B3"        NO_BUILD_TRANCHE _

                    = "B3", SUPPORT_CLASSES = "B6" "B5" "B4"

  CLASS "B2"        NO_BUILD_TRANCHE _

                    = "B2", SUPPORT_CLASSES = "B6" "B5" "B4" "B3"

  CLASS "B1"        NO_BUILD_TRANCHE _

                    SHORTFALL_PAYBACK  COUPONCAP TRUE _

                    SHORTFALL_EARN_INT COUPONCAP TRUE _

                    = "B1", SUPPORT_CLASSES = "B6" "B5" "B4" "B3" "B2"

  CLASS "SNR_1" ALLOCATION _

                    = "AR" "A1"

  CLASS "ALL_SUBS" DISTRIB_CLASS SUBORD  WRITEDOWN_BAL SUBORD _

                    = "X" "B1" "B2" "B3" "B4" "B5" "B6" , _

    COMBINE_CLASSES = "SUBORD_1" "SUBORD_2"


!

!

  CLASS "GRP1" _

                 DISTRIB_CLASS RULES _

                   = "SNR_1" "SUBORD_1"

  CLASS "GRP2" _

                 DISTRIB_CLASS RULES _

                   = "SNR_2" "SUBORD_2"

!

  CLASS "ROOT"  ROOT_LIST = "GRP1" "GRP2"

!

  GROUP 0       ROOT      = 1 2

!


!

  DEFINE PSEUDO_TRANCHE CLASS "SNR_1"        Delay 19  Dated 20031101  Next 20031220 DAYCOUNT 30360 BUSINESS_DAY NONE

!

  DEFINE PSEUDO_TRANCHE CLASS "SUBORD_1"     Delay 19  Dated 20031101  Next 20031220 DAYCOUNT 30360 BUSINESS_DAY NONE

!

  DEFINE PSEUDO_TRANCHE CLASS "SUBORD_2"     Delay 19  Dated 20031101  Next 20031220 DAYCOUNT 30360 BUSINESS_DAY NONE

!

  DEFINE PSEUDO_TRANCHE CLASS "ALL_SUBS"     Delay 19  Dated 20031101  Next 20031220 DAYCOUNT 30360 BUSINESS_DAY NONE

!

!

  CROSSOVER When 0

!

  DEFINE DYNAMIC #COUPON_ALL_SUBS = OPTIMAL_INTPMT("SUBORD_1", "SUBORD_2") / BBAL("SUBORD_1", "SUBORD_2") * 36000 / NDAYS_ACCRUE_INT("ALL_SUBS#1")

  DEFINE DYNAMIC #COUPON_ALL_SUBS_B1 = #COUPON_ALL_SUBS * NDAYS_ACCRUE_INT("ALL_SUBS#1") / NDAYS_ACCRUE_INT("B1#1")

  DEFINE DYNAMIC #COUPON_ALL_SUBS_B2 = #COUPON_ALL_SUBS * NDAYS_ACCRUE_INT("ALL_SUBS#1") / NDAYS_ACCRUE_INT("B2#1")

  DEFINE DYNAMIC #COUPON_ALL_SUBS_B3 = #COUPON_ALL_SUBS * NDAYS_ACCRUE_INT("ALL_SUBS#1") / NDAYS_ACCRUE_INT("B3#1")

  DEFINE DYNAMIC #COUPON_ALL_SUBS_B4 = #COUPON_ALL_SUBS * NDAYS_ACCRUE_INT("ALL_SUBS#1") / NDAYS_ACCRUE_INT("B4#1")

  DEFINE DYNAMIC #COUPON_ALL_SUBS_B5 = #COUPON_ALL_SUBS * NDAYS_ACCRUE_INT("ALL_SUBS#1") / NDAYS_ACCRUE_INT("B5#1")

  DEFINE DYNAMIC #COUPON_ALL_SUBS_B6 = #COUPON_ALL_SUBS * NDAYS_ACCRUE_INT("ALL_SUBS#1") / NDAYS_ACCRUE_INT("B6#1")

  DEFINE DYNAMIC #COUPON_ALL_SUBS_XB = #COUPON_ALL_SUBS * NDAYS_ACCRUE_INT("ALL_SUBS#1") / NDAYS_ACCRUE_INT("XB#1")

!

  OPTIONAL REDEMPTION:    "Cleanup" _

                          COLL_FRAC 10% _

                          PRICE_P ( COLL_BAL ); _

                          DISTR_P RULES "OPTR_DEAL"

!

!

 INTEREST_SHORTFALL GROUP 1 FULL_PREPAY    Compensate Pro_rata _

                             PARTIAL_PREPAY Compensate Pro_rata _

                             LOSS           Compensate Pro_rata

!

 INTEREST_SHORTFALL GROUP 2 FULL_PREPAY    Compensate Pro_rata _

                             PARTIAL_PREPAY Compensate Pro_rata _

                             LOSS           Compensate Pro_rata

!

!

 CMO Block Payment Rules

------------------------------------

!

   calculate :  #OrigSenPct1  = 100 * ORIG_BBAL("SNR_1") / #OrigCollBal1

!

   calculate :  #SenPct1 = _

               IF BBAL("B1", "B2", "B3", "B4", "B5", "B6") GT 0.01 _

               THEN MIN(100, 100 * BBAL("SNR_1") / COLL_PREV_BAL(1)) _

               ELSE 100

!

   calculate :  #OrigSubBal1 = #OrigCollBal1 - ORIG_BBAL("SNR_1")

   calculate :  #SubBal1     = MAX(0, COLL_PREV_BAL(1) - BBAL("SNR_1"))

!

   calculate :  #OrigSenPct2  = 100 * ORIG_BBAL("SNR_2") / #OrigCollBal2

!

   calculate :  #SenPct2 = _

               IF BBAL("B1", "B2", "B3", "B4", "B5", "B6") GT 0.01 _

               THEN MIN(100, 100 * BBAL("SNR_2") / COLL_PREV_BAL(2)) _

               ELSE 100

!

   calculate :  #OrigSubBal2 = #OrigCollBal2 - ORIG_BBAL("SNR_2")

   calculate :  #SubBal2     = MAX(0, COLL_PREV_BAL(2) - BBAL("SNR_2"))

!

   calculate :  #ReduceTestA1 = LOOKUP_TBL( "STEP", CURMONTH , "SI_LOSSA1", "MONTH", "SHIFTR" )

!

   calculate :  #StepProviso11 = IF COLL_PREV_BAL(1) GT 0.01 _

                                 THEN (( AVG_DELINQ_BAL(2,2,1) < 50% * #SubBal1) AND _

                                       ( DELINQ_LOSS_ACCUM(1) < #OrigSubBal1 * #ReduceTestA1 )) _

                                 ELSE 1

!

   calculate :  #ReduceTestA2 = LOOKUP_TBL( "STEP", CURMONTH , "SI_LOSSA2", "MONTH", "SHIFTR" )

!

   calculate :  #StepProviso12 = IF COLL_PREV_BAL(2) GT 0.01 _

                                 THEN (( AVG_DELINQ_BAL(2,2,2) < 50% * #SubBal2) AND _

                                       ( DELINQ_LOSS_ACCUM(2) < #OrigSubBal2 * #ReduceTestA2 )) _

                                 ELSE 1

!

   calculate :  #Sub2TimesTestAgg = BBAL("SUBORD_1", "SUBORD_2") / BBAL("SNR_1", "SUBORD_1", "SNR_2", "SUBORD_2") _

                               GE 2 * ORIG_BBAL("SUBORD_1", "SUBORD_2")/ORIG_BBAL("SNR_1", "SUBORD_1", "SNR_2", "SUBORD_2")

!

   calculate :  #SenPrep1 = _

              IF (#SenPct1 > #OrigSenPct1) OR (#SenPct2 > #OrigSenPct2) _

              THEN 100 _

              ELSE #SenPct1 + SHIFT%(1) * (100-#SenPct1), _

   Reduce_SHIFT%_when GROUP 1 SLIPPERY FAILVAL_100PCT   _

   (#StepProviso11 AND #StepProviso12)

!

   calculate :  #SenPrep2 = _

              IF (#SenPct1 > #OrigSenPct1) OR (#SenPct2 > #OrigSenPct2) _

              THEN 100 _

              ELSE #SenPct2 + SHIFT%(2) * (100-#SenPct2), _

   Reduce_SHIFT%_when GROUP 2 SLIPPERY FAILVAL_100PCT   _

   (#StepProviso11 AND #StepProviso12)

!

!

   calculate :  #SenPrep1 = _

              IF (#SenPct1 > #OrigSenPct1) OR (#SenPct2 > #OrigSenPct2) _

              THEN 100 _

              ELSE IF #Sub2TimesTestAgg and ( #StepProviso11 )  _

                   THEN IF CURMONTH LE 36 _

                        THEN #SenPct1 + (50% * (100-#SenPct1)) _

                        ELSE #SenPct1 _

                   ELSE #SenPrep1

!

   calculate :  #SenPrep2 = _

              IF (#SenPct1 > #OrigSenPct1) OR (#SenPct2 > #OrigSenPct2) _

              THEN 100 _

              ELSE IF #Sub2TimesTestAgg and ( #StepProviso12 )  _

                   THEN IF CURMONTH LE 36 _

                        THEN #SenPct2 + (50% * (100-#SenPct2)) _

                        ELSE #SenPct2 _

                   ELSE #SenPrep2

!

   calculate : #SENRECOV1 =  _

     MAX( 0, MIN( #SenPct1/100  * DELINQ_LIQUIDATE(1), _

                  #SenPrep1/100 * DELINQ_RECOVER(1)))

!

   calculate : #SENRECOV2 =  _

     MAX( 0, MIN( #SenPct2/100  * DELINQ_LIQUIDATE(2), _

                  #SenPrep2/100 * DELINQ_RECOVER(2)))

!

 calculate:  "SNR_1" _

  NO_CHECK SCHEDULED     GROUP 1   PERCENT LIMIT V0  = #SenPrep1 , _

  NO_CHECK PREPAY        GROUP 1   PERCENT LIMIT V1  = #SenPrep1 , _

  NO_CHECK RECOVER        GROUP 1  AMOUNT  LIMIT V3  = #SENRECOV1

!

  calculate :  #SenSchedAlloc1   = V0 / 100 * COLL_P_SCHED(1)

  calculate :  #SenPrepayAlloc1  = V1 / 100 * COLL_P_PREPAY(1)

  calculate :  #SenRecoverAlloc1 = V3

!

 calculate:  "SNR_2" _

  NO_CHECK SCHEDULED     GROUP 2   PERCENT LIMIT V0  = #SenPrep2 , _

  NO_CHECK PREPAY        GROUP 2   PERCENT LIMIT V1  = #SenPrep2 , _

  NO_CHECK RECOVER        GROUP 2  AMOUNT  LIMIT V3  = #SENRECOV2

!

  calculate :  #SenSchedAlloc2   = V0 / 100 * COLL_P_SCHED(2)

  calculate :  #SenPrepayAlloc2  = V1 / 100 * COLL_P_PREPAY(2)

  calculate :  #SenRecoverAlloc2 = V3

!

   calculate : #SubSched1   = MAX( 0, COLL_P_SCHED(1) - #SenSchedAlloc1 )

   calculate : #SubPrepay1  = MAX( 0, COLL_P_PREPAY(1) - #SenPrepayAlloc1 )

   calculate : #SubRecov1   = MAX( 0, DELINQ_RECOVER(1) - #SenRecoverAlloc1 )

!

 calculate:  "SUBORD_1" _

  NO_CHECK SCHEDULED     GROUP 1  AMOUNT             = #SubSched1 , _

  NO_CHECK PREPAY        GROUP 1  AMOUNT             = #SubPrepay1 , _

  NO_CHECK RECOVER       GROUP 1  AMOUNT             = #SubRecov1

!

   calculate : #SubSched2   = MAX( 0, COLL_P_SCHED(2) - #SenSchedAlloc2 )

   calculate : #SubPrepay2  = MAX( 0, COLL_P_PREPAY(2) - #SenPrepayAlloc2 )

   calculate : #SubRecov2   = MAX( 0, DELINQ_RECOVER(2) - #SenRecoverAlloc2 )

!

 calculate:  "SUBORD_2" _

  NO_CHECK SCHEDULED     GROUP 2  AMOUNT             = #SubSched2 , _

  NO_CHECK PREPAY        GROUP 2  AMOUNT             = #SubPrepay2 , _

  NO_CHECK RECOVER       GROUP 2  AMOUNT             = #SubRecov2

!

   calculate : #SubSched    = #SubSched1 + #SubSched2

   calculate : #SubRecov    = #SubRecov1 + #SubRecov2

   calculate : #SubPrepay   = #SubPrepay1 + #SubPrepay2

!

 calculate:  "B1" _

  NO_CHECK SCHEDULED      AMOUNT             = #SubSched  * SHARE("B1") , _

  NO_CHECK PREPAY         AMOUNT             = #SubPrepay * SUB_SHARE("B1") , _

  NO_CHECK RECOVER        AMOUNT             = #SubRecov  * SHARE("B1")

!

 calculate:  "B2" _

  NO_CHECK SCHEDULED      AMOUNT             = #SubSched  * SHARE("B2") , _

  NO_CHECK PREPAY         AMOUNT             = #SubPrepay * SUB_SHARE("B2") , _

  NO_CHECK RECOVER        AMOUNT             = #SubRecov  * SHARE("B2")

!

 calculate:  "B3" _

  NO_CHECK SCHEDULED      AMOUNT             = #SubSched  * SHARE("B3") , _

  NO_CHECK PREPAY         AMOUNT             = #SubPrepay * SUB_SHARE("B3") , _

  NO_CHECK RECOVER        AMOUNT             = #SubRecov  * SHARE("B3")

!

 calculate:  "B4" _

  NO_CHECK SCHEDULED      AMOUNT             = #SubSched  * SHARE("B4") , _

  NO_CHECK PREPAY         AMOUNT             = #SubPrepay * SUB_SHARE("B4") , _

  NO_CHECK RECOVER        AMOUNT             = #SubRecov  * SHARE("B4")

!

 calculate:  "B5" _

  NO_CHECK SCHEDULED      AMOUNT             = #SubSched  * SHARE("B5") , _

  NO_CHECK PREPAY         AMOUNT             = #SubPrepay * SUB_SHARE("B5") , _

  NO_CHECK RECOVER        AMOUNT             = #SubRecov  * SHARE("B5")

!

 calculate:  "B6" _

  NO_CHECK SCHEDULED      AMOUNT             = #SubSched  * SHARE("B6") , _

  NO_CHECK PREPAY         AMOUNT             = #SubPrepay * SUB_SHARE("B6") , _

  NO_CHECK RECOVER        AMOUNT             = #SubRecov  * SHARE("B6")

!

------------------------------------

         pay :  CLASS INTEREST  PRO_RATA ("SNR_1" )

         pay :  CLASS INTSHORT  PRO_RATA ("SNR_1" )

         pay :  CLASS PRINCIPAL SEQUENTIAL ( "SNR_1" )

------------------------------------

         pay :  CLASS INTEREST  PRO_RATA ("SNR_2" )

         pay :  CLASS INTSHORT  PRO_RATA ("SNR_2" )

         pay :  CLASS PRINCIPAL SEQUENTIAL ( "SNR_2" )

------------------------------------

         pay :  CLASS INTEREST  PRO_RATA ( "SUBORD_1" )

         pay :  CLASS INTSHORT  PRO_RATA ( "SUBORD_1" )

------------------------------------

         pay :  CLASS INTEREST  PRO_RATA ( "SUBORD_2" )

         pay :  CLASS INTSHORT  PRO_RATA ( "SUBORD_2" )

------------------------------------

        from :  CLASS ( "GRP1"; "GRP2" )

         pay :  CLASS INTEREST  PRO_RATA ( "SUBORD_1"; "SUBORD_2" )

         pay :  CLASS INTSHORT  PRO_RATA ( "SUBORD_1"; "SUBORD_2" )

------------------------------------

         pay :  CLASS PRINCIPAL  SEQUENTIAL ( "SUBORD_1" )

------------------------------------

         pay :  CLASS PRINCIPAL  SEQUENTIAL ( "SUBORD_2" )

------------------------------------

        from :  CLASS ( "GRP1"; "GRP2" )

         pay :  CLASS PRINCIPAL PRO_RATA ( "SUBORD_1"; "SUBORD_2" )

------------------------------------

   calculate :  #P_SNR_1 = BBAL("AR","A1") - BBAL("SNR_1")

------------------------------------

        from :  CLASS ( "SNR_1" )

         pay :  CLASS INTEREST SEQUENTIAL ( "AR" )

         pay :  CLASS INTSHORT SEQUENTIAL ( "AR" )

------------------------------------

        from :  CLASS ( "SNR_1" )

        from :  SUBACCOUNT ( #P_SNR_1 )

         pay :  CLASS BALANCE  SEQUENTIAL ( "AR" )

------------------------------------

        from :  CLASS ( "SNR_1" )

         pay :  CLASS INTEREST SEQUENTIAL ( "A1" )

         pay :  CLASS INTSHORT SEQUENTIAL ( "A1" )

------------------------------------

        from :  CLASS ( "SNR_1" )

        from :  SUBACCOUNT ( #P_SNR_1 )

         pay :  CLASS BALANCE  SEQUENTIAL ( "A1" )

------------------------------------

!

------------------------------------

        from :  CLASS ( "AR" )

         pay :  SEQUENTIAL ( "AR#1" )

------------------------------------

        from :  CLASS ( "A1" )

         pay :  SEQUENTIAL ( "A1#1" )

------------------------------------

!

------------------------------------

        from :  CLASS ( "SNR_2" )

         pay :  SEQUENTIAL ( "A2#1" )

------------------------------------

------------------------------------

        from :  CLASS ( "SUBORD_1" ; "SUBORD_2" )

         pay :  CLASS INTEREST PRO_RATA  ( "ALL_SUBS" )

         pay :  CLASS INTSHORT PRO_RATA  ( "ALL_SUBS" )

         pay :  CLASS BALANCE  SEQUENTIAL ( "ALL_SUBS" )

------------------------------------

!

        from :  CLASS ( "ALL_SUBS" )

         pay :  CLASS INTEREST SEQUENTIAL  ("X")

         pay :  CLASS INTSHORT SEQUENTIAL  ("X")

------------------------------------

------------------------------------ SUB COMBO DISTRIBUTION

        from :  CLASS ("ALL_SUBS" )

         pay :  CLASS ENTIRETY  SEQUENTIAL ("B1" )

         pay :  CLASS ENTIRETY  SEQUENTIAL ("B2" )

         pay :  CLASS ENTIRETY  SEQUENTIAL ("B3" )

         pay :  CLASS ENTIRETY  SEQUENTIAL ("B4" )

         pay :  CLASS ENTIRETY  SEQUENTIAL ("B5" )

         pay :  CLASS ENTIRETY  SEQUENTIAL ("B6" )

------------------------------------

------------------------------------ CLEAN UP

        from :  CLASS ("ALL_SUBS" )

         pay :  CLASS BALANCE  SEQUENTIAL ("B1", "B2", "B3", "B4", "B5", "B6" )

------------------------------------

!

------------------------------------

        from :  CLASS ( "B1" )

         pay :  SEQUENTIAL ( "B1#1" )

------------------------------------

        from :  CLASS ( "B2" )

         pay :  SEQUENTIAL ( "B2#1" )

------------------------------------

        from :  CLASS ( "B3" )

         pay :  SEQUENTIAL ( "B3#1" )

------------------------------------

        from :  CLASS ( "B4" )

         pay :  SEQUENTIAL ( "B4#1" )

------------------------------------

        from :  CLASS ( "B5" )

         pay :  SEQUENTIAL ( "B5#1" )

------------------------------------

        from :  CLASS ( "B6" )

         pay :  SEQUENTIAL ( "B6#1" )

------------------------------------

!

------------------------------------ PAYDOWN SUBORD TRANCHES

   calculate :  #PrincReduce  = BBAL("B1#1", "B2#1", "B3#1", "B4#1", "B5#1", "B6#1") - BBAL("ALL_SUBS")

   calculate :  #SubPrinc1    = BBAL("SUBORD_1#1") - BBAL("SUBORD_1")

   calculate :  #SubPrinc2    = BBAL("SUBORD_2#1") - BBAL("SUBORD_2")

   calculate :  #PrincReduce1 = #PrincReduce * #SubPrinc1 / ( #SubPrinc1 + #SubPrinc2 )

   calculate :  #PrincReduce2 = #PrincReduce * #SubPrinc2 / ( #SubPrinc1 + #SubPrinc2 )

------------------------------------

  subject to :  CEILING ( ( #SubPrinc1 - #PrincReduce1 ) )

         pay :  SEQUENTIAL ( "SUBORD_1#1" )

------------------------------------

  subject to :  CEILING ( ( #SubPrinc2 - #PrincReduce2 ) )

         pay :  SEQUENTIAL ( "SUBORD_2#1" )

------------------------------------

!

        from :  CLASS ( "GRP1" )

         pay :  CLASS COUPONCAP_SHORT PRO_RATA ( "A1" )

------------------------------------

        from :  CLASS ( "GRP1" )

         pay :  CLASS COUPONCAP_SHORT PRO_RATA ( "B1" )

------------------------------------

        from :  CLASS ( "GRP2" )

         pay :  CLASS COUPONCAP_SHORT PRO_RATA ( "SNR_2" )

------------------------------------

        from :  CLASS ( "GRP2" )

         pay :  CLASS COUPONCAP_SHORT PRO_RATA ( "B1" )

------------------------------------

        from :  CLASS ( "ALL_SUBS" )

         pay :  CLASS MORE_INTEREST SEQUENTIAL ("GRP1")

------------------------------------

------------------------------------ MANUAL WRITEDOWNS

   calculate :  #ReduceSubord1 = MIN( BBAL("SUBORD_1#1"), BBAL( "AR#1", "A1#1", "SUBORD_1#1" ) - COLL_BAL(1))

------------------------------------

        when :  IS_THERE ( "B1#1","B2#1","B3#1","B4#1","B5#1","B6#1" )

         pay :  DECREMENT ( BALANCE "SUBORD_1#1", BY #ReduceSubord1 )

------------------------------------

   calculate :  #ReduceSubord2 = MIN( BBAL("SUBORD_2#1"), BBAL( "A2#1", "SUBORD_2#1" ) - COLL_BAL(2))

------------------------------------

        when :  IS_THERE ( "B1#1","B2#1","B3#1","B4#1","B5#1","B6#1" )

         pay :  DECREMENT ( BALANCE "SUBORD_2#1", BY #ReduceSubord2 )

------------------------------------

   calculate :  #MoreReduceSubord1 = MIN( BBAL("SUBORD_1#1"), BBAL("SUBORD_1#1")/BBAL("SUBORD_1#1", "SUBORD_2#1") * ( BBAL("AR#1", "A1#1", "SUBORD_1#1", "A2#1", "SUBORD_2#1") - COLL_BAL(1,2)))

   calculate :  #MoreReduceSubord2 = MIN( BBAL("SUBORD_2#1"), BBAL("SUBORD_2#1")/BBAL("SUBORD_1#1", "SUBORD_2#1") * ( BBAL("AR#1", "A1#1", "SUBORD_1#1", "A2#1", "SUBORD_2#1") - COLL_BAL(1,2)))

------------------------------------

        when :  IS_TRUE ( (BBAL("B1#1","B2#1","B3#1","B4#1","B5#1","B6#1") GT 0.01 ) AND (( BBAL("SUBORD_2#1") LT 0.01 ) ))

         pay :  DECREMENT ( BALANCE "SUBORD_1#1", BY #MoreReduceSubord1 )

------------------------------------

        when :  IS_TRUE ( (BBAL("B1#1","B2#1","B3#1","B4#1","B5#1","B6#1") GT 0.01 ) AND (( BBAL("SUBORD_1#1") LT 0.01 ) ))

         pay :  DECREMENT ( BALANCE "SUBORD_2#1", BY #MoreReduceSubord2 )

------------------------------------

   calculate :  #WriteDown = BBAL( "AR#1", "A1#1", "B1#1", "B2#1", "B3#1", "B4#1", "B5#1", "B6#1", "A2#1" ) - COLL_BAL(1,2)

------------------------------------

        from :  SUBACCOUNT ( #WriteDown )

         pay :  WRITEDOWN PRO_RATA ( "B6#1" )

         pay :  WRITEDOWN PRO_RATA ( "B5#1" )

         pay :  WRITEDOWN PRO_RATA ( "B4#1" )

         pay :  WRITEDOWN PRO_RATA ( "B3#1" )

         pay :  WRITEDOWN PRO_RATA ( "B2#1" )

         pay :  WRITEDOWN PRO_RATA ( "B1#1" )

------------------------------------

   calculate :  #SenWriteDown1 = MAX(0, BBAL( "AR#1", "A1#1" ) / BBAL( "AR#1", "A1#1", "A2#1" ) * #WriteDown)

------------------------------------

   calculate :  #SenWriteDown2 = MAX(0, BBAL( "A2#1" ) / BBAL( "AR#1", "A1#1", "A2#1" ) * #WriteDown)

------------------------------------

        from :  SUBACCOUNT ( #WriteDown, #SenWriteDown1 )

         pay :  WRITEDOWN SEQUENTIAL ( "A1#1" )

------------------------------------

        from :  SUBACCOUNT ( #WriteDown, #SenWriteDown1 )

         pay :  WRITEDOWN SEQUENTIAL ( "AR#1" )

------------------------------------

        from :  SUBACCOUNT ( #WriteDown, #SenWriteDown2 )

         pay :  WRITEDOWN SEQUENTIAL ( "A2#1" )

------------------------------------

!

   calculate : #BondBal1    = BBAL("AR#1","A1#1","SUBORD_1#1")

------------------------------------

   calculate : #BondBal2    = BBAL("A2#1","SUBORD_2#1")

------------------------------------

------------------------------------

 calculate: #CallBalGrp1 = COLL_BAL(1)

 calculate: #CallBalGrp2 = COLL_BAL(2)

------------------------------------

---------------------- SECTION: "OPTR_DEAL"

------------------------------------

        from :  CASH_ACCOUNT (100)

  subject to :  CEILING ( #CallBalGrp1)

         pay :  CLASS BALANCE SEQUENTIAL ( "GRP1" )

         pay :  CLASS MORE_INTEREST SEQUENTIAL ( "GRP1" )

------------------------------------

        from :  CLASS ( "GRP1" )

         pay :  SEQUENTIAL ( "AR#1", "A1#1" )

------------------------------------

        from :  CLASS ( "GRP1" )

         pay :  CLASS BALANCE SEQUENTIAL ( "SUBORD_1" )

------------------------------------

  subject to :  CEILING ( (BBAL("SUBORD_1#1")-BBAL("SUBORD_1")) )

         pay :  SEQUENTIAL ( "SUBORD_1#1" )

------------------------------------

        from :  CLASS ( "SUBORD_1" )

         pay :  CLASS BALANCE SEQUENTIAL ("ALL_SUBS")

------------------------------------

        from :  CLASS ( "ALL_SUBS" )

         pay :  CLASS BALANCE SEQUENTIAL ("B1","B2","B3","B4","B5","B6")

------------------------------------

        from :  CLASS ( "B1" )

         pay :  SEQUENTIAL ( "B1#1" )

------------------------------------

        from :  CLASS ( "B2" )

         pay :  SEQUENTIAL ( "B2#1" )

------------------------------------

        from :  CLASS ( "B3" )

         pay :  SEQUENTIAL ( "B3#1" )

------------------------------------

        from :  CLASS ( "B4" )

         pay :  SEQUENTIAL ( "B4#1" )

------------------------------------

        from :  CLASS ( "B5" )

         pay :  SEQUENTIAL ( "B5#1" )

------------------------------------

        from :  CLASS ( "B6" )

         pay :  SEQUENTIAL ( "B6#1" )

------------------------------------

------------------------------------

        from :  CASH_ACCOUNT (100)

  subject to :  CEILING ( #CallBalGrp2)

         pay :  CLASS BALANCE SEQUENTIAL ( "GRP2" )

         pay :  CLASS MORE_INTEREST SEQUENTIAL ( "GRP2" )

------------------------------------

        from :  CLASS ( "GRP2" )

         pay :  SEQUENTIAL ( "A2#1" )

------------------------------------

        from :  CLASS ( "GRP2" )

         pay :  CLASS BALANCE SEQUENTIAL ( "SUBORD_2" )

------------------------------------

  subject to :  CEILING ( (BBAL("SUBORD_2#1")-BBAL("SUBORD_2")) )

         pay :  SEQUENTIAL ( "SUBORD_2#1" )

------------------------------------

        from :  CLASS ( "SUBORD_2" )

         pay :  CLASS BALANCE SEQUENTIAL ("ALL_SUBS")

------------------------------------

        from :  CLASS ( "ALL_SUBS" )

         pay :  CLASS BALANCE SEQUENTIAL ("B1","B2","B3","B4","B5","B6")

------------------------------------

        from :  CLASS ( "B1" )

         pay :  SEQUENTIAL ( "B1#1" )

------------------------------------

        from :  CLASS ( "B2" )

         pay :  SEQUENTIAL ( "B2#1" )

------------------------------------

        from :  CLASS ( "B3" )

         pay :  SEQUENTIAL ( "B3#1" )

------------------------------------

        from :  CLASS ( "B4" )

         pay :  SEQUENTIAL ( "B4#1" )

------------------------------------

        from :  CLASS ( "B5" )

         pay :  SEQUENTIAL ( "B5#1" )

------------------------------------

        from :  CLASS ( "B6" )

         pay :  SEQUENTIAL ( "B6#1" )

------------------------------------

!

Schedule "SHIFT1%"

Declare

SHIFTINT GROUP 1

120    100%  

132    70%   

144    60%   

156    40%   

168    20%   

180    0%    

!

!

Schedule "SHIFT2%"

Declare

SHIFTINT GROUP 2

120    100%  

132    70%   

144    60%   

156    40%   

168    20%   

180    0%    

!

Schedule "GRP1_NAS_SCHED" GROUP 1

DECLARE

VALUES OK

     20031220       347,561,000.00

     20040120       334,761,463.08

     20040220       322,413,165.22

     20040320       310,500,291.36

     20040420       299,007,487.65

     20040520       287,919,941.61

     20040620       277,223,363.12

     20040720       266,903,965.93

     20040820       256,948,449.92

     20040920       247,343,983.96

     20041020       238,078,189.38

     20041120       229,139,123.99

     20041220       220,515,266.71

     20050120       212,195,502.71

     20050220       204,169,109.10

     20050320       196,425,741.09

     20050420       188,955,418.68

     20050520       181,748,513.76

     20050620       174,795,737.74

     20050720       168,088,129.56

     20050820       161,617,044.16

     20050920       155,646,133.59

     20051020       149,890,563.94

     20051120       144,342,657.33

     20051220       138,995,008.12

     20060120       133,840,473.27

     20060220       128,872,163.05

     20060320       124,083,432.09

     20060420       119,467,870.74

     20060520       115,019,296.72

     20060620       110,731,747.10

     20060720       106,599,470.53

     20060820       102,616,919.75

     20060920        98,778,744.37

     20061020        95,079,783.93

     20061120        91,515,061.15

     20061220        88,079,775.47

     20070120        84,973,918.39

     20070220        81,977,579.62

     20070320        79,086,897.34

     20070420        76,298,145.90

     20070520        73,607,731.04

     20070620                 0.00

!

Schedule "GRP2_NAS_SCHED" GROUP 2

DECLARE

VALUES OK

     20031220       347,560,000.00

     20040120       334,760,397.58

     20040220       322,412,133.00

     20040320       310,499,291.26

     20040420       299,006,518.52

     20040520       287,919,002.37

     20040620       277,222,452.71

     20040720       266,903,083.33

     20040820       256,947,594.15

     20040920       247,343,154.09

     20041020       238,077,384.48

     20041120       229,138,343.18

     20041220       220,514,509.14

     20050120       212,194,767.57

     20050220       204,168,395.60

     20050320       196,425,048.46

     20050420       188,954,746.18

     20050520       181,747,860.68

     20050620       174,795,103.41

     20050720       168,087,513.31

     20050820       161,616,445.35

     20050920       155,645,553.75

     20051020       149,890,002.44

     20051120       144,342,113.56

     20051220       138,994,481.49

     20060120       133,839,963.22

     20060220       128,871,669.02

     20060320       124,082,953.55

     20060420       119,467,407.18

     20060520       115,018,847.65

     20060620       110,731,312.04

     20060720       106,599,049.02

     20060820       102,616,511.33

     20060920        98,778,348.62

     20061020        95,079,400.44

     20061120        91,514,689.51

     20061220        88,079,415.29

     20070120        84,973,570.91

     20070220        81,977,244.39

     20070320        79,086,573.93

     20070420        76,297,833.90

     20070520        73,607,430.04

     20070620                 0.00

!

!

 Collateral

!

!       Factor      --Delay--

! Type   Date       P/Y    BV   Use BV for 0

  WL  20031101    9999 9999   FALSE

!

! Pool#  Type     Gross     Current     Original   --Fee--  Maturity Orig  ARM            Gross  #mos  #mos   P#mos  P#mos  Life   Reset Life   Max   Look

!                 Coupon    Factor      Balance    P/Y  BV  P/Y   BV Term  Index          Margin ToRst RstPer ToRst  RstPer Cap    Cap   Floor  Negam Back

!! BEGINNING OF COLLATERAL

M        1     "Greenpoint  LIBOR 1 M"          WL    00    WAC            2.88591 (     38104049.47 /     38104049.47 );     38104049.47                      0.382500     0.382500         359:1     359:1       360 NO_CHECK ARM LIBOR_1MO                  1.88671     2    1 SYNC_INT          11.99478             999         1.88671         0      0                        AMORT NONE FOR          60 GROUP 1      

M        2     "Morgan Stanley  LIBOR 1 M"      WL    00    WAC            2.70555 (     45623177.68 /     45623177.68 );     45623177.68                      0.382500     0.382500         299:1     299:1       300 NO_CHECK ARM LIBOR_1MO                  1.58055     2    1 SYNC_INT          12.00000             999         1.58055         0      0                        AMORT NONE FOR         120 GROUP 1      

M        3     "Greenpoint  LIBOR 6 M"          WL    00    WAC            3.00963 (    256789776.62 /    256789776.62 );    256789776.62                      0.382500     0.382500         359:1     359:1       360 NO_CHECK ARM LIBOR_6MO                  1.93439     6    6 SYNC_INT          11.99968             999         1.93439         0      0                        AMORT NONE FOR          60 GROUP 1       TEASER

M        4     "Morgan Stanley  LIBOR 6 M"      WL    00    WAC            2.83307 (     22471091.35 /     22471091.35 );     22471091.35                      0.382500     0.382500         298:2     298:2       300 NO_CHECK ARM LIBOR_6MO                  1.64436     5    6 SYNC_INT          12.00000             999         1.64436         0      0                        AMORT NONE FOR         120 GROUP 1       TEASER

M        5     "Greenpoint  LIBOR 6 M"          WL    00    WAC            2.98122 (    337483665.54 /    337483665.54 );    337483665.54                      0.382500     0.382500         359:1     359:1       360 NO_CHECK ARM LIBOR_6MO                  1.90829     6    6 SYNC_INT          12.00493             999         1.90829         0      0                        AMORT NONE FOR          60 GROUP 2       TEASER

M        6     "Morgan Stanley  LIBOR 6 M"      WL    00    WAC            2.87337 (     25503451.19 /     25503451.19 );     25503451.19                      0.382500     0.382500         298:2     298:2       300 NO_CHECK ARM LIBOR_6MO                  1.68288     5    6 SYNC_INT          12.00000             999         1.68288         0      0                        AMORT NONE FOR         120 GROUP 2       TEASER