§
    �ŠtjÔâ  ã                  ó  — 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 	 djdkd„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*œdld0„Z'dmd1„Z(d)dd2œdnd7„Z)dod9„Z*dpd<„Z+d)d)d=œdqd?„Z,d)d)d=œdrdC„Z-dsdG„Z.dtdI„Z/dudJ„Z0dudK„Z1dvdN„Z2dwdO„Z3	 dxdydR„Z4h dS£Z5dzdT„Z6dzdU„Z7d
dVœd{dZ„Z8dd[œd|d^„Z9dd[œd}da„Z:dd[œd~dc„Z;dddedfdgdgdhœZ<dd[œddi„Z=d
S )€é    )Úannotations)Ú	dataclass)ÚTYPE_CHECKING)Úcpp)ÚBindingÚCppSignatureÚCppSignatureGroup)Úpythonify_default)
ÚArgumentÚBaseTyÚBaseTypeÚFunctionSchemaÚListTypeÚNativeFunctionÚOptionalTypeÚReturnÚTypeÚVariant)ÚIterableÚSequence© NÚnameÚstrÚ	argumentsúIterable[str]Úreturn_typeú
str | NoneÚreturnc                óà  — t          |t          t          f¦  «        st          |¦  «        }|�d|› �nd}d| › dd                     |¦  «        › d|› d�}t	          |¦  «        dk    s&t	          |¦  «        d	k    st          |¦  «        d
k    r|S d| › d�gd„ |D ¦   «         ¢d|› d�‘}d                     |¦  «        }t          d„ |D ¦   «         ¦  «        r|S |                     d¦  «        dz   S )Nz -> Ú zdef ú(ú, ú)ú: ...éP   r   ©Úselfc              3  ó"   K  — | ]
}d |› d�V — ŒdS )z    ú,Nr   )Ú.0Úargs     úQ/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/torchgen/api/python.pyú	<genexpr>z,format_function_signature.<locals>.<genexpr>Ê   s*   è è € Ð	-Ð	-˜Cˆ-�ˆ-ˆ-ˆ-Ð	-Ð	-Ð	-Ð	-Ð	-Ð	-ó    ú
c              3  ó<   K  — | ]}t          |¦  «        d k    V — ŒdS )r%   N)Úlen)r*   Úlines     r,   r-   z,format_function_signature.<locals>.<genexpr>Î   s,   è è € Ð
-Ð
-˜t�3ˆt‰9Œ9˜Š?Ð
-Ð
-Ð
-Ð
-Ð
-Ð
-r.   z ...z  # fmt: skip
    ...)Ú
isinstanceÚlistÚtupleÚjoinr1   ÚallÚremovesuffix)r   r   r   ÚsigÚliness        r,   Úformat_function_signaturer;   ½   s3  € õ �i¥$­ Ñ/Ô/ð %Ý˜)Ñ$Ô$ˆ	Ø*5Ð*AÐ&˜Ð&Ð&Ð&Àr€Kà
A�Ð
AÐ
A˜Ÿ	š	 )Ñ,Ô,Ð
AÐ
A¨{Ð
AÐ
AÐ
A€CÝ
ˆ3�x„x�2‚~€~�˜Y™œ¨1Ò,Ð,µ°iÑ0@Ô0@ÀIÒ0MÐ0MØˆ
ð 	ˆtˆˆˆðà	-Ð	- 9Ð	-Ñ	-Ô	-ðð 	ˆKÐÐÐð€Eð
 �)Š)�EÑ
Ô
€CÝ
Ð
-Ð
- uÐ
-Ñ
-Ô
-Ñ-Ô-ð Øˆ
ð ×Ò˜FÑ#Ô#Ð&>Ñ>Ð>r.   T)Úfrozenc                  ó   — e Zd ZU ded<   dS )ÚPythonReturnsútuple[Return, ...]ÚreturnsN©Ú__name__Ú
__module__Ú__qualname__Ú__annotations__r   r.   r,   r>   r>   Õ   s   € € € € € € àÐÐÑÐÐr.   r>   c                  óX   — 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dS )ÚPythonArgumentr   r   r   Útyper   ÚdefaultÚdefault_initFT©ÚmethodÚsymintrL   ÚboolrM   r   c               ó"  — t          | j        |¬¦  «                             dd¦  «                             dd¦  «        }| j        }|dk    r|dv r|sd}| j        �/ddddd	œ                     | j        | j        ¦  «        }|› d
|› d|› �S |› d
|› �S )N©rM   zconst r    z &r'   )ÚTensorÚNumberÚinputÚNone)Únullptrú::std::nulloptústd::nulloptú{}ú ú=)Úargument_type_strrH   Úreplacer   rI   Úget)r'   rL   rM   Útype_strr   rI   s         r,   Úargument_strzPythonArgument.argument_strê   sÌ   € å˜dœi°Ð7Ñ7Ô7ßŠW�X˜rÑ"Ô"ßŠW�T˜2ÑÔð 	ð Œyˆð �6Š>ˆ>˜hÐ*>Ð>Ð>ÀvÐ>ØˆDð Œ<Ð#à!Ø"(Ø &Øð	ð ÷
 Šc�$”, ¤Ñ-Ô-ð ð Ð1Ð1 Ð1Ð1¨Ð1Ð1Ð1àÐ'Ð' Ð'Ð'Ð'r.   ©rL   Ú
deprecatedra   c          	     óø  — t          | j        ¦  «        }| j        }|dk    r|dk    r|s|sd}|dk    r|dz  }|dk    r|st          |¦  «        }|ot	          | t
          ¦  «        o
| j        dk    }| j        �ü|sút	          | j        t          ¦  «        r¯| j        j        t          t          j        ¦  «        k    rˆ| j                             d¦  «        rn| j                             d	¦  «        rTd
d                     t          t           j        | j        dd…                              d¦  «        ¦  «        ¦  «        z   dz   }n'dddddddœ                     | j        | j        ¦  «        }|› d|› d|› �S |› d|› �S )Nr'   rQ   rS   ÚfromÚ_ÚoutrT   Ú{Ú}r!   r"   é   éÿÿÿÿr)   r#   Úcontiguous_formatÚper_tensor_affine)rU   rV   rW   rX   zc10::MemoryFormat::ContiguouszQScheme::PER_TENSOR_AFFINEú: z = )Úargument_type_str_pyirH   r   Ú_append_optional_pyir3   ÚPythonOutArgumentrI   r   Úelemr   r   ÚintÚ
startswithÚendswithr6   Úmapr   ÚstripÚsplitr]   )r'   rL   ra   r^   r   Útreat_as_no_defaultrI   s          r,   Úargument_str_pyizPythonArgument.argument_str_pyi  s·  € õ )¨¬Ñ3Ô3ˆàŒyˆð �6Š>ˆ>˜h¨(Ò2Ð2¸6Ð2È*Ð2ØˆDà�6Š>ˆ>Ø�C‰KˆDð �5Š=ˆ= ˆ=Ý+¨HÑ5Ô5ˆHð ð 'Ý˜4Õ!2Ñ3Ô3ð'à” Ò&ð 	ð Œ<Ð#Ð,?Ð#å˜4œ9¥hÑ/Ô/ð2à”I”N¥h­v¬zÑ&:Ô&:Ò:Ð:Ø”L×+Ò+¨CÑ0Ô0ð ;à”L×)Ò)¨#Ñ.Ô.ð ;ð
 ˜$Ÿ)š)¥C­¬	°4´<ÀÀ"ÀÔ3E×3KÒ3KÈCÑ3PÔ3PÑ$QÔ$QÑRÔRÑRÐUXÑXð �ð
  &Ø&,Ø$*Ø Ø5HØ2Eðð ÷ ’#�d”l D¤LÑ1Ô1ð ð Ð4Ð4˜hÐ4Ð4¨7Ð4Ð4Ð4àÐ(Ð(˜hÐ(Ð(Ð(r.   N)rL   rN   rM   rN   r   r   )rL   rN   ra   rN   r   r   )rB   rC   rD   rE   r_   rx   r   r.   r,   rG   rG   Ú   sŒ   € € € € € € à€I€I�IØ€J€J�JØÐÐÑð ÐÐÑð .3À4ð (ð (ð (ð (ð (ð (ð6 !&¸%ð0)ð 0)ð 0)ð 0)ð 0)ð 0)ð 0)ð 0)r.   rG   c                  ó2   — e Zd ZU ded<   edd„¦   «         ZdS )ro   útuple[PythonArgument, ...]Úoutputsr   úPythonOutArgument | Nonec                óz  — | sd S t          | ¦  «        }|dk    r*t          | d         j        | d         j        dd | ¬¦  «        S |dk    rdt	          d„ | D ¦   «         ¦  «        rt          d| › �¦  «        ‚t          dt          t          t          j	        ¦  «        |¦  «        dd | ¬¦  «        S t          d¦  «        ‚)	Nrh   r   rT   )r   rH   rI   rJ   r{   c              3  óJ   K  — | ]}|j                              ¦   «          V — Œd S ©N©rH   Úis_tensor_like©r*   Úas     r,   r-   z1PythonOutArgument.from_outputs.<locals>.<genexpr>O  s3   è è € Ð@Ð@°1�q”v×,Ò,Ñ.Ô.Ð.Ð@Ð@Ð@Ð@Ð@Ð@r.   zUnsupported output type: re   z!Unexpected PythonOutArgument size)r1   ro   r   rH   ÚanyÚRuntimeErrorr   r   r   rQ   ÚAssertionError)r{   Úsizes     r,   Úfrom_outputszPythonOutArgument.from_outputs@  sâ   € àð 	Ø�4å�7‰|Œ|ˆØ�1Š9ˆ9Ý$Ø˜Q”Z”_Ø˜Q”Z”_ØØ!Øðñ ô ð ð �AŠXˆXÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ð JÝ"Ð#H¸wÐ#HÐ#HÑIÔIÐIÝ$Øå�h¥v¤}Ñ5Ô5°tÑ<Ô<ØØ!Øðñ ô ð õ ÐAÑBÔBÐBr.   N)r{   rz   r   r|   )rB   rC   rD   rE   Ústaticmethodrˆ   r   r.   r,   ro   ro   7  sH   € € € € € € ð (Ð'Ð'Ñ'àðCð Cð Cñ „\ðCð Cð Cr.   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d S )'ÚPythonSignaturer   r   rz   Ú
