+
    VBi                     J   ^ RI t ^ 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 ^RIHtHt ^ RIHt  ^ RIt^RIHt ^RIHtHtHtHtHtHtHt ^R	IHt ^R
IHt ^RIHt ^RI H!t!H"t"H#t# ]! ]PH                  PJ                  4      t&]! ]4      t']! ]4      t(R?R lt)R t*R@R lt+R t,R t-].! 4       t/].! 4       t0].! 4       t1R]2R]3R]3R]3R]0R]0R]0R]0R]3R]0R]0R]3R]0R]/R ]1/t4R! t5 ! R" R#4      t6] Pn                  ! ].]Pp                  ! R$]Pr                  4      Pt                  4      t;] Pn                  ! ].]Pp                  ! R%]Pr                  4      Pt                  4      t<] Pn                  ! ].]Pp                  ! R&]Pr                  4      Pt                  4      t=RAR' R( llt>]Pp                  ! R)]P~                  ]Pr                  ,          4      t@]Pp                  ! R*]P~                  ]Pr                  ,          4      tAR+ tB]R, 4       tCR- tD]R. 4       tE]R/ 4       tF]R0 4       tG]R1 4       tH ! R2 R34      tIRsJRBR4 ltKR5 tLRCR6 ltMRDR7 ltNR8 tO]P                  P                  R94      '       d   ]P                  R9,          tRR: tSMR; tS]SRER< l4       tTR= tUR> tVR#    Rt ELd; i)F    N)iglob)StringIO)relpath)CacheFingerprintFlags)Iterable)Utils)cached_functioncached_methodpath_existssafe_makedirscopy_file_to_dir_if_neweris_package_dirwrite_depfile)Errors)Context)Options)CompilationOptionsdefault_optionsget_directive_defaultsc                 <   V'       g   \         P                  ! 4       pVR,          \         P                  P                  8w  d"   V\         P                  P                  ,          pV  Uu. uF'  pVP	                  V4      '       d   \        W!4      MTNK)  	  up# u upi )   )osgetcwdpathsep
startswith_relpath)
file_pathsbaser   s   && >/usr/lib/python3.14/site-packages/Cython/Build/Dependencies.py_make_relativer#       ss    yy{Bx277;;"$" %)OOD$9$9HT tC"$ $ $s   )BBc           	   #   D  "   R V 9   dp   \         P                  ! RV 4      pV'       dQ   VP                  4       w  r#pVP                  R4       F&  p\	        W%,           V,           4       F  pVx  K	  	  K(  	  R# RV 9   g   \
        P                  R8X  d   RV 9   d   \        4       p\         P                  ! R\
        P                  R8X  d   RMR	,          V ^4      w  rV'       d"   \        V\
        P                  ,           4      pMR
.pV Fv  p
\	        \        W4      4       F   pWg9  g   K  VP                  V4       Vx  K"  	  \	        \        V
RRV	4      4       F   pWg9  g   K  VP                  V4       Vx  K"  	  Kx  	  R# \        V 4       F  pVx  K	  	  R# 5i){z(.*){([^}]+)}(.*),Nz**/\z**\z\*\*[%s]z/\\/ *z**)rematchgroupssplitextended_iglobr   r   setr   	join_pathadd)patternmbeforeswitchaftercaser   seenfirstrestroots   &          r"   r/   r/   )   sE    
g~HH('2$%HHJ!FES)*6=5+@ADJ B *  266T>f.?uhh{4gSQSZ\]^%"&&.)EDED&y'<=#HHTNJ > 'ysD$'GH#HHTNJ I  'NDJ #s   &F D F .6F )7F c              #   V   "   R pV  F	  pRpVx  K  	  V'       d   \        V4      hR# 5i)TFN)
ValueError)it	error_msgemptyvalues   &&  r"   nonemptyrC   J   s3     E  ## s   ))c                 &   \         f   \        R4      h \         P                  P                  RR7      pV P
                  P                  VR,          4       V P                  P                  VR,          4       V P                  P                  VR,          4       V P                  P                  VR,          4       V P                  P                  VR,          4       V P                  P                  VR	,          4       V P                  P                  VR
,          4       RV n        R F  p V P                  P                  V4       K!  	  R #   \         d#    \         P                  P                  4       p ELHi ; i  \         d     Kc  i ; i)NzBYou first need to install Pythran to use the np_pythran directive.T)pythoninclude_dirsextra_compile_argsextra_link_argsdefine_macrosundef_macroslibrary_dirs	librariesc++)z-fwhole-programz-fvisibility=hidden)pythranRuntimeErrorconfigmake_extension	TypeErrorrF   extendrG   rH   rI   rJ   rK   rL   languageremover>   )extpythran_ext
bad_options   &  r"   update_pythran_extensionrY   S   sD   _``6nn3343@ K78!!+.B"CD{+<=>[9:K78K78MM[12CL A
	""))*5 A  6nn3356   		s#    E 0F)E>=E>FFc                  a \        V 4      ^8  d%   V ^ ,          R8X  d   V R,          R8X  d	   V ^R p RpMRp\        V 4      w  p oV3R lpV P                  V4       Uu. uF"  q3P                  4       '       g   K  V! V4      NK$  	  up# u upi )z
>>> parse_list("")
[]
>>> parse_list("a")
['a']
>>> parse_list("a b c")
['a', 'b', 'c']
>>> parse_list("[a, b, c]")
['a', 'b', 'c']
>>> parse_list('a " " b')
['a', ' ', 'b']
>>> parse_list('[a, ",a", "a,", ",", ]')
['a', ',a', 'a,', ',']
[]r&    c                 \   < V P                  4       p V ^ ,          R9   d   SV ^R ,          # V # )r   z'"r   strip)literalliteralss   &r"   unquoteparse_list.<locals>.unquote   s0    --/1:GAbM**N    r   )lenstrip_string_literalsr.   r`   )s	delimiterrc   itemrb   s   &   @r"   
parse_listrk   l   s}     1v{qts{qu|aG		'*KAx '(ggi&8I&8dJJLMGDM&8IIIs   B
;B
namesourcesrI   rJ   rL   rK   runtime_library_dirsrF   extra_objectsrG   rH   export_symbolsdependsrT   
np_pythranc                     V R 8X  d   R# V R8X  d   R# ^ RI pVP                  R\        R7       V P                  4       p V R9   d   R# V R	9   d   R# \	        RV : 24      h)
TrueTFalseFNz1The 'np_python' option requires 'True' or 'False')categoryzinvalid truth value )yyesttrueon1)nnoffalseoff0)warningswarnDeprecationWarninglowerr>   )valr   s   & r"   _legacy_strtoboolr      s\    
f}	MMEPbMc
))+C
22	5	5S:;;re   c                   <   a  ] tR t^t o RR ltR tR tR tRtV t	R# )DistutilsInfoNc           
       a / V n         VEez   \        V\        4      '       d   \        V4      MTpV EFM  oSP	                  4       oS'       g   K  S^ ,          R8w  d    R # SR,          P	                  4       o\        V3R lR 4       R 4      pVf   Kb  S\        V4      R  P                  R4       Uu. uF  qUP                  4       NK  	  upw  rgp\        P                  VR 4      p	SP                  R4      '       d   V	f   K  V	\        \        39   dH   \        V4      pVR8X  d6   V U
