Ë
    ìì�iÚi  ã                   óä  — d dl Z d dlZd dlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 dd	l	mZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z  ddlm!Z! ddlm"Z" ddlm#Z# d„ Z$d„ Z% G d „ d!«      Z& G d"„ d#e«      Z'd$Z(d%„ Z) G d&„ d'«      Z* G d(„ d)«      Z+ G d*„ d+e«      Z, G d,„ d-e,«      Z- ed.«      Z. ed/«      Z/ G d0„ d1«      Z0 G d2„ d3e0«      Z1 G d4„ d5e1«      Z2 G d6„ d7e2«      Z3 G d8„ d9e1«      Z4 G d:„ d;e0«      Z5d<„ Z6e7d=k(  r# e jp                   e6e jr                  «      «       yy)>é    N)ÚBytesIOé   )ÚCMapDB)Ú
CMapParser)ÚFileUnicodeMap)ÚCMap)Ú
EncodingDB)Úname2unicode)ÚPSStackParser)ÚPSEOF)ÚLIT)ÚKWD)ÚSTRICT)Ú	PSLiteral)Úliteral_name)ÚPDFException)Úresolve1)Ú	int_value)Ú	num_value)Úbytes_value)Ú
list_value)Ú
dict_value)Ústream_value©ÚFONT_METRICS)Úapply_matrix_norm)Únunpack)Úchoplist)Úisnumberc                 ó"  — i }g }| D ]…  }t        |t        «      r&|sŒ|d   }t        |«      D ]  \  }}||||z   <   Œ g }Œ9t        |«      sŒE|j	                  |«       t        |«      dk(  sŒe|\  }}}t        ||dz   «      D ]  }|||<   Œ	 g }Œ‡ |S )Néÿÿÿÿé   r   )Ú
isinstanceÚlistÚ	enumerater   ÚappendÚlenÚrange)ÚseqÚwidthsÚrÚvÚchar1ÚiÚwÚchar2s           úu/var/www/ITT-ServiceAPI-Services/ITT-Document-Scan/mrzscanner/mrzenv/lib/python3.12/site-packages/pdfminer/pdffont.pyÚ
get_widthsr2   !   s²   € Ø€FØ
€AØò ˆÜ�aœÔÚØ˜"™�Ü'¨›lò (‘F�Q˜Ø&'�F˜5 ™7’Oð(à‘Ü�a�[Ø�H‰H�QŒKÜ�1‹v˜‹{Ø$%Ñ!�˜˜qÜ˜u e¨A¡gÓ.ò "�AØ !�F˜1’Ið"à‘ðð €Mó    c                 óR  — i }g }| D ]�  }t        |t        «      r8|sŒ|d   }t        t        d|«      «      D ]  \  }\  }}}|||ff|||z   <   Œ g }ŒKt	        |«      sŒW|j                  |«       t        |«      dk(  sŒw|\  }}	}}}t        ||	dz   «      D ]  }|||ff||<   Œ g }ŒŸ |S )Nr!   r"   é   r   )r#   r$   r%   r   r   r&   r'   r(   )
r)   r*   r+   r,   r-   r.   r/   ÚvxÚvyr0   s
             r1   Úget_widths2r8   8   sÔ   € Ø€FØ
€AØò ˆÜ�aœÔÚØ˜"™�Ü(1´(¸1¸a³.Ó(Aò 4Ñ$�Q™˜˜B Ø'(¨2¨r¨( m�F˜5 ™7’Oð4à‘Ü�a�[Ø�H‰H�QŒKÜ�1‹v˜‹{Ø,-Ñ)�˜˜q " bÜ˜u e¨A¡gÓ.ò .�AØ!" R¨ H �F˜1’Ið.à‘ðð €Mr3   c                   ó   — e Zd Zed„ «       Zy)ÚFontMetricsDBc                 ó   — t         |   S ©Nr   )ÚklassÚfontnames     r1   Úget_metricszFontMetricsDB.get_metricsS   s   € ä˜HÑ%Ð%r3   N)Ú__name__Ú
__module__Ú__qualname__Úclassmethodr?   © r3   r1   r:   r:   Q   s   „ àñ&ó ñ&r3   r:   c                   ó®   — e Zd Z ed«      Z ed«      Z ed«      Z ed«      Z ed«      Z ed«      Z	 ed«      Z
 ed«      Z ed«      Zd	„ Zd
„ Zd„ Zy)ÚType1FontHeaderParsers   begins   ends   defs   puts   dicts   arrays   readonlys   forc                 ó>   — t        j                  | |«       i | _        y r<   )r   Ú__init__Ú_cid2unicode©ÚselfÚdatas     r1   rH   zType1FontHeaderParser.__init__f   s   € Ü×Ñ˜t TÔ*ØˆÔØr3   c                 ó²   — 	 	 | j                  «       \  }}	 t        |«      | j                  |<   Œ.# t        $ r Y | j                  S w xY w# t        $ r Y Œ&w xY wr<   )Ú
nextobjectr   r
   rI   ÚKeyError)rK   ÚcidÚnames      r1   Úget_encodingz"Type1FontHeaderParser.get_encodingk   sn   € ØðØ"Ÿo™oÓ/‘��dðÜ)5°dÓ);�×!Ñ! #Ñ&ð øô ò Øð
 × Ñ Ð ðûô ò Ùðús    ƒ0 —A
 °	AÁAÁ
	AÁAc                 óÌ   — || j                   u rV| j                  d«      \  \  }}\  }}t        |t        «      r,t        |t        «      r| j                  |t        |«      f«       y )Né   )ÚKEYWORD_PUTÚpopr#   Úintr   Úadd_resultsr   )rK   ÚposÚtokenÚ_ÚkeyÚvalues         r1   Ú
do_keywordz Type1FontHeaderParser.do_keywordw   sY   € Ø�D×$Ñ$Ñ$Ø%)§X¡X¨a£[Ñ"‰Xˆa�‘z˜˜5Ü˜3¤Ô$Ü˜5¤)Ô,Ø× Ñ  #¤|°EÓ':Ð!;Ô<Ør3   N)r@   rA   rB   r   ÚKEYWORD_BEGINÚKEYWORD_ENDÚKEYWORD_DEFrU   ÚKEYWORD_DICTÚKEYWORD_ARRAYÚKEYWORD_READONLYÚKEYWORD_FORrH   rR   r^   rD   r3   r1   rF   rF   Z   sd   „ á˜“M€MÙ�f“+€KÙ�f“+€KÙ�f“+€KÙ�w“<€LÙ˜“M€MÙ˜;Ó'ÐÙ�f“+€KÙ�f“+€Kòò

!ór3   rF   )Ú0Ú1Ú2Ú3Ú4Ú5Ú6Ú7Ú8Ú9ú.Úeze-Nú-c                 óØ  — i }t        | «      }g }	 |j                  d«      }|s	 |S t        |«      }|dk  r|||<   g }Œ/|dk(  rRd}d}|r@t        |j                  d«      «      }|dz	  |dz  fD ]  }	|	dk(  rd}Œ|t        |	   z  }Œ |rŒ@t	        |«      }
nÃd	|k  r|d
k  r|dz
  }