input_argsÚinput_kwargsr|   Úoutput_argsr>   r@   Útensor_options_argsrN   rL   r   c                ó   — dS )NFr   r&   s    r,   ra   zPythonSignature.deprecatedy  s   € àˆur.   F)Úskip_outputsÚskip_tensor_optionsr‘   r’   ú.tuple[PythonArgument | PythonOutArgument, ...]c               ó
  — g }|                      | j        ¦  «         |                      | j        ¦  «         | j        �|s|                     | j        ¦  «         |s|                      | j        ¦  «         t          |¦  «        S r   )ÚextendrŒ   r�   rŽ   Úappendr�   r5   )r'   r‘   r’   Úresults       r,   r   zPythonSignature.arguments}  s~   € ð <>ˆØ�Š�d”oÑ&Ô&Ð&Ø�Š�dÔ'Ñ(Ô(Ð(ØÔÐ'°Ð'Ø�MŠM˜$Ô*Ñ+Ô+Ð+Ø"ð 	4Ø�MŠM˜$Ô2Ñ3Ô3Ð3Ý�V‰}Œ}Ðr.   rq   c                óD   — t          |                      ¦   «         ¦  «        S r   )r1   r   r&   s    r,   Úarguments_countzPythonSignature.arguments_count‰  s   € Ý�4—>’>Ñ#Ô#Ñ$Ô$Ð$r.   c                óT   — t          | j        ¦  «        t          | j        ¦  «        z   S r   )r1   rŒ   r�   r&   s    r,   Ú
output_idxzPythonSignature.output_idxŒ  s"   € Ý�4”?Ñ#Ô#¥c¨$Ô*;Ñ&<Ô&<Ñ<Ð<r.   T©r‘   rM   rM   c               ó
  ‡ ‡— ‰                       |¬¦  «        }ˆ ˆfd„|D ¦   «         }t          ‰ j        ¦  «        }t          |¦  «        |k    r|                     |d¦  «         ‰ j        › dd                     |¦  «        › d�S )N©r‘   c                óH   •— g | ]}|                      ‰j        ‰¬ ¦  «        ‘ŒS )rK   )r_   rL   )r*   rƒ   r'   rM   s     €€r,   ú
<listcomp>z1PythonSignature.signature_str.<locals>.<listcomp>š  s8   ø€ ð %
ð %
ð %
ØBCˆA�NŠN $¤+°fˆNÑ=Ô=ð%
ð %
ð %
r.   Ú*r!   r"   r#   )r   r1   rŒ   Úinsertr   r6   )r'   r‘   rM   ÚargsÚschema_formalsÚpositional_argcs   ` `   r,   Úsignature_strzPythonSignature.signature_str˜  s£   øø€ Ø�~Š~¨<ˆ~Ñ8Ô8ˆð%
ð %
ð %
ð %
ð %
ØGKð%
ñ %
ô %
ˆõ ˜dœoÑ.Ô.ˆÝˆ~ÑÔ Ò0Ð0Ø×!Ò! /°3Ñ7Ô7Ð7à”)Ð:Ð:˜dŸiši¨Ñ7Ô7Ð:Ð:Ð:Ð:r.   rž   c               óJ  ‡ — ‰                       |¬¦  «        }ˆ fd„|D ¦   «         }t          ‰ j        ¦  «        }t          |¦  «        |k    r|                     |d¦  «         t	          ‰ ¦  «        }‰ j        r|                     dd¦  «         t          ‰ j        ||¦  «        S )Nrž   c                óF   •— g | ]}|                      ‰j        ¬ ¦  «        ‘ŒS ©©rL   ©rx   rL   ©r*   rƒ   r'   s     €r,   r    z5PythonSignature.signature_str_pyi.<locals>.<listcomp>¥  ó9   ø€ ð %
ð %
ð %
Ø78ˆA×Ò d¤kÐÑ2Ô2ð%
ð %
ð %
r.   r¡   r   r'   )r   r1   rŒ   r¢   Úreturns_str_pyirL   r;   r   ©r'   r‘   r£   r¤   r¥   Úreturns_strs   `     r,   Úsignature_str_pyiz!PythonSignature.signature_str_pyi£  s»   ø€ Ø�~Š~¨<ˆ~Ñ8Ô8ˆð%
ð %
ð %
ð %
Ø<@ð%
ñ %
ô %
ˆõ ˜dœoÑ.Ô.ˆÝˆ~ÑÔ Ò0Ð0Ø×!Ò! /°3Ñ7Ô7Ð7õ & dÑ+Ô+ˆàŒ;ð 	-Ø×!Ò! ! VÑ,Ô,Ð,Ý(¨¬°NÀKÑPÔPÐPr.   r   c               ó  ‡ — ‰                       |¬¦  «        }ˆ fd„|D ¦   «         }‰                      ¦   «         }|dk    rd S t          ‰ j        ¦  «        }|d         j        }t          |t          ¦  «        rt          |j        ¦  «        dv r|dk    sd S d|d         j	        z   dz   t          |j        ¦  «        z   |d<   t          ‰ ¦  «        }‰ j        r|                     dd¦  «         t          ‰ j	        ||¦  «        S )	Nrž   c                óF   •— g | ]}|                      ‰j        ¬ ¦  «        ‘ŒS r©   r«   r¬   s     €r,   r    z<PythonSignature.signature_str_pyi_vararg.<locals>.<listcomp>¶  r­   r.   r   )rq   ÚSymIntrh   r¡   rl   r'   )r   r™   r1   rŒ   rH   r3   r   r   rp   r   rm   r®   rL   r¢   r;   )r'   r‘   r£   r¤   Únum_argsÚnum_positionalargsÚvararg_typer°   s   `       r,   Úsignature_str_pyi_varargz(PythonSignature.signature_str_pyi_vararg³  s&  ø€ à�~Š~¨<ˆ~Ñ8Ô8ˆð%
ð %
ð %
ð %
Ø<@ð%
ñ %
ô %
ˆð ×'Ò'Ñ)Ô)ˆØ�qŠ=ˆ=Ø�4å  ¤Ñ1Ô1Ðà˜1”g”lˆå�{¥HÑ-Ô-ð	å�KÔ$Ñ%Ô%Ð):Ð:Ð:Ø" aÒ'Ð'à�4ð
 �$�q”'”,Ñ Ñ%Õ(=¸kÔ>NÑ(OÔ(OÑOð 	�qÑõ & dÑ+Ô+ˆàŒ;ð 	-Ø×!Ò! ! VÑ,Ô,Ð,Ý(¨¬°NÀKÑPÔPÐPr.   N©r   rN   )r‘   rN   r’   rN   r   r“   )r   rq   ©r‘   rN   rM   rN   r   r   ©r‘   rN   r   r   ©r‘   rN   r   r   )rB   rC   rD   rE   Úpropertyra   r   r™   r›   r¦   r±   r¸   r   r.   r,   r‹   r‹   \  sV  € € € € € € ð €I€I�Ið +Ð*Ð*Ñ*ð -Ð,Ð,Ñ,à)Ð)Ð)Ñ)ð ÐÐÑð 4Ð3Ð3Ñ3ð €L€L�Làðð ð ñ „Xðð ',Èð
