Ë
    P/æj–a  ã                   óB  — 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	j0                  e	j0                  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	j0                  e	j0                  iZe	j"                  e	j.                  e	j&                  e	j0                  e	j*                  e	j.                  e	j,                  e	j0                  e	j$                  e	j.                  e	j(                  e	j0                  e	j.                  e	j.                  e	j0                  e	j0                  iZe	j"                  e	j8                  e	j&                  e	j:                  e	j$                  e	j8                  e	j(                  e	j:                  e	j8                  e	j8                  e	j:                  e	j:                  e	j*                  e	j8                  e	j,                  e	j:                  e	j.                  e	j8                  e	j0                  e	j:                  i
Zd„ Zd	ed
   fd„Z  ejB                  d¬«       G d„ de
«      «       Z" ejB                  d¬«       G d„ de
«      «       Z# ejB                  d¬«       G d„ de
«      «       Z$ ejB                  d¬«       G d„ de
«      «       Z% ejB                  d¬«       G d„ de
«      «       Z& ejB                  d¬«       G d„ de«      «       Z' ejB                  d¬«       G d„ de«      «       Z( ejB                  d¬«       G d„ de«      «       Z) ejB                  d¬«       G d„ de(«      «       Z* ejB                  d¬«       G d „ d!e(«      «       Z+ ejB                  d¬«       G d"„ d#e
«      «       Z, G d$„ d%ejZ                  «      Z. ejB                  d¬«       G d&„ d'e«      «       Z/ ejB                  d¬«       G d(„ d)e«      «       Z0 ejB                  d¬«       G d*„ d+e«      «       Z1 ejB                  d¬«       G d,„ d-e«      «       Z2 ejB                  d¬«       G d.„ d/e«      «       Z3 G d0„ d1e«      Z4 ejB                  d¬«       G d2„ d3e«      «       Z5 ejB                  d¬«       G d4„ d5e«      «       Z6 ejB                  d¬«       G d6„ d7e6«      «       Z7 ejB                  d¬«       G d8„ d9e6«      «       Z8 ejB                  d¬«       G d:„ d;e«      «       Z9 ejB                  d¬«       G d<„ d=e«      «       Z: ejB                  d¬«       G d>„ d?e«      «       Z; ejB                  d¬«       G d@„ dAe«      «       Z< ejB                  d¬«       G dB„ dCe<«      «       Z= ejB                  d¬«       G dD„ dEe=«      «       Z> ejB                  d¬«       G dF„ dGe<«      «       Z? ejB                  d¬«       G dH„ dIe
«      «       Z@ ejB                  d¬«       G dJ„ dKe
«      «       ZA ejB                  d¬«       G dL„ dMe
«      «       ZB ejB                  d¬«       G dN„ dOe«      «       ZC ejB                  d¬«       G dP„ dQe«      «       ZD ejB                  d¬«       G dR„ dSe«      «       ZE ejB                  d¬«       G dT„ dUe«      «       ZF ejB                  d¬«       G dV„ dWe
«      «       ZG ejB                  d¬«       G dX„ dYe
«      «       ZHddZœd	e
fd[„ZId	e
fd\„ZJd	e
fd]„ZKd	e
fd^„ZLd	e
fd_„ZMd	e
fd`„ZNy)aé    N)ÚAnyÚOptionalÚUnion)ÚChainedSourceÚGuardSourceÚSourceé   )Úutils)Úcreate_call_functionÚcreate_instruction)Ú	enum_reprc                 óŒ   — t        | t        «      ry	 | j                  «       t        j                  k(  ry	 y# t
        $ r Y yw xY w©NTF)Ú
isinstanceÚConstantSourceÚguard_sourcer   ÚCONSTANTÚNotImplementedError©Úsources    úW/root/repos/pocs/video-evals/.venv/lib/python3.12/site-packages/torch/_dynamo/source.pyÚis_constant_sourcer   G   sO   € Ü�&œ.Ô)ØðØ×ÑÓ ¤K×$8Ñ$8Ò8Øð 9ð
 øô ò Øàðús   “!7 ·	AÁAr   )ÚGetItemSourceÚODictGetItemSourcec                 ó€  — | j                   j                  |«       t        | j                  t        «      r| j                  j                  |«       y |rAt        | t
        «      sJ ‚|j                  |j                  | j                  «       «      «       y |j                  |j                  | j                  «      «       y ©N)	ÚbaseÚreconstructr   Úindexr   r   Úappend_outputÚcreate_load_constÚunpack_slice)r   ÚcodegenÚindex_is_slices      r   Úreconstruct_getitemr%   S   sˆ   € ð ‡K�K×Ñ˜GÔ$Ü�&—,‘,¤Ô'Ø�‰× Ñ  Õ)áÜ˜f¤mÔ4Ð4Ð4Ø×!Ñ! '×";Ñ";¸F×<OÑ<OÓ<QÓ"RÕSà×!Ñ! '×";Ñ";¸F¿L¹LÓ"IÕJó    T)Úfrozenc                   ó8   — e Zd ZU eed<   dZeed<   d„ Zd„ Zd„ Z	y)ÚLocalSourceÚ
local_nameFÚcell_or_freevarc                 óX   — |j                  |j                  | j                  «      «       y r   ©r    Úcreate_loadr*   ©Úselfr#   s     r   r   zLocalSource.reconstructf   ó   € Ø×Ñ˜g×1Ñ1°$·/±/ÓBÕCr&   c                 ó"   — t         j                  S r   )r   ÚLOCAL©r0   s    r   r   zLocalSource.guard_sourcei   s   € Ü× Ñ Ð r&   c                 ó4   — dt        | j                  «      › d�S )NzL[ú])Úreprr*   r4   s    r   ÚnamezLocalSource.namel   s   € Ø”D˜Ÿ™Ó)Ð*¨!Ð,Ð,r&   N)
Ú__name__Ú
__module__Ú__qualname__ÚstrÚ__annotations__r+   Úboolr   r   r8   © r&   r   r)   r)   a   s!   … àƒOØ!€O�TÓ!òDò!ó-r&   r)   c                   ó*   — e Zd ZU eed<   d„ Zd„ Zd„ Zy)ÚSyntheticLocalSourcer*   c                 óX   — |j                  |j                  | j                  «      «       y r   r-   r/   s     r   r   z SyntheticLocalSource.reconstructt   r1   r&   c                 ó"   — t         j                  S r   )r   ÚSYNTHETIC_LOCALr4   s    r   r   z!SyntheticLocalSource.guard_sourcew   s   € Ü×*Ñ*Ð*r&   c                 ó"   — d| j                   ›d�S )NzSYNTHETIC_LOCAL[r6   )r*   r4   s    r   r8   zSyntheticLocalSource.namez   s   € Ø! $§/¡/Ð!4°AÐ6Ð6r&   N©r9   r:   r;   r<   r=   r   r   r8   r?   r&   r   rA   rA   p   s   … àƒOòDò+ó7r&   rA   c                   ó*   — e Zd ZU eed<   d„ Zd„ Zd„ Zy)Ú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                  j                  «      «       |j                  |j                  | j                  «      «       |j                  t        d«      «       y ©NÚBINARY_SUBSCR)r    r.   ÚtxÚoutputÚrandom_values_varr!   rI   r   r/   s     r   r   zRandomValueSource.reconstruct…   s^   € Ø×Ñ˜g×1Ñ1°'·*±*×2CÑ2C×2UÑ2UÓVÔWØ×Ñ˜g×7Ñ7¸×8NÑ8NÓOÔPØ×ÑÔ0°ÓAÕBr&   c                 ó    — d| j                   › �S )NÚrandom_value_)rI   r4   s    r   r8   zRandomValueSource.nameŠ   s   € Ø˜t×5Ñ5Ð6Ð7Ð7r&   N)r9   r:   r;   Úintr=   r   r   r8   r?   r&   r   rH   rH   ~   s   … àÓò(òCó
8r&   rH   c                   ó*   — e Zd ZU eed<   d„ Zd„ Zd„ Zy)ÚGlobalSourceÚglobal_namec                 ó\   — |j                  |j                  | j                  d¬«      «       y ©NT©Úadd©r    Úcreate_load_globalrW   r/   s     r   r   zGlobalSource.reconstruct’   s&   € Ø×Ñ˜g×8Ñ8¸×9IÑ9IÈtÐ8ÓTÕUr&   c                 ó"   — t         j                  S r   ©r   ÚGLOBALr4   s    r   r   zGlobalSource.guard_source•   ó   € Ü×!Ñ!Ð!r&   c                 ó4   — dt        | j                  «      › d�S )NúG[r6   ©r7   rW   r4   s    r   r8   zGlobalSource.name˜   s   € Ø”D˜×)Ñ)Ó*Ð+¨1Ð-Ð-r&   NrF   r?   r&   r   rV   rV   Ž   s   … àÓòVò"ó.r&   rV   c                   ó*   — e Zd ZU eed<   d„ Zd„ Zd„ Zy)ÚGlobalWeakRefSourcerW   c                 óh   ‡ ‡— ‰j                  ˆˆ fd„«       ‰j                  t        dd«      «       y )Nc                  ó\   •— ‰ j                  ‰ j                  ‰j                  d¬«      «      S rY   r\   ©r#   r0   s   €€r   ú<lambda>z1GlobalWeakRefSource.reconstruct.<locals>.<lambda>¢   s+   ø€ �G×)Ñ)Ø×*Ñ*¨4×+;Ñ+;ÀÐ*ÓFó€ r&   r   F©Úadd_push_nullÚextend_outputr   r/   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                 ó4   — dt        | j                  «      › d�S )Nrc   z]()rd   r4   s    r   r8   zGlobalWeakRefSource.name«   s   € Ø”D˜×)Ñ)Ó*Ð+¨3Ð/Ð/r&   NrF   r?   r&   r   rf   rf   œ   s   … àÓò>ò"ó0r&   rf   c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚWeakRefCallSourcec                 óh   ‡ ‡— ‰j                  ˆˆ fd„«       ‰j                  t        dd«      «       y )Nc                  ó:   •— ‰j                   j                  ‰ «      S r   ©r   r   ri   s   €€r   rj   z/WeakRefCallSource.reconstruct.<locals>.<lambda>²   s   ø€  d§i¡i×&;Ñ&;¸GÓ&D€ r&   r   Frk   r/   s   ``r   r   zWeakRefCallSource.reconstruct±   s(   ù€ Ø×ÑÔDÔEØ×ÑÔ2°1°eÓ<Õ=r&   c                 ó6   — | j                   j                  «       S r   ©r   r   r4   s    r   r   zWeakRefCallSource.guard_sourceµ   ó   € Ø�y‰y×%Ñ%Ó'Ð'r&   c                 ó<   — | j                   j                  «       › d�S )Nz()©r   r8   r4   s    r   r8   zWeakRefCallSource.name¸   s   € Ø—)‘)—.‘.Ó"Ð# 2Ð&Ð&r&   N©r9   r:   r;   r   r   r8   r?   r&   r   rq   rq   ¯   s   „ ò>ò(ó'r&   rq   c                   ó0   — e Zd ZU eed<   d„ Zd„ Zd„ Zd„ Zy)Ú
AttrSourceÚmemberc                 ó,  — | j                   sJ d«       ‚d| j                  v rs| j                  j                  d«      }t        j	                  | dt        | j                   dj                  |d d «      «      «       t        j	                  | d|d   «       y y )Nz9Can't construct an AttrSource without a valid base sourceú.r   éÿÿÿÿr}   )r   r}   ÚsplitÚobjectÚ__setattr__r|   Újoin)r0   Úmember_partss     r   Ú__post_init__zAttrSource.__post_init__À   s‚   € Ø�yŠyÐUÐUÓUˆyØ�$—+‘+ÑØŸ;™;×,Ñ,¨SÓ1ˆLÜ×ÑØ�fœj¨¯©°C·H±H¸\È#È2Ð=NÓ4OÓPôô ×Ñ˜t X¨|¸BÑ/?Õ@ð r&   c                 óŽ   — | j                   j                  |«       |j                  |j                  | j                  «      «       y r   ©r   r   rm   Úcreate_load_attrsr}   r/   s     r   r   zAttrSource.reconstructÉ   ó1   € Ø�	‰	×Ñ˜gÔ&Ø×Ñ˜g×7Ñ7¸¿¹ÓDÕEr&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zAttrSource.guard_sourceÍ   rw   r&   c                 óÞ   — | j                   j                  «       s+d| j                  j                  «       › d| j                   ›d�S | j                  j                  «       › d| j                   › �S )Nzgetattr(ú, ú)r   )r}   Úisidentifierr   r8   r4   s    r   r8   zAttrSource.nameÐ   sX   € Ø�{‰{×'Ñ'Ô)Ø˜dŸi™iŸn™nÓ.Ð/¨r°$·+±+°ÀÐBÐBØ—)‘)—.‘.Ó"Ð# 1 T§[¡[ MÐ2Ð2r&   N)	r9   r:   r;   r<   r=   r†   r   r   r8   r?   r&   r   r|   r|   ¼   s   … àƒKòAòFò(ó3r&   r|   c                   ó.   — e Zd ZU dZeed<   d„ Zd„ Zd„ Zy)Ú
GradSourceÚgradr}   c                 óŽ   — | j                   j                  |«       |j                  |j                  | j                  «      «       y r   rˆ   r/   s     r   r   zGradSource.reconstructÞ   rŠ   r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zGradSource.guard_sourceâ   rw   r&   c                 óT   — | j                   j                  «       › d| j                  › �S )Nr   )r   r8   r}   r4   s    r   r8   zGradSource.nameå   s#   € Ø—)‘)—.‘.Ó"Ð# 1 T§[¡[ MÐ2Ð2r&   N)	r9   r:   r;   r}   r<   r=   r   r   r8   r?   r&   r   r‘   r‘   Ú   s   … à€FˆCÓòFò(ó3r&   r‘   c                   ó   — e Zd Zd„ Zy)ÚParamBufferSourcec                 óD   — t         | j                  j                  «          S r   ©Ú#_GUARD_SOURCE_SPECIALIZED_NN_MODULEr   r   r4   s    r   r   zParamBufferSource.guard_sourceë   ó   € Ü2°4·9±9×3IÑ3IÓ3KÑLÐLr&   N©r9   r:   r;   r   r?   r&   r   r—   r—   é   s   „ óMr&   r—   c                   ó   — e Zd Zy)ÚUnspecializedParamBufferSourceN)r9   r:   r;   r?   r&   r   rž   rž   ð   s   „ àr&   rž   c                   ó:   — e Zd ZU dZee   ed<   d„ Zd„ Zd„ Z	d„ Z
y)ÚEphemeralSourceNÚdescc                 ó"   — t         j                  S r   )r   Ú	EPHEMERALr4   s    r   r   zEphemeralSource.guard_source  ó   € Ü×$Ñ$Ð$r&   c                 óJ   — d| j                   �d| j                   z   › d�S d› d�S )Nz
<ephemeralz: Ú ú>)r¡   r4   s    r   r8   zEphemeralSource.name  s1   € Ø°·	±	Ð0E˜D 4§9¡9Ñ,ÐNÈaÐPÐPÈ2ÐNÈaÐPÐPr&   c                 ó   — t         ‚r   ©r   r4   s    r   Ú
make_guardzEphemeralSource.make_guard  ó   € Ü!Ð!r&   c                  ó   — y©NTr?   r4   s    r   Úis_ephemeralzEphemeralSource.is_ephemeral  ó   € Ør&   )r9   r:   r;   r¡   r   r<   r=   r   r8   rª   r®   r?   r&   r   r    r    þ   s%   … à€Dˆ(�3‰-Óò%òQò"ór&   r    c                   ó   — e Zd ZdZdZdZd„ Zy)ÚTensorPropertyr   r	   é   c                 óv   — | t         j                  u ry| t         j                  u ry| t         j                  u ryy )NÚsizeÚstrideÚstorage_offset)r±   ÚSIZEÚSTRIDEÚSTORAGE_OFFSETr4   s    r   Úmethod_namezTensorProperty.method_name  s:   € Ø”>×&Ñ&Ñ&ØØ”^×*Ñ*Ñ*ØØ”^×2Ñ2Ñ2Ø#ð 3r&   N)r9   r:   r;   r·   r¸   r¹   rº   r?   r&   r   r±   r±     s   „ Ø€DØ€FØ€Nó$r&   r±   c                   óD   — e Zd ZU eed<   dZee   ed<   d„ Zd„ Z	d„ Z
d„ Zy)ÚTensorPropertySourceÚpropNÚidxc                 ó’   — | j                   €J ‚| j                  t        j                  u r| j                  �J ‚y | j                  €J ‚y r   )r   r½   r±   r¹   r¾   r4   s    r   r†   z"TensorPropertySource.__post_init__"  sD   € Ø�y‰yÐ$Ð$Ð$Ø�9‰9œ×5Ñ5Ñ5Ø—8‘8Ð#Ð#Ñ#à—8‘8Ð'Ð'Ñ'r&   c                 óô   ‡ ‡— ˆˆ fd„}‰j                  |«       ‰ j                  �*‰j                  ‰j                  ‰ j                  «      «       ‰j	                  t        ‰ j                  �dndd«      «       y )Nc                  ó¬   •— ‰j                   j                  ‰ «       ‰ j                  ‰ j                  ‰j                  j                  «       «      «       y r   )r   r   r    Úcreate_load_attrr½   rº   ri   s   €€r   Úgen_fnz0TensorPropertySource.reconstruct.<locals>.gen_fn*  s;   ø€ Ø�I‰I×!Ñ! 'Ô*Ø×!Ñ! '×":Ñ":¸4¿9¹9×;PÑ;PÓ;RÓ"SÕTr&   r	   r   F)rl   r¾   r    r!   rm   r   )r0   r#   rÃ   s   `` r   r   z TensorPropertySource.reconstruct)  sc   ù€ õ	Uð 	×Ñ˜fÔ%Ø�8‰8ÐØ×!Ñ! '×";Ñ";¸D¿H¹HÓ"EÔFØ×ÑÜ  d§h¡hÐ&:¡ÀÀ5ÓIõ	
r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   z!TensorPropertySource.guard_source5  rw   r&   c                 óØ  — | j                   t        j                  u r*| j                  j	                  «       › d| j
                  › d�S | j                   t        j                  u r*| j                  j	                  «       › d| j
                  › d�S | j                   t        j                  u r+| j
                  �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.name8  s¾   € Ø�9‰9œ×+Ñ+Ñ+Ø—i‘i—n‘nÓ&Ð' x°·±¨z¸Ð;Ð;Ø�Y‰Yœ.×/Ñ/Ñ/Ø—i‘i—n‘nÓ&Ð' z°$·(±(°¸1Ð=Ð=Ø�Y‰Yœ.×7Ñ7Ñ7Ø—8‘8Ð#Ð#Ð#Ø—i‘i—n‘nÓ&Ð'Ð'8Ð9Ð9ä  :¨d¯i©i¨[Ð!9Ó:Ð:r&   )r9   r:   r;   r±   r=   r¾   r   rT   r†   r   r   r8   r?   r&   r   r¼   r¼     s*   … à
ÓØ€Cˆ�#‰Óò(ò

ò(ó	;r&   r¼   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚNegateSourcec                 ó    — | j                   €J ‚y r   ©r   r4   s    r   r†   zNegateSource.__post_init__F  ó   € Ø�y‰yÐ$Ð$Ñ$r&   c                 ó   — t         ‚r   r©   r/   s     r   r   zNegateSource.reconstructI  r«   r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zNegateSource.guard_sourceL  rw   r&   c                 ó<   — | j                   j                  «       › d�S )Nz
.__neg__()ry   r4   s    r   r8   zNegateSource.nameO  s   € à—)‘)—.‘.Ó"Ð# :Ð.Ð.r&   N©r9   r:   r;   r†   r   r   r8   r?   r&   r   rÈ   rÈ   D  s   „ ò%ò"ò(ó/r&   rÈ   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚConvertIntSourcec                 ó    — | j                   €J ‚y r   rÊ   r4   s    r   r†   zConvertIntSource.__post_init__V  rË   r&   c                 ó:   — | j                   j                  |«       y r   rt   r/   s     r   r   zConvertIntSource.reconstructY  ó   € Ø�	‰	×Ñ˜gÕ&r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zConvertIntSource.guard_source\  rw   r&   c                 ó>   — d| j                   j                  «       › d�S )Nz!cast_symbool_to_symint_guardless(rŽ   ry   r4   s    r   r8   zConvertIntSource.name_  s   € Ø2°4·9±9·>±>Ó3CÐ2DÀAÐFÐFr&   NrÏ   r?   r&   r   rÑ   rÑ   T  s   „ ò%ò'ò(óGr&   rÑ   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚFlattenScriptObjectSourcec                 ó    — | j                   €J ‚y r   rÊ   r4   s    r   r†   z'FlattenScriptObjectSource.__post_init__e  rË   r&   c                 ó:   — | j                   j                  |«       y r   rt   r/   s     r   r   z%FlattenScriptObjectSource.reconstructh  rÔ   r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   z&FlattenScriptObjectSource.guard_sourcek  rw   r&   c                 ó<   — | j                   j                  «       › d�S )Nz.__obj_flatten__()ry   r4   s    r   r8   zFlattenScriptObjectSource.namen  s   € Ø—)‘)—.‘.Ó"Ð#Ð#5Ð6Ð6r&   NrÏ   r?   r&   r   rØ   rØ   c  s   „ ò%ò'ò(ó7r&   rØ   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚScriptObjectQualifiedNameSourcec                 ó    — | j                   €J ‚y r   rÊ   r4   s    r   r†   z-ScriptObjectQualifiedNameSource.__post_init__t  rË   r&   c                 ó:   — | j                   j                  |«       y r   rt   r/   s     r   r   z+ScriptObjectQualifiedNameSource.reconstructw  rÔ   r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   z,ScriptObjectQualifiedNameSource.guard_sourcez  rw   r&   c                 ó<   — | j                   j                  «       › d�S )Nz._type().qualified_name()ry   r4   s    r   r8   z$ScriptObjectQualifiedNameSource.name}  s   € Ø—)‘)—.‘.Ó"Ð#Ð#<Ð=Ð=r&   NrÏ   r?   r&   r   rÞ   rÞ   r  s   „ ò%ò'ò(ó>r&   rÞ   c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚAttrProxySourcec                 ó:   — | j                   j                  |«       y r   rt   r/   s     r   r   zAttrProxySource.reconstruct‚  rÔ   r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zAttrProxySource.guard_source…  rw   r&   c                 ó<   — | j                   j                  «       › d�S )Nz.get_base()ry   r4   s    r   r8   zAttrProxySource.nameˆ  s   € Ø—)‘)—.‘.Ó"Ð# ;Ð/Ð/r&   Nrz   r?   r&   r   rä   rä   �  s   „ ò'ò(ó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y)ÚDefaultsSourceÚidx_keyFÚis_kw)Úinitr7   ÚcompareÚfieldÚ_namec           
      ó@  — | j                   sJ d«       ‚| j                  r€t        | j                  t        «      sJ ‚t
        j                  | dd«       t
        j                  | d| j                   j                  «       › d| j                  › d| j                  › d�«       y t        | j                  t        «      sJ ‚t
        j                  | dd«       t
        j                  | d| j                   j                  «       › d| j                  › d	| j                  › d
�«       y )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__“  sê   € à�IŠIð	kàjó	kØà�:Š:Ü˜dŸl™l¬CÔ0Ð0Ð0Ü×Ñ˜t WÐ.>Ô?Ü×ÑØ�g $§)¡)§.¡.Ó"2Ð!3°1°T·Z±Z°LÀÀ4Ç<Á<À.ÐPRÐSõô ˜dŸl™l¬CÔ0Ð0Ð0Ü×Ñ˜t W¨nÔ=Ü×ÑØ�g $§)¡)§.¡.Ó"2Ð!3°1°T·Z±Z°LÀÀ$Ç,Á,ÀÈqÐQõr&   c                 ó  — | j                   j                  |«       |j                  |j                  | j                  «      «       |j                  |j                  | j                  «      «       |j                  t        d«      «       y rM   )	r   r   rm   r‰   rî   r    r!   rê   r   r/   s     r   r   zDefaultsSource.reconstruct¤  sb   € Ø�	‰	×Ñ˜gÔ&Ø×Ñ˜g×7Ñ7¸¿
¹
ÓCÔDØ×Ñ˜g×7Ñ7¸¿¹ÓEÔFØ×ÑÔ0°ÓAÕBr&   c                 ó6   — | j                   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‰zÐr&   N)r9   r:   r;   r   rT   r<   r=   rë   r>   Údataclassesrî   rï   r†   r   r   r8   r?   r&   r   ré   ré   Œ  se   … à�3˜�8‰_ÓØ€Eˆ4ÓØ"�×"Ñ"¨°EÀ5ÔI€Eˆ3ÓIØ"�×"Ñ"¨°EÀ5ÔI€Eˆ3ÓIòò"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        «      r9t        ‰| �  d| j                  j                  «       «       t        ‰| �  dd«       y y )Nr   r$   T)r   r   r   ÚsliceÚsuperrƒ   Ú
__reduce__)r0   Ú	__class__s    €r   r†   zGetItemSource.__post_init__¶  sR   ø€ Ø�y‰yÐ$Ð$Ð$Ü�d—j‘j¤%Ô(ä‰GÑ ¨¯©×)>Ñ)>Ó)@ÔAÜ‰GÑÐ 0°$Õ7ð )r&   c                 óh   — t        | || j                  ¬«       |j                  t        d«      «       y )N©r$   rN   )r%   r$   r    r   r/   s     r   r   zGetItemSource.reconstruct½  s(   € Ü˜D '¸$×:MÑ:MÕNØ×ÑÔ0°ÓAÕBr&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zGetItemSource.guard_sourceÁ  rw   r&   c                 óF   — | j                   sJ ‚| j                  \  }} ||Ž S r   )r$   r   )r0   Ú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
                  j                  «       › d| j                  j                  «       › d�S | j                  r.| j
                  j                  «       › d| j                  «       ›d�S t        | j                  t        j                  «      rP| j
                  j                  «       › dt        | j                  | j                  «       j                  «       «      › d�S | j
                  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‘j¤&Ô)Ü˜dŸj™jÔ*<Ô=Ü ØXóð ð —i‘i—n‘nÓ&Ð' q¨¯©¯©Ó):Ð(;¸1Ð=Ð=Ø× Ò Ø—i‘i—n‘nÓ&Ð' q¨×):Ñ):Ó)<Ð(?¸qÐAÐAÜ˜Ÿ
™
¤D§I¡IÔ.Ø—i‘i—n‘nÓ&Ð' q¬°4·:±:¸t×?PÑ?PÓ?R×?[Ñ?[Ó?]Ó)^Ð(_Ð_`ÐaÐaà—i‘i—n‘nÓ&Ð' q¨¯©¨°aÐ8Ð8r&   )r9   r:   r;   r   r=   r$   r>   r†   r   r   r"   r8   Ú__classcell__)rý   s   @r   r   r   ±  s,   ø… àƒJØ €N�DÓ ô8òCò(ò(ö
9r&   r   c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)r  c                  ó   — yr­   r?   r4   s    r   Úis_dict_keyzConstDictKeySource.is_dict_keyß  r¯   r&   c                 óî   ‡— ‰j                  ˆfd„«       | j                  j                  ‰«       ‰j                  ‰j	                  | j
                  «      «       ‰j                  t        dd«      «       y )Nc                  óD   •— ‰ j                  t        j                  d«      S )NÚdict_keys_getitem©Úload_import_fromr
   r9   ©r#   s   €r   rj   z0ConstDictKeySource.reconstruct.<locals>.<lambda>ä  s   ø€ �G×,Ñ,¬U¯^©^Ð=PÓQ€ r&   r²   F©rl   r   r   r    r!   r   rm   r   r/   s    `r   r   zConstDictKeySource.reconstructâ  s[   ø€ Ø×ÑÛQô	
