Ë
    [^(hÛ*  ã                   ó*  — d dl Z d dlZd dlmZmZ d dlmZmZ de	de
fd„Zdej                  fd„Zdej                  fd	„Zdej                  fd
„Zdej                  fd„Z ej"                  ddddd«      dej                  fd„«       Zdej                  fd„Z ej"                  ddddddddd«	      dej                  fd„«       Z ej"                  ddddddddd«	      dej                  fd„«       Z ej"                  dddd«      dej                  fd„«       Z ej"                  d«      dej                  fd„«       Z ej"                  dddd«      dej                  fd„«       Z ej"                  d«      dej                  fd„«       Z ej"                  dddddddd«      dej                  fd„«       Z	 	 	 d"dej                  fd„Z ej"                  dddddd«      dej                  fd„«       Z ej"                  ddddddd«      	 d#dej                  fd„«       Zdej                  fd„Z ej"                  ddddd«      dej                  fd„«       Zd$dej                  fd „Z  ej"                  d«      dej                  fd!„«       Z!y)%é    N)Úsymbolic_helperÚsymbolic_opset9)Ú	jit_utilsÚregistrationÚdomainÚversionc                 ó†  — t        j                  d«      }t        j                  |«      }h d£}|D ]Ž  \  }}| › d|› �}t        j                  |«      sŒ#t
        j                  j                  ||«      rŒD||v r&t
        j                  j                  d|› �||d¬«       t
        j                  j                  |||«       Œ� y )Nztorch.onnx.symbolic_caffe2>   ÚcatÚreluÚsliceÚreshapeÚsigmoidÚ
avg_pool2dÚ
dequantizeÚ
max_pool2dÚupsample_nearest2dÚquantize_per_tensorÚ_empty_affine_quantizedz::zaten::T)Úcustom)	Ú	importlibÚimport_moduleÚinspectÚ
getmembersÚ
isfunctionr   ÚregistryÚis_registered_opÚregister)r   r   ÚmoduleÚquant_version_opsÚ
aten_q_opsÚopÚfuncÚnames           úX/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/onnx/symbolic_caffe2.pyÚregister_quantized_opsr%   
   sÄ   € ä×$Ñ$Ð%AÓB€FÜ×*Ñ*¨6Ó2Ðò€Jð &ò 
@‰ˆˆDØ�˜˜B˜4Ð ˆÜ×Ñ˜dÕ#¬L×,AÑ,A×,RÑ,RØ�'õ-
ð �ZÑä×%Ñ%×.Ñ.Ø˜R˜D�M 7¨D¸ð /ô ô ×!Ñ!×*Ñ*¨4°¸$Õ?ñ
@ó    Úgc                 ó   — |t        j                  |j                  «       d«      t        j                  |j                  «       d«      dœ} | j                  d|fi |¤Ž}t         j                  j                  |«       |S )NÚY_scaleÚY_zero_point)Úaxes_iÚ	Y_scale_fÚY_zero_point_iz_caffe2::Int8Transpose)r   Ú	_node_getÚnoder!   Ú_quantized_opsÚadd)r'   ÚinputÚaxesÚ
quant_argsÚoutputs        r$   Ú_permute_helperr6   (   sk   € àÜ$×.Ñ.¨u¯z©z«|¸YÓGÜ)×3Ñ3°E·J±J³LÀ.ÓQñ€Jð
 ˆQ�T‰TÐ*¨EÑ@°ZÑ@€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 ó$   — g d¢}t        | ||«      S )N)r   é   é   é   ©r6   ©r'   r2   r3   s      r$   Ú	nchw2nhwcr=   3   ó   € Ú€DÜ˜1˜e TÓ*Ð*r&   c                 ó$   — g d¢}t        | ||«      S )N)r   r9   r:   r8   r;   r<   s      r$   Ú	nhwc2nchwr@   8   r>   r&   c                 ój   — | j                  d||«      }t        j                  j                  |«       |S ©Nz_caffe2::WeightPrepack©r!   r   r0   r1   )r'   ÚweightÚbiasr5   s       r$   Úlinear_prepackrF   =   s0   € ð �T‰TÐ*¨F°DÓ9€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   ÚvÚfÚic                 óz   — ||dœ} | j                   d|||fi |¤Ž}t        j                  j                  |«       |S )N©r,   r-   z_caffe2::Int8FCrC   )r'   r2   rD   rE   ÚscaleÚ