u. uF)  p
RV
9   d   \        V
P!                  R^4      4      MV
R 3NK+  	  pp
V	\"        J d   \%        V4      pWP                   V&   EKP  	  R # Ve=   \         F0  pVR9   d   K  \'        W&R 4      pV'       g   K"  WP                   V&   K2  	  R # R # u upi u up
i )	N#r   NNc              3   Z   <"   T F   pSP                  V4      '       g   K  Vx  K"  	  R # 5iN)r   ).0klines   & r"   	<genexpr>)DistutilsInfo.__init__.<locals>.<genexpr>   s!     W(@1DOOTUDVQQ(@s   +
+cython:=rI   )z
distutils:r   )rl   rm   rr   )values
isinstancestrr   lstripnextrf   	partitionr`   distutils_settingsgetr   listtransitive_listrk   tupler.   bool_orr   getattr)selfsourceexnsource_lineskindrh   key_rB   typemacror   s   &&&        @r"   __init__DistutilsInfo.__init__   s   /9&#/F/F8F+FL${{}7c>Bx(W(@WY]^#8<SYZ8H8R8RSV8W$X8W1WWY8W$XMCE-11#t<Dy11dlHo66 *5 1/1 38%927 ),u &+5;;sA+>%?;@$-&H27 " %9 w 1% 8',KK$) %* _)::$/5',KK$ *  %Y%9s   4G	,/Gc                   Vf   V # VP                   P                  4        F  w  r#\        V,          pV\        J d!   W P                   9  d   W0P                   V&   K<  V\        J d_   W P                   9   d?   V P                   V,          R,          pV F  pWe9  g   K  VP                  V4       K  	  TpW0P                   V&   K  V\        J g   K  V P                   P                  VR4      V,          V P                   V&   K  	  V # )N:NNNF)r   itemsr   transitive_strr   appendr   r   )r   otherr   rB   r   allvs   &&     r"   mergeDistutilsInfo.merge   s    =K,,,,.JC%c*D~%#[[*@#(C (++%++c*1-C"<JJqM #  E#(C #';;??3#>#FC  / re   c                z   Vf   V # \        4       pV P                  P                  4        F  w  r4\        V,          pV\        \
        39   dN   . pV FB  pWq9   d	   W,          p\        V\        4      '       d   Wg,          pK1  VP                  V4       KD  	  TpMWA9   d	   W,          pWBP                  V&   K  	  V# r   )r   r   r   r   r   r   r   r   )r   aliasesresolvedr   rB   r   new_value_listr   s   &&      r"   subsDistutilsInfo.subs   s    ?K ?++++-JC%c*Do..!#A|#J!!T**&+&--a0  '##NE#(OOC  .  re   c                    V P                   P                  4        FJ  w  r#\        V,          pV\        \        39   d   \        W4      \        V4      ,           p\        WV4       KL  	  R # r   )r   r   r   r   r   r   setattr)r   	extensionr   rB   r   s   &&   r"   applyDistutilsInfo.apply   sO    ++++-JC%c*Do..	/$u+=IE*	 .re   )r   NN)
__name__
__module____qualname____firstlineno__r   r   r   r   __static_attributes____classdictcell____classdict__s   @r"   r   r      s     -B(,+ +re   r   z]
    (?P<comment> [#] ) |
    (?P<brace> [{}] ) |
    (?P<fstring> f )? (?P<quote> '+ | "+ )
z`
    (?P<escape> [\\]+ ) (?P<escaped_quote> ['"] ) |
    (?P<fstring> f )? (?P<quote> '+ | "+ )
z
    (?P<braces> [{]+ | [}]+ ) |
    (?P<escape> [\\]+ ) (?P<escaped_quote> ['"] ) |
    (?P<fstring> f )? (?P<quote> '+ | "+ )
c                0    V ^8  d   QhR\         R\         /# )   codeprefix)r   )formats   "r"   __annotate__r     s     k' k' k'S k're   c                   a aaaaaaaa . o/ o^ o\         oVVVV3R loR VV VV3R lloRR VV VVVV3R llloS! ^ 4       RP                  S4      S3# )z
Normalizes every string literal to be of the form '__Pyx_Lxxx',
returning the normalized code and a mapping of labels to
string literals.
c                 T   < S^,          oS S R2pV SV&   SP                  V4       R# )r   r   N)r   )ra   labelcounterrb   new_coder   s   & r"   append_new_label/strip_string_literals.<locals>.append_new_label%  s1    1(7)1%!re   c                    V ^8  d   QhR\         R\        P                  R\        P                  R\        P                  /# )r   
quote_typestart
is_fstringreturn)r   cython
Py_ssize_tbint)r   s   "r"   r   +strip_string_literals.<locals>.__annotate__,  s9     ' ' 'V->-> 'FKK '\b\m\m 're   c                 (  < TpV'       d   \         M\        pVR	8w  Eds   V! SV4      pVf   S! SVR 4       R	p V# VP                  4       pVR,          '       dC   \        VR,          4      ^,          ^ 8X  d#   VR,          V ^ ,          8X  d   V^,          pK  K  K  V'       d   VR,          '       dv   \        VR,          4      ^,          ^ 8X  d   K  VR,          R	,          R8X  d>   W^,
          8  d   S! SW^,
           4       SP	                  R4       S	! VRR7      ;rEK  EK  VR,          P                  V 4      '       g   EK3  VP                  R4      pW18  d   S! SW 4       SP	                  V 4       V\        V 4      ,          p V# V# )
r   Nescapeescaped_quotebracesr%   T
in_fstringquoter   )_FIND_FSTRING_TOKEN_FIND_STRING_TOKENendrf   r   r   r   )
r   r   r   charpos
find_tokentokenr   r   r   
parse_codes
   &&&   r"   parse_string+strip_string_literals.<locals>.parse_string,  sh   %*,6(<N
mtW-E} ef.8 7 iikGXuX'!+q0U?5KzZ[}5\qLG 6]0 huX'!+q0?2&#-qy((eai)@AOOC(&0T&JJEG	 . w**:66++g.?$T%%:;
+3z?*wre   c                x    V ^8  d   QhR\         P                  R\         P                  R\         P                  /# )r   r   r   r   )r   r   r   )r   s   "r"   r   r   U  s2     - -&++ - -QWQbQb -re   c                   < T pVR8w  Ed   S! SV4      pVf   S	P                  SV R 4       Rp V# VP                  4       ;r$VR,          '       d   VR,          p\        V4      ^8  d   VR\        V4      ^,           pV'       dl   \        V4      ^8w  dZ   \        V4      ^8  d#   V\        V4      ^,
          ,          pVR,          pS	P                  SW 4       S! WTVR,          R7      ;rK  K  K  VR,          '       dH   S	P                  SW 4       SP                  RV4      pS! SYBR8w  d   TMR 4       VR8X  d    V# Tp EKG  V'       g   EKR  VR,          '       g   EKd  VR,          R	8X  d/   VP	                  4       ^,           ;r$S	P                  SW 4        V# VP	                  4       ^,           pS	P                  SW 4       S
! VR
R7      ;rEK  V# )r   Nr   N   Nfstring)r   comment
brace}Tr   r   )r   r   rf   findr   )r   r   r   r   r   r   r   r   r   r   r   r   s   &&    r"   r   )strip_string_literals.<locals>.parse_codeU  s   %* mtW-E}UV-F E "IIK'GW~~gu:?!/3u:>2ESZ1_5zA~s5zA~- %b	OODO4&25%PYJZ&[[EG -5 y!!U0))D#. c"}G$!OPb=   g>S($)KKMA$55GOODO4 	  ++-!+COODO4&0&FFEGre   r)   F)_FIND_TOKENjoin)	r   r   r   r   r   rb   r   r   r   s	   ff@@@@@@@r"   rg   rg     sW     HH!"GJ ' 'R- -^ qM778h&&re   a  (?:^ [ \t\f]* from     [ \t\f]+ cython\.cimports\.([\w.]+) [ \t\f]+ c?import ) |(?:^ [ \t\f]* from     [ \t\f]+ ([\w.]+) [ \t\f]+ cimport ) |(?:^ [ \t\f]* c?import [ \t\f]+ cython\.cimports\.([\w.]+) ) |(?:^ [ \t\f]* cimport  [ \t\f]+ ([\w.]+ (?:[ \t\f]* , [ \t\f]* [\w.]+)*) ) |(?:^ [ \t\f]* cdef     [ \t\f]+ extern [ \t\f]+ from [ \t\f]+ ['\"] ([^'\"]+) ['\"] ) |(?:^ [ \t\f]* include  [ \t\f]+ ['\"] ([^'\"]+) ['\"] )zf(?:^ [ \t\f]+ \( ([\w., \t\f]*) \) [ \t\f]* [#\n]) |(?:^ [ \t\f]+    ([\w., \t\f]*)    [ \t\f]* [#\n])c                 x    \        \        P                  P                  V 4      \	        \        V4      4      4      # r   )normalize_existing0r   r   dirnamer   r0   )	base_path	rel_pathss   &&r"   normalize_existingr    s%    rwwy95Y;PQQre   c                P   . pRpV F  p\         P                  P                  V4      '       d   VP                  V4       K;  \	        W4      p\        V4      '       d3   VP                  \         P                  P                  V4      4       T pK  VP                  V4       K  	  W#3# )a  
Given some base directory ``base_dir`` and a list of path names
``rel_paths``, normalize each relative path name ``rel`` by
replacing it by ``os.path.join(base, rel)`` if that file exists.

