
    j:j4                        % S SK Jr  S SK Jr  S SKJr  S SKJrJrJ	r	  SSK
JrJr  SSKJrJr  SSKJr  SS	KJrJrJrJrJr  0 S
S_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS S SSS!.Er\\\4   \S"'   S#\S$\\\\\\4   4   \\\4   4   4S% jrS#\S$\\\\\4   4   4S& jrS#\S$\\\\4   \ \   4   4S' jr!S#\S$\"4S( jr#S)\"S*\$S+\$S,\S-\\\4   4   S.\\\4   S/\ \   S$\\$\$\S-\\\4   4   4   4S0 jr%S1r&S2\S$S-4S3 jr'S)\"S.\\\4   S/\ \   S,\S-\\\4   4   S$\S-\\\4   4   4
S4 jr(S)\"S.\\\4   S/\ \   S$S-4S5 jr)S#\S.\\\4   S/\ \   S$\\\\4   \ \   4   4S6 jr*g-)7    )Error)	unhexlify)ceil)AnyUnioncast   )adobe_glyphscharset_encoding)logger_errorlogger_warning)LimitReachedError)DecodedStreamObjectDictionaryObject
NullObjectStreamObjectis_null_or_nonez/Identity-H	utf-16-bez/Identity-Vz	/GB-EUC-Hgbkz	/GB-EUC-Vz/GBpc-EUC-Hgb2312z/GBpc-EUC-Vz
/GBK-EUC-Hz
/GBK-EUC-Vz/GBK2K-Hgb18030z/GBK2K-Vz
/ETen-B5-Hcp950z
/ETen-B5-Vz/ETenms-B5-Hz/ETenms-B5-Vz/UniCNS-UTF16-Hz/UniCNS-UTF16-Vz/UniGB-UTF16-Hcp932)z/UniGB-UTF16-Vz/90ms-RKSJ-Hz/90ms-RKSJ-Vz/UniJIS-UTF16-Hz/UniJIS-UTF16-V_predefined_cmapftreturnc                     [        U 5      n[        U 5      u  p#[        U[        5      (       a  U H  nUS::  d  M  [	        U5      X'   M     X4$ )N   )_parse_encoding_parse_to_unicode
isinstancedictchr)r   encodingmap_dict	int_entryxs        A/var/www/website/venv/lib/python3.13/site-packages/pypdf/_cmap.pyget_encodingr)   -   sQ     r"H+B/H (D!!ACx!!f      c                    / nSU ;  a]  SU ;   aS  [        [        U S   5      [        ;   a8  [        [	        [        S5      [        [        [        U S   5         5      5      nU$ SnU$ [        [        [        [        [        4   U S   R                  5       5      n[        U[        5      (       aK   U[        ;   a  [        U   R                  5       nOU[        ;   a
  [        U   nOpSU;   a  SnOg[        S5      e[        U[        5      (       a0  S
U;   a*   [        [        [        US
   5         R                  5       nO[        S   R                  5       n[        U[        5      (       a[  SU;   aU  Sn[        [        US   5       H<  n[        U[         5      (       a  UnM   U[#        U5      :  a  [$        U   X'   US-  nM>     [        U[&        5      (       a  [        [	        [        S5      U5      5      nU$ ! [         a    [        S[        US	9  Un Nf = f! [         a)    [        S[        US	9  [        S   R                  5       n Nf = f! [         a    XAU'    Nf = f)Nz	/Encodingz	/BaseFont   charmapz-UCS2-r   z	not foundz2Advanced encoding %(encoding)s not implemented yet)sourcer$   z/BaseEncodingz/StandardEncodingz/Differencesr   r	   )r   strr   r"   zipranger   r   r   
get_objectr!   copyr   	Exceptionr   __name__intlenr
   list)r   r$   encr'   os        r(   r   r   ?   sF    79H""c2k?!;?O!OE#J 0c2k?1K LMH
  !H48c#Z/0"[/2L2L2N5C #s	 &&+C0557((+C0S&,, 
C)	*	*#/E	D'S#o2F(GHMMOH $$78==?#'((^s-B&N(;<A!S!!$3x=(&21o Q = (D!!E#J12O;  	MV^ilmH	  	DD( ((;<AACH	D$ ! $"#QK$sH   /!G: G: %G: .G: (H "I:HH0III"!I"c           	      "   0 n/ nSU ;  a&  U R                  SS5      S:X  a  [        XU5      $ 0 / 4$ SnSnS n[        U 5      nUR                  S5       H%  n[	        UR                  S5      UUUUU5      u  p4nM'     UR                  SS 5        X4$ )	N
/ToUnicodez/Subtype z/Type1F   
s    	)get_type1_alternative
prepare_cmsplitprocess_cm_linestrippop)r   r%   r&   
process_rgprocess_charmultiline_rgcmlines           r(   r    r    z   s    
  "H I266*b!X-%bI>>2vJL 	  
BB1@JJv2
.
,   LLTr*   c                     U S   n[        U[        5      (       a"  [        [        U S   5      R	                  5       nOSn[        U[
        5      (       a  UR                  5       nUR                  5       R                  SS5      R                  SS5      R                  SS5      R                  S	S
5      R                  SS5      R                  SS5      nUR                  S5      n[        [        U5      5       HP  nX4   R                  S5      nUS:  d  M  US:X  a  SnOX4   S U R                  SS5      nUS-   X4   US-   S  -   X4'   MR     SR                  U5      R                  SS5      R                  SS5      R                  SS5      nU$ )Nr<   s,   beginbfrange
<0000> <0001> <0000>
endbfrange   beginbfchars   
beginbfchar
	   endbfchars   
endbfchar
   beginbfranges   
beginbfrange

   endbfranges   
endbfrange
s   <<s   
{
s   >>s   
}
   <   >r      .    r*   r	      [s    [    ]s    ]
    r>   )r!   r   r   r   get_datar/   encoderE   replacerC   r1   r7   findjoin)r   turJ   llijcontents          r(   rB   rB      sh   	L	B"l##%r,'78AAC ?"cYY[ 	
	!3	4	/	0	"5	6	 1	2		!		!  
$B3r7^EJJt6Av %)++D#6dNRU1q57^3BE  
2	v		x	 			  Ir*   rK   rG   rH   rI   Nr%   r&   c                    U S:X  d	  U S   S:X  a  XU4$ U R                  SS5      n SU ;   a  SnODSU ;   a  S	nO;S
U ;   a  SnO2SU ;   a  S	nO)U(       a   [        XXS5      nOU(       a   [        XU5        XU4$ ! [        [        4 a  n[	        S[
        XS9   S nAN(S nAff = f! [        [        4 a  n[	        S[
        XS9   S nANTS nAff = f)Nr*   r   %      	rT   rO   TrP   FrM   rN   z(Skipping broken line %(line)r: %(error)s)r.   rK   error)rZ   parse_bfrange
ValueError
IndexErrorr   r5   parse_bfchar)rK   rG   rH   rI   r%   r&   re   s          r(   rD   rD      s     s{d1gm55<<t$D$
	$	
	4					p(QL 
	p3 \11 J' 	pEh]ao	p
 J' 	pEh]ao	ps0   A7 'B# 7B BB #C3CCi sizec                 D    U [         :  a  [        SU  S[          S35      eg )Nz'Maximum /ToUnicode size limit reached: z > .)MAPPING_DICTIONARY_SIZE_LIMITr   )rj   s    r(   _check_mapping_sizern      s.    ++"I$sSpRqqr stt ,r*   c                    U R                  S5       Vs/ s H  oD(       d  M  UPM     nnSn[        U5      n[        U5        Ub  SUS   S-  -  nUS   n	US   n
U Hx  nUS:X  a  S	n  GOUS-  n[        U5        [        U5      R	                  S
S5      U[        X-  5      R	                  US   S:X  a  SOS
S5      '   UR                  U	5        U	S-  n	Mz     GO[        US   S5      n	[        US   S5      n
[        [        US   5      [        US   5      5      n[        US-  5      US'   SUS   S-  -  nUS   S:X  a  USS   Hx  nUS:X  a  S	n  GO&US-  n[        U5        [        U5      R	                  S
S5      U[        X-  5      R	                  US   S:X  a  SOS
S5      '   UR                  U	5        U	S-  n	Mz     O[        US   S5      nS[        S[        US   5      5      -  nS	n[        SX-
  S-   5      n[        X-   5        X::  ah  [        X-  5      R	                  S
S5      U[        X-  5      R	                  US   S:X  a  SOS
S5      '   UR                  U	5        U	S-  n	US-  nX::  a  Mh  U(       a  S $ X4$ s  snf )NrT   Fs   %%0%dXr?      r   r	   rV   Tr   surrogatepassr-      rU         )	rC   r7   rn   r   decodeappendr6   maxr   )rK   r%   r&   rI   r'   lstclosure_foundentry_countfmtabsqnbicfmt2
range_sizes                   r(   rf   rf      s    jj&
,&!1&C
,Mi.K$8B<!+,OOBTz $1K, "$$[/B #'"))!)"!2I# QFA  AOAO#c!f+s3q6{+C!G}8B<!+,q6T>!"g:$(Mq #K0 bM((oF cg&--%-b\Q%6	K'   #Q  CFBAs1c#a&k22D MQ	*J 89& dh'..{OL cg&--%-b\Q%6	K'   #QQ & !4,qf,w -s
   
JJc                    U R                  S5       Vs/ s H  o3(       d  M  UPM     nn[        U5      S-  n[        [        U5      U-   5        [        US   5      S-  US'   [        U5      S:  a  SnUS   S:w  a3   [        US   5      R	                  [        US   5      S:  a  S	OS
S5      nUU[        US   5      R	                  US   S:X  a  S	OS
S5      '   UR                  [        US   S5      5        USS  n[        U5      S:  a  M  g g s  snf ! [
         a  n[        S[        UUS   S9   S nANS nAff = f)NrT   rp   r   r?   r	   r=   rS   rt   r-   r   rq   z5Got invalid hex string: %(exception)s (%(lst_value)r))r.   	exception	lst_valuerr   )
rC   r7   rn   r   ru   BinasciiErrorr   r5   rv   r6   )rK   r%   r&   r'   rx   	new_countmap_tor   s           r(   ri   ri   3  s>   jj&
,&!1&C
,CAII23s1v;!#HRL
c(Q,q6T>
"3q6*11!$SVqIk? 	 	c!f$$%b\Q.	K	

 	SVR)!"g+ c(Q,	 - ! K#'!!f	s"   
DD>2D 
D>!D99D>c           	         SU ;  a  X4$ [        [        U S   5      R                  S5      n[        U5      (       a  X4$ Uc   S5       eUR	                  5       R                  5       nUR                  S5      S   nUR                  S5      n[        U5      S:  a  X4$ US   nUR                  S	S
5      R                  S
5      nU H  nUR                  S5      (       d  M  UR                  S5       Vs/ s H  oS:w  d  M
  UPM     n	n[        U	5      S:  d  [        U	5      S:  a  U	S   S:w  a  Ml   [        U	S   5      n
 [        U	S   R                  5          nX[        U
5      '   UR!                  U
5        M     X4$ s  snf ! [         a     M  f = f! [         aO    U	S   R                  S5      (       a1   [        [        U	S   SS  S5      5      n N|! [         a      GM!  f = f GM)  f = f)Nz/FontDescriptorz	/FontFilemypys   eexec
r   s	   /Encodingrp   r	   rW   r>   s   duprT   r*   rs   s   puts   /unirt   rr   )r   r   r@   r   r2   rX   rC   r7   rZ   
startswithr6   rg   r
   ru   KeyErrorr#   rv   )r   r%   r&   ft_desctxtencoding_partlinesli_wwordsr_   vs               r(   rA   rA   P  s   
 """#R(9%:;??LGw""&&




'
'
)C
))J

"CIIl+M
=A""

CKKu%++E2E==  "$((4.>.B#IR.E>5zA~#e*q.U1X5GaM	 q!23  !SVQ) * ' ?
    8&&w//!E!HQRL" 56% ! ! sN   4	FF3FF
FF#G0;G
G("G0'G((G0/G0)+binasciir   r   r   mathr   typingr   r   r   _codecsr
   r   _utilsr   r   errorsr   genericr   r   r   r   r   r   r"   r/   __annotations__tupler6   r)   r   r8   r    bytesrB   boolrD   rm   rn   rf   ri   rA    r*   r(   <module>r      sC   +   # # 3 0 % $;$;$ $ 	$
 8$ 8$ %$ %$ 	$ 	$ '$ '$ G$ G$ {$  {!$" i#$$  ""/$ $sCx. 8
5d38n$%tCH~56$88
3S#X8v  
4S>49$% F&# & &R2
22 2 eCHo-.	2
 38n2 Cy2 4uT5c?23342B !( uc ud u
A-
A-38nA- CyA- eCHo-.	A-
 4sCx !A-Hu S#X 49 QU :''38n' Cy' 4S>49$%	'r*   