
    SAi:                         S r SSKrSSKJr  SSKJr  \R                  " S5      r\R                  " S5      rS\	S\	4S	 jr
\R                  " S
5      rS\	S\	4S jrg)zBPython implementation of ASCII85/ASCIIHex decoder (Adobe version).    N)	a85decode)	unhexlifys   ^\s*<?\s*~\s*s   \s*~\s*>?\s*$datareturnc                 p    [         R                  SU 5      n [        R                  SU 5      n [        U 5      $ )a  In ASCII85 encoding, every four bytes are encoded with five ASCII
letters, using 85 different types of characters (as 256**4 < 85**5).
When the length of the original bytes is not a multiple of 4, a special
rule is used for round up.

Adobe's ASCII85 implementation expects the input to be terminated
by `b"~>"`, and (though this is absent from the PDF spec) it can
also begin with `b"<~"`.  We can't reliably expect this to be the
case, and there can be off-by-one errors in stream lengths which
mean we only see `~` at the end.  Worse yet, `<` and `>` are
ASCII85 digits, so we can't strip them.  We settle on a compromise
where we strip leading `<~` or `~` and trailing `~` or `~>`.
    )start_resubend_rer   )r   s    L/var/www/html/land-ocr/venv/lib/python3.13/site-packages/pdfminer/ascii85.pyascii85decoder      s.     <<T"D::c4 DT?r   s   \sc                     [         R                  SU 5      n U R                  S5      nUS:w  a  U SU n US-  S:X  a  U S-  n [        U 5      $ )a  ASCIIHexDecode filter: PDFReference v1.4 section 3.3.1
For each pair of ASCII hexadecimal digits (0-9 and A-F or a-f), the
ASCIIHexDecode filter produces one byte of binary data. All white-space
characters are ignored. A right angle bracket character (>) indicates
EOD. Any other characters will cause an error. If the filter encounters
the EOD marker after reading an odd number of hexadecimal digits, it
will behave as if a 0 followed the last digit.
r      >N         0)bws_rer
   findr   )r   idxs     r   asciihexdecoder   !   sQ     ::c4 D
))D/C
byDSz7a<DLDT?r   )__doc__rebase64r   binasciir   compiler	   r   bytesr   r   r    r   r   <module>r      se    H 	  ::'(	%	& % & 
F	 5 r   