+
    i)  c                   s6   . R=Ot ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ R	I	H
t
HtHtHt ^ R
IHt R>tR?t]]3R lt]]3R ltR tR tR tR tR tR tR tR tR tR tR tR tRR]3R]3R]3.RR]3R]3R]3.RR]3R]3R]3.RR]3R]3R]3./t R t!R t" ^ RI#H"t" ]%! 4       t&]&3R  lt' ! R! R"4      t(](! 4       t)R# t*R$ t+R% t, ! R& R4      t- ^ R'I#H-t-H)t)H(t(  ! R( R4      t.R) t/R* t0]! R+. R@O4      t1]%! 4       3]2]30]4]5]63R, lt7RAR- lt8R. t9 ^ R/I#H9t9 R0 t:R1 t;RBR3 lt<R4 t=R5 t>R6 t? ! R7 R4      t@ ! R8 R94      tA]%! 4       tB ! R: R4      tCR; tD]D! ]'4      t'AD ^ R<I#H't' R2#   ]$ d     Li ; i  ]$ d     Li ; i  ]$ d     Lqi ; i  ]$ d     R2# i ; i)Cupdate_wrapperpartialpartialmethodsingledispatchmethodcached_property)get_cache_token)
namedtuple)
itemgetter)recursive_repr)GenericAlias
MethodTypeMappingProxyType	UnionType)RLockc                 s    V F  p \        W4      p\        WV4       K  	  V F'  p\        W4      P                  \        W/ 4      4       K)  	  Wn        V #   \         d     Kb  i ; iN)getattrsetattrAttributeErrorZupdate__wrapped__)wrapperwrappedassignedupdatedZattrvalues   &&&&  "/usr/lib64/python3.14/functools.pyr    r    #   sp     	*G*E G5)  %%ggR&@A  "N  		s   AA&%A&c                 s&    \        \        V WR 7      # )r   r   r   )r   r    r      &&&r   wrapsr   A   s     >7$7 7    c                 t    \        V 4      P                  W4      pV\        J d   V# V'       * ;'       d    W8g  # r   type__lt__NotImplementedselfotherZ	op_result   && r   _gt_from_ltr&   Y   6    T
!!$.IN"=**T]*r   c                 j    \        V 4      P                  W4      pV\        J d   V# T;'       g    W8H  # r   r   r"   r%   r   _le_from_ltr)   `   4    T
!!$.IN"%%%r   c                 \    \        V 4      P                  W4      pV\        J d   V# V'       * # r   r   r"   r%   r   _ge_from_ltr,   g   ,    T
!!$.IN"=r   c                 t    \        V 4      P                  W4      pV\        J d   V# V'       * ;'       g    W8H  # r   r   __le__r!   r"   r%   r   _ge_from_ler1   n   6    T
!!$.IN"=))DM)r   c                 j    \        V 4      P                  W4      pV\        J d   V# T;'       d    W8g  # r   r/   r"   r%   r   _lt_from_ler4   u   4    T
!!$.IN"&&&r   c                 r+   r   r/   r"   r%   r   _gt_from_ler6   |   r-   r   c                 r   r   r   __gt__r!   r"   r%   r   _lt_from_gtr9      r'   r   c                 r(   r   r7   r"   r%   r   _ge_from_gtr:      r*   r   c                 r+   r   r7   r"   r%   r   _le_from_gtr;      r-   r   c                 r.   r   r   __ge__r!   r"   r%   r   _le_from_ger>      r2   r   c                 r3   r   r<   r"   r%   r   _gt_from_ger?      r5   r   c                 r+   r   r<   r"   r%   r   _lt_from_ger@      r-   r   r    r8   r0   r=   c           	      s   \          Uu0 uF&  p\        WR 4      \        \        VR 4      Jg   K$  VkK(  	  ppV'       g   \        R4      h\	        V4      p\         V,           F  w  rEWB9  g   K  WEn        \        WV4       K!  	  V # u upi )Nz6must define at least one ordering operation: < > <= >=)_convertr   objectZ
ValueErrorZmax__name__r   )clsZopZrootsrootZopnameZopfuncs   &     r   total_orderingrF      s     #^(Bgct&<GFTVX\D]&]RR(E^QRRu:D"4..$OC( ) J _s
   !BBc                 s,   a   ! V 3R  lR\         4      pV# )c                   sn   <a  ] tR t^t o R.tR tV3R ltV3R ltV3R ltV3R lt	V3R lt
RtR	tV tR# )
zcmp_to_key.<locals>.Kobjc                s    Wn         R # r   rG   )r#   rG      &&r   __init__Zcmp_to_key.<locals>.K.__init__   s    Hr   c                sD   < S! V P                   VP                   4      ^ 8  #     rH   r#   r$   mycmp   &&r   r    Zcmp_to_key.<locals>.K.__lt__       599-11r   c                sD   < S! V P                   VP                   4      ^ 8  # rK   rH   rM   rO   r   r8   Zcmp_to_key.<locals>.K.__gt__   rP   r   c                sD   < S! V P                   VP                   4      ^ 8H  # rK   rH   rM   rO   r   __eq__Zcmp_to_key.<locals>.K.__eq__       599-22r   c                sD   < S! V P                   VP                   4      ^ 8*  # rK   rH   rM   rO   r   r0   Zcmp_to_key.<locals>.K.__le__   rR   r   c                sD   < S! V P                   VP                   4      ^ 8  # rK   rH   rM   rO   r   r=   Zcmp_to_key.<locals>.K.__ge__   rR   r   NrH   )rC   
__module____qualname____firstlineno__	__slots__rJ   r    r8   rQ   r0   r=   Z__hash____static_attributes____classdictcell__)__classdict__rN   s   @r   KZcmp_to_key.<locals>.K   s/     G			2	2	3	3	3r   rZ   )rB   )rN   rZ      f r   
cmp_to_keyr\      s    F  Hr   )r\   c                 s    \        V4      pV\        J d    \        V4      pMTpV F  pV ! WE4      pK  	  V#   \         d    \	        R 4      Rhi ; i)z0reduce() of empty iterable with no initial valueN)iter_initial_missingnextZStopIteration	TypeError)functionsequenceZinitialZitr   Zelement   &&&   r   reducerd      so     
hB""	NHE
 (  L  	NBDIMN	Ns	   8 Ac                   s@   a  ] tR tRt o RtRtR tR tR tR t	Rt
V tR# )_PlaceholderTypei  Nc                s4    \        R V P                   R24      h)ztype 'z ' is not an acceptable base type)r`   rC   )rD   argskwargss   &*,r   __init_subclass__Z"_PlaceholderType.__init_subclass__  s    &.NOPPr   c                sj    V P                   f   \        P                  V 4      V n         V P                   # r   )_PlaceholderType__instancerB   __new__rD      &r   rj   Z_PlaceholderType.__new__  s&    >>!#^^C0CN~~r   c                    R # Placeholder r#   rl   r   __repr__Z_PlaceholderType.__repr__!      r   c                rm   rn   rp   rq   rl   r   
__reduce__Z_PlaceholderType.__reduce__$  rs   r   rp   )rC   rS   rT   rU   ri   rV   rh   rj   rr   rt   rW   rX   rY      @r   re   re     s+     
 JIQ
 r   re   c                 s   V '       g   R# \        V 4      p. pTp\        V 4       F<  w  rEV\        J d   VP                  V4       V^,          pK+  VP                  V4       K>  	  W1,
          pV'       d
   \	        V!  MRpWg3# )rL   N)rL   N)len	enumeratero   appendr   )rf   nargsZorderZjiZaphcountmergers   &       r   _partial_prepare_mergerr~   )  ss    IEEA$LLOFALLO   iG#*ZF?r   c                s   \        V \        4      '       d$   \        p\        V4      '       g   \        R 4      hM9\        p\        V4      '       g#   \        VR4      '       g   \        RV: R24      hV'       d   VR,          \        J d   \        R4      hVP                  4        F  pV\        J g   K  \        R4      h	  \        W4      '       d   VP                  pVP                  pV'       dm   Wr,          pV'       dO   \        V4      pW8  d   V\        3Wh,
          ,          ,          pVP                  V4      pW8  d   WrVR ,          p\        V4      w  rMYaP                  r/ VP                  CVCpVP                  pMTp\        V4      w  r\         P#                  V 4      pWn        W{n
        W;n        Wn	        Wn        V# )z#the first argument must be callable__get__zthe first argument z# must be a callable or a descriptor%trailing Placeholders are not allowedz2Placeholder cannot be passed as a keyword argumentN)
