§
    Ë²Åj  ã                   óV   — d Z ddlmc mZ ddlmZ  G d„ d¦  «        Z e¦   «         ZdS )zïGlobals used internally by the ONNX exporter.

Do not use this module outside of `torch.onnx` and its tests.

Be very judicious when adding any new global variables. Do not create new global
variables unless they are absolutely necessary.
é    N)Ú
_constantsc                   ó&  — e Zd ZdZdd„Zed„ ¦   «         Zej        dej	        fd„¦   «         Zede
fd„¦   «         Zej        d	e
fd
„¦   «         Zedefd„¦   «         Zej        d	efd„¦   «         Zedefd„¦   «         Zej        d	efd„¦   «         ZdS )Ú_InternalGlobalsz·Globals used internally by ONNX exporter.

    NOTE: Be very judicious when adding any new variables. Do not create new
    global variables unless they are absolutely necessary.
    ÚreturnNc                 ó¸   — t           j        | _        t          j        j        | _        d| _        d| _        t          j	        j
        | _        d| _        d| _        d S )NFT)r   ÚONNX_DEFAULT_OPSETÚ_export_onnx_opset_versionÚ_C_onnxÚTrainingModeÚEVALÚ_training_modeÚ_in_onnx_exportÚexport_trainingÚOperatorExportTypesÚONNXÚoperator_export_typeÚonnx_shape_inferenceÚ_autograd_inlining©Úselfs    úDC:\Projects\Historical\venv\Lib\site-packages\torch/onnx/_globals.pyÚ__init__z_InternalGlobals.__init__   sT   € Ý*4Ô*GˆÔ'Ý4;Ô4HÔ4MˆÔØ%*ˆÔà%*ˆÔåÔ'Ô,ð 	Ô!ð +/ˆÔ!Ø(,ˆÔÐÐó    c                 ó   — | j         S )z#The training mode for the exporter.)r   r   s    r   Útraining_modez_InternalGlobals.training_mode$   s   € ð Ô"Ð"r   r   c                 óf   — t          |t          j        ¦  «        st          d¦  «        ‚|| _        d S )Nz\training_mode must be of type 'torch.onnx.TrainingMode'. This is likely a bug in torch.onnx.)Ú
isinstancer
   r   Ú	TypeErrorr   )r   r   s     r   r   z_InternalGlobals.training_mode)   s>   € å˜-­Ô)=Ñ>Ô>ð 	Ýð.ñô ð ð ,ˆÔÐÐr   c                 ó   — | j         S )z!Opset version used during export.)r	   r   s    r   Úexport_onnx_opset_versionz*_InternalGlobals.export_onnx_opset_version2   s   € ð Ô.Ð.r   Úvaluec                 óŽ   — t          t          j        t          j        dz   ¦  «        }||vrt	          d|› �¦  «        ‚|| _        d S )Né   z Unsupported ONNX opset version: )Úranger   ÚONNX_MIN_OPSETÚONNX_MAX_OPSETÚ
ValueErrorr	   )r   r!   Úsupported_versionss      r   r    z*_InternalGlobals.export_onnx_opset_version7   sU   € å"ÝÔ%¥zÔ'@À1Ñ'Dñ
ô 
Ðð Ð*Ð*Ð*ÝÐGÀÐGÐGÑHÔHÐHØ*/ˆÔ'Ð'Ð'r   c                 ó   — | j         S )z+Whether it is in the middle of ONNX export.)r   r   s    r   Úin_onnx_exportz_InternalGlobals.in_onnx_export@   s   € ð Ô#Ð#r   c                 ó^   — t          |¦  «        t          urt          d¦  «        ‚|| _        d S )Nz in_onnx_export must be a boolean)ÚtypeÚboolr   r   ©r   r!   s     r   r*   z_InternalGlobals.in_onnx_exportE   s0   € å�‰;Œ;�dÐ"Ð"ÝÐ>Ñ?Ô?Ð?Ø$ˆÔÐÐr   c                 ó   — | j         S )z!Whether Autograd must be inlined.)r   r   s    r   Úautograd_inliningz"_InternalGlobals.autograd_inliningK   s   € ð Ô&Ð&r   c                 ó^   — t          |¦  «        t          urt          d¦  «        ‚|| _        d S )Nz#autograd_inlining must be a boolean)r,   r-   r   r   r.   s     r   r0   z"_InternalGlobals.autograd_inliningP   s0   € å�‰;Œ;�dÐ"Ð"ÝÐAÑBÔBÐBØ"'ˆÔÐÐr   )r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úpropertyr   Úsetterr
   r   Úintr    r-   r*   r0   © r   r   r   r      sq  € € € € € ðð ð
-ð 
-ð 
-ð 
-ð ð#ð #ñ „Xð#ð Ôð,¨7Ô+?ð ,ð ,ð ,ñ Ôð,ð ð/¨3ð /ð /ð /ñ „Xð/ð Ô%ð0¨sð 0ð 0ð 0ñ &Ô%ð0ð ð$ ð $ð $ð $ñ „Xð$ð Ôð% Dð %ð %ð %ñ Ôð%ð
 ð' 4ð 'ð 'ð 'ñ „Xð'ð Ôð( tð (ð (ð (ñ Ôð(ð (ð (r   r   )	r5   Útorch._C._onnxÚ_CÚ_onnxr
   Ú
torch.onnxr   r   ÚGLOBALSr9   r   r   ú<module>r?      s…   ððð ð !Ð  Ð  Ð  Ð  Ð  Ð  Ð  Ð  ð "Ð !Ð !Ð !Ð !Ð !ðC(ð C(ð C(ð C(ð C(ñ C(ô C(ð C(ðL Ð
Ñ
Ô
€€€r   