Return a couple ``(normalized, needed_base)`` where ``normalized``
if the list of normalized file names and ``needed_base`` is
``base_dir`` if we actually needed ``base_dir``. If no paths were
changed (for example, if all paths were already absolute), then
``needed_base`` is ``None``.
N)r   r   isabsr   r1   r   normpath)base_dirr  
normalizedneeded_baserelr   s   &&    r"   r  r    s     JK77==c"'tbgg..t45"Kc"  $$re   c                 v    \        V4      p. pV  F%  p\        W14      pVf   K  VP                  V4       K'  	  V# r   )r   resolve_dependr   )rq   rF   r   dependr   s   &&   r"   resolve_dependsr    s>    &LHf3OOD!  Ore   c                     V ^ ,          R8X  d   V R,          R8X  d   R# V F@  p\        W 4      p\        V4      '       g   K!  \        P                  P	                  V4      u # 	  R# )r   <>Nr   )r1   r   r   r   r  )r  rF   dirr   s   &&  r"   r  r    sU    ayCF2J#-%t77##D))  re   c                    \         P                  P                  \         P                  P                  \	        V 4      4      4      pW8w  dB   \        V4      '       d1   \        V4      \         P                  P                  V4      3,           # R# )N )r   r   r  abspathr   r   packagebasename)filenamer  s   & r"   r  r    sZ    
''//"''//#h-8
9C
>#..s|rww//4666	re   c                     \         P                  P                  \         P                  P                  V 4      4      ^ ,          pRP	                  \        V 4      V3,           4      # )r   .)r   r   splitextr  r   r  )r  modules   & r"   fully_qualified_namer    sE    WWbgg..x89!<F88GH%	122re   c                   a \         P                  ! V R R7      ;_uu_ 4       pVP                  4       pRRR4       \        X4      p\	        V4      w  r$VP                  RR4      P                  RR4      p. p. p. p\        P                  V4       EF)  pVP                  4       w  p	orrV	'       d   V	oV
'       d   T
pS'       d   VP                  S4       \        P                  W(P                  4       R7      pV'       dL   VP                  4       w  ppT;'       g    TpVP                  V3R lVP                  R4       4       4       K  K  V'       d*   VP                  R	 VP                  R4       4       4       K  V'       d   VP                  WL,          4       EK  VP                  WM,          4       EK,  	  WVWs3#   + '       g   i     EL; i)
ignore)error_handlingNz\
r]   	)posc              3   d   <"   T F%  pR P                  SVP                  4       4      x  K'  	  R# 5i)z{}.{}N)r   r`   )r   rh   cimport_froms   & r"   r   %parse_dependencies.<locals>.<genexpr>  s-       @)>A !(|QWWY G G)>s   -0r&   c              3   @   "   T F  qP                  4       x  K  	  R # 5ir   r_   )r   xs   & r"   r   r'    s     G/F!GGII/Fs   )r	   open_source_filereadr   rg   replacedependency_regexfinditerr-   r   dependency_after_from_regexsearchr   rS   r.   )source_filenamefhr   distutils_inforb   cimportsincludesexternsr4   pycimports_frompycimports_listcimport_listexternincludem_after_from	multilineone_line
subimportsr&  s   &                 @r"   parse_dependenciesr@    s   
 
			I	IR 