issubclassr   callabler`   r   hasattrro   values
isinstance_phcountrf   rw   _mergerr~   keywordsfuncrB   rj   )rD   r   rf   r   Zbase_clsr   Zpto_phcountZtot_argsrz   r|   r}   r#   s   ""*,        r   _partial_newr   9  s   #w~~ABB  !~~gdI&>&>1$ :. . / /RK'?@@"KPQQ # $!!mm99HD	&+2E FFH<<1&[\ 22H5h?OGV)<<V0dmm0x0yy1(;>>#DIIMMLKr   c                 sZ   \        V 4      pVP                  pVP                  p\        V P                  4      .pVP                  \        \        V P                  4      4       VP                  R  V P                  P                  4        4       4       V RV RRP                  V4       R2# )c              3   s6   "   T F  w  rV R V: 2x  K  	  R# 5i)Z=Nrp   ).0Zkvs   &  r   	<genexpr>Z _partial_repr.<locals>.<genexpr>m  s     ?)>1#Qqe)>s   Z.Z(z, Z))r   rS   rT   Zreprr   ZextendZmaprf   r   itemsZjoin)r#   rD   ZmoduleZqualnamerf   s   &    r   _partial_reprr   g  s    
t*C^^FHODKKD$))$%KK?)<)<)>??XQxj$))D/!2!44r   c                   sn   a  ] tR tRt o Rt]t]! 4       ! ]4      t	R t
R	R ltR tR t]! ]4      tRtV tR# )
r   iq  c          	     s2   V P                   pV'       d)    V P                  V P                  V,           4      pWR  pMV P                  p/ V P                  CVCpV P                  ! . VOVO5/ VB #   \         d    \	        RT R\        T4       24      hi ; i)NzBmissing positional arguments in 'partial' call; expected at least , got r   r   rf   Z
IndexErrorr`   rw   r   r   )r#   rf   r   r|   pto_argss   "*,  r   __call__Zpartial.__call__|  s    --H<<		D(89H~ yyH0dmm0x0yy6(6T6X66  H !,,39F3t9+!G H HHs   &A0 0&BNc                s$    Vf   V # \        W4      # r   )r
   )r#   rG   Zobjtyper   r   r   Zpartial.__get__  s    ;K$$$r   c                s    \        V 4      V P                  3V P                  V P                  V P                  ;'       g    R V P                  ;'       g    R 33# r   )r   r   rf   r   __dict__rq   rl   r   rt   Zpartial.__reduce__  sI    DzDII<$))TYY}}$$dmm&;&;t*= = 	=r   c                s   \        V\        4      '       g   \        R 4      h\        V4      ^8w  d   \        R\        V4       24      hVw  r#rE\	        V4      '       dK   \        V\        4      '       d5   Ve   \        V\
        4      '       d   Ve"   \        V\
        4      '       g   \        R4      hV'       d   VR,          \        J d   \        R4      h\        V4      w  rg\        V4      pVf   / pM\        V4      \
        Jd   \        V4      pVf   / pWPn	        W n
        W0n        W@n        W`n        Wpn        R# )z(argument to __setstate__ must be a tuplezexpected 4 items in state, got Nzinvalid partial stater   r   )r   tupler`   rw   r   Zdictro   r~   r   r   r   rf   r   r   r   )r#   Zstater   rf   kwdsZ	namespacer|   r}   s   &&      r   __setstate__Zpartial.__setstate__  s   %''FGGu:?=c%j\JKK&+#Dju&=&=Zd%;%;!*Y*E*E344DH+CDD1$7T{<D$Zt#:DI!		r   )r   r   r   rf   r   r   )r   rf   r   r   r   r   Z__weakref__r   )rC   rS   rT   rU   rV   r   rj   r   r   rr   r   r   rt   r   classmethodr	   __class_getitem__rW   rX   ru   rv   r   r   r   q  sA     
