Ë
    L²jY  ã                   óø  — d dl Z d dlZd dlZd dlmZ d dlmZmZmZ d dl	Z	d dl
mZ d dlmZmZ d dlmZ d dlmZmZmZmZmZmZmZ d dlmZ erd d	lmZ  G d
„ de«      Zdedefd„Z de	jB                  jD                  ddfd„Z#de	jB                  jD                  ddfd„Z$de	jB                  jD                  ddfd„Z% G d„ de&«      Z'dede(defd„Z) G d„ de'¬«      Z* G d„ de*«      Z+d!d„Z,d!d„Z-de(de&e*   fd „Z.y)"é    N)ÚIterable)ÚAnyÚfinalÚTYPE_CHECKING)Úis_opaque_type)ÚHigherOrderOperatorÚ
OpOverload)Ú
FakeTensor)ÚCustomObjArgumentÚ	InputKindÚSymBoolArgumentÚSymFloatArgumentÚSymIntArgumentÚTensorArgumentÚTokenArgument)ÚGraphModule)ÚExportedProgramc                   ó   — e Zd Zy)ÚSpecViolationErrorN)Ú__name__Ú
__module__Ú__qualname__© ó    úU/var/www/html/ia-enhanced/venv/lib/python3.12/site-packages/torch/_export/verifier.pyr   r      s   „ Ør   r   ÚopÚreturnc                 ó0   — | j                   j                   S ©N)Ú_schemaÚ
is_mutable©r   s    r   Úis_functionalr#       s   € Ø�z‰z×$Ñ$Ð$Ð$r   Únodec                 ó   — t        | «      S r   )Ú
_check_val)r$   s    r   Ú_check_has_fake_tensorr'   $   s   € ä�dÓÐr   c                 ó,  ‡‡‡‡— ddl mŠmŠmŠ ˆˆˆˆfd„Šd„ }d| j                  vr;| j
                  dk(  r || j                  «      ry t        d| j                  › d�«      ‚| j                  d   } ‰|«      st        d| j                  › d	|› �«      ‚y )
Nr   )ÚSymBoolÚSymFloatÚSymIntc                 óÖ  •— | €yt        | t        t        t        t        f«      ryt        | t
        j                  t
        j                  t
        j                  t
        j                  f«      ryt        | t        t
        j                  f«      ryt        | ‰‰‰f«      ryt        | t        «      ryt        | t        «      rt        ˆfd„| D «       «      S t        t!        | «      «      ryy)NTc              3   ó.   •K  — | ]  } ‰|«      –— Œ y ­wr   r   )Ú.0ÚxÚ_check_correct_vals     €r   ú	<genexpr>z9_check_val.<locals>._check_correct_val.<locals>.<genexpr>>   s   øè ø€ Ò:°Ñ)¨!×,Ñ:ùs   ƒF)Ú
