
    i/                        S SK r S SKJrJr  S SKJr  S SKJr  S SKJ	r
  S SKJr  S SKJr  S SKJr  S S	KJrJrJr  S S
KJr  S SKJr  S SKJr  S SKJr  S SKJrJ r J!r!J"r"J#r#J$r$J%r%J&r&J'r'J(r(J)r)J*r*J+r+J,r,J-r-J.r.J/r/J0r0J1r1J2r2  S SKJr3  S SKJr4  S SKJr5  S SKJ	r6  S SKJr7  S SKJr8  S SKJr9  S SK:J;r;J<r<J=r=J>r>J?r?  S S
K:Jr@  S SK:JArB  / SQrC S SKDJErF  \ R                  S:  a  S SKIJJrJ  OS SKKJJrJ   S SKDJLrM   S SKDJNrN  \'1rO S SKDJ'rP  \OR                  \P5         S SKDJ rR  \S" \ \R/5      rT\U" S5      rVS\ S\W4S jrXS\ 4S jrLS  rYS! rZS" rS\[\\\,\<\4   4   4S# jrAS$\US\]\<   4S% jr^S&\US\W4S' jr_S(\ S\W4S) jr`S(\ S\W4S* jraS\W4S+ jrbS\)\U   4S, jrc\rd\re\" \S-S.9r S S/KJfrf  S(\ S\W4S0 jrg\r\r\r\
r	\r\r\Srh\irjS\W4S2 jrkS3 rl\ R                  S4:  a  S5 rmS\ S\)\U   4S6 jrnS S7KJoroJprp  O6S S8KJqrq  S9 rmS\ S\)\U   4S: jrn\ R                  S:  a	  S S7KJoroJprp  OS S7KDJoroJprp  S\,\ \>4   4S; jrrS(\ S\W4S< jrsS(\ S\W4S= jrtS> ruS(\ S\W4S? jrvS(\ S\W4S@ jrwSA rxS(\ S\W4SB jrySC rzS\W4SD jr{SE r|SHSF jr}S\W4SG jr~g! \G a    SrF GNf = f! \G a    \ R                  S:  d   eS SKJLrM   GNf = f! \G a    \ R                  S:  d   eS SKJNrN   GNf = f! \G a     GNf = f! \G a    \S" \ /5      rT GNf = f! \G a    S\W4S1 jrg GN]f = f)I    N)Counterdeque)Mapping)MutableMapping)MutableSequence)
MutableSet)Sequence)Set)MISSINGFieldis_dataclass)fields)partial)	signature)GenericAlias)	AnnotatedAnyDequeDictFinal	FrozenSetGenericListLiteralNewTypeOptionalProtocolTupleUnion_AnnotatedAlias_GenericAlias_SpecialGenericAliasget_args
get_originget_type_hints)r   )NOTHING	AttributeFactoryNothingTyperesolve_types)fields_dict)ANIESExceptionGroupExtensionsTypedDict	TypeAliasadapted_fieldsr+   hasis_typeddict)	TypedDict)      )r-   )r2   )r4   
   )r/   )r   )r   typreturnc                     [        U 5      =(       a2    [        U R                  ;   =(       a    [        U R                  5      S:H  $ )N   )is_union_typeNoneType__args__lenr7   s    M/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/cattrs/_compat.pyis_optionalrA   e   s/    U(cll":Us3<<?PTU?UU    clsc                 .    [        [        U SU 5      5      $ )z4Thin wrapper around typing(_extensions).is_typeddict
__origin__)_is_typeddictgetattrrC   s    r@   r2   r2   i   s    lC899rB   c                 @    [        U S5      =(       d    [        U S5      $ )N__attrs_attrs____dataclass_fields__)hasattrrH   s    r@   r1   r1   n   s    3)*Rgc;Q.RRrB   c                 N    [        U 5      =(       d    [        [        U 5      5      $ )zATest whether the class if a normal or generic attrs or dataclass.)r1   r$   rH   s    r@   has_with_genericrN   r   s    s8+s:c?++rB   c                 R     U R                   $ ! [         a    [        U 5      s $ f = fN)rJ   AttributeErrordataclass_fieldstypes    r@   r   r   w   s-    &### &%%&s    &&c                     [        U 5      (       a&  [        U 5       Vs0 s H  oR                  U_M     sn$ [        U 5      $ s  snf )z1Return the fields_dict for attrs and dataclasses.)r   rR   nameattrs_fields_dict)rT   fs     r@   r+   r+   ~   s?    D#3D#9:#9a	#9::T"" ;s   Aclc                 x   [        U 5      (       a  [        U 5      n[        S U 5       5      (       a  [        U 5      nO0 nU Vs/ s H  n[	        UR
                  UR                  [        La  UR                  O-UR                  [        La  [        UR                  5      O[        SSSSUR                  SUR                  UR
                  UR                  5      UR
                  [        USS5      S9PM     sn$ [        U 5      n[        S U 5       5      (       a  [!        U 5        [        U 5      nU$ s  snf )zxReturn the attrs format of `fields()` for attrs and dataclasses.

Resolves `attrs` stringified annotations, if present.
c              3   V   #    U  H  n[        UR                  [        5      v   M!     g 7frP   
isinstancerT   str.0as     r@   	<genexpr>!adapted_fields.<locals>.<genexpr>   s     61z!&&#&&   ')NTkw_onlyF)rT   aliasre   c              3   V   #    U  H  n[        UR                  [        5      v   M!     g 7frP   r\   r_   s     r@   rb   rc      s     
4Gq:affc""Grd   )r   rR   anyr%   r'   rV   defaultr   default_factoryr(   r&   initgetrT   rG   attrs_fieldsr*   )rY   attrs
type_hintsattrattribss        r@   r0   r0      s!   
 B $6666 (+JJ. -
, + 		 ||72 LL  //w>   4 45$ 		^^DIItyy9iii7'* -
 	
0 2G

4G
444br"N;
s   B5D7objc                 :     [        X5      $ ! [         a     gf = f)z+A safe version of issubclass (won't raise).F)
issubclass	TypeError)rr   basess     r@   is_subclassrw      s$    #%% s   
 
rT   c                 X    [        U SS 5      nU[        L =(       a    SU R                  ;  $ )NrE   .)rG   tupler=   rT   origins     r@   is_hetero_tupler|      s(    T<.FU?7s$--77rB   c                 J    [        U [        5      =(       a    [        U SS5      $ )N_is_protocolF)rw   r   rG   rS   s    r@   is_protocolr      s    tX&O74+OOrB   c                     U [         L $ rP   )r   rS   s    r@   is_bare_finalr      s    5=rB   c                     U [         L a  [        $ U R                  [        L a"  U R                  [         L a  U R
                  S   $ g)z8Return the base of the Final annotation, if it is Final.r   N)r   r   	__class__r!   rE   r=   rS   s    r@   get_final_baser      s7    u}
~~&4??e+C}}QrB   T)eval_str)_LiteralGenericAliasc                     U [         ;   =(       d5    [        U [        [        [        45      =(       a    U R
                  [         ;   $ )zIs this a literal?)LITERALSr]   r!   r   r"   rE   rS   s    r@   
is_literalr      s=    x 
}&:<PQ , 8+		
rB   c                     g)NF )_s    r@   r   r      s    rB   c                 (    [        U SS 5      [        L $ )Nr   )rG   r    rS   s    r@   is_annotatedr      s    4d+>>rB   c                     U [         [        4;   =(       dM    U R                  [        L =(       a    [	        U R
                  [         5      =(       d    [        U SS 5      [        L $ NrE   )r   ry   r   r!   rw   rE   rG   rS   s    r@   is_tupler      J     	8NNm+SDOOU0S	8D,-6rB   )r4      c                 B    SSK Jn  U [        L =(       d    [        X5      $ Nr   )	UnionType)typesr   r   r]   rr   r   s     r@   r;   r;     s    #e|9z#99rB   c                 X    U [         L d  [        U [         5      (       a  U R                  $ g rP   r   r]   __supertype__r?   s    r@   get_newtype_baser     $    '>ZW55$$$rB   )NotRequiredRequired)_UnionGenericAliasc                     SSK Jn  U [        L =(       d;    [        U [        5      =(       a    U R
                  [        L =(       d    [        X5      $ r   )r   r   r   r]   r   rE   r   s     r@   r;   r;     s>    # 5L *3 23O%8O*#)	
rB   c                 X    U [         L d  [        U [         5      (       a  U R                  $ g rP   r   r?   s    r@   r   r     r   rB   c                     [        U 5      (       a  [        U 5      S   n [        U 5      [        [        4;   a  [        U 5      S   $ [
        $ )Nr   )r   r#   r$   r   r   r&   rS   s    r@   get_notrequired_baser   $  sA    D~a $K22~a  NrB   c                 d   [        U SS5      nU [        [        [        [        [
        [        4;   =(       dz    U R                  [        L =(       aF    U[        L=(       a    [        U[        5      =(       d     U[        L =(       a    U R                  S   SL =(       d    U[        [
        [        4;   $ )z[A predicate function for mutable sequences.

Matches lists, mutable sequences, and deques.
rE   N   .)rG   r   listTypingMutableSequenceAbcMutableSequencer   r   r   r!   ry   rw   r=   rz   s     r@   is_mutable_sequencer   -  s    
 T<.Ft24FuUU 	9NNm+ %U;v?T+U AeO?a(8C(?	9 tU$677
rB   c                    [        U SS5      n[        U 5      =(       d    U [        [        [        4;   =(       d    U R
                  [        L =(       aF    U[        L=(       a    [        U[        5      =(       d     U[        L =(       a    U R                  S   SL =(       d/    U[        L =(       d     U[        L =(       a    U R                  S   SL $ )zpA predicate function for sequences.

Matches lists, sequences, mutable sequences, deques and homogenous
tuples.
rE   Nr   .)
rG   r   TypingSequencery   r   r   r!   rw   r=   AbcSequencerz   s     r@   is_sequencer   @  s     T<.Ft$ .. 		9NNm+ %N;v~+N AeO?a(8C(?		9 k!		9 eO7a 0C 7rB   c                     U [         [        4;   =(       dM    U R                  [        L =(       a    [	        U R
                  [         5      =(       d    [        U SS 5      [         L $ r   )r   r   r   r!   rw   rE   rG   rS   s    r@   is_dequer   U  r   rB   c                     U [         [        [        4;   =(       dY    U R                  [        L =(       a    [        U R                  [        5      =(       d    [        U SS5      [        [        [        4;   $ )zaA predicate function for (mutable) sets.

Matches built-in sets and sets from the typing module.
rE   N)
	TypingSetTypingMutableSetsetr   r!   rw   rE   rG   AbcMutableSetAbcSetrS   s    r@   is_mutable_setr   ]  s_     	,c22 	ONNm+ ?DOO-=>	O
 D,-#}f1MMrB   c                     U [         [        4;   =(       dM    U R                  [        L =(       a    [	        U R
                  [         5      =(       d    [        U SS5      [        L $ )ziA predicate function for frozensets.

Matches built-in frozensets and frozensets from the typing module.
rE   N)r   	frozensetr   r!   rw   rE   rG   rS   s    r@   is_frozensetr   l  sM     	I&& 	<NNm+WDOOY0W	<D,-:rB   c                     [        U [        5      =(       d)    [        U S5      (       + =(       a    [        U S5      (       + $ )NrE   r=   )r]   r"   rL   rS   s    r@   is_barer   x  s3    d01 D,''Ij0I,IrB   c                    U [         [        [        [        [        4;   =(       d`    U R
                  [        L =(       a    [        U R                  [        5      =(       d&    [        [        U SU 5      [         [        [        45      $ )z"A predicate function for mappings.rE   )dictr   TypingMappingTypingMutableMappingAbcMutableMappingr   r!   rw   rE   rG   
AbcMappingrS   s    r@   
is_mappingr   ~  sg     	t],@BSTT 	
NNm+ <DOO];	

 D,-6G/T
	rB   c                 T    U [         [        4;   =(       d    [        U SS 5      [         L $ r   )r   TypingCounterrG   rS   s    r@   
is_counterr     s(    -((XGD,,MQX,XrB   c                     [        U [        [        45      =(       d<    [        U [        5      =(       a    [        U S5      =(       d    U R                  [        L $ )z!Whether `type` is a generic type.__orig_bases__)r]   r!   r   rw   r   rL   r   r   rS   s    r@   
is_genericr     sE    
 	4-67 	#g&J749I+J	#>>U"rB   c                     [        U 5      (       a	  [        U   $ [        U[        5      (       a  [	        U5      S:X  a  US   nU R
                  U   $ )z#Replace a generic type's arguments.r   r   )r   r   r]   ry   r>   rE   )rT   argss     r@   	copy_withr     sF    D$3t9>Aw??4  rB   c                     [        XUSS9$ )NT)include_extras)r%   )rr   globalnslocalnss      r@   get_full_type_hintsr     s    #FFrB   c                 P    [        U 5      =(       a    [        U R                  5      $ )zIReturn True for both specialized (A[int]) and unspecialized (A) generics.)r   r1   rE   rS   s    r@   is_generic_attrsr     s    d4DOO 44rB   )NN)syscollectionsr   r   collections.abcr   r   r   r   r   r   r   r   r	   r   r
   r   dataclassesr   r   r   r   rR   	functoolsr   inspectr   
_signaturer   r   typingr   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r   r   r   r   r   r   r   rn   r&   r'   r(   r)   r*   rm   r+   rW   __all__typing_extensionsr3   r.   ImportErrorversion_infobuiltinsr-   exceptiongroupr2   rF   r/   r   	teLiteraladdteAnyr   r,   rT   r<   boolrA   r1   rN   r   r^   r   r0   rw   r|   r   r   r   OriginAbstractSetOriginMutableSetr   r   FrozenSetSubscriptablery   TupleSubscriptabler   r   r;   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rB   r@   <module>r      s   
 & 1 ? A 7 3 ) 4 4 2  +      , , + 9 ; 1 - # I I ( 2	B w'-5?
!+
 9	6LL.sEl#E :VS VT V:c :
S,
&#c5E)9#::; #*t *Y *ZT T 8# 8$ 8
Pc Pd P4 HTN     J.	+
 
 
 
$"
"  ?$ ? w:
c htn 
 -, *
c htn 
 7"00;%[(8"9 c d &c d *  	s 	t 	S T  !G5d 5_    5w&&&445  !w&&&  !  		  seEH   sl   I; ,J
 3J/ =K K! K7 ;JJ
J,+J,/KKKK!K43K47LL