ð 
ð 
ð 
ð 
ð 
ð%ð %ð %ð %ð=ð =ð =ð =ð 5:È$ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 9>ð Qð Qð Qð Qð Qð Qð  @Eð Qð Qð Qð Qð Qð Qð Qð Qr.   r‹   c                  óh   — 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dS )ÚPythonSignatureDeprecatedr   Údeprecated_schemaútuple[str, ...]Údeprecated_args_exprsr   rN   c                ó   — dS )NTr   r&   s    r,   ra   z$PythonSignatureDeprecated.deprecatedå  ó   € àˆtr.   FTrœ   r‘   rM   r   c               óB   — t                                | ||¬¦  «        dz   S )Nrœ   z|deprecated)r‹   r¦   )r'   r‘   rM   s      r,   r¦   z'PythonSignatureDeprecated.signature_stré  s0   € å×)Ò)Ø <¸ð *ñ ô ð ñð	
r.   rž   c               ó  ‡ — ‰                       |¬¦  «        }ˆ fd„|D ¦   «         }t          ‰ j        ¦  «        }t          |¦  «        |k    r|                     |d¦  «         t	          ‰ ¦  «        }t          ‰ j        ||¦  «        S )Nrž   c                óH   •— g | ]}|                      ‰j        d ¬¦  «        ‘ŒS )Tr`   r«   r¬   s     €r,   r    z?PythonSignatureDeprecated.signature_str_pyi.<locals>.<listcomp>ó  s;   ø€ ð %
ð %
ð %
ØHIˆA×Ò d¤k¸dÐÑCÔCð%
ð %
ð %
r.   r¡   )r   r1   rŒ   r¢   r®   r;   r   r¯   s   `     r,   r±   z+PythonSignatureDeprecated.signature_str_pyiñ  s™   ø€ Ø�~Š~¨<ˆ~Ñ8Ô8ˆð%
ð %
ð %
ð %
ØMQð%
ñ %
ô %
ˆõ ˜dœoÑ.Ô.ˆÝˆ~ÑÔ Ò0Ð0Ø×!Ò! /°3Ñ7Ô7Ð7å% dÑ+Ô+ˆÝ(¨¬°NÀKÑPÔPÐPr.   r   c               ó   — d S r   r   )r'   r‘   s     r,   r¸   z2PythonSignatureDeprecated.signature_str_pyi_varargý  rÄ   r.   Nr¹   rº   r»   r¼   )	rB   rC   rD   rE   r½   ra   r¦   r±   r¸   r   r.   r,   r¿   r¿   ×  sÃ   € € € € € € ð &Ð%Ð%Ñ%ð +Ð*Ð*Ñ*àðð ð ñ „Xðð 5:È$ð 
ð 
ð 
ð 
ð 
ð 
ð 9>ð 
Qð 
Qð 
Qð 
Qð 
Qð 
Qð @Eð ð ð ð ð ð ð ð r.   r¿   c                  ó$   — e Zd ZU ded<   ded<   dS )Ú!PythonSignatureNativeFunctionPairr‹   Ú	signaturer   ÚfunctionNrA   r   r.   r,   rÊ   rÊ     s*   € € € € € € àÐÐÑØÐÐÑÐÐr.   rÊ   c                  óF   — e Zd ZU ded<   ded<   ded<   edd„¦   «         ZdS )ÚPythonSignatureGroupr‹   rË   r   ÚbasezNativeFunction | NoneÚoutplaceÚ
functionalrÊ   re   ú(PythonSignatureNativeFunctionPair | Noner   c                ó   — |€t          |j        |j        d ¬¦  «        S |j        j                             ¦   «         }|j        j        |d<   t           t          |j        ¦  «        di |¤Ž|j        |j        ¬¦  «        S )N)rË   rÏ   rÐ   r�   r   )rÎ   rË   rÌ   Ú__dict__Úcopyr�   rH   )ÚclsrÑ   re   Úsignature_kwargss       r,   Ú
from_pairszPythonSignatureGroup.from_pairs!  s    € ð ˆ;Ý'Ø$Ô.ØÔ(Øðñ ô ð ð œ=Ô1×6Ò6Ñ8Ô8Ðð
 Ô Ô4ð 	Ð.Ñ/õ $Ø)•d˜3œ=Ñ)Ô)Ð=Ð=Ð,<Ð=Ð=ØÔ$Ø”\ð
ñ 
ô 
ð 	
r.   N)rÑ   rÊ   re   rÒ   r   rÎ   )rB   rC   rD   rE   ÚclassmethodrØ   r   r.   r,   rÎ   rÎ     s^   € € € € € € ð
 ÐÐÑð ÐÐÑð $Ð#Ð#Ñ#àð
ð 
ð 
ñ „[ð
ð 
ð 
r.   rÎ   c                  ó.   — e Zd ZU ded<   ded<   ded<   dS )ÚDispatchLambdaArgumentr   r   r^   rN   Ú
is_out_argNrA   r   r.   r,   rÛ   rÛ   D  s0   € € € € € € à€I€I�IØ€M€M�MØÐÐÑÐÐr.   rÛ   c                  óP   — e Zd ZU ded<   ded<   ded<   ded<   edd	„¦   «         Zd
S )ÚPythonArgParserOutputExprr   r   Úexprrq   ÚindexrG   Úargumentr   c                ó   — d| j         › d�S )Nz
_r.isNone(r#   )rà   r&   s    r,   Úis_none_exprz&PythonArgParserOutputExpr.is_none_expr_  s   € à)˜DœJÐ)Ð)Ð)Ð)r.   N)r   r   )rB   rC   rD   rE   r½   rã   r   r.   r,   rÞ   rÞ   P  sc   € € € € € € ð €I€I�Ið €I€I�Ið €J€J�Jð ÐÐÑàð*ð *ð *ñ „Xð*ð *ð *r.   rÞ   c                  ó$   — e Zd ZU ded<   ded<   dS )ÚDispatchLambdaArgumentExprszSequence[str]ÚexprsÚinitsNrA   r   r.   r,   rå   rå   i  s.   € € € € € € ð ÐÐÑð ÐÐÑÐÐr.   rå   Frª   Úfr   rL   rN   r   c               ó8   — t          j        | |¬¦  «        j        S )Nrª   )r	   Úfrom_native_functionrË   )rè   rL   s     r,   Ú_cpp_signaturerë   ƒ  s   € ÝÔ1°!¸FÐCÑCÔCÔMÐMr.   c                ó(   — | j         j        j        d uS r   )Úfuncr   Útensor_options)rè   s    r,   Úhas_tensor_optionsrï   ‡  s   € ØŒ6ÔÔ*°$Ð6Ð6r.   ©Úsimple_typerM   Útr   rñ   rM   c               óô  — t          | t          ¦  «        rë| j        t          j        k    rdS | j        t          j        k    rdS | j        t          j        k    rdS | 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 �nZt          | t(          ¦  «        rt+          | j        ||¬¦  «        }|› d�S t          | t.          ¦  «        �r|s| j        nd }t          | j        ¦  «        dk    r!| j        €t3          d¦  «        ‚d| j        › d	�S t          | j        ¦  «        d
k    r
|�d|› d�ndS t          | j        ¦  «        dk    r|r
|�d|› d�ndS |�d|› d�ndS t          | j        ¦  «        dk    r
|�d|› d�ndS t          | j        ¦  «        dk    r
|�d|› d�ndS t          | j        ¦  «        dk    r|rdS dS t+          | j        ||¬¦  «        }d|› d	�S t5          dt7          | ¦  «        › �¦  «        ‚)NÚint64_tÚdoublezc10::string_viewrð   ú?rN   zbool ListType must have a sizez::std::array<bool,ú>rq   zIntArrayRef[ú]ÚIntArrayRefr´   zSymIntArrayRef[ÚSymIntArrayRefrQ   zTensorList[Ú
TensorListÚScalarzScalarList[Ú
ScalarListúTensor?z"c10::List<::std::optional<Tensor>>z*const c10::List<::std::optional<Tensor>> &z	ArrayRef<úunrecognized type )r3   r   r   r   rq   Úfloatr   rQ   rN   ÚQSchemerü   Ú
ScalarTypeÚ	GeneratorÚStorageÚLayoutÚDeviceÚDeviceIndexÚMemoryFormatÚStreamr´   r   r[   rp   r   r‡   r†   r…   Úrepr)rò   rñ   rM   rp   r‡   s        r,   r[   r[   •  s£  € õ �!•XÑÔð 5#ØŒ6•V”ZÒÐØ�9ØŒV•v”|Ò#Ð#Ø�8ØŒV•v”zÒ!Ð!Ø%Ð%ØŒVÝŒMÝŒKÝŒNÝŒMÝÔÝÔÝŒNÝŒMÝŒMÝÔÝÔÝŒMÝŒMð
ð 
ð 
ð  ”6”;Ðñ!
õ$ 
�A•|Ñ	$Ô	$ð #Ý  ¤°[ÈÐPÑPÔPˆØˆzˆzˆzÐÝ	�A•xÑ	 Ô	 ñ #Ø(Ð2ˆqŒvˆv¨dˆÝˆqŒv‰;Œ;˜&Ò Ð ØŒvˆ~Ý$Ð%EÑFÔFÐFØ1¨¬Ð1Ð1Ð1Ð1Ý�”‰[Œ[˜EÒ!Ð!Ø-1Ð-=Ð) $Ð)Ð)Ð)Ð)À=ÐPÝ�”‰[Œ[˜HÒ$Ð$Øð Uà15Ð1AÐ- dÐ-Ð-Ð-Ð-ÐGWðð 26Ð1AÐ- dÐ-Ð-Ð-Ð-À}ÐTÝ�”‰[Œ[˜HÒ$Ð$Ø,0Ð,<Ð( Ð(Ð(Ð(Ð(À,ÐNÝ�”‰[Œ[˜HÒ$Ð$Ø,0Ð,<Ð( Ð(Ð(Ð(Ð(À,ÐNÝ�”‰[Œ[˜IÒ%Ð%Øð DØ;Ð;àCÐCÝ  ¤°[ÈÐPÑPÔPˆØ"˜4Ð"Ð"Ð"Ð"å
Ð5­D°©G¬GÐ5Ð5Ñ
6Ô
6Ð6r.   ú
int | Nonec                óp   — |                       ¦   «         }|�t          |j        ¦  «        dk    r|j        S d S )NrN   )Úis_list_liker   rp   r‡   )rò   Úls     r,   Úargument_type_sizer  Ò  s4   € Ø	�ŠÑÔ€AØ€}�˜QœV™œ¨Ò.Ð.ØŒvˆàˆtr.   rƒ   r   c                óÀ   — t          | j        | j        | j        �;t	          t          t          j        | j        | j        d¬¦  «        ¦  «        ¦  «        nd d ¬¦  «        S )NFrP   ©r   rH   rI   rJ   )rG   r   rH   rI   r   r
   r   Údefault_expr)rƒ   s    r,   rá   rá   Ú  sb   € ÝØŒVØŒVð ŒyÐ$õ Õ!¥#Ô"2°1´9¸a¼fÈUÐ"SÑ"SÔ"SÑTÔTÑUÔUÐUààð
