§
    ž²Åjtj  ã                   óÜ  — d dl Z d dlZd dlZd dlmZmZmZ d dlmZm	Z	m
Z
 ddlmZ ddlmZmZ ddlmZ e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        i
Ze	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        i
Ze	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        i
Ze	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        e	j        i
Zd„ Zd	ed
         fd„Z  ej!        d¬¦  «         G d„ de
¦  «        ¦   «         Z" ej!        d¬¦  «         G d„ de
¦  «        ¦   «         Z# ej!        d¬¦  «         G d„ de
¦  «        ¦   «         Z$ ej!        d¬¦  «         G d„ de
¦  «        ¦   «         Z% ej!        d¬¦  «         G d„ de
¦  «        ¦   «         Z& ej!        d¬¦  «         G d„ de¦  «        ¦   «         Z' ej!        d¬¦  «         G d„ de'¦  «        ¦   «         Z( ej!        d¬¦  «         G d„ de¦  «        ¦   «         Z) ej!        d¬¦  «         G d„ de
¦  «        ¦   «         Z* ej!        d¬¦  «         G d „ d!e¦  «        ¦   «         Z+ ej!        d¬¦  «         G d"„ d#e)¦  «        ¦   «         Z, ej!        d¬¦  «         G d$„ d%e)¦  «        ¦   «         Z- ej!        d¬¦  «         G d&„ d'e
¦  «        ¦   «         Z. G d(„ d)ej/        ¦  «        Z0 ej!        d¬¦  «         G d*„ d+e¦  «        ¦   «         Z1 ej!        d¬¦  «         G d,„ d-e¦  «        ¦   «         Z2 ej!        d¬¦  «         G d.„ d/e¦  «        ¦   «         Z3 ej!        d¬¦  «         G d0„ d1e¦  «        ¦   «         Z4 ej!        d¬¦  «         G d2„ d3e¦  «        ¦   «         Z5 G d4„ d5e¦  «        Z6 ej!        d¬¦  «         G d6„ d7e¦  «        ¦   «         Z7 ej!        d¬¦  «         G d8„ d9e¦  «        ¦   «         Z8 ej!        d¬¦  «         G d:„ d;e8¦  «        ¦   «         Z9 ej!        d¬¦  «         G d<„ d=e8¦  «        ¦   «         Z: ej!        d¬¦  «         G d>„ d?e¦  «        ¦   «         Z; ej!        d¬¦  «         G d@„ dAe¦  «        ¦   «         Z< ej!        d¬¦  «         G dB„ dCe¦  «        ¦   «         Z= ej!        d¬¦  «         G dD„ dEe¦  «        ¦   «         Z> ej!        d¬¦  «         G dF„ dGe>¦  «        ¦   «         Z? ej!        d¬¦  «         G dH„ dIe?¦  «        ¦   «         Z@ ej!        d¬¦  «         G dJ„ dKe>¦  «        ¦   «         ZA ej!        d¬¦  «         G dL„ dMe
¦  «        ¦   «         ZB ej!        d¬¦  «         G dN„ dOe
¦  «        ¦   «         ZC ej!        d¬¦  «         G dP„ dQe
¦  «        ¦   «         ZD ej!        d¬¦  «         G dR„ dSe¦  «        ¦   «         ZE ej!        d¬¦  «         G dT„ dUe¦  «        ¦   «         ZF ej!        d¬¦  «         G dV„ dWe¦  «        ¦   «         ZG ej!        d¬¦  «         G dX„ dYe¦  «        ¦   «         ZH ej!        d¬¦  «         G dZ„ d[e
¦  «        ¦   «         ZI ej!        d¬¦  «         G d\„ d]e
¦  «        ¦   «         ZJd^d_œd	e
fd`„ZKd	e
fda„ZLd	e
fdb„ZMd	e
fdc„ZNd	e
fdd„ZOdS )eé    N)ÚAnyÚOptionalÚUnion)ÚChainedSourceÚGuardSourceÚSourceé   )Úutils)Úcreate_call_functionÚcreate_instruction)Ú	enum_reprc                 ó    — t          | t          ¦  «        rdS 	 |                      ¦   «         t          j        k    rdS n# t
          $ r Y nw xY wdS ©NTF)Ú
isinstanceÚConstantSourceÚguard_sourcer   ÚCONSTANTÚNotImplementedError©Úsources    úEC:\Projects\Historical\venv\Lib\site-packages\torch/_dynamo/source.pyÚis_constant_sourcer   M   si   € Ý�&�.Ñ)Ô)ð ØˆtðØ×ÒÑ Ô ¥KÔ$8Ò8Ð8Ø�4ð 9øåð ð ð Øˆðøøøð ˆ5s   ™"> ¾
AÁ
Ar   )ÚGetItemSourceÚODictGetItemSourcec                 óª  — | j                              |¦  «         t          | j        t          ¦  «        r| j                             |¦  «         d S |rSt          | t
          ¦  «        sJ ‚|                     |                     |                      ¦   «         ¦  «        ¦  «         d S |                     |                     | j        ¦  «        ¦  «         d S ©N)	ÚbaseÚreconstructr   Úindexr   r   Úappend_outputÚcreate_load_constÚunpack_slice)r   ÚcodegenÚindex_is_slices      r   Úreconstruct_getitemr%   Y   sÈ   € ð „K×Ò˜GÑ$Ô$Ð$Ý�&”,¥Ñ'Ô'ð KØŒ× Ò  Ñ)Ô)Ð)Ð)Ð)àð 	KÝ˜f¥mÑ4Ô4Ð4Ð4Ð4Ø×!Ò! '×";Ò";¸F×<OÒ<OÑ<QÔ<QÑ"RÔ"RÑSÔSÐSÐSÐSà×!Ò! '×";Ò";¸F¼LÑ"IÔ"IÑJÔJÐJÐJÐJó    T)Úfrozenc                   óH   — e Zd ZU eed<   dZeed<   dZeed<   d„ Zd„ Z	d„ Z
dS )	ÚLocalSourceÚ
local_nameFÚis_inputÚis_derefed_cell_contentsc                 ó¦   — | j         r|                     | j        ¦  «         d S |                     |                     | j        ¦  «        ¦  «         d S r   )r,   Ú
load_derefr*   r    Úcreate_load©Úselfr#   s     r   r   zLocalSource.reconstructs   sT   € ØÔ(ð 	HØ×Ò˜tœÑ/Ô/Ð/Ð/Ð/à×!Ò! '×"5Ò"5°d´oÑ"FÔ"FÑGÔGÐGÐGÐGr&   c                 ó   — t           j        S r   )r   ÚLOCAL©r1   s    r   r   zLocalSource.guard_sourcey   s   € ÝÔ Ð r&   c                 ó2   — dt          | j        ¦  «        › d�S )NzL[ú])Úreprr*   r4   s    r   ÚnamezLocalSource.name|   s   € Ø,•D˜œÑ)Ô)Ð,Ð,Ð,Ð,r&   N)Ú__name__Ú
__module__Ú__qualname__ÚstrÚ__annotations__r+   Úboolr,   r   r   r8   © r&   r   r)   r)   g   st   € € € € € € à€O€O�Oð €HˆdÐÐÑð
 &+Ð˜dÐ*Ð*Ñ*ðHð Hð Hð!ð !ð !ð-ð -ð -ð -ð -r&   r)   c                   ó,   — e Zd ZU eed<   d„ Zd„ Zd„ ZdS )ÚSyntheticLocalSourcer*   c                 ó`   — |                      |                     | j        ¦  «        ¦  «         d S r   )r    r/   r*   r0   s     r   r   z SyntheticLocalSource.reconstruct„   s,   € Ø×Ò˜g×1Ò1°$´/ÑBÔBÑCÔCÐCÐCÐCr&   c                 ó   — t           j        S r   )r   ÚSYNTHETIC_LOCALr4   s    r   r   z!SyntheticLocalSource.guard_source‡   s   € ÝÔ*Ð*r&   c                 ó   — d| j         ›d�S )NzSYNTHETIC_LOCAL[r6   )r*   r4   s    r   r8   zSyntheticLocalSource.nameŠ   s   € Ø6 $¤/Ð6Ð6Ð6Ð6r&   N©r9   r:   r;   r<   r=   r   r   r8   r?   r&   r   rA   rA   €   sO   € € € € € € à€O€O�OðDð Dð Dð+ð +ð +ð7ð 7ð 7ð 7ð 7r&   rA   c                   ó,   — e Zd ZU eed<   d„ Zd„ Zd„ ZdS )ÚRandomValueSourceÚrandom_call_indexc                 ó   — t           j        S r   )r   ÚRANDOM_VALUEr4   s    r   r   zRandomValueSource.guard_source’   s   € ÝÔ'Ð'r&   c                 ó  — |                      |                     |j        j        j        ¦  «        ¦  «         |                      |                     | j        ¦  «        ¦  «         |                      t          d¦  «        ¦  «         d S ©NÚBINARY_SUBSCR)r    r/   ÚtxÚoutputÚrandom_values_varr!   rI   r   r0   s     r   r   zRandomValueSource.reconstruct•   st   € Ø×Ò˜g×1Ò1°'´*Ô2CÔ2UÑVÔVÑWÔWÐWØ×Ò˜g×7Ò7¸Ô8NÑOÔOÑPÔPÐPØ×ÒÕ0°ÑAÔAÑBÔBÐBÐBÐBr&   c                 ó   — d| j         › �S )NÚrandom_value_)rI   r4   s    r   r8   zRandomValueSource.nameš   s   € Ø7˜tÔ5Ð7Ð7Ð7r&   N)r9   r:   r;   Úintr=   r   r   r8   r?   r&   r   rH   rH   Ž   sR   € € € € € € àÐÐÑð(ð (ð (ðCð Cð Cð