,I G.H7%
=< $L1r   )r   ro   re   c                   sX   a  ] tR tRt o ]t]tR tRR lt	]
R 4       t]! ]4      tRtV tR# )r   i  c                sD   a  V 3R  lpS P                   Vn         S Vn        V# )c          	      s6  < SP                   pV'       d)    SP                  SP                  V,           4      pWR  pMSP                  p/ SP                  CVCpSP                  ! V .VOVO5/ VB #   \         d    \	        RT R\        T4       24      hi ; i)NzHmissing positional arguments in 'partialmethod' call; expected at least r   r   )Zcls_or_selfrf   r   r|   r   r#   s   "*,  r   _methodZ3partialmethod._make_unbound_method.<locals>._method  s    mmGL#||DII,<=H>D  994$--484H99[G8GdGhGG " L# %007ys4yk%K L LLs   &A2 2&B)__isabstractmethod____partialmethod__)r#   r   r[   r   _make_unbound_methodZ"partialmethod._make_unbound_method  s&    	H (,'@'@$$(!r   Nc                s@   \        V P                  R R4      pRpVeM   V! W4      pWPP                  Jd6   \        V.V P                  O5/ V P                  B p VP
                  Vn        Vf    V P                  4       P                  W4      pV#   \         d     L2i ; i)r   N)	r   r   r   rf   r   Z__self__r   r   r   )r#   rG   rD   getresultZnew_funcrc   r   r   Zpartialmethod.__get__  s    diiD1?3}Hyy( !GDIIGG&.&7&7FO > ..088BF & s   B BBc                0    \        V P                  R R4      # r   Fr   r   rq   rl   r   r   Z"partialmethod.__isabstractmethod__      tyy"8%@@r   rp   r   )rC   rS   rT   rU   r   rj   r   rr   r   r   propertyr   r   r	   r   rW   rX   ru   rv   r   r   r     s>      GH&& A A $L1r   c                 sN    \        V \        4      '       d   V P                  p K$  V # r   )r   r   r   r   rl   r   _unwrap_partialr     s    