isinstanceÚintÚboolÚstrÚfloatÚtorchÚmemory_formatÚdtypeÚdeviceÚlayoutr
   ÚTensorr   r   Úallr   Útype)Úvalr)   r*   r+   r0   s    €€€€r   r0   z&_check_val.<locals>._check_correct_val,   s¸   ø€ Øˆ;ØÜ˜œc¤4¬¬eÐ4Ô5ØÜØ”%×%Ñ%¤u§{¡{´E·L±LÄ%Ç,Á,ÐOô
ð ÜØ”*œeŸl™lÐ+ô
ð Ü˜˜f h°Ð8Ô9ØÜ˜Ô.Ô/ØÜ˜œXÔ&ÜÓ:°cÔ:Ó:Ð:ÜœD ›IÔ&ØØr   c                 óh   — t        | t        «      syt        | j                  j                  «      dk(  S )NFr   )r2   r	   Úlenr    Úreturnsr"   s    r   Ú_no_returnsz_check_val.<locals>._no_returnsC   s)   € Ü˜"œjÔ)ØÜ�2—:‘:×%Ñ%Ó&¨!Ñ+Ð+r   r?   Úcall_functionú
Node.meta z is missing val field.z has invalid val field )	Ú%torch.fx.experimental.symbolic_shapesr)   r*   r+   Úmetar   Útargetr   Úname)r$   rC   r?   r)   r*   r+   r0   s      @@@@r   r&   r&   )   s�   û€ ßOÑO÷ò.,ð
 �D—I‘IÑØ�7‰7�oÒ%©+°d·k±kÔ*BØÜ  :¨d¯i©i¨[Ð8NÐ!OÓPÐPà
�)‰)�EÑ
€CÙ˜cÔ"Ü  :¨d¯i©i¨[Ð8OÐPSÈuÐ!UÓVÐVð #r   c                 ó  — | j                   j                  d«      }|€t        d| j                  › �«      ‚t	        |t
        «      sCt	        |d   t        «      r/t	        |d   t        «      rt        d| j                  › d|› �«      ‚y y y )NÚtorch_fnz*Unable to find torch_fn metadata for node r   é   rE   z has invalid torch_fn field )rG   Úgetr   rI   r2   Útupler5   )r$   rK   s     r   Ú_check_torch_fnrO   R   sŽ   € Ø�y‰y�}‰}˜ZÓ(€HØÐÜ Ø8¸¿¹¸ÐDó
ð 	
ô �x¤Ô'Ü�x ‘{¤CÔ(Ü�x ‘{¤CÔ(ä Ø˜Ÿ™˜Ð#?À¸zÐJó
ð 	
ð )ð )ð (r   c                   ó2   — e Zd ZU i Zeeed   f   ed<   d„ Zy)Ú_VerifierMetaÚVerifierÚ	_registryc                 óž  — |r<d|v sd|v rt        d«      ‚d|vs|d   dk(  rTt        d|j                  d«      › �«      ‚d|vrt        d«      ‚d|vrt        d«      ‚|d   dk7  rt        d	|d   › �«      ‚t        |d   t        «      st        d
t        |d   «      › �«      ‚t
        j                  | |||«      }|| j                  |d   <   |S )NÚcheckÚ_check_graph_modulez'Overriding method check is not allowed.ÚdialectÚATENz,subclass must define dialect != 'ATEN', got z%base class must define 'check' methodz3base class must define '_check_graph_module' methodz'base class dialect must be 'ATEN', got zdialect must be str, got )ÚSyntaxErrorÚAssertionErrorrM   r2   r5   r>   Ú__new__rS   )ÚmetaclsrI   ÚbasesÚattrsÚrets        r   r[   z_VerifierMeta.__new__e   s  € ÙØ˜%ÑÐ#8¸EÑ#AÜ!Ð"KÓLÐLØ Ñ%¨¨yÑ)9¸VÒ)CÜ$ØBÀ5Ç9Á9ÈYÓCWÐBXÐYóð ð ˜eÑ#Ü$Ð%LÓMÐMØ$¨EÑ1Ü$ØIóð ð �YÑ 6Ò)Ü$Ø=¸eÀIÑ>NÐ=OÐPóð ô ˜% 	Ñ*¬CÔ0Ü Ð#<¼TÀ%È	ÑBRÓ=SÐ<TÐ!UÓVÐVÜ�l‰l˜7 D¨%°Ó7ˆØ.1ˆ×Ñ˜% 	Ñ*Ñ+Øˆ
r   N)	r   r   r   rS   Údictr5   r>   Ú__annotations__r[   r   r   r   rQ   rQ   b   s    … Ø-/€Iˆt�C˜˜jÑ)Ð)Ñ*Ó/ór   rQ   ÚobjrH   c           	      óÂ   — |j                  d«      }| }t        |«      D ]=  \  }}t        ||«      s t        ddj	                  |d | «      › �«      ‚t        ||«      }Œ? |S )Nú.z#Node referenced nonexistent target )ÚsplitÚ	enumerateÚhasattrÚRuntimeErrorÚjoinÚgetattr)rb   rH   Útarget_atomsÚattr_itrÚiÚatoms         r   Úgetattr_recursivero   €   st   € Ø—<‘< Ó$€LØ€HÜ˜\Ó*ò +‰ˆˆ4Ü�x Ô&ÜØ5°c·h±h¸|ÈBÈQÐ?OÓ6PÐ5QÐRóð ô ˜8 TÓ*‰ð+ð €Or   c                   óÚ   — e Zd ZdZdefd„Zdeee   df   fd„Z	deee   df   fd„Z
deee   df   fd„Zd„ Zd	edd
fd„Zedd„«       Zed	ej$                  j                  dd
fd„«       Zy
)rR   rX   r   c                 óà  — t         j                  t         j                  t         j                  t         j                  t         j
                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                   t         j"                  t         j$                  t         j&                  t         j(                  t         j*                  t,        j.                  t,        j0                  t,        j2                  t4        gS r   )ÚoperatorÚgetitemÚaddÚmulÚsubÚtruedivÚgeÚleÚgtÚltÚeqÚneÚfloordivÚmodÚand_Úor_Únot_ÚpowÚnegÚabsÚlshiftÚrshiftÚmathÚceilÚfloorÚtruncÚround©Úselfs    r   Úallowed_builtin_opszVerifier.allowed_builtin_ops�   s½   € ä×ÑÜ�L‰LÜ�L‰LÜ�L‰LÜ×ÑÜ�K‰KÜ�K‰KÜ�K‰KÜ�K‰KÜ�K‰KÜ�K‰KÜ×ÑÜ�L‰LÜ�M‰MÜ�L‰LÜ�M‰MÜ�L‰LÜ�L‰LÜ�L‰LÜ�O‰OÜ�O‰OÜ�I‰IÜ�J‰JÜ�J‰JÜð3