8ð 8ð 8ð 8ð 8r&   rH   c                   ó,   — e Zd ZU eed<   d„ Zd„ Zd„ ZdS )ÚGlobalSourceÚglobal_namec                 ód   — |                      |                     | j        d¬¦  «        ¦  «         d S ©NT©Úadd©r    Úcreate_load_globalrW   r0   s     r   r   zGlobalSource.reconstruct¢   s2   € Ø×Ò˜g×8Ò8¸Ô9IÈtÐ8ÑTÔTÑUÔUÐUÐUÐUr&   c                 ó   — t           j        S r   ©r   ÚGLOBALr4   s    r   r   zGlobalSource.guard_source¥   ó   € ÝÔ!Ð!r&   c                 ó2   — dt          | j        ¦  «        › d�S )NúG[r6   ©r7   rW   r4   s    r   r8   zGlobalSource.name¨   s   € Ø-•D˜Ô)Ñ*Ô*Ð-Ð-Ð-Ð-r&   NrF   r?   r&   r   rV   rV   ž   sR   € € € € € € àÐÐÑðVð Vð Vð"ð "ð "ð.ð .ð .ð .ð .r&   rV   c                   ó,   — e Zd ZU eed<   d„ Zd„ Zd„ ZdS )ÚGlobalWeakRefSourcerW   c                 ó‚   ‡ ‡— ‰                      ˆˆ fd„¦  «         ‰                     t          dd¦  «        ¦  «         d S )Nc                  ób   •— ‰                       ‰                      ‰j        d¬¦  «        ¦  «        S rY   r\   ©r#   r1   s   €€r   ú<lambda>z1GlobalWeakRefSource.reconstruct.<locals>.<lambda>²   s0   ø€ �G×)Ò)Ø×*Ò*¨4Ô+;ÀÐ*ÑFÔFñô € r&   r   F©Úadd_push_nullÚextend_outputr   r0   s   ``r   r   zGlobalWeakRefSource.reconstruct°   s\   øø€ Ø×Òðð ð ð ð ñ	
ô 	
ð 	
ð
 	×ÒÕ2°1°eÑ<Ô<Ñ=Ô=Ð=Ð=Ð=r&   c                 ó   — t           j        S r   r_   r4   s    r   r   z GlobalWeakRefSource.guard_source¸   ra   r&   c                 ó2   — dt          | j        ¦  «        › d�S )Nrc   z]()rd   r4   s    r   r8   zGlobalWeakRefSource.name»   s   € Ø/•D˜Ô)Ñ*Ô*Ð/Ð/Ð/Ð/r&   NrF   r?   r&   r   rf   rf   ¬   sO   € € € € € € àÐÐÑð>ð >ð >ð"ð "ð "ð0ð 0ð 0ð 0ð 0r&   rf   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚWeakRefCallSourcec                 ó‚   ‡ ‡— ‰                      ˆˆ fd„¦  «         ‰                     t          dd¦  «        ¦  «         d S )Nc                  ó8   •— ‰j                              ‰ ¦  «        S r   ©r   r   ri   s   €€r   rj   z/WeakRefCallSource.reconstruct.<locals>.<lambda>Â   s   ø€  d¤i×&;Ò&;¸GÑ&DÔ&D€ r&   r   Frk   r0   s   ``r   r   zWeakRefCallSource.reconstructÁ   sJ   øø€ Ø×ÒÐDÐDÐDÐDÐDÑEÔEÐEØ×ÒÕ2°1°eÑ<Ô<Ñ=Ô=Ð=Ð=Ð=r&   c                 ó4   — | j                              ¦   «         S r   ©r   r   r4   s    r   r   zWeakRefCallSource.guard_sourceÅ   ó   € ØŒy×%Ò%Ñ'Ô'Ð'r&   c                 ó:   — | j                              ¦   «         › d�S )Nz()©r   r8   r4   s    r   r8   zWeakRefCallSource.nameÈ   s   € Ø”)—.’.Ñ"Ô"Ð&Ð&Ð&Ð&r&   N©r9   r:   r;   r   r   r8   r?   r&   r   rq   rq   ¿   sA   € € € € € ð>ð >ð >ð(ð (ð (ð'ð 'ð 'ð 'ð 'r&   rq   c                   ó   — e Zd ZdS )ÚCallFunctionNoArgsSourceN©r9   r:   r;   r?   r&   r   r|   r|   Ì   ó   € € € € € à€Dr&   r|   c                   ó2   — e Zd ZU eed<   d„ Zd„ Zd„ Zd„ ZdS )Ú
