function EExecD9 &Out_Prm X Y Z Att Sg1 Sg2 Sg3 FM = ( local Xc,Yc,R,X1,Y1,X2,Y2,A if ((X==undefined) or (Y==undefined) or (Z==undefined)) then return false if ((X.OB=="D") and (Y.OB=="P") and (Z.OB=="P") and (IsSobstv Y ) and (IsSobstv Z ) and (IsReal Y ) and (IsReal Z )) then ( Xc=X.Xc.Re; Yc=X.Yc.Re; R=X.R.Re*Sg1; X1=Y.X.Re; Y1=Y.Y.Re; X2=Z.X.Re; Y2=Z.Y.Re; if (Abs R) >Eps then ( A=StartStop Xc Yc X1 Y1 X2 Y2 R &Ast &AEn ) if (Abs R) <=Eps then Lab=0; Lab=0; TODuga_Create &Out_Prm (Complex Xc 0) (Complex Yc 0) (Complex R 0) X1 Y1 X2 Y2 Att Out_Prm.Vid=0; AddInc Y Out_Prm AddInc Z Out_Prm -- Out_Prm.AssignParents([X,Y,Z]); ) else ( if (Att.Chk==1) then TOEmpty_Create &Out_Prm Att ) return true ) -- EExecD9