§
    2�Åj¿  ã                  óª   — d dl mZ d dlZd dlZd dlmZ 	 ddd„Z G d„ de¦  «        Z G d„ de¦  «        Z	 G d„ de¦  «        Z
 G d„ de¦  «        ZdS )é    )ÚannotationsN)ÚOpRunÚupÚxú
np.ndarrayÚtoúonnx.TensorProto.DataTypeÚsaturateÚboolÚ
round_modeÚstrc                ó0  — |t           j        j        k    r|                      t          j        ¦  «        S t           j                             |¦  «        }|t           j        j        t           j        j	        t           j        j
        t           j        j        hv r"|r t           j                             | |¦  «        S |t           j        j        k    r4t           j                             | ||¦  «                             |¦  «        S |                      |¦  «        S ©N)ÚonnxÚTensorProtoÚSTRINGÚastypeÚnpÚstr_ÚhelperÚtensor_dtype_to_np_dtypeÚFLOAT8E4M3FNÚFLOAT8E4M3FNUZÚ
FLOAT8E5M2ÚFLOAT8E5M2FNUZÚnumpy_helperÚsaturate_castÚ
FLOAT8E8M0Úto_float8e8m0)r   r   r
   r   Údtypes        úKC:\Projects\Historical\venv\Lib\site-packages\onnx/reference/ops/op_cast.pyÚcast_tor"      sã   € ð 
�TÔÔ$Ò$Ð$Ø�xŠx�œÑ Ô Ð åŒK×0Ò0°Ñ4Ô4€Eà
åÔÔ)ÝÔÔ+ÝÔÔ'ÝÔÔ+ð	
ð	
ð 	
ð ð	
õ Ô ×.Ò.¨q°%Ñ8Ô8Ð8à	�TÔÔ(Ò(Ð(ÝÔ ×.Ò.¨q°(¸JÑGÔG×NÒNÈuÑUÔUÐUà�8Š8�E‰?Œ?Ðó    c                  ó   — e Zd Zdd„ZdS )ÚCast_1Nc                ó*   — t          ||dd¬¦  «        fS )NTr   )r
   r   ©r"   )Úselfr   r   s      r!   Ú_runzCast_1._run&   s   € Ý˜˜2¨¸Ð>Ñ>Ô>Ð@Ð@r#   r   ©Ú__name__Ú
__module__Ú__qualname__r)   © r#   r!   r%   r%   %   s.   € € € € € ðAð Að Að Að Að Ar#   r%   c                  ó   — e Zd Zdd„ZdS )ÚCast_19Nc                ó*   — t          |||d¬¦  «        fS )Nr   )r   r'   )r(   r   r   r
   s       r!   r)   zCast_19._run+   s   € Ý˜˜2˜x°DÐ9Ñ9Ô9Ð;Ð;r#   )NNr*   r.   r#   r!   r0   r0   *   s(   € € € € € ð<ð <ð <ð <ð <ð <r#   r0   c                  ó   — e Zd Zdd„ZdS )ÚCast_24Nc                ó(   — t          ||||¦  «        fS r   r'   ©r(   r   r   r
   r   s        r!   r)   zCast_24._run0   ó   € Ý˜˜2˜x¨Ñ4Ô4Ð6Ð6r#   ©NNNr*   r.   r#   r!   r3   r3   /   ó(   € € € € € ð7ð 7ð 7ð 7ð 7ð 7r#   r3   c                  ó   — e Zd Zdd„ZdS )ÚCast_25Nc                ó(   — t          ||||¦  «        fS r   r'   r5   s        r!   r)   zCast_25._run5   r6   r#   r7   r*   r.   r#   r!   r:   r:   4   r8   r#   r:   )r   )r   r   r   r	   r
   r   r   r   )Ú
__future__r   Únumpyr   r   Úonnx.reference.op_runr   r"   r%   r0   r3   r:   r.   r#   r!   ú<module>r?      s  ðð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð à €€€Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'ð UYðð ð ð ð ð2Að Að Að Að AˆUñ Aô Að Að
<ð <ð <ð <ð <ˆeñ <ô <ð <ð
7ð 7ð 7ð 7ð 7ˆeñ 7ô 7ð 7ð
7ð 7ð 7ð 7ð 7ˆeñ 7ô 7ð 7ð 7ð 7r#   