AttrSourceÚmemberc                 óJ  — | j         s
J d¦   «         ‚d| j        v rˆ| j                             d¦  «        }t                               | dt          | j         d                     |d d…         ¦  «        ¦  «        ¦  «         t                               | d|d         ¦  «         d S d S )Nz9Can't construct an AttrSource without a valid base sourceú.r   éÿÿÿÿr�   )r   r�   ÚsplitÚobjectÚ__setattr__r€   Újoin)r1   Úmember_partss     r   Ú__post_init__zAttrSource.__post_init__Õ   s§   € ØŒyÐUÐUÐUÑUÔUˆyØ�$”+ÐÐØœ;×,Ò,¨SÑ1Ô1ˆLÝ×ÒØ�f�j¨¬°C·H²H¸\È#È2È#Ô=NÑ4OÔ4OÑPÔPñô ð õ ×Ò˜t X¨|¸BÔ/?Ñ@Ô@Ð@Ð@Ð@ð Ðr&   c                 ó”   — | j                              |¦  «         |                     |                     | j        ¦  «        ¦  «         d S r   ©r   r   rm   Úcreate_load_attrsr�   r0   s     r   r   zAttrSource.reconstructÞ   óB   € ØŒ	×Ò˜gÑ&Ô&Ð&Ø×Ò˜g×7Ò7¸¼ÑDÔDÑEÔEÐEÐEÐEr&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zAttrSource.guard_sourceâ   rw   r&   c                 óÄ   — | j                              ¦   «         s%d| j                             ¦   «         › d| j         ›d�S | j                             ¦   «         › d| j         › �S )Nzgetattr(ú, ú)rƒ   )r�   Úisidentifierr   r8   r4   s    r   r8   zAttrSource.nameå   sb   € ØŒ{×'Ò'Ñ)Ô)ð 	CØB˜dœiŸnšnÑ.Ô.ÐBÐB°$´+ÐBÐBÐBÐBØ”)—.’.Ñ"Ô"Ð2Ð2 T¤[Ð2Ð2Ð2r&   N)	r9   r:   r;   r<   r=   rŠ   r   r   r8   r?   r&   r   r€   r€   Ñ   sa   € € € € € € à€K€K�KðAð Að AðFð Fð Fð(ð (ð (ð3ð 3ð 3ð 3ð 3r&   r€   c                   ó$   — e Zd ZU dZeed<   d„ ZdS )ÚLocalCellSourcezƒ
    Conceptually, this class is `LocalSource` for cell objects implicitly
    generated by Python (e.g., captured variables).
    r*   c                 ó`   — |                      |                     | j        ¦  «        ¦  «         d S r   )r    Úcreate_load_closurer*   r0   s     r   r   zLocalCellSource.reconstructô   s.   € ð 	×Ò˜g×9Ò9¸$¼/ÑJÔJÑKÔKÐKÐKÐKr&   N)r9   r:   r;   Ú__doc__r<   r=   r   r?   r&   r   r•   r•   ë   s?   € € € € € € ðð ð
 €O€O�OðLð Lð Lð Lð Lr&   r•   c                   ó0   — e Zd ZU dZeed<   d„ Zd„ Zd„ ZdS )Ú
GradSourceÚgradr�   c                 ó”   — | j                              |¦  «         |                     |                     | j        ¦  «        ¦  «         d S r   rŒ   r0   s     r   r   zGradSource.reconstruct  rŽ   r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zGradSource.guard_source
  rw   r&   c                 óH   — | j                              ¦   «         › d| j        › �S )Nrƒ   )r   r8   r�   r4   s    r   r8   zGradSource.name  s$   € Ø”)—.’.Ñ"Ô"Ð2Ð2 T¤[Ð2Ð2Ð2r&   N)	r9   r:   r;   r�   r<   r=   r   r   r8   r?   r&   r   rš   rš     sV   € € € € € € à€FˆCÐÐÑðFð Fð Fð(ð (ð (ð3ð 3ð 3ð 3ð 3r&   rš   c                   ó   — e Zd Zd„ ZdS )ÚParamBufferSourcec                 óJ   — t           | j                             ¦   «                  S r   ©Ú#_GUARD_SOURCE_SPECIALIZED_NN_MODULEr   r   r4   s    r   r   zParamBufferSource.guard_source  ó   € Ý2°4´9×3IÒ3IÑ3KÔ3KÔLÐLr&   N©r9   r:   r;   r   r?   r&   r   r    r      s(   € € € € € ðMð Mð Mð Mð Mr&   r    c                   ó   — e Zd ZdS )ÚUnspecializedParamBufferSourceNr}   r?   r&   r   r§   r§     r~   r&   r§   c                   óB   — e Zd ZU dZee         ed<   d„ Zd„ Zd„ Z	d„ Z
dS )ÚEphemeralSourceNÚdescc                 ó   — t           j        S r   )r   Ú	EPHEMERALr4   s    r   r   zEphemeralSource.guard_source*  ó   € ÝÔ$Ð$r&   c                 ó0   — d| j         �
d| j         z   nd› d�S )Nz
<ephemeralz: Ú ú>)rª   r4   s    r   r8   zEphemeralSource.name-  s&   € ØP°´	Ð0E˜D 4¤9Ñ,Ð,È2ÐPÐPÐPÐPr&   c                 ó   — t           ‚r   ©r   ©r1   Úfns     r   Ú
make_guardzEphemeralSource.make_guard0  ó   € Ý!Ð!r&   c                 ó   — dS ©NTr?   r4   s    r   Úis_ephemeralzEphemeralSource.is_ephemeral3  ó   € Øˆtr&   )r9   r:   r;   rª   r   r<   r=   r   r8   rµ   r¹   r?   r&   r   r©   r©   &  si   € € € € € € à€Dˆ(�3Œ-ÐÐÑð%ð %ð %ðQð Qð Qð"ð "ð "ðð ð ð ð r&   r©   c                   ó    — e Zd ZdZdZdZd„ ZdS )ÚTensorPropertyr   r	   é   c                 óf   — | t           j        u rdS | t           j        u rdS | t           j        u rdS d S )NÚsizeÚstrideÚstorage_offset)r¼   ÚSIZEÚSTRIDEÚSTORAGE_OFFSETr4   s    r   Úmethod_namezTensorProperty.method_name<  sD   € Ø•>Ô&Ð&Ð&Ø�6Ø•^Ô*Ð*Ð*Ø�8Ø•^Ô2Ð2Ð2Ø#Ð#ð 3Ð2r&   N)r9   r:   r;   rÂ   rÃ   rÄ   rÅ   r?   r&   r   r¼   r¼   7  s2   € € € € € Ø€DØ€FØ€Nð$ð $ð $ð $ð $r&   r¼   c                   óL   — e Zd ZU eed<   dZee         ed<   d„ Zd„ Z	d„ Z
d„ ZdS )ÚTensorPropertySourceÚpropNÚidxc                 óf   — | j         €J ‚| j        t          j        u r| j        �J ‚d S | j        €J ‚d S r   )r   rÈ   r¼   rÄ   rÉ   r4   s    r   rŠ   z"TensorPropertySource.__post_init__J  sH   € ØŒyÐ$Ð$Ð$ØŒ9�Ô5Ð5Ð5Ø”8Ð#Ð#Ð#Ð#Ð#à”8Ð'Ð'Ð'Ð'Ð'r&   c                 ó0  ‡ ‡— ‰                      ˆˆ fd„¦  «         ‰ j                             ‰¦  «         ‰ j        �-‰                     ‰                     ‰ j        ¦  «        ¦  «         ‰                     t          ‰ j        �dndd¦  «        ¦  «         d S )Nc                  óx   •— ‰                       t          j        d‰j                             ¦   «         › �¦  «        S )NÚcall_)Úload_import_fromr
   r9   rÈ   rÅ   ri   s   €€r   rj   z2TensorPropertySource.reconstruct.<locals>.<lambda>S  s5   ø€ �G×,Ò,Ý”Ð A¨¬	×(=Ò(=Ñ(?Ô(?Ð AÐ Añô € r&   r½   r	   F)rl   r   r   rÉ   r    r!   rm   r   r0   s   ``r   r   z TensorPropertySource.reconstructQ  s³   øø€ Ø×Òðð ð ð ð ñ	
ô 	
ð 	
ð
 	Œ	×Ò˜gÑ&Ô&Ð&àŒ8ÐØ×!Ò! '×";Ò";¸D¼HÑ"EÔ"EÑFÔFÐFØ×ÒÝ  d¤hÐ&:  ÀÀ5ÑIÔIñ	
ô 	
ð 	
ð 	
ð 	
r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   z!TensorPropertySource.guard_source_  rw   r&   c                 ó|  — | j         t          j        u r$| j                             ¦   «         › d| j        › d�S | j         t          j        u r$| j                             ¦   «         › d| j        › d�S | j         t          j        u r%| j        �J ‚| j                             ¦   «         › d�S t          d| j         › �¦  «        ‚)Nz.size()[r6   z
.stride()[z.storage_offset()z
unhandled )	rÈ   r¼   rÂ   r   r8   rÉ   rÃ   rÄ   ÚAssertionErrorr4   s    r   r8   zTensorPropertySource.nameb  s¾   € ØŒ9�Ô+Ð+Ð+Ø”i—n’nÑ&Ô&Ð;Ð;°´Ð;Ð;Ð;Ð;ØŒY�.Ô/Ð/Ð/Ø”i—n’nÑ&Ô&Ð=Ð=°$´(Ð=Ð=Ð=Ð=ØŒY�.Ô7Ð7Ð7Ø”8Ð#Ð#Ð#Ø”i—n’nÑ&Ô&Ð9Ð9Ð9Ð9å Ð!9¨d¬iÐ!9Ð!9Ñ:Ô:Ð:r&   )r9   r:   r;   r¼   r=   rÉ   r   rT   rŠ   r   r   r8   r?   r&   r   rÇ   rÇ   E  sr   € € € € € € à
ÐÐÑØ€Cˆ�#ŒÐÐÑð(ð (ð (ð
ð 
ð 
ð(ð (ð (ð	;ð 	;ð 	;ð 	;ð 	;r&   rÇ   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚNegateSourcec                 ó   — | j         €J ‚d S r   ©r   r4   s    r   rŠ   zNegateSource.__post_init__p  ó   € ØŒyÐ$Ð$Ð$Ð$Ð$r&   c                 ó   — t           ‚r   r²   r0   s     r   r   zNegateSource.reconstructs  r¶   r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zNegateSource.guard_sourcev  rw   r&   c                 ó:   — | j                              ¦   «         › d�S )Nz
.__neg__()ry   r4   s    r   r8   zNegateSource.namey  s   € à”)—.’.Ñ"Ô"Ð.Ð.Ð.Ð.r&   N©r9   r:   r;   rŠ   r   r   r8   r?   r&   r   rÓ   rÓ   n  sP   € € € € € ð%ð %ð %ð"ð "ð "ð(ð (ð (ð/ð /ð /ð /ð /r&   rÓ   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚConvertIntSourcec                 ó   — | j         €J ‚d S r   rÕ   r4   s    r   rŠ   zConvertIntSource.__post_init__€  rÖ   r&   c                 ó:   — | j                              |¦  «         d S r   rt   r0   s     r   r   zConvertIntSource.reconstructƒ  ó   € ØŒ	×Ò˜gÑ&Ô&Ð&Ð&Ð&r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zConvertIntSource.guard_source†  rw   r&   c                 ó<   — d| j                              ¦   «         › d�S )Nz!cast_symbool_to_symint_guardless(r’   ry   r4   s    r   r8   zConvertIntSource.name‰  s   € ØF°4´9·>²>Ñ3CÔ3CÐFÐFÐFÐFr&   NrÚ   r?   r&   r   rÜ   rÜ   ~  sU   € € € € € ð%ð %ð %ð'ð 'ð 'ð(ð (ð (ðGð Gð Gð Gð Gr&   rÜ   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚFlattenScriptObjectSourcec                 ó   — | j         €J ‚d S r   rÕ   r4   s    r   rŠ   z'FlattenScriptObjectSource.__post_init__�  rÖ   r&   c                 ó:   — | j                              |¦  «         d S r   rt   r0   s     r   r   z%FlattenScriptObjectSource.reconstruct’  rß   r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   z&FlattenScriptObjectSource.guard_source•  rw   r&   c                 ó:   — | j                              ¦   «         › d�S )Nz.__obj_flatten__()ry   r4   s    r   r8   zFlattenScriptObjectSource.name˜  s   € Ø”)—.’.Ñ"Ô"Ð6Ð6Ð6Ð6r&   NrÚ   r?   r&   r   rã   rã   �  sP   € € € € € ð%ð %ð %ð'ð 'ð 'ð(ð (ð (ð7ð 7ð 7ð 7ð 7r&   rã   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚScriptObjectQualifiedNameSourcec                 ó   — | j         €J ‚d S r   rÕ   r4   s    r   rŠ   z-ScriptObjectQualifiedNameSource.__post_init__ž  rÖ   r&   c                 ó:   — | j                              |¦  «         d S r   rt   r0   s     r   r   z+ScriptObjectQualifiedNameSource.reconstruct¡  rß   r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   z,ScriptObjectQualifiedNameSource.guard_source¤  rw   r&   c                 ó:   — | j                              ¦   «         › d�S )Nz._type().qualified_name()ry   r4   s    r   r8   z$ScriptObjectQualifiedNameSource.name§  s   € Ø”)—.’.Ñ"Ô"Ð=Ð=Ð=Ð=r&   NrÚ   r?   r&   r   ré   ré   œ  sP   € € € € € ð%ð %ð %ð'ð 'ð 'ð(ð (ð (ð>ð >ð >ð >ð >r&   ré   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚAttrProxySourcec                 ó:   — | j                              |¦  «         d S r   rt   r0   s     r   r   zAttrProxySource.reconstruct¬  rß   r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zAttrProxySource.guard_source¯  rw   r&   c                 ó:   — | j                              ¦   «         › d�S )Nz.get_base()ry   r4   s    r   r8   zAttrProxySource.name²  s   € Ø”)—.’.Ñ"Ô"Ð/Ð/Ð/Ð/r&   Nrz   r?   r&   r   rï   rï   «  sA   € € € € € ð'ð 'ð 'ð(ð (ð (ð0ð 0ð 0ð 0ð 0r&   rï   c                   ó°   — e Zd ZU eeef         ed<   dZeed<    e	j
        ddd¬¦  «        Z
eed<    e	j
        ddd¬¦  «        Zeed<   d„ Zd„ Zd	„ Zd
„ ZdS )ÚDefaultsSourceÚidx_keyFÚis_kw)Úinitr7   ÚcompareÚfieldÚ_namec           
      ó2  — | j         s
J d¦   «         ‚| j        r€t          | j        t          ¦  «        sJ ‚t
                               | dd¦  «         t
                               | d| j                              ¦   «         › d| j        › d| j        › d�¦  «         d S t          | j        t          ¦  «        sJ ‚t
                               | dd¦  «         t
                               | d| j                              ¦   «         › d| j        › d	| j        › d
�¦  «         d S )Nz]Base must be a valid source in order to properly track and guard this Defaults to its origin.rù   Ú__kwdefaults__rú   rƒ   z['z']Ú__defaults__ú[r6   )
r   rö   r   rõ   r<   r†   r‡   r8   rù   rT   r4   s    r   rŠ   zDefaultsSource.__post_init__½  s6  € àŒIð	kð 	kàjñ	kô 	kØàŒ:ð 	Ý˜dœl­CÑ0Ô0Ð0Ð0Ð0Ý×Ò˜t WÐ.>Ñ?Ô?Ð?Ý×ÒØ�g $¤)§.¢.Ñ"2Ô"2ÐSÐS°T´ZÐSÐSÀ4Ä<ÐSÐSÐSñô ð ð ð õ ˜dœl­CÑ0Ô0Ð0Ð0Ð0Ý×Ò˜t W¨nÑ=Ô=Ð=Ý×ÒØ�g $¤)§.¢.Ñ"2Ô"2ÐQÐQ°T´ZÐQÐQÀ$Ä,ÐQÐQÐQñô ð ð ð r&   c                 ó2  — | j                              |¦  «         |                     |                     | j        ¦  «        ¦  «         |                     |                     | j        ¦  «        ¦  «         |                     t          d¦  «        ¦  «         d S rM   )	r   r   rm   r�   rù   r    r!   rõ   r   r0   s     r   r   zDefaultsSource.reconstructÎ  sƒ   € ØŒ	×Ò˜gÑ&Ô&Ð&Ø×Ò˜g×7Ò7¸¼
ÑCÔCÑDÔDÐDØ×Ò˜g×7Ò7¸¼ÑEÔEÑFÔFÐFØ×ÒÕ0°ÑAÔAÑBÔBÐBÐBÐBr&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zDefaultsSource.guard_sourceÔ  rw   r&   c                 ó   — | j         S r   )rú   r4   s    r   r8   zDefaultsSource.name×  s
   € ØŒzÐr&   N)r9   r:   r;   r   rT   r<   r=   rö   r>   Údataclassesrù   rú   rŠ   r   r   r8   r?   r&   r   rô   rô   ¶  sÁ   € € € € € € à�3˜�8Œ_ÐÐÑØ€Eˆ4ÐÐÑØ"�Ô"¨°EÀ5ÐIÑIÔI€Eˆ3ÐIÐIÑIØ"�Ô"¨°EÀ5ÐIÑIÔI€Eˆ3ÐIÐIÑIðð ð ð"Cð Cð Cð(ð (ð (ðð ð ð ð r&   rô   c                   óP   ‡ — e Zd ZU eed<   dZeed<   ˆ fd„Zd„ Zd„ Z	d„ Z
d„ Zˆ xZS )	r   r   Fr$   c                 ó  •— | j         €J ‚t          | j        t          ¦  «        r]t	          ¦   «                              d| j                             ¦   «         ¦  «         t	          ¦   «                              dd¦  «         d S d S )Nr   r$   T)r   r   r   ÚsliceÚsuperr‡   Ú
__reduce__)r1   Ú	__class__s    €r   rŠ   zGetItemSource.__post_init__à  sx   ø€ ØŒyÐ$Ð$Ð$Ý�d”j¥%Ñ(Ô(ð 	8å‰GŒG×Ò ¨¬×)>Ò)>Ñ)@Ô)@ÑAÔAÐAÝ‰GŒG×ÒÐ 0°$Ñ7Ô7Ð7Ð7Ð7ð	8ð 	8r&   c                 óx   — t          | || j        ¬¦  «         |                     t          d¦  «        ¦  «         d S )N©r$   rN   )r%   r$   r    r   r0   s     r   r   zGetItemSource.reconstructç  s=   € Ý˜D '¸$Ô:MÐNÑNÔNÐNØ×ÒÕ0°ÑAÔAÑBÔBÐBÐBÐBr&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zGetItemSource.guard_sourceë  rw   r&   c                 ó2   — | j         sJ ‚| j        \  }} ||Ž S r   )r$   r   )r1   Úslice_classÚ
slice_argss      r   r"   zGetItemSource.unpack_sliceî  s*   € ØÔ"Ð"Ð"Ð"Ø"&¤*Ñˆ�ZØˆ{˜JÐ'Ð'r&   c                 ó–  — t          | j        t          ¦  «        r_t          | j        t          ¦  «        st	          d¦  «        ‚| j                             ¦   «         › d| j                             ¦   «         › d�S | j        r1| j                             ¦   «         › d|                      ¦   «         ›d�S t          | j        t          j
        ¦  «        rV| j                             ¦   «         › dt          | j        |                      ¦   «                              ¦   «         ¦  «        › d�S | j                             ¦   «         › d| j        ›d�S )NzBGetItemSource index must be a constant, enum or ConstDictKeySourcerþ   r6   )r   r   r   ÚConstDictKeySourceÚ
ValueErrorr   r8   r$   r"   ÚenumÚEnumr   r   Úis_localr4   s    r   r8   zGetItemSource.nameó  s/  € õ �d”j¥&Ñ)Ô)ð 	9Ý˜dœjÕ*<Ñ=Ô=ð Ý ØXñô ð ð ”i—n’nÑ&Ô&Ð=Ð=¨¬¯ªÑ):Ô):Ð=Ð=Ð=Ð=ØÔ ð 	9Ø”i—n’nÑ&Ô&ÐAÐA¨×):Ò):Ñ)<Ô)<ÐAÐAÐAÐAÝ˜œ
¥D¤IÑ.Ô.ð 	9Ø”i—n’nÑ&Ô&ÐaÐa­°4´:¸t×?PÒ?PÑ?RÔ?R×?[Ò?[Ñ?]Ô?]Ñ)^Ô)^ÐaÐaÐaÐaà”i—n’nÑ&Ô&Ð8Ð8¨¬Ð8Ð8Ð8Ð8r&   )r9   r:   r;   r   r=   r$   r>   rŠ   r   r   r"   r8   Ú__classcell__)r  s   @r   r   r   Û  s’   ø€ € € € € € à€J€J�JØ €N�DÐ Ð Ñ ð8ð 8ð 8ð 8ð 8ðCð Cð Cð(ð (ð (ð(ð (ð (ð
9ð 9ð 9ð 9ð 9ð 9ð 9r&   r   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )r  c                 ó   — dS r¸   r?   r4   s    r   Úis_dict_keyzConstDictKeySource.is_dict_key	  rº   r&   c                 ó  ‡— ‰                      ˆfd„¦  «         | j                             ‰¦  «         ‰                     ‰                     | j        ¦  «        ¦  «         ‰                     t          dd¦  «        ¦  «         d S )Nc                  óD   •— ‰                       t          j        d¦  «        S )NÚdict_keys_getitem©rÎ   r
   r9   ©r#   s   €r   rj   z0ConstDictKeySource.reconstruct.<locals>.<lambda>  s   ø€ �G×,Ò,­U¬^Ð=PÑQÔQ€ r&   r½   F©rl   r   r   r    r!   r   rm   r   r0   s    `r   r   zConstDictKeySource.reconstruct  sˆ   ø€ Ø×ÒØQÐQÐQÐQñ	
