Ë
    ùÿæi¸é  ã                  óè  — d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	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mZmZmZ erd dlmZmZ 	 dA	 	 	 	 	 	 	 dBd
„Z ed¬«       G d„ d«      «       Z ed¬«       G d„ d«      «       Z ed¬«       G d„ de«      «       Z ed¬«       G d„ d«      «       Z  ed¬«       G d„ de «      «       Z! ed¬«       G d„ d«      «       Z" ed¬«       G d„ d«      «       Z# ed¬«       G d„ d«      «       Z$ ed¬«       G d„ d«      «       Z% ed¬«       G d„ d «      «       Z&d!d"œdCd#„Z'dDd$„Z(d!dd%œ	 	 	 	 	 	 	 dEd&„Z)dFd'„Z*dGd(„Z+d!d!d)œ	 	 	 	 	 	 	 dHd*„Z,d!d!d)œ	 	 	 	 	 	 	 	 	 dId+„Z-dJd,„Z.dKd-„Z/dKd.„Z0dLd/„Z1dMd0„Z2	 dN	 	 	 	 	 	 	 dOd1„Z3h d2£Z4dPd3„Z5dPd4„Z6d	d5œ	 	 	 	 	 dQd6„Z7dd7œ	 	 	 	 	 	 	 	 	 dRd8„Z8dd7œ	 	 	 	 	 	 	 dSd9„Z9dd7œ	 	 	 	 	 	 	 dTd:„Z:d;d<d=d>d>d?œZ;dd7œ	 	 	 	 	 	 	 dUd@„Z<y	)Vé    )Úannotations)Ú	dataclass)ÚTYPE_CHECKING)Úcpp)ÚBindingÚCppSignatureÚCppSignatureGroup)Úpythonify_default)
ÚArgumentÚBaseTyÚBaseTypeÚFunctionSchemaÚListTypeÚNativeFunctionÚOptionalTypeÚReturnÚTypeÚVariant)ÚIterableÚSequenceNc                ó‚  — t        |t        t        f«      st        |«      }|�d|› �nd}d| › ddj                  |«      › d|› d�}t	        |«      dk  st	        |«      d	k(  st        |«      d
k(  r|S d| › d�gd„ |D «       ¢d|› d�‘}dj                  |«      }t        d„ |D «       «      r|S |j                  d«      dz   S )Nz -> Ú zdef Ú(ú, Ú)ú: ...éP   r   ©Úselfc              3  ó(   K  — | ]
  }d |› d�–— Œ y­w)z    Ú,N© )Ú.0Úargs     úh/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/torchgen/api/python.pyÚ	<genexpr>z,format_function_signature.<locals>.<genexpr>Ù   s   è ø€ Ð	-¡9˜CˆD���QŒ-¡9ùs   ‚Ú
c              3  ó8   K  — | ]  }t        |«      d k  –— Œ y­w)r   N)Úlen)r#   Úlines     r%   r&   z,format_function_signature.<locals>.<genexpr>Ý   s   è ø€ Ð
-¡u˜tŒ3ˆt‹9˜�?¡uùó   ‚z ...z  # fmt: skip
    ...)Ú
isinstanceÚlistÚtupleÚjoinr)   ÚallÚremovesuffix)ÚnameÚ	argumentsÚreturn_typeÚsigÚliness        r%   Úformat_function_signaturer7   Ì   sê   € ô �i¤$¬ Ô/Ü˜)Ó$ˆ	Ø*5Ð*A�D˜˜Ñ&Àr€Kà���a˜Ÿ	™	 )Ó,Ð-¨Q¨{¨m¸5Ð
A€CÜ
ˆ3ƒx�2‚~œ˜Y›¨1Ò,´°iÓ0@ÀIÒ0MØˆ
ð ˆtˆf�Aˆðá	-¡9Ó	-ðð ˆKˆ=˜Ðð€Eð
 �)‰)�EÓ