T7
#
#yyKr   c                 s    R pWJdc   T p\        \        V RR 4      \        4      '       d   V P                  p K/  \        V \        4      '       d   \        V R4      p K$  \	        V 4      p Kg  V # )Nr   r   )r   r   r   r   r   )r   Zprev   & r   _unwrap_partialmethodr     s\    D

':DA=QQ))D}--4(Dt$Kr   Z	CacheInfoc                 s  a T pV'       d(   W,          pVP                  4        F  p	W,          pK  	  V'       d   Y;QJ d    . V3R  lV  4       F  NK  	  5M! V3R  lV  4       4      ,          pV'       dQ   Y;QJ d%    . V3R lVP                  4        4       F  NK  	  5M! V3R lVP                  4        4       4      ,          pV# V! V4      ^8X  d   S! V^ ,          4      V9   d
   V^ ,          # V# )c              3   4   <"   T F  pS! V4      x  K  	  R # 5ir   rp   r   r   r      & r   r   _make_key.<locals>.<genexpr>"  s     +dT!WWd   c              3   r   r   rp   r   r   r   r   r   $  s     8-Qa-r   )r   r   )
rf   r   typedZkwd_markZ	fasttypesr   r   rw   keyZitems
   &&&&&&f&  r   	_make_keyr   
  s    $ CJJLDKC !u+d+uu+d+++58$++-8558$++-888C J 
SQ4A<941vJr   c                 s   a a \        S \        4      '       d   S ^ 8  d   ^ o Md\        S 4      '       dE   \        S\        4      '       d/   S ^upo \	        VS S\
        4      pV V3R lVn        \        W24      # S e   \        R4      hV V3R lpV# )rL   c                     < R S RS/# maxsizer   rp   r      r   <lambda>Zlru_cache.<locals>.<lambda>K      Y%,Pr   z=Expected first argument to be an integer, a callable, or Nonec                 sV   < \        V SS\        4      pVV3R  lVn        \        W4      # )c                  r   r   rp   r   r   r   r   Z8lru_cache.<locals>.decorating_function.<locals>.<lambda>S  r   r   )_lru_cache_wrapper
_CacheInfocache_parametersr    )user_functionr   r   r   s   & r   decorating_functionZ&lru_cache.<locals>.decorating_functionQ  s&    $]GUJO#P g55r   )	r   intr   Zboolr   r   r   r    r`   )r   r   r   r   r   s   ff   r   	lru_cacher   )  s    4 '3Q;G	'		z%66!(#w$]GUJO#P g55		KM 	M6
 r   c                 sr  a aaaaaa	a
