+
    '(jc                         ^RI Ht ^ RIHtHt ^ RIHtHtHtH	t	H
t
Ht ^ RIHt Rt]! R]4      tRRR	]	/t ! R
 R]4      tR# )   )IntegerNative)long_to_bytesbytes_to_long)load_pycryptodome_raw_libcreate_string_bufferget_raw_bufferbackendc_size_tc_ulonglong)getrandbitsa  
int monty_pow(uint8_t       *out,
              const uint8_t *base,
              const uint8_t *exp,
              const uint8_t *modulus,
              size_t        len,
              uint64_t      seed);

int monty_multiply(uint8_t       *out,
                   const uint8_t *term1,
                   const uint8_t *term2,
                   const uint8_t *modulus,
                   size_t        len);
zCrypto.Math._modexplibrarycustomapic                   N   a  ] tR t^?t o ]RR l4       tRR lt]R 4       tRtV t	R# )IntegerCustomc                    VR 8X  d   M.VR8X  d   \        V 4      p V P                  4        M\        R4      h\        \	        V 4      4      # )biglittlezIncorrect byteorder)	bytearrayreverse
ValueErrorr   r   )byte_string	byteorders   &&O/home/ubuntu/cf-venv/lib/python3.14/site-packages/Crypto/Math/_IntegerCustom.py
from_bytesIntegerCustom.from_bytesA   sG    ("#K0K!233];788    Nc                   \        V4      pV^ 8  d   \        R4      hVf   \        V P                  V4      V n        V # \        V4      pV^ 8  d   \        R4      hV^ 8X  d   \	        R4      hV^,          ^ 8X  d   \        V P                  W44      V n        V # V P                  V8  d   V ;P                  V,          un        \        \        \        V P                  W44      4      4      p\        V P                  V4      p\        W54      p\        WE4      p\        V4      p	\        P                  V	VVV\        V4      \        \        ^@4      4      4      p
V
'       d   \        RV
,          4      h\        \        V	4      4      pWn        V # )    zExponent must not be negativeModulus must be positiveModulus cannot be zerozmonty_pow failed with error: %d)intr   pow_valueZeroDivisionErrorlenr   maxr   _raw_montgomery	monty_powr
   r   r   r   r   )selfexponentmodulus	exp_value	mod_valuemax_lenbase_bexp_b	modulus_bouterrorresults   &&&         r   inplace_powIntegerCustom.inplace_powL   sU   M	q=<== ?dkk95DKK L	q=788>#$<== Madkk9@DKK ;;)#KK9$KmCY$JKLt{{G4i1!)5	"7+))W%B0 >FGG~c23r   c           	        \        V4      pV^ 8  d   \        R4      hV^ 8X  d   \        R4      hV^,          ^ 8X  d   \        R4      hW8  g   V ^ 8  d	   W,          p W8  g   V^ 8  d	   W,          p\        V4      p\	        V4      p\        W4      p\        W4      p\        V4      p\        P                  VVVV\        V4      4      p	V	'       d   \        RV	,          4      h\        V4      # )r   r    r!   zOdd modulus is requiredz$monty_multiply failed with error: %d)
r"   r   r%   r   r&   r   r(   monty_multiplyr
   r   )
term1term2r,   r.   r2   numbers_lenterm1_bterm2_br3   r4   s
   &&&       r   _mult_modulo_bytes IntegerCustom._mult_modulo_bytes~   s     L	q=788>#$<== Ma677 EE!),	)n33";/..[) CeKLLc""r   )r$   )r   )N)
__name__
__module____qualname____firstlineno__staticmethodr   r6   r?   __static_attributes____classdictcell__)__classdict__s   @r   r   r   ?   s1     9 90d ## ##r   r   N)_IntegerNativer   Crypto.Util.numberr   r   Crypto.Util._raw_apir   r   r   r	   r
   r   Crypto.Random.randomr   c_defsr(   implementationr    r   r   <module>rP      sN   > * ;9 9 -
  ,,A6JXug6c#M c#r   