1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
Ë
³òúhŸ˜ã    ó¬—ddlmZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
m Z m Z dZ e rddl
mZejeeze fZn ejZdld„Zidd“d    d
“d d “d d“dd“dd“dd“dd“dd“dd“dd“dd“dd “d!d"“d#d$“d%d&“d'd(“id)d*“d+d,“d-d.“d/d0“d1d2“d3d4“d5d6“d7d8“d9d:“d;d<“d=d>“d?d@“dAdB“dCdD“dEdF“dGdH“dIdJ“¥dKdLdMdNdOdPdQdRœ¥ZdmdS„ZGdT„dUe«ZdndV„ZGdW„dXe «ZGdY„dZe«ZGd[„d\e«ZGd]„d^«ZGd_„d`«ZGda„dbee «ZGdc„dde«Z Gde„df«Z!Gdg„dh«Z"dodi„Z#Gdj„dk«Z$y)pé)Ú annotationsN)ÚAnyÚ
NamedTupleF)ÚIOcóF—tj|jd«zS)NÚ    utf_16_be)ÚcodecsÚ BOM_UTF16_BEÚencode)Úss ú@H:\Change_password\venv_build\Lib\site-packages\PIL/PdfParser.pyÚ encode_textrs€Ü × Ñ  §¡¨+Ó!6Ñ 6Ð6óéúéu˘éuˇéuˆéu˙éu˝éu˛éu˚éu˜é€u•éu†é‚u‡éƒu…é„u—é…u–é†uƒé‡u⁄éˆu‹é‰u›éŠu−é‹u‰éŒu„éu“éŽu”éu‘éu’é‘u‚é’u™é“ufié”uflé•uŁé–uŒé—uÅ é˜uŸuŽuıułuœuÅ¡užu€)é™éšé›éœééžé cóâ—|dttj«tjk(r+|ttj«djd«Sdj    d„|D««S)NrÚc3óZK—|]#}tj|t|««–—Œ%y­w©N)ÚPDFDocEncodingÚgetÚchr)Ú.0Úbytes  r ú    <genexpr>zdecode_text.<locals>.<genexpr>Ms!èø€ÒI¸t”~×)Ñ)¨$´°D³    ×:ÑIùs‚)+)Úlenr    r
ÚdecodeÚjoin)Úbs r Ú decode_textrHIs\€ØР   #Œ3Œv×"Ñ"Ó #Ð$¬×(;Ñ(;Ò;Ø””V×(Ñ(Ó)Ð+Ð,×3Ñ3°KÓ@Ð@àw‰wÑIÀqÔIÓIÐIrcó—eZdZdZy)ÚPdfFormatErrorz\An error that probably indicates a syntactic or semantic error in the
    PDF file structureN)Ú__name__Ú