n³t        |j                  d«      «      }d|k  r|dk  r|dz
  dz  |z   dz   }
n€d|k  r|dk  r|dz
  dz   |z
  dz
  }
nft        |j                  d«      «      }d|k  r|dz  }|dk(  r	|dz  |z  }
n4|dz  |dz  z  t        j                  d|j                  d«      «      d   z  }
|j                  |
«       �Œ[)Nr   é   é   Ú Té   é   Fé    éö   é‹   é÷   éú   é   él   éû   éþ   é€   é   é   é   é   ú>HrT   r   )r   ÚreadÚordÚNIBBLESÚfloatÚstructÚunpackr&   )rL   ÚdÚfpÚstackÚcÚb0ÚsÚloopÚbÚnr]   Úb1Úb2s                r1   Úgetdictr™   ‡   sª  € Ø
€AÜ	�‹€BØ€EØ
Ø�G‰G�A‹JˆÙØðD €HôC �‹VˆØ�Š8ØˆAˆb‰EØˆEØØ�Š8ØˆAØˆDÙÜ˜Ÿ™ ›
“O�Ø˜q™& ! b¡&Ð)ò (�AØ˜B’wØ$™àœW Q™Z™™ð	(ò ô ˜!“H‰EØ�2ŠX˜" š)Ø�s‘F‰Eä�R—W‘W˜Q“Z“ˆBØ�bŠy˜R 3šYØ˜S™& Q™¨Ñ*¨3Ñ.‘Ø˜’˜r SšyØ˜c™6 a™-Ð(¨Ñ+¨CÑ/‘ä˜Ÿ™ ›“_�Ø˜"’9Ø˜#‘I�BØ˜’8Ø !™G b™L‘Eà "™H r¨R¡xÑ/´&·-±-ÀÀbÇgÁgÈaÃjÓ2QÐRSÑ2TÑT�EØ�‰�UÔñI r3   c                   ó0   — e Zd ZdZ G d„ d«      Zd„ Zd„ Zy)ÚCFFFont(‡  z.notdefÚspaceÚexclamÚquotedblÚ
numbersignÚdollarÚpercentÚ	ampersandÚ
quoterightÚ	parenleftÚ
parenrightÚasteriskÚplusÚcommaÚhyphenÚperiodÚslashÚzeroÚoneÚtwoÚthreeÚfourÚfiveÚsixÚsevenÚeightÚnineÚcolonÚ	semicolonÚlessÚequalÚgreaterÚquestionÚatÚAÚBÚCÚDÚEÚFÚGÚHÚIÚJÚKÚLÚMÚNÚOÚPÚQÚRÚSÚTÚUÚVÚWÚXÚYÚZÚbracketleftÚ	backslashÚbracketrightÚasciicircumÚ
underscoreÚ	quoteleftÚar•   r‘   rŽ   rq   ÚfÚgÚhr.   ÚjÚkÚlÚmr–   ÚoÚpÚqr+   r“   ÚtÚur,   r/   ÚxÚyÚzÚ	braceleftÚbarÚ
bracerightÚ
asciitildeÚ
exclamdownÚcentÚsterlingÚfractionÚyenÚflorinÚsectionÚcurrencyÚquotesingleÚquotedblleftÚguillemotleftÚguilsinglleftÚguilsinglrightÚfiÚflÚendashÚdaggerÚ	daggerdblÚperiodcenteredÚ	paragraphÚbulletÚquotesinglbaseÚquotedblbaseÚquotedblrightÚguillemotrightÚellipsisÚperthousandÚquestiondownÚgraveÚacuteÚ
circumflexÚtildeÚmacronÚbreveÚ	dotaccentÚdieresisÚringÚcedillaÚhungarumlautÚogonekÚcaronÚemdashÚAEÚordfeminineÚLslashÚOslashÚOEÚordmasculineÚaeÚdotlessiÚlslashÚoslashÚoeÚ
germandblsÚonesuperiorÚ
logicalnotÚmuÚ	trademarkÚEthÚonehalfÚ	plusminusÚThornÚ
onequarterÚdivideÚ	brokenbarÚdegreeÚthornÚthreequartersÚtwosuperiorÚ
registeredÚminusÚethÚmultiplyÚthreesuperiorÚ	copyrightÚAacuteÚAcircumflexÚ	AdieresisÚAgraveÚAringÚAtildeÚCcedillaÚEacuteÚEcircumflexÚ	EdieresisÚEgraveÚIacuteÚIcircumflexÚ	IdieresisÚIgraveÚNtildeÚOacuteÚOcircumflexÚ	OdieresisÚOgraveÚOtildeÚScaronÚUacuteÚUcircumflexÚ	UdieresisÚUgraveÚYacuteÚ	YdieresisÚZcaronÚaacuteÚacircumflexÚ	adieresisÚagraveÚaringÚatildeÚccedillaÚeacuteÚecircumflexÚ	edieresisÚegraveÚiacuteÚicircumflexÚ	idieresisÚigraveÚntildeÚoacuteÚocircumflexÚ	odieresisÚograveÚotildeÚscaronÚuacuteÚucircumflexÚ	udieresisÚugraveÚyacuteÚ	ydieresisÚzcaronÚexclamsmallÚHungarumlautsmallÚdollaroldstyleÚdollarsuperiorÚampersandsmallÚ
AcutesmallÚparenleftsuperiorÚparenrightsuperiorÚtwodotenleaderÚonedotenleaderÚzerooldstyleÚoneoldstyleÚtwooldstyleÚthreeoldstyleÚfouroldstyleÚfiveoldstyleÚsixoldstyleÚsevenoldstyleÚeightoldstyleÚnineoldstyleÚcommasuperiorÚthreequartersemdashÚperiodsuperiorÚquestionsmallÚ	asuperiorÚ	bsuperiorÚcentsuperiorÚ	dsuperiorÚ	esuperiorÚ	isuperiorÚ	lsuperiorÚ	msuperiorÚ	nsuperiorÚ	osuperiorÚ	rsuperiorÚ	ssuperiorÚ	tsuperiorÚffÚffiÚfflÚparenleftinferiorÚparenrightinferiorÚCircumflexsmallÚhyphensuperiorÚ
GravesmallÚAsmallÚBsmallÚCsmallÚDsmallÚEsmallÚFsmallÚGsmallÚHsmallÚIsmallÚJsmallÚKsmallÚLsmallÚMsmallÚNsmallÚOsmallÚPsmallÚQsmallÚRsmallÚSsmallÚTsmallÚUsmallÚVsmallÚWsmallÚXsmallÚYsmallÚZsmallÚcolonmonetaryÚ	onefittedÚrupiahÚ
TildesmallÚexclamdownsmallÚcentoldstyleÚLslashsmallÚScaronsmallÚZcaronsmallÚDieresissmallÚ
BrevesmallÚ
CaronsmallÚDotaccentsmallÚMacronsmallÚ
figuredashÚhypheninferiorÚOgoneksmallÚ	RingsmallÚCedillasmallÚquestiondownsmallÚ	oneeighthÚthreeeighthsÚfiveeighthsÚseveneighthsÚonethirdÚ	twothirdsÚzerosuperiorÚfoursuperiorÚfivesuperiorÚsixsuperiorÚsevensuperiorÚeightsuperiorÚninesuperiorÚzeroinferiorÚoneinferiorÚtwoinferiorÚthreeinferiorÚfourinferiorÚfiveinferiorÚsixinferiorÚseveninferiorÚeightinferiorÚnineinferiorÚcentinferiorÚdollarinferiorÚperiodinferiorÚcommainferiorÚAgravesmallÚAacutesmallÚAcircumflexsmallÚAtildesmallÚAdieresissmallÚ
AringsmallÚAEsmallÚCcedillasmallÚEgravesmallÚEacutesmallÚEcircumflexsmallÚEdieresissmallÚIgravesmallÚIacutesmallÚIcircumflexsmallÚIdieresissmallÚEthsmallÚNtildesmallÚOgravesmallÚOacutesmallÚOcircumflexsmallÚOtildesmallÚOdieresissmallÚOEsmallÚOslashsmallÚUgravesmallÚUacutesmallÚUcircumflexsmallÚUdieresissmallÚYacutesmallÚ
ThornsmallÚYdieresissmallz001.000z001.001z001.002z001.003ÚBlackÚBoldÚBookÚLightÚMediumÚRegularÚRomanÚSemiboldc                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)úCFFFont.INDEXc                 óÒ  — || _         g | _        t        j                  d| j                   j	                  d«      «      \  }}t        |dz   «      D ]?  }| j                  j                  t        | j                   j	                  |«      «      «       ŒA | j                   j                  «       dz
  | _	        | j                   j                  | j                  | j                  d   z   «       y )Nz>HBr"   r   r!   )r�   ÚoffsetsrŒ   r�   rˆ   r(   r&   r   ÚtellÚbaseÚseek)rK   r�   ÚcountÚoffsizer.   s        r1   rH   zCFFFont.INDEX.__init__  s©   € ØˆDŒGØˆDŒLÜ%Ÿ}™}¨U°D·G±G·L±LÀ³OÓDÑˆU�GÜ˜5 ™7“^ò D�Ø—‘×#Ñ#¤G¨D¯G©G¯L©L¸Ó,AÓ$BÕCðDàŸ™Ÿ™› qÑ(ˆDŒIØ�G‰G�L‰L˜Ÿ™ 4§<¡<°Ñ#3Ñ3Ô4Ør3   c                 ó   — dt        | «      z  S )Nz<INDEX: size=%d>)r'   ©rK   s    r1   Ú__repr__zCFFFont.INDEX.__repr__  s   € Ø%¬¨D«	Ñ1Ð1r3   c                 ó2   — t        | j                  «      dz
  S ©Nr   )r'   r  r  s    r1   Ú__len__zCFFFont.INDEX.__len__  s   € Ü�t—|‘|Ó$ QÑ&Ð&r3   c                 óâ   — | j                   j                  | j                  | j                  |   z   «       | j                   j	                  | j                  |dz      | j                  |   z
  «      S r!  )r�   r  r  r  rˆ   )rK   r.   s     r1   Ú__getitem__zCFFFont.INDEX.__getitem__  sP   € Ø�G‰G�L‰L˜Ÿ™ 4§<¡<°¡?Ñ2Ô3Ø—7‘7—<‘< §¡¨Q¨q©SÑ 1°$·,±,¸q±/Ñ AÓBÐBr3   c                 óP   ‡ — t        ˆ fd„t        t        ‰ «      «      D «       «      S )Nc              3   ó(   •K  — | ]	  }‰|   –— Œ y ­wr<   rD   )Ú.0r.   rK   s     €r1   ú	<genexpr>z)CFFFont.INDEX.__iter__.<locals>.<genexpr>  s   øè ø€ Ò: A˜˜Q�Ñ:ùs   ƒ)Úiterr(   r'   r  s   `r1   Ú__iter__zCFFFont.INDEX.__iter__  s   ø€ ÜÓ:¬¬s°4«yÓ)9Ô:Ó:Ð:r3   N)r@   rA   rB   rH   r  r"  r$  r*  rD   r3   r1   ÚINDEXr    s   „ ò	ò	2ò	'ò	Có	;r3   r+  c           	      ó 
  — || _         || _        t        j                  d| j                  j	                  d«      «      \  }}}}| j                  j	                  |dz
  «       | j                  | j                  «      | _        | j                  | j                  «      | _        | j                  | j                  «      | _        | j                  | j                  «      | _	        t        | j                  d   «      | _        | j                  j                  ddg«      \  }| j                  j                  ddg«      \  }| j                  j                  ddg«      \  }	| j                  j                  |	«       | j                  | j                  «      | _        t        | j                  «      | _        i | _        i | _        | j                  j                  |«       | j                  j	                  d«      }