aaaaaaaaaa \        4       o\        oR	w  o	ooo
/ o^ ;ooRoSP                  oSP                  o\	        4       o. oSSRR.SR&   S^ 8X  d	   VV 3R lpM'Sf   VVVVVVVV 3R lpMVVV	V
VVVVVVVVVVVV 3R lpVVVVVV3R lpVVVVVV3R lpWTn        Wdn        V# )
rL   FNNNNc                  s*   < S^,          oS! V / VB pV#    rp   )rf   r   r   missesr   s   *, r   r   #_lru_cache_wrapper.<locals>.wrapperi  s"     aKF"D1D1FMr   c                  sz   < S! WS
4      pS! VS	4      pVS	Jd   S^,          oV# S^,          oS! V / VB pVSV&   V# r   rp   )rf   r   r   r   cache	cache_gethitsmake_keyr   sentinelr   r   s   *,  r   r   r   r  sY     4u-CsH-FX%	aKF"D1D1FE#JMr   c                  sH  < S! WS4      pS;_uu_ 4        S! V4      pVe?   Vw  rErgWTS&   WES&   SS,          pV;VS&   SS&   WS&   SVS&   S^,          oVuuR R R 4       # S^,          oR R R 4       S! V / VB pS;_uu_ 4        VS9   d   MgS'       d9   Sp	W)S&   WyS&   V	S,          oSS,          p
SS,          pR ;SS&   SS&   SV
 V	SV&   M'SS,          pVSW'.pV;VS&   ;SS&   SV&   S! 4       S8  oR R R 4       V#   + '       g   i     L; i  + '       g   i     T# ; ir   rp   )rf   r   r   ZlinkZ	link_prevZ	link_nextZ_keyr   ZlastZoldrootZoldkeyZ	oldresultKEYNEXTPREVRESULTr   r   	cache_lenfullr   lockr   r   r   rE   r   r   s   *,          r   r   r     sk    4u-C ~#9=6I$&/dO&/dO:D.22DJd!%J!%DJAID!  !  #D1D1F%<
 "G#&CL&,FO #4=D!#YF $VI/33DIVf ")E#J  :D $4D;??DJ?deCj &K72DG H Mg  H Ms%   A C= 	C=DAD=D	D!	c            	      sv   < S;_uu_ 4        S ! SSSS! 4       4      uuR R R 4       #   + '       g   i     R # ; ir   rp   )r   r   r   r   r   r      r   
cache_infoZ&_lru_cache_wrapper.<locals>.cache_info  s$    TdFGY[A TTTs   '8	c                  s   < S;_uu_ 4        S P                  4        SSR R .SR&   ^ ;ooRoR R R 4       R #   + '       g   i     R # ; i)Nr   F)clear)r   r   r   r   r   rE   r   r   cache_clearZ'_lru_cache_wrapper.<locals>.cache_clear  s@     TKKMT4.DGD6D	 TTTs	    6A	)rL   r   i   i   )rB   r   r   Z__len__r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rE   r   s   ffff   @@@@@@@@@@@@@@r   r   r   X  s    xHH(D$VED6D		II7DDT4&DG!|	 
	 	7	 7	 7	rB B
  $%Nr   )r   c                s&    \        R R7      ! V 4      # )N)r   )r   )r   s   "r   r   r     s    T"=11r   c                 s0   . p V  Uu. uF  q"'       g   K  VNK  	  p pV '       g   V# V  F'  pV^ ,          pV  F  pWER,          9   g   K  Rp K%  	   M	  Xf   \        R4      hVP                  V4       V  F  pV^ ,          V8X  g   K  V^  K  	  K  u upi )T:r   NNNzInconsistent hierarchy)RuntimeErrorry   )Z	sequencesr   sZs1Z	candidateZs2Zseqs   &      r   	_c3_merger     s     F
 )/	1QQQ		/MB1I2& $I  
   788i C1v"F  0s
   	BBNc                 s  a \        \        V P                  4      4       F6  w  po\        SR 4      '       g   K  \	        V P                  4      V,
          p M	  ^ pV'       d   \        V4      M. p\        V P                  RV 4      p. p\        V P                  VR 4      pV F~  o\        V S4      '       g   K  \        ;QJ d)    V3R lV P                   4       F  '       g   K   RM	  RM! V3R lV P                   4       4      '       d   Km  VP                  S4       K  	  V F  oVP                  S4       K  	  V Uu. uF  p\        WqR7      NK  	  ppV Uu. uF  p\        WqR7      NK  	  p	pV Uu. uF  p\        WqR7      NK  	  p
p\        V ..V,           V	,           V
,           V.,           V.,           V.,           4      # u upi u upi u upi )__abstractmethods__Nc              3   s<   <"   T F  p\        VS4      x  K  	  R # 5ir   )r   )r   Zbbaser   r   r   Z_c3_mro.<locals>.<genexpr>  s      --:
1d##]s   TFabcs)rx   ZreversedZ	__bases__r   rw   Zlistr   Zanyry   Zremove_c3_mror   )rD   r   r{   ZboundaryZexplicit_basesZabstract_basesZother_basesr   Zexplicit_c3_mrosZabstract_c3_mrosZother_c3_mross   &&     `   r   r   r     s   " Xcmm4544.//3==)A-H 6
 4:2D#--	23NNs}}XY/0Kc4   --0]]- --0]]- * *
 !!$'  D =KL^T0^L=KL^T0^L:EF+$WT-+MF
	+	,.;	<		*+	,/:m	<  MLFs   G G;Gc           	      s  a aa \        S P                  4      oVV 3R  lpS Uu. uF  q2! V4      '       g   K  VNK  	  upoV3R lpS Uu. uF  q4! V4      '       d   K  VNK  	  upo\        S4      p. pS F  p. pVP                  4        FS  p	V	S9  g   K  \        S V	4      '       g   K   TP	                  V	P                   U
