+
    VBi4                        ^ RI t^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	 ^RI
HtHt ^RIHt ^RIHt  ^ RItR tR tR	 R
 lt]	R 4       tR tR tRR ltR tR tR tRR lt]R8X  d
   ]! 4        R# R#   ] d    Rt LJi ; i)    N)defaultdict)contextmanager)	cythonizeextended_iglob)is_package_dir)Optionsc                     \         P                  P                  V 4      w  r\        V4      '       d-   \         P                  P                  V4      w  rV: R V: 2pK=  W3# )/)ospathsplitr   )r   base_dirpackage_pathparents   &   ;/usr/lib/python3.14/site-packages/Cython/Build/Cythonize.pyfind_package_baser      sJ    WW]]40H

"
"77==2"(,7!!    c                     \        \        P                  P                  \	        V 4      4      p\        W!4      p\        \        VP                  4       4      VP                  4       R # N)
mapr   r   abspathr   _cython_compile_files_buildlistitemsparallel)path_patternoptions	all_pathsext_modules_by_basedirs   &&  r   cython_compiler!      sE    BGGOO^L%ABI29F
4&,,./1A1ABr   c                $    V ^8  d   QhR\         /# )   return)dict)formats   "r   __annotate__r'   !   s     "& "& "&r   c                 0   \        \        4      pV  EFv  pVP                  '       d[   Tp\        P                  P                  V4      '       d   \        V4      '       d"   \        P                  P                  V4      pKW  MR p\        P                  P                  V4      '       d$   \        P                  P                  VRR4      .pMV.p\        V3RVP                  RVP                  RVP                  RVP                  RVP                  RVP                  R	VP                   R
VP"                  RVP$                  /	VP&                  B pV'       g   EKJ  VP(                  '       g   EK_  W$,          P+                  V4       EKy  	  \-        V4      # )Nz**z
*.{py,pyx}nthreadsexclude_failuresexcludecompiler_directivescompile_time_envforcequietdepfilelanguage)r   r   build_inplacer   r   isdirr   dirnamejoinr   r   
keep_goingexcludes
directivesr-   r.   r/   r0   r1   r   buildextendr%   )r   r   ext_modules_to_buildr   r   pathsext_moduless   &&     r   r   r   !   sj   &t,   HggmmH--1I1I77??84 2J H77==WW\\$l;<E FE%% %// $$	
 !( 2 2 %55 -- -- OO %% oo ;7=== *11+>; > $%%r   c              #      "   T ;_uu_ 4       p Vx   RRR4       R#   \          d%    TP                  4        TP                  R R7       h i ; i  + '       g   i     R# ; i5i)T)cancel_futuresN)KeyboardInterruptterminate_workersshutdown)pool_cm	proc_pools   & r   _interruptible_poolrE   F   sW     	I	O 
 ! 	'')d3	 
s*   A$A
A$/AAA!		A$c                 v   \        R  V  4       4      pV'       g   R# V^8H  ;'       g    VRJ;'       d    V^8  p V'       d   RM\        P                  P                  VR7      pV'       d   V  F  p\        V4       K  	  R# \        X4      ;_uu_ 4       pV  UUUu. uF&  w  rxV F  pVP                  \        Wu.34      NK  	  K(  	  p	ppp\        P                  P                  V	\        P                  P                  R7       . p
V	 F  p VP                  4        K  	  V
'       d   RpVRP                  R.\        \         V
4      O54      ,          pVR,          pV
 Uu. uF  p\#        V\$        4      '       g   K  VNK  	  pp\&        P(                  R	,          R
8  d   V'       d   \+        W4      h\-        V4      V
^ ,          h RRR4       R#   \        \
        3 d    Rp ELi ; iu upppi   \         d   pT
P                  T4        Rp?EK  Rp?ii ; iu upi   + '       g   i     R# ; i)c              3   <   "   T F  w  r\        V4      x  K  	  R # 5ir   )len).0_moduless   &  r   	<genexpr>_build.<locals>.<genexpr>R   s     >+JA3w<<+s   N)max_workersT)return_whenz4Compiling Cython modules failed with these errors:

z
	*  z

:Nr#   N)      )sum
concurrentfuturesProcessPoolExecutorOSErrorImportErrorrun_distutilsrE   submitwaitFIRST_EXCEPTIONresultBaseExceptionappendr5   r   str
isinstance	Exceptionsysversion_infoExceptionGroupRuntimeError)r=   r   modcountserial_execution_moderC   extrD   r   rK   compiler_tasksworker_exceptionstaskproc_errexc_msgexcnon_base_exceptionss   &&              r   r   r   Q   s   >+>>H$M / /--A %)D##77H7M 	 C# 	W	%	% &1
%0! ]Xu,=> ?%0 	 
 	J<N<N<^<^_"D3 # NGx}}b%G3s4E+F%GHHGvG  1#0c9- 0   # #w.3F$WBB"7+1B11EE ! 