ô 	
ð 	
ð 	Œ	×Ò˜gÑ&Ô&Ð&Ø×Ò˜g×7Ò7¸¼
ÑCÔCÑDÔDÐDØ×ÒÕ2°1°eÑ<Ô<Ñ=Ô=Ð=Ð=Ð=r&   c                 óL   — d| j                              ¦   «         › d| j        ›d�S )Nzlist(z	.keys())[r6   ©r   r8   r   r4   s    r   r8   zConstDictKeySource.name  s)   € àA�t”y—~’~Ñ'Ô'ÐAÐA°$´*ÐAÐAÐAÐAr&   N)r9   r:   r;   r  r   r8   r?   r&   r   r  r    sF   € € € € € ðð ð ð>ð >ð >ðBð Bð Bð Bð Br&   r  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTupleIteratorGetItemSourcec                 ó  ‡— ‰                      ˆfd„¦  «         | j                             ‰¦  «         ‰                     ‰                     | j        ¦  «        ¦  «         ‰                     t          dd¦  «        ¦  «         d S )Nc                  óD   •— ‰                       t          j        d¦  «        S )NÚtuple_iterator_getitemr  r  s   €r   rj   z8TupleIteratorGetItemSource.reconstruct.<locals>.<lambda>  s   ø€ �G×,Ò,­U¬^Ð=UÑVÔV€ r&   r½   Fr  r0   s    `r   r   z&TupleIteratorGetItemSource.reconstruct  sˆ   ø€ Ø×ÒØVÐVÐVÐVñ	
ô 	
ð 	
ð 	Œ	×Ò˜gÑ&Ô&Ð&Ø×Ò˜g×7Ò7¸¼
ÑCÔCÑDÔDÐDØ×ÒÕ2°1°eÑ<Ô<Ñ=Ô=Ð=Ð=Ð=r&   c                 óL   — d| j                              ¦   «         › d| j        ›d�S )Nz___tuple_iterator_getitem(r‘   r’   r   r4   s    r   r8   zTupleIteratorGetItemSource.name#  s)   € ØO¨D¬I¯NªNÑ,<Ô,<ÐOÐOÀÄ
ÐOÐOÐOÐOr&   N)r9   r:   r;   r   r8   r?   r&   r   r"  r"    s7   € € € € € ð>ð >ð >ðPð Pð Pð Pð Pr&   r"  c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )Ú
TypeSourcec                 ó   — | j         €J ‚d S r   rÕ   r4   s    r   rŠ   zTypeSource.__post_init__)  rÖ   r&   c                 ó²   ‡— ‰                      ˆfd„¦  «         | j                             ‰¦  «         ‰                     t	          dd¦  «        ¦  «         d S )Nc                  ó0   •— ‰                       dd¦  «        S )NÚbuiltinsÚtype©rÎ   r  s   €r   rj   z(TypeSource.reconstruct.<locals>.<lambda>-  s   ø€  g×&>Ò&>¸zÈ6Ñ&RÔ&R€ r&   r	   F©rl   r   r   rm   r   r0   s    `r   r   zTypeSource.reconstruct,  s\   ø€ Ø×ÒÐRÐRÐRÐRÑSÔSÐSØŒ	×Ò˜gÑ&Ô&Ð&Ø×ÒÕ2°1°eÑ<Ô<Ñ=Ô=Ð=Ð=Ð=r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zTypeSource.guard_source1  rw   r&   c                 ó<   — d| j                              ¦   «         › d�S )Nztype(r’   ry   r4   s    r   r8   zTypeSource.name4  s   € Ø*�t”y—~’~Ñ'Ô'Ð*Ð*Ð*Ð*r&   NrÚ   r?   r&   r   r(  r(  '  sP   € € € € € ð%ð %ð %ð>ð >ð >ð
(ð (ð (ð+ð +ð +ð +ð +r&   r(  c                   ó2   — e Zd ZU eed<   d„ Zd„ Zd„ Zd„ ZdS )r   r   c                 ó   — | j         €J ‚d S r   rÕ   r4   s    r   rŠ   z ODictGetItemSource.__post_init__<  rÖ   r&   c                 ó¢   ‡— ‰                      ˆfd„¦  «         t          | ‰d¬¦  «         ‰                     t          dd¦  «        ¦  «         d S )Nc                  ór   •— ‰                       ‰                      t          j        j        ¦  «        ¦  «        S r   )r    Úcreate_load_const_uncheckedÚcollectionsÚOrderedDictÚ__getitem__r  s   €r   rj   z0ODictGetItemSource.reconstruct.<locals>.<lambda>A  s.   ø€ �G×)Ò)Ø×3Ò3µKÔ4KÔ4WÑXÔXñô € r&   Fr
  r½   )rl   r%   rm   r   r0   s    `r   r   zODictGetItemSource.reconstruct?  sk   ø€ Ø×Òðð ð ð ñ	
ô 	
ð 	
õ
 	˜D '¸%Ð@Ñ@Ô@Ð@Ø×ÒÕ2°1°eÑ<Ô<Ñ=Ô=Ð=Ð=Ð=r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zODictGetItemSource.guard_sourceH  rw   r&   c                 óš  — t          | j        t          ¦  «        r<d| j        j        › d| j        j        › �}d| j                             ¦   «         › d|› d�S t          | j        t          ¦  «        r7d| j                             ¦   «         › d| j                             ¦   «         › d�S d| j                             ¦   «         › d| j        ›d�S )Nz__load_module("z").z___odict_getitem(r‘   r’   )r   r   r-  r:   r;   r   r8   r   )r1   Úreps     r   r8   zODictGetItemSource.nameK  sÈ   € Ý�d”j¥$Ñ'Ô'ð 	KØW D¤JÔ$9ÐWÐW¸d¼jÔ>UÐWÐWˆCØA t¤y§~¢~Ñ'7Ô'7ÐAÐA¸3ÐAÐAÐAÐAÝ˜œ
¥FÑ+Ô+ð 	KØO t¤y§~¢~Ñ'7Ô'7ÐOÐO¸4¼:¿?º?Ñ;LÔ;LÐOÐOÐOÐOàJ t¤y§~¢~Ñ'7Ô'7ÐJÐJ¸4¼:ÐJÐJÐJÐJr&   N)	r9   r:   r;   r   r=   rŠ   r   r   r8   r?   r&   r   r   r   8  s`   € € € € € € à€J€J�Jð%ð %ð %ð>ð >ð >ð(ð (ð (ðKð Kð Kð Kð Kr&   r   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚOptimizerSourcec                 ó:   — | j                              |¦  «         d S r   rt   r0   s     r   r   zOptimizerSource.reconstructW  rß   r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zOptimizerSource.guard_sourceZ  rw   r&   c                 ó4   — | j                              ¦   «         S r   ry   r4   s    r   r8   zOptimizerSource.name]  ó   € ØŒy�~Š~ÑÔÐr&   Nrz   r?   r&   r   r>  r>  U  sA   € € € € € ð'ð 'ð 'ð(ð (ð (ð ð  ð  ð  ð  r&   r>  c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚNNModuleSourcec                 ó:   — | j                              |¦  «         d S r   rt   r0   s     r   r   zNNModuleSource.reconstructc  rß   r&   c                 óJ   — t           | j                             ¦   «                  S r   r¢   r4   s    r   r   zNNModuleSource.guard_sourcef  r¤   r&   c                 ó4   — | j                              ¦   «         S r   ry   r4   s    r   r8   zNNModuleSource.namei  rB  r&   Nrz   r?   r&   r   rD  rD  a  sD   € € € € € ð'ð 'ð 'ðMð Mð Mð ð  ð  ð  ð  r&   rD  c                   ó   — e Zd Zd„ ZdS )ÚUnspecializedNNModuleSourcec                 óJ   — t           | j                             ¦   «                  S r   )Ú%_GUARD_SOURCE_UNSPECIALIZED_NN_MODULEr   r   r4   s    r   r   z(UnspecializedNNModuleSource.guard_sourceo  s   € Ý4°T´Y×5KÒ5KÑ5MÔ5MÔNÐNr&   Nr¥   r?   r&   r   rI  rI  m  s(   € € € € € ðOð Oð Oð Oð Or&   rI  c                   ó   — e Zd Zd„ ZdS )Ú"UnspecializedBuiltinNNModuleSourcec                 óJ   — t           | j                             ¦   «                  S r   )Ú-_GUARD_SOURCE_UNSPECIALIZED_BUILTIN_NN_MODULEr   r   r4   s    r   r   z/UnspecializedBuiltinNNModuleSource.guard_sourceu  s   € Ý<¸T¼Y×=SÒ=SÑ=UÔ=UÔVÐVr&   Nr¥   r?   r&   r   rM  rM  s  s(   € € € € € ðWð Wð Wð Wð Wr&   rM  c                   ó   — e Zd Zd„ ZdS )ÚFSDPNNModuleSourcec                 óJ   — t           | j                             ¦   «                  S r   )Ú_GUARD_SOURCE_FSDP_MODULEr   r   r4   s    r   r   zFSDPNNModuleSource.guard_source{  s   € Ý(¨¬×)?Ò)?Ñ)AÔ)AÔBÐBr&   Nr¥   r?   r&   r   rQ  rQ  y  s(   € € € € € ðCð Cð Cð Cð Cr&   rQ  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚGlobalStateSourcec                 ó   — dS ©Nr¯   r?   r4   s    r   r8   zGlobalStateSource.name�  ó   € Øˆrr&   c                 ó   — t           j        S r   r_   r4   s    r   r   zGlobalStateSource.guard_source„  ra   r&   N©r9   r:   r;   r8   r   r?   r&   r   rU  rU    s2   € € € € € ðð ð ð"ð "ð "ð "ð "r&   rU  c                   ó2   — e Zd ZU eed<   d„ Zd„ Zd„ Zd„ ZdS )ÚTorchFunctionModeStackSourceÚindc                 ó2   — d|                       ¦   «         › d�S )Nz$___get_torch_function_mode_stack_at(r’   )Ú
_get_indexr4   s    r   r8   z!TorchFunctionModeStackSource.nameŒ  s   € ØJ°d·o²oÑ6GÔ6GÐJÐJÐJÐJr&   c                 óB   — ddl m} |                     | j        ¦  «        S )Nr	   )ÚTorchFunctionModeStackVariable)Úvariables.torch_functionra  Úget_mode_indexr]  )r1   ra  s     r   r_  z'TorchFunctionModeStackSource._get_index�  s*   € ØLÐLÐLÐLÐLÐLà-×<Ò<¸T¼XÑFÔFÐFr&   c                 óô   ‡— ‰                      ˆfd„¦  «         ‰                     ‰                     |                      ¦   «         ¦  «        g¦  «         ‰                     t	          dd¦  «        ¦  «         d S )Nc                  óD   •— ‰                       t          j        d¦  «        S )NÚ get_torch_function_mode_stack_atr  r  s   €r   rj   z:TorchFunctionModeStackSource.reconstruct.<locals>.<lambda>–  s   ø€ �G×,Ò,Ý”Ð Bñô € r&   r	   F)rl   rm   r!   r_  r   r0   s    `r   r   z(TorchFunctionModeStackSource.reconstruct”  s…   ø€ Ø×Òðð ð ð ñ	
ô 	
ð 	
ð
 	×Ò˜w×8Ò8¸¿ºÑ9JÔ9JÑKÔKÐLÑMÔMÐMØ×ÒÕ2°1°eÑ<Ô<Ñ=Ô=Ð=Ð=Ð=r&   c                 ó   — t           j        S r   r_   r4   s    r   r   z)TorchFunctionModeStackSource.guard_source�  ra   r&   N)	r9   r:   r;   rT   r=   r8   r_  r   r   r?   r&   r   r\  r\  ˆ  sa   € € € € € € à	€H€H�HðKð Kð KðGð Gð Gð