|
dk(  r“t        j                  d	| j                  j	                  d«      «      \  }t'        t        j                  d	|z  | j                  j	                  |«      «      «      D ]#  \  }}|| j"                  |<   || j$                  |<   Œ% nÃ|
d
k(  r°t        j                  d	| j                  j	                  d«      «      \  }d}t)        |«      D ]n  }t        j                  d| j                  j	                  d«      «      \  }}t)        |||z   dz   «      D ]%  }|| j"                  |<   || j$                  |<   |dz  }Œ' Œp nt+        d|
z  «      ‚i | _        i | _        | j                  j                  |«       | j                  j	                  d«      }
|
dk(  r�| j                   dz
  }t'        t        j                  dd|z  z   | j                  j	                  d|z  «      «      «      D ]9  \  }}|dz  }| j1                  |«      }|| j,                  |<   || j.                  |<   Œ; y |
d
k(  rÁt        j                  d	| j                  j	                  d«      «      \  }d}t)        |«      D ]  }t        j                  d| j                  j	                  d«      «      \  }}t)        |||z   dz   «      D ]6  }| j1                  |«      }|| j,                  |<   || j.                  |<   |dz  }Œ8 Œ� y |
dk(  rJ ‚t+        d|
z  «      ‚)NÚBBBBrw   r   rx   r†   é   r   ó    r¾   ó   ÚBBrT   zunsupported encoding format: %rú>rÄ   ó   zunsupported charset format: %r)rQ   r�   rŒ   r�   rˆ   r+  Ú
name_indexÚ
dict_indexÚstring_indexÚ
subr_indexr™   Útop_dictÚgetr  Ú
charstringr'   ÚnglyphsÚcode2gidÚgid2coder%   r(   Ú
ValueErrorÚname2gidÚgid2nameÚgetstr)rK   rQ   r�   Ú_majorÚ_minorÚhdrsizer  Úcharset_posÚencoding_posÚcharstring_posÚformatr–   ÚcodeÚgidr.   ÚfirstÚnleftÚsids                     r1   rH   zCFFFont.__init__  s  € ØˆŒ	ØˆŒä-3¯]©]¸6À4Ç7Á7Ç<Á<ÐPQÃ?Ó-SÑ*ˆ�˜ 'Ø�‰�‰�W˜Q‘YÔàŸ*™* T§W¡WÓ-ˆŒàŸ*™* T§W¡WÓ-ˆŒà ŸJ™J t§w¡wÓ/ˆÔàŸ*™* T§W¡WÓ-ˆŒä §¡°Ñ 2Ó3ˆŒØŸ™×*Ñ*¨2°¨sÓ3‰ˆØŸ-™-×+Ñ+¨B°°Ó4‰ˆØ ŸM™M×-Ñ-¨b°1°#Ó6Ñˆà�‰�‰�^Ô$ØŸ*™* T§W¡WÓ-ˆŒÜ˜4Ÿ?™?Ó+ˆŒàˆŒØˆŒØ�‰�‰�\Ô"Ø—‘—‘˜a“ˆØ�WÒä—=‘=  d§g¡g§l¡l°1£oÓ6‰DˆQÜ(¬¯©°s¸1±u¸d¿g¹g¿l¹lÈ1»oÓ)NÓOò *‘��sØ&)�—‘˜dÑ#Ø%)�—‘˜cÒ"ñ*ð �wÒä—=‘=  d§g¡g§l¡l°1£oÓ6‰DˆQØˆDÜ˜1“Xò �Ü!'§¡¨t°T·W±W·\±\À!³_Ó!E‘�˜Ü  ¨¨e©°A©Ó6ò �CØ*-�D—M‘M $Ñ'Ø)-�D—M‘M #Ñ&Ø˜A‘I‘Dññô Ð>ÀÑGÓHÐHàˆŒØˆŒØ�‰�‰�[Ô!Ø—‘—‘˜a“ˆØ�WÒà—‘˜Q‘ˆAÜ'¬¯©°c¸#¸a¹%±iÀÇÁÇÁÈaÐPQÉcÓARÓ(SÓTò *‘
��cØ�q‘�Ø—{‘{ 3Ó'�Ø&)�—‘˜dÑ#Ø%)�—‘˜cÒ"ð	*ð0 	ð' �wÒä—=‘=  d§g¡g§l¡l°1£oÓ6‰DˆQØˆCÜ˜1“Xò �Ü!'§¡¨t°T·W±W·\±\À!³_Ó!E‘�˜Ü  ¨¨e©°A©Ó6ò �CØŸ;™; sÓ+�DØ*-�D—M‘M $Ñ'Ø)-�D—M‘M #Ñ&Ø˜1‘H‘Cñ	ðð 	ð �wÒà�1äÐ=ÀÑFÓGÐGr3   c                 óš   — |t        | j                  «      k  r| j                  |   S | j                  |t        | j                  «      z
     S r<   )r'   ÚSTANDARD_STRINGSr6  )rK   rM  s     r1   rA  zCFFFont.getstro  sG   € Ø”�T×*Ñ*Ó+Ò+Ø×(Ñ(¨Ñ-Ð-Ø× Ñ  ¤S¨×)>Ñ)>Ó%?Ñ!?Ñ@Ð@r3   N)r@   rA   rB   rO  r+  rH   rA  rD   r3   r1   r›   r›   ³   s#   „ ðOÐ÷b;ñ ;ò2Nó`Ar3   r›   c                   ó.   — e Zd Z G d„ de«      Zd„ Zd„ Zy)ÚTrueTypeFontc                   ó   — e Zd Zy)úTrueTypeFont.CMapNotFoundN©r@   rA   rB   rD   r3   r1   ÚCMapNotFoundrS  y  s   „ Ør3   rU  c                 óD  — || _         || _        i | _        |j                  d«      | _        t        j                  d|j                  d«      «      \  }}}}t        |«      D ]=  }t        j                  d|j                  d«      «      \  }}}	}