zero_pointÚkwargsr5   s           r$   ÚlinearrO   F   sH   € ð Ø$ñ€Fð ˆQ�T‰TÐ# U¨F°DÑC¸FÑC€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 ól   — | j                  d|||«      }t        j                  j                  |«       |S rB   rC   )	r'   r2   rD   rE   ÚstrideÚpaddingÚdilationÚgroupsr5   s	            r$   Úconv_prepackrU   Q   s2   € ð �T‰TÐ*¨E°6¸4Ó@€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   Úisc
           	      ó¸   — |j                  «       d   dd }
|||z   |||
d||	dœ} | j                  d|||fi |¤Ž}t        j                  j	                  |«       |S )NÚshaper:   r9   ÚNHWC©Ú	strides_iÚpads_iÚdilations_iÚgroup_iÚ	kernels_iÚorder_sr,   r-   z_caffe2::Int8Conv©r/   r!   r   r0   r1   ©r'   r2   rD   rE   rQ   rR   rS   rT   rL   rM   Úkernel_sizerN   r5   s                r$   Úconv2drd   \   sv   € ð —+‘+“- Ñ(¨¨1Ð-€KàØ˜GÑ#ØØØ ØØØ$ñ	€Fð ˆQ�T‰TÐ% u¨f°dÑE¸fÑE€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c
           	      ó¸   — |j                  «       d   dd }
|||z   |||
d||	dœ} | j                  d|||fi |¤Ž}t        j                  j	                  |«       |S )NrX   r:   r9   rY   rZ   z_caffe2::Int8ConvRelura   rb   s                r$   Úconv2d_relurf   y   sv   € ð —+‘+“- Ñ(¨¨1Ð-€KàØ˜GÑ#ØØØ ØØØ$ñ	€Fð ˆQ�T‰TÐ)¨5°&¸$ÑIÀ&ÑI€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 óx   — ||dœ} | j                   d||fi |¤Ž}t        j                  j                  |«       |S )NrK   z_caffe2::Int8AddrC   )r'   Úinput_aÚinput_brL   rM   rN   r5   s          r$   r1   r1   –   sF   € ð Ø$ñ€Fð ˆQ�T‰TÐ$ g¨wÑA¸&ÑA€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 óN  — |t         j                  vrt        j                  | |«      S t        j                  |j                  «       d«      t        j                  |j                  «       d«      dœ} | j                  d|fi |¤Ž}t         j                  j                  |«       |S )Nr)   r*   rK   z_caffe2::Int8Relu)r   r0   Úopset9r   r.   r/   r!   r1   )r'   r2   rN   r5   s       r$   r   r   ¡   s‡   € à”O×2Ñ2Ñ2Ü�{‰{˜1˜eÓ$Ð$ä$×.Ñ.¨u¯z©z«|¸YÓGÜ)×3Ñ3°E·J±J³LÀ.ÓQñ€Fð ˆQ�T‰TÐ% uÑ7°Ñ7€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   Útc                 óv   — ||dœ} | j                   d|fi |¤Ž}t        j                  j                  |«       |S )NrK   z_caffe2::Int8QuantizerC   )r'   r2   rL   rM   ÚdtyperN   r5   s          r$   r   r   ®   sD   € ð Ø$ñ€Fð ˆQ�T‰TÐ)¨5Ñ;°FÑ;€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 ó&   — | j                  d|«      S )Nz_caffe2::Int8Dequantize)r!   )r'   r2   s     r$   r   r   ¹   s   € à�4‰4Ð)¨5Ó1Ð1r&   c	                 ó   — |S ©N© )	r'   r2   rX   rL   rM   rn   Ú
pin_memoryÚmemory_formatÚlayouts	            r$   r   r   ¾   s	   € ð €Lr&   c                 ó°  — |t         j                  vrt        j                  | |||«      S t        j                  |d«      }|t        j
                  |j                  «       d«      t        j
                  |j                  «       d«      dœ}t        | |«      } | j                  d|fi |¤Ž}t        | |«      }t         j                  j                  |«       |S )NrV   r)   r*   )Úoutput_size_ir,   r-   z_caffe2::Int8ResizeNearest)r   r0   rk   r   Ú
