L i*\ddlmZddlmZddlmZdgZdZdZd dZ edd Z y ) ) supportScalar) MAX_F2DOT14) lru_cache rebaseTentg?c$|d |d |d fS)Nr)vs g/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/fontTools/varLib/instancer/solver.py_reverse_negater s! qTEAaD51Q4%  c|\}}}}}|\}} } || kDrGtt||j| D cgc]\} } | | t| ndfc} } S||kr|| krgS|| kr9td|id|i} |||f}t||D cgc] \} } | | z| fc} } Std|id|i}|dfg}td|id|i}||k\r| d|z | | z zz}t ||| |f}d} |j | |z |f| |k\r|||f}|} |j | |z |fn| |k(r | t z } || |f}d}| ||f}d}|j ||z |f|j ||z |fnf|| k(r| } | d|z | | z zz}||ksJ t ||| |f}d}| ||f}|}|j ||z |f| |kr|j ||z |f||kr-|||f}td|id|i} |j | |z |f|S||k(r |t z}|||f}d}|||f}d}|j ||z |f|j ||z |f|Scc} } wcc} } w)Ntagr r)_solver reverse_negatermaxappendEPSILONr)tent axisLimitnegativeaxisMinaxisDefaxisMax_distanceNegative_distancePositivelowerpeakupperscalartmultgainoutoutGaincrossinglocloc1scalar1loc2scalar2newUppers r rrsNFOCGWg02CE4~$%((*  1=_Q'd C  *%GdN :~eW-t}=w(4:44KLyvq$"LL %)E4= 9D $<.C UG,udmzrebaseTent...s),,Q/rN)r)rrrrrrrrrr solsnr!r s ` r rrsGPCGWg02C  4G 4w 4" 44 44 4E4  -$ -% -2 -- -- - 199 $ "D/A  FA   !AaD'1QqT7AadG,4H D  K  s%2BN)F) fontTools.varLib.modelsrfontTools.misc.fixedToolsr functoolsr__all__rr rrr rr r;s>11 . !FR 3r