&	% [! % !%%
 ! 3!((223#+ 
&	%	%s~   G "G H',G0
AH'G7H'+9H'$H"H"%H'-H'G-,G-0H'7H	H	H'H	H''H8	c                     ^ RI Hp T w  r#RR.p\        P
                  ! 4       pRp T'       dA   \        P                  ! T4       \        P                  ! TR7      pTP                  RT.4       T! RTTR	7       T'       d`   \        P                  ! T4       T'       d@   \        P                  P                  T4      '       d   \        P                  ! T4       R# R# R# R#   \         d%     ^ RIHp  L  \         d    \        R4      hi ; ii ; i  T'       d]   \        P                  ! T4       T'       d>   \        P                  P                  T4      '       d   \        P                  ! T4       i i i i ; i)
r   )setupzL'distutils' is not available. Please install 'setuptools' for binary builds.	build_ext-iN)dirz--build-tempzsetup.py)script_namescript_argsr=   )distutils.corerr   rX   
setuptoolsr   getcwdchdirtempfilemkdtempr:   r   r3   shutilrmtree)argsrr   r   r=   rw   cwdtemp_dirs   &      r   rY   rY      s+   n( !H%K
))+CH(HHX''H5H9:"##	
 HHSMBGGMM(33h' 4x +  n	n( 	nlmm	nn* HHSMBGGMM(33h' 4x s5   C$ AD $D0C88DD&E<=$E<"E<c                   a ^ RI Hp V! WW#^	R7      w  rVRRRRRRR	R
/p\        VP                  4       4       UU	u. uF  w  rW3NK
  	  up	poV3R lp
VP	                  4        \        V4      ^,          ^8X  g   Q hV^ ,          V\        V4      ^,          ,          VR,          rp\        V R\        V4       RV
! V4       RV
! V4       R24       W^,          8  d!   \        RV
! V4       RV
! V4       R24       R# R# u up	pi )r   )cymeit)repeatnsecg&.>usecgư>msecgMbP?secg      ?c                 \   < S F  w  rW8  g   K   M	  \        R 4      hW,          R RV 2# )z"Timing is below nanoseconds: {t:f}z.3f )rf   )tscaleunitscaless   &  r   format_timebenchmark.<locals>.format_time   s;    !KEz " CDD)S!4&))r   z loops, best of z: z per loop (median: )z3The timings are likely unreliable. The worst time (z6) was more than four times slower than the best time (z).N)Cython.Build.Inliner   reversedr   sortrH   print)code
setup_codeimport_moduler8   r   timingsnumberunitsr   r   r   fastestmedianslowestr   s   &&&&          @r   	benchmarkr      s   *T}QRSOG T64ucBE/7/FG/Fum/FGF* LLNw<!q   &qz73w<13D+Ewr{WG	VH$S\N"[5I4JJ]^ijp^q]rrs
tu1*734 5**5g*>)?rC	D ! Hs   Dc                  ^   ^ RI Hp Hp ^RIHpHpHp V ! VRR7      pVP                  RRRR/ \        VR	R
7       VP                  RRRR/ \        VRR
7       VP                  RRRR/ \        VRR
7       VP                  RRR^RRR7       VP                  RRR^RR7       VP                  RRR^RR7       VP                  RR R!RR"RR#R7       VP                  R$R%RR&R'R(R)7       VP                  R*RR+R'R,R)7       VP                  R-R.R/R0R1. R2R37       VP                  R4R5R6R7RR8R97       VP                  R:R;R<R7RR=R97       VP                  R>R?R@\        RRARB7       VP                  RCRDR@\        RRERB7       VP                  RFRGRHRI\        RRJRB7       VP                  RKRLRMR7RRNR97       VP                  RORPRQR7RRRR97       VP                  RSRTR7RRUR97       VP                  RVRWRXR7RRYR97       VP                  RZR[R7RR\R97       VP                  R]R^R7R_R`7       VP                  RaRbRc7       V# )dr   )ArgumentParserRawDescriptionHelpFormatter)ParseDirectivesActionParseOptionsActionParseCompileTimeEnvActiona  Environment variables:
  CYTHON_FORCE_REGEN: if set to 1, forces cythonize to regenerate the output files regardless
        of modification times and changes.
  CYTHON_CACHE_DIR: the base directory containing Cython's caches.
  Environment variables accepted by setuptools are supported to configure the C compiler and build:
  https://setuptools.pypa.io/en/latest/userguide/ext_modules.html#compiler-and-linker-options)formatter_classepilogz-Xz--directivezNAME=VALUE,...r8   zset a compiler directive)metavardestdefaulttypeactionhelpz-Ez--compile-time-envr-   z'set a compile time environment variablez-sz--optionz
NAME=VALUEr   zset a cythonize optionz-2language_levelstore_constNz#use Python 2 syntax mode by default)r   r   constr   r   z-3z#use Python 3 syntax mode by default)r   r   r   r   z--3strz=use Python 3 syntax mode by default (deprecated alias for -3)z-+z--cplusr1   zc++zCompile as C++ rather than Cz-az
--annotater   annotatez/Produce a colorized HTML version of the source.)r   r   r   r   z--annotate-fullcfullczZProduce a colorized HTML version of the source which includes entire generated C/C++-code.z-xz	--excludePATTERNr7   r_   z2exclude certain file patterns from the compilation)r   r   r   r   r   z-bz--buildr9   
store_truez2build extension modules using distutils/setuptools)r   r   r   r   rt   z	--inplacer2   zHbuild extension modules in place using distutils/setuptools (implies -b)z--timeitr   
CODESTRINGzabuild in place, then compile+run CODESTRING as benchmark in first module's namespace (implies -i))r   r   r   r   r   z--setupbenchmark_setupz6use CODESTRING as pre-benchmark setup code for --benchz-jz
--parallelr   Nz2run builds in N parallel jobs (default: CPU count)z-fz--forcer.   zforce recompilationz-qz--quietr/   z"be less verbose during compilationz	--lenientlenientzBincrease Python compatibility by ignoring some compile time errorsz-kz--keep-goingr6   z8compile as much as possible, ignore compilation failuresz--no-docstringsno_docstringszstrip docstringsz-Mz	--depfilez produce depfiles for the sources)r   r   sources*)nargs)
argparser   r   Compiler.CmdLiner   r   r   add_argumentr`   int)r   r   r   r   r   parsers         r   create_args_parserr      s    Dgg3a	F m5E'#25  7 2<L-r6D  F j,$bs/3  5 #3MQR\`@  B
#3MQR@  B
'7UVZ  \
ijV[ei;  =
l=	XbL  N
*=V`I  J k9:%rO  Q iglTXO  Q
k^be  g 
lQT^b~  @
	(9<VYcgS  U lSO  Q iglTX0  2
iglTX?  A )LRV_  a
n<^bU  W
)^b-  /
k,Egh
	-Mr   c                     V P                  V4      w  r#VP                  pV FE  pVP                  R 4      '       d   V P                  RV,           4       K4  VP	                  V4       KG  	  V=W$3# )-zunknown option )parse_known_argsr   
