+
    iZ                    `   ^ RI Ht ^ RIt^ RIHt ^ RIH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 ^ RI
Ht ^ R	I
Ht ^ R
I
Ht ^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RIt^RIHt  ^ RIHt ^ RIH t  ^ RIH!t! ^ RIH"t" ^ RIH#t# ^ RIH$t$ ^ RIH%t% ^ RIH&t& ^ RIH't' ^ R IH(t( ^ R!IH)t) ^ R"IH*t* ^ R#IH+t+ ^ R$IH,t, ^ R%IH-t- ^ R&IH.t. ^ R'IH/t/ ^ R(IH0t0 ^ R)IH1t1 ]! R*]R+7      t2]! R,4      t3]! R-RR.7      t4]! R/RR07      t5]! R14      t6]! R2RR.7      t7]Pp                  '       d   ^ R3I9H:t: M];! R4      t:R4 R5 lt<]]],          ]=]]]/R63,          t> ! R7 R8])4      t? ! R9 R:])]2,          4      t@ ! R; R<])]3]73,          4      tA]&R=,          tBR>RR?R@RAR/RB RC lltCRD RE ltDRF RG ltERHRRIR/RJ RK lltFRHR/RL RM lltGRN RO ltHRP RQ ltIRR RS ltJRT RU ltKRV RW ltLRX RY ltMRZ R[ ltNR\ R] ltOR^ R_ ltPRR` Ra lltQ]Rb Rc l4       tR]Rd Re l4       tR]Rf Rg l4       tRRh Ri ltR]Rj Rk l4       tS]Rl Rm l4       tSRn Ro ltSRp Rq ltTRr Rs ltURt Ru ltVRv Rw ltWRx Ry ltXRzR/R{ R| lltYR} R~ ltZ ! R R])4      t[]! R][R+7      t\ ! R R]]\,          4      t]]! R][RR7      t^ ! R R]]^,          4      t_]! R]]R]3,          ,          R+7      t` ! R R]]`,          4      ta ! R R4      tb]b! 4       tc]'       d   ]tdM]ctd]cPL                  teR# )    )annotationsN)deque)Any)Callable)Dict)
ForwardRef)Generic)Iterable)Mapping)NewType)NoReturn)Optional)overload)Set)Tuple)Type)TYPE_CHECKING)TypeVarUnion)compatT)	Annotated)Concatenate)dataclass_transform)Final)final)get_args)
get_origin)Literal)NotRequired)	ParamSpec)Protocol)SupportsIndex)	TypeAlias)	TypedDict)	TypeGuard)Self)TypeAliasType)Never)LiteralString_T)bound_KT_KT_co)	covariant
_KT_contra)contravariant_VT_VT_co)NoneTypec                    V ^8  d   QhRRRR/# )   typr   returnbool )formats   "C:\Users\petid\OneDrive\Desktop\Maestro\MAESTRO CLAUDE\MAESTRO\maestro-backend\venv\Lib\site-packages\sqlalchemy\util\typing.py__annotate__r=   M   s     I IS IT I    c                P    \        V \        4      ;'       d    V P                  R 8H  # )None)
isinstancer   __forward_arg__)r7   s   &r<   is_fwd_nonerC   M   s"    c:&HH3+>+>&+HHr>   zGenericProtocol[Any]c                  &    ] tR t^Vt$ RtR]R&   RtR# )ArgsTypeProtocolzWprotocol for types that have ``__args__``

there's no public interface for this AFAIK

