function EExecD7 &TD1 &TP1 &TP2 &TD2 &TP3 &TP4 X Y Z Att1 Att2 Att3 Att4 Att5 Att6 Sg1 Sg2 Sg3 FM = ( if ((X==undefined) or (Y==undefined) or (Z==undefined)) then return false local d1,d3,r,o1,o2,p1,p2,m,n,o7,cnt_d1,o8,o9,o10,o11,cnt_d3,o12,o13,o14,t1,t2,t3,t4,g1,g2,g3,g4,s1,s2,TD1,TP1,TP2,TD2,TP3,TP4 CreateCopy &d1 X d1.R.Re=d1.R.Re*Sg1; CreateCopy &d3 Y d3.R.Re=d3.R.Re*Sg2; CreateCopy&r Z r.C.Re=r.C.Re*Sg3 EExecO7 &o1 d1 r d1.FAtt 1 1 "0" EExecO7 &o2 d3 r d3.FAtt 1 1 "0" EExecP3 &p1 &p2 o1 o2 Att0 Att0 1 1 "0" EExecD0 &m p1 r Att0 1 1 "0" EExecD0 &n p2 r Att0 1 1 "0" EExecRA &o7 m d1 Att0 1 1 "0" EExecPA &cnt_d1 d1 Att0 1 "0" EExecO0 &o8 p1 cnt_d1 Att5 1 1 "0" EExecO0 &o9 p2 cnt_d1 Att5 1 1 "0" EExecRA &o10 d1 n Att5 1 1 "0" EExecRA &o11 m d3 Att0 1 1 "0" EExecPA &cnt_d3 d3 Att0 1 "0" EExecO0 &o12 p1 cnt_d3 Att5 1 1 "0" EExecO0 &o13 p2 cnt_d3 Att5 1 1 "0" EExecRA &o14 n d3 Att0 1 1 "0" EExecP2 &t1 o8 o7 Att0 1 1 "0" EExecP2 &t3 o9 o10 Att0 1 1 "0" EExecP2 &t2 o12 o11 Att0 1 1 "0" EExecP2 &t4 o13 o14 Att0 1 1 "0" EExecCX &g1 t1 X Att0 1 1 "0" EExecCX &g2 t2 Y Att0 1 1 "0" EExecCX &g3 t3 X Att0 1 1 "0" EExecCX &g4 t4 Y Att0 1 1 "0" EExecD9 &s1 m t1 t2 Att0 1 1 1 "0" EExecD9 &s2 n t4 t3 Att0 1 1 1 "0" if ((g1.OB=="C") and (g2.OB=="C")) then ( CreateCopy &TD1 s1 TD1.FAtt=CopyAtt Att1 CreateCopy &TP1 t1 TP1.FAtt=CopyAtt Att2 CreateCopy &TP2 t2 TP2.FAtt=CopyAtt Att3 ) else ( TOEmpty_Create &TD1 Att1 TOEmpty_Create &TP1 Att2 TOEmpty_Create &TP2 Att3 ) if ((g3.OB=="C") and (g4.OB=="C")) then ( CreateCopy &TD2 s2 TD2.FAtt=CopyAtt Att4 CreateCopy &TP3 t3 TP3.FAtt=CopyAtt Att5 CreateCopy &TP4 t4 TP4.FAtt=CopyAtt Att6 ) else ( TOEmpty_Create &TD2 Att4 TOEmpty_Create &TP3 Att5 TOEmpty_Create &TP4 Att6 ) if (TP1.OB=="P") then (AddInc TD1 TP1 ; AddInc X TP1 ) if (TP2.OB=="P") then (AddInc TD1 TP2 ; AddInc Y TP2 ) if (TP3.OB=="P") then (AddInc TD2 TP3 ; AddInc X TP3 ) if (TP4.OB=="P") then (AddInc TD2 TP4 ; AddInc Y TP4 ) return true ) -- EExecD7