J"6*N,V4F^^FC(00s;F HHG&&v.XYX`X`XbUf*L*LOOL)6==f%%'=RL&2&9&9&;#	8&22(
  @)3)9)9#)> @ @  OOG|/A/A#/FGGNN8+,OOH-.+ /, w66A 
J	I	Is   GG	c                      a  ] tR tRt o RR ltR t]R 4       t]R 4       tR t	R t
R t]RR
 l4       t]R 4       t]R 4       tR t]R 4       tR tR tR tRR ltR tR tRtV tR	# )DependencyTreei  c                ,    Wn         W n        / V n        R # r   )contextquiet_transitive_cache)r   rD  rE  s   &&&r"   r   DependencyTree.__init__  s    
!#re   c                x    \        V4      '       d    \        P                  P                  V4      p\	        V4      # r   )r   r   r   r  r@  )r   r1  s   &&r"   r@  !DependencyTree.parse_dependencies  s,    '' gg..?O!/22re   c                X   \        4       pV P                  V4      ^,           EF  p\        \        P                  P                  V4      V4      p\        V4      '       g   V P                  P                  W1R7      pV'       dy   R\        P                  P                  ,           V9   d    \        P                  P                  V4      pVP                  V4       VP                  V P                  V4      4       K  V P                  '       d   K  \        RV: RV: R24       EK  	  V# )r   source_file_pathr  zUnable to locate 'z' referenced from '')r0   r@  r1   r   r   r  r   rD  find_include_filer   r  r2   updateincluded_filesrE  print)r   r  r   r;  include_paths   &&   r"   rP  DependencyTree.included_files  s     e..x8;;G$RWW__X%>HL|,,#||==g=a$4#%77#3#3L#AL%

4..|<=ZZZhPWXY < 
re   c                   V P                  V4      R ,          w  r#p\        V4      p\        V4      p\        4       pV P                  V4       FJ  pV P                  V4      w  rxp	VP	                  V4       VP	                  V4       VP	                  V	4       KL  	  \        W4      w  rJV
'       d   VP                  V
4       \        V4      WE3# )r   )r@  r0   rP  cimports_externs_incdirsrO  r  r2   r   )r   r  r4  r5  r6  incdirsr;  included_cimportsincluded_externsincluded_incdirsincdirs   &&         r"   rU  'DependencyTree.cimports_externs_incdirs#  s     '+&=&=h&G&K#Gx=g,%**84GDHDaDabiDjA1AOO-.NN+,NN+,	 5
 -X?KKX00re   c                2    V P                  V4      ^ ,          # r   )rU  r   r  s   &&r"   r4  DependencyTree.cimports5  s    ,,X6q99re   c                    \        V4      # r   )r  r^  s   &&r"   r  DependencyTree.package8  s    x  re   c                    \        V4      # r   )r  r^  s   &&r"   r  #DependencyTree.fully_qualified_name;  s    #H--re   Nc                @   V^ ,          R8H  pV'       d   V'       g   \        R4      hVe   VP                  R4      pV'       d   VP                  ^ 4       \        V P	                  V4      4      pV'       d4   V^ ,          '       g%    VP                  4        TP                  ^ 4       K;  RP                  WT,           4      pV P                  P                  WbR7      pV'       d   V# V'       d   R# V P                  P                  WR7      #   \
         d     R# i ; i)r   r  zNew relative imports.NrK  )	NotImplementedErrorr.   popr   r  
IndexErrorr   rD  find_pxd_file)r   r  r  is_relativemodule_pathpackage_pathrelativepxds   &&&     r"   find_pxdDependencyTree.find_pxd>  s    Qi3&x%&=>> ,,s+K"X 67Lk!nn  $$& "xx :;H,,,,X,QC
||))&)LL "   s   D DDc                `   \         P                  P                  V4      w  r#VR9   d$   \        VR,           4      '       d   VR,           .pM. pV P	                  V4       FB  pVR,          R8X  g   VR8X  d   K  V P                  WQ4      pVf   K1  VP                  V4       KD  	  \        V4      # ).pyxz.pxd:N   Nzcython.r   rq  .py)r   r   r  r   r4  rn  r   r   )r   r  filename_rootfilename_extpxd_listr  pxd_files   &&     r"   cimported_filesDependencyTree.cimported_filesV  s    &(gg&6&6x&@#?*{=6;Q/R/R%./HH mmH-FbzY&&H*<}}V6H#) . Xre   c                    V0pVP                  V P                  V4      4       VP                  V P                  V4      4       V# r   )rO  ry  rP  )r   r  all_depss   && r"   immediate_dependencies%DependencyTree.immediate_dependenciesg  s<    :,,X67++H56re   c                V    V P                  WP                  \        P                  4      # r   )transitive_merger}  r0   unionr^  s   &&r"   all_dependenciesDependencyTree.all_dependenciesn  s    $$X/J/JCIIVVre   c                @    \         P                  P                  V4      # r   )r   r   getmtimer^  s   &&r"   	timestampDependencyTree.timestampq  s    ww))re   c                (    V P                  V4      V3# r   )r  r^  s   &&r"   extract_timestamp DependencyTree.extract_timestampu  s    ~~h'11re   c                |    \        V P                  V4       Uu. uF  q P                  V4      NK  	  up4      # u upi r   )maxr  r  )r   r  r   s   && r"   newest_dependency DependencyTree.newest_dependencyx  s5    t7L7LX7VW7V!**1-7VWXXWs   9c                   V P                  V4      ^,          pVP                  pV P                  V4      w  rEp\        P                  ! 4       pV'       dO   \        WW4      pRV9   d/   \        \        VR,          4      P                  V4      4      VR&   M\        V4      VR&   V'       dK   \        VP                  R. 4      4      p\        Wg4       F  p	W9  g   K  VP                  V	4       K  	  WR&   V# )r   rq   rF   )r@  r   rU  r   r   r#   r   r0   r  r   r   )
r   r  infokwdsr4  r6  rV  basedirrF   incs
   &&        r"   distutils_info0DependencyTree.distutils_info0{  s    &&x03{{%)%B%B8%L"7))+$W6GD "&s4	?';'A'A''J"KY"&w-Y  <=L%g7* '', 8 $0 re   c                    V P                  WP                  \        P                  4      P	                  V4      P                  V4      # r   )r  r  r   r   r   )r   r  r   r!   s   &&&&r"   r3  DependencyTree.distutils_info  s5    %%h0D0DmFYFYZT']U4[	re   c                     V P                   W#3,          pV P                  WW4/ V P                  4      ^ ,          #   \         d    / ;q@P                   Y#3&    LCi ; ir]  )rF  KeyErrortransitive_merge_helperry  )r   nodeextractr   r9   s   &&&& r"   r  DependencyTree.transitive_merge  sn    	?))'.9D ++5D,@,@BBCE 	E  	?<>>D))'.9	?s   ; AAc           	     0   W9   d   WA,          R 3# V! V4      pW9   d   Wq3#  \        V4      WQ&   R pV! V4       F>  p	V P                  WW4WV4      w  rVe   Ve   WX,          W[,          8  d   MTpV! Wz4      pK@  	  W8X  d   R pVf   WtV&   Wx3WQ #   YQ i ; ir   )rf   r  )r   r  r  r   r9   stackoutgoingdepsloopr   sub_depssub_loops   &&&&&&&     r"   r  &DependencyTree.transitive_merge_helper  s    <:t##t}=:	e*EKD %)%A%A$QV^c%n"''EK%/,I'T, ' ||!T