€CÜ
Ñ
-¡uÓ
-Ô-Øˆ
ð ×Ñ˜FÓ#Ð&>Ñ>Ð>ó    T)Úfrozenc                  ó   — e Zd ZU ded<   y)ÚPythonReturnsútuple[Return, ...]ÚreturnsN©Ú__name__Ú
__module__Ú__qualname__Ú__annotations__r"   r8   r%   r;   r;   ä   s   … àÔr8   r;   c                  ó`   — e Zd ZU ded<   ded<   ded<   ded<   dd	d
œdd„Zdddœ	 	 	 	 	 dd„Zy)ÚPythonArgumentÚstrr2   r   Útypeú
str | NoneÚdefaultÚdefault_initFT©ÚmethodÚsymintc               ó2  — t        | j                  |¬«      j                  dd«      j                  dd«      }| j                  }|dk(  r|dv r|sd}| j                  �5ddddd	œj                  | j                  | j                  «      }|› d
|› d|› �S |› d
|› �S )N©rL   zconst r   z &r   )ÚTensorÚNumberÚinputÚNone)Únullptrú::std::nulloptústd::nulloptú{}Ú Ú=)Úargument_type_strrF   Úreplacer2   rH   Úget)r   rK   rL   Útype_strr2   rH   s         r%   Úargument_strzPythonArgument.argument_strù   s²   € ä˜dŸi™i°Ô7ß‰W�X˜rÓ"ß‰W�T˜2Óð 	ð �y‰yˆð �6Š>˜hÐ*>Ñ>ÁvØˆDð �<‰<Ð#à!Ø"(Ø &Øñ	÷
 ‰c�$—,‘, §¡Ó-ð ð �Z˜q   a¨ yÐ1Ð1à�Z˜q  Ð'Ð'r8   ©rK   Ú
deprecatedc          	     ó8  — t        | j                  «      }| j                  }|dk(  r|dk(  r|s|sd}|dk(  r|dz  }|dk(  r|dk(  r|s|› d�j                  dd«      }|xr! t	        | t
        «      xr | j                  d	k(  }| j                  ��|�st	        | j                  t        «      r²| j                  j                  t        t        j                  «      k(  r‚| j                  j                  d
«      rg| j                  j                  d«      rLddj                  t        t         j"                  | j                  dd j%                  d«      «      «      z   dz   }n-d	d	d	d	dddœj'                  | j                  | j                  «      }|› d|› d|› �S |› d|› �S )Nr   rO   rQ   ÚfromÚ_Úoutú | Noneú | None | NonerR   Ú{Ú}r   r   é   éÿÿÿÿr!   r   Úcontiguous_formatÚper_tensor_affine)rS   rT   rU   rV   zc10::MemoryFormat::ContiguouszQScheme::PER_TENSOR_AFFINEú: ú = )Úargument_type_str_pyirF   r2   rZ   r,   ÚPythonOutArgumentrH   r   Úelemr   r   ÚintÚ
startswithÚendswithr/   ÚmaprE   ÚstripÚsplitr[   )r   rK   r_   r\   r2   Útreat_as_no_defaultrH   s          r%   Úargument_str_pyizPythonArgument.argument_str_pyi  s’  € ô )¨¯©Ó3ˆà�y‰yˆð �6Š>˜h¨(Ò2¹6É*ØˆDà�6Š>Ø�C‰KˆDð �5Š=˜X¨Ò1¹*Ø"˜ 7Ð+×3Ñ3Ð4DÀiÓPˆHð ò 'Ü˜4Ô!2Ó3ò'à—‘ Ñ&ð 	ð �<‰<Ñ#Ò,?ä˜4Ÿ9™9¤hÔ/Ø—I‘I—N‘N¤h¬v¯z©zÓ&:Ò:Ø—L‘L×+Ñ+¨CÔ0Ø—L‘L×)Ñ)¨#Ô.ð ˜$Ÿ)™)¤C¬¯	©	°4·<±<ÀÀ"Ð3E×3KÑ3KÈCÓ3PÓ$QÓRÑRÐUXÑXñ ð
  &Ø&,Ø$*Ø Ø5HØ2Eñ÷ ‘#�d—l‘l D§L¡LÓ1ð ð �V˜2˜h˜Z s¨7¨)Ð4Ð4à�V˜2˜h˜ZÐ(Ð(r8   N)rK   ÚboolrL   ry   ÚreturnrE   )rK   ry   r_   ry   rz   rE   )r?   r@   rA   rB   r]   rx   r"   r8   r%   rD   rD   é   sJ   … à
ƒIØ
ƒJØÓð Óð .3À4õ (ð6 !&¸%ñ0)Øð0)Ø37ð0)à	ô0)r8   rD   c                  ó*   — e Zd ZU ded<   edd„«       Zy)ro   útuple[PythonArgument, ...]Úoutputsc                ó>  — | sy t        | «      }|dk(  r*t        | d   j                  | d   j                  dd | ¬«      S |dkD  rQt	        d„ | D «       «      rt        d| › �«      ‚t        dt        t        t        j                  «      |«      dd | ¬«      S t        d«      ‚)	Nrh   r   rR   )r2   rF   rH   rI   r}   c              3  óR   K  — | ]  }|j                   j                  «        –— Œ! y ­w©N©rF   Úis_tensor_like©r#   Úas     r%   r&   z1PythonOutArgument.from_outputs.<locals>.<genexpr>^  s!   è ø€ Ð@¹°1�q—v‘v×,Ñ,Ó.Ô.¹ùs   ‚%'zUnsupported output type: rc   z!Unexpected PythonOutArgument size)r)   ro   r2   rF   ÚanyÚRuntimeErrorr   r   r   rO   ÚAssertionError)r}   Úsizes     r%   Úfrom_outputszPythonOutArgument.from_outputsO  s¨   € áØä�7‹|ˆØ�1Š9Ü$Ø˜Q‘Z—_‘_Ø˜Q‘Z—_‘_ØØ!Øôð ð �AŠXÜÑ@¹Ó@Ô@Ü"Ð%>¸w¸iÐ#HÓIÐIÜ$Øäœh¤v§}¡}Ó5°tÓ<ØØ!Øôð ô ÐAÓBÐBr8   N)r}   r|   rz   úPythonOutArgument | None)r?   r@   rA   rB   Ústaticmethodr‰   r"   r8   r%   ro   ro   F  s   … ð (Ó'àòCó ñCr8   ro   c                  ó¼   — e Zd ZU ded<   ded<   ded<   ded<   ded	<   ded
<   ded<   edd„«       Zdddœ	 	 	 	 	 dd„Zdd„Zdd„Zdddœdd„Z	ddœdd„Z
ddœdd„Zy) ÚPythonSignaturerE   r2   r|   Ú
input_argsÚinput_kwargsrŠ   Úoutput_argsr;   r=   Útensor_options_argsry   rK   c                 ó   — y)NFr"   r   s    r%   r_   zPythonSignature.deprecatedˆ  s   € àr8   F)Úskip_outputsÚskip_tensor_optionsc               ó  — g }|j                  | j                  «       |j                  | j                  «       | j                  �|s|j	                  | j                  «       |s|j                  | j
                  «       t        |«      S r€   )ÚextendrŽ   r�   r�   Úappendr‘   r.   )r   r“   r”   Úresults       r%   r3   zPythonSignature.argumentsŒ  sj   € ð <>ˆØ�‰�d—o‘oÔ&Ø�‰�d×'Ñ'Ô(Ø×ÑÐ'±Ø�M‰M˜$×*Ñ*Ô+Ù"Ø�M‰M˜$×2Ñ2Ô3Ü�V‹}Ðr8   c                ó4   — t        | j                  «       «      S r€   )r)   r3   r   s    r%   Úarguments_countzPythonSignature.arguments_count˜  s   € Ü�4—>‘>Ó#Ó$Ð$r8   c                óX   — t        | j                  «      t        | j                  «      z   S r€   )r)   rŽ   r�   r   s    r%   Ú
output_idxzPythonSignature.output_idx›  s!   € Ü�4—?‘?Ó#¤c¨$×*;Ñ*;Ó&<Ñ<Ð<r8   T©r“   rL   c               ó0  — | j                  |¬«      }|D �cg c]  }|j                  | j                  |¬«      ‘Œ! }}t        | j                  «      }t        |«      |kD  r|j                  |d«       | j                  › ddj                  |«      › d�S c c}w )N©r“   rJ   Ú*r   r   r   )r3   r]   rK   r)   rŽ   Úinsertr2   r/   )r   r“   rL   Úargsr„   Úschema_formalsÚpositional_argcs          r%   Úsignature_strzPythonSignature.signature_str§  s’   € Ø�~‰~¨<ˆ~Ó8ˆáGKó%
ÙGKÀ!ˆA�N‰N $§+¡+°fˆNÕ=Àtð 	ð %
ô ˜dŸo™oÓ.ˆÜˆ~Ó Ò0Ø×!Ñ! /°3Ô7à—)‘)�˜A˜dŸi™i¨Ó7Ð8¸Ð:Ð:ùò%
s   —$BrŸ   c               ól  — | j                  |¬«      }|D �cg c]  }|j                  | j                  ¬«      ‘Œ  }}t        | j                  «      }t        |«      |kD  r|j                  |d«       t        | «      }| j                  r|j                  dd«       t        | j                  ||«      S c c}w )NrŸ   ©rK   r    r   r   ©	r3   rx   rK   r)   rŽ   r¡   Úreturns_str_pyir7   r2   ©r   r“   r¢   r„   r£   r¤   Úreturns_strs          r%   Úsignature_str_pyiz!PythonSignature.signature_str_pyi²  s¨   € Ø�~‰~¨<ˆ~Ó8ˆá<@ó%
Ù<@°qˆA×Ñ d§k¡kÐÕ2¸Dð 	ð %
ô ˜dŸo™oÓ.ˆÜˆ~Ó Ò0Ø×!Ñ! /°3Ô7ô & dÓ+ˆà�;Š;Ø×!Ñ! ! VÔ,Ü(¨¯©°NÀKÓPÐPùò%
s   —#B1c               óz  — | j                  |¬«      }|D �cg c]  }|j                  | j                  ¬«      ‘Œ  }}| j                  «       }|dk(  ry t	        | j
                  «      }|d   j                  }t        |t        «      rt        |j                  «      dv r|dk(  sy t        |t        «      st        dt        |«      › �«      ‚d|d   j                  z   dz   t        |j                  «      z   |d<   t        | «      }| j                  r|j                  dd	«       t!        | j                  ||«      S c c}w )