u. uF  qV9   g   K  V
NK  	  up
4       KU  	  V'       g   VP	                  V4       K  VP                  \        RR7       V F%  p	V	 F  pW9  g   K  VP	                  V4       K  	  K'  	  K  	  \        S VR7      # u upi u upi u up
i )c                 s   < V S9  ;'       d>    \        V R 4      ;'       d*    \        V \        4      '       * ;'       d    \        SV 4      # __mro__)r   r   r	   r   )typbasesrD      &r   
is_relatedZ _compose_mro.<locals>.is_related0  sN    5  : :WS)%< : :)3C)F%F: :%/S%9	;r   c                 sP   < S F  pW8w  g   K  WP                   9   g   K   R # 	  R# )TFr   )r   r$   typesr   r   is_strict_baseZ$_compose_mro.<locals>.is_strict_base7  s#    E|}} 4  r   T)r   Zreverser   )Zsetr   Z__subclasses__r   ry   Zsortrw   r   )rD   r   r   Znr   Ztype_setmror   ZfoundZsubr   Zsubclsr   s   ff          @r   _compose_mror   '  s-    E; /1AQQ/E
 71^A%6QQ7E 5zH
C%%'C%JsC$8$8FAXaaFG ( JJsO

sD
)C$JJv&    3S!!7 0 8 Gs"   EEEEEEc                 s.   \        WP                  4       4      pR pV Fd  pVeT   WA9   dL   W@P                  9  d<   W0P                  9  d,   \        W44      '       g   \	        RP                  W44      4      h MWA9   g   Kb  TpKf  	  VP                  V4      # )NzAmbiguous dispatch: {} or {})r   Zkeysr   r   r   formatr   )rD   registryr   ZmatchZts   &&   r   
_find_implr   Q  s     sMMO
,CE !;;"6"'{{":&0&:&:"#A#H#H$  =E  <<r   c                 s   aaaaaaa	 ^ RI p/ o	VP                  4       oRoVVV	3R loR oRVVVVV	3R lloVV3R lp\        V RR4      oV S	\        &   SVn        SVn        \        S	4      Vn        SP                  Vn	        \        W 4       V# )	rL   Nc                 s   < Se$   \        4       pSV8w  d   SP                  4        Vo SV ,          pV#   \         d2     ST ,          pM  \         d    \        T S4      p Mi ; iTST &    T# i ; ir   )r   r   ZKeyErrorr   )rD   Zcurrent_tokenZimplcache_tokendispatch_cacher   s   &  r   dispatchZ singledispatch.<locals>.dispatch}  s     "+-Mm+$$&+	'!#&D   	'1} 1!#x01"&N3	's3   	5 A1	A
A1A%"A1$A%%A10A1c                 s    \        V \        4      '       d   R # \        V \        4      ;'       dI    \        ;QJ d&    R V P                   4       F  '       d   K   R# 	  R # ! R V P                   4       4      # )Tc              3   sB   "   T F  p\        V\        4      x  K  	  R # 5ir   )r   r   )r   argr   r   r   ZBsingledispatch.<locals>._is_valid_dispatch_type.<locals>.<genexpr>  s     B\cJsD))\s   F)r   r   r   Zall__args__rk   rl   r   _is_valid_dispatch_typeZ/singledispatch.<locals>._is_valid_dispatch_type  sd    c4  3	* C CBS\\B	D	DBS\\BB	Dr   c           	      s  <a  S! S 4      '       d   Vf   V V3R l# MVe   \        RS : R24      h\        S RR 4      pVf   \        RS : R24      hS p^ RIHp ^ RIHpHp \        \        V! WP                  R	7      P                  4       4      4      w  po S! S 4      '       ge   \        S \        4      '       d   \        R
V: RS : R24      h\        S V4      '       d   \        R
V: RS : R24      h\        R
V: RS : R24      h\        S \        4      '       d   S P                   F  pVSV&   K
  	  MVSS &   S	f   \        S R4      '       d   \        4       o	S