:s   A+B B)rF  rD  rE  r   r   r   )r   r   r   r   r   r@  r   rP  rU  r4  r  r  rn  ry  r}  r  r  r  r  r  r3  r  r  r   r   r   s   @r"   rB  rB    s     $
3
  " 1 1":!. M M.     W * *2Y,
E re   rB  c                     \         f5   V f%   \        R.\        4       \        \        4      R7      p \        WR7      s \         # )Nr  )optionsrE  )	_dep_treer   r   r   r   rB  )ctxrE  s   &&r"   create_dependency_treer    s:    ;3%!7!9"4_"EGC"34	re   c                 R   R V9   dU   VP                  R. 4      R.,           p\        VR ,          V4      p\        \        W0P                  ,           4      4      VR &   V P
                  pV! R/ VB p\        V R4      '       d   V P                  Vn        \        WR,          R7      pWV3# )rq   rF   r  py_limited_apirl   )	distutilsmodule_namer  )	r   r  sortedr0   rq   	__class__hasattrr  dict)templater  rF   rq   ry   rV   metadatas   &&     r"   default_create_extensionr    s    Dxx3se;!$y/<@ W/?/?%?!@AYA
)d)Cx)**%44dV=H?re   c                    Ve   \        RP                  V4      4       Vf   . pV f   . / 3# \        V \        4      '       g   \        V \        4      '       g   V .p ^ RIHp R\        P                  9   dE   V\        P                  R,          P                  \        P                  R,          P                  3pMV3pV  U	u0 uF"  p	\        W4      '       g   K  V	P                  kK$  	  p
p	\        W$R7      pVP                  p\        4       p\        V\        4      '       g   V.pV F?  pVP                  \!        \"        P$                  P&                  \)        V4      4      4       KA  	  . p/ pVP*                  P,                  ;'       g    \.        p\        4       pV  EFj  p\        V\        4      '       d   TpV! V. 4      pRpR pTpEM\        W4      '       Eds   VP0                   Uu. uF2  p\"        P$                  P3                  V4      ^,          R9   g   K0  VNK4  	  ppTpVP                  p\5        VR7      pR pV'       d:   V^ ,          p\7        V4      ^8  d   \        RVP                  : R	V: R
24       EMV'       d   VP                  V8X  d   VP0                  ;'       g<    VP9                  R\"        P:                  4      VP<                  R8X  d   RMR,           .pV! V\?        RRVRVRVP<                  /VP@                  B 4      w  p	pRV	n!        R V	n        VPE                  V	4       EK  VPE                  V4       EK  \        R\G        V4      : R\I        V4      : RVPJ                  : 24      p\M        V4      h\O        \Q        \)        V4      4      RV,          4       EFQ  p\"        P$                  P'                  V4      V9   d   K*  VPS                  V4      pRV9   d   VV
9   d   KK  M
V'       d   Tp\T        PV                  ! V4       VV9  g   Ku   VPY                  VVV4      P@                  pTe3   TP@                  P]                  4        F  w  p p!T T9  g   K  T!TT &   K  	  TTR&   T.TP0                   U	u. uF  qT8w  g   K  T	NK  	  up	,           pRT9   d+   TR,           F  p"T"T9  g   K  TPE                  T"4       K  	  TTR&   T'       d   RT9  d   TTR&   TP_                  RR4      p#T! TT4      w  p	p$T#;'       g    \a        T	RR4      T	n!        Yn        T	PB                  '       d   \c        T	4       TPE                  T	4       T$TT&   TT	P0                  9  dy   \"        P$                  P3                  T4      ^ ,          T	P<                  R8X  d   RMR,           p% T	P0                  Pe                  T%4       T	P0                  Pi                  ^ T4       TPk                  T4       EKT  	  EKm  	  VV3# u up	i u upi   \Z         d    T'       d    EK  h i ; iu up	i   \f         d    \        RT,          4        Li ; i)NzWarning: passing language={0!r} to cythonize() is deprecated. Instead, put "# distutils: language={0}" in your .pyx or .pxd file(s))	Extension
setuptoolszsetuptools.extensionr  r*   )r   z6Warning: Multiple cython sources found for extension 'z': z
See https://cython.readthedocs.io/en/latest/src/userguide/sharing_declarations.html for sharing declarations among Cython files.r  rM   .cpp.crl   rm   rT   Fz6pattern is not of type str nor subclass of Extension (z) but of type z and class z'%s' doesn't match any filesrr   z@Warning: Cython source file not found in sources list, adding %s)rt  rq  r  )6rQ  r   r   r   r   distutils.extensionr  sysmodules
_Extensionrl   r  shared_utility_qualified_namer0   r   rO  mapr   r   r  r/   r  create_extensionr  rm   r  r   rf   r,  r   rT   r  r   rr   r   reprr   r  rR   rC   r  r  r	   $raise_error_if_module_name_forbiddenr3  	Exceptionr   rf  r   rY   rU   r>   insertr2   )&patternsexcluder  r   rE  rT   exclude_failuresr  extension_classesr4   explicit_modulesr  r  
to_excluder3   module_listmodule_metadatar  r9   filepatternr  rl   r!   ext_languagerh   cython_sourcesrm   r   msgfiler  r  r   rB   r   rr   r  target_files&   &&&&&&&                               r"   create_extension_listr    s    VV\V\]eVf	h2v	Hc	"	"*Xx*H*H:-s{{" KK./::KK%//
 'L(0U1Jq4TU!#3D$'$E$E!Jgt$$)#bggoo~g/FGH  KO {{33OO7O5Dgs##!K "-HDD#L33)0 LA!#!1!1!!4Q!7?!J  aN LH==D X.DL,Q/~&*LSLLZhj k /7<<C`3`!// ~ ~5==c266JX_XhXhlqXqfw{|.~' 262#2 %--2
 kk2 1  %26/""1% ""7+8<Y8<W8?8I8IK LC C. VN;$?@B`cnBnoDwwt$
233D9Kd{"22 3"66{C$&..tWdCJJD
 #&*kk&7&7&9
Ud?(-DI ':  +V&x/?/?#T/?!CSAA/?#TT$"&y//!0#NN62 #2 #*YJd$:'3D$!XXlE:
 /x>8)LLWQe-L2O/<<<,Q/""1% 08,qyy("$''"2"24"8";W\I\vbf"gKi		((5 II$$Q-y p] V ''{ V4Lj ! '  $U< & i`cgghisH   XX--XX*XX9