NrŸ   r§   r   )rq   ÚSymIntrh   zExpected ListType, got r    rl   r   )r3   rx   rK   rš   r)   rŽ   rF   r,   r   rE   rp   r‡   r2   rn   r©   r¡   r7   )	r   r“   r¢   r„   r£   Únum_argsÚnum_positionalargsÚvararg_typer«   s	            r%   Úsignature_str_pyi_varargz(PythonSignature.signature_str_pyi_varargÂ  s/  € à�~‰~¨<ˆ~Ó8ˆá<@ó%
Ù<@°qˆA×Ñ d§k¡kÐÕ2¸Dð 	ð %
ð ×'Ñ'Ó)ˆØ�qŠ=Øä  §¡Ó1Ðà˜1‘g—l‘lˆä�{¤HÔ-Ü�K×$Ñ$Ó%Ð):Ñ:Ø" aÒ'àô ˜+¤xÔ0Ü Ð#:¼4ÀÓ;LÐ:MÐ!NÓOÐOà�$�q‘'—,‘,Ñ Ñ%Ô(=¸k×>NÑ>NÓ(OÑOð 	�qÑô & dÓ+ˆà�;Š;Ø×!Ñ! ! VÔ,Ü(¨¯©°NÀKÓPÐPùò=%
s   —#D8N©rz   ry   )r“   ry   r”   ry   rz   z.tuple[PythonArgument | PythonOutArgument, ...])rz   rq   ©r“   ry   rL   ry   rz   rE   ©r“   ry   rz   rE   ©r“   ry   rz   rG   )r?   r@   rA   rB   Úpropertyr_   r3   rš   rœ   r¥   r¬   r²   r"   r8   r%   r�   r�   k  sš   … ð ƒIð +Ó*ð -Ó,à)Ó)ð Óð 4Ó3ð ƒLàòó ðð ',Èñ
Ø#ð
ØBFð
à	7ó
ó%ó=ð 5:È$õ 	;ð 9>õ Qð  @Eö !Qr8   r�   c                  ó`   — e Zd ZU ded<   ded<   edd„«       Zdddœdd	„Zdd
œdd„Zdd
œdd„Zy)ÚPythonSignatureDeprecatedr   Údeprecated_schemaútuple[str, ...]Údeprecated_args_exprsc                 ó   — y)NTr"   r   s    r%   r_   z$PythonSignatureDeprecated.deprecatedö  ó   € àr8   FTr�   c               ó8   — t         j                  | ||¬«      dz   S )Nr�   z|deprecated)r�   r¥   )r   r“   rL   s      r%   r¥   z'PythonSignatureDeprecated.signature_strú  s+   € ä×)Ñ)Ø <¸ð *ó ð ñð	
r8   rŸ   c               ó2  — | j                  |¬«      }|D �cg c]  }|j                  | j                  d¬«      ‘Œ! }}t        | j                  «      }t        |«      |kD  r|j                  |d«       t        | «      }t        | j                  ||«      S c c}w )NrŸ   Tr^   r    r¨   rª   s          r%   r¬   z+PythonSignatureDeprecated.signature_str_pyi  s‘   € Ø�~‰~¨<ˆ~Ó8ˆáMQó%
ÙMQÈˆA×Ñ d§k¡k¸dÐÕCÈTð 	ð %
ô ˜dŸo™oÓ.ˆÜˆ~Ó Ò0Ø×!Ñ! /°3Ô7ä% dÓ+ˆÜ(¨¯©°NÀKÓPÐPùò%
s   —$Bc                ó   — y r€   r"   )r   r“   s     r%   r²   z2PythonSignatureDeprecated.signature_str_pyi_vararg  r¾   r8   Nr³   r´   rµ   r¶   )	r?   r@   rA   rB   r·   r_   r¥   r¬   r²   r"   r8   r%   r¹   r¹   è  sG   … ð &Ó%ð +Ó*àòó ðð 5:È$õ 
ð 9>õ 
Qð @Eö r8   r¹   c                  ó"   — e Zd ZU ded<   ded<   y)Ú!PythonSignatureNativeFunctionPairr�   Ú	signaturer   ÚfunctionNr>   r"   r8   r%   rÃ   rÃ     s   … àÓØÔr8   rÃ   c                  óJ   — e Zd ZU ded<   ded<   ded<   e	 	 	 	 	 	 d	d„«       Zy)
ÚPythonSignatureGroupr�   rÄ   r   ÚbasezNativeFunction | NoneÚoutplacec                ó:  — |€"t        |j                  |j                  d ¬«      S |j                  j                  j	                  «       }|j                  j
                  |d<   t         t        |j                  «      di |¤Ž|j                  |j                  ¬«      S )N)rÄ   rÈ   rÉ   r‘   r"   )rÇ   rÄ   rÅ   Ú__dict__Úcopyr‘   rF   )ÚclsÚ
functionalrc   Úsignature_kwargss       r%   Ú
from_pairszPythonSignatureGroup.from_pairs2  s˜   € ð ˆ;Ü'Ø$×.Ñ.Ø×(Ñ(Øôð ð Ÿ=™=×1Ñ1×6Ñ6Ó8Ðð
 × Ñ ×4Ñ4ð 	Ð.Ñ/ô $Ø)”d˜3Ÿ=™=Ó)Ñ=Ð,<Ñ=Ø×$Ñ$Ø—\‘\ô
ð 	
r8   N)rÎ   rÃ   rc   z(PythonSignatureNativeFunctionPair | Nonerz   rÇ   )r?   r@   rA   rB   ÚclassmethodrÐ   r"   r8   r%   rÇ   rÇ   %  sH   … ð
 Óð Óð $Ó#àð
à5ð
ð 6ð
ð 
ò	
ó ñ
r8   rÇ   c                  ó,   — e Zd ZU ded<   ded<   ded<   y)ÚDispatchLambdaArgumentrE   r2   r\   ry   Ú
is_out_argNr>   r"   r8   r%   rÓ   rÓ   U  s   … à
ƒIØƒMØÔr8   rÓ   c                  óH   — e Zd ZU ded<   ded<   ded<   ded<   ed
d„«       Zy	)ÚPythonArgParserOutputExprrE   r2   Úexprrq   ÚindexrD   Úargumentc                ó"   — d| j                   › d�S )Nz
_r.isNone(r   )rØ   r   s    r%   Úis_none_exprz&PythonArgParserOutputExpr.is_none_exprp  s   € à˜DŸJ™J˜< qÐ)Ð)r8   N)rz   rE   )r?   r@   rA   rB   r·   rÛ   r"   r8   r%   rÖ   rÖ   a  s1   … ð ƒIð ƒIð ƒJð Óàò*ó ñ*r8   rÖ   c                  ó"   — e Zd ZU ded<   ded<   y)ÚDispatchLambdaArgumentExprszSequence[str]ÚexprsÚinitsNr>   r"   r8   r%   rÝ   rÝ   z  s   … ð Óð Ôr8   rÝ   Fr§   c               óD   — t        j                  | |¬«      j                  S )Nr§   )r	   Úfrom_native_functionrÄ   )ÚfrK   s     r%   Ú_cpp_signaturerã   ”  s   € Ü×1Ñ1°!¸FÔC×MÑMÐMr8   c                óF   — | j                   j                  j                  d uS r€   )Úfuncr3   Útensor_options)râ   s    r%   Úhas_tensor_optionsrç   ˜  s   € Ø�6‰6×Ñ×*Ñ*°$Ð6Ð6r8   ©Úsimple_typerL   c               óî  — t        | t        «      �rQ| j                  t        j                  k(  ry| j                  t        j
                  k(  ry| j                  t        j                  k(  ry| 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(                  fv �r“| j                  j                  S t        | t*        «      rt-        | j.                  ||¬«      }|› d�S t        | t0        «      �r?|s| j2                  nd }t        | j.                  «      dk(  r'| j2                  €t5        d«      ‚d| j2                  › d	�S t        | j.                  «      d
k(  r
|�d|› d�S dS t        | j.                  «      dk(  r|r
|�d|› d�S dS |�d|› d�S dS t        | j.                  «      dk(  r
|�d|› d�S dS t        | j.                  «      dk(  r
|�d|› d�S dS t        | j.                  «      dk(  r|ryyt        | j.                  «      dk(  r
|�d|› d�S dS t-        | j.                  ||¬«      }d|› d	�S t7        dt9        | «      › �«      ‚)NÚint64_tÚdoublezc10::string_viewrè   Ú?ry   zbool ListType must have a sizez::std::array<bool,Ú>rq   zIntArrayRef[Ú]ÚIntArrayRefr®   zSymIntArrayRef[ÚSymIntArrayRefrO   zTensorList[Ú
TensorListÚScalarzScalarList[Ú
ScalarListúTensor?z"c10::List<::std::optional<Tensor>>z*const c10::List<::std::optional<Tensor>> &ÚDimnamezDimnameList[ÚDimnameListz	ArrayRef<úunrecognized type )r,   r   r2   r   rq   ÚfloatrE   rO   ry   ÚQSchemeró   Ú
ScalarTypeÚ	GeneratorÚStorageÚLayoutÚDeviceÚDeviceIndexÚMemoryFormatrö   ÚStreamr®   r   rY   rp   r   rˆ   r‡   r†   Úrepr)Útré   rL   rp   rˆ   s        r%   rY   rY   ¦  sŠ  € ô �!”XÕØ�6‰6”V—Z‘ZÒØØ�V‰V”v—|‘|Ò#ØØ�V‰V”v—z‘zÒ!Ø%Ø�V‰VÜ�M‰MÜ�K‰KÜ�N‰NÜ�M‰MÜ×ÑÜ×ÑÜ�N‰NÜ�M‰MÜ�M‰MÜ×ÑÜ×ÑÜ�N‰NÜ�M‰MÜ�M‰Mð
ò 
ð" —6‘6—;‘;Ðä	�A”|Ô	$Ü  §¡°[ÈÔPˆØ��qˆzÐÜ	�A”xÕ	 Ù(ˆq�vŠv¨dˆÜˆq�v‰v‹;˜&Ò Ø�v‰vˆ~Ü$Ð%EÓFÐFØ'¨¯© x¨qÐ1Ð1Ü�—‘‹[˜EÒ!Ø-1Ð-=�\ $  qÐ)ÐPÀ=ÐPÜ�—‘‹[˜HÒ$Ùà15Ð1A�o d V¨1Ð-ðØGWðð 26Ð1A˜ d V¨1Ð-ÐTÀ}ÐTÜ�—‘‹[˜HÒ$Ø,0Ð,<�[   aÐ(ÐNÀ,ÐNÜ�—‘‹[˜HÒ$Ø,0Ð,<�[   aÐ(ÐNÀ,ÐNÜ�—‘‹[˜IÒ%ÙØ;àCÜ�—‘‹[˜IÒ%Ø-1Ð-=�\ $  qÐ)ÐPÀ=ÐPÜ  §¡°[ÈÔPˆØ˜4˜& Ð"Ð"ä
Ð+¬D°«G¨9Ð5Ó
6Ð6r8   c                óp   — | j                  «       }|�$t        |j                  «      dk7  r|j                  S y )Nry   )Úis_list_likerE   rp   rˆ   )r  Úls     r%   Úargument_type_sizer  æ  s.   € Ø	�‰Ó€AØ€}œ˜QŸV™V›¨Ò.Ø�v‰vˆàr8   c                óè   — t        | j                  | j                  | j                  �Dt	        t        t        j                  | j                  | j                  d¬«      «      «      d ¬«      S d d ¬«      S )NFrN   ©r2   rF   rH   rI   )rD   r2   rF   rH   rE   r
   r   Údefault_expr)r„   s    r%   rÙ   rÙ   î  sg   € ÜØ�V‰VØ�V‰Vð �y‰yÐ$ô Ô!¤#×"2Ñ"2°1·9±9¸a¿f¹fÈUÔ"SÓTÓUð ô
ð 
ð àô
ð 
r8   )rK   Úpyic               óH   — t        | j                  | j                  ||¬«      S )N)Úcategory_overriderK   r  )Úsignature_from_schemarå   r  )râ   rK   r  s      r%   rÄ   rÄ   ý  s$   € ô !Ø	�‰ !×"5Ñ"5¸fÈ#ôð r8   c          
     ó4	  ‡ ‡‡‡— g }|j                  ‰ j                  j                  «       |sE‰ j                  j                  �/|j	                  ‰ j                  j                  j
                  «       |j                  ‰ j                  j                  «       |j                  ‰ j                  j                  «       |j                  ‰ j                  j                  «       |j                  ‰ j                  j                  «       ‰ j                  j                  D �ch c]  }|j                  ’Œ c}Š‰ j                  j                  D �ch c]  }|j                  ’Œ c}Š‰ j                  j                  D �ch c]  }|j                  ’Œ c}Št        t        t
        t        ˆfd„|«      «      «      }t        t        t
        t        ˆfd„|«      «      «      }t        t        t
        t        ˆfd„|«      «      «      }t!        d„ ‰ j                  j"                  D «       «      }	t!        d„ ‰ j%                  «       D «       «      rt'        d«      ‚t!        d„ ‰ j(                  D «       «      }
t+        j                  ‰ «      }|dk(  xs |
xr |	 }|d	v xs$ |j-                  d
«      xs |j/                  d«      }|dk(  }g }|s|�ra|�s^dˆ fd„}|j	                  t1        dt3        t5        t6        j8                  «      «      d|rd n |d«      ¬«      «       |j	                  t1        dt3        t5        t6        j:                  «      «      d|rd n |d«      ¬«      «       |j	                  t1        dt3        t5        t6        j<                  «      «      d|rd n |d«      xs d¬«      «       |j	                  t1        dt3        t5        t6        j>                  «      «      dd ¬«      «       |j	                  t1        dt3        t5        t6        j>                  «      «      dd ¬«      «       tA        ‰ j(                  ¬«      }tC        tE        ‰ j                  j                  «      ||tF        jI                  |«      t        |«      ||¬«      S c c}w c c}w c c}w )Nc                ó    •— | j                   ‰v S r€   ©r2   )r„   Úinput_arg_sets    €r%   Ú<lambda>z'signature_from_schema.<locals>.<lambda>  s   ø€ °a·f±fÀÑ6Mr8   c                ó    •— | j                   ‰v S r€   r  )r„   Úkwarg_only_sets    €r%   r  z'signature_from_schema.<locals>.<lambda>  s   ø€  q§v¡v°Ñ'?r8   c                ó    •— | j                   ‰v S r€   r  )r„   Úout_arg_sets    €r%   r  z'signature_from_schema.<locals>.<lambda>   s   ø€ °1·6±6¸[Ñ3Hr8   c              3  óP   K  — | ]  }|j                   j                  «       –— Œ  y ­wr€   r�   rƒ   s     r%   r&   z(signature_from_schema.<locals>.<genexpr>*  s"   è ø€ ð Ù)D Aˆ�‰×Ñ×Ñ)Dùó   ‚$&c              3  ó:   K  — | ]  }|j                   d k(  –— Œ y­w)Úrequires_gradNr  rƒ   s     r%   r&   z(signature_from_schema.<locals>.<genexpr>-  s   è ø€ Ð
LÑ.K¨ˆ1�6‰6�_Õ$Ñ.Kùs   ‚zTargument named requires_grad is reserved, should not explicitly add it in the schemac              3  óP   K  — | ]  }|j                   j                  «       –— Œ  y ­wr€   r�   ©r#   Úrs     r%   r&   z(signature_from_schema.<locals>.<genexpr>4  s   è ø€ ÐJ¹\¸˜AŸF™F×1Ñ1×3¹\ùr  Úfactory)ÚnewÚlikeÚnew_Ú_likeÚdummyc                óÞ   •— ‰j                   j                  }|€y t        || «      }|j                  �|j                  dk(  ry t	        j
                  |j                  |j                  d¬«      S )NrR   FrN   )r3   ræ   ÚgetattrrH   r   r  rF   )r2   Ú	topt_argsr„   rå   s      €r%   Útopt_default_initz0signature_from_schema.<locals>.topt_default_initD  s\   ø€ ØŸ™×5Ñ5ˆIØÐ ØÜ˜	 4Ó(ˆAØ�y‰yÐ  A§I¡I°Ò$7ØÜ×#Ñ# A§I¡I¨q¯v©v¸eÔDÐDr8   ÚdtyperR   r
  ÚlayoutÚdevicez$torch::tensors::get_default_device()Ú
pin_memoryÚFalser  )r=   )r2   rŽ   r�   r�   r‘   r=   rK   )r2   rE   rz   rG   )%r–   r3   Úpre_self_positionalÚself_argr—   rÙ   Úpost_self_positionalÚpre_tensor_options_kwarg_onlyÚpost_tensor_options_kwarg_onlyrc   Úflat_positionalr2   Úflat_kwarg_onlyr.   rt   Úfilterr…   Úflat_non_outÚschema_order_argumentsÚ
ValueErrorr=   r   rr   rs   rD   r   r   r   rû   rþ   rÿ   ry   r;   r�   rE   ro   r‰   )rå   r  rK   r  r¢   r„   rŽ   r�   r}   Úhas_tensor_input_argÚhas_tensor_returnr2   Úis_factory_functionÚis_like_or_new_functionÚis_dummy_functionr‘   r)  r=   r  r  r  s   `                 @@@r%   r  r    sÍ  û€ ð €DØ‡K�K�—‘×2Ñ2Ô3á�d—n‘n×-Ñ-Ð9Ø�‰�D—N‘N×+Ñ+×4Ñ4Ô5Ø‡K�K�—‘×3Ñ3Ô4Ø‡K�K�—‘×<Ñ<Ô=ð 	‡K�K�—‘×=Ñ=Ô>Ø‡K�K�—‘×"Ñ"Ô#à%)§^¡^×%CÒ%CÓDÑ%C �Q—V“VÐ%CÑD€MØ&*§n¡n×&DÒ&DÓEÑ&D �a—f“fÐ&DÑE€NØ#'§>¡>×#5Ò#5Ó6Ñ#5˜a�1—6“6Ð#5Ñ6€Kä”sœ8¤VÓ,MÈtÓ%TÓUÓV€JÜÜŒH”fÓ?ÀÓFÓGó€Lô ”Cœ¤&Ó)HÈ$Ó"OÓPÓQ€Gô ñ Ø)-¯©×)DÒ)Dóó Ðô Ñ
L¨d×.IÑ.IÔ.KÓ
LÔLÜØbó
ð 	
ô ÑJ¸T¿\º\ÓJÓJÐä—‘˜“€DØ+¨yÑ8ò ØÒ6Ð"6Ð6ð ð 	˜_Ð,ò 	"Ø�?‰?˜6Ó"ò	"à�=‰=˜Ó!ð ð
 *¨WÑ4Ðà02ÐÙÒ6Ò@Qõ	Eð 	×"Ñ"ÜØÜ!¤(¬6×+<Ñ+<Ó"=Ó>Øá3‘DÑ9JÈ7Ó9Sôô		
ð 	×"Ñ"ÜØÜ!¤(¬6¯=©=Ó"9Ó:Øá3‘DÑ9JÈ8Ó9Tôô		
ð 	×"Ñ"ÜØÜ!¤(¬6¯=©=Ó"9Ó:Øñ /ñ ñ *¨(Ó3ò BØAôô	
ð 	×"Ñ"ÜØ!Ü!¤(¬6¯;©;Ó"7Ó8ØØ!ô	ô	
ð 	×"Ñ"ÜØ$Ü!¤(¬6¯;©;Ó"7Ó8ØØ!ô	ô	
ô  D§L¡LÔ1€GäÜ�—‘—‘Ó ØØ!Ü%×2Ñ2°7Ó;Ü!Ð"5Ó6ØØôð ùòW EùÚEùÚ6s   ÄRÅRÅ;Rc                óÐ   — t        | «      dk  st        d„ | D «       «      rg S t        d„ | D «       «      rt        d«      ‚| D �cg c]  }t	        |j
                  «      ‘Œ c}S c c}w )Nrh   c              3  ó8   K  — | ]  }|j                   d u –— Œ y ­wr€   r  r  s     r%   r&   z'structseq_fieldnames.<locals>.<genexpr>–  s   è ø€ Ð@¹°1 §¡¨$¤¹ùr+   c              3  ó8   K  — | ]  }|j                   d u –— Œ y ­wr€   r  r  s     r%   r&   z'structseq_fieldnames.<locals>.<genexpr>™  s   è ø€ Ð/¡w !ˆq�v‰v˜Œ~¡wùr+   z)Unnamed field is not supported by codegen)r)   r0   r…   r9  rE   r2   )r=   r  s     r%   Ústructseq_fieldnamesrB  •  s\   € Ü