|	|
f| j                  |<   Œ? y )Nrw   ú>HHHHr~   z>4sLLLr†   )rQ   r�   Útablesrˆ   ÚfonttyperŒ   r�   r(   )rK   rQ   r�   ÚntablesÚ_1Ú_2Ú_3r[   ÚtsumÚoffsetÚlengths              r1   rH   zTrueTypeFont.__init__|  s“   € ØˆŒ	ØˆŒØˆŒØŸ™ ›
ˆŒÜ &§¡¨g°r·w±w¸q³zÓ BÑˆ�"�b˜"Ü�w“ò 	1ˆAÜ+1¯=©=¸À2Ç7Á7È2Ã;Ó+OÑ(ˆT�4˜ Ø!'¨Ð 0ˆD�K‰K˜Òð	1ð 	r3   c                 óš  — d| j                   vrt        j                  ‚| j                   d   \  }}| j                  }|j	                  |«       t        j                  d|j                  d«      «      \  }}g }t        |«      D ]6  }|j                  t        j                  d|j                  d«      «      «       Œ8 i }|D �]S  \  }	}
}|j	                  ||z   «       t        j                  d|j                  d«      «      \  }}}|dk(  r>|j                  t        t        j                  d	|j                  d
«      «      «      «       Œˆ|dk(  �r/t        j                  d|j                  d«      «      }dgdz  }t        |«      D ]  \  }}|||dz  <   Œ t        |«      dz  dz   }g }t        |«      D ]V  }t        j                  d|j                  d«      «      \  }}}}|j                  |||||j                  «       dz
  |z   f«       ŒX |D ]k  \  }}}}}|sŒ|||   dz  z   }|j	                  |«       t        |«      D ]6  }t        j                  d|j                  d«      «      }|r||z  }||||z   <   Œ8 Œm �Œ½|dk(  �r‘t        j                  d|j                  d«      «      \  }}	}
}|dz  }t        j                  d|z  |j                  d|z  «      «      }|j                  d«       t        j                  d|z  |j                  d|z  «      «      }t        j                  d|z  |j                  d|z  «      «      } |j                  «       }t        j                  d|z  |j                  d|z  «      «      }!t        ||| |!«      D ]‚  \  }"}#}$}%|%rZ|j	                  ||%z   «       t        |#|"dz   «      D ]3  }t        j                  d|j                  d«      «      d   |$z   dz  ||<   Œ5 Œdt        |#|"dz   «      D ]  }||$z   dz  ||<   Œ Œ„ �ŒTJ ‚ t        «       }&|j!                  «       D ]  \  }'}|&j#                  ||'«       Œ |&S )NÚcmapz>HHrw   z>HHLr~   z>HHHé   r   z>256Brƒ   rT   z>256Hi   i    r   z>HHhHr‡   rW  z>%dHz>%dhiÿÿ  )rX  rQ  rU  r�   r  rŒ   r�   rˆ   r(   r&   Úupdater%   Úmaxr  Úzipr   ÚitemsÚadd_cid2unichr)(rK   Úbase_offsetr`  r�   ÚversionÚ
nsubtablesÚ	subtablesr.   Úchar2gidr[  r\  Ú	st_offsetÚfmttypeÚfmtlenÚfmtlangÚsubheaderkeysÚ
firstbytesrâ   ÚnhdrsÚhdrsÚ	firstcodeÚentcountÚdeltar_  rY   rK  r‘   rJ  Úsegcountr]  ÚecsÚscsÚiddsÚidrsÚecÚscÚiddÚidrÚunicode_mapÚchars(                                           r1   Úcreate_unicode_mapzTrueTypeFont.create_unicode_map‡  s   € Ø˜Ÿ™Ñ$Ü×+Ñ+Ð+Ø $§¡¨FÑ 3Ñˆ�fØ�W‰WˆØ
�‰�ÔÜ &§¡¨e°R·W±W¸Q³ZÓ @Ñˆ�*Øˆ	Ü�zÓ"ò 	@ˆAØ×ÑœVŸ]™]¨6°2·7±7¸1³:Ó>Õ?ð	@àˆà#,ó +	ÑˆR��YØ�G‰G�K 	Ñ)Ô*Ü)/¯©°v¸r¿w¹wÀq»zÓ)JÑ&ˆW�f˜gØ˜!Š|Ø—‘¤	¬&¯-©-¸ÀÇÁÈÃÓ*NÓ OÕPØ˜A“Ü &§¡¨g°r·w±w¸s³|Ó D�Ø˜S ™X�
Ü'¨Ó6ò )‘F�Q˜Ø'(�J˜q !™tÒ$ð)ä˜MÓ*¨AÑ-°Ñ1�Ø�Ü˜u›ò U�AÜ;A¿=¹=ÈÐRT×RYÑRYÐZ[ÓR\Ó;]Ñ8�Y ¨%°Ø—K‘K  I¨x¸ÀÇÁÃ	È!ÁÈFÑ@RÐ SÕTðUð =Aò 	0Ñ8�Q˜	 8¨U°CÙ#Ø Ø%¨°A©¸!Ñ);Ñ<�EØ—G‘G˜C”LÜ" 8›_ò 0˜Ü$Ÿm™m¨D°"·'±'¸!³*Ó=˜ÙØ 5™L˜CØ,/˜  q¡Ò)ñ	0ò	0ð ˜A“Ü)/¯©°wÀÇÁÈÃ
Ó)KÑ&�˜2˜r 2Ø˜Q‘�Ü—m‘m F¨XÑ$5°r·w±w¸qÀ¹zÓ7JÓK�Ø—‘˜”
Ü—m‘m F¨XÑ$5°r·w±w¸qÀ¹zÓ7JÓK�Ü—}‘} V¨hÑ%6¸¿¹ÀÀ(Á
Ó8KÓL�Ø—g‘g“i�Ü—}‘} V¨hÑ%6¸¿¹ÀÀ(Á
Ó8KÓL�Ü*-¨c°3¸¸dÓ*Cò =Ñ&�R˜˜S #ÙØŸ™  C¡Ô(Ü!& r¨2¨a©4£ò ^˜AÜ+1¯=©=¸¸r¿w¹wÀq»zÓ+JÈ1Ñ+MÐPSÑ+SÐW]Ñ*]˜H QšKñ^ô "' r¨2¨a©4£ò =˜AØ+,¨s©7°fÑ*<˜H QšKñ=ò=ð �qðW+	ôZ %Ó&ˆØ#Ÿ>™>Ó+ò 	2‰KˆT�3Ø×&Ñ& s¨DÕ1ð	2àÐr3   N)r@   rA   rB   Ú	ExceptionrU  rH   r„  rD   r3   r1   rQ  rQ  w  s   „ ô�yô ò	ó<r3   rQ  c                   ó   — e Zd Zy)ÚPDFFontErrorNrT  rD   r3   r1   r‡  r‡  È  ó   „ Ør3   r‡  c                   ó   — e Zd Zy)ÚPDFUnicodeNotDefinedNrT  rD   r3   r1   rŠ  rŠ  Ì  rˆ  r3   rŠ  ÚStandardEncodingÚType1Cc                   óV   — e Zd Zdd„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
d
„ Zd„ Zd„ Zd„ Zy)ÚPDFFontNc                 ó¬  — || _         || _        t        |j                  dd«      «      | _        t        | j                  t        «      rt        | j                  «      | _        t        |j                  dd«      «      | _	        t        |j                  dd«      «      | _        t        |j                  dd«      «      | _        t        |j                  dd«      «      | _        |xs t        |j                  dd«      «      | _        t        |j                  d	d«      «      | _        t!        |j                  d
d«      «      | _        dx| _        | _        y )NÚFontNameÚunknownÚFlagsr   ÚAscentÚDescentÚItalicAngleÚMissingWidthÚLeadingÚFontBBox)r   r   r   r   gü©ñÒMbP?)Ú
descriptorr*   r   r9  r>   r#   r   r   r   Úflagsr   ÚascentÚdescentÚitalic_angleÚdefault_widthÚleadingr   ÚbboxÚhscaleÚvscale)rK   r™  r*   rž  s       r1   rH   zPDFFont.__init__Ö  sÿ   € Ø$ˆŒØˆŒÜ  §¡°
¸IÓ!FÓGˆŒÜ�d—m‘m¤YÔ/Ü(¨¯©Ó7ˆDŒMÜ˜zŸ~™~¨g°qÓ9Ó:ˆŒ
Ü 
§¡¨x¸Ó ;Ó<ˆŒÜ  §¡°	¸1Ó!=Ó>ˆŒÜ% j§n¡n°]ÀAÓ&FÓGˆÔØ*ÒZ¬i¸
¿¹À~ÐWXÓ8YÓ.ZˆÔÜ  §¡°	¸1Ó!=Ó>ˆŒÜ˜zŸ~™~¨j¸,ÓGÓHˆŒ	Ø$(Ð(ˆŒ�d”kØr3   c                  ó   — y)Nz	<PDFFont>rD   r  s    r1   r  zPDFFont.__repr__æ  s   € Ør3   c                  ó   — y©NFrD   r  s    r1   Úis_verticalzPDFFont.is_verticalé  ó   € Ør3   c                  ó   — yr¥  rD   r  s    r1   Úis_multibytezPDFFont.is_multibyteì  r§  r3   c                 ó   — t        |«      S r<   )r$   rJ   s     r1   ÚdecodezPDFFont.decodeï  s   € Ü�D‹zÐr3   c                 ó4   — | j                   | j                  z  S r<   )r›  r¢  r  s    r1   Ú
get_ascentzPDFFont.get_ascentò  s   € Ø�{‰{˜TŸ[™[Ñ(Ð(r3   c                 ó4   — | j                   | j                  z  S r<   )rœ  r¢  r  s    r1   Úget_descentzPDFFont.get_descentõ  s   € Ø�|‰|˜dŸk™kÑ)Ð)r3   c                 ó‚   — | j                   d   | j                   d   z
  }|dk(  r| j                   }|| j                  z  S )NrT   r   )r   rž  r¡  )rK   r/   s     r1   Ú	get_widthzPDFFont.get_widthø  s?   € Ø�I‰I�a‰L˜Ÿ™ 1™Ñ%ˆØ�Š6Ø×#Ñ#Ð#ˆAØ�4—;‘;‰Ðr3   c                 óš   — | j                   d   | j                   d   z
  }|dk(  r| j                  | j                  z
  }|| j                  z  S )Nr"   r   r   )r   r›  rœ  r¢  )rK   rà   s     r1   Ú
