ó
    IC˜jx  ã                   ó”   • S SK Jr  S SKJrJrJrJrJrJrJ	r	J
r
JrJrJr   " S S5      r " S S5      r " S S5      r " S	 S
5      rg)é    )ÚAny)Ú
AnnotationÚArgumentÚ	ArgumentsÚBaseOperatorNameÚBaseTyÚBaseTypeÚCustomClassTypeÚFunctionSchemaÚListTypeÚOperatorNameÚReturnc                   ó    • \ rS rSr\\R                  \\R                  \\R                  \\R                  0r	\
S\S\\-  \-  4S j5       rSrg)ÚTypeGené   ÚobjÚreturnc                 ó  • SS K n[        XR                  R                  5      (       a  [	        [
        R                  5      $ [        XR                  5      (       a  [	        [
        R                  5      $ [        XR                  5      (       a  [	        [
        R                  5      $ [        XR                  5      (       a  [	        [
        R                  5      $ [        XR                  5      (       a'  [        U R                  5       R                  5       5      $ [        U [        [        45      (       a~  [        U 5      S:X  a  [!        S5      eU  Vs/ s H  n["        R%                  U5      PM     nn[        ['        U5      5      S:”  a  [)        SU S35      e[+        US   [        U 5      5      $ [-        U 5      nU["        R.                  ;  a  [)        SU 35      e[	        ["        R.                  U   5      $ s  snf )Nr   zlist/tuple must be non-emptyé   zFCannot generate schema for a sequence of args of heterogeneous types: zc. Consider unpacking the argument and give proper names to them if possible instead of using *args.zunsupported type )ÚtorchÚ
isinstanceÚfxÚGraphModuler	   r   ÚTensorÚSymIntÚSymBoolÚScriptObjectr
   Ú_typeÚnameÚlistÚtupleÚlenÚAssertionErrorr   Úfrom_exampleÚsetÚRuntimeErrorr   ÚtypeÚconvert_to_base_ty)r   r   ÚxÚall_base_tysÚtps        Ú§C:\Users\johnn\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_qbz5n2kfra8p0\LocalCache\local-packages\Python313\site-packages\torchgen/gen_schema_utils.pyr$   ÚTypeGen.from_example   s‡  € ãä�cŸ8™8×/Ñ/×0Ñ0ÜœF×.Ñ.Ó/Ð/Ü˜Ÿ\™\×*Ñ*ÜœFŸM™MÓ*Ð*Ü˜Ÿ\™\×*Ñ*ÜœFŸM™MÓ*Ð*Ü˜Ÿ]™]×+Ñ+ÜœFŸN™NÓ+Ð+Ü˜×/Ñ/×0Ñ0Ü" 3§9¡9£;×#3Ñ#3Ó#5Ó6Ð6Ü˜œd¤E˜]×+Ñ+Ü�3‹x˜1‹}Ü$Ð%CÓDÐDÙ=@ÓAºS¸œG×0Ñ0°Ö3¹SˆLÐAÜ”3�|Ó$Ó%¨Ó)Ü"Ø\Ð]iÐ\jð k.ð .óð ô
 ˜L¨™O¬S°«XÓ6Ð6Ü�#‹YˆØ”W×/Ñ/Ó/ÜÐ!2°2°$Ð7Ó8Ð8Üœ×2Ñ2°2Ñ6Ó7Ð7ùò Bs   ÅG>© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Úintr   ÚfloatÚstrÚboolr(   Ústaticmethodr   r	   r   r
   r$   Ú__static_attributes__r.   ó    r,   r   r      sZ   † àˆV�Z‰ZØˆv�|‰|ØˆV�Z‰ZØˆf�k‰kð	Ðð ð8˜#ð 8 (¨XÑ"5¸Ñ"Gó 8ó ó8r9   r   c            	       óD   • \ rS rSr\S\S-  S\S\S-  S\4S j5       r	Sr
g)	Ú	ReturnGené>   r   Nr   Ú
annotationr   c                 óB   • [        U [        R                  U5      U5      $ ©N)r   r   r$   )r   r   r=   s      r,   r$   ÚReturnGen.from_example?   s   € ô �dœG×0Ñ0°Ó5°zÓBÐBr9   r.   )r/   r0   r1   r2   r7   r5   r   r   r   r$   r8   r.   r9   r,   r;   r;   >   sC   † ØðCØ�D‰jðCØ"ðCØ0:¸TÑ0AðCà	óCó óCr9   r;   c                   óH   • \ rS rSr\S\S\S\S-  S\S-  S\4
S j5       r	S	r
g)
ÚArgumentGenéF   r   r   ÚdefaultNr=   r   c                 ó>   • [        U [        R                  U5      X#S9$ )N)rD   r=   )r   r   r$   )r   r   rD   r=   s       r,   r$   ÚArgumentGen.from_exampleG   s#   € ô Ø”'×&Ñ& sÓ+°Wñ
ð 	
r9   r.   )r/   r0   r1   r2   r7   r5   r   r   r   r$   r8   r.   r9   r,   rB   rB   F   sE   † Øð
Øð
Øð
Ø&)¨D¡jð
Ø>HÈ4Ñ>Oð
à	ó
ó ó
r9   rB   c            	       óV   • \ rS rSr\S\S\\\\4   S4   S\\S4   S\4S j5       r	Sr
g	)
ÚFunctionSchemaGenéP   Úop_nameÚexample_inputs.Úexample_outputsr   c           
      óH  • / nU H+  u  pEUR                  [        R                  XES S 5      5        M-     [        [	        5       S [	        U5      [	        5       S [	        5       [	        5       5      n[	        S U 5       5      n[        [        U SSS5      S5      n [        XU5      $ )Nc              3   óP   #   • U  H  n[         R                  S US 5      v •  M     g 7fr?   )r;   r$   )Ú.0Úouts     r,   Ú	<genexpr>Ú1FunctionSchemaGen.from_example.<locals>.<genexpr>^   s%   é € ð 
Ú?N¸ŒI×"Ñ" 4¨¨d×3Ð3ºùs   ‚$&FÚ )ÚappendrB   r$   r   r!   r   r   r   )rJ   rK   rL   Úargsr   ÚinpÚ	argumentsÚreturnss           r,   r$   ÚFunctionSchemaGen.from_exampleQ   s—   € ð ˆÛ'‰IˆDØ�K‰Kœ×0Ñ0°¸DÀ$ÓGÖHñ (ô Ü‹G�Tœ5 ›;¬«°´u³wÄÃó
ˆ	ô ñ 
Ù?Nó
ó 
ˆô Ô/°¸ÀÀuÓMÈrÓRˆÜ˜g°'Ó:Ð:r9   r.   N)r/   r0   r1   r2   r7   r5   r!   r   r   r$   r8   r.   r9   r,   rH   rH   P   sR   † Øð;Øð;à˜e C¨ H™o¨sÐ2Ñ3ð;ð ˜s C˜x™ð;ð 
ó	;ó ó;r9   rH   N)Útypingr   Útorchgen.modelr   r   r   r   r   r	   r
   r   r   r   r   r   r;   rB   rH   r.   r9   r,   Ú<module>r\      sG   ðÝ ÷÷ ÷ ñ ÷($8ñ $8÷NCñ C÷
ñ 
÷;ò ;r9   