ˆ7ƒ|�qÒœCÑ@¹Ó@Ô@Øˆ	äÑ/¡wÓ/Ô/ô ÐHÓIÐIá%,Ó-¡W ”�A—F‘F• WÑ-Ð-ùÒ-s   ÁA#c                óŒ  — d}t        | t        «      r| j                  } d}d}t        | t        «      �r| j                  t
        j                  t
        j                  fv rd}| j                  t
        j                  k(  rd}�nª| j                  t
        j                  k(  rd}�n‰| j                  t
        j                  k(  rd}�nh| j                  t
        j                  k(  rd}�nG| j                  t
        j                  k(  rd	}�n&| j                  t
        j                  k(  rd
}�n| j                  t
        j                  k(  rd}�nä| j                  t
        j                  k(  rd}�nÃ| j                  t
        j                   k(  rd}�n¢| j                  t
        j"                  k(  rd}�n�| j                  t
        j$                  k(  rd}�n`| j                  t
        j&                  k(  rd}�n?| j                  t
        j(                  t
        j*                  t
        j,                  fv �r| j                  j                  }nìt        | t.        «      rÅt        | j                  «      dk(  r| j0                  �dnd}n³| j3                  «       rd}| j0                  �dnd}n�t        | j                  «      dk(  rd}nut        | j                  «      dk(  r*| j0                  �t5        | j                  «      }|› d|› d�}n3t5        | j                  «      }d|› d�}nt7        dt9        | «      › �«      ‚|r|› d�j;                  dd«      }|S )NFTr   Ú_intz_int | SymIntÚ_floatrE   zNumber | _complexÚ_dtypeÚ_boolÚ_qschemeÚ_layoutzDeviceLikeType | NoneÚmemory_formatzstr | EllipsisType | NonezStorage | UntypedStoragerq   z_int | _sizeÚ_sizez*Tensor | tuple[Tensor, ...] | list[Tensor]z!tuple[Tensor, ...] | list[Tensor]rù   zSequence[_float]r®   z | Sequence[rï   z	Sequence[rø   rd   re   )r,   r   rp   r   r2   r   rq   r   r®   rù   rE   ró   rû   ry   rú   rþ   rÿ   r  rö   rý   rO   rü   r  r   rˆ   r‚   rn   r†   r  rZ   )r  Úadd_optionalÚretrp   s       r%   rn   rn   ¨  sx  € Ø€LÜ�!”\Ô"Ø�F‰FˆØˆà
€CÜ�!”XÕØ�6‰6”f—j‘j¤&×"4Ñ"4Ð5Ñ5ØˆCØ�6‰6”V—]‘]Ò"Ø!ŠCØ�V‰V”v—|‘|Ò#ØŠCØ�V‰V”v—z‘zÒ!ØŠCØ�V‰V”v—}‘}Ò$Ø%ŠCØ�V‰V”v×(Ñ(Ò(ØŠCØ�V‰V”v—{‘{Ò"ØŠCØ�V‰V”v—~‘~Ò%ØŠCØ�V‰V”v—}‘}Ò$ØŠCØ�V‰V”v—}‘}Ò$Ø)ŠCØ�V‰V”v×*Ñ*Ò*Ø!ŠCØ�V‰V”v—~‘~Ò%Ø-ŠCØ�V‰V”v—~‘~Ò%Ø,ŠCØ�V‰VœŸ™¤v×'7Ñ'7¼¿¹ÐGÒGà—&‘&—+‘+‰Cä	�A”xÔ	 Üˆq�v‰v‹;˜%ÒØ$%§F¡FÐ$6‘.¸G‰CØ×ÑÔð  ˆLð —6‘6Ð%ñ =à8ñ ô
 �—‘‹[˜GÒ#Ø$‰CÜ�—‘‹[˜HÒ$¨¯©Ð);Ü(¨¯©Ó0ˆDØ�F˜, t f¨AÐ.‰Cä(¨¯©Ó0ˆDØ˜d˜V 1Ð%‰Cô Ð/´°Q³¨yÐ9Ó:Ð:áØ��Wˆo×%Ñ%Ð&6¸	ÓBˆà€Jr8   c                ó�  — t        | t        «      r*t        | j                  «      }|› d�j	                  dd«      S t        | t
        «      rG| j                  t        j                  k(  ry| j                  t        j                  k(  ryt        | «      S t        | t        «      rt        | j                  «      }d|› d�S t        | «      S )Nrd   re   Ú_devicerG   útuple[z, ...])r,   r   Úreturn_type_str_pyirp   rZ   r   r2   r   rÿ   rö   rn   r   )r  Úinners     r%   rQ  rQ  í  s¤   € ô �!”\Ô"Ü# A§F¡FÓ+ˆØ�˜Ð ×(Ñ(Ð)9¸9ÓEÐEä�!”XÔØ�6‰6”V—]‘]Ò"ØØ�V‰V”v—~‘~Ò%Øä(¨Ó+Ð+ä�!”XÔÜ# A§F¡FÓ+ˆØ˜�w˜fÐ%Ð%ä  Ó#Ð#r8   c                ó  — | j                   j                   D �cg c]  }t        |j                  «      ‘Œ }}| j                  }t	        | j                   j                   «      }|r™ddj                  |«      › d�}d|› d|› d�g}t        ||«      D ]  \  }}|j                  dd|› d	|› d
�g«       Œ! |j                  ddd|› d�dddt        |«      › �dt        |«      › �dddg
«       dj                  |«      }	||	fS y c c}w )NrP  r   rï   zclass r   z):  # fmt: skipz    @propertyz    def z
(self) -> r   z    def __new__(z        cls,z        sequence: r!   z    ) -> Self:  # fmt: skipz        ...z    n_fields: Final[_int] = z%    n_sequence_fields: Final[_int] = z%    n_unnamed_fields: Final[_int] = 0zG    def __init_subclass__(cls) -> NoReturn: ...  # prohibit subclassingr   r'   )	r=   rQ  rF   r2   rB  r/   Úzipr–   r)   )
rÄ   r  Úpython_returnsÚstructseq_nameÚfield_namesÚseq_typeÚstructseq_def_linesr2   Úret_typeÚstructseq_defs
             r%   Úreturns_structseq_pyir\    sB  € Ø;D×;LÑ;L×;TÒ;TÓUÑ;T°aÔ)¨!¯&©&Õ1Ð;T€NÐUØ—^‘^€NÜ& y×'8Ñ'8×'@Ñ'@ÓA€KÙð ˜DŸI™I nÓ5Ð6°aÐ8ˆà�^Ð$ A h Z¨Ð?ð
Ðô " +¨~Ö>‰NˆD�(Ø×&Ñ&à#Ø˜t˜f J¨x¨j¸Ð>ðõð ?ð 	×"Ñ"à"ØØ$ X J¨aÐ0Ø-ØØ.¬s°;Ó/?Ð.@ÐAØ7¼¸KÓ8HÐ7IÐJØ7ØYØðô	
ð Ÿ	™	Ð"5Ó6ˆð$ ˜}Ð,Ð,Øùòg Vs   ™C>c                óJ  — t        | j                  j                  «      }|rd| j                  › �S | j                  j                  D �cg c]  }t        |j                  «      ‘Œ }}t        |«      dkD  rddj                  |«      z   dz   S t        |«      dk(  r|d   S yc c}w )Nztorch.return_types.rh   rP  r   rï   r   rR   )rB  r=   r2   rQ  rF   r)   r/   )rÄ   rW  r  rU  s       r%   r©   r©   ;  s    € Ü& y×'8Ñ'8×'@Ñ'@ÓA€KÙØ$ Y§^¡^Ð$4Ð5Ð5à;D×;LÑ;L×;TÒ;TÓUÑ;T°aÔ)¨!¯&©&Õ1Ð;T€NÐUÜ
ˆ>Ó˜QÒØ˜$Ÿ)™) NÓ3Ñ3°cÑ9Ð9Ü
ˆ>Ó˜aÒØ˜aÑ Ð Øùò Vs   Á	B c                óR  ‡ ‡— t        ‰ t        «      r‰ j                  }n|j                  }t	        j
                  |j
                  d|d|j                  ¬«      }|j
                  j                  D �ch c]  }|j                  ’Œ c}Šdˆˆ fd„}t        t        ||«      «      S c c}w )NF)r3   ÚfaithfulrL   rK   Úcpp_no_default_argsc                óö   •— | j                   }| j                  ‰v }‰j                  r| j                  dk(  rd}n)t        ‰«      dk  xs | }|rddij	                  ||«      }t        | j                  ||¬«      S )Nr   zconst at::Tensor &rh   zat::Tensor &ú
at::Tensor)r2   r\   rÔ   )rF   r2   rK   r)   r[   rÓ   )Úcpp_argr\   rÔ   Úensure_temp_safeÚout_argsÚpss       €€r%   Údispatch_lambda_argz1dispatch_lambda_args.<locals>.dispatch_lambda_argƒ  sƒ   ø€ Ø—<‘<ˆØ—\‘\ XÐ-ˆ
Ø�9Š9˜Ÿ™¨Ò/à+‰Hô  # 8›}°Ñ1ÒC¸°^ÐÙà" Lðç‘#�h Ó)ð ô &Ø—‘ØØ!ô
ð 	
r8   )rc  r   rz   rÓ   )r,   r¹   rº   rå   r   r3   r`  rc   r2   r.   rt   )rf  râ   rL   ÚschemaÚcpp_argsr„   rg  re  s   `      @r%   Údispatch_lambda_argsrj  p  s—   ù€ ô �"Ô/Ô0Ø×%Ñ%‰à—‘ˆô �}‰}Ø×"Ñ"ØØØØ×1Ñ1ô€Hð +1×*:Ñ*:×*>Ò*>Ó?Ñ*> Q˜!Ÿ&›&Ð*>Ñ?€Hö
ô, ”Ð(¨(Ó3Ó4Ð4ùò3 @s   Á2B$>   úvoid*ú
at::Scalarú
at::Streamúat::QSchemeúat::ScalarTypeúat::IntArrayRefú::std::vector<at::Tensor>ú::std::tuple<double,int64_t>ú#::std::tuple<at::Tensor,at::Tensor>ú.::std::tuple<at::Tensor,at::Tensor,at::Tensor>ú2::std::tuple<at::Tensor,::std::vector<at::Tensor>>ú2::std::tuple<at::Tensor,at::Tensor,double,int64_t>ú6::std::tuple<at::Tensor,at::Tensor,at::Tensor,int64_t>ú9::std::tuple<at::Tensor,at::Tensor,at::Tensor,at::Tensor>ú=::std::tuple<at::Tensor,at::Tensor,double,at::Tensor,int64_t>úA::std::tuple<at::Tensor,at::Tensor,at::Tensor,at::Tensor,int64_t>úD::std::tuple<at::Tensor,at::Tensor,at::Tensor,at::Tensor,at::Tensor>úO::std::tuple<at::Tensor,at::Tensor,at::Tensor,at::Tensor,at::Tensor,at::Tensor>úr::std::tuple<at::Tensor,at::Tensor,at::Tensor,at::Tensor,c10::SymInt,c10::SymInt,at::Tensor,at::Tensor,at::Tensor>ry   Úvoidrì   rë   rb  c                óô   — t        d„ | j                  j                  D «       «      }t        j                  |d¬«      j                  «       }|t        vr$t        | j                  j                  › d|› �«      ‚|S )Nc              3  ó^   K  — | ]%  }t        |j                  |j                  d «      –— Œ' y ­wr€   )r   r2   rF   r  s     r%   r&   z-dispatch_lambda_return_str.<locals>.<genexpr>Ð  s%   è ø€ ð 'Ù.<¨Œˆq�v‰v�q—v‘v˜t×$©nùs   ‚+-TrN   z returns unsupported type )	r.   rå   r=   r   Úreturns_typeÚcpp_typeÚSUPPORTED_RETURN_TYPESr†   r2   )râ   Úreturns_without_annotationÚ
return_strs      r%   Údispatch_lambda_return_strr†  ¼  sp   € ô( "'ñ 'Ø./¯f©f¯nªnó'ó "Ðô ×!Ñ!Ð"<ÀTÔJ×SÑSÓU€JØÔ/Ñ/Ü˜aŸf™fŸk™k˜]Ð*DÀZÀLÐQÓRÐRØÐr8   c                óÂ  — | j                   j                  «       }t        j                  | j                   |¬«      }t        j
                  | j                  v rd|› �S t        j                  | j                  v rPt        | «      s9| j                   j                  j                  j                  j                  d«      rd}nd}|› d|› �S t        d| j                   › �«      ‚)N)Úsymint_overloadzself.r$  ÚtorchÚatz::z1could not dispatch, neither function nor method: )rå   Ú
has_symintr   r2   r   rK   ÚvariantsrÅ   rç   rÈ   rs   r†   )râ   rL   r2   Ú	namespaces       r%   Úcpp_dispatch_targetrŽ  Ù  s±   € Ø�V‰V×ÑÓ €FÜ�8‰8�A—F‘F¨FÔ3€DÜ‡~�~˜Ÿ™Ñ#Ø�t�fˆ~ÐÜ×Ñ˜1Ÿ:™:Ñ%Ü˜aÔ  A§F¡F§K¡K×$4Ñ$4×$9Ñ$9×$BÑ$BÀ7Ô$KØ‰IàˆIØ�˜B˜t˜fÐ%Ð%Ü
ÐJÈ1Ï6É6È(ÐSÓ
TÐTr8   )Úpython_signaturec               óB  ‡ — t        ‰ d¬«      j                  «       }d}t        |t        «      st	        d„ |D «       «      }n"t	        t        ˆ fd„|j                  «      «      }t        j                  ‰ j                  v rt	        t        dj                  |«      «      }|S )NFr§   r"   c              3  ó4   K  — | ]  }|j                   –— Œ y ­wr€   r  rƒ   s     r%   r&   z%cpp_dispatch_exprs.<locals>.<genexpr>ñ  s   è ø€ Ð/¡h �a—f•f¡hùs   ‚c                óF   •— | dk7  xs ‰j                   j                  «       S )Nrc   )rå   Ú	is_out_fn)Únrâ   s    €r%   r  z$cpp_dispatch_exprs.<locals>.<lambda>ö  s   ø€ ˜!˜u™*Ò:¨¯©×(8Ñ(8Ó(:Ð:r8   r   )rã   r3   r,   r¹   r.   r6  r¼   r   rK   rŒ  Ú__ne__)râ   r�  ri  rÞ   s   `   r%   Úcpp_dispatch_exprsr–  ç  s‡   ø€ ô
 #1°¸5Ô"A×"KÑ"KÓ"M€Hà€EÜÐ&Ô(AÔBäÑ/¡hÓ/Ó/‰ô ÜÛ:Ø ×6Ñ6óó
