Ë
    [^(h9  ã            	       óì  — d dl mZ 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m
Z
 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 ej*                  ej,                  ej.                  fZ ed„ ej*                  dej,                  dej.                  d i«      Zd„ Zd„ Zd„ Z	 d„ Z	 ej<                  	 	 dd„«       Z	 ej<                  dd„«       Z 	 ej<                  dddejB                  fd„«       Z"ej<                  dd„«       Z#	 ej<                  	 	 	 	 	 dd„«       Z$ejJ                  jL                  Z'ejP                  ejR                     jT                  Z+de+d<   e'dk\  re'dk  rejX                  e+d<   d„ Z-y)é    )Údefaultdict)ÚIterableN)Úreduce)Úassume)Úsettings)Ú
strategies)Únumpy)ÚSearchStrategy)Ú_calculate_dynamic_qparamsÚ&_calculate_dynamic_per_channel_qparamsc                   ó   — y )N© r   ó    úf/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/testing/_internal/hypothesis_utils.pyú<lambda>r       s   � r   c                 ó¤  — | \  }}}dt        j                  t         j                  «      j                  z   }t        j                  t         j
                  «      }|j                  |z  |j                  |z  }}t        ||z
  |z  ||z  |z   «      }t        ||z
  |z  ||z  |z   «      }	t        j                  |«      t        j                  |	«      fS ©Né   )