ñ 
ô 
ð 
r.   )rL   Úpyir  c               ó<   — t          | j        | j        ||¬¦  «        S )N)Úcategory_overriderL   r  )Úsignature_from_schemarí   r  )rè   rL   r  s      r,   rË   rË   é  s)   € õ !Ø	Œ !Ô"5¸fÈ#ðñ ô ð r.   rí   r   r  c          
     ó	  ‡ ‡‡‡— g }|                      ‰ j        j        ¦  «         |s0‰ j        j        �$|                     ‰ j        j        j        ¦  «         |                      ‰ j        j        ¦  «         |                      ‰ j        j        ¦  «         |                      ‰ j        j        ¦  «         |                      ‰ j        j	        ¦  «         d„ ‰ j        j
        D ¦   «         Šd„ ‰ j        j        D ¦   «         Šd„ ‰ j        j	        D ¦   «         Š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„ ‰                      ¦   «         D ¦   «         ¦  «        rt%          d	¦  «        ‚t          d
„ ‰ j        D ¦   «         ¦  «        }	t)          j        ‰ ¦  «        }
|dk    p|	o| }|dv p)|
                     d¦  «        p|
                     d¦  «        }|dk    }g }|s|�r¤|�s¡d ˆ fd„}|                     t1          dt3          t5          t6          j        ¦  «        ¦  «        d|rd n
 |d¦  «        ¬¦  «        ¦  «         |                     t1          dt3          t5          t6          j        ¦  «        ¦  «        d|rd n
 |d¦  «        ¬¦  «        ¦  «         |                     t1          dt3          t5          t6          j        ¦  «        ¦  «        d|rd n |d¦  «        pd¬¦  «        ¦  «         |                     t1          dt3          t5          t6          j        ¦  «        ¦  «        dd ¬¦  «        ¦  «         |                     t1          dt3          t5          t6          j        ¦  «        ¦  «        dd ¬¦  «        ¦  «         tA          ‰ j        ¬¦  «        }tC          tE          ‰ j        j        ¦  «        ||tF           $                    |¦  «        t          |¦  «        ||¬¦  «        S )!Nc                ó   — h | ]	}|j         ’Œ
S r   ©r   r‚   s     r,   ú	<setcomp>z(signature_from_schema.<locals>.<setcomp>  s   € ÐDÐDÐD �Q”VÐDÐDÐDr.   c                ó   — h | ]	}|j         ’Œ
S r   r  r‚   s     r,   r  z(signature_from_schema.<locals>.<setcomp>  s   € ÐEÐEÐE �a”fÐEÐEÐEr.   c                ó   — h | ]	}|j         ’Œ
S r   r  r‚   s     r,   r  z(signature_from_schema.<locals>.<setcomp>  s   € Ð6Ð6Ð6˜a�1”6Ð6Ð6Ð6r.   c                ó   •— | j         ‰v S r   r  )rƒ   Úinput_arg_sets    €r,   ú<lambda>z'signature_from_schema.<locals>.<lambda>  s   ø€ °a´fÀÐ6M€ r.   c                ó   •— | j         ‰v S r   r  )rƒ   Úkwarg_only_sets    €r,   r  z'signature_from_schema.<locals>.<lambda>
  s   ø€  q¤v°Ð'?€ r.   c                ó   •— | j         ‰v S r   r  )rƒ   Úout_arg_sets    €r,   r  z'signature_from_schema.<locals>.<lambda>  s   ø€ °1´6¸[Ð3H€ r.   c              3  óH   K  — | ]}|j                              ¦   «         V — Œd S r   r€   r‚   s     r,   r-   z(signature_from_schema.<locals>.<genexpr>  sA   è è € ð ð Ø$%ˆŒ×ÒÑÔðð ð ð ð ð r.   c              3  ó,   K  — | ]}|j         d k    V — ŒdS )Úrequires_gradNr  r‚   s     r,   r-   z(signature_from_schema.<locals>.<genexpr>  s)   è è € Ð