get_heightzPDFFont.get_heightþ  sC   € Ø�I‰I�a‰L˜Ÿ™ 1™Ñ%ˆØ�Š6Ø—‘˜dŸl™lÑ*ˆAØ�4—;‘;‰Ðr3   c                 ó  — 	 | j                   |   | j                  z  S # t        $ r_ 	 | j                   | j                  |«         | j                  z  cY S # t        t        f$ r | j
                  | j                  z  cY cY S w xY ww xY wr<   )r*   r¡  rO   Ú	to_unichrrŠ  rž  ©rK   rP   s     r1   Ú
char_widthzPDFFont.char_width  s~   € ð	8Ø—;‘;˜sÑ# d§k¡kÑ1Ð1øÜò 	8ð8Ø—{‘{ 4§>¡>°#Ó#6Ñ7¸$¿+¹+ÑEÒEøÜÔ2Ð3ò 8Ø×)Ñ)¨D¯K©KÑ7Ô7ð8úð	8ús,   ‚ ž	B¨*AÁBÁ(BÁ=BÂBÂBc                  ó   — y)Nr   rD   r¶  s     r1   Ú	char_dispzPDFFont.char_disp  s   € Ør3   c                 óJ   ‡ — t        ˆ fd„‰ j                  |«      D «       «      S )Nc              3   ó@   •K  — | ]  }‰j                  |«      –— Œ y ­wr<   )r·  )r'  rP   rK   s     €r1   r(  z'PDFFont.string_width.<locals>.<genexpr>  s   øè ø€ ÒB¨C�4—?‘? 3×'ÑBùs   ƒ)Úsumr«  )rK   r“   s   ` r1   Ústring_widthzPDFFont.string_width  s   ø€ ÜÓB°4·;±;¸q³>ÔBÓBÐBr3   r<   )r@   rA   rB   rH   r  r¦  r©  r«  r­  r¯  r±  r³  r·  r¹  r½  rD   r3   r1   rŽ  rŽ  Ô  s?   „ óò òòòò)ò*òòò8òóCr3   rŽ  c                   ó   — e Zd Zd„ Zd„ Zy)ÚPDFSimpleFontc                 ó<  — d|v rt        |d   «      }nt        }t        |t        «      rVt	        |j                  dt        «      «      }t        |j                  dd «      «      }t        j                  ||«      | _	        n#t        j                  t	        |«      «      | _	        d | _
        d|v rXt        |d   «      }t        «       | _
        t        | j                  t        |j                  «       «      «      j!                  «        t"        j%                  | ||«       y )NÚEncodingÚBaseEncodingÚDifferencesÚ	ToUnicode)r   ÚLITERAL_STANDARD_ENCODINGr#   Údictr   r9  r   r	   rR   Úcid2unicoder‚  r   r   r   r   Úget_dataÚrunrŽ  rH   )rK   r™  r*   ÚspecÚencodingrQ   ÚdiffÚstrms           r1   rH   zPDFSimpleFont.__init__  så   € ð ˜ÑÜ  ZÑ 0Ó1‰Hä0ˆHÜ�h¤Ô%Ü §¡¨^Ô=VÓ WÓXˆDÜ˜hŸl™l¨=¸$Ó?Ó@ˆDÜ)×6Ñ6°t¸TÓBˆDÕä)×6Ñ6´|ÀHÓ7MÓNˆDÔØˆÔØ˜$ÑÜ  [Ñ 1Ó2ˆDÜ-Ó/ˆDÔÜ�t×'Ñ'¬°·±³Ó)AÓB×FÑFÔHÜ×Ñ˜˜z¨6Ô2Ør3   c                 óÂ   — | j                   r	 | j                   j                  |«      S 	 | j                  |   S # t        $ r Y Œw xY w# t        $ r t	        d |«      ‚w xY wr<   )r‚  Ú