X9
=X>X64X6>YYc	                D  a5 Vf   . pRV	9  d   R.V	R&   RV	9   d   \        V	R,          4       V	P                  RR4      p
\        f   RpM\        R+/ V	B pRVn        RVn        Vf#   \        P                  P                  R4      R8H  p\        R+/ V	B p\        R+/ V	B pRVn        \        P                  ! V4      pTp	VP                  p\        V VVVVVVR	7      w  p p\        V 4       \        WR
7      p\        V	RR4      o5V	P                   '       d_   V	P"                  '       gM   \$        P"                  '       g7   V	P                   RJ d   RMV	P                   p\'        V\        V	RR4      4      pMRp\        P(                  ! 4       3V53R llpV53R lp\*        P,                  ! \.        4      p. pV  EF  pS5'       d   VP0                   F  pV! V4       K  	  VP2                   Uu. uF2  p\        P4                  P7                  V4      ^,          R,9   g   K0  VNK4  	  pp\9        V4      ^8X  d   VP:                  pMRp\        VRR4      p\        VRR4      pV'       d   Tp	MVP<                  R8X  d   Tp	MTp	. pVP2                   EF(  p\        P4                  P7                  V4      w  p p!V!R,9   Ed   T VP<                  R8X  g	   V'       d   RMR,           p"V! V"4      p"V
'       d   VP?                  V4      p#\A        V"VV#4       \B        PD                  ! V"4      '       d!   \        P4                  PG                  V"4      p$MR-p$V$VPI                  V4      8  d   VPI                  V4      Tpp%^ p&M/VPK                  V4      w  p%p^VVPM                  V4      9   ,
          p&V'       g	   V$V%8  Ed   V'       gs   V'       gk   VV8X  d(   \O        R\B        PP                  ! V4      ,          4       M<\O        R\B        PP                  ! V4      : R\B        PP                  ! V4      : R24       V'       gL   V'       dD   TPS                  TVP?                  V4      T	\U        VP<                  ;'       g    RVV4      4      p'MRp'VPW                  V&VV"V'VW'       * VP                  VP:                  4      VV3
4       VV",          PW                  V4       MV'       d   VP:                  V8X  d   V! V4      p"\        V	V"RR7      p(\B        PX                  ! V"4      '       g   \O        RVP:                   RV" R24       MfV'       g   \B        PD                  ! V"4      '       g0   ^RI-H.p) V'       g   \O        RVP:                   R24       V)! V(4       MTp"S5'       d	   V! V4       VPW                  V"4       EK+  	  VVn        EK  	  VP_                  4        \9        V4      p*R\9        \a        V*4      4      V*3,          Pb                  p+\e        V^4       U,U-u. uF  w  p,p-V-R ,          V+! V,4      V3,           NK   	  pp,p-V*^8:  d   ^ p ^ R!I3H4p. V'       dD   X.! V\l        R"7      ;_uu_ 4       p/ \/        V/Po                  \p        V^R#7      4        RRR4       MV F  p0\y        V0!   K  	  V'       Ed8   \{        4       p1VP}                  4        F  w  p"p2\        P4                  P                  V"4      '       g   V1P                  V24       K>  \        P4                  P                  V"4      ^8  g   Kd  \        V"R%R&R'7      p3 V3P                  \9        R(4      4      R(8X  d   V1P                  V24       V3P                  4        K  	  V1'       d_   V1 F  p4V P                  V44       K  	  \O        R)R*P                  \        V1 U4u. uF  p4V4P:                  NK  	  up44      4      ,          4       V'       d   VP                  4        \        P                  P                  4        V # u upi u up-p,i   \j         d    ^ p ELi ; i  \r         d%    T/Pu                  4        T/Pw                  RR$7       h i ; i  + '       g   i     EL; i  T3P                  4        i ; iu up4i ).a  
Compile a set of source modules into C/C++ files and return a list of distutils
Extension objects for them.

:param module_list: As module list, pass either a glob pattern, a list of glob
                    patterns or a list of Extension objects.  The latter
                    allows you to configure the extensions separately
                    through the normal distutils options.
                    You can also pass Extension objects that have
                    glob patterns as their sources. Then, cythonize
                    will resolve the pattern and create a
                    copy of the Extension for every matching file.

:param exclude: When passing glob patterns as ``module_list``, you can exclude certain
                module names explicitly by passing them into the ``exclude`` option.

:param nthreads: The number of concurrent builds for parallel compilation
                 (requires the ``multiprocessing`` module).

:param aliases: If you want to use compiler directives like ``# distutils: ...`` but
                can only know at compile time (when running the ``setup.py``) which values
                to use, you can use aliases and pass a dictionary mapping those aliases
                to Python strings when calling :func:`cythonize`. As an example, say you
                want to use the compiler
                directive ``# distutils: include_dirs = ../static_libs/include/``
                but this path isn't always fixed and you want to find it when running
                the ``setup.py``. You can then do ``# distutils: include_dirs = MY_HEADERS``,
                find the value of ``MY_HEADERS`` in the ``setup.py``, put it in a python
                variable called ``foo`` as a string, and then call
                ``cythonize(..., aliases={'MY_HEADERS': foo})``.

