L iddldZy))*c >|'ttt|j}|j|}|j||}|j}|Dcgc]}|j|} }|d} |D cgc]} t | d| d} } t t| d\} }| d}|| d}|| d}|||zkrt|j|}d}|s||ks |||z k\rg}||| |fD]}|d}|d}|ddz}|ddz}|d }|r|t|dz}||z}||z}||z|z}||z dzdz||zzdz}||zdz|z}||zdz|z } |dk7rt||z |n||kr tdznd}!t}"|"j|!}"|"jt|t| }"|j!|"|d}"| dD#cgc]/}#t#|"j%|#j&|#j(f1c}#f| ddz}$|d}"g}%|D]X} | dD#cgc]/}#t#|"j%|#j&|#j(f1c}#f| ddz}&|%j!|&Z|%D&cgc]}&t |$d|&d} }&t t| d \} }| d}|||zkr |r||z nd}'t*j-d |'|'||fScc}wcc} wcc}#wcc}#wcc}&w) Nc |dSNrxs v/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/fontTools/varLib/interpolatableTestStartingPoint.pyz%test_starting_point..s 1)keyrg?c |dSrrr s r r z%test_starting_point..]s 1r z!test-starting-point: tolerance %g)listrangelen isomorphisms greenVectorsvdiff_hypot2_complexmin enumeratepointsabsatan2pi TransformrotatescalesqrtappendcomplextransformPointrealimaglogdebug)(glyph0glyph1ix tolerancematchingcontour0contour1 m0Vectorsi m1Vectorsc0c1costs min_cost_idxmin_cost first_costproposed_pointreverse num_pointsleeway transformsvectormeanXmeanYstddevXstddevY correlationacbdeltalambda1lambda2thetatransptnew_c0 new_contour1new_c1this_tolerances( r test_starting_pointrSsc&"5"5678""2&H""8B<0H##I19:A$$Q':I: !B:B CB !"Q%A / CE C 5!1~FL(qJl+A.N|$Q'G*y(("r*+  f $*v:M(M J$R=)B-8 )q q  )c/ )c/$Qi 3vay>1Kg%g%')G3q5C-A-A5#=q5C-%/q5C-%/12agk1-!a%b3hUV!   U+ DM4=A!!%(3 )6qMENPQReT%../ABCT12FqMEL ,#%Q% !5!5rww6H!IJ qrF  ##F+ ,JV?E$VAYq :E&)5)9~%N "L(qJ*y00 .8X *aNII+ >7 22C; D|U sL<L 94L 4LLN)interpolatableHelpersrSrr r rUs$g3r