startswitherrorr_   )r   r   r   unknownr   options   &&    r   parse_args_rawr     si    ..t4GooG S!!LL*612NN6"	 
 	r   c                 8   \        4       p\        W4      w  r VP                  e	   RVn        MV '       g   VP	                  R4       VP                  '       d   RVn        \        f   ^ Vn        VP                  '       d-   VP                  R9   g   Q hVP                  VP                  R&   VP                  '       d   R\        n        R\        n        VP                  '       d   VP                  \        n        VP                  '       d   R\        n        W 3# )NTzno source files providedr   F)r#   rQ   3str)r   r   r   r2   r   r9   multiprocessingr   r   r   r   r   error_on_unknown_nameserror_on_uninitializedr   r   
docstrings)r   r   r   s   &  r   
parse_argsr     s    !F"60MG$ $/0%%777,3,B,B()).&).&"++"=r   c                    \        V 4      w  r. pV F  p\        V4       Uu. uF"  p\        P                  P	                  V4      NK$  	  ppV'       gW   \        R P                  \        P                  ^ ,          V4      \        P                  R7       \        P                  ! ^4       VP                  V4       K  	  \        W14      pV'       d@   VP                  '       d.   \        \        VP!                  4       4      VP"                  4       VP$                  e   R;rV'       d.   VP'                  4       w  rV
'       d   V
^ ,          P(                  p	Ve!   \        P                  P+                  ^ V4       \%        VP$                  VP,                  V	R7       Ve"   \        P                  P/                  V4       R# R# R# u upi )z#{}: No such file or directory: '{}')fileN)r   )r   r   r   r   r   r   r&   rc   argvstderrexitr:   r   r9   r   r   r   r   r   popitemnameinsertr   remove)r   r   r<   r   r   pexpanded_pathr    r   r   first_extensionss   &          r   mainr   9  sV   %NGI5CD5IJ5I+5IJ7>>sxx{DQX[XbXbcHHQK'  39F'---t*0023W5E5EF$#''!)?)G)G)I&H 0 3 8 8HHOOAx(w66'	

 HHOOH%   % Ks   (G__main__)NNNr   )concurrent.futuresrT   r   r~   rc   r|   collectionsr   
contextlibr   Dependenciesr   r   Utilsr   Compilerr   r   rX   r   r!   r   rE   r   rY   r   r   r   r   r   __name__ r   r   <module>r      s     	  
  # % 3 " 
"C"&J  3Fl(<D<FR> &F zF [
  Os   A9 9	BB