P!                  4        V# )Nc                 s   < S! SV 4      # r   rp   )ZfrD   registerr   r   r   Z2singledispatch.<locals>.register.<locals>.<lambda>  s    #q!1r   z(Invalid first argument to `register()`. z is not a class or union type.__annotate__z(Invalid first argument to `register()`: zS. Use either `@register(some_class)` or plain `@register` on an annotated function.)get_type_hints)Format
ForwardRef)r   zInvalid annotation for z. z not all arguments are classes.z$ is an unresolved forward reference.z is not a class.r   )r`   r   Ztypingr   Zannotationlibr   r   r_   r]   Z
FORWARDREFr   r   r   r   r   r   r   )rD   r   Zannr   r   r   Zargnamer   r   r   r   r   r   s   f&      r   r   Z singledispatch.<locals>.register  s    #3''|11  >g;=  #~t4C{>sg F0 1 
 D .8^DARAR%S%Y%Y%[ \]LGS*3//c9--#1'B'!@B   Z00#1'B'!EG 
 $1'B'!13 
 c9%%|| $ $ !HSM730E#F#F)+Kr   c                  sn   < V '       g   \        S R 24      hS! V ^ ,          P                  4      ! V / VB # )( requires at least 1 positional argument)r`   	__class__)rf   Zkwr   funcnames   *,r   r   Zsingledispatch.<locals>.wrapper  s@    xj )4 4 5 5Q))*D7B77r   rC   zsingledispatch functionr   )weakrefZWeakKeyDictionaryr   rB   r   r   r   r   r   Z_clear_cacher    )
r   r   r   r   r   r   r   r   r   r   s
   &  @@@@@@@r   singledispatchr   k  s     H..0NK.D6 6p8 tZ)BCHHVGG'1G)//G7!Nr   c                   sP   a  ] tR tRt o R tR	R ltR	R lt]R 4       tR t	Rt
