ó
    "EñiBB  ã                  óÌ  • S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKrS SKrS SK	J
r
  S SKJrJr  S SKJr  S SKJr  S SKJrJrJrJr  S SKJrJr  S S	KJr  \(       a  S S
KJr  S SKJrJ r J!r!J"r"  \" \#5      RI                  5       RJ                  r&\&RJ                  r' " S S\5      r(Sr)S"S jr*\" S5      r+\" S5      r,S#S jr-S$S jr.\R^                  S%S j5       r0\Rb                  S&S j5       r2S'S jr3 " S S5      r4 S(     S)S jjr5  S*       S+S jjr6          S,S jr7          S-S jr8              S.S jr9 " S S5      r: " S  S!\\+   5      r;g)/é    )ÚannotationsN)Úis_dataclass)ÚautoÚEnum)ÚPath©Úpformat)ÚAnyÚGenericÚTYPE_CHECKINGÚTypeVar)Úassert_neverÚSelf)ÚCodeTemplate)Ú	Namespace)ÚCallableÚIterableÚIteratorÚSequencec                  óh   • \ rS rSr\" 5       r\" 5       r\" 5       r\" 5       r\" 5       r	\" 5       r
Srg)ÚTargeté%   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú
DEFINITIONÚDECLARATIONÚREGISTRATIONÚANONYMOUS_DEFINITIONÚNAMESPACED_DEFINITIONÚNAMESPACED_DECLARATIONÚ__static_attributes__r   ó    ÚK/home/mande/repo/quber/.venv/lib/python3.13/site-packages/torchgen/utils.pyr   r   %   s/   † á“€JÙ“&€Ká“6€Lá›6Ðá ›FÐÙ!›VÓr%   r   z(^|\W){}($|\W)c                óœ   • [         R                  " SU 5      nUc  [        SU  35      eUR                  5       u  p#nX$R	                  S5      4$ )Nz(\w+)(\.\w+)?\((.*)\)zUnsupported function schema: ú, )ÚreÚmatchÚRuntimeErrorÚgroupsÚsplit)ÚschemaÚmÚnameÚ_Úparamss        r&   Úsplit_name_paramsr3   8   sL   € Ü
�ŠÐ)¨6Ó2€AØ�yÜÐ:¸6¸(ÐCÓDÐDØ—h‘h“j�O€DˆVØ—‘˜dÓ#Ð#Ð#r%   ÚTÚSc              #  ó@   #   • U H  nU " U5      nUc  M  Uv •  M     g 7f©Nr   )ÚfuncÚxsÚxÚrs       r&   ÚmapMayber<   H   s"   é € ÛˆÙ�‹GˆØ‹=ØŒGò ùs   ‚•	c              #  óB   #   • U H  nU " U5       S h  v•N   M     g  N	7fr7   r   )r8   r9   r:   s      r&   Ú	concatMapr>   P   s   é € ÛˆÙ˜“7×Òò Ùùs   ‚“”
c              #  óö   #   •  S v •  g ! [          ac  nU " 5       n[        R                  " US5      nUR                  (       a  UR                  S    SU 3OUnU4UR                  SS  -   Ul        e S nAff = f7f)Nz  r   Ú
é   )Ú	ExceptionÚtextwrapÚindentÚargs)Úmsg_fnÚeÚmsgs      r&   ÚcontextrI   X   sn   é € ðÜøÜó á‹hˆÜ�oŠo˜c 4Ó(ˆØ'(§v§v�—‘˜‘�˜2˜c˜UÑ#°3ˆØ�˜!Ÿ&™&  ˜*Ñ$ˆŒØûðüs%   ‚A9„	 ˆA9‰
A6“AA1Á1A6Á6A9c                ó.   • [         R                  " U 5      $ r7   )r   Ú	from_file)Útemplate_fns    r&   Ú_read_templaterM   e   s   € ä×!Ò! +Ó.Ð.r%   c                óŽ   • [         R                  " U R                  S5      SS9R                  5       n[        R                  USS9$ )NÚlatin1F)ÚusedforsecurityÚlittle)Ú	byteorder)ÚhashlibÚsha1ÚencodeÚdigestÚintÚ
from_bytes)ÚsrT   s     r&   Ústring_stable_hashrZ   k   s7   € Ü�<Š<˜Ÿ™ Ó*¸EÑB×IÑIÓK€DÜ�>‰>˜$¨(ˆ>Ð3Ð3r%   c                  ó
  • \ rS rSr        SS jr\SS j5       rSS jr      SS jr        SS jr	      SS jr
SS	.               SS
 jjrSS	.                 SS jjrSS jrSS jrSrg)ÚFileManagerés   c                ón   • [        U5      U l        [        U5      U l        [        5       U l        X0l        g r7   )r   Úinstall_dirÚtemplate_dirÚsetÚfilesÚdry_run)Úselfr_   r`   rc   s       r&   Ú__init__ÚFileManager.__init__t   s,   € ô   Ó,ˆÔÜ  Ó.ˆÔÜ #£ˆŒ
Ø�r%   c                ór   • [        U R                   Vs1 s H  oR                  5       iM     sn5      $ s  snf r7   )Ú	frozensetrb   Úas_posix)rd   Úfiles     r&   Ú	filenamesÚFileManager.filenames   s'   € ä°d·j²jÓA²j¨dŸ-™-ž/±jÑAÓBÐBùÒAs   ”4c                ó¾   • [        U5      nS n UR                  SS9nX$:w  a+  UR                  R	                  SSS9  UR                  USS9  g g ! [         a     N=f = f)Nzutf-8)ÚencodingT)ÚparentsÚexist_ok)r   Ú	read_textÚOSErrorÚparentÚmkdirÚ
write_text)rd   ÚfilenameÚcontentsrj   Úold_contentss        r&   Ú_write_if_changedÚFileManager._write_if_changedƒ   sm   € Ü�H‹~ˆØ#'ˆð	ØŸ>™>°7˜>Ð;ˆLð Ó#à�K‰K×Ñ d°TÐÑ:Ø�O‰O˜H¨wˆOÒ7ð $øô ó 	Ùð	ús   �A Á
AÁAc                ó   • [        U5      R                  5       (       a  [        SU 35      eU R                  U-  nU" 5       n[	        U[
        5      (       aÃ  SU;  a|  [        S-  n [        [        R                  S   R                  =(       d    U5      R                  5       n UR                  [        5      R                  5       n0 UESSSU SU 3-   0En[%        U5      nUR'                  U5      n	[(        R*                  " SS	U	[(        R,                  S
9$ [	        U[.        5      (       a  U$ [1        U5        g ! [        [        4 a    UR                  5       n N»f = f! [          a    UR"                  n N³f = f)Nztemplate_fn must be relative: Úgenerated_commentzgen.pyÚ__main__Ú@zgenerated by z from zô
                (""")\n+             # match triple quotes
                (
                    (\s*@.+\n)*     # match decorators if any
                    \s*(class|def)  # match class/function definition
                )
                z\g<1>\n\n\g<2>)Úflags)r   Úis_absoluteÚAssertionErrorr`   Ú
isinstanceÚdictÚTORCHGEN_ROOTÚsysÚmodulesÚ__file__ÚabsoluteÚKeyErrorÚAttributeErrorÚrelative_toÚ	REPO_ROOTri   Ú
ValueErrorr0   rM   Ú
substituter)   ÚsubÚVERBOSEÚstrr   )
rd   rL   Úenv_callableÚtemplate_pathÚenvÚgenerator_defaultÚ	generatorÚgenerator_pathÚtemplateÚsubstitute_outs
             r&   Úsubstitute_with_templateÚ$FileManager.substitute_with_template�   s{  € ô
 �Ó×(Ñ(×*Ñ*Ü Ð#AÀ+ÀÐ!OÓPÐPØ×)Ñ)¨KÑ7ˆÙ‹nˆÜ�cœ4× Ñ Ø"¨#Ó-Ü$1°HÑ$<Ð!ð=Ü $ÜŸ™ JÑ/×8Ñ8×MÐ<Mó!ç‘h“jð ð4Ø%.×%:Ñ%:¼9Ó%E×%NÑ%NÓ%P�NðØðà'Ø ¨nÐ-=¸VÀKÀ=ÐQÑQñ�ô & mÓ4ˆHØ%×0Ñ0°Ó5ˆNô —6’6ðð "ØÜ—j‘jñð ô �cœ3×ÑØˆJÜ�SÕøôG !¤.Ð1ó =Ø 1× :Ñ :Ó <’Ið=ûô
 "ó 4Ø%.§^¡^’Nð4ús$   Á(=D> Â&#E$ Ä> E!Å E!Å$E=Å<E=c                óP  • [        U5      nUR                  5       (       a  [        SU 35      eU R                  U-  nX@R                  ;   a  [        SU 35      eU R                  R                  U5        U R                  (       d   U R                  UUS9nU R                  XES9  g g )Núfilename must be relative: zduplicate file write )rL   r’   )rv   rw   )	r   r€   r�   r_   rb   Úaddrc   rš   ry   )rd   rv   rL   r’   rj   r™   s         r&   Úwrite_with_templateÚFileManager.write_with_templateÅ   s¦   € ô ˜“>ˆØ×Ñ×!Ñ!Ü Ð#>¸x¸jÐ!IÓJÐJØ×Ñ (Ñ*ˆØ—:‘:ÓÜ Ð#8¸¸Ð!?Ó@Ð@Ø�
‰
�‰�tÔØ�|�|Ø!×:Ñ:Ø'Ø)ð ;ð ˆNð ×"Ñ"¨DÐ"ÒJð r%   c                ó(   • U R                  XU5        g r7   )rŸ   )rd   rv   r’   s      r&   ÚwriteÚFileManager.writeÙ   s   € ð
 	× Ñ  °\ÕBr%   N)Úbase_envc               ó0   • U R                  UUUUUUUUS9  g )N)Úkey_fnr’   Ú