LÐ
L¨ˆ1Œ6�_Ò$Ð
LÐ
LÐ
LÐ
LÐ
LÐ
Lr.   zTargument named requires_grad is reserved, should not explicitly add it in the schemac              3  óH   K  — | ]}|j                              ¦   «         V — Œd S r   r€   ©r*   Úrs     r,   r-   z(signature_from_schema.<locals>.<genexpr>   s0   è è € ÐJÐJ¸˜AœF×1Ò1Ñ3Ô3ÐJÐJÐJÐJÐJÐJr.   Úfactory)ÚnewÚlikeÚnew_Ú_likeÚdummyr   r   r   r   c                ó®   •— ‰j         j        }|€d S t          || ¦  «        }|j        �|j        dk    rd S t	          j        |j        |j        d¬¦  «        S )NrT   FrP   )r   rî   ÚgetattrrI   r   r  rH   )r   Ú	topt_argsrƒ   rí   s      €r,   Útopt_default_initz0signature_from_schema.<locals>.topt_default_init0  s\   ø€ ØœÔ5ˆIØÐ Ø�tÝ˜	 4Ñ(Ô(ˆAØŒyÐ  A¤I°Ò$7Ð$7Ø�tÝÔ# A¤I¨q¬v¸eÐDÑDÔDÐDr.   ÚdtyperT   r  ÚlayoutÚdevicez$torch::tensors::get_default_device()Ú
pin_memoryÚFalser&  ©r@   )r   rŒ   r�   rŽ   r�   r@   rL   )r   r   r   r   )%r•   r   Úpre_self_positionalÚself_argr–   rá   Úpost_self_positionalÚpre_tensor_options_kwarg_onlyÚpost_tensor_options_kwarg_onlyre   Úflat_positionalÚflat_kwarg_onlyr5   rt   Úfilterr„   Úflat_non_outÚschema_order_argumentsÚ
ValueErrorr@   r   r   rr   rs   rG   r   r   r   r  r  r  rN   r>   r‹   r   ro   rˆ   )rí   r  rL   r  r£   rŒ   r�   r{   Úhas_tensor_input_argÚhas_tensor_returnr   Úis_factory_functionÚis_like_or_new_functionÚis_dummy_functionr�   r3  r@   r  r!  r#  s   `                @@@r,   r  r  ñ  sé  øøøø€ ð €DØ‡K‚K�”Ô2Ñ3Ô3Ð3àð 6�d”nÔ-Ð9Ø�Š�D”NÔ+Ô4Ñ5Ô5Ð5Ø‡K‚K�”Ô3Ñ4Ô4Ð4Ø‡K‚K�”Ô<Ñ=Ô=Ð=ð 	‡K‚K�”Ô=Ñ>Ô>Ð>Ø‡K‚K�”Ô"Ñ#Ô#Ð#àDÐD T¤^Ô%CÐDÑDÔD€MØEÐE d¤nÔ&DÐEÑEÔE€NØ6Ð6 4¤>Ô#5Ð6Ñ6Ô6€Kå•s�8¥VÐ,MÐ,MÐ,MÐ,MÈtÑ%TÔ%TÑUÔUÑVÔV€JÝÝ�H•fÐ?Ð?Ð?Ð?ÀÑFÔFÑGÔGñô €Lõ •C�¥&Ð)HÐ)HÐ)HÐ)HÈ$Ñ"OÔ"OÑPÔPÑQÔQ€Gõ ð ð Ø)-¬Ô)Dðñ ô ñ ô Ðõ Ð
LÐ
L¨d×.IÒ.IÑ.KÔ.KÐ
LÑ
LÔ
LÑLÔLð 
ÝØbñ
ô 
ð 	
õ ÐJÐJ¸T¼\ÐJÑJÔJÑJÔJÐå”˜‘”€DØ+¨yÒ8ð ØÐ6Ð"6Ð6ð ð 	˜_Ð,ð 	"Ø�?Š?˜6Ñ"Ô"ð	"à�=Š=˜Ñ!Ô!ð ð
 *¨WÒ4Ðà02ÐØð =
Ð6ñ =
Ð@Qñ =
ð	Eð 	Eð 	Eð 	Eð 	Eð 	Eð 	×"Ò"ÝØÝ!¥(­6Ô+<Ñ"=Ô"=Ñ>Ô>Øà3ÐS�D�DÐ9JÐ9JÈ7Ñ9SÔ9Sðñ ô ñ		
ô 		
ð 		
ð 	×"Ò"ÝØÝ!¥(­6¬=Ñ"9Ô"9Ñ:Ô:Øà3ÐT�D�DÐ9JÐ9JÈ8Ñ9TÔ9Tðñ ô ñ		
ô 		
ð 		
ð 	×"Ò"ÝØÝ!¥(­6¬=Ñ"9Ô"9Ñ:Ô:Øð /ð�D�Dð *Ð)¨(Ñ3Ô3ð BØAðñ ô ñ	
ô 	
ð 	
ð 	×"Ò"ÝØ!Ý!¥(­6¬;Ñ"7Ô"7Ñ8Ô8ØØ!ð	ñ ô ñ	
ô 	
ð 	
ð 	×"Ò"ÝØ$Ý!¥(­6¬;Ñ"7Ô"7Ñ8Ô8ØØ!ð	ñ ô ñ	
ô 	
ð 	
õ  D¤LÐ1Ñ1Ô1€GåÝ�””Ñ Ô ØØ!Ý%×2Ò2°7Ñ;Ô;Ý!Ð"5Ñ6Ô6ØØðñ ô ð r.   r@   r?   ú	list[str]c                óÆ   — t          | ¦  «        dk    st          d„ | D ¦   «         ¦  «        rg S t          d„ | D ¦   «         ¦  «        rt          d¦  «        ‚d„ | D ¦   «         S )Nrh   c              3  ó(   K  — | ]}|j         d u V — Œd S r   r  r(  s     r,   r-   z'structseq_fieldnames.<locals>.<genexpr>‚  s(   è è € Ð@Ð@°1 ¤¨$ Ð@Ð@Ð@Ð@Ð@Ð@r.   c              3  ó(   K  — | ]}|j         d u V — Œd S r   r  r(  s     r,   r-   z'structseq_fieldnames.<locals>.<genexpr>…  s(   è è € Ð/Ð/ !ˆqŒv˜ˆ~Ð/Ð/Ð/Ð/Ð/Ð/r.   z)Unnamed field is not supported by codegenc                ó6   — g | ]}t          |j        ¦  «        ‘ŒS r   )r   r   r(  s     r,   r    z(structseq_fieldnames.<locals>.<listcomp>‘  s    € Ð-Ð-Ð- •�A”F‘”Ð-Ð-Ð-r.   )r1   r7   r„   rD  r9  s    r,   Ústructseq_fieldnamesrO  �  sy   € Ý
ˆ7�|„|�qÒÐ�CÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ÐØˆ	åÐ/Ð/ wÐ/Ñ/Ô/Ñ/Ô/ð 
	Jõ ÐHÑIÔIÐIà-Ð- WÐ-Ñ-Ô-Ð-r.   r^   c                ó4   — | › d�                      dd¦  «        S )Nz | Nonez | None | None)r\   )r^   s    r,   rn   rn   ”  s"   € àÐÐÐ×'Ò'Ð(8¸)ÑDÔDÐDr.   c                ó¢  — d}t          | t          ¦  «        r	| j        } d}d}t          | t          ¦  «        �rl| j        t
          j        t
          j        fv rd}| j        t
          j        k    rd}�nK| j        t
          j	        k    rd}�n2| 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}�nj| j        t
          j        k    rd}�nQ| j        t
          j        t
          j        t
          j        fv r| j        j        }�nt          | t,          ¦  «        råt          | j        ¦  «        dk    r| j        �dnd}nà|                      ¦   «         r;t          | j        t          ¦  «        rd}d}nd}| j        �	d|› d|› d�nd|› d|› d�}n‘t          | j        ¦  «        dk    rd}nvt          | j        ¦  «        dk    r$| j        �t3          | j        ¦  «        }|› d|› d�}n:t3          | j        ¦  «        }d|› d�}nt5          dt7          | ¦  «        › �¦  «        ‚|rt9          |¦  «        }|S )NFTr    Ú_intz_int | SymIntÚ_floatr   zNumber | _complexÚ_dtypeÚ_boolÚ_qschemeÚ_layoutzDeviceLikeType | NoneÚmemory_formatzStorage | UntypedStoragerq   z_int | _sizeÚ_sizezTensor | NonerQ   zTensor | tuple[z, ...] | list[rø   útuple[r   zSequence[_float]r´   z | Sequence[z	Sequence[rÿ   )r3   r   rp   r   r   r   rq   r  r´   r   r   rü   r  rN   r  r  r  r  r  rQ   r  r	  r   r‡   r�   rm   r…   r
  rn   )rò   Úadd_optionalÚretÚelem_strrp   s        r,   rm   rm   ™  sÝ  € Ø€LÝ�!•\Ñ"Ô"ð ØŒFˆØˆà
€CÝ�!•XÑÔñ 7;ØŒ6•f”j¥&Ô"4Ð5Ð5Ð5ØˆCØŒ6•V”]Ò"Ð"Ø!ˆC‰CØŒV•v”|Ò#Ð#ØˆC‰CØŒV•v”zÒ!Ð!ØˆC‰CØŒV•v”}Ò$Ð$Ø%ˆC‰CØŒV•vÔ(Ò(Ð(ØˆC‰CØŒV•v”{Ò"Ð"ØˆC‰CØŒV•v”~Ò%Ð%ØˆC‰CØŒV•v”}Ò$Ð$ØˆC‰CØŒV•v”}Ò$Ð$Ø)ˆC‰CØŒV•vÔ*Ò*Ð*Ø!ˆC‰CØŒV•v”~Ò%Ð%Ø,ˆC‰CØŒV�œ¥vÔ'7½¼ÐGÐGÐGà”&”+ˆCùå	�A•xÑ	 Ô	 ð ;ÝˆqŒv‰;Œ;˜%ÒÐØ$%¤FÐ$6�.�.¸GˆCˆCØ×ÒÑÔð 	&õ ˜!œ&¥,Ñ/Ô/ð $Ø#�Ø*��à#�ð ”6Ð%ð F (ÐEÐE¸(ÐEÐEÐEÐEàA˜hÐAÐA°hÐAÐAÐAð ˆCõ
 �”‰[Œ[˜GÒ#Ð#Ø$ˆCˆCÝ�”‰[Œ[˜HÒ$Ð$¨¬Ð);Ý(¨¬Ñ0Ô0ˆDØÐ.Ð. tÐ.Ð.Ð.ˆCˆCå(¨¬Ñ0Ô0ˆDØ%˜dÐ%Ð%Ð%ˆCˆCõ Ð9µ°Q±´Ð9Ð9Ñ:Ô:Ð:àð (Ý" 3Ñ'Ô'ˆà€Jr.   c                ód  — t          | t          ¦  «        r#t          | j        ¦  «        }t	          |¦  «        S t          | t
          ¦  «        r&| j        t          j        k    rdS t          | ¦  «        S t          | t          ¦  «        rt          | j        ¦  «        }d|› d�S t          | ¦  «        S )NÚ_devicerZ  z, ...])r3   r   Úreturn_type_str_pyirp   rn   r   r   r   r  rm   r   )rò   Úinners     r,   r`  r`  ß  s§   € õ �!•\Ñ"Ô"ð +Ý# A¤FÑ+Ô+ˆÝ# EÑ*Ô*Ð*å�!•XÑÔð ,ØŒ6•V”]Ò"Ð"Ø�9å(¨Ñ+Ô+Ð+å�!•XÑÔð &Ý# A¤FÑ+Ô+ˆØ%˜Ð%Ð%Ð%Ð%å  Ñ#Ô#Ð#r.   rË   útuple[str, str] | Nonec                óÜ  — d„ | j         j         D ¦   «         }| j        }t          | j         j         ¦  «        }|r³dd                     |¦  «        › d�}d|› d|› d�g}t	          ||¦  «        D ]#\  }}|                     dd	|› d