ð 	
r   .c                 ó   — t         t        fS r   )r	   r   r�   s    r   Úallowed_op_typeszVerifier.allowed_op_types¬   s   € ÜÔ/Ð0Ð0r   c                 ó~   — t         j                  j                  t         j                  j                  j
                  fS r   )r7   Úfxr   ÚutilsÚ_pytreeÚTreeSpecr�   s    r   Úallowed_getattr_typeszVerifier.allowed_getattr_types¯   s'   € Ü—‘×$Ñ$¤e§k¡k×&9Ñ&9×&BÑ&BÐCÐCr   c                 óâ   — t         j                  j                  t         j                  j                  j
                  t         j                  t         j                  j                  j                  fS r   )
r7   r“   r   ÚnnÚ	parameterÚ	Parameterr<   r”   r•   r–   r�   s    r   Úallowed_getattr_types_for_subgmz(Verifier.allowed_getattr_types_for_subgm²   sH   € ô �H‰H× Ñ Ü�H‰H×Ñ×(Ñ(Ü�L‰LÜ�K‰K×Ñ×(Ñ(ð	
ð 	
r   c                  ó   — y r   r   )rŽ   r   s     r   Úcheck_valid_opzVerifier.check_valid_op»   s   € Ør   ÚgmNc                  ó   — y)zG
        Additional checks that are specific to some dialects.
        Nr   )rŽ   rŸ   s     r   Úcheck_additionalzVerifier.check_additional¾   s   � r   c                 óf   — | j                  |j                  «       t        |«       t        |«       y r   )rV   Úgraph_moduleÚ*_verify_exported_program_module_call_graphÚ"_verify_exported_program_signature)rŽ   Úeps     r   rU   zVerifier.checkÃ   s$   € à× Ñ  §¡Ô1Ü2°2Ô6Ü*¨2Õ.r   c                 ó  ‡ ‡— dt         t        t           df   fˆ fd„}dˆ fd„}|j                  «       D �]¹  }||u }t	        |t
        j                  j                  «      sŒ-|j                  j                  «        |j                  j                  D �]Y  }|j                  dv rt        d|j                  › d�«      ‚|j                  dk(  rt        |«        ||j                  «       ŒX|j                  d	k(  �rÖt	        |j                  t        «      s!t        d
t        |j                  «      › �«      ‚t!        ||j                  «      Št	        ‰t
        j"                  j$                  «      �rˆfd„}t        ‰«      j&                  dk(  rÎ |dt        «      r*t)        ‰d«      rt)        ‰d«      rt+        ‰dd «      dk(  r�Œ2 |dt        «      r( |dt,        «      r |dt.        «      rt)        ‰d«      r�Œgt+        ‰dd «      }t+        ‰dd «      }	t+        ‰dd «      }
t        dt        ‰«      › dt        |«      › dt        |	«      › dt        |
«      › �«      ‚t        ‰«      j&                  dk(  r�Œãt        ‰«      j&                  dk(  r�Œýt	        ‰ ||«      «      r�Œt        dt        ‰«      › d|j                  › d ||«      › �«      ‚|j                  dk(  s�ŒOt        |«       �Œ\ �Œ¼ ‰ j1                  |«       y )Nr   .c                 óˆ   •— | r‰j                  «       }n‰j                  «       }t        d„ |D «       «      rt        d«      ‚|S )Nc              3   ó,   K  — | ]  }|t         u –— Œ y ­wr   ©Úobject©r.   Úts     r   r1   zOVerifier._check_graph_module.<locals>._allowed_getattr_types.<locals>.<genexpr>Ð   s   è ø€ Ò, 1�1œ”;Ñ,ùó   ‚z/allowed_getattr_types must not contain 'object')r—   rœ   ÚanyrZ   )Úis_toplevel_gmr_   rŽ   s     €r   Ú_allowed_getattr_typesz<Verifier._check_graph_module.<locals>._allowed_getattr_typesË   sA   ø€ ÙØ×0Ñ0Ó2‘à×:Ñ:Ó<�ÜÑ,¨Ô,Ô,Ü$Ð%VÓWÐWØˆJr   c                 ó^  •— dt         fˆfd„}dt        t        t           df   fˆfd„}t        j
                  j                  j                  t        j                  t        j                  t        j                  t        j                  t        j                  t        j                  t        j                  t        j                  t        j                   j"                  j$                  t        j&                  j(                  t        j*                  j,                  j.                  t        j*                  j,                  j0                  t        j2                  j4                  j6                  j8                  t        j:                  j<                  j>                  t        j:                  j<                  j@                  t        j:                  j<                  jB                  t        j:                  j<                  jD                  t        j:                  j<                  jF                  f}tI        |  |«       «      s.|  |«       vr%| |vr!tK        d| › d |«       › d |«       › d|› �«      ‚tI        | tL        «      r)‰jN                  d	k7  rtQ        | «      stK        d