num_shardsr¤   Úsharded_keys)Úwrite_sharded_with_template)rd   rv   Úitemsr¦   r’   r§   r¤   r¨   s           r&   Úwrite_shardedÚFileManager.write_shardedà   s/   € ð 	×(Ñ(ØØØØØ%Ø!ØØ%ð 	)ò 		
r%   c               óf  ^^• [        U5      n	U	R                  5       (       a  [        SU 35      eSS0n
[        U5       Vs/ s H
  nSSU 30PM     nnU
/U-   nUb  U H  mTR	                  U5        M     T HR  nU HI  mUT;   a;  [        TU   [        5      (       d  [        S5      eTU   R                  5       TU'   MD  / TU'   MK     MT     S	U4S jjnU R                  (       a  SnU H6  nU" U5      n[        U5      U-  nU" U5      nU" UU   U5        U" U
U5        M8     U H<  mTS   nU R                  U	R                  U	R                   U 35      UU4S j5        M>     U R                  R                  U R                  U	R                  U	R                   S35      -  5        g s  snf )
Nr�   Úshard_idÚ
Everythingr1   z'sharded keys in base_env must be a listc                óx   >• UR                  5        H%  u  p#UT;  a  [        SU 35      eX==   U-  ss'   M'     g )Nzundeclared sharded key )rª   r�   )ÚintoÚfrom_ÚkÚvr¨   s       €r&   Ú	merge_envÚ:FileManager.write_sharded_with_template.<locals>.merge_env  s;   ø€ ØŸ™ž‘�Ø˜LÓ(Ü(Ð+BÀ1À#Ð)FÓGÐGØ“˜1‘•ò &r%   r   c                 ó   >• T $ r7   r   )Úshards   €r&   Ú<lambda>Ú9FileManager.write_sharded_with_template.<locals>.<lambda>/  s   ø€ ™r%   )r±   údict[str, list[str]]r²   r»   ÚreturnÚNone)r   r€   r�   ÚrangeÚupdater‚   ÚlistÚcopyrc   rZ   rŸ   Ú	with_stemÚstemrb   Údiscardr_   )rd   rv   rL   rª   r¦   r’   r§   r¤   r¨   rj   Ú
everythingÚiÚshardsÚ
all_shardsÚkeyrµ   ÚitemÚsidr”   r®   r¸   s           `           @r&   r©   Ú'FileManager.write_sharded_with_templateö   s»  ù€ ô �H‹~ˆØ×Ñ×ÑÜ Ð#>¸x¸jÐ!IÓJÐJØ&0°,Ð%?ˆ
ä+0°Ô+<ó(
Ú+< aˆZ˜1˜Q˜C˜Ó!Ñ+<ð 	ð (
ð !�\ FÑ*ˆ
àÑÛ#�Ø—‘˜XÖ&ñ $ó  ˆCÛ#�Ø˜%“<Ü% e¨C¡j´$×7Ñ7Ü,Ð-VÓWÐWØ!& s¡§¡Ó!2�E˜#“Jà!#�E˜#“Jó $ñ  ÷	ð �<�<àˆEãˆDÙ˜“,ˆCÜ$ SÓ)¨JÑ6ˆCÙ˜tÓ$ˆCá�f˜S‘k 3Ô'Ù�j #Ö&ñ ó  ˆEØ˜ZÑ(ˆHØ×$Ñ$Ø—‘ $§)¡) ¨X¨JÐ7Ó8ØÜöñ  ð 	�
‰
×Ñ˜4×+Ñ+¨d¯n©nÀÇ	Á	¸{È*Ð=UÓ.VÑVÕWùò[(
s   ÁF.c                óŠ   • SR                  SU/S [        U R                  5       5       QSP75      nU R                  X#5        g)zSWrite a file containing the list of all outputs which are generated by this script.r@   zset(c              3  óJ   #   • U  H  nS UR                  5        S3v •  M     g7f)z    "Ú"N)ri   )Ú.0rj   s     r&   Ú	<genexpr>Ú,FileManager.write_outputs.<locals>.<genexpr><  s"   é € ÐLÒ9K°�E˜$Ÿ-™-›/Ð*¨!Õ,Ò9Kùs   ‚!#Ú)N)ÚjoinÚsortedrb   ry   )rd   Úvariable_namerv   Úcontents       r&   Úwrite_outputsÚFileManager.write_outputs5  sN   € à—)‘)àØðñ M¼ÀÇ
Á
Ô9KÓLð	ð
 ñó
ˆð 	×Ñ˜xÕ1r%   c                ó˜   • [         R                  R                  U R                  [         R                  R	                  [
        5      5      $ )zÉ
This needs to be deterministic. The template dir is an absolute path
that varies across builds. So, just use the path relative to this file,
which will point to the codegen source but will be stable.
)ÚosÚpathÚrelpathr`   Údirnamer‡   ©rd   s    r&   Útemplate_dir_for_commentsÚ%FileManager.template_dir_for_commentsB  s,   € ô �w‰w�‰˜t×0Ñ0´"·'±'·/±/Ä(Ó2KÓLÐLr%   )rc   rb   r_   r`   )r_   ú
str | Pathr`   râ   rc   Úboolr¼   r½   )r¼   zfrozenset[str])rv   râ   rw   r‘   r¼   r½   )rL   râ   r’   ú"Callable[[], str | dict[str, Any]]r¼   r‘   )rv   râ   rL   râ   r’   rä   r¼   r½   )rv   râ   r’   rä   r¼   r½   )rv   râ   rª   úIterable[T]r¦   úCallable[[T], str]r’   ú#Callable[[T], dict[str, list[str]]]r§   rW   r¤   údict[str, Any] | Noner¨   úset[str]r¼   r½   )rv   râ   rL   râ   rª   rå   r¦   ræ   r’   rç   r§   rW   r¤   rè   r¨   ré   r¼   r½   )rÖ   r‘   rv   râ   r¼   r½   ©r¼   r‘   )r   r   r   r   re   Úpropertyrk   ry   rš   rŸ   r¢   r«   r©   rØ   rà   r$   r   r%   r&   r\   r\   s   s�  † ð	àð	ð !ð	ð ð		ð
 
ô	ð óCó ðCô
8ð3àð3ð 9ð3ð 
ô	3ðjKàðKð  ðKð 9ð	Kð
 
ôKð(CàðCð 9ðCð 
ô	Cð +/ñ
àð
ð ð
ð
 #ð
ð :ð
ð ð
ð (ð
ð ð
ð 
õ
ð> +/ñ=Xàð=Xð  ð=Xð ð	=Xð #ð=Xð :ð=Xð ð=Xð (ð=Xð ð=Xð 
õ=Xô~2÷Mr%   r\   c                óª   • [         R                  R                  U R                  S5      nU(       a  UOU R                  n[        UUU R                  S9$ )NÚ	templates)r_   r`   rc   )rÛ   rÜ   rÔ   Úsource_pathr_   r\   rc   )Úoptionsr_   r`   s      r&   Úmake_file_managerrð   L  sG   € ô —7‘7—<‘< × 3Ñ 3°[ÓA€LÞ!,‘+°'×2EÑ2E€KÜØØ!Ø—‘ñð r%   c                ó   • [        XU5      $ r7   r   )ÚobjrD   Úwidths      r&   Údataclass_reprrô   Z  s   € ô
 �3 Ó&Ð&r%   c           
     ó
  • X1S-   -  n/ nU R                  5        HY  u  pV[        U5      n[        U5      (       a  [        XaX#[	        U5      -   5      O
[        U5      nUR                  U SU 35        M[     [        XAX#SS5      $ )Né   z: Ú{Ú})rª   Úreprr   r	   ÚlenÚappendÚ_format)	ÚattrrD   ró   Úcurr_indentÚ	dict_reprr³   r´   Úk_reprÚv_strs	            r&   Ú_format_dictr  b  sŠ   € ð ˜A‘:Ñ€KØ€IØ—
‘
–‰ˆÜ�a“ˆô ˜A�‰ô �A˜u´C¸³KÑ&?Ô@ä�a“ð 	ð
 	×Ñ˜F˜8 2 e WÐ-Ö.ñ ô �9 e¸#¸sÓCÐCr%   c           	     óØ   • X1S-   -  nU  Vs/ s H*  n[        U5      (       a  [        XAX#5      O
[        U5      PM,     nn[        U [        5      (       a  SOSu  pg[        XQX#Xg5      $ s  snf )NrA   )Ú[Ú])Ú(rÓ   )r   r	   rù   r‚   rÀ   rü   )rý   rD   ró   rþ   ÚlÚ	list_reprÚstartÚends           r&   Ú_format_listr  v  su   € ð ˜A‘:Ñ€Kñ óâˆAô 3?¸q·/±/Œ�˜5Ô.ÄtÈAÃwÒNÙð ð ô  *¨$´×5Ñ5‘¸:�J€EÜ�9 e¸%ÓEÐEùòs   Œ1A'c                ó’   • Su  pg[        [        U 5      5      U:¼  a  SnSU-  nSU-  nSU U 3R                  U 5      n	U U U	 U 3$ )N)Ú r  r@   Ú r(   )rú   rù   rÔ   )
Ú
fields_strrD   ró   rþ   r	  r
  Ú	delimiterÚcurr_indent_strÚ
indent_strÚbodys
             r&   rü   rü   …  si   € ð "(Ñ€Iä
Œ4�
ÓÓ Ó%Øˆ	Ø Ñ+ˆà�v‘€JØ�	ˆ{˜?Ð+Ð,×1Ñ1°*Ó=€DØˆW�Z�L   s eÐ,Ð,r%   c                  ó¦   • \ rS rSrSr  S       SS jjr\ S     SS jj5       r\SS j5       r	\SS j5       r
\SS j5       rSSS jjrS	rg
)ÚNamespaceHelperi˜  zæA helper for constructing the namespace open and close strings for a nested set of namespaces.

e.g. for namespace_str torch::lazy,

prologue:
namespace torch {
namespace lazy {

epilogue:
} // namespace lazy
} // namespace torch
c                ó\  • UR                  S5      n[        U5      U:”  a  [        SU SU S35      eXl        SR	                  U Vs/ s H	  nSU S3PM     sn5      U l        SR	                  [        U5       Vs/ s H  nSU 3PM
     sn5      U l        X@l        X l	        g s  snf s  snf )	Nú::z"Codegen doesn't support more than z# level(s) of custom namespace. Got Ú.r@   z
namespace z {z} // namespace )
r-   rú   r�   Úcpp_namespace_rÔ   Ú	prologue_ÚreversedÚ	epilogue_Únamespaces_Úentity_name_)rd   Únamespace_strÚentity_nameÚ	max_levelÚcpp_namespacesÚns         r&   re   ÚNamespaceHelper.__init__¦  s¿   € ð '×,Ñ,¨TÓ2ˆÜˆ~Ó Ó*Ü Ø4°Y°Kð @)Ø)6¨°qð:óð ð ,ÔØŸ™ÁÓ#PÂ¸A j°°°3Ó$7ÁÑ#PÓQˆŒØŸ™Ü-5°nÔ-EÓFÒ-E¨Ð ˜sÓ#Ñ-EÑFó
ˆŒð *ÔØ'Õùò $QùâFs   ÁB$Á<B)c                ój   • U R                  S5      nUS   nSR                  USS 5      n[        XCUS9$ )za
Generate helper from nested namespaces as long as class/function name. E.g.: "torch::lazy::add"
r  éÿÿÿÿN)r  r   r!  )r-   rÔ   r  )Únamespaced_entityr!  Únamesr   r  s        r&   Úfrom_namespaced_entityÚ&NamespaceHelper.from_namespaced_entity»  sC   € ð "×'Ñ'¨Ó-ˆØ˜B‘iˆØŸ	™	 %¨¨ *Ó-ˆÜØ'ÈIñ
ð 	
r%   c                ó   • U R                   $ r7   )r  rß   s    r&   ÚprologueÚNamespaceHelper.prologueÊ  ó   € à�~‰~Ðr%   c                ó   • U R                   $ r7   )r  rß   s    r&   ÚepilogueÚNamespaceHelper.epilogueÎ  r.  r%   c                ó   • U R                   $ r7   )r  rß   s    r&   r   ÚNamespaceHelper.entity_nameÒ  s   € à× Ñ Ð r%   c                ó@   • U R                   (       a  U R                   $ U$ )z‹
Return the namespace string from joining all the namespaces by "::" (hence no leading "::").
Return default if namespace string is empty.
)r  )rd   Údefaults     r&   Úget_cpp_namespaceÚ!NamespaceHelper.get_cpp_namespace×  s   € ð
 '+×&9×&9ˆt×"Ñ"ÐF¸wÐFr%   )r  r  r  r  r  N)r  é   )r  r‘   r   r‘   r!  rW   r¼   r½   )r8  )r'  r‘   r!  rW   r¼   r  rê   )r  )r5  r‘   r¼   r‘   )r   r   r   r   Ú__doc__re   Ústaticmethodr)  rë   r,  r0  r   r6  r$   r   r%   r&   r  r  ˜  sµ   † ñð  Øð	(àð(ð ð(ð ð	(ð
 
õ(ð* ð ð
Øð
àð
ð 
ô
ó ð
ð óó ðð óó ðð ó!ó ð!÷Gñ Gr%   r  c                  ó’   • \ rS rSr% S\S'   SSS jjrSS jrSS jrSS jrSS	 jr	SS
 jr
\SS j5       rSS jrSS jrSS jrSrg)Ú
OrderedSetiß  zdict[T, None]ÚstorageNc                óN   • Uc  0 U l         g [        R                  U5      U l         g r7   )r=  rƒ   Úfromkeys)rd   Úiterables     r&   re   ÚOrderedSet.__init__â  s   € ØÑØˆD�LäŸ=™=¨Ó2ˆD�Lr%   c                ó   • XR                   ;   $ r7   ©r=  ©rd   rÊ   s     r&   Ú__contains__ÚOrderedSet.__contains__è  s   € Ø—|‘|Ñ#Ð#r%   c                óH   • [        U R                  R                  5       5      $ r7   )Úiterr=  Úkeysrß   s    r&   Ú__iter__ÚOrderedSet.__iter__ë  s   € Ü�D—L‘L×%Ñ%Ó'Ó(Ð(r%   c                óN   • U R                   R                  UR                   5        g r7   )r=  r¿   )rd   rª   s     r&   r¿   ÚOrderedSet.updateî  s   € Ø�‰×Ñ˜EŸM™MÕ*r%   c                ó"   • S U R                   U'   g r7   rC  rD  s     r&   rž   ÚOrderedSet.addñ  s   € Ø!ˆ�‰�TÒr%   c                óX   • [        5       nU R                  R                  5       Ul        U$ r7   )r<  r=  rÁ   )rd   Úrets     r&   rÁ   ÚOrderedSet.copyô  s"   € Ü'›\ˆØ—l‘l×'Ñ'Ó)ˆŒØˆ
r%   c                 óf   • U S   R                  5       nU SS   H  nUR                  U5        M     U$ )Nr   rA   )rÁ   r¿   )rE   rQ  rY   s      r&   ÚunionÚOrderedSet.unionù  s1   € à�1‰g�l‰l‹nˆØ�a�b“ˆAØ�J‰J�qŽMñ àˆ
r%   c                ó,   • [         R                  X5      $ r7   )r<  rT  ©rd   Úothers     r&   Ú__or__ÚOrderedSet.__or__   s   € Ü×Ñ Ó,Ð,r%   c                ó(   • U R                  U5        U $ r7   )r¿   rW  s     r&   Ú__ior__ÚOrderedSet.__ior__  s   € Ø�‰�EÔØˆr%   c                óª   • [        U[        5      (       a  U R                  UR                  :H  $ [        U R                  R	                  5       5      U:H  $ r7   )r‚   r<  r=  ra   rI  rW  s     r&   Ú__eq__ÚOrderedSet.__eq__  s?   € Ü�eœZ×(Ñ(Ø—<‘< 5§=¡=Ñ0Ð0ä�t—|‘|×(Ñ(Ó*Ó+¨uÑ4Ð4r%   rC  r7   )r@  zIterable[T] | Noner¼   r½   )rÊ   r4   r¼   rã   )r¼   zIterator[T])rª   úOrderedSet[T]r¼   r½   )rÊ   r4   r¼   r½   )r¼   ra  )rE   ra  r¼   ra  )rX  ra  r¼   ra  )rX  ra  r¼   r   )rX  Úobjectr¼   rã   )r   r   r   r   Ú__annotations__re   rE  rJ  r¿   rž   rÁ   r:  rT  rY  r\  r_  r$   r   r%   r&   r<  r<  ß  sI   ‡ ØÓö3ô$ô)ô+ô"ôð
 óó ðô-ô÷5r%   r<  )r.   r‘   r¼   ztuple[str, list[str]])r8   zCallable[[T], S | None]r9   rå   r¼   úIterator[S])r8   zCallable[[T], Sequence[S]]r9   rå   r¼   rd  )rF   zCallable[[], str]r¼   zIterator[None])rL   r‘   r¼   r   )rY   r‘   r¼   rW   r7   )rï   r   r_   zstr | Path | Noner¼   r\   )r   éP   )rò   r
   rD   rW   ró   rW   r¼   r‘   )
rý   zdict[Any, Any]rD   rW   ró   rW   rþ   rW   r¼   r‘   )
rý   z&list[Any] | set[Any] | tuple[Any, ...]rD   rW   ró   rW   rþ   rW   r¼   r‘   )r  z	list[str]rD   rW   ró   rW   rþ   rW   r	  r‘   r
  r‘   r¼   r‘   )<Ú
__future__r   Ú
contextlibÚ	functoolsrS   rÛ   r)   r…   rC   Údataclassesr   Úenumr   r   Úpathlibr   Úpprintr	   Útypingr
   r   r   r   Útyping_extensionsr   r   Útorchgen.code_templater   Úargparser   Úcollections.abcr   r   r   r   r‡   rˆ   rs   r„   rŒ   r   ÚIDENT_REGEXr3   r4   r5   r<   r>   ÚcontextmanagerrI   ÚcacherM   rZ   r\   rð   rô   r  r  rü   r  r<  r   r%   r&   Ú<module>ru     s  ðÝ "ã Û Û Û 	Û 	Û 
Û Ý $ß Ý Ý ß 7Ó 7ß 0å /ö Ý"ßFÓFñ �X“×'Ñ'Ó)×0Ñ0€Ø× Ñ €	ô
$ˆTô 
$ð  €ô$ñ ˆCƒL€ÙˆCƒL€ôôð ×Ñó	ó ð	ð ‡�ó/ó ð/ô
4÷UMñ UMðv &*ð
Øð
à"ð
ð õ
ð  Øð'Ø	ð'àð'ð ð'ð 	õ	'ðDØ
ðDàðDð ðDð ð	Dð
 	ôDð(FØ
0ðFàðFð ðFð ð	Fð
 	ôFð-Øð-àð-ð ð-ð ð	-ð
 ð-ð 
ð-ð 	ô-÷&DGñ DGôN,5�˜‘õ ,5r%   