get_unichrrO   rÇ  rŠ  r¶  s     r1   rµ  zPDFSimpleFont.to_unichr-  sn   € Ø×ÒðØ×'Ñ'×2Ñ2°3Ó7Ð7ð	2Ø×#Ñ# CÑ(Ð(øô ò Ùðûô ò 	2Ü& t¨SÓ1Ð1ð	2ús   Ž9 ªA ¹	AÁAÁAN)r@   rA   rB   rH   rµ  rD   r3   r1   r¿  r¿    s   „ òó,	2r3   r¿  c                   ó   — e Zd Zd„ Zd„ Zy)ÚPDFType1Fontc                 ó   ‡— 	 t        |d   «      | _        	 t
        j                  | j                  «      \  }}t        j                  | |||«       d
|vr�d|v r}t        |j                  d«      «      | _        t        | j                   d   «      }| j                   j#                  «       d | }t%        t'        |«      «      }|j)                  «       | _        y # t        $ r t        rt	        d«      ‚d| _        Y Œäw xY w# t        $ rv t        |j                  di «      «      }t        |j                  dd«      «      Št        |j                  ddgdz  «      «      }t        ˆfd	„t        |«      D «       «      }Y �ŒCw xY w)NÚBaseFontúBaseFont is missingr‘  ÚFontDescriptorÚ	FirstCharr   ÚWidthsrƒ   c              3   ó2   •K  — | ]  \  }}|‰z   |f–— Œ y ­wr<   rD   ©r'  r.   r/   Ú	firstchars      €r1   r(  z(PDFType1Font.__init__.<locals>.<genexpr>J  s   øè ø€ ÒK©v°°1˜1˜Y™;¨Ô*ÑKùó   ƒrÁ  ÚFontFileÚLength1)r   ÚbasefontrO   r   r‡  r:   r?   r   r9  r   r   rÆ  r%   r¿  rH   r   ÚfontfilerÈ  rF   r   rR   rÇ  )	rK   ÚrsrcmgrrÊ  r™  r*   Úlength1rL   ÚparserrÚ  s	           @r1   rH   zPDFType1Font.__init__<  sT  ø€ ð	&Ü(¨¨jÑ)9Ó:ˆDŒMð
	LÜ#0×#<Ñ#<¸T¿]¹]Ó#KÑ ˆZ˜ô 	×Ñ˜t Z°¸Ô>Ø˜TÑ! j°JÑ&>ä(¨¯©¸