|› d�g¦  «         Œ$|                     ddd|› d�dddt          |¦  «        › �dt          |¦  «        › �dddg
¦  «         d                     |¦  «        }||fS d S )Nc                ó6   — g | ]}t          |j        ¦  «        ‘ŒS r   ©r`  rH   r(  s     r,   r    z)returns_structseq_pyi.<locals>.<listcomp>õ  ó#   € ÐUÐUÐU°aÕ)¨!¬&Ñ1Ô1ÐUÐUÐUr.   rZ  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@   r   rO  r6   Úzipr•   r1   )	rË   Úpython_returnsÚstructseq_nameÚfield_namesÚseq_typeÚstructseq_def_linesr   Úret_typeÚstructseq_defs	            r,   Úreturns_structseq_pyiro  ô  sa  € ØUÐU¸9Ô;LÔ;TÐUÑUÔU€NØ”^€NÝ& yÔ'8Ô'@ÑAÔA€KØð /-ð 9˜DŸIšI nÑ5Ô5Ð8Ð8Ð8ˆà?�^Ð?Ð? hÐ?Ð?Ð?ð
Ðõ " +¨~Ñ>Ô>ð 	ð 	‰NˆD�(Ø×&Ò&à#Ø>˜tÐ>Ð>¨xÐ>Ð>Ð>ðñô ð ð ð 	×"Ò"à"ØØ0 XÐ0Ð0Ð0Ø-ØØA­s°;Ñ/?Ô/?ÐAÐAØJ½¸KÑ8HÔ8HÐJÐJØ7ØYØðñ	
ô 	
ð 	
ð Ÿ	š	Ð"5Ñ6Ô6ˆð$ ˜}Ð,Ð,Øˆ4r.   c                ó  — t          | j        j        ¦  «        }|r
d| j        › �S d„ | j        j        D ¦   «         }t          |¦  «        dk    rdd                     |¦  «        z   dz   S t          |¦  «        dk    r|d         S dS )	Nztorch.return_types.c                ó6   — g | ]}t          |j        ¦  «        ‘ŒS r   re  r(  s     r,   r    z#returns_str_pyi.<locals>.<listcomp>0  rf  r.   rh   rZ  r"   rø   r   rT   )rO  r@   r   r1   r6   )rË   rj  rh  s      r,   r®   r®   +  s˜   € Ý& yÔ'8Ô'@ÑAÔA€KØð 6Ø5 Y¤^Ð5Ð5Ð5àUÐU¸9Ô;LÔ;TÐUÑUÔU€NÝ
ˆ>ÑÔ˜QÒÐØ˜$Ÿ)š) NÑ3Ô3Ñ3°cÑ9Ð9Ý
ˆ>ÑÔ˜aÒÐØ˜aÔ Ð Øˆ6r.   Úpsú"tuple[DispatchLambdaArgument, ...]c                ó  ‡ ‡— t          ‰ t          ¦  «        r‰ j        }n|j        }t	          j        |j        d|d|j        ¬¦  «        }d„ |j        j        D ¦   «         Šd	ˆˆ fd„}t          t          ||¦  «        ¦  «        S )
NF)r   ÚfaithfulrM   rL   Úcpp_no_default_argsc                ó   — h | ]	}|j         ’Œ
S r   r  r‚   s     r,   r  z'dispatch_lambda_args.<locals>.<setcomp>p  s   € Ð?Ð?Ð? Q˜!œ&Ð?Ð?Ð?r.   Úcpp_argr   r   rÛ   c                óÜ   •— | j         }| j        ‰v }‰j        r| j        dk    rd}n0t          ‰¦  «        dk    p| }|rddi                     ||¦  «        }t          | j        ||¬¦  «        S )Nr'   zconst at::Tensor &rh   zat::Tensor &ú
at::Tensor)r   r^   rÜ   )rH   r   rL   r1   r]   rÛ   )rx  r^   rÜ   Úensure_temp_safeÚout_argsrr  s       €€r,   Údispatch_lambda_argz1dispatch_lambda_args.<locals>.dispatch_lambda_args  s—   ø€ Ø”<ˆØ”\ XÐ-ˆ
ØŒ9ð 	*˜œ¨Ò/Ð/à+ˆHˆHõ  # 8™}œ}°Ò1ÐC¸°^ÐØð *à" Lðç’#�h Ñ)Ô)ð õ &Ø”ØØ!ð
ñ 
ô 
ð 	
r.   )rx  r   r   rÛ   )
r3   r¿   rÀ   rí   r   r   rv  re   r5   rt   )rr  rè   rM   ÚschemaÚcpp_argsr}  r|  s   `     @r,   Údispatch_lambda_argsr€  `  s±   øø€ õ �"Õ/Ñ0Ô0ð ØÔ%ˆˆà”ˆõ Œ}ØÔ"ØØØØÔ1ðñ ô €Hð @Ð?¨&Ô*:Ô*>Ð?Ñ?Ô?€Hð
ð 
ð 
ð 
ð 
ð 
ð 
õ, •Ð(¨(Ñ3Ô3Ñ4Ô4Ð4r.   >   ú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>rN   Úvoidrõ   rô   rz  c                óê   — t          d„ | j        j        D ¦   «         ¦  «        }t          j        |d¬¦  «                             ¦   «         }|t          vrt          | j        j        › d|› �¦  «        ‚|S )Nc              3  óL   K  — | ]}t          |j        |j        d ¦  «        V — Œ d S r   )r   r   rH   r(  s     r,   r-   z-dispatch_lambda_return_str.<locals>.<genexpr>À  sC   è è € ð 'ð 'Ø)*�ˆqŒv�q”v˜tÑ$Ô$ð'ð 'ð 'ð 'ð 'ð 'r.   TrP   z returns unsupported type )	r5   rí   r@   r   Úreturns_typeÚcpp_typeÚSUPPORTED_RETURN_TYPESr…   r   )rè   Úreturns_without_annotationÚ
return_strs      r,   Údispatch_lambda_return_strrœ  ¬  sŠ   € õ( "'ð 'ð 'Ø./¬f¬nð'ñ 'ô 'ñ "ô "Ðõ Ô!Ð"<ÀTÐJÑJÔJ×SÒSÑUÔU€JØÕ/Ð/Ð/Ý˜aœfœkÐQÐQÀZÐQÐQÑRÔRÐRØÐr.   c                óv  — | j                              ¦   «         }t          j        | j         |¬¦  «        }t          j        | j        v rd|› �S t          j        | j        v rDt          | ¦  «        s)| 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   r   r   rL   ÚvariantsrÌ   rï   rÏ   rs   r…   )rè   rM   r   Ú	namespaces       r,   Úcpp_dispatch_targetr¤  É  s¾   € ØŒV×ÒÑ Ô €FÝŒ8�A”F¨FÐ3Ñ3Ô3€DÝ„~˜œÐ#Ð#Ø�tˆ~ˆ~ÐÝÔ˜1œ:Ð%Ð%Ý˜aÑ Ô ð 	 A¤F¤KÔ$4Ô$9×$BÒ$BÀ7Ñ$KÔ$Kð 	ØˆIˆIàˆIØÐ%Ð%˜tÐ%Ð%Ð%Ý
ÐSÈ1Ì6ÐSÐSÑ
TÔ
TÐTr.   )Úpython_signaturer¥  úPythonSignature | NonerÁ   c               ód  ‡ — t          ‰ d¬¦  «                             ¦   «         }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  ó$   K  — | ]}|j         V — Œd S r   r  r‚   s     r,   r-   z%cpp_dispatch_exprs.<locals>.<genexpr>á  s$   è è € Ð/Ð/ �a”fÐ/Ð/Ð/Ð/Ð/Ð/r.   c                óB   •— | dk    p‰j                              ¦   «         S )Nre   )rí   Ú	is_out_fn)Únrè   s    €r,   r  z$cpp_dispatch_exprs.<locals>.<lambda>æ  s   ø€ ˜!˜uš*Ð:¨¬×(8Ò(8Ñ(:Ô(:€ r.   r'   )rë   r   r3   r¿   r5   rA  rÂ   r   rL   r¢  Ú__ne__)rè   r¥  r  ræ   s   `   r,   Úcpp_dispatch_exprsr­  ×  s¹   ø€ õ
 #1°¸5Ð"AÑ"AÔ"A×"KÒ"KÑ"MÔ"M€Hà€EÝÐ&Õ(AÑBÔBð 

