+
    1j                    Z   ^ RI Ht ^ RIt^ RIHt ^ RIHtHt ^ RIH	t	H
t
  ! R R]P                  R7      t ! R	 R
]]P                  R7      t ! R R]]P                  R7      t ! R R]]P                  R7      t ! R R]]P                  R7      tR R ltR R ltR R ltR R ltR# )    )annotationsN)utils)UnsupportedAlgorithm_Reasons)BlockCipherAlgorithmCipherAlgorithmc                  t    ] tR t^t]]P                  R R l4       4       t]P                  R R l4       tRt	R# )Modec                   V ^8  d   QhRR/# )   returnstr )formats   "Elib/python3.14/site-packages/cryptography/hazmat/primitives/_modes.py__annotate__Mode.__annotate__   s      c     c                    R# )z0
A string naming this mode (e.g. "ECB", "CBC").
Nr   selfs   &r   name	Mode.name       r   c                    V ^8  d   QhRRRR/# )r   	algorithmr   r   Noner   )r   s   "r   r   r      s       D r   c                    R# )zY
Checks that all the necessary invariants of this (mode, algorithm)
combination are met.
Nr   r   r   s   &&r   validate_for_algorithmMode.validate_for_algorithm   r   r   r   N)
__name__
__module____qualname____firstlineno__propertyabcabstractmethodr   r    __static_attributes__r   r   r   r
   r
      s<      
 	 r   r
   )	metaclassc                  J    ] tR t^!t]]P                  R R l4       4       tRtR# )ModeWithInitializationVectorc                   V ^8  d   QhRR/# r   r   utils.Bufferr   )r   s   "r   r   )ModeWithInitializationVector.__annotate__$   s      | r   c                    R# )z@
The value of the initialization vector for this mode as bytes.
Nr   r   s   &r   initialization_vector2ModeWithInitializationVector.initialization_vector"   r   r   r   N)	r"   r#   r$   r%   r&   r'   r(   r2   r)   r   r   r   r,   r,   !   "      r   r,   c                  J    ] tR t^*t]]P                  R R l4       4       tRtR# )ModeWithTweakc                   V ^8  d   QhRR/# r.   r   )r   s   "r   r   ModeWithTweak.__annotate__-         | r   c                    R# )z0
The value of the tweak for this mode as bytes.
Nr   r   s   &r   tweakModeWithTweak.tweak+   r   r   r   N)	r"   r#   r$   r%   r&   r'   r(   r;   r)   r   r   r   r6   r6   *   r4   r   r6   c                  J    ] tR t^3t]]P                  R R l4       4       tRtR# )ModeWithNoncec                   V ^8  d   QhRR/# r.   r   )r   s   "r   r   ModeWithNonce.__annotate__6   r9   r   c                    R# )z0
The value of the nonce for this mode as bytes.
Nr   r   s   &r   nonceModeWithNonce.nonce4   r   r   r   N)	r"   r#   r$   r%   r&   r'   r(   rB   r)   r   r   r   r>   r>   3   r4   r   r>   c                  J    ] tR t^<t]]P                  R R l4       4       tRtR# )ModeWithAuthenticationTagc                   V ^8  d   QhRR/# )r   r   zbytes | Noner   )r   s   "r   r   &ModeWithAuthenticationTag.__annotate__?   s      \ r   c                    R# )z@
The value of the tag supplied to the constructor of this mode.
Nr   r   s   &r   tagModeWithAuthenticationTag.tag=   r   r   r   N)	r"   r#   r$   r%   r&   r'   r(   rI   r)   r   r   r   rE   rE   <   r4   r   rE   c               $    V ^8  d   QhRRRRRR/# )r   r   r
   r   r   r   r   r   )r   s   "r   r   r   E   s!     
 
 
 
T 
r   c                d    VP                   R 8  d   VP                  R8X  d   \        R4      hR# R# )   AESz=Only 128, 192, and 256 bit keys are allowed for this AES modeN)key_sizer   
ValueErrorr   s   &&r   _check_aes_key_lengthrQ   E   s3    CINNe$;K
 	
 %<r   c               $    V ^8  d   QhRRRRRR/# )r   r   r,   r   r   r   r   r   )r   s   "r   r   r   L   s)     I I
&I3GI	Ir   c                    \        V P                  4      pV^,          VP                  8w  d   \        RV RV P                   R24      hR# )   zInvalid IV size () for .N)lenr2   
block_sizerP   r   )r   r   iv_lens   && r   _check_iv_lengthrZ   L   sJ     ++,FzY))),VHF499+QGHH *r   c               (    V ^8  d   QhRRRRRRRR/# )	r   rB   r/   r   r   r   r   r   r   r   )r   s   "r   r   r   T   s2     	K 	K	K"	K/>	K		Kr   c                    \        V\        4      '       g   \        V R 2\        P                  4      h\        V 4      ^,          VP                  8w  d   \        R\        V 4       RV R24      hR# )" requires a block cipher algorithmzInvalid nonce size (rU   rV   N)
isinstancer   r   r   UNSUPPORTED_CIPHERrW   rX   rP   )rB   r   r   s   &&&r   _check_nonce_lengthr`   T   so     i!566"f67''
 	
 5zA~---/E
|6$qIJJ .r   c               $    V ^8  d   QhRRRRRR/# )r   r   r,   r   r   r   r   r   )r   s   "r   r   r   `   s$     	& 	&
&	&3B	&		&r   c                    \        V\        4      '       g   \        V  R 2\        P                  4      h\        W4       \        W4       R# )r]   N)r^   r   r   r   r_   rQ   rZ   r   s   &&r   _check_iv_and_key_lengthrc   `   sE     i!566"f67''
 	
 $*T%r   )
__future__r   r'   cryptographyr   cryptography.exceptionsr   r   /cryptography.hazmat.primitives._cipheralgorithmr   r   ABCMetar
   r,   r6   r>   rE   rQ   rZ   r`   rc   r   r   r   <module>ri      s   
 # 
  BS[[  43;; DCKK DCKK  
I	K	&r   