Tuple[_AnnotationScanType, ...]__args__r:   N__name__
__module____qualname____firstlineno____doc____annotations____static_attributes__r:   r>   r<   rE   rE   V   s     .-r>   rE   c                  0    ] tR t^`t$ RtR]R&   R]R&   RtR# )GenericProtocolzPprotocol for generic types.

this since Python.typing _GenericAlias is private

rF   rG   Type[_T]
__origin__r:   NrH   r:   r>   r<   rQ   rQ   `   s     .-r>   rQ   c                  .    ] tR t^ttR R ltR R ltRtR# )SupportsKeysAndGetItemc                   V ^8  d   QhRR/# )r6   r8   zIterable[_KT]r:   )r;   s   "r<   r=   #SupportsKeysAndGetItem.__annotate__u   s    ((m(r>   c                	    R # Nr:   )selfs   &r<   keysSupportsKeysAndGetItem.keysu   s    Sr>   c                    V ^8  d   QhRRRR/# )r6   _SupportsKeysAndGetItem__kr-   r8   r3   r:   )r;   s   "r<   r=   rW   w   s    22s2v2r>   c                	    R # rY   r:   )rZ   r^   s   &&r<   __getitem__"SupportsKeysAndGetItem.__getitem__w   s    sr>   r:   N)rI   rJ   rK   rL   r[   r`   rO   r:   r>   r<   rU   rU   t   s    (22r>   rU   *str_cleanup_fninclude_genericF_already_seenc               8    V ^8  d   QhRRRRRRRRR	R
RRRRRR/# )r6   cls	Type[Any]
annotation_AnnotationScanTypeoriginating_modulestrlocals_zMapping[str, Any]rc   z#Optional[Callable[[str, str], str]]rd   r9   re   zOptional[Set[Any]]r8   r:   )r;   s   "r<   r=   r=   ~   sb     D D	D#D D 	D 8D D &D Dr>   c                 a aaaaa Tp\        V4      '       d   VP                  p\        V\        4      '       d!   S'       d
   S! VS4      p\	        VSSS R7      pS'       d   \        V4      '       d   \        V4      '       g   Sf   \        4       oVS9   d   V# SP                  V4       \        ;QJ d&    . VV VVVV3R lVP                   4       F  NK  	  5M! VV VVVV3R lVP                   4       4      p\        W4      # V# )a'  Resolve annotations that may be string based into real objects.

This is particularly important if a module defines "from __future__ import
annotations", as everything inside of __annotations__ is a string. We want
to at least have generic containers like ``Mapped``, ``Union``, ``List``,
etc.

)rm   in_classc              3  H   <"   T F  p\        SVSSSSSR 7      x  K  	  R# 5i))rc   rd   re   N)de_stringify_annotation).0elemre   rg   rd   rm   rk   rc   s   & r<   	<genexpr>*de_stringify_annotation.<locals>.<genexpr>   s;      
 , $"- /+  ,s   ")
is_fwd_refrB   rA   rl   eval_expression
is_generic
is_literalsetaddtuplerG   _copy_generic_annotation_with)	rg   ri   rk   rm   rc   rd   re   original_annotationelementss	   f&ffddd  r<   rq   rq   ~   s    . %*//
*c""'
4FGJ$*Gc


 	z"":&& EM&
 '&j)5 
 
 #++
55 
 
 #++
 
 -ZBBr>   c                    V ^8  d   QhRRRR/# r6   type_rj   r8   r:   )r;   s   "r<   r=   r=      s     & &&&r>   c                   \        V 4      '       d   \        V 4      \        \        \        \
        P                  \
        P                  \
        P                  \
        P                  \
        P                  39   d   \        P                  ! R\        V 4      4      '       g^   \        V 4      P                  \        \!        V 4       Uu. uF&  p\#        V\$        4      '       d   \'        V4      MTNK(  	  up4      4      # V # u upi )z^Correct dict['x', 'y'] into dict[ForwardRef('x'), ForwardRef('y')]
and similar for list, set