åÐ/Ð/ hÐ/Ñ/Ô/Ñ/Ô/ˆˆõ ÝØ:Ð:Ð:Ð:Ø Ô6ñô ñ
ô 
ˆõ „~˜œÐ#Ð#Ý•f˜Vœ]¨EÑ2Ô2Ñ3Ô3ˆà€Lr.   rP   rI   rJ   c               óØ  — |d u}|r$t          | ¦  «        dvrt          d| › d�¦  «        ‚t          | t          ¦  «        �rO| j        t
          j        t
          j        t
          j        t
          j	        fv r| j        j         
                    ¦   «         S | j        t
          j        k    r|rdndS | j        t
          j        k    r|rdndS | j        t
          j        k    rdS | j        t
          j        k    rdS | j        t
          j        k    r|rd	ndS | j        t
          j        k    r|rd
ndS | j        t
          j        k    rdS | j        t
          j         k    rdS | j        t
          j        k    r|rdndS | j        t
          j        k    rdS �nIt          | t(          ¦  «        rmt          | j        ¦  «        dk    rdS t          | j        ¦  «        dk    rdS |s|dv rt-          | j        d d |¬¦  «        dz   S t-          | j        |||¬¦  «        S t          | t.          ¦  «        r²t          | j        ¦  «        dk    r| j        �d| j        › d�ndS t          | j        ¦  «        dk    rdS t          | j        ¦  «        dk    rdS t          | j        ¦  «        dk    rd S t          | j        ¦  «        d!k    r|rd"ndS t          | j        ¦  «        d#k    rd$S t          d| › d%�¦  «        ‚)&N)úScalarType?r  r  úDevice?r  úLayout?rN   úbool?ztype 'z+' does not supported unpacking with defaultÚscalartypeWithDefaultÚ
scalartypeÚdeviceWithDefaultr6  ÚtoInt64ÚtoSymIntÚtoBoolWithDefaultÚtoBoolÚtoDoubleÚ
stringViewÚlayoutWithDefaultr5  ÚmemoryformatrQ   ÚoptionalTensorr  Ú	generator)NrT   rV   rW   rP   ÚOptionalztensorlist_n<r÷   Ú
tensorlistrþ   Úlist_of_optional_tensorsrq   Úintlistr   Ú
doublelistr´   Ú
symintlistrü   Ú
scalarlistz%' is not supported by PythonArgParser)r   r…   r3   r   r   r   rQ   r	  r  rü   Úlowerr  r  r  rq   r´   rN   r   r  r  r   rp   Úarg_parser_unpack_methodr   r‡   )rò   rI   rJ   rM   Úhas_default_inits        r,   rÈ  rÈ  ÿ  s0  € ð $¨4Ð/ÐØð 
T�C ™FœFð 	+ð 	ð 	õ ÐR AÐRÐRÐRÑSÔSÐSå�!•XÑÔñ B ØŒ6ÝŒMÝŒMÝŒNÝŒMð	
ð 
ð 
ð ”6”;×$Ò$Ñ&Ô&Ð&ØŒV•vÔ(Ò(Ð(Ø.>ÐPÐ*Ð*ÀLÐPØŒV•v”}Ò$Ð$Ø*:ÐHÐ&Ð&ÀÐHØŒV•vÔ)Ò)Ð)Ø�9ØŒV•v”zÒ!Ð!Ø�9ØŒV•v”}Ò$Ð$Ø!'Ð6�:�:¨YÐ6ØŒV•v”{Ò"Ð"Ø*:ÐHÐ&Ð&ÀÐHØŒV•v”|Ò#Ð#Ø�:ØŒV•v”zÒ!Ð!Ø�<ØŒV•v”}Ò$Ð$Ø*:ÐHÐ&Ð&ÀÐHØŒV•vÔ*Ò*Ð*Ø!�>ñ +õ 
�A•|Ñ	$Ô	$ð $ ÝˆqŒv‰;Œ;˜(Ò"Ð"Ø#Ð#Ý�”‰[Œ[˜KÒ'Ð'Ø�;Ø!ð 	 gð 2
ð '
ð '
õ )¨¬°°tÀFÐKÑKÔKÈjÑXðõ
 ,Ø”˜ °fðñ ô ð õ 
�A•xÑ	 Ô	 ð  ÝˆqŒv‰;Œ;˜(Ò"Ð"à01´Ð0BÐ, 1¤6Ð,Ð,Ð,Ð,ÈÐTÝ�”‰[Œ[˜IÒ%Ð%Ø-Ð-Ý�”‰[Œ[˜EÒ!Ð!à�9Ý�”‰[Œ[˜GÒ#Ð#Ø�<Ý�”‰[Œ[˜HÒ$Ð$à#)Ð8�<�<¨yÐ8Ý�”‰[Œ[˜HÒ$Ð$Ø�<Ý
ÐH ÐHÐHÐHÑ
IÔ
IÐIr.   Ú	arg_indexrq   c               óº   — |j         d u}t          |j        |j        |j         |¬¦  «        }|r
d|j         › �nd}d|› d| › |› d�}t	          |j        || |¬¦  «        S )N)rò   rI   rJ   rM   r"   r    z_r.r!   r#   )r   rß   rà   rá   )rJ   rÈ  rH   rI   rÞ   r   )rÊ  rƒ   rM   Úhas_defaultÚunpack_methodrI   rß   s          r,   Úarg_parser_output_exprrÎ  W  s‘   € ð ”.¨Ð,€KÝ,Ø
Œ&˜!œ)°!´.Èðñ ô €Mð (3Ð:Ð#�1”>Ð#Ð#Ð#¸€GØ6�Ð6Ð6 Ð6¨GÐ6Ð6Ð6€Då$ØŒVØØØð	ñ ô ð r.   ú$dict[str, PythonArgParserOutputExpr]c               ó^   ‡— ˆfd„t          |                      ¦   «         ¦  «        D ¦   «         S )Nc                óJ   •— i | ]\  }}t          ||‰¬ ¦  «        }|j        |“Œ S )rP   )rÎ  r   )r*   Úirƒ   ÚerM   s       €r,   ú
<dictcomp>z+arg_parser_output_exprs.<locals>.<dictcomp>m  sE   ø€ ð ð ð áˆAˆqÝ(¨¨A°fÐ=Ñ=Ô=ˆAð 	
Œ�ðð ð r.   )Ú	enumerater   )rr  rè   rM   s     `r,   Úarg_parser_output_exprsrÖ  j  s>   ø€ ðð ð ð å˜bŸlšl™nœnÑ-Ô-ðñ ô ð r.   r¯  r°  r±  r²  )r4  r6  r5  r7  r&  c               ó¾  ‡‡— t          | ||¬¦  «        }t          | ||¬¦  «        }g }i Št          |¦  «        }|                      d¬¦  «        D ]Ñ}|j        }||j                 j        }	|r&|dk    r |                     d|	› d�g¦  «         |‰|<   ŒCt          |t          ¦  «        rtt          |j
        ¦  «        dk    r\|j                             ¦   «         rC|                     d|	› d�g¦  «         t          |j
        ¦  «        D ]\  }
}d	|
› d
�‰|j        <   ŒŒÌ|	‰|<   ŒÒ| j        rd‰d<   d„ | j        D ¦   «         Š|�rw|j                             ¦   «         rt!          |j        › d�¦  «        ‚| j        D ]˜}|j        t"          vrt!          |j        › d|j        › d�¦  «        ‚t%          |j        ¦  «        t"                               |j        ¦  «        k    r4t!          |j        › dt%          |j        ¦  «        › d|j        › d�¦  «        ‚Œ™t+          ˆfd„t"          D ¦   «         ¦  «        st!          |j        › d‰› �¦  «        ‚| j        rdnd}|                     d|d         j        › d|d         j        › d|d         j        › d|d         j        › d|d         j        › d |› �¦  «         d!‰d!<   |sú‰rød‰v rÖ|j                             ¦   «         s!t!          |j        › d"| › d#| j        › �¦  «        ‚t+          ˆfd$„d%D ¦   «         ¦  «        st!          |j        › d&�¦  «        ‚|                     d'|d(         j        › d)|d         j        › d*|d         j        › d)|d         j        › d*|d         j        › d)|d         j        › d �¦  «         d‰vrt!          |j        › d+‰› d
�¦  «        ‚t1          t3          ˆfd,„|D ¦   «         ¦  «        |¬-¦  «        S ).NrP   T)r’   r'   zauto self = ú;rh   zauto out = zout[rø   c                ó   — g | ]	}|j         ‘Œ
S r   r  r‚   s     r,   r    z)dispatch_lambda_exprs.<locals>.<listcomp>®  s   € Ð HÐ HÐ H¨A ¤Ð HÐ HÐ Hr.   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 V — Œ	d S r   r   ©r*   rƒ   Útensor_options_args_namess     €r,   r-   z(dispatch_lambda_exprs.<locals>.<genexpr>»  s)   øè è € ÐQÐQ°a�1Ð1Ð1ÐQÐQÐQÐQÐQÐQr.   z": incomplete tensor options args: z`if (!at::impl::tensor_has_dispatch(self)) {
  torch::utils::maybe_initialize_device(options);
}
z0torch::utils::maybe_initialize_device(options);
z0const auto options = TensorOptions()
    .dtype(r4  z)
    .device(r6  z)
    .layout(r5  z)
    .requires_grad(r&  z)
    .pinned_memory(r7  z);