ˆô ‡~�~˜Ÿ™Ñ#Ü”f˜VŸ]™]¨EÓ2Ó3ˆà€Lr8   rN   c               óú  — |d u}|rt        | «      dvrt        d| › d�«      ‚t        | t        «      �rÃ| j                  t
        j                  t
        j                  t
        j                  t
        j                  t
        j                  fv r$| j                  j                  j                  «       S | j                  t
        j                  k(  r|rdS dS | j                  t
        j                  k(  r|rdS dS | j                  t
        j                  k(  ry| j                  t
        j                  k(  ry| j                  t
        j                   k(  r|rd	S dS | j                  t
        j"                  k(  r|rd
S dS | j                  t
        j$                  k(  ry| j                  t
        j                   k(  ry| j                  t
        j&                  k(  r|rdS dS | j                  t
        j(                  k(  �rxyt        | t*        «      r†t        | j,                  «      dk(  ryt        | j,                  «      dk(  ryt        | j,                  «      dk(  ry|s |dv rt/        | j,                  d d |¬«      dz   S t/        | j,                  |||¬«      S t        | t0        «      rÑt        | j,                  «      dk(  r| j2                  �d| j2                  › d�S dS t        | j,                  «      dk(  ryt        | j,                  «      dk(  ry t        | j,                  «      d!k(  ry"t        | j,                  «      d#k(  ry$t        | j,                  «      d%k(  r|rd&S d"S t        | j,                  «      d'k(  ry(t        d| › d)�«      ‚)*N)úScalarType?rû   rÿ   úDevice?rþ   úLayout?ry   úbool?ztype 'z+' does not supported unpacking with defaultÚscalartypeWithDefaultÚ
scalartypeÚdeviceWithDefaultr,  ÚtoInt64ÚtoSymIntÚtoBoolWithDefaultÚtoBoolÚtoDoubleÚ
stringViewÚlayoutWithDefaultr+  ÚmemoryformatrO   ÚoptionalTensorrü   Ú	generatorz	Dimname[]ÚtoDimnameListOptional)NrR   rT   rU   rN   ÚOptionalztensorlist_n<rî   Ú
tensorlistrõ   Úlist_of_optional_tensorsrö   Údimnamelistrq   Úintlistrù   Ú
doublelistr®   Ú
symintlistró   Ú
scalarlistz%' is not supported by PythonArgParser)rE   r†   r,   r   r2   r   rO   r  rý   ró   rö   Úlowerrû   rÿ   r   rq   r®   ry   rù   rþ   r  r   rp   Úarg_parser_unpack_methodr   rˆ   )r  rH   rI   rL   Úhas_default_inits        r%   r³  r³    sä  € ð $¨4Ð/ÐÙœC ›Fð 	+ñ 	ô ˜V A 3Ð&QÐRÓSÐSä�!”XÕØ�6‰6Ü�M‰MÜ�M‰MÜ�N‰NÜ�M‰MÜ�N‰Nð
ñ 
ð —6‘6—;‘;×$Ñ$Ó&Ð&Ø�V‰V”v×(Ñ(Ò(Ù.>Ð*ÐPÀLÐPØ�V‰V”v—}‘}Ò$Ù*:Ð&ÐHÀÐHØ�V‰V”v×)Ñ)Ò)ØØ�V‰V”v—z‘zÒ!ØØ�V‰V”v—}‘}Ò$Ù!'�:Ð6¨YÐ6Ø�V‰V”v—{‘{Ò"Ù*:Ð&ÐHÀÐHØ�V‰V”v—|‘|Ò#ØØ�V‰V”v—z‘zÒ!ØØ�V‰V”v—}‘}Ò$Ù*:Ð&ÐHÀÐHØ�V‰V”v×*Ñ*Ó*Ø!ä	�A”|Ô	$Üˆq�v‰v‹;˜(Ò"Ø#Ü�—‘‹[˜KÒ'ØÜ�—‘‹[˜KÒ'Ø*Ù! gð 2
ñ '
ô )¨¯©°°tÀFÔKÈjÑXðô
 ,Ø—‘˜ °fôð ô 
�A”xÔ	 Üˆq�v‰v‹;˜(Ò"à01·±Ð0B�] 1§6¡6 (¨!Ð,ÐTÈÐTÜ�—‘‹[˜IÒ%Ø-Ü�—‘‹[˜IÒ%à Ü�—‘‹[˜EÒ!àÜ�—‘‹[˜GÒ#ØÜ�—‘‹[˜HÒ$á#)�<Ð8¨yÐ8Ü�—‘‹[˜HÒ$ØÜ
˜ ˜sÐ"GÐHÓ
IÐIr8   c               óæ   — |j                   d u}t        |j                  |j                  |j                   |¬«      }|rd|j                   › �nd}d|› d| › |› d�}t	        |j
                  || |¬«      S )N)r  rH   rI   rL   r   r   z_r.r   r   )r2   r×   rØ   rÙ   )rI   r³  rF   rH   rÖ   r2   )Ú	arg_indexr„   rL   Úhas_defaultÚunpack_methodrH   r×   s          r%   Úarg_parser_output_exprr¹  m  s}   € ð —.‘.¨Ð,€KÜ,Ø
�&‰&˜!Ÿ)™)°!·.±.Èô€Mñ (3��1—>‘>Ð"Ñ#¸€GØ��˜q  ¨G¨9°AÐ6€Dä$Ø�V‰VØØØô	ð r8   c          
     óž   — t        | j                  «       «      D ���ci c]   \  }}t        |||¬«      }|j                  |“Œ" c}}}S c c}}}w )NrN   )Ú	enumerater3   r¹  r2   )rf  râ   rL   Úir„   Úes         r%   Úarg_parser_output_exprsr¾  €  sP   € ô
 ˜bŸl™l›nÔ-õá-‰DˆAˆqÜ(¨¨A°fÔ=ˆAð 	
�‰�ˆ	ˆØ-óð ùô s   ž%Ar˜  r™  rš  r›  )r*  r,  r+  r-  r  c               óŽ  ‡‡— t        | ||¬«      }t        | ||¬«      }g }i Št        |«      }| j                  d¬«      D �]  }|j                  }||j                     j
                  }	|r!|dk(  r|j                  d|	› d�g«       |‰|<   ŒLt        |t        «      ryt        |j                  «      dkD  ra|j                  j                  «       rG|j                  d|	› d�g«       t        |j                  «      D ]  \  }
}d	|
› d
�‰|j                  <   Œ ŒÕt        |j                  «      dk(  r+|j                  d|› d|	› d�d|› d|› d|› d�g«       |‰|<   �Œ|	‰|<   �Œ | j                   rd‰d<   | j"                  D �cg c]  }|j                  ‘Œ c}Š|�rƒ|j                  j                  «       rt%        |j                  › d�«      ‚| j"                  D ]©  }|j                  t&        vr%t%        |j                  › d|j                  › d�«      ‚t        |j                  «      t&        j)                  |j                  «      k7  sŒpt%        |j                  › dt        |j                  «      › d|j                  › d�«      ‚ t+        ˆfd„t&        D «       «      st%        |j                  › d‰› �«      ‚|j-                  d|d   j
                  › d|d   j
                  › d|d   j
                  › d |d!   j
                  › d"|d#   j
                  › d$�«       d%‰d%<   |�s‰�rd‰v rß|j                  j                  «       s't%        |j                  › d&| › d'| j                  › �«      ‚t+        ˆfd(„d)D «       «      st%        |j                  › d*�«      ‚|j-                  d+|d,   j
                  › d-|d   j
                  › d.|d   j.                  › d-|d   j
                  › d.|d   j
                  › d-|d   j.                  › d/�«       d!‰vrt%        |j                  › d0‰› d