:param quiet: If True, Cython won't print error, warning, or status messages during the
              compilation.

:param force: Forces the recompilation of the Cython modules, even if the timestamps
              don't indicate that a recompilation is necessary.

:param language: To globally enable C++ mode, you can pass ``language='c++'``. Otherwise, this
                 will be determined at a per-file level based on compiler directives.  This
                 affects only modules found based on file names.  Extension instances passed
                 into :func:`cythonize` will not be changed. It is recommended to rather
                 use the compiler directive ``# distutils: language = c++`` than this option.

:param exclude_failures: For a broad 'try to compile' mode that ignores compilation
                         failures and simply excludes the failed extensions,
                         pass ``exclude_failures=True``. Note that this only
                         really makes sense for compiling ``.py`` files which can also
                         be used without compilation.

:param show_all_warnings: By default, not all Cython warnings are printed.
                          Set to true to show all warnings.

:param annotate: If ``True``, will produce a HTML file for each of the ``.pyx`` or ``.py``
                 files compiled. The HTML file gives an indication
                 of how much Python interaction there is in
                 each of the source code lines, compared to plain C code.
                 It also allows you to see the C/C++ code
                 generated for each line of Cython code. This report is invaluable when
                 optimizing a function for speed,
                 and for determining when to :ref:`release the GIL <nogil>`:
                 in general, a ``nogil`` block may contain only "white" code.
                 See examples in :ref:`determining_where_to_add_types` or
                 :ref:`primes`.


:param annotate-fullc: If ``True`` will produce a colorized HTML version of
                       the source which includes entire generated C/C++-code.


:param compiler_directives: Allow to set compiler directives in the ``setup.py`` like this:
                            ``compiler_directives={'embedsignature': True}``.
                            See :ref:`compiler-directives`.

:param depfile: produce depfiles for the sources if True.
:param cache: If ``True`` the cache enabled with default path. If the value is a path to a directory,
              then the directory is used to cache generated ``.c``/``.cpp`` files. By default cache is disabled.
              See :ref:`cython-cache`.
NrR  r  common_utility_include_dirdepfileTCYTHON_FORCE_REGENr|   )r  r  rE  r  rT   r   r  	build_dir
cache_sizec           	      @  < \         P                  P                  V 4      p\         P                  P                  V 4      '       d   Tp VP	                  V4      '       d@   \        S\         P                  P                  \        W4      4      4      p\        W#4       R # R # r   )	r   r   r  r  r   r1   r  r   copy_once_if_newer)filepathr<   filepath_absmod_dirr  s   &&  r"   copy_to_build_dir$cythonize.<locals>.copy_to_build_dir  sm    wwx077==""#H""4((	 "0H IKG|5	 )re   c                   < S'       g   V # \         P                  P                  V 4      '       dN   \         P                  P                  V 4      ^,          p V P	                  \         P
                  ^4      ^,          p \         P                  P                  SV 4      p \         P                  P                  V 4      p\        V4       V # )r   )	r   r   r  
splitdriver.   r   r   r  safe_makedirs_once)c_filer  r  s   & r"   file_in_build_dir$cythonize.<locals>.file_in_build_dir  s    M77==  WW''/2F\\"&&!,Q/Fi0ggoof%3re   rr   Fr  rM   r  r  z Compiling %s because it changed.z
Compiling z because it depends on c)shared_c_file_pathr  zHWarning: Shared module source file is not a Cython file - not creating 'z' as 'rM  )generate_shared_modulezGenerating shared module 'z[{0:%d}/%d] r   )ProcessPoolExecutor)max_workersinitializer)	chunksize)cancel_futuresrz	iso8859-1)encodingz#error zFailed compilations: %sz, r  rs  r   )Lr   rf  rN   r   cplusrr   r   environr   r   from_optionsr  r  fix_windows_unicode_modulesr  r   cacheannotater   r   r   collectionsdefaultdictr   rq   rm   r   r  rf   rl   rT   r  r   r	   file_generated_by_this_cythonr  r  r  r}  rQ  decode_filenametransitive_fingerprintr   r   is_cython_generated_fileSharedModuler  sortr   r   	enumerateconcurrent.futuresr  ImportError_init_multiprocessing_helperr  cythonize_one_helperKeyboardInterruptterminate_workersshutdowncythonize_oner0   r   existsrO  getsizeopenr+  closerU   r   r  cleanup_cacher  stdoutflush)6r  r  nthreadsr   rE  forcerT   r  show_all_warningsr  r  pythran_options	c_optionscpp_optionsr  r  r  r  
cache_pathr  r  r  modules_by_cfile
to_compiler4   depr   
cy_sourcesfull_module_namerr   r  new_sourcesr!   rV   r  dependenciesc_timestampdep_timestamppriorityfingerprintmodule_optionsr  Nbuild_progress_indicatoritaskr  	proc_poolargsfailed_modulesr  r   r  r  s6   &&&&&&&&&,                                           @r"   	cythonizer+  m  s   ` W$#&%#w.g:;<kk)T*G,7w7 $%)"}

34;"-W-I$/w/KT1B


y
)CG$'$E$E!#8)$ K  ,!#3Dd3I}}}g...'2B2B2B
 %]]d2T