z3typing.(?:Dict|List|Set|.*Mapping|.*Sequence|.*Set))rx   r   dictrz   listcollections_abc
MutableSetMutableMappingMutableSequencer   Sequencerematchrepr__class_getitem__r|   r   rA   rl   r   )r   rs   s   & r<   fixup_container_fwd_refsr      s     	5u&&**++##$$	


 A4;
 

 % 22 !) / )34(=(=Jt$4G /
 	
 Ls   ,Dc               $    V ^8  d   QhRRRRRR/# )r6   ri   zGenericProtocol[_T]r   rF   r8   rR   r:   )r;   s   "r<   r=   r=      s$     / /#//N//r>   c                n    \        V R 4      '       d   V P                  V4      # V P                  V,          # )	copy_with)hasattrr   rS   )ri   r   s   &&r<   r}   r}      s5     z;''##H-- $$X..r>   rm   ro   c          
     ,    V ^8  d   QhRRRRRRRRRR	/# )
r6   
expressionrl   module_namerm   Optional[Mapping[str, Any]]ro   zOptional[Type[Any]]r8   r   r:   )r;   s   "r<   r=   r=      s:     ! !!! )	!
 "! 	!r>   c                   \         P                  V,          P                  p TeQ   \        TP                  4      pTP                  TP                  T4       TP                  T4       \        YT4      pT# \        YT4      p T#   \         d   p\	        R T RT  24      ThRp?ii ; i  \         d   p\	        RT : 24      ThRp?ii ; i)Module z9 isn't present in sys.modules; can't evaluate expression Nz"Could not de-stringify annotation )sysmodules__dict__KeyError	NameErrorr   
setdefaultrI   updateeval	Exception)	r   r   rm   ro   base_globalskecls_namespaceri   errs	   &&$$     r<   rw   rw      s    '*{{;'?'H'H !2!23M$$X%6%6A
   .jAJ  j@J 1  k] ###-,0
 	&  0?
	s5   !B AB, 8B, B)B$$B),C7CCc               (    V ^8  d   QhRRRRRRRR/# )r6   namerl   r   rm   r   r8   r   r:   )r;   s   "r<   r=   r=     s0      
 )	
 	r>   c               p   R V 9   d   \        WVR7      #  \        P                  V,          P                  p Y0,          #   \         d   p\        RT RT  24      ThRp?ii ; i  \         dF   p \        P                  T ,          u Rp?#   \         d     Mi ; i\        RT  RT 24      ThRp?ii ; i).)rm   r   z2 isn't present in sys.modules; can't resolve name NzCould not locate name z in module )rw   r   r   r   r   r   builtins)r   r   rm   r   r   s   &&$  r<   eval_name_onlyr     s     d{t'BB'*{{;'?'H'H!!  k] # 6#
 	  		$$T** 		 $TF+k]C
		sL   !A  A%  A"AA"%B51BB5BB0BB00B5c               $    V ^8  d   QhRRRRRR/# )r6   r   rl   r   r8   r:   )r;   s   "r<   r=   r=   ?  s!     . .# .C .C .r>   c                Z     \        W4      p\        VR V 4      #   \         d    T u # i ; i)rI   )r   getattrr   )r   r   objs   && r<   resolve_name_to_real_class_namer   ?  s8    .T/ sJ--  s    **c                    V ^8  d   QhRRRR/# )r6   r   zOptional[Any]r8   r9   r:   )r;   s   "r<   r=   r=   H  s     M M] Mt Mr>   c                R    V R J;'       d    \        V 4      \        P                  9   # rY   )r   _type_tuplesr   r   s   &r<   	is_pep593r   H  s%    LLE!2l6L6L!LLr>   c                    V ^8  d   QhRRRR/# )r6   r   r   r8   zTypeGuard[Iterable[Any]]r:   )r;   s   "r<   r=   r=   L  s       (@ r>   c                |    \        V \        P                  4      ;'       d    \        V \        \        34      '       * # rY   )rA   r   r
   rl   bytes)r   s   &r<   is_non_string_iterabler   L  s6    c?334  Zc5\> : r>   c                    V ^8  d   QhRRRR/# r6   r   r   r8   r9   r:   )r;   s   "r<   r=   r=   R  s     5 5c 5d 5r>   c                :    \        V 4      \        P                  9   # rY   )r   r   r   r   s   &r<   ry   ry   R  s    e 4 444r>   c                    V ^8  d   QhRRRR/# )r6   r   zOptional[_AnnotationScanType]r8   zTypeGuard[NewType]r:   )r;   s   "r<   r=   r=   V  s     + +3 +8J +r>   c                    \        V R 4      # )__supertype__r   r   s   &r<   