__module__Ú __qualname__Ú__doc__©rr rJrJPs „ñð    rrJcó—|s t|«‚yr=)rJ)Ú    conditionÚ error_messages  r Úcheck_format_conditionrSWs€Ù ܘ]Ó+Ð+ð rcó"—eZdZUded<ded<y)ÚIndirectReferenceTupleÚintÚ    object_idÚ
generationN)rKrLrMÚ__annotations__rOrr rUrU\s …؃NØ„OrrUcó4—eZdZdd„Zdd„Zd    d„Zd    d„Zd
d„Zy) ÚIndirectReferencecó:—|j›d|j›dS)Nú z R©rWrX©Úselfs r Ú__str__zIndirectReference.__str__bs€Ø—.‘.Ð!  4§?¡?Ð"3°2Ð6Ð6rcó@—|j«jd«S©Núus-ascii)rar r_s r Ú    __bytes__zIndirectReference.__bytes__es€Ø|‰|‹~×$Ñ$ ZÓ0Ð0rcóÀ—|j|juryt|t«sJ‚|j|jk(xr|j|jk(S)NF)Ú    __class__Ú
isinstancer[rWrX©r`Úothers  r Ú__eq__zIndirectReference.__eq__hsM€Ø >‰> §¡Ñ 0ØÜ˜%Ô!2Ô3Ð3Ð3؏‰ $§.¡.Ñ0ÒX°U×5EÑ5EÈÏÉÑ5XÐXrcó—||k( Sr=rOris  r Ú__ne__zIndirectReference.__ne__ns€Ø˜E‘MÐ"Ð"rcóD—t|j|jf«Sr=)ÚhashrWrXr_s r Ú__hash__zIndirectReference.__hash__qs€ÜT—^‘^ T§_¡_Ð5Ó6Ð6rN©ÚreturnÚstr©rrÚbytes©rjÚobjectrrÚbool©rrrV)rKrLrMrarerkrmrprOrr r[r[as„ó7ó1óYó #ô7rr[có—eZdZdd„Zy)ÚIndirectObjectDefcó:—|j›d|j›dS)Nr]z objr^r_s r razIndirectObjectDef.__str__vs€Ø—.‘.Ð!  4§?¡?Ð"3°4Ð8Ð8rNrq)rKrLrMrarOrr r{r{us„ô9rr{cóL—eZdZd
d„Zd d„Zd d„Zd d„Zdd„Zdd„Zdd„Z    dd„Z
y    )Ú    XrefTablecó@—i|_i|_ddi|_d|_y)NriF)Úexisting_entriesÚ new_entriesÚdeleted_entriesÚreading_finishedr_s r Ú__init__zXrefTable.__init__{s0€à ð     Ôð ð     Ôð!" 5˜zˆÔØ %ˆÕrcó’—|jr||j|<n||j|<||jvr|j|=yyr=)rƒrr€r‚©r`ÚkeyÚvalues   r Ú __setitem__zXrefTable.__setitem__…sL€Ø ×  Ò  Ø$)ˆD× Ñ ˜SÒ !à).ˆD× !Ñ ! #Ñ &Ø $×&Ñ&Ñ &Ø×$Ñ$ SÑ)ð 'rcó^—    |j|S#t$r|j|cYSwxYwr=)rÚKeyErrorr€©r`r‡s  r Ú __getitem__zXrefTable.__getitem__s8€ð    .Ø×#Ñ# CÑ(Ð (øÜò    .Ø×(Ñ(¨Ñ-Ò -ð    .ús ‚‘,«,cóF—||jvr2|j|ddz}|j|=||j|<y||jvr%|j|ddz}||j|<y||jvr|j|}yd|›d}t|«‚)Néz
object ID z+ cannot be deleted because it doesn't exist)rr‚r€Ú
IndexError)r`r‡rXÚmsgs    r Ú __delitem__zXrefTable.__delitem__“s·€Ø $×"Ñ"Ñ "Ø×)Ñ)¨#Ñ.¨qÑ1°AÑ5ˆJØ× Ñ  Ð%Ø(2ˆD×  Ñ   Ò %Ø D×)Ñ)Ñ )Ø×.Ñ.¨sÑ3°AÑ6¸Ñ:ˆJØ(2ˆD×  Ñ   Ò %Ø D×(Ñ(Ñ (Ø×-Ñ-¨cÑ2‰Jà˜s˜eÐ#NÐOˆCܘS“/Ð !rcó>—||jvxs||jvSr=)r€rrŒs  r Ú __contains__zXrefTable.__contains__¡s#€Ød×+Ñ+Ð+ÒF¨s°d×6FÑ6FÐ/FÐFrcóê—tt|jj««t|jj««zt|j
j««z«Sr=)rDÚsetr€Úkeysrr‚r_s r Ú__len__zXrefTable.__len__¤s^€ÜÜ ×%Ñ%×*Ñ*Ó,Ó -ܐ$×"Ñ"×'Ñ'Ó)Ó*ñ +ä$×&Ñ&×+Ñ+Ó-Ó.ñ /ó
ð    
rcóؗt|jj««t|jj««z
t|jj««zSr=)r–r€r—r‚rr_s r r—zXrefTable.keys«sS€ä ×%Ñ%×*Ñ*Ó,Ó -´°D×4HÑ4H×4MÑ4MÓ4OÓ0PÑ PÜ × Ñ ×%Ñ%Ó'Ó (ñ)ð    )rcó—tt|jj««t|jj««z«}tt|jj«««}|j «}|j d«|rÜd}t|«D]\}}||dz|k(r|}Œ|d|}||d}n|}g}|j d|dt|«fz«|D]}    |    |jvr"|j d|j|    z«Œ3|jd«}
t|    |
k(d|    ›d|
›«    |d} |j d| |j|    fz«Œƒ|rŒÜ|S#t$rd} YŒ7wxYw)    Nsxref
rs%d %d
rs%010d %05d n 
z*expected the next deleted object ID to be z, instead found s%010d %05d f 
) Úsortedr–rr—r‚ÚtellÚwriteÚ    enumeraterDÚpoprSr) r`Úfr—Ú deleted_keysÚ    startxrefÚprevÚindexr‡Úcontiguous_keysrWÚthis_deleted_object_idÚnext_in_linked_lists             r rzXrefTable.write°s¹€Ü”c˜$×*Ñ*×/Ñ/Ó1Ó2´S¸×9MÑ9M×9RÑ9RÓ9TÓ5UÑUÓVˆÜœc $×"6Ñ"6×";Ñ";Ó"=Ó>Ó?ˆ Ø—F‘F“Hˆ    Ø    ‰    ÔÙà#ˆDÜ'¨›oò     ‘
sؐ< 4¨!¡8¨s¢?Ø‘Dà&*¨6¨E lOØ  ˜<DÙð      ð#'ØØ G‰GJ /°!Ñ"4´c¸/Ó6JÐ!KÑKÔ LØ,ò     Ø × 0Ñ 0Ñ0Ø—G‘GÐ.°×1AÑ1AÀ)Ñ1LÑLÕMà-9×-=Ñ-=¸aÓ-@Ð*Ü*Ø!Ð%;Ñ;ØDÀYÀKðP)Ø)?Ð(@ðBôð
0Ø.:¸1©oÐ+ð—G‘GØ*Ø.°×0DÑ0DÀYÑ0OÐPñQõð òð@Ðøô &ò0Ø./Ò+ð0úsÅE>Å> F Æ F N©rrÚNone)r‡rVrˆútuple[int, int]rrr©)r‡rVrrrª)r‡rVrrr©)r‡rVrrrxry)rrzset[int])r ú    IO[bytes]rrrV) rKrLrMr„r‰rr’r”r˜r—rrOrr r~r~zs+„ó&ó*ó.ó "óGó
ó)ô
%rr~c    ó—eZdZUded<dd„Zdd„Zdd„Zdd„Zdd„Ze    dd„«Z
e e d    d
««d Dchc] }t|«’Œc}}}z
Zdd „Zy cc}}}w)ÚPdfNameruÚnamecó¤—t|t«r|j|_yt|t«r||_y|j    d«|_yrc)rhr­r®rur )r`r®s  r r„zPdfName.__init__Ûs8€Ü dœGÔ $ØŸ    ™    ˆDIÜ ˜œeÔ $؈DIàŸ ™  JÓ/ˆDIrcó8—|jjd«Src)r®rEr_s r Ú name_as_strzPdfName.name_as_strãs€Øy‰y×Ñ 
Ó+Ð+rcóz—t|t«xr|j|jk(xs||jk(Sr=)rhr­r®ris  r rkzPdfName.__eq__æs4€ä uœgÓ &Ò B¨5¯:©:¸¿¹Ñ+Bò à d—i‘iÑ ð     rcó,—t|j«Sr=)ror®r_s r rpzPdfName.__hash__ës€ÜD—I‘I‹Ðrcó`—|jj›dt|j«›dS)Nú(ú))rgrKÚreprr®r_s r Ú__repr__zPdfName.__repr__îs)€Ø—.‘.×)Ñ)Ð*¨!¬D°·±«OÐ+<¸AÐ>Ð>rcó8—|tj|««Sr=)Ú    PdfParserÚinterpret_name)ÚclsÚdatas  r Úfrom_pdf_streamzPdfName.from_pdf_streamñs€á”9×+Ñ+¨DÓ1Ó2Ð2ré!éz #%/()<>[]{}có¸—td«}|jD]6}||jvr|j|«Œ#|j    d|z«Œ8t |«S)Nó/s#%02X)Ú    bytearrayr®Ú allowed_charsÚappendÚextendru)r`ÚresultrGs   r rezPdfName.__bytes__÷sT€Ü˜4“ˆØ—‘ò    ,ˆAؐD×&Ñ&Ñ&Ø— ‘ ˜aÕ à— ‘ ˜h¨™lÕ+ð        ,ô
V‹}ÐrN)r®zPdfName | bytes | strrrr©rqrvry)r½rurrr­rt)rKrLrMrYr„r±rkrpr¸Ú classmethodr¾r–ÚrangeÚordrÄre)rAÚcrÊs000r r­r­Øsh…Ø
ƒKó0ó,ó ó
ó?ðò3óð3ñ™˜b #›Ó'¸=×*IÐ*I°a¬3¨q­6Ô*IÑI€Môùô+Js¼A
r­có—eZdZdd„Zy)ÚPdfArraycó>—ddjd„|D««zdzS)Ns[ ó c3ó2K—|]}t|«–—Œy­wr=)Úpdf_repr)rAÚxs  r rCz%PdfArray.__bytes__.<locals>.<genexpr>sèø€Ò ;°¤¨!§Ñ ;ùs‚s ])rFr_s r rezPdfArray.__bytes__s!€Øt—y‘yÑ ;°dÔ ;Ó;Ñ;¸eÑCÐCrNrt)rKrLrMrerOrr rÍrÍs„ôDrrÍcó$—eZdZdd„Zdd„Zdd„Zy)ÚPdfDictcóz—|dk(r"tjj|||«y|||jd«<y)Nr½rd)Ú collectionsÚUserDictÚ __setattr__r r†s   r rØzPdfDict.__setattr__s4€Ø &Š=Ü ×  Ñ  × ,Ñ ,¨T°3¸Õ >à+0ˆD—‘˜JÓ'Ò (rcó`—    ||jd«}t|t«r t |«}|j d«rÏ|jd«r|dd}d}t|«dkDr5|d}t|dd«d    z}t|«d
kDr|t|d d
«z }d dt|«dz
}tj|dt|«dz|«}|d vr:d    z}|dk(r|dz}tjtj|«|z«}|S#t$r}t|«|‚d}~wwxYw)NrdÚDatezD:éÚZéééé<ééz %Y%m%d%H%M%S)ú+ú-rãéÿÿÿÿ)r r‹ÚAttributeErrorrhrurHÚendswithÚ
startswithrDrVÚtimeÚstrptimeÚgmtimeÚcalendarÚtimegm)r`r‡rˆÚeÚ relationshipÚoffsetÚformats       r Ú __getattr__zPdfDict.__getattr__ s:€ð    -ؘŸ™ JÓ/Ñ0ˆEô eœUÔ #Ü Ó&ˆEØ <‰<˜Ô Ø×Ñ Ô%ؘa˜b˜    àˆLܐ5‹z˜BŠØ$ R™y ܘU 2 b˜\Ó*¨RÑ/Üu“: ’?Øœc %¨¨2 ,Ó/Ñ/Fà#Ð$4¤c¨%£j°1¡nÐ5ˆFÜ—M‘M %Ð(9¬#¨f«+¸©/Ð":¸FÓCˆEؘzÑ)ؘ"‘ Ø 3Ò&ؘb‘LFÜŸ ™ ¤H§O¡O°EÓ$:¸VÑ$CÓDØˆ øô-ò    -Ü  Ó%¨1Ð ,ûð    -ús‚DÄ    D-Ä D(Ä(D-cóH—td«}|j«D]i\}}|€Œ    t|«}|jd«|jt    t |«««|jd«|j|«Œk|jd«t    |«S)Nó<<ó
rÏs
>>)rÃÚitemsrÑrÆrur­)r`Úoutr‡rˆs    r rezPdfDict.__bytes__(s‡€Ü˜ÓˆØŸ*™*›,ò    ‰JˆCØˆ}ØÜ˜U“OˆEØ J‰JuÔ Ø J‰J”uœW S›\Ó*Ô +Ø J‰JtÔ Ø J‰JuÕ ð    ð     
‰
7ÔܐS‹zÐrN)r‡rsrˆrrrr©)r‡rsrrzstr | time.struct_timert)rKrLrMrØròrerOrr rÔrÔs„ó1ó ô6 rrÔcó—eZdZdd„Zdd„Zy)Ú    PdfBinarycó—||_yr=)r½)r`r½s  r r„zPdfBinary.__init__7s    €Øˆ    rcóL—ddjd„|jD««zS)Ns<%s>rc3ó&K—|]    }d|z–—Œ y­w)s%02XNrO©rArGs  r rCz&PdfBinary.__bytes__.<locals>.<genexpr>;sèø€Ò!A°! '¨A¥+Ñ!Aùs‚)rFr½r_s r rezPdfBinary.__bytes__:s €Ø˜Ÿ™Ñ!A°t·y±yÔ!AÓAÑAÐArN)r½zlist[int] | bytesrrr©rt)rKrLrMr„rerOrr rùrù6s „óôBrrùcó—eZdZdd„Zdd„Zy)Ú    PdfStreamcó —||_||_yr=)Ú
dictionaryÚbuf)r`rrs   r r„zPdfStream.__init__?s€Ø$ˆŒØˆrcóF—    |jd}|dk(r:    |jd}tj|jt |«¬«Sdt |«›d}t|«‚#t$r|jcYSwxYw#t$r|jd}YŒywxYw)NsFilters FlateDecodesDLóLength)Úbufsizezstream filter z unknown/unsupported)rr‹rÚzlibÚ
decompressrVr·ÚNotImplementedError)r`ÚfilterÚexpected_lengthr‘s    r rEzPdfStream.decodeCs¤€ð    Ø—_‘_ YÑ/ˆFð ^Ò #ð =Ø"&§/¡/°%Ñ"8ô—?‘? 4§8¡8´S¸Ó5IÔJÐ Jà"¤4¨£< .Ð0DÐEˆCÜ% cÓ*Ð *øôò    Ø—8‘8ŠOð    ûô
ò =Ø"&§/¡/°)Ñ"<’ð =ús"‚A*—BÁ*BÂBÂB ÂB N)rrÔrrurrr©rt)rKrLrMr„rErOrr rÿrÿ>s „óô +rrÿcóæ—|dury|dury|€yt|ttttf«r t |«St|t tf«rt|«jd«St|tj«r+dtjd|«jd«zd    zSt|t«rt t|««St|t«rt t|««St|t«rtt!|««St|t
«r>|j#d
d «}|j#d d «}|j#d    d«}d |zd    zSt |«S)NTstrueFsfalsesnullrds(D:z %Y%m%d%H%M%SZó)ó\s\\ó(ó\(s\))rhr­rÔrÍrùrurVÚfloatrsr réÚ struct_timeÚstrftimeÚdictÚlistrÑrÚreplace)rÒs r rÑrÑSs-€ØˆDyØØ    
ˆe‰ØØ    
ˆØÜ    Aœ¤¬(´IÐ>Ô    ?ܐQ‹xˆÜ    AœœU|Ô    $ܐ1‹v}‰}˜ZÓ(Ð(Ü    A”t×'Ñ'Ô    (ØœŸ ™  o°qÓ9×@Ñ@ÀÓLÑLÈtÑSÐSÜ    A”tÔ    Ü”W˜Q“ZӠРܠ   A”tÔ    Ü”X˜a“[Ó!Ð!Ü    A”sÔ    Üœ  A›Ó'Ð'Ü    A”uÔ    à I‰Ie˜WÓ %ˆØ I‰Id˜FÓ #ˆØ I‰Id˜FÓ #ˆØa‰x˜$‰ÐäQ‹xˆrcóN—eZdZdZ                    dS                                            dTd„ZdUd„ZdVd„ZdWd„ZdWd„ZdWd„Z    dWd    „Z
dWd
„Z dXd „Z dYd „Z dWd „Z    dZ            d[d„Z                                d\d„Z                                d]d„ZdWd„Zed^d„«ZdWd„ZdZd_d„ZdZdZdZdZedzZedzZdZdZeezezZe jBedzezdzezdzezd zezd!zezd"ze jD«Z#e jBedzezd#zezdzezd zezd!zeze jD«Z$dWd$„Z%d`d%„Z&e jBe«Z'e jBed&zezd'z«Z(e jBed(z«Z)e jBed)zez«Z*e+dad*„«Z,e jBd+«Z-e+dbdcd,„«Z.e jBed-zezd'z«Z/e jBed.zezd'z«Z0e jBed/zezd'z«Z1e jBed0zezd'z«Z2e jBed1zezd'z«Z3e jBed2z«Z4e jBed3z«Z5e jBed4zezd5z«Z6e jBed6z«Z7e jBed7zezd7zezd8zezd'z«Z8e jBed7zezd7zezd9zezd'z«Z9e jBed:zezd'z«Z:e jBd;ezd<zezd=z«Z;e jBed>z«Z<e jBed?zezd'z«Z=e+        dd                                    ded@„«Z>e jBdA«Z?idBdC“dDdE“dFdG“dHdI“dJdK“d;d;“d'd'“dLdL“e@dB«dC“e@dD«dE“e@dF«dG“e@dH«dI“e@dJ«dK“e@d;«d;“e@d'«d'“e@dL«dL“ZAe+                        dfdM„«ZBe jBedNzez«ZCe jBed zezd zezez«ZDe jBdO«ZEdgdP„ZFdhdidQ„ZG    dZ            djdR„ZHy)krºz|Based on
    https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/PDF32000_2008.pdf
    Supports PDF up to 1.4
    NcóÈ—|r|r d}t|«‚||_||_||_||_d|_d|_||€t||«x|_}d|_|<|j|«|_d|_|st|d«r|j|_i|_ |||||jr|j«n{dx|_ |_t«|_d|_t«|_d|_t«|_g|_g|_d|_d|_i|_t5«|_d|j6_|r|j;«yy)Nz4specify buf or f or filename, but not both buf and fFTr®r)Ú RuntimeErrorÚfilenamerr Ú start_offsetÚshould_close_bufÚshould_close_fileÚopenÚget_buf_from_fileÚhasattrr®Úcached_objectsÚ read_pdf_infoÚfile_size_totalÚfile_size_thisrÔÚrootÚroot_refÚinfoÚinfo_refÚpage_tree_rootÚpagesÚ
