§
    Ó˜ºh4’  ã                  ó*  — d dl mZ d dlZd dlZd dlZd dlmZ d dlZd dlm	c m
Z d dlZd dlm	Z	 d dlmZmZmZmZmZ d dlmZ d dlmZmZ erd dlmZ g d	¢Z ej        ej        d
¬¦  «        Z ed¦  «        d·d„¦   «         Z ej        ddd¦  «        d·d„¦   «         Z  ed¦  «        d·d„¦   «         Z! ed¦  «         ej        dddd¦  «        d¸d·d„¦   «         ¦   «         Z" ed¦  «         ej        dddddd¦  «        d¸d·d„¦   «         ¦   «         Z#d¹d'„Z$dºd/„Z%d»d4„Z& ed5 ej'        d6d7d8¬9¦  «        g¬:¦  «         ed; ej'        d<d=d8¬9¦  «        g¬:¦  «         ed> ej'        d?d@d8¬9¦  «        g¬:¦  «         edA ej'        dBd7dC¬9¦  «        g¬:¦  «         edD ej'        dEd=dC¬9¦  «        g¬:¦  «         edF ej'        dGd@dC¬9¦  «        g¬:¦  «        d¼dK„¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z(d½dM„Z) edN ej'        dOd7¦  «        g¬:¦  «         edP ej'        dQd=¦  «        g¬:¦  «         edR ej'        dSd@¦  «        g¬:¦  «        dT„ ¦   «         ¦   «         ¦   «         Z* edU ej'        dVd@dW¦  «        g¬:¦  «         edX ej'        dYdZdW¦  «        g¬:¦  «         ed[ ej'        d\d]dW¦  «        g¬:¦  «         ed^ ej'        d_d@d`¦  «        g¬:¦  «         eda ej'        dbdZd`¦  «        g¬:¦  «         edc ej'        ddd]d`¦  «        g¬:¦  «        de„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z+ edf¦  «        d·dg„¦   «         Z,	 d¸d¾dp„Z- edq¦  «        d·dr„¦   «         Z. eds¦  «         ej        ddt¦  «        d·du„¦   «         ¦   «         Z/ edv¦  «        d·dw„¦   «         Z0 edx¦  «         ej        ddddddddd¦	  «	        d·dy„¦   «         ¦   «         Z1 edz¦  «         ej        ddddd¦  «        	 	 d¿d·d}„¦   «         ¦   «         Z2 ed~¦  «        d·d„¦   «         Z3 ed€¦  «        d·d�„¦   «         Z4 ed‚¦  «        d·dƒ„¦   «         Z5 ed„¦  «        d·d…„¦   «         Z6 ed†¦  «         ej        dd‡d‡d‡¦  «        d·dˆ„¦   «         ¦   «         Z7 ed‰¦  «        d·dŠ„¦   «         Z8 ed‹¦  «        d·dŒ„¦   «         Z9 ed�¦  «        d·dŽ„¦   «         Z: ed�¦  «        d·d�„¦   «         Z; ed‘¦  «        d·d’„¦   «         Z< ed“¦  «        d·d”„¦   «         Z= ed•¦  «        d·d–„¦   «         Z> ed—¦  «        d·d˜„¦   «         Z? ed™¦  «        d·dš„¦   «         Z@ ed›¦  «        d·dœ„¦   «         ZA ed�¦  «         ej        dddd‡dd¦  «        d·dž„¦   «         ¦   «         ZB edŸ¦  «        d·d „¦   «         ZC ed¡¦  «        d·d¢„¦   «         ZD ed£¦  «        d·d¤„¦   «         ZE ed¥¦  «        d·d¦„¦   «         ZF ed§¦  «        d·d¨„¦   «         ZG ed©¦  «        d·dª„¦   «         ZH ed«¦  «        d·d¬„¦   «         ZI ed­¦  «        d·d®„¦   «         ZJ ed¯¦  «        d·d°„¦   «         ZK ed±¦  «         ej        dddd¦  «        dÀd¶„¦   «         ¦   «         ZLdS )Áé    )ÚannotationsN)ÚTYPE_CHECKING)Ú_C)Ú
_constantsÚ_type_utilsÚerrorsÚsymbolic_helperÚsymbolic_opset9)ÚGLOBALS)Ú	jit_utilsÚregistration)ÚSequence)"Ú
dequantizeÚdivÚembedding_bagÚfake_quantize_per_tensor_affineÚflipÚfmodÚisfiniteÚisinfÚ
nan_to_numÚquantize_per_tensorÚquantized_add_reluÚquantized_addÚquantized_catÚquantized_conv1d_reluÚquantized_conv2d_reluÚquantized_conv3d_reluÚquantized_conv1dÚquantized_conv2dÚquantized_conv3dÚquantized_conv_transpose1dÚquantized_conv_transpose2dÚquantized_conv_transpose3dÚquantized_group_normÚquantized_hardswishÚquantized_instance_normÚquantized_layer_normÚquantized_leaky_reluÚquantized_linearÚquantized_linear_reluÚquantized_mulÚquantized_sigmoidÚsliceÚsortÚtopké
   )Úopsetz	aten::divÚgújit_utils.GraphContextc                ór   — t          |¦  «        dk    rt          j        | ||¦  «        S t          | ||g|¢R Ž S ©Nr   )ÚlenÚopset9Útrue_divideÚ_div_rounding_mode)r3   ÚselfÚotherÚargss       úc/var/www/html/services/rag-service/venv/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.pyr   r   P   s@   € å
ˆ4�y„y�A‚~€~ÝÔ! ! T¨5Ñ1Ô1Ð1å! ! T¨5Ð8°4Ð8Ð8Ð8Ð8ó    ÚvÚsc                ó^   — |dk    rt          | ||¦  «        S t          j        | |||¦  «        S )NÚfloor)Ú_floor_divider8   r:   )r3   r;   r<   Úrounding_modes       r>   r:   r:   X   s6   € à˜ÒÐÝ˜Q  eÑ,Ô,Ð,åÔ(¨¨D°%¸ÑGÔGÐGr?   zaten::_floor_dividec                ó>  — t          j        |¦  «        st          j        |¦  «        r,t          j        | ||¦  «        }|                      d|¦  «        S |                      d||¦  «        }|                      dt          j        dt
          j        ¬¦  «        ¬¦  «        }|                      d|                      d||¦  «        |                      d||¦  «        ¦  «        }|                      d	||d¬
¦  «        }|                      d||                      d|                      d||¦  «        ¦  «        ¦  «        }|                      dt          j        dt
          j        ¬¦  «        ¬¦  «        }	|                      d||	¦  «        }