Úoptionsz3: dtype in tensor_options_args without output arg, rY   c              3  ó    •K  — | ]}|‰v V — Œ	d S r   r   rÜ  s     €r,   r-   z(dispatch_lambda_exprs.<locals>.<genexpr>à  s)   øè è € ÐTÐT¸!�qÐ5Ð5ÐTÐTÐTÐTÐTÐTr.   )r5  r6  z,: incomplete tensor options for output checkzcheck_out_type_matches(re   r"   z,
                       zE: expected "requires_grad" in tensor_options_args absent, but found [c              3  ó2   •K  — | ]}‰|j                  V — Œd S r   r  )r*   rƒ   Úlambda_args_exprss     €r,   r-   z(dispatch_lambda_exprs.<locals>.<genexpr>ó  s+   øè è € ÐCÐC°!Ð% a¤fÔ-ÐCÐCÐCÐCÐCÐCr.   )ræ   rç   )rÖ  r€  rï   r   r   rß   r•   r3   ro   r1   r{   rí   rª  rÕ  rL   r�   r…   ÚTENSOR_OPTIONS_FIELDSr   rH   r]   r7   r–   rã   rå   r5   )rr  rè   rM   Úarg_parser_outputsÚlambda_argsrç   Úhas_toptionsrƒ   r   Úarg_parser_exprrÒ  Úout_argÚmaybe_initialize_devicerá  rÝ  s                @@r,   Údispatch_lambda_exprsré    su  øø€ õ 1°°Q¸vÐFÑFÔFÐÝ& r¨1°VÐ<Ñ<Ô<€KØ€EØ(*Ðå% aÑ(Ô(€Lð �\Š\¨dˆ\Ñ3Ô3ð 6ð 6ˆØŒvˆØ,¨Q¬VÔ4Ô9ˆàð 	6˜D FšN˜Nà�LŠLà5 ?Ð5Ð5Ð5ðñô ð ð
 '+Ð˜dÑ#Ð#å�qÕ+Ñ,Ô,ð	6å�A”I‘” Ò"Ð"Ø”× Ò Ñ"Ô"ð #ð �LŠLà4 /Ð4Ð4Ð4ðñô ð õ
 (¨¬	Ñ2Ô2ð >ð >‘
��7Ø2=¸°+°+°+Ð! '¤,Ñ/Ð/ð>ð '6Ð˜dÑ#Ð#ð 
„yð +Ø$*Ð˜&Ñ!ð !IÐ H°Ô1GÐ HÑ HÔ HÐØñ &1ØŒ6×ÒÑÔð 	LÝ !¤&ÐJÐJÐJÑKÔKÐKØÔ'ð 	ð 	ˆAØŒvÕ2Ð2Ð2Ý"Ø”vÐiÐiÀAÄFÐiÐiÐiñô ð õ �1”6‰{Œ{Õ3×7Ò7¸¼Ñ?Ô?Ò?Ð?Ý"Ø”vÐfÐfµC¸¼±K´KÐfÐfÐ]^Ô]cÐfÐfÐfñô ð ð @õ ÐQÐQÐQÐQÕ;PÐQÑQÔQÑQÔQð 	ÝØ”6ÐXÐXÐ=VÐXÐXñô ð ð ŒyðEð ð ð Eð 	 ð 	�Šðà˜wÔ'Ô,ðð ð   Ô)Ô.ðð ð   Ô)Ô.ð	ð ð
 ' Ô7Ô<ðð ð ' |Ô4Ô9ðð ð ðð ñ
	
ô 
	
ð 
	
ð (1Ð˜)Ñ$ð ð Ð5ð ØÐ/Ð/Ð/à”6×#Ò#Ñ%Ô%ð Ý"Ø”vÐeÐeÐRTÐeÐeÐWYÔWcÐeÐeñô ð õ ÐTÐTÐTÐTÐ?SÐTÑTÔTÑTÔTð Ý"Ø”vÐKÐKÐKñô ð ð �LŠLðØ*¨5Ô1Ô6ðð Ø:LÈWÔ:UÔ:Zðð à*¨7Ô3Ô@ðð àDVÐW_ÔD`ÔDeðð ð +¨8Ô4Ô9ðð ð >PÐPXÔ=YÔ=fðð ð ñô ð ð Ð";Ð;Ð;ÝØ”6Ð|Ð|Ð`yÐ|Ð|Ð|ñô ð õ 'ÝÐCÐCÐCÐC°{ÐCÑCÔCÑCÔCØðñ ô ð r.   )r   N)r   r   r   r   r   r   r   r   )rè   r   rL   rN   r   r   )rè   r   r   rN   )rò   r   rñ   rN   rM   rN   r   r   )rò   r   r   r  )rƒ   r   r   rG   )rè   r   rL   rN   r  rN   r   r‹   )
rí   r   r  r   rL   rN   r  rN   r   r‹   )r@   r?   r   rJ  )r^   r   r   r   )rò   r   r   r   )rË   r‹   r   rb  )rË   r‹   r   r   )T)rr  r‹   rè   r   rM   rN   r   rs  )rè   r   r   r   )rè   r   r¥  r¦  r   rÁ   )
rò   r   rI   r   rJ   r   rM   rN   r   r   )rÊ  rq   rƒ   rG   rM   rN   r   rÞ   )rr  r‹   rè   r   rM   rN   r   rÏ  )rr  r‹   rè   r   rM   rN   r   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   r;   r>   rG   ro   r‹   r¿   rÊ   rÎ   rÛ   rÞ   rå   rë   rï   r[   r  rá   rË   r  rO  rn   rm   r`  ro  r®   r€  r™  rœ  r¤  r­  rÈ  rÎ  rÖ  râ  ré  r   r.   r,   ú<module>rò     s¤  ðØ "Ð "Ð "Ð "Ð "Ð "à !Ð !Ð !Ð !Ð !Ð !Ø  Ð  Ð  Ð  Ð  Ð  à Ð Ð Ð Ð Ð Ø GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GØ *Ð *Ð *Ð *Ð *Ð *ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð 3Ø2Ð2Ð2Ð2Ð2Ð2Ð2Ð2ðL IMð?ð ?ð ?ð ?ð ?ð0 €�$ÐÑÔð ð  ð  ð  ð  ñ  ô  ñ Ôð ð €�$ÐÑÔðY)ð Y)ð Y)ð Y)ð Y)ñ Y)ô Y)ñ ÔðY)ðx €�$ÐÑÔð!Cð !Cð !Cð !Cð !C˜ñ !Cô !Cñ Ôð!CðH €�$ÐÑÔðuQð uQð uQð uQð uQñ uQô uQñ ÔðuQðt €�$ÐÑÔð'ð 'ð 'ð 'ð ' ñ 'ô 'ñ Ôð'ðf €�$ÐÑÔðð ð ð ð ñ ô ñ Ôðð €�$ÐÑÔð'
ð '
ð '
ð '
ð '
ñ '
ô '
ñ Ôð'
ð^ €�$ÐÑÔðð ð ð ð ñ ô ñ Ôðð €�$ÐÑÔð*ð *ð *ð *ð *ñ *ô *ñ Ôð*ð0 €�$ÐÑÔðð ð ð ð ñ ô ñ Ôðð2 9>ð Nð Nð Nð Nð Nð Nð7ð 7ð 7ð 7ð %*¸$ð:7ð :7ð :7ð :7ð :7ð :7ðzð ð ð ðð ð ð ð  */¸Eðð ð ð ð ð ð ØðFð Fð Fð Fð Fð Fð`.ð .ð .ð .ð&Eð Eð Eð Eð
Cð Cð Cð CðL$ð $ð $ð $ð*4ð 4ð 4ð 4ðn
ð 
ð 
ð 
ðl <@ð)5ð )5ð )5ð )5ð )5ð^ð ð Ð ð:ð ð ð ð:Uð Uð Uð Uð" 04ðð ð ð ð ð ðR OSðSJð SJð SJð SJð SJð SJðr :>ðð ð ð ð ð ð( ?Cðð ð ð ð ð ð ØØØØðð Ð ð ?Cðvð vð vð vð vð vð vð vr.   