ð 	�	‰	×Ñ˜gÔ&Ø×Ñ˜g×7Ñ7¸¿
¹
ÓCÔDØ×ÑÔ2°1°eÓ<Õ=r&   c                 óX   — d| j                   j                  «       › d| j                  ›d�S )Nzlist(z	.keys())[r6   ©r   r8   r   r4   s    r   r8   zConstDictKeySource.nameê  s'   € à�t—y‘y—~‘~Ó'Ð(¨	°$·*±*°¸qÐAÐAr&   N)r9   r:   r;   r  r   r8   r?   r&   r   r  r  Ý  s   „ òò>óBr&   r  c                   ó   — e Zd Zd„ Zd„ Zy)ÚTupleIteratorGetItemSourcec                 óî   ‡— ‰j                  ˆfd„«       | j                  j                  ‰«       ‰j                  ‰j	                  | j
                  «      «       ‰j                  t        dd«      «       y )Nc                  óD   •— ‰ j                  t        j                  d«      S )NÚtuple_iterator_getitemr  r  s   €r   rj   z8TupleIteratorGetItemSource.reconstruct.<locals>.<lambda>ó  s   ø€ �G×,Ñ,¬U¯^©^Ð=UÓV€ r&   r²   Fr  r/   s    `r   r   z&TupleIteratorGetItemSource.reconstructñ  s[   ø€ Ø×ÑÛVô	
ð 	�	‰	×Ñ˜gÔ&Ø×Ñ˜g×7Ñ7¸¿
¹
ÓCÔDØ×ÑÔ2°1°eÓ<Õ=r&   c                 óX   — d| j                   j                  «       › d| j                  ›d�S )Nz___tuple_iterator_getitem(r�   rŽ   r  r4   s    r   r8   zTupleIteratorGetItemSource.nameù  s'   € Ø+¨D¯I©I¯N©NÓ,<Ð+=¸RÀÇ
Á
¸~ÈQÐOÐOr&   N)r9   r:   r;   r   r8   r?   r&   r   r  r  ï  s   „ ò>óPr&   r  c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)Ú
TypeSourcec                 ó    — | j                   €J ‚y r   rÊ   r4   s    r   r†   zTypeSource.__post_init__ÿ  rË   r&   c                 óš   ‡— ‰j                  ˆfd„«       | j                  j                  ‰«       ‰j                  t	        dd«      «       y )Nc                  ó(   •— ‰ j                  dd«      S )NÚbuiltinsÚtype©r  r  s   €r   rj   z(TypeSource.reconstruct.<locals>.<lambda>  s   ø€  g×&>Ñ&>¸zÈ6Ó&R€ r&   r	   F©rl   r   r   rm   r   r/   s    `r   r   zTypeSource.reconstruct  s:   ø€ Ø×ÑÓRÔSØ�	‰	×Ñ˜gÔ&Ø×ÑÔ2°1°eÓ<Õ=r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zTypeSource.guard_source  rw   r&   c                 ó>   — d| j                   j                  «       › d�S )Nztype(rŽ   ry   r4   s    r   r8   zTypeSource.name
  s   € Ø�t—y‘y—~‘~Ó'Ð(¨Ð*Ð*r&   NrÏ   r?   r&   r   r  r  ý  s   „ ò%ò>ò
(ó+r&   r  c                   ó0   — e Zd ZU eed<   d„ Zd„ Zd„ Zd„ Zy)r   r   c                 ó    — | j                   €J ‚y r   rÊ   r4   s    r   r†   z ODictGetItemSource.__post_init__  rË   r&   c                 ó€   ‡— ‰j                  ˆfd„«       t        | ‰d¬«       ‰j                  t        dd«      «       y )Nc                  ót   •— ‰ j                  ‰ j                  t        j                  j                  «      «      S r   )r    Ú_create_load_constÚcollectionsÚOrderedDictÚ__getitem__r  s   €r   rj   z0ODictGetItemSource.reconstruct.<locals>.<lambda>  s,   ø€ �G×)Ñ)Ø×*Ñ*¬;×+BÑ+B×+NÑ+NÓOó€ r&   Frÿ   r²   )rl   r%   rm   r   r/   s    `r   r   zODictGetItemSource.reconstruct  s:   ø€ Ø×Ñóô	
ô
 	˜D '¸%Õ@Ø×ÑÔ2°1°eÓ<Õ=r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zODictGetItemSource.guard_source  rw   r&   c                 óÔ  — t        | j                  t        «      rQd| j                  j                  › d| j                  j                  › �}d| j
                  j                  «       › d|› d�S t        | j                  t        «      r9d| j
                  j                  «       › d| j                  j                  «       › d�S d| j
                  j                  «       › d| j                  ›d�S )Nz__load_module("z").z___odict_getitem(r�   rŽ   )r   r   r#  r:   r;   r   r8   r   )r0   Úreps     r   r8   zODictGetItemSource.name!  s¹   € Ü�d—j‘j¤$Ô'Ø# D§J¡J×$9Ñ$9Ð#:¸#¸d¿j¹j×>UÑ>UÐ=VÐWˆCØ& t§y¡y§~¡~Ó'7Ð&8¸¸3¸%¸qÐAÐAÜ˜Ÿ
™
¤FÔ+Ø& t§y¡y§~¡~Ó'7Ð&8¸¸4¿:¹:¿?¹?Ó;LÐ:MÈQÐOÐOà& t§y¡y§~¡~Ó'7Ð&8¸¸4¿:¹:¸.ÈÐJÐJr&   N)	r9   r:   r;   r   r=   r†   r   r   r8   r?   r&   r   r   r     s   … àƒJò%ò>ò(óKr&   r   c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚOptimizerSourcec                 ó:   — | j                   j                  |«       y r   rt   r/   s     r   r   zOptimizerSource.reconstruct-  rÔ   r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zOptimizerSource.guard_source0  rw   r&   c                 ó6   — | j                   j                  «       S r   ry   r4   s    r   r8   zOptimizerSource.name3  ó   € Ø�y‰y�~‰~ÓÐr&   Nrz   r?   r&   r   r4  r4  +  s   „ ò'ò(ó r&   r4  c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚNNModuleSourcec                 ó:   — | j                   j                  |«       y r   rt   r/   s     r   r   zNNModuleSource.reconstruct9  rÔ   r&   c                 óD   — t         | j                  j                  «          S r   r™   r4   s    r   r   zNNModuleSource.guard_source<  r›   r&   c                 ó6   — | j                   j                  «       S r   ry   r4   s    r   r8   zNNModuleSource.name?  r8  r&   Nrz   r?   r&   r   r:  r:  7  s   „ ò'òMó r&   r:  c                   ó   — e Zd Zd„ Zy)ÚUnspecializedNNModuleSourcec                 óD   — t         | j                  j                  «          S r   )Ú%_GUARD_SOURCE_UNSPECIALIZED_NN_MODULEr   r   r4   s    r   r   z(UnspecializedNNModuleSource.guard_sourceE  s   € Ü4°T·Y±Y×5KÑ5KÓ5MÑNÐNr&   Nrœ   r?   r&   r   r?  r?  C  s   „ óOr&   r?  c                   ó   — e Zd Zd„ Zy)Ú"UnspecializedBuiltinNNModuleSourcec                 óD   — t         | j                  j                  «          S r   )Ú-_GUARD_SOURCE_UNSPECIALIZED_BUILTIN_NN_MODULEr   r   r4   s    r   r   z/UnspecializedBuiltinNNModuleSource.guard_sourceK  s   € Ü<¸T¿Y¹Y×=SÑ=SÓ=UÑVÐVr&   Nrœ   r?   r&   r   rC  rC  I  s   „ óWr&   rC  c                   ó   — e Zd Zd„ Zy)ÚFSDPNNModuleSourcec                 óD   — t         | j                  j                  «          S r   )Ú_GUARD_SOURCE_FSDP_MODULEr   r   r4   s    r   r   zFSDPNNModuleSource.guard_sourceQ  s   € Ü(¨¯©×)?Ñ)?Ó)AÑBÐBr&   Nrœ   r?   r&   r   rG  rG  O  s   „ óCr&   rG  c                   ó   — e Zd Zd„ Zd„ Zy)ÚGlobalStateSourcec                  ó   — y©Nr¦   r?   r4   s    r   r8   zGlobalStateSource.nameW  ó   € Ør&   c                 ó"   — t         j                  S r   r_   r4   s    r   r   zGlobalStateSource.guard_sourceZ  ra   r&   N©r9   r:   r;   r8   r   r?   r&   r   rK  rK  U  s   „ òó"r&   rK  c                   ó0   — e Zd ZU eed<   d„ Zd„ Zd„ Zd„ Zy)ÚTorchFunctionModeStackSourceÚindc                  ó   — yrM  r?   r4   s    r   r8   z!TorchFunctionModeStackSource.nameb  rN  r&   c                 óD   — ddl m} |j                  | j                  «      S )Nr	   )ÚTorchFunctionModeStackVariable)Úvariables.torch_functionrV  Úget_mode_indexrS  )r0   rV  s     r   Ú
_get_indexz'TorchFunctionModeStackSource._get_indexe  s   € ÝLà-×<Ñ<¸T¿X¹XÓFÐFr&   c                 óÂ   ‡— ‰j                  ˆfd„«       ‰j                  ‰j                  | j                  «       «      g«       ‰j                  t	        dd«      «       y )Nc                  óD   •— ‰ j                  t        j                  d«      S )NÚ get_torch_function_mode_stack_atr  r  s   €r   rj   z:TorchFunctionModeStackSource.reconstruct.<locals>.<lambda>l  s   ø€ �G×,Ñ,Ü—‘Ð Bó€ r&   r	   F)rl   rm   r!   rY  r   r/   s    `r   r   z(TorchFunctionModeStackSource.reconstructj  sQ   ø€ Ø×Ñóô	
ð
 	×Ñ˜w×8Ñ8¸¿¹Ó9JÓKÐLÔMØ×ÑÔ2°1°eÓ<Õ=r&   c                 ó"   — t         j                  S r   r_   r4   s    r   r   z)TorchFunctionModeStackSource.guard_sources  ra   r&   N)	r9   r:   r;   rT   r=   r8   rY  r   r   r?   r&   r   rR  rR  ^  s   … à	ƒHòòGò
>ó"r&   rR  c                   ó0   — e Zd ZU eed<   d„ Zd„ Zd„ Zd„ Zy)r   Úsource_namec                 ó\   — |j                  |j                  | j                  d¬«      «       y )NFrZ   )r    r]   r_  r/   s     r   r   zConstantSource.reconstruct{  s&   € Ø×Ñ˜g×8Ñ8¸×9IÑ9IÈuÐ8ÓUÕVr&   c                 ó"   — t         j                  S r   )r   r   r4   s    r   r   zConstantSource.guard_source~  s   € Ü×#Ñ#Ð#r&   c                 ó   — | j                   S r   )r_  r4   s    r   r8   zConstantSource.name�  s   € Ø×ÑÐr&   c                 ó   — t         ‚r   r©   )r0   Úfns     r   rª   zConstantSource.make_guard„  r«   r&   N)	r9   r:   r;   r<   r=   r   r   r8   rª   r?   r&   r   r   r   w  s   … àÓòWò$ò ó"r&   r   c                   ó$   — e Zd Zdefd„Zd„ Zd„ Zy)ÚNumpyTensorSourceÚreturnc                 ó>   — d| j                   j                  «       › d�S )Nz___from_numpy(rŽ   ry   r4   s    r   r8   zNumpyTensorSource.nameŠ  s   € Ø §	¡	§¡Ó 0Ð1°Ð3Ð3r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zNumpyTensorSource.guard_source�  rw   r&   c                 óš   ‡— ‰j                  ˆfd„«       | j                  j                  ‰«       ‰j                  t	        dd«      «       y )Nc                  ó(   •— ‰ j                  dd«      S )NÚtorchÚ	as_tensorr$  r  s   €r   rj   z/NumpyTensorSource.reconstruct.<locals>.<lambda>‘  s   ø€  g×&>Ñ&>¸wÈÓ&T€ r&   r	   Fr%  r/   s    `r   r   zNumpyTensorSource.reconstruct�  s:   ø€ Ø×ÑÓTÔUØ�	‰	×Ñ˜gÔ&Ø×ÑÔ2°1°eÓ<Õ=r&   N)r9   r:   r;   r<   r8   r   r   r?   r&   r   rf  rf  ˆ  s   „ ð4�có 4ò(ó>r&   rf  c                   ó   — e Zd Zdefd„Zd„ Zy)ÚSubclassAttrListSourcerg  c                 ó<   — | j                   j                  «       › d�S )Nz.__tensor_flatten__()[0]ry   r4   s    r   r8   zSubclassAttrListSource.name˜  s   € Ø—)‘)—.‘.Ó"Ð#Ð#;Ð<Ð<r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   z#SubclassAttrListSource.guard_source›  rw   r&   N©r9   r:   r;   r<   r8   r   r?   r&   r   ro  ro  –  s   „ ð=�có =ó(r&   ro  c                   ó   — e Zd Zdefd„Zd„ Zy)ÚFloatTensorSourcerg  c                 ó>   — d| j                   j                  «       › d�S )Nz___as_tensor(rŽ   ry   r4   s    r   r8   zFloatTensorSource.name£  s   € Ø˜tŸy™yŸ~™~Ó/Ð0°Ð2Ð2r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   zFloatTensorSource.guard_source¦  rw   r&   Nrr  r?   r&   r   rt  rt  ¡  s   „ ð3�có 3ó(r&   rt  c                   ó   — e Zd Zdefd„Zd„ Zy)ÚCallMethodItemSourcerg  c                 ó<   — | j                   j                  «       › d�S )Nz.item()ry   r4   s    r   r8   zCallMethodItemSource.name¬  s   € Ø—)‘)—.‘.Ó"Ð# 7Ð+Ð+r&   c                 ó6   — | j                   j                  «       S r   rv   r4   s    r   r   z!CallMethodItemSource.guard_source¯  rw   r&   Nrr  r?   r&   r   rx  rx  ª  s   „ ð,�có ,ó(r&   rx  c                   ó   — e Zd Zd„ Zd„ Zy)ÚShapeEnvSourcec                  ó   — yrM  r?   r4   s    r   r8   zShapeEnvSource.name¸  rN  r&   c                 ó"   — t         j                  S r   )r   Ú	SHAPE_ENVr4   s    r   r   zShapeEnvSource.guard_source»  r¤   r&   NrP  r?   r&   r   r|  r|  ¶  s   „ òó%r&   r|  c                   ó   — e Zd Zd„ Zd„ Zy)ÚBackwardStateSourcec                  ó   — yrM  r?   r4   s    r   r8   zBackwardStateSource.nameÁ  rN  r&   c                 ó"   — t         j                  S r   )r   ÚBACKWARD_STATEr4   s    r   r   z BackwardStateSource.guard_sourceÄ  s   € Ü×)Ñ)Ð)r&   NrP  r?   r&   r   r�  r�  ¿  s   „ òó*r&   r�  ©Úallow_cell_or_freevarc                ó’   — t        | t        «      rt        | j                  |¬«      S t        | t        «      sy|s| j
                  ryy)Nr…  FT)r   r   Úis_from_local_sourcer   r)   r+   )r   r†  s     r   rˆ  rˆ  È  sC   € Ü�&œ-Ô(Ü#Ø�K‰KÐ/Dô
ð 	
ô �fœkÔ*ØÙ  V×%;Ò%;ØØr&   c                 óp   — t        | t        «      ryt        | t        «      rt        | j                  «      S yr   )r   rž   r   Ú)is_from_unspecialized_param_buffer_sourcer   r   s    r   rŠ  rŠ  Ô  s,   € Ü�&Ô8Ô9ØÜ�&œ-Ô(Ü8¸¿¹ÓEÐEØr&   c                 óp   — t        | t        «      ryt        | t        «      rt        | j                  «      S yr   )r   rØ   r   Ú$is_from_flatten_script_object_sourcer   r   s    r   rŒ  rŒ  Ü  s,   € Ü�&Ô3Ô4ØÜ	�FœMÔ	*Ü3°F·K±KÓ@Ð@Ør&   c                 óp   — t        | t        «      ryt        | t        «      rt        | j                  «      S yr   )r   r4  r   Úis_from_optimizer_sourcer   r   s    r   rŽ  rŽ  ä  s+   € Ü�&œ/Ô*ØÜ�&œ-Ô(Ü'¨¯©Ó4Ð4Ør&   c                 óp   — t        | t        «      ryt        | t        «      rt        | j                  «      S yr   )r   ré   r   Úis_from_defaultsr   r   s    r   r�  r�  î  s+   € Ü�&œ.Ô)ØÜ�&œ-Ô(Ü §¡Ó,Ð,Ør&   c                 óD   — t        | t        «      xr | j                  dk(  S )NÚcell_contents)r   r|   r}   r   s    r   Úis_cell_contentsr“  ö  s   € Ü�fœjÓ)ÒN¨f¯m©m¸Ñ.NÐNr&   )Or-  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_MODULErš   rA  rE  ÚLOCAL_FSDP_MODULEÚGLOBAL_FSDP_MODULErI  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   r4  r:  r?  rC  rG  rK  rR  r   rf  ro  rt  rx  r|  r�  rˆ  rŠ  rŒ  rŽ  r�  r“  r?   r&   r   ú<module>r      sÐ  ðã Û Û ß 'Ñ 'ç <Ñ <å ß MÝ ð ×Ñ�{×>Ñ>Ø×Ñ˜×@Ñ@Ø×+Ñ+¨[×-TÑ-TØ×,Ñ,¨k×.VÑ.Và×-Ñ-¨{×/XÑ/XØ×.Ñ.°×0ZÑ0ZØ×5Ñ5°{×7hÑ7hØ×6Ñ6¸×8jÑ8jð
'Ð #ð ×Ñ�{×@Ñ@Ø×Ñ˜×BÑBØ×-Ñ-¨{×/XÑ/XØ×.Ñ.°×0ZÑ0Zà×+Ñ+¨[×-VÑ-VØ×,Ñ,¨k×.XÑ.Xà×5Ñ5°{×7hÑ7hØ×6Ñ6¸×8jÑ8jð)Ð %ð ×Ñ�{×HÑHØ×Ñ˜×JÑJØ×-Ñ-¨{×/`Ñ/`Ø×.Ñ.°×0bÑ0bØ×+Ñ+¨[×-^Ñ-^Ø×,Ñ,¨k×.`Ñ.`à×5Ñ5°{×7hÑ7hØ×6Ñ6¸×8jÑ8jð
1Ð -ð ×Ñ�{×4Ñ4Ø×Ñ˜×6Ñ6Ø×+Ñ+¨[×-JÑ-JØ×,Ñ,¨k×.LÑ.LØ×!Ñ! ;×#@Ñ#@Ø×"Ñ" K×$BÑ$BØ×-Ñ-¨{×/LÑ/LØ×.Ñ.°×0NÑ0NØ×5Ñ5°{×7TÑ7TØ×6Ñ6¸×8VÑ8VðÐ ò	ðKØÐ7Ñ8óKð €×Ñ˜dÔ#ô-�&ó -ó $ð-ð €×Ñ˜dÔ#ô
7˜6ó 
7ó $ð
7ð €×Ñ˜dÔ#ô8˜ó 8ó $ð8ð €×Ñ˜dÔ#ô
.�6ó 
.ó $ð
.ð €×Ñ˜dÔ#ô0˜&ó 0ó $ð0ð$ €×Ñ˜dÔ#ô	'˜ó 	'ó $ð	'ð €×Ñ˜dÔ#ô3�ó 3ó $ð3ð: €×Ñ˜dÔ#ô3�ó 3ó $ð3ð €×Ñ˜dÔ#ôM˜
ó Mó $ðMð €×Ñ˜dÔ#ô	 Zó 	ó $ð	ð €×Ñ˜dÔ#ô�fó ó $ðô $�T—Y‘Yô $ð €×Ñ˜dÔ#ô#;˜=ó #;ó $ð#;ðL €×Ñ˜dÔ#ô/�=ó /ó $ð/ð €×Ñ˜dÔ#ôG�}ó Gó $ðGð €×Ñ˜dÔ#ô7 ó 7ó $ð7ð €×Ñ˜dÔ#ô> mó >ó $ð>ô0�mô 0ð €×Ñ˜dÔ#ô!�]ó !ó $ð!ðH €×Ñ˜dÔ#ô(9�Mó (9ó $ð(9ðV €×Ñ˜dÔ#ôB˜ó Bó $ðBð" €×Ñ˜dÔ#ô
P ó 
Pó $ð
Pð €×Ñ˜dÔ#ô+�ó +ó $ð+ð  €×Ñ˜dÔ#ôK˜ó Kó $ðKð8 €×Ñ˜dÔ#ô �mó  ó $ð ð €×Ñ˜dÔ#ô �]ó  ó $ð ð €×Ñ˜dÔ#ôO .ó Oó $ðOð
 €×Ñ˜dÔ#ôWÐ)Dó Wó $ðWð
 €×Ñ˜dÔ#ôC˜ó Có $ðCð
 €×Ñ˜dÔ#ô"˜ó "ó $ð"ð €×Ñ˜dÔ#ô" 6ó "ó $ð"ð0 €×Ñ˜dÔ#ô"�Vó "ó $ð"ð  €×Ñ˜dÔ#ô
>˜ó 
>ó $ð
>ð €×Ñ˜dÔ#ô(˜]ó (ó $ð(ð €×Ñ˜dÔ#ô(˜ó (ó $ð(ð €×Ñ˜dÔ#ô(˜=ó (ó $ð(ð €×Ñ˜dÔ#ô%�Vó %ó $ð%ð €×Ñ˜dÔ#ô*˜&ó *ó $ð*ð CGò 	 ó 	ð°fó ð°ó ð Vó ð˜Vó ðO˜Vô Or&   