>ð >ð >ð"ð "ð "ð "ð "r&   r\  c                   ó2   — e Zd ZU eed<   d„ Zd„ Zd„ Zd„ ZdS )r   Úsource_namec                 ód   — |                      |                     | j        d¬¦  «        ¦  «         d S )NFrZ   )r    r]   ri  r0   s     r   r   zConstantSource.reconstruct¥  s2   € Ø×Ò˜g×8Ò8¸Ô9IÈuÐ8ÑUÔUÑVÔVÐVÐVÐVr&   c                 ó   — t           j        S r   )r   r   r4   s    r   r   zConstantSource.guard_source¨  s   € ÝÔ#Ð#r&   c                 ó   — | j         S r   )ri  r4   s    r   r8   zConstantSource.name«  s   € ØÔÐr&   c                 ó   — t           ‚r   r²   r³   s     r   rµ   zConstantSource.make_guard®  r¶   r&   N)	r9   r:   r;   r<   r=   r   r   r8   rµ   r?   r&   r   r   r   ¡  sa   € € € € € € àÐÐÑðWð Wð Wð$ð $ð $ð ð  ð  ð"ð "ð "ð "ð "r&   r   c                   ó&   — e Zd Zdefd„Zd„ Zd„ ZdS )ÚNumpyTensorSourceÚreturnc                 ó<   — d| j                              ¦   «         › d�S )Nz___from_numpy(r’   ry   r4   s    r   r8   zNumpyTensorSource.name´  s   € Ø3 ¤	§¢Ñ 0Ô 0Ð3Ð3Ð3Ð3r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zNumpyTensorSource.guard_source·  rw   r&   c                 ó²   ‡— ‰                      ˆfd„¦  «         | j                             ‰¦  «         ‰                     t	          dd¦  «        ¦  «         d S )Nc                  ó0   •— ‰                       dd¦  «        S )NÚtorchÚ	as_tensorr.  r  s   €r   rj   z/NumpyTensorSource.reconstruct.<locals>.<lambda>»  s   ø€  g×&>Ò&>¸wÈÑ&TÔ&T€ r&   r	   Fr/  r0   s    `r   r   zNumpyTensorSource.reconstructº  s\   ø€ Ø×ÒÐTÐTÐTÐTÑUÔUÐUØŒ	×Ò˜gÑ&Ô&Ð&Ø×ÒÕ2°1°eÑ<Ô<Ñ=Ô=Ð=Ð=Ð=r&   N)r9   r:   r;   r<   r8   r   r   r?   r&   r   ro  ro  ²  sM   € € € € € ð4�cð 4ð 4ð 4ð 4ð(ð (ð (ð>ð >ð >ð >ð >r&   ro  c                   ó    — e Zd Zdefd„Zd„ ZdS )ÚSubclassAttrListSourcerp  c                 ó:   — | j                              ¦   «         › d�S )Nz.__tensor_flatten__()[0]ry   r4   s    r   r8   zSubclassAttrListSource.nameÂ  s   € Ø”)—.’.Ñ"Ô"Ð<Ð<Ð<Ð<r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   z#SubclassAttrListSource.guard_sourceÅ  rw   r&   N©r9   r:   r;   r<   r8   r   r?   r&   r   rx  rx  À  s>   € € € € € ð=�cð =ð =ð =ð =ð(ð (ð (ð (ð (r&   rx  c                   ó    — e Zd Zdefd„Zd„ ZdS )ÚFloatTensorSourcerp  c                 ó<   — d| j                              ¦   «         › d�S )Nz___as_tensor(r’   ry   r4   s    r   r8   zFloatTensorSource.nameÍ  s   € Ø2˜tœyŸ~š~Ñ/Ô/Ð2Ð2Ð2Ð2r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   zFloatTensorSource.guard_sourceÐ  rw   r&   Nr{  r?   r&   r   r}  r}  Ë  s>   € € € € € ð3�cð 3ð 3ð 3ð 3ð(ð (ð (ð (ð (r&   r}  c                   ó    — e Zd Zdefd„Zd„ ZdS )ÚCallMethodItemSourcerp  c                 ó:   — | j                              ¦   «         › d�S )Nz.item()ry   r4   s    r   r8   zCallMethodItemSource.nameÖ  s   € Ø”)—.’.Ñ"Ô"Ð+Ð+Ð+Ð+r&   c                 ó4   — | j                              ¦   «         S r   rv   r4   s    r   r   z!CallMethodItemSource.guard_sourceÙ  rw   r&   Nr{  r?   r&   r   r�  r�  Ô  s>   € € € € € ð,�cð ,ð ,ð ,ð ,ð(ð (ð (ð (ð (r&   r�  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚShapeEnvSourcec                 ó   — dS rW  r?   r4   s    r   r8   zShapeEnvSource.nameâ  rX  r&   c                 ó   — t           j        S r   )r   Ú	SHAPE_ENVr4   s    r   r   zShapeEnvSource.guard_sourceå  r­   r&   NrZ  r?   r&   r   r…  r…  à  s2   € € € € € ðð ð ð%ð %ð %ð %ð %r&   r…  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚBackwardStateSourcec                 ó   — dS rW  r?   r4   s    r   r8   zBackwardStateSource.nameë  rX  r&   c                 ó   — t           j        S r   )r   ÚBACKWARD_STATEr4   s    r   r   z BackwardStateSource.guard_sourceî  s   € ÝÔ)Ð)r&   NrZ  r?   r&   r   rŠ  rŠ  é  s2   € € € € € ðð ð ð*ð *ð *ð *ð *r&   rŠ  F©Úonly_allow_inputc                ó    — t          | t          ¦  «        rt          | j        |¬¦  «        S t          | t          ¦  «        sdS |r	| j        sdS dS )NrŽ  FT)r   r   Úis_from_local_sourcer   r)   r+   )r   r�  s     r   r‘  r‘  ò  s]   € Ý�&�-Ñ(Ô(ð TÝ# F¤KÐBRÐSÑSÔSÐSÝ�f�kÑ*Ô*ð ØˆuØð  ¤ð ØˆuØˆ4r&   c                 ó†   — t          | t          ¦  «        rdS t          | t          ¦  «        rt          | j        ¦  «        S dS r   )r   r§   r   Ú)is_from_unspecialized_param_buffer_sourcer   r   s    r   r“  r“  ü  sB   € Ý�&Õ8Ñ9Ô9ð ØˆtÝ�&�-Ñ(Ô(ð FÝ8¸¼ÑEÔEÐEØˆ5r&   c                 ó†   — t          | t          ¦  «        rdS t          | t          ¦  «        rt          | j        ¦  «        S dS r   )r   rã   r   Ú$is_from_flatten_script_object_sourcer   r   s    r   r•  r•    sC   € Ý�&Õ3Ñ4Ô4ð AØˆtÝ	�F�MÑ	*Ô	*ð AÝ3°F´KÑ@Ô@Ð@Øˆ5r&   c                 ó†   — t          | t          ¦  «        rdS t          | t          ¦  «        rt          | j        ¦  «        S dS r   )r   r>  r   Úis_from_optimizer_sourcer   r   s    r   r—  r—    s@   € Ý�&�/Ñ*Ô*ð ØˆtÝ�&�-Ñ(Ô(ð 5Ý'¨¬Ñ4Ô4Ð4Øˆ5r&   c                 ó†   — t          | t          ¦  «        rdS t          | t          ¦  «        rt          | j        ¦  «        S dS r   )r   rô   r   Úis_from_defaultsr   r   s    r   r™  r™    s@   € Ý�&�.Ñ)Ô)ð ØˆtÝ�&�-Ñ(Ô(ð -Ý ¤Ñ,Ô,Ð,Øˆ5r&   )Pr7  r  r  Útypingr   r   r   Útorch._guardsr   r   r   r¯   r
   Úbytecode_transformationr   r   r   r3   ÚLOCAL_SPECIALIZED_NN_MODULEr`   ÚGLOBAL_SPECIALIZED_NN_MODULEÚLOCAL_UNSPECIALIZED_NN_MODULEÚGLOBAL_UNSPECIALIZED_NN_MODULEÚ%LOCAL_UNSPECIALIZED_BUILTIN_NN_MODULEÚ&GLOBAL_UNSPECIALIZED_BUILTIN_NN_MODULEÚLOCAL_FSDP_MODULEÚGLOBAL_FSDP_MODULEr£   rK  rO  rS  r   r%   Ú	dataclassr)   rA   rH   rV   rf   rq   r|   r€   r•   rš   r    r§   r©   r  r¼   rÇ   rÓ   rÜ   rã   ré   rï   rô   r   r  r"  r(  r   r>  rD  rI  rM  rQ  rU  r\  r   ro  rx  r}  r�  r…  rŠ  r‘  r“  r•  r—  r™  r?   r&   r   ú<module>r¦     s‚  ðà Ð Ð Ð Ø Ð Ð Ð Ø €€€Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'à <Ð <Ð <Ð <Ð <Ð <Ð <Ð <Ð <Ð <à Ð Ð Ð Ð Ð Ø MÐ MÐ MÐ MÐ MÐ MÐ MÐ MØ Ð Ð Ð Ð Ð ð Ô�{Ô>ØÔ˜Ô@ØÔ+¨[Ô-TØÔ,¨kÔ.VàÔ-¨{Ô/XØÔ.°Ô0ZØÔ5°{Ô7hØÔ6¸Ô8jØÔ! ;Ô#@ØÔ" KÔ$Bð'Ð #ð  Ô�{Ô@ØÔ˜ÔBØÔ-¨{Ô/XØÔ.°Ô0ZàÔ+¨[Ô-VØÔ,¨kÔ.XàÔ5°{Ô7hØÔ6¸Ô8jØÔ! ;Ô#@ØÔ" KÔ$Bð)Ð %ð" Ô�{ÔHØÔ˜ÔJØÔ-¨{Ô/`ØÔ.°Ô0bØÔ+¨[Ô-^ØÔ,¨kÔ.`àÔ5°{Ô7hØÔ6¸Ô8jØÔ! ;Ô#@ØÔ" KÔ$Bð1Ð -ð Ô�{Ô4ØÔ˜Ô6ØÔ+¨[Ô-JØÔ,¨kÔ.LØÔ! ;Ô#@ØÔ" KÔ$BØÔ-¨{Ô/LØÔ.°Ô0NØÔ5°{Ô7TØÔ6¸Ô8VðÐ ð	ð 	ð 	ðKØÐ7Ô8ðKð Kð Kð Kð €Ô˜dÐ#Ñ#Ô#ð-ð -ð -ð -ð -�&ñ -ô -ñ $Ô#ð-ð0 €Ô˜dÐ#Ñ#Ô#ð