|                      d||
|¦  «        S )NÚFloorÚDivÚConstantr   ©Údtype©Úvalue_tÚXorÚLessÚMod©Úfmod_iÚAndÚNotÚEqualé   ÚSubÚWhere)r	   Ú_is_fpr8   r9   ÚopÚtorchÚtensorÚint64)r3   r;   r<   Úoutr   ÚzeroÚnegativeÚmodÚ
fixup_maskÚoneÚfixups              r>   rD   rD   `   sb  € åÔ˜dÑ#Ô#ð 5¥Ô'=¸eÑ'DÔ'Dð 5ÝÔ   D¨%Ñ0Ô0ˆØ�tŠt�G˜SÑ!Ô!Ð!ð �dŠd�5˜$ Ñ&Ô&ˆà�tŠt�J­¬°Q½e¼kÐ(JÑ(JÔ(JˆtÑKÔKˆØ—4’4˜˜qŸtšt F¨D°$Ñ7Ô7¸¿º¸fÀeÈTÑ9RÔ9RÑSÔSˆð �dŠd�5˜$ ¨aˆdÑ0Ô0ˆØ—T’T˜% ¨1¯4ª4°°q·t²t¸GÀSÈ$Ñ7OÔ7OÑ+PÔ+PÑQÔQˆ
à�dŠd�:¥u¤|°A½U¼[Ð'IÑ'IÔ'IˆdÑJÔJˆØ—’�U˜C Ñ%Ô%ˆØ�tŠt�G˜Z¨°Ñ4Ô4Ð4r?   z
aten::sortÚiÚnonec                ó4   — t          j        | ||||¬¦  «        S )N)Ú	decendingr^   )r	   Ú_sort_helper)r3   r;   Údimrh   r^   s        r>   r/   r/   u   s    € õ Ô'¨¨4°À	ÈsÐSÑSÔSÐSr?   z
aten::topkc           	     ó8   — t          j        | ||||||¬¦  «        S )N)ÚlargestÚsortedr^   )r	   Ú_topk_helper)r3   r;   Úkrj   rl   rm   r^   s          r>   r0   r0   {   s-   € õ Ô'Ø	ˆ4��C °¸Sðñ ô ð r?   r;   ú_C.ValueÚkernel_shapeúSequence[int]ÚstridesÚpadsÚ	dilationsÚ	ceil_modeÚboolÚunbatched_rankÚintÚreturnc                óÞ  — |                       d|                       d|¦  «        ¦  «        }||k    rK|                       d||                       dt          j        dgt          j        ¬¦  «        ¬¦  «        ¦  «        }|                       d|d	|||||¬
¦  «        \  }	}
||k    rK|                       d|	|                       dt          j        dgt          j        ¬¦  «        ¬¦  «        ¦  «        }	|	S )NÚSizeÚShapeÚ	UnsqueezerI   r   rJ   rL   ÚMaxPoolé   ©ÚoutputsÚceil_mode_iÚdilations_iÚkernel_shape_iÚpads_iÚ	strides_iÚSqueeze©rZ   r[   r\   r]   )r3   r;   rq   rs   rt   ru   rv   rx   Ú	self_rankÚpool_resultÚ_s              r>   Ú_aten_max_pool_onnxr�   ƒ   sù   € ð —’�V˜QŸTšT '¨4Ñ0Ô0Ñ1Ô1€IØ�NÒ"Ð"Ø�tŠtØØØ�DŠD�¥U¤\°1°#½U¼[Ð%IÑ%IÔ%IˆDÑJÔJñ
ô 
ˆð —T’TØØØØØØ#ØØð ñ 	ô 	�N€K�ð �NÒ"Ð"Ø—d’dØØØ�DŠD�¥U¤\°1°#½U¼[Ð%IÑ%IÔ%IˆDÑJÔJñ
ô 
ˆð Ðr?   Úexpand_sizeÚkernel_sizeúSequence[int] | intÚstrideÚpaddingÚdilationúAtuple[Sequence[int], Sequence[int], Sequence[int], Sequence[int]]c                ó¤  — t          |t          ¦  «        r|g| z  }t          |t          ¦  «        r|g| z  }n|}t          |t          ¦  «        r
|g| z  dz  }nPt          |¦  «        dk    r	|| z  dz  }n4t          |¦  «        dk    r|dz  }nt          |¦  «        dk    r|dz  }n|}t          |t          ¦  «        r|g| z  }n|s|}n|}||||fS )ú:Adjust attributes of avg_pool to match ONNX specification.r€   rV   é   ©Ú
isinstancery   r7   )rŽ   r�   r‘   r’   r“   rq   rt   rs   s           r>   Ú_adjust_attributes_of_max_poolrš   «   s  € õ �(�CÑ Ô ð ,Ø�: Ñ+ˆå�+�sÑ#Ô#ð #Ø#�} {Ñ2ˆˆà"ˆå�'�3ÑÔð Øˆy˜;Ñ&¨Ñ*ˆˆÝ	ˆW‰Œ˜Ò	Ð	Ø˜Ñ$ qÑ(ˆˆÝ	ˆW‰Œ˜Ò	Ð	à˜‰{ˆˆÝ	ˆW‰Œ˜Ò	Ð	à˜‰{ˆˆð
 ˆå�&�#ÑÔð Ø�(˜[Ñ(ˆˆØð Øˆˆàˆà˜' 4¨Ð2Ð2r?   Ú
n_dims_oneÚn_dims_zeroÚn_dims_axesútuple[_C.Value, Sequence[int]]c                óº  — |                       d|                       d|¦  «        ¦  «        }||k    rK|                       d||                       dt          j        dgt          j        ¬¦  «        ¬¦  «        ¦  «        }|                       d|d	|||||¬
¦  «        \  }}|                       d|d	|||¬¦  «        \  }}|                       dt          j        |¦  «        ¬¦  «        }|                       dt          j        |	¦  «        ¬¦  «        }|                       dt          j        |
¦  «        ¬¦  «        }|                       d||||¦  «        }|                       d||¦  «        }||k    rn|                       d|t          j        dgt          j        ¬¦  «        ¬¦  «        }|                       d|t          j        dgt          j        ¬¦  «        ¬¦  «        }||fS )Nr|   r}   r~   rI   r   rJ   rL   r   r€   r�   )r‚   r„   r…   r‡   ÚSlicerW   rˆ   r‰   )r3   r;   rq   rs   rt   ru   rv   rx   r›   rœ   r�   rŠ   r‹   ÚindicesrŒ   Úflatten_indicesÚendsÚstartsÚaxesÚdeltas                       r>   Ú _aten_max_pool_with_indices_onnxr§   Ö   sØ  € ð —’�V˜QŸTšT '¨4Ñ0Ô0Ñ1Ô1€IØ�NÒ"Ð"Ø�tŠtØØØ�DŠD�¥U¤\°1°#½U¼[Ð%IÑ%IÔ%IˆDÑJÔJñ
ô 
ˆð Ÿ4š4ØØØØØØ#ØØð  ñ 	ô 	Ñ€K�ð ŸšØØØØØ!Øð ñ ô Ñ€A€ð �4Š4�
¥E¤L°Ñ$<Ô$<ˆ4Ñ=Ô=€DØ�TŠT�*¥e¤l°;Ñ&?Ô&?ˆTÑ@Ô@€FØ�4Š4�
¥E¤L°Ñ$=Ô$=ˆ4Ñ>Ô>€Dà�DŠD�˜/¨6°4¸Ñ>Ô>€EØ�dŠd�5˜' 5Ñ)Ô)€Gà�NÒ"Ð"Ø—d’dØ�{­E¬L¸!¸ÅEÄKÐ,PÑ,PÔ,Pð ñ 
ô 
ˆð —$’$�y 'µ5´<ÀÀÍ5Ì;Ð3WÑ3WÔ3W�$ÑXÔXˆà˜Ð!Ð!r?   zaten::max_pool1dÚ
max_pool1drV   F)Úreturn_indices)Údecoratezaten::max_pool2dÚ
max_pool2dr€   zaten::max_pool3dÚ
max_pool3dr—   zaten::max_pool1d_with_indicesÚmax_pool1d_with_indicesTzaten::max_pool2d_with_indicesÚmax_pool2d_with_indiceszaten::max_pool3d_with_indicesÚmax_pool3d_with_indicesÚnameÚstrr©   c           	     ó”   ‡‡— t          j        dddddd¦  «        t          j        dddddd¦  «        dˆˆfd„¦   «         ¦   «         }|S )NTFr@   Úisre   r3   r4   Úinputrp   r�   rr   r‘   r’   úint | Sequence[int]r“   rv   rw   c                óà   •— t          ‰||||¦  «        \  }}}	}
‰r;t          | ||||	|
|‰dz   dg‰z  dg‰z  d„ t          ‰¦  «        D ¦   «         ¦  «        S t          | ||||	|
|‰dz   ¦  «        S )NrV   r   c                ó   — g | ]}d |z   ‘ŒS )r€   © )Ú.0re   s     r>   ú
<listcomp>z2_max_pool.<locals>.symbolic_fn.<locals>.<listcomp>T  s   € Ð4Ð4Ð4˜A�!�a‘%Ð4Ð4Ð4r?   )rš   r§   Úranger�   )r3   r´   r�   r‘   r’   r“   rv   rq   rs   rt   ru   rŽ   r©   s              €€r>   Úsymbolic_fnz_max_pool.<locals>.symbolic_fn9  s¾   ø€ õ 2PØ˜ f¨g°xñ2
ô 2
Ñ.ˆ�g˜t Yð ð 	Ý3ØØØØØØØØ˜a‘Ø��{Ñ"Ø��{Ñ"Ø4Ð4¥ {Ñ!3Ô!3Ð4Ñ4Ô4ñô ð õ 'ØØØØØØØØ˜a‘ñ	ô 	ð 	r?   )r3   r4   r´   rp   r�   rr   r‘   rr   r’   rµ   r“   rr   rv   rw   ©r	   Úquantized_argsÚ
parse_args)r°   rŽ   r©   r¼   s    `` r>   Ú	_max_poolrÀ     su   øø€ õV Ô# D¨%°¸¸uÀeÑLÔLÝÔ  T¨4°°t¸SÑAÔAð%ð %ð %ð %ð %ð %ñ BÔAñ MÔLð%ðN Ðr?   ú2tuple[Sequence[int], Sequence[int], Sequence[int]]c                ó@  — t          |t          ¦  «        r|g| z  }n|}t          |t          ¦  «        r
|g| z  dz  }n:t          |¦  «        dk    r	|| z  dz  }nt          |¦  «        dk    r|| z  }n|dz  }t          |t          ¦  «        r|g| z  }n|s|}n|}|||fS )r–   r€   rV   r˜   )rŽ   r�   r‘   r’   rq   rt   rs   s          r>   Ú_adjust_attributes_of_avg_poolrÃ   f  s×   € õ �+�sÑ#Ô#ð #Ø#�} {Ñ2ˆˆà"ˆå�'�3ÑÔð Øˆy˜;Ñ&¨Ñ*ˆˆÝ	ˆW‰Œ˜Ò	Ð	Ø˜Ñ$ qÑ(ˆˆÝ	ˆW‰Œ˜Ò	Ð	Ø˜Ñ$ˆˆà˜‰{ˆå�&�#ÑÔð Ø�(˜[Ñ(ˆˆØð Øˆˆàˆà˜' 4Ð(Ð(r?   zaten::avg_pool1dÚ
avg_pool1dzaten::avg_pool2dÚ
avg_pool2dzaten::avg_pool3dÚ
avg_pool3dc           
     ó˜   ‡— t          j        ddddddd¦  «        t          j        ddddddd¦  «        	 ddˆfd„¦   «         ¦   «         }|S )NTFr@   r³   re   rf   r´   rp   r�   rr   r‘   r’   rµ   rv   ry   Úcount_include_padc           	     ól   •— t          ‰|||¦  «        \  }}	}
|                      d|||||
|	¬¦  «        }|S )NÚAveragePool)rƒ   Úcount_include_pad_ir…   r†   r‡   )rÃ   rZ   )r3   r´   r�   r‘   r’   rv   rÈ   Údivisor_overriderq   rs   rt   ÚresultrŽ   s               €r>   r¼   z_avg_pool.<locals>.symbolic_fn“  s[   ø€ õ 'EØ˜ f¨gñ'
ô '
Ñ#ˆ�g˜tð —’ØØØ!Ø 1Ø'ØØð ñ 
ô 
ˆð ˆr?   ©N)r´   rp   r�   rr   r‘   rr   r’   rµ   rv   ry   rÈ   ry   r½   )r°   rŽ   r¼   s    ` r>   Ú	_avg_poolrÏ   †  s{   ø€ õ Ô# D¨%°¸¸uÀeÈUÑSÔSÝÔ  T¨4°°s¸CÀÑHÔHð ðð ð ð ð ð ñ IÔHñ TÔSðð4 Ðr?   zaten::upsample_nearest1dÚupsample_nearest1dÚnearestzaten::upsample_nearest2dÚupsample_nearest2dé   zaten::upsample_nearest3dÚupsample_nearest3dé   zaten::upsample_linear1dÚupsample_linear1dÚlinearzaten::upsample_bilinear2dÚupsample_bilinear2dzaten::upsample_trilinear3dÚupsample_trilinear3dc                óR   ‡ ‡‡— t          j        ddd¦  «        ˆˆˆ fd„¦   «         }|S )NTFc                ó  •— t          j        | ‰|¦  «        \  }}t          j        ‰¦  «         t          j        |¦  «        }|rt          j        ‰d|¦  «        S |€t          j        | ||‰¦  «        }|                      d||‰¬¦  «        S )Nzalign_corners == TrueÚResize©Úmode_s)r	   Ú_get_interpolate_attributesÚ_interpolate_warningÚ_maybe_get_scalarÚ_unimplementedÚ_interpolate_size_to_scalesrZ   )	r3   r´   Úoutput_sizer=   ÚscalesÚalign_cornersrj   Úinterpolate_moder°   s	         €€€r>   r¼   z!_interpolate.<locals>.symbolic_fnË  s£   ø€ å /Ô KØÐ ñ!
ô !
Ñˆ�õ 	Ô,Ð-=Ñ>Ô>Ð>Ý'Ô9¸-ÑHÔHˆØð 	XÝ"Ô1°$Ð8OÐQVÑWÔWÐWØˆ>Ý$Ô@Ø�5˜+ sñô ˆFð �tŠt�H˜e VÐ4DˆtÑEÔEÐEr?   )r	   r¾   )r°   rj   rç   r¼   s   ``` r>   Ú_interpolaterè   ²  sS   øøø€ õ2 Ô# D¨%°Ñ7Ô7ðFð Fð Fð Fð Fð Fñ 8Ô7ðFð Ðr?   zaten::__interpolatec                ól   — t          j        | |||||¦  «        \  }}|                      d|||¬¦  «        S )NrÜ   rÝ   )r	   Ú _interpolate_get_scales_and_moderZ   )	r3   r´   ÚsizeÚscale_factorÚmoderæ   Úrecompute_scale_factorÚ	antialiasrå   s	            r>   Ú__interpolaterð   Ý  sC   € õ #ÔCØ	ˆ5�$˜ d¨Mñô �L€FˆDð �4Š4�˜% °ˆ4Ñ5Ô5Ð5r?   r´   útorch._C.Valuer¥   ú$list | torch.Tensor | torch._C.Valuer¤   r£   Ústepsú+list | torch.Tensor | torch._C.Value | Nonec                óx  ‡ ‡— d„ Šdˆ ˆfd„	}d„ } ||¦  «        dk    r, ||¦  «        t           j        k    r|� ||¦  «        dk    r|S  ||¦  «        } ||d¬¦  «        } ||t           j        ¬¦  «        }|€‰                      d||||¦  «        S  ||d¬¦  «        }‰                      d|||||¦  «        S )	Nc                óô   — | €dS t          | t          j        j        ¦  «        oU|                      ¦   «                              ¦   «         dk    o+t          |                      ¦   «         t          j        ¦  «        S )NTzprim::Constant)r™   r[   r   ÚValueÚnodeÚkindÚtypeÚNoneType)Úvalues    r>   Úis_none_valuez_slice.<locals>.is_none_valueö  s`   € Øˆ=Ø�4å�u�eœhœnÑ-Ô-ð 6Ø—
’
‘”×!Ò!Ñ#Ô#Ð'7Ò7ð6å˜5Ÿ:š:™<œ<­¬Ñ5Ô5ð	
r?   c                óZ  •—  ‰| ¦  «        r|�|g} t          | t          t          j        f¦  «        r)‰                     dt          j        | ¦  «        ¬¦  «        S t          j        | ¦  «        }|dk    rt          j        ‰| dg¦  «        S |dk    r| S t          j
        d|› �| ¦  «        ‚)NrI   rL   r   rV   zRank must be 0 or 1, not )r™   Úlistr[   ÚTensorrZ   r\   r	   Ú_get_tensor_rankÚ_unsqueeze_helperr   ÚSymbolicValueError)Úlist_or_valueÚdefault_valueÚrankr3   rý   s      €€r>   Úto_slice_inputz_slice.<locals>.to_slice_inputÿ  s¼   ø€ àˆ=˜Ñ'Ô'ð 	,¨MÐ,EØ*˜OˆMå�m¥d­E¬LÐ%9Ñ:Ô:ð 	IØ—4’4˜