| › d�«      ‚‰jS                  | «       y )Nr   c                  ób   •— ‰j                  «       } t        d„ | D «       «      st        d«      ‚| S )Nc              3   óF   K  — | ]  }t        j                  |«      –— Œ y ­wr   )ÚinspectÚ	isbuiltin)r.   r   s     r   r1   zfVerifier._check_graph_module.<locals>._check_valid_op.<locals>._allowed_builtin_ops.<locals>.<genexpr>×   s   è ø€ Ò?°Rœ7×,Ñ,¨R×0Ñ?ùs   ‚!z(allowed_builtin_ops must all be builtins)r�   r=   rZ   ©r_   rŽ   s    €r   Ú_allowed_builtin_opszSVerifier._check_graph_module.<locals>._check_valid_op.<locals>._allowed_builtin_opsÕ   s0   ø€ Ø×.Ñ.Ó0�ÜÑ?¸3Ô?Ô?Ü(Ð)SÓTÐTØ�
r   .c                  ób   •— ‰j                  «       } t        d„ | D «       «      rt        d«      ‚| S )Nc              3   ó,   K  — | ]  }|t         u –— Œ y ­wr   rª   r¬   s     r   r1   zcVerifier._check_graph_module.<locals>._check_valid_op.<locals>._allowed_op_types.<locals>.<genexpr>Ý   s   è ø€ Ò0 q�qœF”{Ñ0ùr®   z*allowed_op_types must not contain 'object')r‘   r¯   rZ   r·   s    €r   Ú_allowed_op_typeszPVerifier._check_graph_module.<locals>._check_valid_op.<locals>._allowed_op_typesÛ   s0   ø€ Ø×+Ñ+Ó-�ÜÑ0¨CÔ0Ô0Ü(Ð)UÓVÐVØ�
r   z
Operator 'z#' is not an allowed operator type: z
Valid builtin ops: zValid torch functions: ÚTRAININGz
operator 'z' is not functional)*ÚlistrN   r>   r   r7   ÚautogradÚ	grad_modeÚset_grad_enabledÚsym_intÚ	sym_floatÚsym_iteÚsym_maxÚsym_minÚsym_notÚsym_sqrtÚsym_sumÚexportÚ
custom_opsÚ._call_custom_autograd_function_in_pre_dispatchÚ_CÚ_set_grad_enabledÚampÚautocast_modeÚ_enter_autocastÚ_exit_autocastr“   ÚexperimentalÚsymbolic_shapesÚ cast_symbool_to_symint_guardlessÚ
_functorchÚpredispatchÚ_add_batch_dimÚ_remove_batch_dimÚ_vmap_increment_nestingÚ_vmap_decrement_nestingÚlazy_load_decompositionsr2   r   r	   rW   r#   rž   )r   r¸   r»   Ú_allowed_torch_functionsrŽ   s       €r   Ú_check_valid_opz5Verifier._check_graph_module.<locals>._check_valid_opÔ   sî  ø€ ð¬$õ ð¤u¬T´#©Y¸¨^Ñ'<õ ô —‘×(Ñ(×9Ñ9Ü—‘Ü—‘Ü—‘Ü—‘Ü—‘Ü—‘Ü—‘Ü—‘Ü—‘×'Ñ'×VÑVô —‘×*Ñ*Ü—	‘	×'Ñ'×7Ñ7Ü—	‘	×'Ñ'×6Ñ6Ü—‘×%Ñ%×5Ñ5×VÑVÜ× Ñ ×,Ñ,×;Ñ;Ü× Ñ ×,Ñ,×>Ñ>Ü× Ñ ×,Ñ,×DÑDÜ× Ñ ×,Ñ,×DÑDÜ× Ñ ×,Ñ,×EÑEð-(Ð$ô2 ˜bÑ"3Ó"5Ô6àÑ2Ó4Ñ4ØÐ":Ñ:ä,Ø$ R DÐ(KÑL]ÓL_ÐK`ð a.Ù.BÓ.DÐ-EØ1Ð2JÐ1KðMóð ô ˜"œjÔ)ð —<‘< :Ò-´mÀBÔ6GÜ,¨z¸"¸Ð=PÐ-QÓRÐRØ×Ñ Õ#r   >   Úcall_methodÚcall_modulez'call_module is not valid: got a class 'z' rD   Úget_attrz/Expected get_attr target to be string, but got c                 ó2   •— t        t        ‰| d «      |«      S r   )r2   rj   )rI   ÚtyÚattrs     €r   Ú_is_typez.Verifier._check_graph_module.<locals>._is_type)  s   ø€ Ü#-¬g°d¸DÀ$Ó.GÈÓ#LÐLr   ÚLoweredBackendModuleÚ
backend_idÚoriginal_moduleÚmodule_nameÚaotiÚprocessed_bytesÚcompile_specszInvalid get_attr type z2. 
LoweredBackendModule fields: backend_id(str) : z, processed_bytes(bytes) : z, compile_specs(list) : ÚAOTInductorEPModuleÚAOTInductorRunnerWrapperz on target z. 
Valid get_attr types: Úplaceholder©r   N)rN   r>   r   Úmodulesr2   r7   r“   r   ÚgraphÚlintÚnodesr   r   rH   r&   r5   ro   r™   ÚModuler   rg   rj   Úbytesr½   r¡   )rŽ   rŸ   r±   rÝ   r   r°   r$   rä   ræ   rê   rë   rã   s   `          @r   rV   zVerifier._check_graph_moduleÉ   sÆ  ù€ ð	´e¼DÄ¹IÀs¸NÑ6Kõ 	õ7	$ðr —:‘:“<ó F	%ˆCØ  B˜YˆNä˜c¤5§8¡8×#7Ñ#7Ô8Øà�I‰I�N‰NÔØŸ	™	Ÿ™ó ?%�à—7‘7Ð<Ñ<Ü,ØAÀ$Ç+Á+ÀÈbÐQóð ð —W‘W Ò/Ü˜tÔ$á# D§K¡KÕ0à—W‘W 
Ó*Ü% d§k¡k´3Ô7Ü0ØMÌdÐSW×S^ÑS^ÓN_ÐM`Ðaóð ô -¨S°$·+±+Ó>�DÜ! $¬¯©¯©Õ8ôMô   ›:×.Ñ.Ð2HÒHá (¨´sÔ ;Ü$+¨DÐ2CÔ$DÜ$+¨D°-Ô$@Ü$+¨D°,ÀÓ$EÈÒ$Oá (á (¨´sÔ ;Ù$,Ð->ÄÔ$FÙ$,¨_¼dÔ$CÜ$+¨DÐ2CÔ$Dá (ä-4°T¸<ÈÓ-N 
Ü29¸$Ð@QÐSWÓ2X Ü07¸¸oÈtÓ0T Ü&8Ø&<¼TÀ$»Z¸Lð I9ä9=¸jÓ9IÐ8Jð K@Ü@DÀ_Ó@UÐ?Vð W=Ü=AÀ-Ó=PÐ<Qð	%Só'"ð !"ô " $›Z×0Ñ0Ð4IÒIÙ$ä! $›Z×0Ñ0Ð4NÒNÙ$ä% dÑ,BÀ>Ó,RÖSÜ0Ø4´T¸$³Z°LÀÈDÏKÉKÈ=ð Y5Ù5KÈNÓ5[Ð4\ð^óð ð
 —W‘W Ô-Ü˜tÖ$ò?%ðF	%ðV 	×Ñ˜bÕ!r   )r¦   r   r   N)r   r   r   rW   r½   r�   rN   r>   r   r‘   r—   rœ   rž   r   r¡   r   rU   r7   r“   rV   r   r   r   rR   rR   Œ   s¼   „ Ø€Gð
 Tó 
ð:1 %¨¨S©	°3¨Ñ"7ó 1ðD u¨T°#©Y¸¨^Ñ'<ó Dð
°°t¸C±yÀ#°~Ñ1Fó 
òð ;ð °4ó ð
 ò/ó ð/ð
 ðN" e§h¡h×&:Ñ&:ð N"¸tò N"ó ñN"r   rR   )Ú	metaclassc                   ó   — e Zd ZdZy)ÚTrainingIRVerifierr¼   N)r   r   r   rW   r   r   r   rø   rø   [  s   „ Ø�Gr   rø   c                 óä  — | j                   }| j                  j                  D �ch c]  }|j                  ’Œ }}|D ]­  }|j                  €Œ|j                  j
                  D ]6  }|j                  sŒ|j                  |vsŒt        d|j                  › d�«      ‚ |j                  j                  D ]6  }|j                  sŒ|j                  |vsŒt        d|j                  › d�«      ‚ Œ¯ y c c}w )NzInput z does not exist in the graph.zOutput )Úmodule_call_graphrñ   ró   rI   Ú	signatureÚinputsr   Úoutputs)Úexported_programrú   r$   ró   ÚentryÚargs         r   r¤   r¤   _  sä   € Ø(×:Ñ:ÐØ#3×#9Ñ#9×#?Ñ#?Ö@˜4ˆT�Y‹YÐ@€EÐ@Ø"ò ˆØ�?‰?Ñ&Ø—‘×-Ñ-ò �Ø—8“8 §¡°Ò 5Ü,Ø  §¡ 
Ð*GÐHóð ðð
 —‘×.Ñ.ò �Ø—8“8 §¡°Ò 5Ü,Ø! #§(¡( Ð+HÐIóð ññùò As   ¥C-c           
      ó´  — | j                   }| j                  j                  D �cg c]  }|j                  dk(  sŒ|j                  ‘Œ  }}t        |«      t        |j                  «      k7  r¥|j                  D �cg c]/  }t        |j                  d«      sŒ|j                  j                  ‘Œ1 }}t        |«      t        |«      z
  }t        |«      t        |«      z
  }t        dt        |«      › dt        |j                  «      › d|› d|› �«      ‚t        |j                  |«      D �]L  \  }}t        |j                  t        t        t        t         f«      r>|j                  j                  |k7  r%t        d|j                  j                  › d|› �«      ‚|j"                  t$        j&                  k(  rŒ�|j"                  t$        j(                  k(  rÐt        |j                  t        «      s&t        d	|j                  › d
|j                  › d�«      ‚|j*                  €t        d|j                  › d�«      ‚|j*                  }	|	| j,                  vrt        d	|	› d�«      ‚t        | j,                  |	   t.        j0                  j2                  «      r�Œkt        d|	› d�«      ‚|j"                  t$        j4                  k(  ræt        |j                  t        «      s&t        d|j                  › d
|j                  › d�«      ‚|j*                  €t        d|j                  › d�«      ‚|j*                  }
|j6                  €t        d|
› d�«      ‚|j6                  du r|
| j,                  vrt        d|
› d�«      ‚|j6                  du s�Œ^|
| j,                  v s�Œnt        d|
› d�«      ‚|j"                  t$        j8                  k(  r�t        |j                  t        «      s&t        d|j                  › d
|j                  › d�«      ‚|j*                  €t        d|j                  › d�«      ‚|j*                  }|| j:                  vs�Œt        d|› d�«      ‚|j"                  t$        j<                  k(  r�t        |j                  t>        «      s&t        d|j                  › d|j                  › d�«      ‚|j*                  €t        d|j                  › d�«      ‚|j*                  }|| j:                  vs�ŒÈt        d|› d�«      ‚|j"                  t$        j@                  k(  rBt        |j                  tB        «      r�Œt        d|j                  › d
|j                  › d�«      ‚t        d|j"                  › d�«      ‚ tE        | j                  j                  «      d   }|j                  dk7  rtG        d|j                  › �«      ‚|jH                  d    D �cg c]4  }t        |t.        jJ                  jL                  «      r|j                  n|‘Œ6 }}t        |«      t        |jN                  «      k7  r¹|jN                  D �cg c]C  }t        |j                  d«      r|j                  j                  ntQ        |j                  «      ‘ŒE }}t        |«      t        |«      z
  }t        |«      t        |«      z
  }t        d!t        |«      › d"t        |jN                  «      › d#|› d$|› �«      ‚t        |jR                  «      }t        |jT                  «      t        |jV                  «      z   t        |jX                  «      z   |z   }||| }|||t        |jZ                  «      z    }|D �]"  }||jT                  v rE|jT                  |   |j\                  vsŒ.t        d%|› d&|jT                  › d'|j\                  › d(�«      ‚||jV                  v rE|jV                  |   |j^                  vsŒ�t        d)|› d*|jV                  › d+|j^                  › d(�«      ‚||jX                  v rE|jX                  |   |j`                  vsŒÔt        d,|› d-|jX                  › d.|j`                  › d(�«      ‚t        d/|› d0|jT                  › d1|jX                  › �«      ‚ t        ||jZ                  «      D ]&  \  }}||k7  sŒt        d2|› d3|jZ                  › d4�«      ‚ y c c}w c c}w c c}w c c}w )5Nrî   rI   zNumber of graph inputs (z:) does not match number of inputs in the graph signature (z$)