�«      ‚t1        t3        ˆfd1„|D «       «      |¬2«      S c c}w )3NrN   T)r”   r   zauto self = Ú;rh   zauto out = zout[rï   z
Dimname[]?zauto __rm   z::std::optional<DimnameList> z = __z& ? ::std::make_optional(DimnameList(__z.value())) : ::std::nullopt;z : tensor options with output argz%: unrecognized tensor options field 'z' in python binding argumentsz: unrecognized type 'z' for tensor options field 'Ú'c              3  ó&   •K  — | ]  }|‰v –— Œ
 y ­wr€   r"   ©r#   r„   Útensor_options_args_namess     €r%   r&   z(dispatch_lambda_exprs.<locals>.<genexpr>Þ  s   øè ø€ ÐQÑ;P°a�1Ð1Ô1Ñ;Pùó   ƒz": incomplete tensor options args: z0const auto options = TensorOptions()
    .dtype(r*  z)
    .device(r,  z)
    .layout(r+  z)
    .requires_grad(r  z)
    .pinned_memory(r-  z3);
torch::utils::maybe_initialize_device(options);
Úoptionsz3: dtype in tensor_options_args without output arg, rW   c              3  ó&   •K  — | ]  }|‰v –— Œ
 y ­wr€   r"   rÃ  s     €r%   r&   z(dispatch_lambda_exprs.<locals>.<genexpr>ù  s   øè ø€ ÐTÑ?S¸!�qÐ5Ô5Ñ?SùrÅ  )r+  r,  z,: incomplete tensor options for output checkzcheck_out_type_matches(rc   r   z,
                       z);