V tR# )
r   i  c                s    \        V4      '       g"   \        VR 4      '       g   \        V: R24      h\        V4      V n        Wn        R# )r   z  is not callable or a descriptorN)r   r   r`   r   
dispatcherr   r#   r   rI   r   rJ   Zsingledispatchmethod.__init__  s;    ~~gdI&>&>th&FGHH(.	r   Nc                s:    V P                   P                  WR 7      # )r   )r   r   )r#   rD   Zmethodr   r   r   Zsingledispatchmethod.register  s    
 '''99r   c                s    \        WV4      # r   )_singledispatchmethod_get)r#   rG   rD   r   r   r   Zsingledispatchmethod.__get__  s    (C88r   c                r   r   r   rq   rl   r   r   Z)singledispatchmethod.__isabstractmethod__  r   r   c                s     V P                   P                  pRT R2#   \         d/     T P                   P                  p L*  \         d    R p  L:i ; ii ; i)?z#<single dispatch method descriptor >)r   rT   r   rC   r#   namer   r   rr   Zsingledispatchmethod.__repr__  s`    	99))D 5TF!<<  	yy))! 	s&    AAAAAA)r   r   r   )rC   rS   rT   rU   rJ   r   r   r   r   rr   rW   rX   ru   rv   r   r   r     s4     :9 A A= =r   c                   sX   a  ] tR tRt o R tR tR tR t]R 4       t	]R 4       t
RtV tR	# )
r   i  c                s   Wn         VP                  P                  V n        W n        W0n        VP                  p VP                  V n         VP                  V n	        R #   \         d     L!i ; i  \         d     R # i ; ir   )
_unboundr   r   	_dispatch_obj_clsr   rS   r   __doc__)r#   ZunboundrG   rD   r   s   &&&& r   rJ   Z"_singledispatchmethod_get.__init__	  sv     ++44		 ||	"ooDO	<<DL  		  		s#   A  A1  A.-A.1B ?B c                s     V P                   pT P                  e   RT RT P                  : R2# RT R2#   \         d%     T P                  p LB  \         d    R p  LRi ; ii ; i)r   z<bound single dispatch method z of r   z<single dispatch method )rT   r   rC   r  r   r   r   rr   Z"_singledispatchmethod_get.__repr__  sy    	$$D 99 3D6dii]!LL-dV155  	}}! 	s'   6 A%AA!A% A!!A%c               s   V'       g0   \        V P                  P                  R R4      p\        V R24      hV P	                  V^ ,          P
                  4      P                  V P                  V P                  4      ! V/ VB # )rC   zsingledispatchmethod methodr   )	r   r   r   r`   r  r   r   r  r  )r#   rf   rg   r   s   "*, r   r   Z"_singledispatchmethod_get.__call__'  su    t}}11:<>Hxj )4 4 5 5~~d1g//088DIINPT_X^__r   c                s\    VR9  d   \         h\        V P                  P                  V4      # )rC   >   rC   rT   Z__annotations____type_params__r   )r   r   r   r   r   rI   r   __getattr__Z%_singledispatchmethod_get.__getattr__/  s.      > >  t}}))400r   c                .    V P                   P                  # r   )r   r   rq   rl   r   r   Z%_singledispatchmethod_get.__wrapped__7  s    }}!!!r   c                r  r   )r   r   rq   rl   r   r   Z"_singledispatchmethod_get.register;  s    }}%%%r   )r  rS   r  r  r  r   N)rC   rS   rT   rU   rJ   rr   r   r  r   r   r   rW   rX   ru   rv   r   r   r     sB     "6`1 " " & &r   r   c                   sF   a  ] tR tRt o R tR tRR lt]! ]4      t	Rt
V tR# )r   iF  c                sd    Wn         R V n        VP                  V n        VP                  V n        R # r   )r   attrnamer  rS   r   rI   r   rJ   Zcached_property.__init__G  s$    	||//r   c                s    V P                   f	   W n         R # W P                   8w  d   \        RV P                   : RV: R24      hR # )Nz?Cannot assign the same cached_property to two different names (z and z).)r  r`   )r#   ownerr   r   r   __set_name__Zcached_property.__set_name__M  sI    ==  M]]"MM$E$5  #r   Nc                s   Vf   V # V P                   f   \        R4      h VP                  pTP                  T P                   \        4      pT\        J d#   T P                  T4      p YST P                   &   T# T#   \         d6    R\	        T4      P
                  : RT P                   : R2p\        T4      R hi ; i  \         d6    R\	        T4      P
                  : RT P                   : R2p\        T4      R hi ; i)NzGCannot use cached_property instance without calling __set_name__ on it.zNo '__dict__' attribute on z instance to cache z
 property.zThe '__dict__' attribute on z7 instance does not support item assignment for caching )	r  r`   r   r   r   rC   r   
_NOT_FOUNDr   )r#   Zinstancer	  r   ZmsgZvalrc   r   r   Zcached_property.__get__V  s   K== Y[ [	+%%E iiz2*))H%C/'*dmm$ 
s
#  	+-d8n.E.E-H I%%)]]$5ZA  C.d*	+  /24>3J3J2M NDDHMMCTT^`   n$./s   A; )B> ;A B;>A C>)r  rS   r  r   r   )rC   rS   rT   rU   rJ   r
  r   r   r	   r   rW   rX   ru   rv   r   r   r   F  s!     *6 $L1r   c                 s0   a  \        S 4      V 3R  l4       pV# )c                  s   < R V9   g   RV9   d?   ^ RI p^ RIpVP                  R\        VP                  P                  \        4      3R7       S! V / VB # )ra   rb   NzCalling functools.reduce with keyword arguments "function" or "sequence" is deprecated in Python 3.14 and will be forbidden in Python 3.16.)Zskip_file_prefixes)oswarningsZwarnZDeprecationWarningZpathZdirnameZ__file__)rf   rg   r  r  	py_reduces   *,  r   r   Z+_warn_python_reduce_kwargs.<locals>.wrappert  sY    :#7MM, #$&GGOOH$=#?  A $)&))r   )r   )r  r   r[   r   _warn_python_reduce_kwargsr  s  s!    
9* * Nr   )rd   )r    r   WRAPPER_ASSIGNMENTSWRAPPER_UPDATESrF   r   r\   r   rd   r   r   r   r   r   ro   )rS   rC   rT   r  r   r  )r   )r   r   r   Zcurrsize)i   Fr   )EZ__all__Zabcr   Zcollectionsr   Zoperatorr   Zreprlibr   r   r	   r
   r   r   Z_threadr   r  r  r    r   r&   r)   r,   r1   r4   r6   r9   r:   r;   r>   r?   r@   rA   rF   r\   Z
_functoolsZImportErrorrB   r^   rd   re   ro   r~   r   r   r   r   r   r   r   r   Zstrr   r   rw   r   r   r   r   r   r   r   r   r   r   r   r  r   r  rp   r   r   <module>r     s  -
   "  " G G :  2,> )#70+&*'+&*' +&+&+&( +&+&+&( +&+&+&( +&+&+&($&	% 8 '7 H ,   ,\5A2 A2H	AA
42 42r
	 %NO
  st>-^rh	-26+Z("T4tp#= #=J5& 5&x X
+2 +2Z  
$F	+	!Q  		h  		n  		|  		sH   E& 
E3 F  F &E0/E03E=<E= F
	F
FF