Ó)CÓDˆDŒMÜ §¡¨iÑ 8Ó9ˆGØ—=‘=×)Ñ)Ó+¨H¨WÐ5ˆDÜ*¬7°4«=Ó9ˆFØ%×2Ñ2Ó4ˆDÔØøô) ò 	&ÝÜ"Ð#8Ó9Ð9Ø%ˆDŽMð	&ûô ò 	LÜ# D§H¡HÐ-=¸rÓ$BÓCˆJÜ! $§(¡(¨;¸Ó":Ó;ˆIä §¡¨°A°3°s±7Ó ;Ó<ˆFÜÓK¼À6Ó9JÔKÓK‹Fð	Lús#   ƒC —"C> Ã!C;Ã:C;Ã>A;E=Å<E=c                 ó    — d| j                   z  S )Nz<PDFType1Font: basefont=%r>©rÞ  r  s    r1   r  zPDFType1Font.__repr__U  s   € Ø,¨t¯}©}Ñ<Ð<r3   N©r@   rA   rB   rH   r  rD   r3   r1   rÑ  rÑ  :  s   „ òó2=r3   rÑ  c                   ó   — e Zd Zd„ Zy)ÚPDFTrueTypeFontc                 ó    — d| j                   z  S )Nz<PDFTrueTypeFont: basefont=%r>rä  r  s    r1   r  zPDFTrueTypeFont.__repr__\  s   € Ø/°$·-±-Ñ?Ð?r3   N)r@   rA   rB   r  rD   r3   r1   rç  rç  Z  s   „ ó@r3   rç  c                   ó   — e Zd Zd„ Zd„ Zy)ÚPDFType3Fontc                 óè  ‡— t        |j                  dd«      «      Št        |j                  ddgdz  «      «      }t        ˆfd„t	        |«      D «       «      }d|v rt        |d   «      }n	dd|d   dœ}t        j                  | |||«       t        t        |j                  d	«      «      «      | _	        | j                  \  }| _        }| _        t        | j                  d
«      \  | _        | _        y )NrÖ  r   r×  rƒ   c              3   ó2   •K  — | ]  \  }}|‰z   |f–— Œ y ­wr<   rD   rÙ  s      €r1   r(  z(PDFType3Font.__init__.<locals>.<genexpr>g  s   øè ø€ ÒG©6¨A¨q�q˜‘{ AÔ&ÑGùrÛ  rÕ  r˜  )r“  r”  r˜  Ú
FontMatrix)r   r   )r   r9  r   rÆ  r%   r   r¿  rH   ÚtupleÚmatrixr   rœ  r›  r   r¡  r¢  )rK   rà  rÊ  r*   r™  r[   rÚ  s         @r1   rH   zPDFType3Font.__init__c  sÔ   ø€ Ü˜dŸh™h {°AÓ6Ó7ˆ	ä˜DŸH™H X°¨s°3©wÓ7Ó8ˆÜÓG´Y¸vÓ5FÔGÓGˆØ˜tÑ#Ü# DÐ)9Ñ$:Ó;‰Jà$%°!Ø&*¨:Ñ&6ñ8ˆJä×Ñ˜t Z°¸Ô>ÜœJ t§x¡x°Ó'=Ó>Ó?ˆŒØ,0¯I©IÑ)ˆˆDŒL˜!˜Tœ[Ü%6°t·{±{ÀFÓ%KÑ"ˆŒ�d”kØr3   c                  ó   — y)Nz<PDFType3Font>rD   r  s    r1   r  zPDFType3Font.__repr__s  s   € Ør3   Nrå  rD   r3   r1   rê  rê  a  s   „ òó  r3   rê  c                   ó6   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	Ú
PDFCIDFontc                 óð  — 	 t        |d   «      | _        t        |j                  di «      «      | _        t        | j                  j                  dd«      «      }t        | j                  j                  dd«      «      }|dz   |z   j                  d	«      | _
        	 t        |d
   «      }	 t        j                  |«      | _        	 t        |d   «      }d }d|v rVt!        |j                  d«      «      | _        t%        | j                  t'        | j"                  j)                  «       «      «      }d | _        d|v rYt!        |d   «      }	t-        «       | _        t/        | j*                  t'        |	j)                  «       «      «      j1                  «        ne| j                  dv r|rU	 |j3                  «       | _        n>	 t        j4                  | j                  | j                  j7                  «       «      | _        | j                  j7                  «       | _        | j8                  rŒt;        t=        |j                  dg «      «      «      }