zE: expected "requires_grad" in tensor_options_args absent, but found [c              3  ó<   •K  — | ]  }‰|j                      –— Œ y ­wr€   r  )r#   r„   Úlambda_args_exprss     €r%   r&   z(dispatch_lambda_exprs.<locals>.<genexpr>  s   øè ø€ ÐC±{°!Ð% a§f¡fÕ-±{ùs   ƒ)rÞ   rß   )r¾  rj  rç   r3   r2   r×   r–   r,   ro   r)   r}   rå   r“  r»  rE   rF   rK   r‘   r†   ÚTENSOR_OPTIONS_FIELDSr[   r0   r—   rÛ   rÝ   r.   )rf  râ   rL   Úarg_parser_outputsÚlambda_argsrß   Úhas_toptionsr„   r2   Úarg_parser_exprr¼  Úout_argrÉ  rÄ  s               @@r%   Údispatch_lambda_exprsrÐ  •  sÂ  ù€ ô 1°°Q¸vÔFÐÜ& r¨1°VÔ<€KØ€EØ(*Ðä% aÓ(€Lð �\‰\¨dˆ\×3ˆØ�v‰vˆØ,¨Q¯V©VÑ4×9Ñ9ˆá˜D FšNà�L‰Là" ?Ð"3°1Ð5ðôð
 '+Ð˜dÒ#ä�qÔ+Ô,Ü�A—I‘I“ Ò"Ø—‘× Ñ Ô"à�L‰Là! /Ð!2°!Ð4ðôô
 (¨¯	©	Ö2‘
��7Ø48¸¸¸1°+Ð! '§,¡,Ò/ñ 3ä�—‘‹[˜LÒ(ð �L‰Là˜d˜V 3 Ð&7°qÐ9Ø3°D°6¸¸t¸fÐDjÐkoÐjpð  qMð  Nðôð '+Ð˜dÓ#ð '6Ð˜dÓ#ðO 4ðT 
‡y‚yØ$*Ð˜&Ñ!ð 24×1GÒ1GÓ HÑ1G¨A §£Ð1GÑ HÐÚØ�6‰6×ÑÔÜ !§&¡& Ð)IÐJÓKÐKØ×'Ô'ˆAØ�v‰vÔ2Ñ2Ü"Ø—v‘v�hÐCÀAÇFÁFÀ8ÐKhÐióð ô �1—6‘6‹{Ô3×7Ñ7¸¿¹Ó?Ó?Ü"Ø—v‘v�hÐ3´C¸¿¹³K°=Ð@\Ð]^×]cÑ]cÐ\dÐdeÐfóð ð (ô ÓQÕ;PÓQÔQÜØ—6‘6�(Ð<Ð=VÐ<WÐXóð ð 	�‰ðà˜wÑ'×,Ñ,Ð-ð .Ø Ñ)×.Ñ.Ð/ð 0Ø Ñ)×.Ñ.Ð/ð 0Ø& Ñ7×<Ñ<Ð=ð >Ø& |Ñ4×9Ñ9Ð:ð ;ðô
	
ð (1Ð˜)Ñ$ò Ò5ØÐ/Ñ/à—6‘6×#Ñ#Ô%Ü"Ø—v‘v�hÐQÐRTÐQUÐUVÐWY×WcÑWcÐVdÐeóð ô ÓTÑ?SÓTÔTÜ"Ø—v‘v�hÐJÐKóð ð �L‰LðØ*¨5Ñ1×6Ñ6Ð7°rÐ:LÈWÑ:U×:ZÑ:ZÐ9[ð \Ø*¨7Ñ3×@Ñ@ÐAÀÐDVÐW_ÑD`×DeÑDeÐCfð gØ*¨8Ñ4×9Ñ9Ð:¸"Ð=OÐPXÑ=Y×=fÑ=fÐ<gð hðôð Ð";Ñ;ÜØ—6‘6�(Ð_Ð`yÐ_zÐz{Ð|óð ô 'ÜÓC±{ÓCÓCØôð ùòu !Is   Å?Q)r"   N)r2   rE   r3   zIterable[str]r4   rG   rz   rE   )râ   r   rK   ry   rz   r   )râ   r   rz   ry   )r  r   ré   ry   rL   ry   rz   rE   )r  r   rz   z
int | None)r„   r   rz   rD   )râ   r   rK   ry   r  ry   rz   r�   )
rå   r   r  rG   rK   ry   r  ry   rz   r�   )r=   r<   rz   z	list[str])r  r   rz   rE   )rÄ   r�   rz   ztuple[str, str] | None)rÄ   r�   rz   rE   )T)rf  r�   râ   r   rL   ry   rz   z"tuple[DispatchLambdaArgument, ...])râ   r   rz   rE   )râ   r   r�  zPythonSignature | Nonerz   r»   )
r  r   rH   rG   rI   rG   rL   ry   rz   rE   )r¶  rq   r„   rD   rL   ry   rz   rÖ   )rf  r�   râ   r   rL   ry   rz   z$dict[str, PythonArgParserOutputExpr])rf  r�   râ   r   rL   ry   rz   rÝ   )=Ú
__future__r   Údataclassesr   Útypingr   Útorchgen.apir   Útorchgen.api.typesr   r   r	   Útorchgen.genr
   Útorchgen.modelr   r   r   r   r   r   r   r   r   r   Úcollections.abcr   r   r7   r;   rD   ro   r�   r¹   rÃ   rÇ   rÓ   rÖ   rÝ   rã   rç   rY   r  rÙ   rÄ   r  rB  rn   rQ  r\  r©   rj  rƒ  r†  rŽ  r–  r³  r¹  r¾  rÊ  rÐ  r"   r8   r%   Ú<module>rÙ     s¸  ðÝ "å !Ý  å ß GÑ GÝ *÷÷ ÷ ñ ß2ðj IMð?Ø