is_newtyper   V  s    5/**r>   c                    V ^8  d   QhRRRR/# )r6   r   rj   r8   zTypeGuard[GenericProtocol[Any]]r:   )r;   s   "r<   r=   r=   ^  s      G G) G.M Gr>   c                B    \        V R 4      ;'       d    \        V R4      # )rG   rS   r   r   s   &r<   rx   rx   ^  s    5*%FF'%*FFr>   c                    V ^8  d   QhRRRR/# )r6   r   rj   r8   zTypeGuard[TypeAliasType]r:   )r;   s   "r<   r=   r=   b  s     < <( <-E <r>   c                    \        V 4      '       d   \        V P                  4      # \        V \        P
                  4      # rY   )rx   	is_pep695rS   rA   _type_instancesr(   r   s   &r<   r   r   b  s3    
 %))**e_::;;r>   c                    V ^8  d   QhRRRR/# )r6   r   r   r8   rh   r:   )r;   s   "r<   r=   r=   l  s      7 y r>   c                \    V P                   p\        V4      '       d   VP                   pK  V# rY   )r   r   )r   
super_types   & r<   flatten_newtyper   l  s)    $$J
Z
 
 --
r>   c                    V ^8  d   QhRRRR/# )r6   r   rj   r8   zSet[Any]r:   )r;   s   "r<   r=   r=   s  s     " ", " "r>   c                z  aa \        4       oVV3R loS! V 4      p\        V\        4      '       d   \        4       p\        V4      pV'       dj   VP	                  4       p\        V\        4      '       d   VP                  V4       KA  TP                  V\        J g   \        V4      '       d   RMT4       Kq  V# V0# )zExtracts the value from a TypeAliasType, recursively exploring unions
and inner TypeAliasType to flatten them into a single set.

Forward references are not evaluated, so no recursive exploration happens
into them.
c                   < V S9   d   V # SP                  V 4       \        V 4      '       g   V # V P                  p\        V4      '       g   V# VP                   Uu. uF  pS! V4      NK  	  up# u upi rY   )r{   r   	__value__is_unionrG   )
inner_typevaluet_seenrecursive_values   &  r<   r   &pep695_values.<locals>.recursive_value|  sj     		*$$$$L,1NN;Nq"N;;;s   A0N)	rz   rA   r   r   popleftextendr{   r4   rC   )r   restypesstackr   r   r   s   &    @@r<   pep695_valuesr   s  s     EE< %
 C#tc
A!T""Q		!x-;q>>$qIur>   c               (    V ^8  d   QhRRRRRRRR/# )r6   r   rj   check_genericr9   check_for_plain_stringr8   zTypeGuard[ForwardRef]r:   )r;   s   "r<   r=   r=     s0       ! 	r>   c                Z  a S'       d   \        V \        4      '       d   R # \        V \        P                  4      '       d   R # V'       d`   \	        V 4      '       dO   \
        ;QJ d)    V3R lV P                   4       F  '       g   K   R # 	  R# ! V3R lV P                   4       4      # R# )Tc              3  @   <"   T F  p\        VR SR7      x  K  	  R# 5i)T)r   N)rv   )rr   argr   s   & r<   rt   is_fwd_ref.<locals>.<genexpr>  s.      
 & T2H  &s   F)rA   rl   r   r   rx   anyrG   )r   r   r   s   &&fr<   rv   rv     s    
 *UC"8"8	E?55	6	6	:e,,s 
 ~~	
ss 	
s 	
s 
 ~~	
 
 	
 r>   c                    V ^8  d   QhRRRR/# )r6   r   rl   r8   r:   )r;   s   "r<   r=   r=     s     6 6c 6c 6r>   c                    R # rY   r:   r   s   &r<   de_optionalize_union_typesr     s    36r>   c                    V ^8  d   QhRRRR/# )r6   r   rh   r8   r:   )r;   s   "r<   r=   r=     s     B Bi BI Br>   c                    R # rY   r:   r   s   &r<   r   r     s    ?Br>   c                    V ^8  d   QhRRRR/# r   r:   )r;   s   "r<   r=   r=     s      r>   c                    R # rY   r:   r   s   &r<   r   r          r>   c                    V ^8  d   QhRRRR/# r   r:   )r;   s   "r<   r=   r=     s     % %%%r>   c                h   \        V 4      '       d   \        V R4      # \        V 4      '       d   \        V 4      '       d   \        P
                  '       d   \        V P                  4      pM\        V .4      p\        4       pV'       d[   VP                  4       pVP                   F8  p\        V4      '       d   VP                  V4       K'  VP                  V4       K:  	  Kb  VP                  R4       V Uu0 uF#  qU\        Jg   K  \        V4      '       d   K!  VkK%  	  pp\        V!  # V # u upi )zGiven a type, filter out ``Union`` types that include ``NoneType``
to not include the ``NoneType``.

Contains extra logic to work on non-flattened unions, unions that contain
``None`` (seen in py38, 37)

FN)rv   #_de_optionalize_fwd_ref_union_typesr   includes_noner   py39rz   rG   r   r   appendr{   discardr4   rC   make_union_type)r   r7   stack_of_unionsu_typrs   r   s   &     r<   r   r     s     %25%@@	%]511;;;enn%C $UGnO%C!'//1!NND~~'..t4	 + KKJ#Q(!2q;q>qq#J$$  Ks   9D/	D/D/c               $    V ^8  d   QhRRRRRR/# )r6   r   r   return_has_nonezLiteral[True]r8   r9   r:   )r;   s   "r<   r=   r=     s$      (5	r>   c                    R # rY   r:   r   r   s   &&r<   r   r     s     r>   c               $    V ^8  d   QhRRRRRR/# )r6   r   r   r   zLiteral[False]r8   rj   r:   )r;   s   "r<   r=   r=     s$      (6r>   c                    R # rY   r:   r   s   &&r<   r   r     r   r>   c               $    V ^8  d   QhRRRRRR/# )r6   r   r   r   r9   r8   z Union[_AnnotationScanType, bool]r:   )r;   s   "r<   r=   r=     s$     3 33(,3%3r>   c                Z   V P                   p\        P                  ! RV4      pV'       Ed   VP                  ^4      P	                  R4      R,          pVR8X  d%   V'       d   R# \        VP                  ^4      4      # VR8X  Ed5   RVP                  ^4      9   d   . p. p^ pVP                  ^4       F  pVR8X  d   V^,          pM_VR8X  d   V^,          pMNV^ 8X  dH   VR8X  dA   VP                  R	P                  V4      P                  4       4       VP                  4        Ks  VP                  V4       K  	  M&\        P                  ! R
VP                  ^4      4      pV U	u. uF  qR8w  g   K  \        V	4      NK  	  p
p	V'       d   \        V4      \        V
4      8g  # V
'       d
   \        V
!  # \        # V'       d   R# T # \        P                  ! RV4      pRV9   pV'       d   V# V'       d2   RP                  R V 4       4      pV'       d   \        V4      # \        # V # u up	i )zreturn the non-optional type for Optional[], Union[None, ...], x|None,
etc. without de-stringifying forward refs.

unfortunately this seems to require lots of hardcoded heuristics

z^(.+?)\[(.+)\]$r   r   Tr   [], z,\s*r@   Fz\s*\|\s*|c              3  6   "   T F  qR 8w  g   K  Vx  K  	  R# 5i)r@   Nr:   )rr   ps   & r<   rt   6_de_optionalize_fwd_ref_union_types.<locals>.<genexpr>  s     B{!6kAA{s   
)rB   r   r   groupsplitr   r   joinstripclearlenr   r)   )r   r   ri   mmg1r   currentignore_commacharrs   partspipe_tokenshas_noneanno_strs   &&            r<   r   r     s    &&J	$j	1B	rXXa[s#B'*4G
288A;0GG7]bhhqk!&(%' HHQKDs{$)$)%*ts{ (8(>(>(@A NN4( ( 88GRXXa[92:M($fn%Z%(EM8}E
2227.BUB+566((;
3K$H88B{BB'/z(#:U:L! Ns   'H(4H(c                    V ^8  d   QhRRRR/# )r6   r   rj   r8   rh   r:   )r;   s   "r<   r=   r=   $  s      / I r>   c                     \         V ,          # )zMake a Union type.r   )r   s   *r<   r   r   $  s     <r>   c                    V ^8  d   QhRRRR/# r   r:   )r;   s   "r<   r=   r=   *  s        r>   c                   \        V 4      '       d   \        V R4      # \        V 4      '       dG   \        ;QJ d%    R \	        V 4       4       F  '       g   K   R# 	  R# ! R \	        V 4       4       4      # \        V 4      '       d   \        \	        V 4      ^ ,          4      # \        V 4      '       dG   \        ;QJ d%    R \        V 4       4       F  '       g   K   R# 	  R# ! R \        V 4       4       4      # \        V 4      '       d   \        V P                  4      #  V \        R39   ;'       g    \        V 4      #   \         d     R# i ; i)a
  Returns if the type annotation ``type_`` allows ``None``.

This function supports:
* forward refs
* unions
* pep593 - Annotated
* pep695 - TypeAliasType (does not support looking into
fw reference of other pep695)
* NewType
* plain types like ``int``, ``None``, etc
Tc              3  8   "   T F  p\        V4      x  K  	  R # 5irY   r   rr   r   s   & r<   rt    includes_none.<locals>.<genexpr>9  s     =_=##_   Fc              3  8   "   T F  p\        V4      x  K  	  R # 5irY   r  r  s   & r<   rt   r  =  s     B-A=##-Ar   N)rv   r   r   r   r   r   r   r   r   r   r   r4   rC   	TypeErrorr   s   &r<   r   r   *  s    %25$??s=Xe_=ss=s=s=Xe_===Xe_Q/00sB]5-ABssBsBsB]5-ABBB%U00114((>>K,>>  	s   D= 1D= =EEc                    V ^8  d   QhRRRR/# r   r:   )r;   s   "r<   r=   r=   I  s      S T r>   c                    \        V \        4      ;'       gW    \        V 4      R J;'       gB    \        V RR 4      R9   ;'       g*    \        V 4      P                  ^ ,          P
                  R9   # )NrJ   )typingtyping_extensions)rA   typer   r   __mro__rJ   r   s   &r<   	is_a_typer)  I  sv    5$ 	P 	PeD(	P 	P5,-*+	P 	P ;q!,,0OOr>   c                    V ^8  d   QhRRRR/# )r6   r   r   r8   zTypeGuard[ArgsTypeProtocol]r:   )r;   s   "r<   r=   r=   S  s     5 5C 57 5r>   c                    \        V R R4      # )r   	UnionType)is_origin_ofr   s   &r<   r   r   S  s    w44r>   c               $    V ^8  d   QhRRRRRR/# )r6   r   r   	class_objz'Union[Tuple[Type[Any], ...], Type[Any]]r8   r9   r:   )r;   s   "r<   r=   r=   W  s)     
F 
F
FB
F	
Fr>   c                j    \        V 4      pVf   R# \        V\        4      ;'       d    \        W!4      # )zWreturn True if the given type has an __origin__ that shares a base
with the given classF)r   rA   r'  
issubclass)r   r/  origins   && r<   is_origin_of_clsr3  W  s0     F~fd#EE
6(EEr>   modulec               (    V ^8  d   QhRRRRRRRR/# )	r6   r   r   namesrl   r4  zOptional[str]r8   r9   r:   )r;   s   "r<   r=   r=   d  s,      %2	r>   c                   \        V 4      pVf   R# \        V4      V9   ;'       d(    VRJ ;'       g    VP                  P                  V4      # )zXreturn True if the given type has an __origin__ with the given name
and optional module.NF)r   _get_type_namerJ   
startswith)r   r4  r6  r2  s   &$* r<   r-  r-  d  sR     F~&!U*  $>>&++66v>r>   c                    V ^8  d   QhRRRR/# )r6   r   rh   r8   rl   r:   )r;   s   "r<   r=   r=   s  s      )  r>   c                    \         P                  '       d   V P                  # \        V R R4      pVf   \        V RR4      pV# )rI   N_name)r   py310rI   r   )r   typ_names   & r<   r8  r8  s  s<    |||~~5*d3ugt4Hr>   c                  :    ] tR tRtR R ltR R ltR R ltRtR	# )
DescriptorProtoi~  c               $    V ^8  d   QhRRRRRR/# )r6   instanceobjectownerr   r8   r:   )r;   s   "r<   r=   DescriptorProto.__annotate__  s    ???s?s?r>   c                	    R # rY   r:   rZ   rB  rD  s   &&&r<   __get__DescriptorProto.__get__  s    Cr>   c               $    V ^8  d   QhRRRRRR/# )r6   rB  r   r   r8   r@   r:   )r;   s   "r<   r=   rE    s    ===C=D=r>   c                	    R # rY   r:   rZ   rB  r   s   &&&r<   __set__DescriptorProto.__set__  s    #r>   c                    V ^8  d   QhRRRR/# r6   rB  r   r8   r@   r:   )r;   s   "r<   r=   rE    s    443444r>   c                	    R # rY   r:   rZ   rB  s   &&r<   
__delete__DescriptorProto.__delete__  s    r>   r:   N)rI   rJ   rK   rL   rH  rM  rS  rO   r:   r>   r<   r@  r@  ~  s    ?=44r>   r@  _DESCc                  V    ] tR tRtRt]'       d   R R ltR R ltR R ltR	t	R
# R	t	R
# )DescriptorReferencei  ar  a descriptor that refers to a descriptor.

used for cases where we need to have an instance variable referring to an
object that is itself a descriptor, which typically confuses typing tools
as they don't know when they should use ``__get__`` or not when referring
to the descriptor assignment as an instance variable. See
sqlalchemy.orm.interfaces.PropComparator.prop

c               $    V ^8  d   QhRRRRRR/# )r6   rB  rC  rD  r   r8   rU  r:   )r;   s   "r<   r=    DescriptorReference.__annotate__  s    EEFE3E5Er>   c                	    R # rY   r:   rG  s   &&&r<   rH  DescriptorReference.__get__      #r>   c               $    V ^8  d   QhRRRRRR/# )r6   rB  r   r   rU  r8   r@   r:   )r;   s   "r<   r=   rY    s    CCCCC$Cr>   c                	    R # rY   r:   rL  s   &&&r<   rM  DescriptorReference.__set__      r>   c                    V ^8  d   QhRRRR/# rP  r:   )r;   s   "r<   r=   rY        88s8t8r>   c                	    R # rY   r:   rR  s   &&r<   rS  DescriptorReference.__delete__      Sr>   r:   N
rI   rJ   rK   rL   rM   r   rH  rM  rS  rO   r:   r>   r<   rW  rW    s     EC88 r>   rW  _DESC_co)r,   r/   c                  V    ] tR tRtRt]'       d   R R ltR R ltR R ltR	t	R
# R	t	R
# )RODescriptorReferencei  za descriptor that refers to a descriptor.

same as :class:`.DescriptorReference` but is read-only, so that subclasses
can define a subtype as the generically contained element

c               $    V ^8  d   QhRRRRRR/# )r6   rB  rC  rD  r   r8   rg  r:   )r;   s   "r<   r=   "RODescriptorReference.__annotate__  s    HHFH3H8Hr>   c                	    R # rY   r:   rG  s   &&&r<   rH  RODescriptorReference.__get__  s    Sr>   c               $    V ^8  d   QhRRRRRR/# )r6   rB  r   r   r8   r   r:   )r;   s   "r<   r=   rk    s    EECEEEr>   c                	    R # rY   r:   rL  s   &&&r<   rM  RODescriptorReference.__set__  r\  r>   c                    V ^8  d   QhRRRR/# )r6   rB  r   r8   r   r:   )r;   s   "r<   r=   rk    s    <<s<x<r>   c                	    R # rY   r:   rR  s   &&r<   rS   RODescriptorReference.__delete__  s    r>   r:   Nrf  r:   r>   r<   ri  ri    s     HE<< r>   ri  _FN.c                  V    ] tR tRtRt]'       d   R R ltR R ltR R ltR	t	R
# R	t	R
# )CallableReferencei  za descriptor that refers to a callable.

works around mypy's limitation of not allowing callables assigned
as instance variables


c               $    V ^8  d   QhRRRRRR/# )r6   rB  rC  rD  r   r8   rt  r:   )r;   s   "r<   r=   CallableReference.__annotate__  s    CCFC3C3Cr>   c                	    R # rY   r:   rG  s   &&&r<   rH  CallableReference.__get__  r`  r>   c               $    V ^8  d   QhRRRRRR/# )r6   rB  r   r   rt  r8   r@   r:   )r;   s   "r<   r=   rx    s    AACAAAr>   c                	    R # rY   r:   rL  s   &&&r<   rM  CallableReference.__set__  s    cr>   c                    V ^8  d   QhRRRR/# rP  r:   )r;   s   "r<   r=   rx    rb  r>   c                	    R # rY   r:   rR  s   &&r<   rS  CallableReference.__delete__  re  r>   r:   Nrf  r:   r>   r<   rv  rv    s     CA88 r>   rv  c                  "    ] tR tRtR R ltRtR# )_TypingInstancesi  c                    V ^8  d   QhRRRR/# )r6   keyrl   r8   ztuple[type, ...]r:   )r;   s   "r<   r=   _TypingInstances.__annotate__  s      s '7 r>   c                	    \        \        \        VR 4      \        \        VR 4      3 Uu0 uF  pVf   K	  VkK  	  up4      pV'       g   \	        V4      hW0P
                  V&   V# u upi rY   )r|   r   r%  r&  AttributeErrorr   )rZ   r  r   r   s   &&  r<   __getattr___TypingInstances.__getattr__  su     FC.-sD9A  	
  %%"cs
   A%A%r:   N)rI   rJ   rK   rL   r  rO   r:   r>   r<   r  r    s     r>   r  )FF)f
__future__r   r   collectionsr   collections.abcabcr   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   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r-   r.   r0   r2   r3   r=  r   r4   r'  rC   rl   rj   rE   rQ   rU   _LiteralStarrq   r   r}   rw   r   r   r   r   ry   r   rx   r   r   r   rv   r   r   r   r   r)  r   r3  r-  r8  r@  rU  rW  rg  ri  rt  rv  r  r   r   LITERAL_TYPESr:   r>   r<   <module>r     s   #   ) 	 
                     8< 106:4<86@888.@0@Ten	T	*\6
en	T	*	<<< +DzHI IsJ8NN 
.x .hrl (3Xc6k2 3 s|D ;?D "D )-DN&R/! ,0	!
 %)!H ,0	D.M5+G<"J( 
 6 
 6 
 B 
 B 
 

%P 
 

 
 

3l>5
F595h 5 	/9'%. 9( :_E=GH- =" e8HS#X$6789 9$ $  !'O"O$$r>   