­E¬L¸Ñ,GÔ,G�4ÑHÔHÐHåÔ/°Ñ>Ô>ˆØ�1Š9ˆ9Ý"Ô4°Q¸ÈÀsÑKÔKÐKØ�1Š9ˆ9Ø Ð ÝÔ'Ø.¨Ð.Ð.°ñ
ô 
ð 	
r?   c                ó¨   — t          | t          t          j        f¦  «        rt	          | ¦  «        dk    r| d         S d S t          j        | d¦  «        S )NrV   r   re   )r™   rÿ   r[   r   r7   r	   Ú_maybe_get_const)r  s    r>   Úget_const_valuez_slice.<locals>.get_const_value  sQ   € Ý�m¥d­E¬LÐ%9Ñ:Ô:ð 	Ý�=Ñ!Ô! QÒ&Ð&Ø$ QÔ'Ð'Ø�4ÝÔ/°¸sÑCÔCÐCr?   r   rV   )r  r    rÎ   )r   Ú	INT64_MAXrZ   )	r3   r´   r¥   r¤   r£   ró   r  r
  rý   s	   `       @r>   Ú_slicer  î  s  øø€ ð
ð 
ð 
ð
ð 
ð 
ð 
ð 
ð 
ð 
ð"Dð Dð Dð 	ˆ˜ÑÔ 1Ò$Ð$ØˆO˜DÑ!Ô!¥ZÔ%9Ò9Ð9Øˆ]˜o˜o¨eÑ4Ô4¸Ò9Ð9àˆàˆ>˜$ÑÔ€DØˆ^˜F°!Ð4Ñ4Ô4€FØˆ>˜$­jÔ.BÐCÑCÔC€DØ€}Ø�tŠt�G˜U F¨D°$Ñ7Ô7Ð7ØˆN˜5°Ð2Ñ2Ô2€EØ�4Š4�˜ ¨¨d°EÑ:Ô:Ð:r?   zaten::slicec                óÐ   — t          |¦  «        dk    r|\  }}}}n2t          |¦  «        dk    r
|\  }}}dg}nt          j        d|¦  «        ‚t          j        | |||||¬¦  «        S )NrÓ   r—   r   zUnknown aten::slice signature©r¥   r¤   r£   ró   )r7   r   r  r	   Ú_slice_helper)r3   r;   r=   ÚdimsÚstartÚendÚsteps          r>   r.   r.   (  s…   € å
ˆ4�y„y�A‚~€~à!%Ñˆˆe�S˜$˜$Ý	ˆT‰Œ�aŠˆàÑˆˆs�DØˆsˆˆåÔ'Ð(GÈÑNÔNÐNåÔ(Ø	ØØØØØðñ ô ð r?   z
aten::flipr³   c                ó²   — t          j        | ||dgt          |¦  «        z  t          j         gt          |¦  «        z  dgt          |¦  «        z  ¬¦  «        S )Néÿÿÿÿr  )r	   r  r7   r   r  )r3   r´   r  s      r>   r   r   >  s^   € õ Ô(Ø	ØØØˆt•c˜$‘i”iÑÝÔ#Ð#Ð$¥s¨4¡y¤yÑ0Øˆd•S˜‘Y”YÑðñ ô ð r?   z
aten::fmodc                ó4   — |                       d||d¬¦  «        S )NrP   rV   rQ   )rZ   )r3   r´   r<   s      r>   r   r   K  s   € à�4Š4��u˜e¨Aˆ4Ñ.Ô.Ð.r?   zaten::embedding_bagc
                ó²  — |r t           j        rt          j        d¦  «        S |	�|	dk    rt	          d¦  «        ‚t          j        d¦  «         t          j        |d¦  «        }
|
��_|r|
dz
  }|}nI|
}||                      dt          j
        t          j        g¦  «        ¬¦  «        g} | j        dg|¢R d	diŽ}g }t          |¦  «        D �]â}t          j        | t          j        | |t          j
        d¦  «        t          j
        |¦  «        ¦  «        dg¦  «        }t          j        | t          j        | |t          j
        d¦  «        t          j
        |dz   ¦  «        ¦  «        dg¦  «        }|                      dt          j
        dg¦  «        ¬¦  «        }|                      d
||||¦  «        }|                      d||¦  «        }t          j        |¦  «        sG|                      d
||||¦  «        }t          j        | |dg¦  «        }|                      d||¦  «        }|dk    rt          j        | |dgd¬¦  «        }n;|dk    r|                      d|dgd¬¦  «        }n|                      d|dgd¬¦  «        }t          j        | |dg¦  «        }|                     |¦  «         �Œä | j        dg|¢R d	diŽ}|d d d fS t          j        d¦  «        S )Nz7embedding_bag with scale_grad_by_freq for training moder   zembedding_bag with padding_idxzžExport of embedding_bag with dynamic input/offsets shape is not supported in opset 10. Please use opset 11 or higher to export model for dynamic input shape.'rV   rI   rL   ÚConcatÚaxis_ir    ÚGatherÚMul)Úaxes_iÚ
keepdims_iÚ
ReduceMeanÚ	ReduceMaxziembedding_bag with unknown shape of offsets for opset 10 is not supported. please use opset 11 or higher.)r   Úexport_trainingr	   Ú_onnx_unsupportedÚRuntimeErrorÚwarningsÚwarnÚ_get_tensor_dim_sizerZ   r[   r\   ÚsysÚmaxsizer»   r  r8   ÚselectÚ_is_noneÚ_reducesum_helperÚappend)r3   Úembedding_matrixr¡   ÚoffsetsÚscale_grad_by_freqrí   ÚsparseÚper_sample_weightsÚinclude_last_offsetÚpadding_idxÚoffsets_dim_0Ú
offset_lenÚoffsets_extendedÚlist_re   Ústart_Úend_Úaxes_Úindices_rowÚ
embeddingsÚper_sample_weights_rowÚoutputs                         r>   r   r   P  sD  € ð ð 
�gÔ5ð 
ÝÔ0ØEñ
ô 
ð 	
ð Ð ;°!Ò#3Ð#3ÝÐ;Ñ<Ô<Ð<å„Mð	Rñô ð õ $Ô8¸À!ÑDÔD€MØÑ Øð 		KØ&¨Ñ*ˆJØ&ÐÐà&ˆJàØ—’�Z­¬µs´{°mÑ)DÔ)D�ÑEÔEð Ðð  $˜qœt HÐJÐ/?ÐJÐJÐJÈÐJÐJÐØˆÝ�zÑ"Ô"ð #	%ñ #	%ˆAÝ$Ô6ØÝ”˜aÐ!1µ5´<À±?´?ÅEÄLÐQRÁOÄOÑTÔTØ�ñô ˆFõ
 #Ô4ØÝ”ØÐ'­¬°a©¬½%¼,ÀqÈ1ÁuÑ:MÔ:Mñô ð �ñô ˆDð —D’D˜­U¬\¸1¸#Ñ->Ô->�DÑ?Ô?ˆEØŸ$š$˜w¨°¸¸uÑEÔEˆKàŸš˜hÐ(8¸+ÑFÔFˆJÝ"Ô+Ð,>Ñ?Ô?ð MØ)*¯ªØÐ/°¸¸uñ*ô *Ð&õ *9Ô)JØÐ-°¨sñ*ô *Ð&ð ŸTšT %¨Ð5KÑLÔL�
Ø�qŠyˆyÝ,Ô>Ø�z¨1¨#¸!ðñ ô �
�
ð ˜’�ØŸTšT ,°
ÀAÀ3ÐST˜TÑUÔU�
�
àŸTšT +¨zÀ1À#ÐRS˜TÑTÔT�
å(Ô:¸1¸jÈ1È#ÑNÔNˆJØ�LŠL˜Ñ$Ô$Ð$Ñ$à�”�hÐ1 Ð1Ð1Ð1¨qÐ1Ð1ˆð �t˜T 4Ð'Ð'åÔ0ð-ñ
ô 
ð 	
r?   z%aten::fake_quantize_per_tensor_affineé€ÿÿÿé   c           	     ó  — ||fdk    rt          j        dddd|¦  «         ||fdvrt          j        d|› d|› d	�|¦  «        ‚t          j        |¦  «        }|€t          j        dddd
|¦  «         |                     ¦   «         j        }|dk    r(|                      d|t          j	        j
        ¬¦  «        }n'|                      d|t          j	        j        ¬¦  «        }|                      d|                      d|||¦  «        ||¦  «        S )N)r   r?  r   r1   é   z=Quantize range (0, 127) not supported, requires opset 13 Clip))r   éÿ   ©r>  r?  zLFor (quant_min, quant_max), ONNX allows only (0, 255) and (-128, 127). Got (z, ú)z Non-constant scale not supportedr   ÚCast©Úto_iÚDequantizeLinearÚQuantizeLinear)r	   Ú _onnx_opset_unsupported_detailedr   r  rá   ÚfloatÚdatarZ   Ú_C_onnxÚTensorProtoDataTypeÚUINT8ÚINT8)r3   ÚinputsÚscaleÚ
zero_pointÚ	quant_minÚ	quant_maxs         r>   r   r   ¦  sN  € ð 	�9Ð Ò)Ð)ÝÔ8Ø-ØØØKØñ	
ô 	
ð 	
ð 	�9ÐÐ%<Ð<Ð<ÝÔ'ð.Øð.ð .Ø!*ð.ð .ð .àñ
ô 
ð 	
õ
 Ô-¨eÑ4Ô4€EØ€}ÝÔ8Ø-ØØØ.Øñ	
ô 	
ð 	
ð �KŠK‰MŒMÔ€EØ�A‚~€~Ø—T’T˜& *µ7Ô3NÔ3T�TÑUÔUˆ
ˆ
à—T’T˜& *µ7Ô3NÔ3S�TÑTÔTˆ
Ø�4Š4ØØ	�ŠÐ˜v u¨jÑ9Ô9ØØñ	ô ð r?   zaten::isinfc                óx   — |                       d|                       d|t          j        j        ¬¦  «        ¦  «        S )NÚIsInfrE  rF  )rZ   rM  rN  ÚDOUBLE©r3   r´   s     r>   r   r   Ö  s.   € à�4Š4�˜Ÿš˜f eµ'Ô2MÔ2T˜ÑUÔUÑVÔVÐVr?   zaten::isfinitec                óž   — t          | |¦  «        }t          j        | |¦  «        }t          j        | t          j        | ||¦  «        ¦  «        S rÎ   )r   r8   ÚisnanÚ__not_Ú__or_)r3   r´   Úinf_nodeÚnan_nodes       r>   r   r   Û  s@   € å�Q˜‰Œ€HÝŒ|˜A˜uÑ%Ô%€HÝŒ=˜�FœL¨¨H°hÑ?Ô?Ñ@Ô@Ð@r?   zaten::quantize_per_tensorc                ó"  — t          j        |dd¦  «        }|                      d|t          j        |¦  «                             ¦   «         ¬¦  «        }|                      d|t          j        j        ¬¦  «        }t          j	        | |||¦  «        S )Nre   rK   rE  rF  )
r	   Ú
_get_constrZ   r   ÚJitScalarTypeÚ	onnx_typerM  rN  ÚFLOATÚquantize_helper)r3   r´   rR  rS  rK   s        r>   r   r   â  s‚   € åÔ& u¨c°7Ñ;Ô;€Eà—’Ø�
¥Ô!:¸5Ñ!AÔ!A×!KÒ!KÑ!MÔ!Mð ñ ô €Jð �DŠD�˜¥WÔ%@Ô%FˆDÑGÔG€EÝÔ*¨1¨e°U¸JÑGÔGÐGr?   zaten::dequantizec                ó8   — t          j        | |¦  «        d         S r6   ©r	   Údequantize_helperrY  s     r>   r   r   í  s   € åÔ,¨Q°Ñ6Ô6°qÔ9Ð9r?   zaten::nan_to_numÚfc                ó  — t          j        |¦  «        s|S t          j                             |¦  «                             ¦   «         }|€d}t          j        | |¦  «        }|                      d||                      dt          j
        |g|¬¦  «        ¬¦  «        |¦  «        }t          j        |¦  «        }|€|j        }t          j        | t          | |¦  «        t          j        | ||                      dt          j        dg¦  «        ¬¦  «        ¦  «        ¦  «        }	|                      d|	|                      dt          j
        |g|¬¦  «        ¬¦  «        |¦  «        }
|€|j        }t          j        | t          | |
¦  «        t          j        | |
|                      dt          j        dg¦  «        ¬¦  «        ¦  «        ¦  «        }|                      d||                      dt          j
        |g|¬¦  «        ¬¦  «        |
¦  «        S )Nç        rX   rI   rJ   rL   r   )r	   rY   r   rb  Ú
from_valuerK   r8   r[  rZ   r[   r\   ÚfinfoÚmaxÚlogical_andr   ÚgtÚ
LongTensorÚminÚlt)r3   r´   ÚnanÚposinfÚneginfÚinput_dtypeÚnan_condÚ
nan_resultrm  Úposinf_condÚnan_posinf_resultÚneginf_conds               r>   r   r   ò  só  € õ
 Ô! %Ñ(Ô(ð ØˆÝÔ+×6Ò6°uÑ=Ô=×CÒCÑEÔE€KØ
€{ØˆÝŒ|˜A˜uÑ%Ô%€HØ—’ØØØ	�ŠˆZ¥¤¨s¨e¸;Ð!GÑ!GÔ!GˆÑHÔHØñ	ô €Jõ ŒK˜Ñ$Ô$€EØ€~Ø”ˆÝÔ$Ø	Ýˆa�ÑÔÝŒ	�!�Z §¢ j½%Ô:JÈAÈ3Ñ:OÔ:O Ñ!PÔ!PÑQÔQñô €Kð
 ŸšØØØ	�ŠˆZ¥¤¨v¨h¸kÐ!JÑ!JÔ!JˆÑKÔKØñ	ô Ðð €~Ø”ˆÝÔ$Ø	ÝˆaÐ"Ñ#Ô#ÝŒ	ØÐ  !§$¢$ z½5Ô;KÈQÈCÑ;PÔ;P $Ñ"QÔ"Qñ	
ô 	
ñô €Kð �4Š4ØØØ	�ŠˆZ¥¤¨v¨h¸kÐ!JÑ!JÔ!JˆÑKÔKØñ	ô ð r?   zquantized::linearc                ó(  — t          j        | |¦  «        \  }}}}t          j        | |¦  «        \  }	}
}}t          j        | |||
¦  «        }t          j        | |¦  «        \  }}}}t          j        | ||	|¦  «        }t          j        | |||¦  «        S rÎ   )r	   rh  Úrequantize_bias_helperr8   r×   re  ©r3   Úq_inputÚq_weightÚbiasÚop_scaleÚop_zero_pointr´   Úinput_scalerŒ   ÚweightÚweight_scaleÚq_biasr=  s                r>   r*   r*   *  s–   € õ  /Ô@ÀÀGÑLÔLÑ€Eˆ;˜˜1Ý!0Ô!BÀ1ÀhÑ!OÔ!OÑ€FˆL˜!˜QÝÔ3°A°t¸[È,ÑWÔW€FÝ#Ô5°a¸Ñ@Ô@�M€Dˆ!ˆQ�åŒ]˜1˜e V¨TÑ2Ô2€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::linear_reluc                óR  — t          j        | |¦  «        \  }}}}t          j        | |¦  «        \  }	}
}}t          j        | |||
¦  «        }t          j        | |¦  «        \  }}}}t          j        | ||	|¦  «        }t          j        | |¦  «        }t          j        | |||¦  «        S rÎ   )r	   rh  r~  r8   r×   Úrelure  r  s                r>   r+   r+   8  s§   € õ  /Ô@ÀÀGÑLÔLÑ€Eˆ;˜˜1Ý!0Ô!BÀ1ÀhÑ!OÔ!OÑ€FˆL˜!˜QÝÔ3°A°t¸[È,ÑWÔW€FÝ#Ô5°a¸Ñ@Ô@�M€Dˆ!ˆQ�åŒ]˜1˜e V¨TÑ2Ô2€FÝŒ[˜˜FÑ#Ô#€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::addc                óÄ   — t          j        | |¦  «        \  }}}}t          j        | |¦  «        \  }}}}t          j        | ||¦  «        }t          j        | |||¦  «        S rÎ   )r	   rh  r8   Úaddre  ©r3   ÚxÚyrƒ  r„  rŒ   r=  s          r>   r   r   G  ó`   € å Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQÝ Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQåŒZ˜˜1˜aÑ Ô €FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::add_reluc                óî   — t          j        | |¦  «        \  }}}}t          j        | |¦  «        \  }}}}t          j        | ||¦  «        }t          j        | |¦  «        }t          j        | |||¦  «        S rÎ   )r	   rh  r8   rŒ  rŠ  re  r�  s          r>   r   r   Q  sq   € å Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQÝ Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQåŒZ˜˜1˜aÑ Ô €FÝŒ[˜˜FÑ#Ô#€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::mulc                óÄ   — t          j        | |¦  «        \  }}}}t          j        | |¦  «        \  }}}}t          j        | ||¦  «        }t          j        | |||¦  «        S rÎ   )r	   rh  r8   Úmulre  r�  s          r>   r,   r,   \  r�  r?   zquantized::hardswishc                óŽ   — t          j        | |¦  «        \  }}}}t          j        | |¦  «        }t          j        | |||¦  «        S rÎ   )r	   rh  r8   Ú	hardswishre  ©r3   rŽ  rƒ  r„  rŒ   r=  s         r>   r&   r&   f  sE   € å Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQåÔ˜a Ñ#Ô#€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::sigmoidc                óŽ   — t          j        | |¦  «        \  }}}}t          j        | |¦  «        }t          j        | |||¦  «        S rÎ   )r	   rh  r8   Úsigmoidre  r–  s         r>   r-   r-   o  sD   € å Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQåŒ^˜A˜qÑ!Ô!€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::leaky_reluc                ó’   — t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |||¦  «        S rÎ   )r	   rh  r8   Ú
leaky_relure  )r3   rŽ  Únegative_slopeÚinplacerƒ  r„  rŒ   r=  s           r>   r)   r)   x  sK   € õ !Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQåÔ˜q ! ^°WÑ=Ô=€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::layer_normc           	     ó˜   — t          j        | |¦  «        \  }}}}t          j        | |||||d¦  «        }	t          j        | |	||¦  «        S ©NF)r	   rh  r8   Ú
layer_normre  )
r3   rŽ  Únormalized_shaper†  r‚  Úepsrƒ  r„  rŒ   r=  s
             r>   r(   r(   ƒ  sR   € õ !Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQåÔ˜q !Ð%5°v¸tÀSÈ%ÑPÔP€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::group_normc           	     ó˜   — t          j        | |¦  «        \  }}}}t          j        | |||||d¦  «        }	t          j        | |	||¦  «        S rž  )r	   rh  r8   Ú