Placeholders missing input_specs: z#
Input_specs missing placeholders: zInput spec name z does not match node name z
Parameter z! is not a tensor argument. Found z	 instead.zInputSpec for z has no target.z is not in the state dict.zState dict entry for parameter z* is not an instance of torch.nn.Parameter.zBuffer z is missing a persistence flagTFzNon-persistent buffer z( is in the state dict, it should not be.zConstant tensor z$ is not in the constants dictionary.zCustom object z( is not a custom object argument. Found zUnknown InputKind rd   éÿÿÿÿÚoutputzlast node must be output, got r   zNumber of output nodes zK is different Than the number of outputs specified by the graph signature: z
Nodes missing output_specs: z
Output_specs missing nodes: zBuffer output zV does not point to a buffer that exists. 
Dict of buffers that are mutated, in order: z 
Buffer nodes available: z 
zParameter output z\ does not point to a parameter that exists. 
Dict of parameters that are mutated, in order: z 
Parameter nodes available: zUser input output z^ does not point to a user input that exists. 
Dict of user inputs that are mutated, in order: z 
User input nodes available: zMutation node z: is neither a buffer nor a user input. Buffers to mutate: z, User inputs to mutate: zUser output zY is not in the correct order or is not found in the exported program's user_output list: z. )1Úgraph_signaturerñ   ró   r   rI   rA   Úinput_specsrg   r   Úsetr   Úzipr2   r   r   r   r   Úkindr   Ú
USER_INPUTÚ	PARAMETERrH   Ú
state_dictr7   r™   r›   ÚBUFFERÚ
persistentÚCONSTANT_TENSORÚ	constantsÚ
CUSTOM_OBJr   ÚTOKENr   r½   rZ   Úargsr“   ÚNodeÚoutput_specsr5   Úoutput_tokensÚbuffers_to_mutateÚparameters_to_mutateÚuser_inputs_to_mutateÚuser_outputsÚbuffersÚ
parametersÚuser_inputs)rþ   Úgsr$   Úinput_node_namesÚspecÚinput_spec_namesÚmissing_in_specsÚmissing_in_graphÚ
input_specÚparamÚbufferÚtensor_constÚ
custom_objÚoutput_noder   Úoutput_nodesÚoutput_spec_namesÚmissing_out_specsÚmissing_out_graphÚ
num_tokensÚendÚmutate_nodesÚuser_output_nodesÚmutation_nodeÚuser_output_nodeÚuser_output_names                             r   r¥   r¥   p  s:	  € à	×	)Ñ	)€Bð /×4Ñ4×:Ñ:öØ¸d¿g¹gÈÓ>Vˆ�	‹	ðÐð ô ÐÓ¤ B§N¡NÓ 3Ò3à&(§n¡nö
Ø"¼ÀÇÁÈ&Õ8QˆD�H‰H�M‹Mð
Ðð 
ô Ð/Ó0´3Ð7GÓ3HÑHÐÜÐ/Ó0´3Ð7GÓ3HÑHÐÜ Ø&¤sÐ+;Ó'<Ð&=ð >GÜGJÈ2Ï>É>ÓGZÐF[ð \1Ø1AÐ0Bð C1Ø1AÐ0BðDó
ð 	
ô   §¡Ð0@ÓAó ^NÑˆ
�DÜØ�N‰NÜœ^Ô-=¼ÐOô
ð �~‰~×"Ñ" dÒ*Ü(Ø& z§~¡~×':Ñ':Ð&;Ð;UÐVZÐU[Ð\óð ð �?‰?œi×2Ñ2Ò2Øà�_‰_¤	× 3Ñ 3Ò3Ü˜jŸn™n¬nÔ=Ü(Ø  §¡Ð 1Ð1RÐS]×SaÑSaÐRbÐbkÐlóð ð × Ñ Ð(Ü(Ø$ Z§_¡_Ð$5°_ÐEóð ð ×%Ñ%ˆEØÐ,×7Ñ7Ñ7Ü(¨:°e°WÐ<VÐ)WÓXÐXäÐ.×9Ñ9¸%Ñ@Ä%Ç(Á(×BTÑBTÖUÜ(Ø5°e°WÐ<fÐgóð ð �_‰_¤	× 0Ñ 0Ò0Ü˜jŸn™n¬nÔ=Ü(Ø˜jŸo™oÐ.Ð.OÐPZ×P^ÑP^ÐO_Ð_hÐióð ð × Ñ Ð(Ü(Ø$ Z§_¡_Ð$5°_ÐEóð ð  ×&Ñ&ˆFØ×$Ñ$Ð,Ü(Ø˜f˜XÐ%CÐDóð ð
 ×%Ñ%¨Ñ-ØÐ"2×"=Ñ"=Ñ=ä(¨7°6°(Ð:TÐ)UÓVÐVà×$Ñ$¨Ó-°&Ð<L×<WÑ<WÓ2WÜ(Ø,¨V¨HÐ4\Ð]óð ð �_‰_¤	× 9Ñ 9Ò9Ü˜jŸn™n¬nÔ=Ü(Ø& z§¡Ð&7Ð7XÐYc×YgÑYgÐXhÐhqÐróð ð × Ñ Ð(Ü(Ø$ Z§_¡_Ð$5°_ÐEóð ð &×,Ñ,ˆLØÐ#3×#=Ñ#=Ó=Ü(Ø& | nÐ4XÐYóð ð �_‰_¤	× 4Ñ 4Ò4Ü˜jŸn™nÔ.?Ô@Ü(Ø$ Z§_¡_Ð$5Ð5]Ð^h×^lÑ^lÐ]mÐmvÐwóð ð × Ñ Ð(Ü(Ø$ Z§_¡_Ð$5°_ÐEóð ð $×*Ñ*ˆJØÐ!1×!;Ñ!;Ó;Ü(Ø$ Z LÐ0TÐUóð ð �_‰_¤	§¡Ò/Ü˜jŸn™n¬mÖ<Ü(Ø& z§¡Ð&7Ð7XÐYc×YgÑYgÐXhÐhqÐróð ô %Ð'9¸*¿/¹/Ð9JÈ!Ð%LÓMÐMð}^NôB Ð'×-Ñ-×3Ñ3Ó4°RÑ8€KØ‡~�~˜Ò!ÜÐ=¸k¿n¹nÐ=MÐNÓOÐOð ×#Ñ# AÑ&öàô ˜s¤E§H¡H§M¡MÔ2ˆ�Š¸Ñ;ð€Lð ô
 ˆ<ÓœC §¡Ó0Ò0ð Ÿ™ö
àô % T§X¡X¨vÔ6ˆD�H‰H�MŠM¼CÀÇÁ»MÑIð
Ðð 
ô   Ó-´Ð4EÓ0FÑFÐÜÐ 1Ó2´S¸Ó5FÑFÐÜ Ø%¤c¨,Ó&7Ð%8ð 9LÜLOÐPR×P_ÑP_ÓL`ÐKað b+Ø+<Ð*=ð >+Ø+<Ð*=ð?ó
ð 	
ô �R×%Ñ%Ó&€JäˆB× Ñ Ó!Ü
ˆb×%Ñ%Ó
&ñ	'ä
ˆb×&Ñ&Ó
'ñ	(ð ñ	ð ð +¨:°cÐ:€LØ$ S¨3´°R·_±_Ó1EÑ+EÐFÐà%ó ˆØ˜B×0Ñ0Ñ0Ø×#Ñ# MÑ2¸"¿*¹*ÒDÜ(Ø$ ] Oð 4CØCE×CWÑCWÐBXð Y/Ø/1¯z©z¨l¸#ð?óð ð
 ˜b×5Ñ5Ñ5Ø×&Ñ& }Ñ5¸R¿]¹]ÒJÜ(Ø'¨ ð 7FØFH×F]ÑF]ÐE^ð _2Ø24·-±-°ÀðEóð ð
 ˜b×6Ñ6Ñ6Ø×'Ñ'¨Ñ6¸b¿n¹nÒLÜ(Ø(¨¨ð 8GØGI×G_ÑG_ÐF`ð a3Ø35·>±>Ð2BÀ#ðGóð ô %Ø   ð 0&Ø&(×&:Ñ&:Ð%;Ð;TÐUW×UmÑUmÐTnðpóð ð/ô8 /2Ð2CÀRÇ_Á_Ó.Uò Ñ*ÐÐ*ØÐ/Ó/Ü$ØÐ/Ð0ð 18à8:¿¹Ð7HÈðLóð ñùò]ùò

ùò`ùò
s#   ¥cºcÁ9cÂc×9cØ:AcrW   c                 ó„   — | dk(  s| dk(  r$t         j                  j                  | t        «      S t         j                  |    S )NrX   Ú )rQ   rS   rM   rR   )rW   s    r   Úload_verifierr6  ,  s:   € Ø�&Ò˜G ršMÜ×&Ñ&×*Ñ*¨7´HÓ=Ð=Ü×"Ñ" 7Ñ+Ð+r   rï   )/rµ   rˆ   rr   Úcollections.abcr   Útypingr   r   r   r7   Útorch._library.opaque_objectr   Ú
torch._opsr   r	   Útorch._subclasses.fake_tensorr
   Útorch.export.graph_signaturer   r   r   r   r   r   r   Útorch.fxr   Útorch.export.exported_programr   Ú	Exceptionr   r4   r#   r“   r  r'   r&   rO   r>   rQ   r5   ro   rR   rø   r¤   r¥   r6  r   r   r   ú<module>r@     s  ðã Û Û Ý $ß ,Ñ ,ã Ý 7ß 6Ý 4÷÷ ñ õ !ñ Ý=ô	˜ô 	ð%�jð % Tó %ð §¡§¡ð °4ó ð
&W�U—X‘X—]‘]ð &W tó &WðR
˜%Ÿ(™(Ÿ-™-ð 
¨Dó 
ô �Dô ð<	˜3ð 	¨ð 	°ó 	ôL"˜õ L"ô^˜ô óó"yðx,˜3ð , 4¨¡>ô ,r   