
    )i!
                     v    S SK r S SKrS SKJr  S rS rSS jrS r " S S5      r	 " S S	5      r
S
 rS rS rg)    Nc                     [        U 5      S:w  a  [        S5      e[        S U  5       5      (       d  [        S5      eU u  p#pEU(       a  XTX24OXRX44nSnSnU H  n	XyU-  -  nUS-  nM     U$ )N   z'Color must consist of exactly 4 values.c              3   L   #    U  H  nS Us=:*  =(       a    S:*  Os  v   M     g7f)r      N ).0cs     X/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/pypdfium2/internal/utils.py	<genexpr>color_tohex.<locals>.<genexpr>   s     ,eqA}}}}es   "$zColor value exceeds boundaries.r         )len
ValueErrorall)
colorrev_byteorderrgbachannelsc_colorshiftr	   s
             r
   color_tohexr   	   s    
5zQBCC,e,,,:;; JA!,a|1,HGE:
  N    c           
      L    [        X[        [        X5      5      " U5      5        g N)setattrtypegetattr)structfnamecallbacks      r
   set_callbackr%      s    F4!79(CDr   c                    ^  / n[        U5      R                  [        S5      5      (       d   eSU;   a  U/ SQ-  nSU;   a  US/-  n[        U 4S jU 5       5      $ )Nrwr   )seektellreadreadintowwritec              3   P   >#    U  H  n[        [        TUS 5      5      v   M     g 7fr   )callabler!   )r   r   bufs     r
   r   is_stream.<locals>.<genexpr>(   s"     @1xQ-..s   #&)setissubsetr   )r0   specmethodss   `  r
   	is_streamr6   !   s]    Gt9s4y****
d{77
d{G9@@@@r   c                 |    U R                   n[        U5      U-  R                  [        R                  " U5      5      $ r   )contentsr    from_addressctypes	addressof)ptrsizeobjs      r
   
get_bufferr?   +   s0    
,,CI**F,<,<S,ACCr   c                        \ rS rSrS rS rSrg)_buffer_reader0   c                     Xl         g r   	py_bufferselfrE   s     r
   __init___buffer_reader.__init__2       "r   c                     [        X45      nU R                  R                  U5        U R                  R                  U5        gN   )r?   rE   r(   r+   )rG   _positionp_buf_firstr=   c_buffers         r
   __call___buffer_reader.__call__5   s3    k0H%)r   rD   N__name__
__module____qualname____firstlineno__rH   rR   __static_attributes__r   r   r
   rA   rA   0       #r   rA   c                        \ rS rSrS rS rSrg)_buffer_writer<   c                     Xl         g r   rD   rF   s     r
   rH   _buffer_writer.__init__>   rJ   r   c                     [         R                  " U[         R                  " [         R                  5      5      n[	        X#5      nU R
                  R                  U5        grL   )r:   castPOINTERc_ubyter?   rE   r-   )rG   rN   p_data_firstr=   rQ   s        r
   rR   _buffer_writer.__call__A   s>    {{<1OPl1X&r   rD   NrT   r   r   r
   r\   r\   <   rZ   r   r\   c                     U R                  S[        R                  5      nU R                  S5        [        R                  " 5       nXl        [        US[        U 5      5        S Ul        UR                  4nX#4$ )Nr   
m_GetBlock)
r(   osSEEK_ENDpdfium_cFPDF_FILEACCESS	m_FileLenr%   rA   m_Paramrg   )bufferfile_lenreaderto_holds       r
   get_bufreaderrr   H   sc    {{1bkk*H
KKN%%'F~f'=>FN  #G?r   c                 Z    [         R                  " SS9n[        US[        U 5      5        U$ )NrM   )version
WriteBlock)rj   FPDF_FILEWRITEr%   r\   )rn   writers     r
   get_bufwriterrx   W   s(    $$Q/F~f'=>Mr   c                     U (       d  g[        U 5      n[        R                  U-  " U  Vs/ s H  o"R                  PM     sn6 nX14$ s  snf )N)Nr   )r   rj   	FPDF_PAGEraw)pagescountpc_arrays       r
   pages_c_arrayr   ]   sE    JE!!E)E,BEqUUE,BCG> -Cs   A)r   )rh   r:   pypdfium2.rawr{   rj   r   r%   r6   r?   rA   r\   rr   rx   r   r   r   r
   <module>r      sJ    
   (EAD
	 		 	r   