7ð 
7ð 
7ð 
7ð 
7˜6ñ 
7ô 
7ñ $Ô#ð
7ð €Ô˜dÐ#Ñ#Ô#ð8ð 8ð 8ð 8ð 8˜ñ 8ô 8ñ $Ô#ð8ð €Ô˜dÐ#Ñ#Ô#ð
.ð 
.ð 
.ð 
.ð 
.�6ñ 
.ô 
.ñ $Ô#ð
.ð €Ô˜dÐ#Ñ#Ô#ð0ð 0ð 0ð 0ð 0˜&ñ 0ô 0ñ $Ô#ð0ð$ €Ô˜dÐ#Ñ#Ô#ð	'ð 	'ð 	'ð 	'ð 	'˜ñ 	'ô 	'ñ $Ô#ð	'ð €Ô˜dÐ#Ñ#Ô#ð	ð 	ð 	ð 	ð 	Ð0ñ 	ô 	ñ $Ô#ð	ð €Ô˜dÐ#Ñ#Ô#ð3ð 3ð 3ð 3ð 3�ñ 3ô 3ñ $Ô#ð3ð2 €Ô˜dÐ#Ñ#Ô#ðLð Lð Lð Lð L�fñ Lô Lñ $Ô#ðLð, €Ô˜dÐ#Ñ#Ô#ð3ð 3ð 3ð 3ð 3�ñ 3ô 3ñ $Ô#ð3ð €Ô˜dÐ#Ñ#Ô#ðMð Mð Mð Mð M˜
ñ Mô Mñ $Ô#ðMð €Ô˜dÐ#Ñ#Ô#ð	ð 	ð 	ð 	ð 	 Zñ 	ô 	ñ $Ô#ð	ð €Ô˜dÐ#Ñ#Ô#ðð ð ð ð �fñ ô ñ $Ô#ðð $ð $ð $ð $ð $�T”Yñ $ô $ð $ð €Ô˜dÐ#Ñ#Ô#ð%;ð %;ð %;ð %;ð %;˜=ñ %;ô %;ñ $Ô#ð%;ðP €Ô˜dÐ#Ñ#Ô#ð/ð /ð /ð /ð /�=ñ /ô /ñ $Ô#ð/ð €Ô˜dÐ#Ñ#Ô#ðGð Gð Gð Gð G�}ñ Gô Gñ $Ô#ðGð €Ô˜dÐ#Ñ#Ô#ð7ð 7ð 7ð 7ð 7 ñ 7ô 7ñ $Ô#ð7ð €Ô˜dÐ#Ñ#Ô#ð>ð >ð >ð >ð > mñ >ô >ñ $Ô#ð>ð0ð 0ð 0ð 0ð 0�mñ 0ô 0ð 0ð €Ô˜dÐ#Ñ#Ô#ð!ð !ð !ð !ð !�]ñ !ô !ñ $Ô#ð!ðH €Ô˜dÐ#Ñ#Ô#ð(9ð (9ð (9ð (9ð (9�Mñ (9ô (9ñ $Ô#ð(9ðV €Ô˜dÐ#Ñ#Ô#ðBð Bð Bð Bð B˜ñ Bô Bñ $Ô#ðBð" €Ô˜dÐ#Ñ#Ô#ð
Pð 
Pð 
Pð 
Pð 
P ñ 
Pô 
Pñ $Ô#ð
Pð €Ô˜dÐ#Ñ#Ô#ð+ð +ð +ð +ð +�ñ +ô +ñ $Ô#ð+ð  €Ô˜dÐ#Ñ#Ô#ðKð Kð Kð Kð K˜ñ Kô Kñ $Ô#ðKð8 €Ô˜dÐ#Ñ#Ô#ð ð  ð  ð  ð  �mñ  ô  ñ $Ô#ð ð €Ô˜dÐ#Ñ#Ô#ð ð  ð  ð  ð  �]ñ  ô  ñ $Ô#ð ð €Ô˜dÐ#Ñ#Ô#ðOð Oð Oð Oð O .ñ Oô Oñ $Ô#ðOð
 €Ô˜dÐ#Ñ#Ô#ðWð Wð Wð Wð WÐ)Dñ Wô Wñ $Ô#ðWð
 €Ô˜dÐ#Ñ#Ô#ðCð Cð Cð Cð C˜ñ Cô Cñ $Ô#ðCð
 €Ô˜dÐ#Ñ#Ô#ð"ð "ð "ð "ð "˜ñ "ô "ñ $Ô#ð"ð €Ô˜dÐ#Ñ#Ô#ð"ð "ð "ð "ð " 6ñ "ô "ñ $Ô#ð"ð0 €Ô˜dÐ#Ñ#Ô#ð"ð "ð "ð "ð "�Vñ "ô "ñ $Ô#ð"ð  €Ô˜dÐ#Ñ#Ô#ð
>ð 
>ð 
>ð 
>ð 
>˜ñ 
>ô 
>ñ $Ô#ð
>ð €Ô˜dÐ#Ñ#Ô#ð(ð (ð (ð (ð (˜]ñ (ô (ñ $Ô#ð(ð €Ô˜dÐ#Ñ#Ô#ð(ð (ð (ð (ð (˜ñ (ô (ñ $Ô#ð(ð €Ô˜dÐ#Ñ#Ô#ð(ð (ð (ð (ð (˜=ñ (ô (ñ $Ô#ð(ð €Ô˜dÐ#Ñ#Ô#ð%ð %ð %ð %ð %�Vñ %ô %ñ $Ô#ð%ð €Ô˜dÐ#Ñ#Ô#ð*ð *ð *ð *ð *˜&ñ *ô *ñ $Ô#ð*ð >Cð ð ð  ð ð ð ð ð°fð ð ð ð ð°ð ð ð ð ð Vð ð ð ð ð˜Vð ð ð ð ð ð r&   