function EExecP0L &Out_Prm Z X Y Att Sg1 Sg2 Sg3 FM = ( local A,B,D,X1,Y1,X2,Y2 local X1=Complex 0. 0. local X2=Complex 0. 0. local Y1=Complex 0. 0. local Y2= Complex 0 0 local D if (X==undefined) or (Y==undefined) or (Z==undefined) then return false if (X.OB=="C") and (Y.OB=="C") and (Z.OB=="O") then ( if X.OB =="C" then A=CompSg X.C Sg2 if Y.OB =="C" then B=CompSg Y.C Sg3 X1=Z.X1 Y1=Z.Y1 X2=Z.X2 Y2=Z.Y2 D=(Diskr X1.Re Y1.Re 1 X2.Re Y2.Re 1 A.Re B.Re 1)*Sg1; if D<=0 then (TOPoint_Create &Out_Prm A B 1 Att) else ( CalcPF A B Z &X1 &Y1 TOPoint_Create &Out_Prm X1 Y1 1 Att ) ) else if (Att.Chk==1) then TOEmpty_Create &Out_Prm Att return true ) -- EExecP0L