t?        d„ |
jA                  «       D «       «      | _!        |j                  dddg«      \  }}d |f| _"        t?        d„ |
jA                  «       D «       «      }
|}nDi | _!        d| _"        tG        t=        |j                  dg «      «      «      }
|j                  dd«      }tH        jK                  | ||
|¬«       y # t        $ r t        rt	        d«      ‚d| _        Y �Œw xY w# t        $ r t        rt	        d«      ‚d}Y �Œ«w xY w# t        j                  $ r+}t        rt	        |«      ‚t        «       | _        Y d }~�ŒÍd }~ww xY w# t        $ r t        rt	        d«      ‚i }Y �Œåw xY w# t$        j                  $ r Y �ŒÚw xY w# t        j                  $ r}Y d }~�Œ÷d }~ww xY w)NrÓ  rÔ  r‘  ÚCIDSystemInfoÚRegistrys   unknownÚOrderingó   -ÚasciirÁ  zEncoding is unspecifiedrÕ  zFontDescriptor is missingÚ	FontFile2rÄ  )zAdobe-Identityz	Adobe-UCSÚW2c              3   ó:   K  — | ]  \  }\  }\  }}|||ff–— Œ y ­wr<   rD   )r'  rP   r[   r6   r7   s        r1   r(  z&PDFCIDFont.__init__.<locals>.<genexpr>±  s%   è ø€ ÒYÑ2F°3¹¸¹H¸RÀ˜s R¨ HœoÑYùs   ‚ÚDW2ip  iüÿÿc              3   ó0   K  — | ]  \  }\  }}||f–— Œ y ­wr<   rD   )r'  rP   r/   r[   s       r1   r(  z&PDFCIDFont.__init__.<locals>.<genexpr>´  s   è ø€ ÒG¡}¨©V¨a°˜3 œ(ÑGùs   ‚r   rÓ   ÚDWiè  )rž  )&r   rÞ  rO   r   r‡  r   r9  Úcidsysteminfor   r«  Ú	cidcodingr   Úget_cmaprb  rU  r   r   rß  rQ  r   rÈ  r‚  r   r   rÉ  r„  Úget_unicode_mapr¦  Úverticalr8   r   rÆ  rg  ÚdispsÚdefault_dispr2   rŽ  rH   )rK   rà  rÊ  ÚregistryÚorderingrQ   rq   r™  ÚttfrÍ  r*   r7   r/   rž  s                 r1   rH   zPDFCIDFont.__init__z  sc  € ð	&Ü(¨¨jÑ)9Ó:ˆDŒMô
 (¨¯©°À"Ó(EÓFˆÔÜ˜t×1Ñ1×5Ñ5°jÀ*ÓMÓNˆÜ˜t×1Ñ1×5Ñ5°jÀ*ÓMÓNˆØ" T™/¨HÑ4×<Ñ<¸WÓEˆŒð	Ü  ZÑ 0Ó1ˆDð
	ÜŸ™¨Ó-ˆDŒIð
	Ü# DÐ)9Ñ$:Ó;ˆJð
 ˆØ˜*Ñ$Ü(¨¯©¸Ó)DÓEˆDŒMÜ˜tŸ}™}Ü& t§}¡}×'=Ñ'=Ó'?Ó@óBˆCàˆÔØ˜$ÑÜ  [Ñ 1Ó2ˆDÜ-Ó/ˆDÔÜ�t×'Ñ'¬°·±³Ó)AÓB×FÑFÕHØ�^‰^Ð>Ñ>ÙðØ'*×'=Ñ'=Ó'?�DÕ$ðÜ#)×#9Ñ#9¸$¿.¹.È$Ï)É)×J_ÑJ_ÓJaÓ#b�Ô ð Ÿ	™	×-Ñ-Ó/ˆŒØ�=Š=ä ¤¨D¯H©H°T¸2Ó,>Ó!?Ó@ˆFÜÑYÈ&Ï,É,Ë.ÔYÓYˆDŒJØ—h‘h˜u s¨E lÓ3‰GˆR�Ø!% r 
ˆDÔÜÑG¸¿¹»ÔGÓGˆFØ‰Mð ˆDŒJØ !ˆDÔÜ¤
¨4¯8©8°C¸Ó+<Ó =Ó>ˆFØ ŸH™H T¨4Ó0ˆMÜ×Ñ˜˜z¨6ÀÐÔOØøôA ò 	&ÝÜ"Ð#8Ó9Ð9Ø%ˆD�Mð	&ûô ò 	ÝÜ"Ð#<Ó=Ð=Ø‹Dð	ûô ×"Ñ"ò 	ÝÜ" 1“oÐ%Ü›ˆD�IŠIûð	ûô ò 	ÝÜ"Ð#>Ó?Ð?Ø‹Jð	ûô$ $×0Ñ0ò Úðûô
 ×&Ñ&ò Ýûðúsq   ‚L ÂL6 Â+M ÃN Æ%N= Æ<=O Ì!L3Ì2L3Ì6MÍMÍNÍ, NÎNÎN:Î9N:Î=OÏOÏO5Ï0O5c                 ó<   — d| j                   ›d| j                  ›d�S )Nz<PDFCIDFont: basefont=z, cidcoding=r2  )rÞ  r   r  s    r1   r  zPDFCIDFont.__repr__¿  s   � Ø<@¿M»MÈ4Ï>Ë>ÐZÐZr3   c                 ó   — | j                   S r<   )r  r  s    r1   r¦  zPDFCIDFont.is_verticalÂ  s   € Ø�}‰}Ðr3   c                  ó   — y)NTrD   r  s    r1   r©  zPDFCIDFont.is_multibyteÅ  s   € Ør3   c                 ó8   — | j                   j                  |«      S r<   )rb  r«  rJ   s     r1   r«  zPDFCIDFont.decodeÈ  s   € Ø�y‰y×Ñ Ó%Ð%r3   c                 óN   — | j                   j                  || j                  «      S )zDReturns an integer for horizontal fonts, a tuple for vertical fonts.)r  r9  r  r¶  s     r1   r¹  zPDFCIDFont.char_dispË  s   € à�z‰z�~‰~˜c 4×#4Ñ#4Ó5Ð5r3   c                 ó®   — 	 | j                   st        |«      ‚| j                   j                  |«      S # t        $ r t        | j                  |«      ‚w xY wr<   )r‚  rO   rÏ  rŠ  r   r¶  s     r1   rµ  zPDFCIDFont.to_unichrÏ  sQ   € ð	<Ø×#Ò#Ü˜s“mÐ#Ø×#Ñ#×.Ñ.¨sÓ3Ð3øÜò 	<Ü& t§~¡~°sÓ;Ð;ð	<ús	   ‚14 ´ AN)
r@   rA   rB   rH   r  r¦  r©  r«  r¹  rµ  rD   r3   r1   rò  rò  x  s(   „ òCòJ[òòò&ò6ó<r3   rò  c                 óˆ   — | dd  D ].  }t        |d«      5 }t        ||«      }t        |«       d d d «       Œ0 y # 1 sw Y   Œ;xY w)Nr   Úrb)Úopenr›   Úprint)ÚargvÚfnamer�   Úfonts       r1   Úmainr  Ù  sU   € Ø�a�b�ò ˆÜ�%˜Óð 	 "ä˜5 "Ó%ˆDÜ�$ŒK÷	ð 	ðð
 ÷		ð 	ús	   •8¸A	Ú__main__):ÚsysrŒ   Úior   Úcmapdbr   r   r   r   Ú
encodingdbr	   r
   Úpsparserr   r   r   r   r   r   r   Úpdftypesr   r   r   r   r   r   r   r   Úfontmetricsr   Úutilsr   r   r   r   r2   r8   r:   rF   rŠ   r™   r›   rQ  r‡  rŠ  rÅ  ÚLITERAL_TYPE1CrŽ  r¿  rÑ  rç  rê  rò  r  r@   Úexitr  rD   r3   r1   ú<module>r"     sP  ðã 
Û Ý Ý Ý Ý "Ý Ý "Ý $Ý #Ý Ý Ý Ý Ý Ý "Ý "Ý Ý Ý Ý !Ý  Ý  Ý "Ý %Ý $Ý Ý Ý òò.÷2&ñ &ô#˜Mô #ðL X€ò)÷XAñ A÷HLñ Lôb	�<ô 	ô	˜<ô 	ñ  Ð 2Ó3Ð Ù�X“€÷=Cñ =CôB!2�Gô !2ôJ=�=ô =ô@@�lô @ô �=ô  ô.]<�ô ]<òBð ˆzÒØ€C‡H�H‰T�#—(‘(‹^Õð r3   