group_normre  )
r3   rŽ  Ú
num_groupsr†  r‚  r¡  rƒ  r„  rŒ   r=  s
             r>   r%   r%   •  sQ   € õ !Ô2°1°aÑ8Ô8�J€A€qˆ!ˆQåÔ˜q ! Z°¸¸sÀEÑJÔJ€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::instance_normc                óž   — t          j        | |¦  «        \  }}}}t          j        | |||d d dd|d¦
  «
        }	t          j        | |	||¦  «        S )NFrk  )r	   rh  r8   Úinstance_normre  )
r3   r€  r†  r‚  r¡  rƒ  r„  r´   rŒ   r=  s
             r>   r'   r'   §  s^   € õ %Ô6°q¸'ÑBÔB�N€Eˆ1ˆa�åÔ!Ø	ˆ5�&˜$  d¨E°3¸¸Uñô €Fõ Ô*¨1¨f°hÀÑNÔNÐNr?   zquantized::conv1d_reluc
           
     óZ  — t          j        | |¦  «        \  }
}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | |
||||||¦  «        }t          j        | |¦  «        }t          j        | |||	¦  «        S rÎ   )r	   rh  r~  r8   Úconv1drŠ  re  ©r3   r€  r�  r‚  r‘   r’   r“   Úgroupsrƒ  r„  r´   r…  rŒ   r†  r‡  rˆ  r=  s                    r>   r   r   »  ó¯   € õ  /Ô@ÀÀGÑLÔLÑ€Eˆ;˜˜1Ý!0Ô!BÀ1ÀhÑ!OÔ!OÑ€FˆL˜!˜QÝÔ3°A°t¸[È,ÑWÔW€FÝ#Ô5°a¸Ñ@Ô@�M€Dˆ!ˆQ�åŒ]˜1˜e V¨T°6¸7ÀHÈfÑUÔU€FÝŒ[˜˜FÑ#Ô#€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::conv2d_reluc
           
     óZ  — t          j        | |¦  «        \  }
}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | |
||||||¦  «        }t          j        | |¦  «        }t          j        | |||	¦  «        S rÎ   )r	   rh  r~  r8   Úconv2drŠ  re  r©  s                    r>   r   r   Ó  r«  r?   zquantized::conv3d_reluc
           
     óZ  — t          j        | |¦  «        \  }
}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | |
||||||¦  «        }t          j        | |¦  «        }t          j        | |||	¦  «        S rÎ   )r	   rh  r~  r8   Úconv3drŠ  re  r©  s                    r>   r   r   ë  r«  r?   zquantized::conv1dc
           
     ó0  — t          j        | |¦  «        \  }
}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | |
||||||¦  «        }t          j        | |||	¦  «        S rÎ   )r	   rh  r~  r8   r¨  re  r©  s                    r>   r   r     óž   € õ  /Ô@ÀÀGÑLÔLÑ€Eˆ;˜˜1Ý!0Ô!BÀ1ÀhÑ!OÔ!OÑ€FˆL˜!˜QÝÔ3°A°t¸[È,ÑWÔW€FÝ#Ô5°a¸Ñ@Ô@�M€Dˆ!ˆQ�åŒ]˜1˜e V¨T°6¸7ÀHÈfÑUÔU€FåÔ*¨1¨f°hÀÑNÔNÐNr?   zquantized::conv2dc
           
     ó0  — t          j        | |¦  «        \  }
}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | |
||||||¦  «        }t          j        | |||	¦  «        S rÎ   )r	   rh  r~  r8   r­  re  r©  s                    r>   r    r      r±  r?   zquantized::conv3dc
           
     ó0  — t          j        | |¦  «        \  }
}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | |
||||||¦  «        }t          j        | |||	¦  «        S rÎ   )r	   rh  r~  r8   r¯  re  r©  s                    r>   r!   r!   1  r±  r?   zquantized::conv_transpose1dc                ó2  — t          j        | |¦  «        \  }}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | ||||||||¦	  «	        }t          j        | ||	|
¦  «        S rÎ   ©r	   rh  r~  r8   Úconv_transpose2dre  ©r3   r€  r�  r‚  r‘   r’   Úoutput_paddingr“   rª  rƒ  r„  r´   r…  rŒ   r†  r‡  rˆ  r=  s                     r>   r"   r"   H  ó¨   € õ  /Ô@ÀÀGÑLÔLÑ€Eˆ;˜˜1Ý!0Ô!BÀ1ÀhÑ!OÔ!OÑ€FˆL˜!˜QÝÔ3°A°t¸[È,ÑWÔW€FÝ#Ô5°a¸Ñ@Ô@�M€Dˆ!ˆQ�åÔ$Ø	ˆ5�&˜$ ¨°ÀÈñô €Fõ Ô*¨1¨f°hÀÑNÔNÐNr?   zquantized::conv_transpose2dc                ó2  — t          j        | |¦  «        \  }}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | ||||||||¦	  «	        }t          j        | ||	|
¦  «        S rÎ   rµ  r·  s                     r>   r#   r#   b  r¹  r?   zquantized::conv_transpose3dc                ó2  — t          j        | |¦  «        \  }}}}t          j        | |¦  «        \  }}}}t          j        | |||¦  «        }t          j        | |¦  «        \  }}}}t          j        | ||||||||¦	  «	        }t          j        | ||	|
¦  «        S rÎ   )r	   rh  r~  r8   Úconv_transpose3dre  r·  s                     r>   r$   r$   |  r¹  r?   zquantized::catÚq_inputsrj   rƒ  r„  c                ó˜   ‡ — t          j        |¦  «        }ˆ fd„|D ¦   «         } ‰ j        dg|¢R d|iŽ}t          j        ‰ |||¦  «        S )Nc                óF   •— g | ]}t          j        ‰|¦  «        d          ‘ŒS )r   rg  )r¹   r´   r3   s     €r>   rº   z!quantized_cat.<locals>.<listcomp>   s8   ø€ ð ð ð Ø;@�Ô)¨!¨UÑ3Ô3°AÔ6ðð ð r?   r  r  )r	   Ú_unpack_listrZ   re  )r3   r½  rj   rƒ  r„  Úunpacked_inputsÚdequantizedÚconcatenateds   `       r>   r   r   –  sw   ø€ õ &Ô2°8Ñ<Ô<€Oðð ð ð ØDSðñ ô €Kð �1”4˜Ð; ;Ð;Ð;Ð;°sÐ;Ð;€LÝÔ*¨1¨l¸HÀmÑTÔTÐTr?   )r3   r4   rÎ   )r3   r4   r;   rp   rq   rr   rs   rr   rt   rr   ru   rr   rv   rw   rx   ry   rz   rp   )rŽ   ry   r�   r�   r‘   r�   r’   r�   r“   r�   rz   r”   )r3   r4   r;   rp   rq   rr   rs   rr   rt   rr   ru   rr   rv   rw   rx   ry   r›   rr   rœ   rr   r�   rr   rz   rž   )r°   r±   rŽ   ry   r©   rw   )
rŽ   ry   r�   r�   r‘   r�   r’   r�   rz   rÁ   )r3   r4   r´   rñ   r¥   rò   r¤   rò   r£   rò   ró   rô   rC  )r3   r4   r½  rp   rj   ry   rƒ  rp   r„  rp   rz   rp   )MÚ
__future__r   Ú	functoolsr&  r#  Útypingr   r[   Útorch._C._onnxr   Ú_onnxrM  Ú
torch.onnxr   r   r   r	   r
   r8   Útorch.onnx._globalsr   Útorch.onnx._internalr   r   Úcollections.abcr   Ú__all__ÚpartialÚonnx_symbolicÚ_onnx_symbolicr   r¿   r:   rD   r/   r0   r�   rš   r§   Ú_apply_paramsrÀ   rÃ   rÏ   rè   rð   r  r.   r   r   r   r   r   r   r   r   r   r*   r+   r   r   r,   r&   r-   r)   r(   r%   r'   r   r   r   r   r    r!   r"   r#   r$   r   r¸   r?   r>   ú<module>rÒ     sw  ðð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø 
€
€
€
Ø €€€Ø  Ð  Ð  Ð  Ð  Ð  à €€€Ø  Ð  Ð  Ð  Ð  Ð  Ð  Ð  Ð  Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð (Ð 'Ð 'Ð 'Ð 'Ð 'Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8ð ð )Ø(Ð(Ð(Ð(Ð(Ð(ð#ð #ð #€ðL #�Ô" <Ô#=ÀRÐHÑHÔH€ð €�ÑÔð9ð 9ð 9ñ Ôð9ð €Ô˜C  cÑ*Ô*ðHð Hð Hñ +Ô*ðHð €Ð%Ñ&Ô&ð5ð 5ð 5ñ 'Ô&ð5ð( €�ÑÔØ€Ô˜C  c¨6Ñ2Ô2ðTð Tð Tð Tñ 3Ô2ñ ÔðTð €�ÑÔØ€Ô˜C  c¨3°°VÑ<Ô<ðð ð ð ñ =Ô<ñ Ôðð$ð $ð $ð $ðP(3ð (3ð (3ð (3ðV5"ð 5"ð 5"ð 5"ðp €ØØ+ˆoÔ+¨L¸!ÈEÐRÑRÔRÐSðñ ô ð €ØØ+ˆoÔ+¨L¸!ÈEÐRÑRÔRÐSðñ ô ð €ØØ+ˆoÔ+¨L¸!ÈEÐRÑRÔRÐSðñ ô ð €Ø#à%ˆÔ%Ø%ØØð	
ñ 	
ô 	
ðð	ñ 	ô 	ð €Ø#à%ˆÔ%Ø%ØØð	
ñ 	
ô 	
ðð	ñ 	ô 	ð €Ø#à%ˆÔ%Ø%ØØð	
ñ 	
ô 	
ðð	ñ 	ô 	ð*ð *ð *ñ	ô 	ñ	ô 	ñ	ô 	ñ	ô ñ	ô ñ	ô ðT*ð\)ð )ð )ð )ð@ €ØØ+ˆoÔ+¨L¸!Ñ<Ô<Ð=ðñ ô ð €ØØ+ˆoÔ+¨L¸!Ñ<Ô<Ð=ðñ ô ð €ØØ+ˆoÔ+¨L¸!Ñ<Ô<Ð=ðñ ô ðð ñ	ô ñ	ô ñ	ô ðð@ €ØØ+ˆoÔ+Ð,@À!ÀYÑOÔOÐPðñ ô ð €ØØ+ˆoÔ+Ð,@À!ÀYÑOÔOÐPðñ ô ð €ØØ+ˆoÔ+Ð,@À!ÀYÑOÔOÐPðñ ô ð €ØØ+ˆoÔ+Ð,?ÀÀHÑMÔMÐNðñ ô ð €ØØ+ˆoÔ+Ð,AÀ1ÀhÑOÔOÐPðñ ô ð €Ø Ø+ˆoÔ+Ð,BÀAÀxÑPÔPÐQðñ ô ðð ñ	ô ñ	ô ñ	ô ñ	ô ñ	ô ñ	ô ð0ð& €Ð%Ñ&Ô&ð6ð 6ð 6ñ 'Ô&ð6ð, :>ð7;ð 7;ð 7;ð 7;ð 7;ðt €�ÑÔðð ð ñ Ôðð* €�ÑÔØ€Ô˜C Ñ&Ô&ðð ð ñ 'Ô&ñ Ôðð €�ÑÔð/ð /ð /ñ Ôð/ð €Ð%Ñ&Ô&Ø€Ô˜C  c¨3°°S¸#¸sÀCÑHÔHðQ
ð Q
ð Q
ñ IÔHñ 'Ô&ðQ
ðh €Ð7Ñ8Ô8Ø€Ô˜C  c¨3°Ñ4Ô4ð Øð+ð +ð +ð +ñ 5Ô4ñ 9Ô8ð+ð\ €�ÑÔðWð Wð Wñ ÔðWð €Ð Ñ!Ô!ðAð Að Añ "Ô!ðAð €Ð+Ñ,Ô,ðHð Hð Hñ -Ô,ðHð €Ð"Ñ#Ô#ð:ð :ð :ñ $Ô#ð:ð €Ð"Ñ#Ô#Ø€Ô˜C  c¨3Ñ/Ô/ð/ð /ð /ñ 0Ô/ñ $Ô#ð/ðl €Ð#Ñ$Ô$ð
Oð 
Oð 
Oñ %Ô$ð
Oð €Ð(Ñ)Ô)ðOð Oð Oñ *Ô)ðOð €Ð Ñ!Ô!ðOð Oð Oñ "Ô!ðOð €Ð%Ñ&Ô&ðOð Oð Oñ 'Ô&ðOð €Ð Ñ!Ô!ðOð Oð Oñ "Ô!ðOð €Ð&Ñ'Ô'ðOð Oð Oñ (Ô'ðOð €Ð$Ñ%Ô%ðOð Oð Oñ &Ô%ðOð €Ð'Ñ(Ô(ðOð Oð Oñ )Ô(ðOð €Ð'Ñ(Ô(ðOð Oð Oñ )Ô(ðOð" €Ð'Ñ(Ô(ðOð Oð Oñ )Ô(ðOð" €Ð*Ñ+Ô+Ø€Ô˜C  c¨3°°SÑ9Ô9ðOð Oð Oñ :Ô9ñ ,Ô+ðOð$ €Ð(Ñ)Ô)ðOð Oð Oñ *Ô)ðOð. €Ð(Ñ)Ô)ðOð Oð Oñ *Ô)ðOð. €Ð(Ñ)Ô)ðOð Oð Oñ *Ô)ðOð. €Ð#Ñ$Ô$ðOð Oð Oñ %Ô$ðOð, €Ð#Ñ$Ô$ðOð Oð Oñ %Ô$ðOð, €Ð#Ñ$Ô$ðOð Oð Oñ %Ô$ðOð, €Ð-Ñ.Ô.ðOð Oð Oñ /Ô.ðOð2 €Ð-Ñ.Ô.ðOð Oð Oñ /Ô.ðOð2 €Ð-Ñ.Ô.ðOð Oð Oñ /Ô.ðOð2 €Ð Ñ!Ô!Ø€Ô˜C  c¨3Ñ/Ô/ðUð Uð Uñ 0Ô/ñ "Ô!ðUð Uð Ur?   