ð?Ø'ð?Ø;Eð?àó?ñ0 �$Ô÷ ð  ó ð ñ �$Ô÷Y)ð Y)ó ðY)ñx �$Ôô!C˜ó !Có ð!CñH �$Ô÷wQð wQó ðwQñx �$Ôô' ó 'ó ð'ñf �$Ô÷ð ó ðñ �$Ô÷'
ð '
ó ð'
ñ^ �$Ô÷ð ó ðñ �$Ô÷*ð *ó ð*ñ0 �$Ô÷ð ó ðð2 9>õ Nó7ð %*¸$ñ=7Øð=7Ø!ð=7Ø37ð=7àó=7ó@óð  */¸EñØðØ"&ðØ59ðàóð ØñFØ
ðFð "ðFð ð	Fð
 
ðFð óFó`.ó&BóJ$ó.4ón
ðl <@ð)5Øð)5Ø*ð)5Ø48ð)5à'ó)5ò^Ð ó:ó:Uð" 04ñØðð -ðð ó	ðR OSñYJØðYJØ ðYJØ0:ðYJØGKðYJàóYJð~ :>ñØðØ%ðØ26ðàóð( ?CñØðØ*ðØ7;ðà)óð ØØØØñÐ ð ?CñyØðyØ*ðyØ7;ðyà ôyr8   