j''<"FG)+ 6	 #..t4Jyy!#& ! "#?!*vww'*o= F 	 ? z?a vv  $Qe4
 $4e<%GZZ5 !GGiiF((0ID#o%1::+>*RVW +62 #'#8#8#@L!&&,? 66v>>"$''"2"26":K"$K !77)-)?3M H)-)?)?)G&M3 C4+F+Fv+N$NOHK-7 !S=!"DuG\G\]cGd"de! % 5 5f = % 5 5c :#  !U&+&B&B &(=(=f(Ew 01B1BsNT^ _'
 '+%% &&+u!57J7J1667R(*;'= > !(//2.166=Z3Z*62!3VZ"\55f==defekekdllrsyrzz{|}%"E"Ef"M"MD  :166(!DE*>:%f-v&C  F  	{ ~ OOJA !/#c!f+q1A AII !Q//GAt 	R,Q/777/  
 	Av:   4
 
 Y]]#7q]QR
 
 D4   /557OFG77>>&))%%g.(3.{;vvc)n-:&--g6GGI  8 (""6* )+dii*8@:*8.@: 9; /< < =  JJi?@   % ++-""$"7
 
 
4 GGI@:sT   +-`#`#$`(`. ,a4.!a0bb.`?>`?/a11a44b	bc                 >   \         P                  R 8w  d   R# \         P                  R8  d   R# R pV  Fe  pVP                  P	                  4       '       d   K%  V! RVP                  P                  R^4      R,          ,           VP                  4      Vn        Kg  	  R# )win32Nc                    a   ! V 3R  lR\         4      pV! V4      pV'       d   VP                  V 3R lV 4       4       V# )c                   .   <a  ] tR tRt o V3R ltRtV tR# )Vfix_windows_unicode_modules.<locals>.make_filtered_list.<locals>.FilteredExportSymbolsi  c                H   < VS8H  ;'       g    \         P                  W4      # r   )r   __contains__)r   r   ignored_symbols   &&r"   r2  cfix_windows_unicode_modules.<locals>.make_filtered_list.<locals>.FilteredExportSymbols.__contains__  s!    n,LL0A0A$0LLre   r  N)r   r   r   r   r2  r   r   )r   r3  s   @r"   FilteredExportSymbolsr0    s     M Mre   r5  c              3   8   <"   T F  qS8w  g   K  Vx  K  	  R # 5ir   r  )r   rl   r3  s   & r"   r   Jfix_windows_unicode_modules.<locals>.make_filtered_list.<locals>.<genexpr>  s      X+$AW+s   
)r   rS   )r3  old_entriesr5  filtered_lists   f&  r"   make_filtered_list7fix_windows_unicode_modules.<locals>.make_filtered_list  s:    	MD 	M .k:   X+ XXre   PyInit_r  )r      r   r   )r  platformversion_inforl   isasciirsplitrp   )r  r:  r4   s   &  r"   r  r    s{     ||w
9$ 66>>-c1-b11
 re   XML_RESULTSc                    a  V 3R  lpV# )c            	      b  < \         P                   ! 4       pR p  S! V !   \         P                   ! 4       T,
          p\        T ^ ,          4      pRT,           p^T,
          pT'       d   RpMRp\        \        P                  P                  \        TR,           4      R4      pTP                  RP                  4       \        4       ,          4       TP                  4        R#    Rp L; i  \         P                   ! 4       T,
          p\        T ^ ,          4      pRT,           p^T,
          pT'       d   RpMRp\        \        P                  P                  \        TR,           4      R4      pTP                  RP                  4       \        4       ,          4       TP                  4        i ; i)	TFz
cythonize.r)   failurez.xmlwaQ  
                    <?xml version="1.0" ?>
                    <testsuite name="%(name)s" errors="0" failures="%(failures)s" tests="1" time="%(t)s">
                    <testcase classname="%(name)s" name="cythonize">
                    %(failure_item)s
                    </testcase>
                    </testsuite>
                N)timer  r  r   r   r   compile_result_dirwriter`   localsr  )	r)  ry   successr  rl   failuresfailure_itemoutputfuncs	   *       r"   with_record#record_results.<locals>.with_record  sI   		AG$$K IIK!O-d1g6#f,w;#%L#,Lbggll+=tf}MsS  EGfh' ( )$#GIIK!O-d1g6#f,w;#%L#,Lbggll+=tf}MsS  EGfh' ( s   C# #C)'C, ,CF.r  )rO  rP  s   f r"   record_resultsrR    s    	6 re   c                     V # r   r  )rO  s   &r"   rR  rR    s    re   c                    ^RI HpHp ^RIHpHp V'       g^   V
'       d2   V'       d*   V
P                  W4      '       d   \        V	 RV  R24       M$\        V	 R\        P                  ! V 4       24       Vf   \        V4      pWn        Wdn        \        P                  pV'       d   ^ \        n        ^ p V! WWzVR7      pVP                  ^ 8  d   ^pT'       d   T\        n        T'       dQ   T'       d
   T! RT 4      h\.        P0                  P3                  T4      '       d   \.        P4                  ! T4       R# R# R#   \         T3 dG   p\"        P$                  P'                  RT,          4       ^p^ RIpTP+                  4         Rp?LRp?i\,         d#    T'       d   h ^ RIpTP+                  4        ^p Li ; i  T'       d   T\        n        i i ; i)	r   )compile_singler   )CompileError
PyrexErrorzFound compiled z	 in cachezCythonizing N)r  r  r"  z%s
)Compiler.MainrU  r   Compiler.ErrorsrV  rW  lookup_cacherQ  r	   r  r   output_fileembedded_metadatar   LEVEL
num_errorsOSErrorr  stderrrI  	traceback	print_excr  r   r   r
  rU   )pyx_filer  r"  rE  r  raise_on_failurer\  r  r  progressr  rU  r   rV  rW  old_warning_levelany_failuresresultera  s   &&&&&&&&&&&         r"   r	  r	    ss    @:[U%7%7%L%LXJohZyABXJl5+@+@+J*KLM$_5  1L-DToz{q L ,FLtX..WW^^F##IIf $ ! Z  

!$  ,FL sB   7E G <FG G G &G =G ?G  G Gc                 ^    ^ RI p \        V !  #   \         d    TP                  4        h i ; ir   N)ra  r	  r  rb  )r4   ra  s   & r"   r  r    s3    a   s    ,c                  Z    ^ RI p V P                  V P                  V P                  4       R# rk  )signalSIGINTSIG_IGN)rm  s    r"   r  r    s    
MM&--0re   r   )zexpected non-empty iterator)__Pyx_L)NF)NNNFNF)Nr   NFNNFF)	NFNTNNFr)   N)Wr   r  r   r+   r  rG  globr   ior   os.pathr   r   r   r   collections.abcr   rN   r)   r	   r
   r   r   r   r   r   r   Compilerr   rX  r   r   Compiler.Optionsr   r   r   r   r   r1   r  r  r#   r/   rC   rY   rk   objectr   r   r   r   r   r   r   r   declarecompileVERBOSEr0  r   r   r   rg   	MULTILINEr-  r/  r  r  r  r  r  r  r@  rB  r  r  r  r  r+  r  r  r   rH  rR  r	  r  r  r  re   r"   <module>r|     s     	     ' * $ M M M  #   BGGLL)	$%>? $]3 $B$2J< (
( CDDDOOOODOODONG &<$R+ R+j nnVRZZ 1 ZZ	& 	 ^^FBJJ 8 ZZ-  
 nnVRZZ 9 ZZ	. 	 k'b ::? LL2::  !jj:LL2:: R % %6     3 3
 $7 $7Np pf 	T(pod	
> ::>>-  M2<
 / /d1a(Gs   J J"