Ë
    £eh  ã                   ó„   — d Z ddl­ ddlZddlZdZd„ Zd„ Zd„ Zdd	„Zd
„ Z	e
dk(  r ej                  d«        e	«        yy)z*Benchmark the cu2qu algorithm performance.é   )Ú*é    Ngš™™™™™©?c            	      óp   — t        d«      D � cg c]  } t        d„ t        d«      D «       «      ‘Œ c} S c c} w )Né   c              3   óZ   K  — | ]#  }t        t        j                  d d«      «      –— Œ% y­w)r   i   N)ÚfloatÚrandomÚrandint)Ú.0Úcoords     úW/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/fontTools/cu2qu/benchmark.pyú	<genexpr>z!generate_curve.<locals>.<genexpr>   s    è ø€ ÒC°Œe”F—N‘N 1 dÓ+×,ÑCùs   ‚)+é   )ÚrangeÚtuple)Úpoints    r   Úgenerate_curver   
   s7   € ô ˜1“Xöàô 	ÑC¼%À»(ÔCÕCòð ùò s   Ž"3c                  ó"   — t        «       t        fS ©N)r   ÚMAX_ERR© ó    r   Úsetup_curve_to_quadraticr      s   € ÜÓœWÐ$Ð$r   c                  óf   — d} t        | «      D �cg c]  }t        «       ‘Œ c}t        g| z  fS c c}w )Né   )r   r   r   )Ú
num_curvesÚcurves     r   Úsetup_curves_to_quadraticr      s/   € Ø€JÜ+0°Ó+<Ö= %Œ^ÕÒ=Ä¸yÈ:Ñ?UÐVÐVùÒ=s   �.c                 óè   — d|z   }|rt        |›d|›d�d¬«       |d|z   z  }nt        d|z  d¬«       d„ }t        j                   |||«      ||¬	«      }t        d
t        |«      dz  |z  z  «       y )NÚsetup_z with ú:Ú )ÚendÚ_z%s:c                 óJ   ‡ ‡— t        «       ‰    Š t        «       ‰   Šˆ ˆfd„}|S )Nc                  ó   •—  ‰  ‰«       Ž S r   r   )ÚfunctionÚ
setup_funcs   €€r   Úwrappedz/run_benchmark.<locals>.wrapper.<locals>.wrapped&   s   ø€ Ù™Z›\Ð*Ð*r   )Úglobals)r'   r(   r)   s   `` r   Úwrapperzrun_benchmark.<locals>.wrapper"   s'   ù€ Ü“9˜XÑ&ˆÜ“Y˜zÑ*ˆ
õ	+ð ˆr   )ÚrepeatÚnumberz	%5.1fusg    €„.A)ÚprintÚtimeitr,   Úmin)Úmoduler'   Úsetup_suffixr,   r-   r(   r+   Úresultss           r   Úrun_benchmarkr4      sx   € Ø˜HÑ$€JÙÜšxªÐ6¸BÕ?Ø�c˜LÑ(Ñ(‰
äˆe�hÑ BÕ'òô �m‰m™G H¨jÓ9À&ÐQWÔX€GÜ	ˆ+œ˜W›¨	Ñ1°FÑ:Ñ
;Õ<r   c                  ó4   — t        dd«       t        dd«       y )NÚcu2quÚcurve_to_quadraticÚcurves_to_quadratic)r4   r   r   r   Úmainr9   /   s   € Ü�'Ð/Ô0Ü�'Ð0Õ1r   Ú__main__)r"   é   iè  )Ú__doc__r6   r	   r/   r   r   r   r   r4   r9   Ú__name__Úseedr   r   r   ú<module>r?      sQ   ðÙ 0ä Û Û à
€òò%òWó
=ò*2ð
 ˆzÒØ€F‡K�K�„NÙ…Fð r   