_parse_argr.   r/   r=   r!   r@   r1   )r'   r2   Úoutput_sizeÚalign_cornersÚscales_hÚscales_wrN   r5   s           r$   r   r   Í   s¼   € ð ”O×2Ñ2Ñ2Ü×(Ñ(¨¨E°;ÀÓNÐNä!×,Ñ,¨[¸$Ó?€Kà$Ü$×.Ñ.¨u¯z©z«|¸YÓGÜ)×3Ñ3°E·J±J³LÀ.ÓQñ€Fô
 �a˜Ó€EØˆQ�T‰TÐ.°Ñ@¸Ñ@€FÜ�q˜&Ó!€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c           	      óœ  — |t         j                  vrt        j                  | ||||||«      S |||z   |d   dt        j                  |j                  «       d«      t        j                  |j                  «       d«      dœ}t        | |«      } | j                  d|fi |¤Ž}t        | |«      }t         j                  j                  |«       |S )Nr   rY   r)   r*   ©r[   r\   Úkernel_ir`   r,   r-   z_caffe2::Int8MaxPool)
r   r0   rk   r   r.   r/   r=   r!   r@   r1   )	r'   r2   rc   rQ   rR   rS   Ú	ceil_moderN   r5   s	            r$   r   r   å   sÉ   € ð ”O×2Ñ2Ñ2Ü× Ñ Øˆu�k 6¨7°H¸ió
ð 	
ð Ø˜GÑ#Ø ‘NØÜ$×.Ñ.¨u¯z©z«|¸YÓGÜ)×3Ñ3°E·J±J³LÀ.ÓQñ€Fô �a˜Ó€EØˆQ�T‰TÐ(¨%Ñ:°6Ñ:€FÜ�q˜&Ó!€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   Únonec           
      óž  — |t         j                  vrt        j                  | |||||||«      S |||z   |d   dt        j                  |j                  «       d«      t        j                  |j                  «       d«      dœ}t        | |«      } | j                  d|fi |¤Ž}	t        | |	«      }	t         j                  j                  |	«       |	S )Nr   rY   r)   r*   r~   z_caffe2::Int8AveragePool)
r   r0   rk   r   r.   r/   r=   r!   r@   r1   )
r'   r2   rc   rQ   rR   r€   Úcount_include_padÚdivisor_overriderN   r5   s
             r$   r   r     sÒ   € ð ”O×2Ñ2Ñ2Ü× Ñ ØØØØØØØØó	
ð 		
ð Ø˜GÑ#Ø ‘NØÜ$×.Ñ.¨u¯z©z«|¸YÓGÜ)×3Ñ3°E·J±J³LÀ.ÓQñ€Fô �a˜Ó€EØˆQ�T‰TÐ,¨eÑ>°vÑ>€FÜ�q˜&Ó!€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 óR  — |t         j                  vrt        j                  | ||«      S t        j                  |j                  «       d«      t        j                  |j                  «       d«      dœ} | j                  d||fi |¤Ž}t         j                  j                  |«       |S )Nr)   r*   rK   z_caffe2::Int8Reshape)r   r0   rk   r   r.   r/   r!   r1   )r'   r2   rX   rN   r5   s        r$   r   r   '  s�   € Ø”O×2Ñ2Ñ2Ü�~‰~˜a ¨Ó.Ð.ô %×.Ñ.¨u¯z©z«|¸YÓGÜ)×3Ñ3°E·J±J³LÀ.ÓQñ€Fð ˆQ�T‰TÐ(¨%°ÑA¸&ÑA€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 ó   — |t         j                  vrt        j                  | |||||«      S |dk7  rt	        d«      ‚t        j
                  |d«      }t        j
                  |d«      }t        j
                  |d«      }|||t        j                  |j                  «       d«      t        j                  |j                  «       d«      dœ} | j                  d|fi |¤Ž}t         j                  j                  |«       |S )Nr:   z2ONNX quantized slice export only works for step 1.rI   r)   r*   )Ústart_idx_iÚ	end_idx_iÚdim_ir,   r-   z_caffe2::Int8Slice)
r   r0   rk   r   ÚRuntimeErrorrx   r.   r/   r!   r1   )r'   r2   ÚdimÚstartÚendÚsteprN   r5   s           r$   r   r   4  sã   € à”O×2Ñ2Ñ2Ü�|‰|˜A˜u c¨5°#°tÓ<Ð<àˆq‚yÜÐOÓPÐPÜ×&Ñ& u¨cÓ2€EÜ
×
$Ñ
$ S¨#Ó
.€CÜ
×
$Ñ
$ S¨#Ó
.€Cð ØØÜ$×.Ñ.¨u¯z©z«|¸YÓGÜ)×3Ñ3°E·J±J³LÀ.ÓQñ€Fð ˆQ�T‰TÐ&¨Ñ8°Ñ8€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 ó€  — t        j                  |«      }|d   }|t         j                  vrt        j                  | ||«      S t        j
                  |d«      }|d   j                  «       d   |d   j                  «       d   dœ} | j                  dg|¢­d|i|¤Ž}t         j                  j                  |«       |S )Nr   rI   r)   r*   rK   z_caffe2::Int8ConcatÚaxis_i)	r   Ú_unpack_listr0   rk   r
   rx   r/   r!   r1   )	r'   Útensor_listr‹   rL   rM   Útensorsr2   rN   r5   s	            r$   r
   r
   K  s¶   € Ü×*Ñ*¨;Ó7€GØ�A‰J€EØ”O×2Ñ2Ñ2Ü�z‰z˜!˜[¨#Ó.Ð.ä
×
$Ñ
$ S¨#Ó
.€Cà˜Q‘Z—_‘_Ó& yÑ1Ø! !™*Ÿ/™/Ó+¨NÑ;ñ€Fð ˆQ�T‰TÐ'ÐH¨'ÒH¸#ÐHÀÑH€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   c                 óÎ   — |t         j                  vrt        j                  | |«      S d}d}||dœ} | j                  d|fi |¤Ž}t         j                  j                  |«       |S )Ng      p?r   rK   z_caffe2::Int8Sigmoid)r   r0   rk   r   r!   r1   )r'   r2   Ú	out_scalerM   rN   r5   s         r$   r   r   [  sm   € à”O×2Ñ2Ñ2Ü�~‰~˜a Ó'Ð'ð €IØ€JàØ$ñ€Fð ˆQ�T‰TÐ(¨%Ñ:°6Ñ:€FÜ×"Ñ"×&Ñ& vÔ.Ø€Mr&   )NNNrq   )NN)"r   r   Ú
torch.onnxr   r   rk   Útorch.onnx._internalr   r   ÚstrÚintr%   ÚGraphContextr6   r=   r@   rF   Ú
parse_argsrO   rU   rd   rf   r1   r   r   r   r   r   r   r   r   r   r
   r   rr   r&   r$   ú<module>rœ      s]  ðó Û ç Aß 8ð@ 3ð @°ó @ð<�y×-Ñ-ó ð+�×'Ñ'ó +ð
+�×'Ñ'ó +ð
�i×,Ñ,ó ð €×Ñ˜C  c¨3°Ó4ðˆi×$Ñ$ò ó 5ððØ×Ñóð €×Ñ˜C  c¨4°°t¸SÀ#ÀsÓKðØ×Ñòó Lðð8 €×Ñ˜C  c¨4°°t¸SÀ#ÀsÓKðØ×Ñòó Lðð8 €×Ñ˜C  c¨3Ó/ðˆ9×!Ñ!ò ó 0ðð €×Ñ˜CÓ ð	ˆI×"Ñ"ò 	ó !ð	ð €×Ñ˜C  c¨3Ó/ð˜9×1Ñ1ò ó 0ðð €×Ñ˜CÓ ð2�)×(Ñ(ò 2ó !ð2ð €×Ñ˜C  c¨3°°S¸#¸sÓCðØ×Ñòó Dðð$ ØØñØ×Ñóð0 €×Ñ˜C  t¨T°4¸Ó=ðØ×Ñòó >ðð8 €×Ñ˜C  t¨T°3¸¸VÓDð ñ!Ø×Ñò!ó Eð!ðH
ˆy×%Ñ%ó 
ð €×Ñ˜C  c¨3°Ó4ðˆY×#Ñ#ò ó 5ðñ,ˆ9×!Ñ!ó ð  €×Ñ˜CÓ ðˆy×%Ñ%ò ó !ñr&   