ÚtorchÚfinfoÚfloatÚepsÚiinfoÚlongÚminÚmaxÚnpÚfloat32)
ÚqparamsÚscaleÚ
zero_pointÚ_quantized_typeÚ
adjustmentÚ_long_type_infoÚlong_minÚlong_maxÚ	min_valueÚ	max_values
             r   Ú_get_valid_min_maxr)   &   sº   € Ø)0Ñ&€Eˆ:�Ø”U—[‘[¤§¡Ó-×1Ñ1Ñ1€JÜ—k‘k¤%§*¡*Ó-€OØ(×,Ñ,¨zÑ9¸?×;NÑ;NÐQ[Ñ;[ˆh€Hä�X 
Ñ*¨eÑ3°hÀÑ6FÈÑ6SÓU€IÜ�X 
Ñ*¨eÑ3°hÀÑ6FÈÑ6SÓU€IÜ�:‰:�iÓ ¤"§*¡*¨YÓ"7Ð7Ð7r   c                  ó”  — d|v �r¯t         j                  j                  dk  �r‘d|v xr |d    xs d|vxr d|v xr |d    xs d|v}t        | «      dk(  xr
 d|vxr d|v}|�r=|�r:|d   dk(  rat	        j
                  t        j                  «      j                  |d<   t	        j
                  t        j                  «      j                  |d<   nÑ|d   d	k(  rat	        j
                  t        j                  «      j                  |d<   t	        j
                  t        j                  «      j                  |d<   nh|d   d
k(  r`t	        j
                  t        j                  «      j                  |d<   t	        j
                  t        j                  «      j                  |d<   |j                  d«       t        j                  | i |¤ŽS )NÚwidth)é   éC   r   Ú	allow_nanÚallow_infinityr   r'   r(   é   é    é@   )Ú
hypothesisÚversionÚ__version_info__Úlenr   r   Úfloat16r   r   r   Úfloat64ÚpopÚstÚfloats)ÚargsÚkwargsÚno_nan_and_infÚmin_and_max_not_specifieds       r   Ú_floats_wrapperr@   3   s”  € Ø�&ÒœZ×/Ñ/×@Ñ@À:ÓMð ˜VÐ#Ò?¨F°;Ñ,?Ð(?ò 'Ø Ð&ò-à &Ð(ÒI°Ð8HÑ1IÐ-Iò ,Ø VÐ+ð	 	ô �‹I˜‰Nò &Ø˜vÐ%ò&à˜vÐ%ð 	"ò
 Ò7Ø�g‰ "Ò$Ü&+§k¡k´%·-±-Ó&@×&DÑ&D��{Ñ#Ü&+§k¡k´%·-±-Ó&@×&DÑ&D��{Ò#Ø˜‘ BÒ&Ü&+§k¡k´%·-±-Ó&@×&DÑ&D��{Ñ#Ü&+§k¡k´%·-±-Ó&@×&DÑ&D��{Ò#Ø˜‘ BÒ&Ü&+§k¡k´%·-±-Ó&@×&DÑ&D��{Ñ#Ü&+§k¡k´%·-±-Ó&@×&DÑ&D��{Ñ#Ø�
‰
�7ÔÜ�9‰9�dÐ%˜fÑ%Ð%r   c                  ó*   — d|vrd|d<   t        | i |¤ŽS )Nr+   r1   )r@   )r<   r=   s     r   r;   r;   N   s#   € Ø�fÑØˆˆw‰Ü˜DÐ+ FÑ+Ð+r   c                 ó�   — t        |«      \  }}t        | j                  «       |k\  «       t        | j                  «       |k  «       y)NT)r)   r   r   r   )Útensorr   r'   r(   s       r   Úassume_not_overflowingrD   b   s:   € Ü-¨gÓ6Ñ€IˆyÜ
ˆ6�:‰:‹<˜9Ñ$Ô%Ü
ˆ6�:‰:‹<˜9Ñ$Ô%Ør   c                 ó0  — |€t         }t        |t        t        f«      s|f} | t	        j
                  |«      «      }t        j                  |«      }|j                  |j                  }	}t        |   }
|
�|
}n)|€|n|}|€|	n|} | t	        j                  ||¬«      «      }|€-t        j                  t        j                  «      j                  }|€-t        j                  t        j                  «      j                  } | t        ||d¬«      «      }|||fS )N)r'   r(   r1   )r'   r(   r+   )Ú_ALL_QINT_TYPESÚ
isinstanceÚlistÚtupler:   Úsampled_fromr   r   r   r   Ú_ENFORCED_ZERO_POINTÚintegersr   r   r   r;   )ÚdrawÚdtypesÚ	scale_minÚ	scale_maxÚzero_point_minÚzero_point_maxÚquantized_typeÚ
_type_infoÚqminÚqmaxÚ_zp_enforcedr!   Ú_zp_minÚ_zp_maxr    s                  r   r   r   w   sõ   € ð €~Ü ˆÜ�fœt¤U˜mÔ,Ø�ˆÙœ"Ÿ/™/¨&Ó1Ó2€Nä—‘˜^Ó,€JØ—‘ §¡ˆ$€Dô (¨Ñ7€LØÐØ!‰
à(Ð0‘$°nˆØ(Ð0‘$°nˆÙœ"Ÿ+™+°À7ÔKÓLˆ
àÐÜ—K‘K¤§¡Ó,×0Ñ0ˆ	ØÐÜ—K‘K¤§¡Ó,×0Ñ0ˆ	Ù” )°yÈÔKÓL€Eà�*˜nÐ,Ð,r   c                 ó
  ‡— |dk  sJ ‚|€t        |dz   d«      }|dk  sJ ‚|€|dz   }t        j                  t        j                  ||«      ||¬«      }‰�|j	                  ˆfd„«      } | |j                  t        «      «      S )z8Return a strategy for array shapes (tuples of int >= 1).r1   é   é   )Úmin_sizeÚmax_sizec                 ó@   •— t        t        j                  | d«      ‰k  S r   )r   ÚintÚ__mul__)ÚxÚ	max_numels    €r   r   zarray_shapes.<locals>.<lambda>¬   s   ø€ ¬v´c·k±kÀ1ÀaÓ/HÈIÑ/U€ r   )r   r:   ÚlistsrL   ÚfilterÚmaprI   )rM   Úmin_dimsÚmax_dimsÚmin_sideÚmax_siderc   Ú	candidates        ` r   Úarray_shapesrl   ¡   s‹   ø€ ð �bŠ=Ðˆ=ØÐÜ�x !‘| RÓ(ˆØ�bŠ=Ðˆ=ØÐØ˜a‘<ˆÜ—‘œŸ™ X¨xÓ8À8ÐV^Ô_€IØÐØ×$Ñ$Ó%UÓVˆ	Ù�	—‘œeÓ$Ó%Ð%r   c                 óv  — t        |t        «      r	 | |«      }n | t        j                  |«      «      }|€…|€t	        dddd¬«      } | t        j                  |||¬«      «      }t        t        j                  |«      j                  «       xs# t        j                  |«      j                  «        «       |d fS  | |«      }|€t        |«      \  }}t	        ||ddd¬«      } | t        j                  |||¬«      «      }t        ||d   «      \  }	}
t        j                  |d   d «      }|�|}
||	|
|d   ffS )	Nç    €„.Áç    €„.AFr1   ©r.   r+   ©ÚdtypeÚelementsÚshape©r/   r.   r+   r[   )rG   r
   r:   rJ   r;   ÚstnpÚarraysr   r   ÚisnanÚanyÚisinfr)   r   rK   Úget)rM   Úshapesrs   r   rr   Ú_shapeÚXr'   r(   r    ÚzpÚenforced_zps               r   rC   rC   Á   s&  € ä�&œ.Ô)Ù�f“‰á”b—o‘o fÓ-Ó.ˆØ€ØÐÜ˜d C°5ÀÔCˆHÙ”—‘ 5°8À6ÔJÓKˆÜ”B—H‘H˜Q“K—O‘OÓ%Ò:¬¯©°!«¯©Ó):Ð;Ô<Ø�$ˆwˆÙ�7‹m€GØÐÜ1°'Ó:Ñˆ	�9Ü˜) Y¸uØ$)°ô5ˆáŒT�[‰[˜u¨x¸vÔFÓG€Aä*¨1¨g°a©jÓ9�I€Eˆ2Ü&×*Ñ*¨7°1©:°tÓ<€KØÐØˆØˆu�b˜' !™*Ð%Ð%Ð%r   c                 ó–  — t        |t        «      r	 | |«      }n | t        j                  |«      «      }|€“|€t	        dddd¬«      } | t        j                  t        j                  ||¬«      «      }t        t        j                  |«      j                  «       xs# t        j                  |«      j                  «        «       |d fS  | |«      }|€t        |«      \  }}t	        ||ddd¬«      } | t        j                  t        j                  ||¬«      «      }t        ||d   «      \  }}	t        j!                  |d   d «      }
|
�|
}	t#        t        j$                  j'                  d	|j(                  d
«      «      }t        j*                  |j(                  «      }||d	<   d	||<   t        j,                  ||«      }|||	||d   ffS )Nrn   ro   Fr1   rp   rq   ru   r[   r   r   )rG   r
   r:   rJ   r;   rv   rw   r   r   r   rx   ry   rz   r)   r   rK   r{   r`   ÚrandomÚrandintÚndimÚarangeÚ	transpose)rM   r|   rs   r   r}   r~   r'   r(   r    r   r€   ÚaxisÚpermute_axess                r   Úper_channel_tensorr‰   Ú   s†  € ä�&œ.Ô)Ù�f“‰á”b—o‘o fÓ-Ó.ˆØ€ØÐÜ˜d C°5ÀÔCˆHÙ”—‘¤2§:¡:¸ÈÔOÓPˆÜ”B—H‘H˜Q“K—O‘OÓ%Ò:¬¯©°!«¯©Ó):Ð;Ô<Ø�$ˆwˆÙ�7‹m€GØÐÜ1°'Ó:Ñˆ	�9Ü˜) Y¸uØ$)°ô5ˆáŒT�[‰[œrŸz™z°HÀFÔKÓL€Aä6°q¸'À!¹*ÓE�I€Eˆ2Ü&×*Ñ*¨7°1©:°tÓ<€KØÐØˆäŒr�y‰y× Ñ   A§F¡F¨AÓ.Ó/€DÜ—9‘9˜QŸV™VÓ$€LØ€L��OØ€L�ÑÜ
�‰�Q˜Ó%€Aàˆu�b˜$ ¨¡
Ð+Ð+Ð+r   c                 ó¨  —  | t        j                  |Ž «      } | t        j                  |Ž «      } | t        j                  |Ž «      } | t        j                  d|«      «      }||z  }||z  }t        |t        «      r | t        j                  |«      «      }t        |«      D �cg c]  } | t        j                  |Ž «      ‘Œ }}t        |«      D �cg c]  } | t        j                  |Ž «      ‘Œ }}d}||ft        |«      z   }|}|r. | t        j                  «       «      }|r||ft        |«      z   }|}|
�1t        |
t        t        f«      rt        |
«      dk(  sJ d«       ‚|
gdz  }
 | t        ||ft        |«      z   f|	|
d   ¬«      «      } | t        |f|	|
d   ¬«      «      } | t        |f|	|
d   ¬«      «      }|||||fS c c}w c c}w )Nr   Fr,   zNeed 3 qparams for X, w, br   )r|   rs   r   r[   )r:   rL   rG   r   rJ   ÚrangerI   ÚbooleansrH   r6   rC   )rM   Úspatial_dimÚbatch_size_rangeÚinput_channels_per_group_rangeÚoutput_channels_per_group_rangeÚfeature_map_rangeÚkernel_rangeÚ
max_groupsÚcan_be_transposedrs   r   Ú
batch_sizeÚinput_channels_per_groupÚoutput_channels_per_groupÚgroupsÚinput_channelsÚoutput_channelsÚ_Úfeature_map_shapeÚkernelsÚtrÚweight_shapeÚ
bias_shaper~   ÚWÚbs                             r   Útensor_convr£   )  sï  € ñ ”b—k‘kÐ#3Ð4Ó5€JÙ#Ü
�‰Ð3Ð4ó 6Ðá $Ü
�‰Ð4Ð5ó!7Ðá”"—+‘+˜a Ó,Ó-€FØ-°Ñ6€NØ/°&Ñ8€Oä�+œxÔ(Ùœ2Ÿ?™?¨;Ó7Ó8ˆäHMÈkÓHZÖ[À1™œbŸk™kÐ+<Ð=Õ>Ð[ÐÐ[ä9>¸{Ó9KÖL°A‰t”B—K‘K Ð.Õ/ÐL€GÐLà	€BØ#Ð%=Ð>ÄÀwÃÑO€LØ €JÙÙ”"—+‘+“-Ó ˆÙØ*Ð,EÐFÌÈwËÑWˆLØ(ˆJð ÐÜ�g¤¤e˜}Ô-Ü�w“< 1Ò$ÐBÐ&BÓBÐ$à�i !‘mˆGáŒVØ	�^Ð$¤uÐ->Ó'?Ñ?ðBà 7¨1¡:ô/ó 	0€Añ 	ŒV˜L˜?°XØ# A™Jô(ó 	)€AáŒV˜J˜=°8Ø# A™Jô(ó 	)€Að ˆa��F˜BÐÐùò9 \ùâLs   Â'G
ÃGÚdeadline)r,   r0   r   )r\   r   r   Útimeoutc                  ó”   — t         dk  r)dd l} dt        j                  › �}| j	                  |«       y t        «       j                  �J ‚y )N)r,   é   r   r   zwYour version of hypothesis is outdated. To avoid `DeadlineExceeded` errors, please update. Current hypothesis version: )Úhypothesis_versionÚwarningsr3   Ú__version__Úwarnr   r¤   )r©   Úwarning_messages     r   Úassert_deadline_disabledr­   e  sK   € Ü˜JÒ&Ûð+ä+5×+AÑ+AÐ*BðDð 	ð
 	�‰�oÕ&ä‹z×"Ñ"Ð*Ð*Ñ*r   )NNNNN)r   Nr   NN)NNN)
r[   )r   é   ©r,   é   r¯   )é   é   r¯   r   FNN).Úcollectionsr   Úcollections.abcr   r	   r   r   r3   Ú	functoolsr   r   r   r   r:   Úhypothesis.extrarv   Úhypothesis.strategiesr
   Ú(torch.testing._internal.common_quantizedr   r   Úquint8Úqint8Úqint32rF   rK   r)   r@   r;   rD   Ú	compositer   rl   r   rC   r‰   r£   r4   r5   r¨   Ú	_profilesÚ_current_profileÚ__dict__Úcurrent_settingsÚ	unlimitedr­   r   r   r   ú<module>rÂ      s£  ðõ $Ý $Û Û ã Ý Ý Ý Ý 'Ý *Ý 0ç wð 
‡L�LØ	‡K�KØ	‡L�Lð€ñ #¡<Ø	‡L�L�$Ø	‡K�K�Ø	‡L�L�!ð2ó Ð ò8ò&ò6,ð
òðð ‡�Ø9=Ø04ò-ó ð-ð8ð ‡�ò&ó ð&ðð" ‡�Ø t°TÀÇÁò &ó ð&ð0 ‡�ò,ó ð,ð>.ð^ ‡�à*0Ø#)Ø>EØ9>Øò1ó ð1ðl  ×'Ñ'×8Ñ8Ð Ø×%Ñ% h×&?Ñ&?Ñ@×IÑIÐ Ø#Ð �Ñ Ø˜Ò#Ð(:¸YÒ(FØ",×"6Ñ"6Ð�YÑó
+r   