orig_pagesÚ    pages_refÚlast_xref_section_offsetÚ trailer_dictr~Ú
xref_tablerƒÚseek_end)r`rr rrÚmoder‘s       r r„zPdfParser.__init__vsM€ñ ‘1ØHˆCܘsÓ#Ð #Ø ˆŒ Ø9<ˆŒØˆŒØ(ˆÔØ %ˆÔØ!&ˆÔØ Ð  A Iܘh¨Ó-Ð -ˆDŒFQØ%)ˆDÔ "Ø ˆ=Ø×-Ñ-¨aÓ0ˆDŒHØ$(ˆDÔ !Ù¤¨¨6Ô 2Ø !§¡” Ø<>ˆÔÙ Ù Ù Ù Ø 8Š8Ø × Ñ Õ  à9:Ð :ˆDÔ   4Ô#6Ü›    ˆDŒIØ ˆDŒMÜ›    ˆDŒIØ ˆDŒMÜ")£)ˆDÔ Ø24ˆDŒJØ79ˆDŒOØ!ˆDŒNØ,0ˆDÔ )Ø24ˆDÔ Ü'›kˆDŒOØ+/ˆ‰Ô(Ù Ø M‰MOð rcó—|Sr=rOr_s r Ú    __enter__zPdfParser.__enter__§s€Øˆ rcó$—|j«yr=)Úclose)r`Úargss  r Ú__exit__zPdfParser.__exit__ªs €Ø 
‰
 rcóD—|j«|j«yr=)Ú    close_bufr/r_s r Ú start_writingzPdfParser.start_writing­s€Ø ‰ÔØ  ‰ rcóŽ—t|jtj«r|jj«d|_yr=)rhrÚmmapr4r_s r r8zPdfParser.close_buf±s)€Ü d—h‘h¤§    ¡    Ô *Ø H‰HN‰NÔ Øˆrcó²—|jr|j«|j/|jr"|jj    «d|_yyyr=)rr8r rr4r_s r r4zPdfParser.close¶sC€Ø ×  Ò  Ø N‰NÔ Ø 6‰6Ð  $×"8Ò"8Ø F‰FL‰LŒN؈DFð#9Ð rcót—|j€J‚|jjdtj«y)Nr)r ÚseekÚosÚSEEK_ENDr_s r r/zPdfParser.seek_end½s(€Øv‰vÐ!Ð!Ð!Ø ‰ ‰ A”r—{‘{Õ#rcóV—|j€J‚|jjd«y)Ns    %PDF-1.4
)r rr_s r Ú write_headerzPdfParser.write_headerÁs"€Øv‰vÐ!Ð!Ð!Ø ‰ ‰ ]Õ#rcóz—|j€J‚|jjd|›dj««y)Nz% ú
)r rr )r`r s  r Ú write_commentzPdfParser.write_commentÅs3€Øv‰vÐ!Ð!Ð!Ø ‰ ‰ r˜!˜˜BZ×&Ñ&Ó(Õ)rcóê—|j€J‚|j«|j|jj««|_|jd«|_|j «|j|jtd«|j
¬«|j|j
td«t|j«|j¬«|jS)NróCatalog)ÚTypeÚPagesóPages)rHÚCountÚKids) r Údel_rootÚnext_object_idrœr%r+Ú rewrite_pagesÚ    write_objr­rDr)r_s r Ú write_catalogzPdfParser.write_catalogÉs²€Øv‰vÐ!Ð!Ð!Ø  ‰ ŒØ×+Ñ+¨D¯F©F¯K©K«MÓ:ˆŒ Ø×,Ñ,¨QÓ/ˆŒØ ×ÑÔØ ‰t—}‘}¬7°:Ó+>ÀdÇnÁnˆÔUØ ‰Ø N‰NܘÓ"ܐd—j‘j“/Ø—‘ð        ô    
ð }‰}Ðrcó®—g}t|j«D]×\}}|j|}|j|j=|j |t d««||jvrŒXi}|j«D]\}}|||j«<Œ|j|d<|jdi|¤Ž}t|j«D]\}    }
|
|k(sŒ ||j|    <ŒŒÙ|D]X} | sŒ|j| } | j|jvr|j| j=| jdd«} | rŒSŒZg|_y)NsParentÚParentr=) ržr*r r.rWrÅr­r)rör±r+Ú
write_pager?) r`Úpages_tree_nodes_to_deleteÚiÚpage_refÚ    page_infoÚstringified_page_infor‡rˆÚ new_page_refÚjÚ cur_page_refÚpages_tree_node_refÚpages_tree_nodes              r rOzPdfParser.rewrite_pagesØse€Ø%'Ð"Ü$ T§_¡_Ó5ò    1‰KˆAˆxØ×+Ñ+¨HÑ5ˆIØ—‘ × 2Ñ 2Ð3Ø &× -Ñ -¨i¼À    Ó8JÑ.KÔ LؘtŸz™zÑ)àà$&Ð !Ø'Ÿo™oÓ/ò A‘
Uà;@Ð% c§o¡oÓ&7Ò8ð Að/3¯n©nÐ ! (Ñ +Ø*˜4Ÿ?™?ÑIÐ3HÑIˆLÜ#,¨T¯Z©ZÓ#8ò 1‘<Ø 8Ó+à$0D—J‘J˜q’Mñ 1ð    1ð&$>ò    KÐ Ú%Ø"&×"5Ñ"5Ð6IÑ"JØ&×0Ñ0°D·O±OÑCØŸ™Ð(;×(EÑ(EÐFØ&5×&9Ñ&9¸)ÀTÓ&JÐ#ó    &ð    K𠈍rcó$—|j€J‚|r|j«||_|jr!|j    d|j«|_|j j|j«}t|j «}|j|dœ}|j|j|d<|jr|j
|d<||_    |jjdtt|««zd|zz«y)N)óRootóSizeóPrevóInfostrailer
s
startxref
%d
%%%%EOF) r rMr%r&rPr'r.rrDr,rurÔ)r`Ú new_root_refÚ
start_xrefÚ num_entriesr-s     r Úwrite_xref_and_trailerz PdfParser.write_xref_and_trailerõsè€ðv‰vÐ!Ð!Ð!Ù Ø M‰MŒOØ(ˆDŒMØ 9Š9Ø ŸN™N¨4°·±Ó;ˆDŒMØ—_‘_×*Ñ*¨4¯6©6Ó2ˆ
ܘ$Ÿ/™/Ó*ˆ à—]‘]Ø ñ0
ˆ ð × (Ñ (Ð 4Ø$(×$AÑ$AˆL˜Ñ !Ø 9Š9Ø$(§M¡MˆL˜Ñ !Ø(2ˆÔ%Ø ‰ ‰ Ø Ü”G˜LÓ)Ó*ñ +à)¨JÑ6ñ 7õ    
rcóº—t|t«r|j|n|}d|vrtd«|d<d|vr|j|d<|j
|g|¢­i|¤ŽS)NrHóPagerS)rhrVr)r­r+rP)r`ÚrefÚobjsÚdict_objÚobj_refs     r rTzPdfParser.write_pagesd€ô&0°´SÔ%9$—*‘*˜S’/¸sˆØ ˜Ñ !Ü& wÓ/ˆHVÑ Ø ˜8Ñ #Ø!%§¡ˆHXÑ Øˆt~‰~˜gÐ9¨Ò9°Ñ9Ð9rcón—|j€J‚|j}|€ |j|j««}n3|j«|jf|j|j
<|j tt|Ž««|jdd«}|t|«|d<|r|j t|««|D]}|j t|««Œ|3|j d«|j |«|j d«|j d«|S)NÚstreamÚLengthsstream
s
endstream
sendobj
) r rNrœrXr.rWrrur{rŸrDrÑ)r`rjrkrlr roÚobjs       r rPzPdfParser.write_objs€ðv‰vÐ!Ð!Ð!Ø F‰FˆØ ˆ;Ø×%Ñ% a§f¡f£hÓ/‰Cà./¯f©f«h¸¿¹Ð-GˆDO‰O˜CŸM™MÑ *Ø    ‰”Ô'¨Ð-Ó.Ô/Ø—‘˜h¨Ó-ˆØ Ð Ü!$ V£ˆHXÑ Ù Ø G‰G”H˜XÓ&Ô 'Øò    #ˆCØ G‰G”H˜S“MÕ "ð    #à Ð Ø G‰GKÔ  Ø G‰GFŒOØ G‰GÐ$Ô %Ø    ‰ ÔØˆ
rcó¨—|j€y|j|jj=|j|jdj=y)NrJ)r%r.rWr$r_s r rMzPdfParser.del_root1s@€Ø =‰=Ð  Ø Ø O‰O˜DŸM™M×3Ñ3Ð 4Ø O‰O˜DŸI™I hÑ/×9Ñ9Ñ :rcóú—t|d«r|j«St|d«r|j«S    tj|j    «dtj
¬«S#t $rYywxYw)NÚ    getbufferÚgetvaluer)Úaccessr)rrtrur;ÚfilenoÚ ACCESS_READÚ
ValueError)r s r rzPdfParser.get_buf_from_file7sd€ä 1kÔ "Ø—;‘;“=Ð  Ü Q˜
Ô #Ø—:‘:“<Ð ð Ü—y‘y §¡£¨Q´t×7GÑ7GÔHÐHøÜò Ùð úsº3A.Á.    A:Á9A:cóP—|j€J‚t|j«|_|j|jz
|_|j «t |jjd«dud«|jd|_    |j€J‚|jjdd«|_
t|j|j««|_ |j€t«|_n)t|j|j««|_t d|jvd«t |jddk(d«t |jjd«dud    «t t|jdt «d
«|jd|_|j"€J‚|j|j"«|_|j'|j$«|_|j(dd|_y) Nr`zRoot is missingrcóTypez/Type missing in RootrGz/Type in Root is not /CatalogrJz/Pages missing in Rootz+/Pages in Root is not an indirect reference)rrDr"rr#Ú read_trailerrSr-r?r%r'rÔÚ read_indirectr$r&rhr[r+r(Úlinearize_page_treer)r*r_s r r!zPdfParser.read_pdf_infoCsǀ؏x‰xÐ#Ð#Ð#Ü" 4§8¡8›}ˆÔØ"×2Ñ2°T×5FÑ5FÑFˆÔØ ×ÑÔÜØ × Ñ × !Ñ ! 'Ó *°$Ð 6Ð8Iô    
ð×)Ñ)¨'Ñ2ˆŒ ؏}‰}Ð(Ð(Ð(Ø×)Ñ)×-Ñ-¨g°tÓ<ˆŒ ܘD×.Ñ.¨t¯}©}Ó=Ó>ˆŒ    Ø =‰=Ð  Ü›    ˆDIä × 2Ñ 2°4·=±=Ó AÓBˆDŒIܘw¨$¯)©)Ð3Ð5LÔMÜØ I‰IgÑ  *Ñ ,Ð.Mô    
ô    Ø I‰IM‰M˜(Ó #¨4Ð /Ð1Iô    
ô    Ü t—y‘y Ñ*Ô,=Ó >Ø 9ô    
🙠8Ñ,ˆŒØ~‰~Ð)Ð)Ð)Ø"×0Ñ0°·±Ó@ˆÔØ×-Ñ-¨d×.AÑ.AÓBˆŒ
ðŸ*™*¡Q˜-ˆrcóØ—    tt|jj««dzd«}||df|j|j
<|S#t$rtdd«}YŒ6wxYw)Nrr)r[Úmaxr.r—ryrW)r`rðÚ    references   r rNzPdfParser.next_object_idgsm€ð    0ä)¬#¨d¯o©o×.BÑ.BÓ.DÓ*EÈÑ*IÈ1ÓMˆIð Ð Ø4:¸A°;ˆDO‰O˜I×/Ñ/Ñ 0ØÐøô    ò    0Ü)¨!¨QÓ/ŠIð    0ús‚0AÁA)Á(A)s [][()<>{}/%]s$[][()<>{}/%\000\011\012\014\015\040]s[\000\011\012\014\015\040]s#[\000\011\012\014\015\0400-9a-fA-F]ó*ó+s[\000\011\014\040]*s[\r\n]+strailers<<(.*>>)s    startxrefs([0-9]+)s%%EOFó$s    <<(.*?>>)cóº—|j€J‚t|j«dz
}||jkr |j}|jj    |j|«}t |dud«|}|r<|}|jj    |j|j «dz«}|rŒ<|s|}|€J‚|jd«}t|jd««|_    |j|«|_ t«|_ |j|j¬«d|jvr|j|jd«yy)Né@ztrailer end not foundérrÛ©Úxref_section_offsetrb)rrDrÚre_trailer_endÚsearchrSÚstartÚgrouprVr,Úinterpret_trailerr-r~r.Úread_xref_tableÚread_prev_trailer)r`Úsearch_start_offsetÚmÚ
last_matchÚ trailer_datas     r r|zPdfParser.read_trailer™s7€Øx‰xÐ#Ð#Ð#Ü! $§(¡(›m¨eÑ3ÐØ  ×!2Ñ!2Ò 2Ø"&×"3Ñ"3Ð Ø × Ñ × &Ñ & t§x¡xÐ1DÓ EˆÜ˜q¨˜}Ð.EÔFàˆ
ÙØˆJØ×#Ñ#×*Ñ*¨4¯8©8°Q·W±W³YÀ±^ÓDˆAòñ؈A؈}Ј}Ø—w‘w˜q“zˆ Ü(+¨A¯G©G°A«J«ˆÔ%Ø ×2Ñ2°<Ó@ˆÔÜ#›+ˆŒØ ×Ѱ×1NÑ1NÐÔOØ d×'Ñ'Ñ 'Ø × "Ñ " 4×#4Ñ#4°WÑ#=Õ >ð (rcó‚—|j€J‚|j|¬«}|jj|j||dz«}t    |dud«|€J‚|j d«}t    t |j d««|k(d«|j|«}d|vr|j|d«yy)Nrˆr†zprevious trailer not foundrrÛzGxref section offset in previous trailer doesn't match what was expectedrb)    rrÚre_trailer_prevr‹rSrrVrŽr)r`r‰Útrailer_offsetr’r”r-s      r rzPdfParser.read_prev_trailer°sɀ؏x‰xÐ#Ð#Ð#Ø×-Ñ-ÐBUÐ-ÓVˆØ ×  Ñ  × 'Ñ 'Ø H‰H^ n°uÑ&<Ð =ó
ˆô    ˜q¨˜}Ð.JÔK؈}Ј}Ø—w‘w˜q“zˆ ÜÜ —‘˜“
‹OÐ2Ñ 2Ø Uô    
ð×-Ñ-¨lÓ;ˆ Ø lÑ "Ø × "Ñ " <°Ñ#8Õ 9ð #rs/([!-$&'*-.0-;=?-Z\\^-z|~]+)(?=r rôs>>c    óH—i}d}    |jj||«}|sX|jj||«}t|duxr|j    «t |«k(dt ||d«z«n`|j|jd««}t|t«sJ‚|j||j    ««\}}|||<|€n|}ŒÖtd|vxrt|dt«d«td|vxrt|dt«d«|S)Nrz+name not found in trailer, remaining data: rraz&/Size not in trailer or not an integerr`z1/Root not in trailer or not an indirect reference)Úre_nameÚmatchÚ re_dict_endrSÚendrDr·r»rrhruÚ    get_valuerVr[)r¼r”Útrailerrðr’r‡rˆÚ value_offsets        r rŽzPdfParser.interpret_trailerËs1€àˆØˆØØ— ‘ ×!Ñ! ,°Ó7ˆAÙØ—O‘O×)Ñ)¨,¸Ó?Ü&ؘTMÒB a§e¡e£g´°\Ó1BÑ&BØAܘ<¨¨Ð0Ó1ñ2ôð
Ø×$Ñ$ Q§W¡W¨Q£ZÓ0ˆCܘc¤5Ô)Ð )Ð)Ø"%§-¡-° ¸a¿e¹e»gÓ"FÑ ˆE<Ø ˆGC‰LØÐ#ØØ!ˆFð!ô"    Ø wÐ Ò D¤:¨g°gÑ.>ÄÓ#DØ 4ô    
ô    Ø wÐ Ò R¤:¨g°gÑ.>Ô@QÓ#RØ ?ô    
ðˆrs([^#]*)(#([0-9a-fA-F]{2}))?có^—d}|jj|«D]p}|jd«rI||jd«tj    |jd«j d««zz }Œ]||jd«z }Œr|r|j d«St |«S)Nrérrdzutf-8)Úre_hashes_in_nameÚfinditerrrÃÚfromhexrEru)r¼ÚrawÚas_textr®r’s     r r»zPdfParser.interpret_nameìs—€àˆØ×&Ñ&×/Ñ/°Ó4ò    #ˆA؏w‰wqŒzؘŸ™ ›
¤Y×%6Ñ%6°q·w±w¸q³z×7HÑ7HÈÓ7TÓ%UÑUÑU‘à˜Ÿ™ ›
Ñ"‘ð        #ñ
Ø—;‘;˜wÓ'Ð '䘓;Ð rsnull(?=strue(?=sfalse(?=s([-+]?[0-9]+)(?=s)([-+]?([0-9]+\.[0-9]*|[0-9]*\.[0-9]+))(?=s\[ó]s<(s*)>rs ([-+]?[0-9]+)sR(?=sobj(?=s    endobj(?=rs    %[^\r\n]*s)*s stream\r?\ns endstream(?=c óü —|dk(ry|jj||«}|r|j«}|jj||«}|r t    t |j d««dkDd«t    t |j d««dk\d«t    |duxs?|tt |j d««t |j d«««k(d«|j||j«|dz
¬«\}}|€|dfS|jj||«}t    |dud    «|€J‚||j«fSt    | d
«|jj||«}|ršt    t |j d««dkDd «t    t |j d««dk\d «tt |j d««t |j d«««|j«fS|jj||«}|r“|j«}i}|jj||«}|}    |sh|    €J‚|j||    |dz
¬«\}
}    |    €|dfS|j||    |dz
¬«\} }    | ||
<|    €|dfS|jj||    «}|sŒh|j«}    |jj||    «}|r¾|jd «} | t| t
«sd| ›d} t!| «‚||j«|j«| z}|j"j||j«| z«}t    |dud«|€J‚|j«}    t%t'|«|«|    fSt'|«|    fS|j(j||«}|r˜|j«}g}|j*j||«}|}    |sT|    €J‚|j||    |dz
¬«\} }    |j-| «|    €|dfS|j*j||    «}|sŒT||j«fS|j.j||«}|rd|j«fS|j0j||«}|rd|j«fS|j2j||«}|rd|j«fS|j4j||«}|r9t7|j9|j d«««|j«fS|j:j||«}|r*t |j d««|j«fS|j<j||«}|r*t?|j d««|j«fS|j@j||«}|r€tCd„|j d«D««}tE|«dzdk(r|j-tGd««tBjI|jKd««|j«fS|jLj||«}|r |jO||j««SdtQ|||dz«›} t!| «‚)Nr)NNrz<indirect object definition: object ID must be greater than 0rÛz;indirect object definition: generation must be non-negativez2indirect object definition different than expected)Ú max_nestingz(indirect object definition end not foundz$indirect object definition not foundz;indirect object reference: object ID must be greater than 0z:indirect object reference: generation must be non-negativerz&bad or missing Length in stream dict (r¶zstream end not foundTFc3ó*K—|] }|dvsŒ|–—Œ y­w)s0123456789abcdefABCDEFNrOrýs  r rCz&PdfParser.get_value.<locals>.<genexpr>¨sèø€ò#بÐ.GÒ)G”ñ#ùs‚    Œó0rdzunrecognized object: é ))Ú
re_commentršrœÚre_indirect_def_startrSrVrr[rÚre_indirect_def_endÚre_indirect_referenceÚ re_dict_startr›Úre_stream_startr?rhrJÚ re_stream_endrÿrÔÚre_array_startÚ re_array_endrÅÚre_nullÚre_trueÚre_falser™r­r»Úre_intÚre_realrÚ re_string_hexrÃrDrÊr¤rEÚ re_string_litÚget_literal_stringr·)r¼r½rðÚexpect_indirectr©r’rwÚ object_offsetrÇÚcurrent_offsetr‡rˆÚ
stream_lenr‘Ú stream_dataÚresultsÚ
hex_strings                 r rzPdfParser.get_value*s•€ð ˜!Ò ØØ N‰N×  Ñ    vÓ .ˆÙ Ø—U‘U“WˆFØ × %Ñ %× +Ñ +¨D°&Ó 9ˆÚ Ü "ܐA—G‘G˜A“J“ !Ñ#ØNô ô #ܐA—G‘G˜A“J“ 1Ñ$ØMô ô #Ø 4Ð'òGØ"Ü$¤S¨¯©°«£_´c¸!¿'¹'À!»*³oÓFñGàDô     ð %(§M¡Mؐa—e‘e“g¨;¸©?ð%2ó%Ñ !ˆFMðÐ$ؘt|Ð#Ø×'Ñ'×-Ñ-¨d°MÓBˆAÜ "ؘ ÐIô ð=Ð  =ؘ1Ÿ5™5›7?Ð "ÜØÐ Ð!Gô    
ð × %Ñ %× +Ñ +¨D°&Ó 9ˆÙ Ü "ܐA—G‘G˜A“J“ !Ñ#ØMô ô #ܐA—G‘G˜A“J“ 1Ñ$ØLô ô%¤S¨¯©°«£_´c¸!¿'¹'À!»*³oÓFÈÏÉËÐOÐ OØ × Ñ × #Ñ # D¨&Ó 1ˆÚ Ø—U‘U“WˆFØ%'ˆFØ—‘×%Ñ% d¨FÓ3ˆAØ)/ˆNÙØ%Ð1Ð1Ð1Ø&)§m¡mؘ.°kÀA±oð'4ó'Ñ#^ð"Ð)Ø! 4˜<Ð'Ø(+¯ © ؘ.°kÀA±oð)6ó)Ñ%~ð$s‘ Ø!Ð)Ø! 4˜<Ð'Ø—O‘O×)Ñ)¨$°Ó?òðŸU™U›WˆNØ×#Ñ#×)Ñ)¨$°Ó?ˆAÙØ#ŸZ™Z¨    Ó2
ØÐ%¬Z¸
ÄCÔ-HØBÀ:À,ÈaÐPCÜ(¨Ó-Ð-Ø" 1§5¡5£7¨Q¯U©U«W°zÑ-AÐB Ø×%Ñ%×+Ñ+¨D°!·%±%³'¸JÑ2FÓGÜ& q° }Ð6LÔMؐ}Ð$}Ø!"§¡£Ü ¤¨£°+Ó>ÀÐNÐNܘ6“? NÐ2Ð 2Ø × Ñ × $Ñ $ T¨6Ó 2ˆÙ Ø—U‘U“WˆF؈GØ× Ñ ×&Ñ& t¨VÓ4ˆAØ#ˆNÙØ%Ð1Ð1Ð1Ø(+¯ © ؘ.°kÀA±oð)6ó)Ñ%~𗑘uÔ%Ø!Ð)Ø" D˜=Ð(Ø×$Ñ$×*Ñ*¨4°Ó@òð˜AŸE™E›GÐ#Ð #Ø K‰K× Ñ ˜d FÓ +ˆÙ ؘŸ™›=Ð  Ø K‰K× Ñ ˜d FÓ +ˆÙ ؘŸ™›=Ð  Ø L‰L× Ñ ˜t VÓ ,ˆÙ ؘ!Ÿ%™%›'>Ð !Ø K‰K× Ñ ˜d FÓ +ˆÙ ܘ3×-Ñ-¨a¯g©g°a«jÓ9Ó:¸A¿E¹E»GÐCÐ CØ J‰J× Ñ ˜T 6Ó *ˆÙ ܐq—w‘w˜q“z“? A§E¡E£GÐ+Ð +Ø K‰K× Ñ ˜d FÓ +ˆÙ 䘟™ ›Ó$ a§e¡e£gÐ-Ð -Ø × Ñ × #Ñ # D¨&Ó 1ˆÙ ä"ñ#ØŸ7™7 1›:ô#óˆJô:‹ Ñ" aÒ'à×!Ñ!¤# d£)Ô,Ü×$Ñ$ Z×%6Ñ%6°zÓ%BÓCÀQÇUÁUÃWÐLÐ LØ × Ñ × #Ñ # D¨&Ó 1ˆÙ Ø×)Ñ)¨$°·±³Ó8Ð 8à%¤d¨4°¸À"¹Ð+EÓ&FÐ%GÐHˆÜ˜SÓ!Ð!rsF(\\[nrtbf()\\])|(\\[0-9]{1,3})|(\\(\r\n|\r|\n))|(\r\n|\r|\n)|(\()|(\))ónrõóró ótó    óbóófó r có,—d}t«}|jj||«D]\}|j|||j    ««|j d«r1|j|j |j d«d«nå|j d«r.|jt|j d«ddd««n¦|j d«rn”|j d«r|jd«nq|j d«r|jd    «|dz }nI|j d
«r8|dk(rt|«|j«fcS|jd «|dz}|j«}Œ_d }t|«‚) NrrrÛér¡érõérér zunfinished literal string) rÃÚre_lit_str_tokenr£rÆrŒrÚ escaped_charsrÅrVrurœrJ)r¼r½rðÚ nesting_depthrÇr’r‘s       r r½zPdfParser.get_literal_stringÌsF€ðˆ Ü“ˆØ×%Ñ%×.Ñ.¨t°VÓ<ó    ˆAØ M‰M˜$˜v¨¯©«    Ð2Ô 3؏w‰wqŒzØ— ‘ ˜c×/Ñ/°·±¸³
¸1± Ñ>Õ?Ø—‘˜”Ø— ‘ œc !§'¡'¨!£*¨Q¨R .°!Ó4Õ5Ø—‘˜”ØØ—‘˜”Ø— ‘ ˜eÕ$Ø—‘˜”Ø— ‘ ˜dÔ#Ø Ñ"‘ Ø—‘˜”Ø  AÒ%Ü  ›=¨!¯%©%«'Ð1Ò1Ø— ‘ ˜dÔ#Ø Ñ" Ø—U‘U“WŠFð%    ð&*ˆÜ˜SÓ!Ð!rsxrefs+([0-9]{10}) ([0-9]{5}) ([fn])( \r| \n|\r\n)cóZ—|j€J‚d}|jj|j||jz«}t    |dud«|€J‚|j «}    |j j|j|«}|st    |d«    |Sd}|j «}t|jd««}t|jd««}t|||z«D]µ}|jj|j|«}t    |dud«|€J‚|j «}|jd«d    k(}|rŒbt|jd««}    t|jd««|    f}
||jvsΤ|
|j|<Œ·ŒF)
NFzxref section start not foundTzxref subsection start not foundrrÛzxref entry not foundr¡rÌ) rÚre_xref_section_startršrrSrœÚre_xref_subsection_startrVrrÉÚ re_xref_entryr.) r`r‰Úsubsection_foundr’rðÚ first_objectÚ num_objectsrVÚis_freerXÚ    new_entrys            r rzPdfParser.read_xref_tableós€Øx‰xÐ#Ð#Ð#Ø ÐØ × &Ñ &× ,Ñ ,Ø H‰HÐ)¨D×,=Ñ,=Ñ=ó
ˆô    ˜q¨˜}Ð.LÔM؈}Ј}Ø—‘“ˆØØ×-Ñ-×3Ñ3°D·H±H¸fÓEˆAÙÜ&Ø$Ð&Gôðð ˆ ð $Ð Ø—U‘U“WˆFܘqŸw™w q›z›?ˆLܘaŸg™g a›j›/ˆKܘ<¨¸ Ñ)CÓDò
7Ø×&Ñ&×,Ñ,¨T¯X©X°vÓ>Ü& q° }Ð6LÔMؐ}Ð$}ØŸ™›ØŸ'™' !›*¨Ñ,ÚÜ!$ Q§W¡W¨Q£Z£JÜ!$ Q§W¡W¨Q£Z£°*Р=IØ §¡Ò/Ø-6˜Ÿ™¨Ò*ð
7ñrc ó—|j|d\}}t||dk(d|d›d|d›d|›d|›«|j€J‚|j|j||jzt |Ž|¬«d}||j |<|S)Nrrzexpected to find generation z for object ID z) in xref table, instead found generation z  at offset )r¾r©)r.rSrrrr[r )r`rjr©rðrXrˆs      r r}zPdfParser.read_indirects¿€Ø!Ÿ_™_¨S°©VÑ4ш
ÜØ ˜#˜a™&Ñ  Ø*¨3¨q©6¨(°/À#ÀaÁ&ÀðJ/Ø/9¨l¸+ÀfÀXð Oô    
ð
x‰xÐ#Ð#Ð#Ø—‘Ø H‰HØ T×&Ñ&Ñ &Ü-¨sÐ3Ø#ð    ó
ð
ñ  ˆð $)ˆ×јCѠ؈ rcóú—||n |j}t|ddk(d«g}|dD]N}|j|«}|ddk(r|j|«Œ.|j    |j |¬««ŒP|S)Nr{rJz%/Type of page tree node is not /PagessKidsri)Únode)r(rSr}rÅrÆr~)r`ráÚ    page_noder)ÚkidÚ
kid_objects      r r~zPdfParser.linearize_page_tree%s•€ð!Ð,‘D°$×2EÑ2Eˆ    ÜØ gÑ  (Ñ *Ð,Sô    
ðˆØ˜WÑ%ò    HˆCØ×+Ñ+¨CÓ0ˆJؘ'Ñ" gÒ-Ø— ‘ ˜SÕ!à— ‘ ˜T×5Ñ5¸:Ð5ÓFÕGð     Hð ˆ r)NNNrÚrb) rz
str | Noner zIO[bytes] | Nonerzbytes | bytearray | NonerrVr0rsrrr©)rrrº)r5rwrrr©r¨)r rsrrr©)rrr[r=)rdúIndirectReference | Nonerrr©)rjzint | IndirectReference | Nonerkrrlrrrr[)rjrærkrrlrrrr[)r r«rrzbytes | mmap.mmap)rðz
int | Nonerrr[)r‰rVrrr©)r”rurrzdict[bytes, Any])F)r¥rur¦rxrrz str | bytes)Nrå)
r½úbytes | bytearray | mmap.mmaprðrVr¾rær©rVrrztuple[Any, int | None])r½rçrðrVrrztuple[bytes, int])r‰rVrrrV)rå)rjr[r©rVrrr)rázPdfDict | Nonerrzlist[IndirectReference])IrKrLrMrNr„r2r6r9r8r4r/rBrErQrOrgrTrPrMÚ staticmethodrr!rNÚ    delimiterÚdelimiter_or_wsÚ
whitespaceÚwhitespace_or_hexÚwhitespace_optionalÚwhitespace_mandatoryÚwhitespace_optional_no_nlÚ newline_onlyÚnewlineÚreÚcompileÚDOTALLrŠr–r|rÚre_whitespace_optionalr™r±r›rÈrŽr¢r»r¶r·r¸r¹rºr´rµr»r¼r°r®r¯r­r²r³rrÓrÊrÔr½r×rØrÙrr}r~rOrr rºrºps|„ñð $Ø"Ø(,ØØð /àð/ð ð/ð&ð    /ð
ð /ð ð /ð
ó/óbóóóó
ó$ó$ó*ó óð<8<ð
Ø4ð
à     ó
ð4:Ø1ð:Ø:=ð:ØKNð:à    ó:ðØ+ðØ47ðØEHðà    óó0;ð ò    óð    ó"(ôHð!€IØ>€OØ/€JØ?ÐØ$ tÑ+ÐØ%¨Ñ,Ðà 7ÐØ€LØ'¨,Ñ6Ð9RÑR€GؐR—Z‘ZØØ
ñ    à
ñ    ð ñ    ð ñ        ð
ñ     ð ñ     ð ñ    ð ñ    ð ñ        ð ñ
    ð ñ     ð         ‰    ó€Nð!b—j‘jØØ
ñ    à
ñ    ð ñ    ð ñ        ð
ñ     ð ñ     ð ñ    ð ñ    ð ñ        ð ñ
    ð         ‰    ó €Oó?ó.:ð"(˜RŸZ™ZÐ(;Ó<ÐØˆbj‰jØØ
-ñ    .à
ñ    ð ñ    ó€Gð B—J‘JÐ2°VÑ;Ó<€Mؐ"—*‘*Ð0°6Ñ9Ð<OÑOÓP€Kàòóðð<#˜Ÿ
™
Ð#BÓCÐàó
óð
ðˆbj‰jÐ,¨{Ñ:¸_ÑLÈuÑTÓU€G؈bj‰jÐ,¨{Ñ:¸_ÑLÈuÑTÓU€G؈rz‰zÐ-° Ñ<¸ÑNÐQVÑVÓW€HØ ˆRZ‰ZØÐ2Ñ2°_ÑDÀuÑLó€Fðˆbj‰jØØ
7ñ    8à
ñ    ð ñ    ó€G𠠐R—Z‘ZР3°fÑ <Ó=€Nؐ2—:‘:Ð1°EÑ9Ó:€LؐB—J‘JؘfÑ$Ð'8Ñ8¸7ÑBó€MðB—J‘JÐ2°VÑ;Ó<€MØ&˜BŸJ™JØØ
ñ    à
ñ    ð ñ    ð ñ        ð
ñ     ð ñ     ð ñ    ó    Ðð'˜BŸJ™JØØ
ñ    à
ñ    ð ñ    ð ñ        ð
ñ     ð ñ     ð ñ    ó    Ðð%˜"Ÿ*™*ؘmÑ+¨oÑ=ÀÑEóÐð—‘Ø Ð#Ñ# mÑ3°gÑ=ÀÑFó€Jð!b—j‘jÐ!4°Ñ!FÓG€OؐB—J‘JØÐ.Ñ.°Ñ@À5ÑHó€Mðð
59Øð I"à+ðI"ððI"ð2ð    I"ð
ð I"ð
 ò I"óðI"ðV"r—z‘zØRóÐðØ ˆeðà ˆeðð     ˆeðð     ˆeð    ð
     ˆeð ð      ˆdð ð     ˆdðð    ˆuðñ     ˆD‹    5ðñ     ˆD‹    5ðñ     ˆD‹    5ðñ     ˆD‹    5ðñ     ˆD‹    5ðñ     ˆD‹    4ðñ     ˆD‹    4ðñ      ˆE‹
Eð!€Mð&ð"Ø0ð"Ø:=ð"à    ò"óð"ð6'˜BŸJ™JÐ':¸XÑ'EÈÑ'OÓPÐØ)˜rŸz™zØØ
ñ    à
ñ    ð ñ    ð ñ        ð
ñ     ó ÐðB—J‘JÐNÓO€MóôBð$&*ðØ"ðà     ôrrº)r rsrrru)rGrurrrs)rQrxrRrsrrr©)rÒrrrru)%Ú
__future__rrìr    rÖr;r?ròrérÚtypingrrÚ TYPE_CHECKINGrr×rsruÚ    _DictBaserr>rHrrJrSrUr[r{r~r­rrÍrÔrùrÿrÑrºrOrr ú<module>rús²ðÝ"ãÛ ÛÛ Û    Û    Û Û ß"à€ ÙÝà×$Ñ$ S¨5¡[°#Ð%5Ñ6Ià×$Ñ$€Ió
7ð*؈(ð*àˆ(ð*ð    ˆ(ð*ð    ˆ(ð    *ð
    ˆ(ð *ð     ˆ(ð *ð    ˆ(ð*ð    ˆ(ð*ð    ˆ(ð*ð    ˆ(ð*ð    ˆ(ð*ð    ˆ(ð*ð    ˆ(ð*ð    ˆ(ð*ð    ˆ(ð*ð     ˆ(ð!*ð"    ˆ(ñ#*ð$    ˆ(ð%*ð&    ˆ(ð'*ð(    ˆ(ð)*ð*    ˆ(ð+*ð,    ˆ(ð-*ð.    ˆ(ð/*ð0    ˆ(ð1*ð2    ˆ(ð3*ð4    ˆ(ð5*ð6    ˆ(ð7*ð8    ˆ(ð9*ð:    ˆ(ð;*ð<    ˆ(ð=*ð>    ˆ(ð?*ð@    ˆ(ðA*ðB    ˆ(ðC*ðD    ˆ(ñE*ðF Ø
òS*€óZJô    \ô    ó,ô
˜Zôô
7Ð.ô7ô(9Ð)ô9÷
[ñ[÷|&ñ&ôRDˆtC‰yôDô
-ˆiô-÷`BñB÷+ñ+ó*÷:C òC r