
    i                     F    S \ S\S\ 4S jrS\S\S\4S jrS\S\S\4S jrg	)
datalengthreturnc                     U[        U 5      :  a  [        S[        U 5       SU 35      eU[        U 5      :  a  U SU[        U 5      -
  -  -   n [        U 5      U:X  d   eU $ )a  Returns the input followed by enough zero bytes to become the requested length.

Args:
    data: The data to pad.
    length: The length of the returned data.
Returns:
    The padded data.
Raises:
    ValueError: If the requested length is less than the input length.
zData length z > padded length     )len
ValueError)r   r   s     a/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/executorch/exir/_serialize/padding.pypad_tor
   
   sh     D	<D	{2CF8LMMD	g#d)!344t9K    offset	alignmentc                      X-  nUS:w  a  X-
  $ g)z>Returns the padding required to align `offset` to `alignment`.     )r   r   	remainders      r	   padding_requiredr      s    'IA~$$r   
input_sizec                     U [        X5      -   $ )zEReturns input_size padded up to the next whole multiple of alignment.)r   )r   r   s     r	   aligned_sizer   %   s    (???r   N)bytesintr
   r   r   r   r   r	   <module>r      sW      &S S S @S @S @S @r   