Commit 45dac410b5f427bc8c8ea39cc04cc55ddb825671

Authored by Jay Berkenbilt
1 parent 25dd3c67

Remove broken QPDFTokenizer::expectInlineImage

ChangeLog
... ... @@ -4,6 +4,10 @@
4 4 QPDF::copyForeignObject with an unused boolean parameter. If you
5 5 were, for some reason, calling this, just take the parameter away.
6 6  
  7 + * Source-level incompatibility: remove the version
  8 + QPDF::copyForeignObject with an unused boolean parameter. If you
  9 + were, for some reason, calling this, just take the parameter away.
  10 +
7 11 * Source-level incompatibility: rename QUtil::strcasecmp to
8 12 QUtil::str_compare_nocase. This is a non-compatible change, but
9 13 QUtil::strcasecmp is hardly the most important part of qpdf's API.
... ...
1 1 Next ABI
2 2 ========
3 3  
4   - * Remove version of QPDFTokenizer::expectInlineImage with no
5   - arguments.
6   -
7 4 * Build with -fvisibility=hidden by default. Fix QPDF_DLL. See #302
8 5 for discussion. See also https://gcc.gnu.org/wiki/Visibility
9 6  
... ...
include/qpdf/QPDFTokenizer.hh
... ... @@ -190,12 +190,6 @@ class QPDFTokenizer
190 190 QPDF_DLL
191 191 void expectInlineImage(PointerHolder<InputSource> input);
192 192  
193   - // Legacy version. New code should not call this. The token
194   - // returned will include the EI keyword. The recipient of the
195   - // token will have to remove it.
196   - QPDF_DLL
197   - void expectInlineImage();
198   -
199 193 private:
200 194 // Do not implement copy or assignment
201 195 QPDFTokenizer(QPDFTokenizer const&);
... ...
libqpdf/QPDFTokenizer.cc
... ... @@ -542,20 +542,6 @@ QPDFTokenizer::presentCharacter(char ch)
542 542 this->m->inline_image_bytes = 0;
543 543 this->m->state = st_token_ready;
544 544 }
545   - else if ((this->m->inline_image_bytes == 0) &&
546   - (len >= 4) &&
547   - isDelimiter(this->m->val.at(len-4)) &&
548   - (this->m->val.at(len-3) == 'E') &&
549   - (this->m->val.at(len-2) == 'I') &&
550   - isDelimiter(this->m->val.at(len-1)))
551   - {
552   - QTC::TC("qpdf", "QPDFTokenizer found EI the old way");
553   - this->m->val.erase(len - 1);
554   - this->m->type = tt_inline_image;
555   - this->m->unread_char = true;
556   - this->m->char_to_unread = ch;
557   - this->m->state = st_token_ready;
558   - }
559 545 }
560 546 else
561 547 {
... ... @@ -628,20 +614,6 @@ QPDFTokenizer::presentCharacter(char ch)
628 614 void
629 615 QPDFTokenizer::presentEOF()
630 616 {
631   - if (this->m->state == st_inline_image)
632   - {
633   - size_t len = this->m->val.length();
634   - if ((len >= 3) &&
635   - isDelimiter(this->m->val.at(len-3)) &&
636   - (this->m->val.at(len-2) == 'E') &&
637   - (this->m->val.at(len-1) == 'I'))
638   - {
639   - QTC::TC("qpdf", "QPDFTokenizer inline image at EOF the old way");
640   - this->m->type = tt_inline_image;
641   - this->m->state = st_token_ready;
642   - }
643   - }
644   -
645 617 if (this->m->state == st_literal)
646 618 {
647 619 QTC::TC("qpdf", "QPDFTokenizer EOF reading appendable token");
... ... @@ -670,12 +642,6 @@ QPDFTokenizer::presentEOF()
670 642 }
671 643  
672 644 void
673   -QPDFTokenizer::expectInlineImage()
674   -{
675   - expectInlineImage(PointerHolder<InputSource>());
676   -}
677   -
678   -void
679 645 QPDFTokenizer::expectInlineImage(PointerHolder<InputSource> input)
680 646 {
681 647 if (this->m->state != st_top)
... ...
qpdf/qpdf.testcov
... ... @@ -431,9 +431,7 @@ qpdf from_nr from repeat_nr 0
431 431 QPDF resolve duplicated page object 0
432 432 QPDF handle direct page object 0
433 433 QPDFTokenizer finder found wrong word 0
434   -QPDFTokenizer found EI the old way 0
435 434 QPDFTokenizer found EI by byte count 0
436   -QPDFTokenizer inline image at EOF the old way 0
437 435 QPDFTokenizer found EI after more than one try 0
438 436 QPDFPageObjectHelper externalize inline image 0
439 437 QPDFPageObjectHelper keep inline image 0
... ...
qpdf/qtest/qpdf.test
... ... @@ -796,7 +796,7 @@ foreach my $d (@eii_tests)
796 796 show_ntests();
797 797 # ----------
798 798 $td->notify("--- Tokenizer ---");
799   -$n_tests += 5;
  799 +$n_tests += 4;
800 800  
801 801 $td->runtest("tokenizer with no ignorable",
802 802 {$td->COMMAND => "test_tokenizer -no-ignorable tokens.pdf"},
... ... @@ -808,11 +808,6 @@ $td-&gt;runtest(&quot;tokenizer&quot;,
808 808 {$td->FILE => "tokens.out", $td->EXIT_STATUS => 0},
809 809 $td->NORMALIZE_NEWLINES);
810 810  
811   -$td->runtest("tokenizer with old inline image code",
812   - {$td->COMMAND => "test_tokenizer -old-ei tokens.pdf"},
813   - {$td->FILE => "tokens-old-ei.out", $td->EXIT_STATUS => 0},
814   - $td->NORMALIZE_NEWLINES);
815   -
816 811 $td->runtest("tokenizer with max_len",
817 812 {$td->COMMAND => "test_tokenizer -maxlen 50 tokens.pdf"},
818 813 {$td->FILE => "tokens-maxlen.out", $td->EXIT_STATUS => 0},
... ...
qpdf/qtest/qpdf/tokens-old-ei.out deleted
1   ---- BEGIN FILE ---
2   -0: comment: %PDF-1.5
3   -8: space: \x0a
4   -9: comment: %\xbf\xf7\xa2\xfe
5   -14: space: \x0a
6   -15: comment: %QDF-1.0
7   -23: space: \x0a\x0a
8   -25: comment: %comment 1
9   -35: space: \x0d
10   -36: comment: %comment 2
11   -46: space: \x0d\x0a
12   -48: comment: %comment 3
13   -58: space: \x0a\x0a
14   -60: integer: 1
15   -61: space:
16   -62: integer: 0
17   -63: space:
18   -64: word: obj
19   -67: space: \x0a
20   -68: dict_open: <<
21   -70: space: \x0a
22   -73: name: /Type
23   -78: space:
24   -79: name: /ObjStm
25   -86: space: \x0a
26   -89: name: /Length
27   -96: space:
28   -97: integer: 6020
29   -101: space: \x0a
30   -104: name: /N
31   -106: space:
32   -107: integer: 35
33   -109: space: \x0a
34   -112: name: /First
35   -118: space:
36   -119: integer: 323
37   -122: space: \x0a
38   -123: dict_close: >>
39   -125: space: \x0a
40   -126: word: stream
41   -skipping to endstream
42   -6153: word: endstream
43   -6162: space: \x0a
44   -6163: word: endobj
45   -6169: space: \x0a\x0a
46   -6171: comment: %% Contents for page 1
47   -6193: space: \x0a
48   -6194: comment: %% Original object ID: 37 0
49   -6221: space: \x0a
50   -6222: integer: 37
51   -6224: space:
52   -6225: integer: 0
53   -6226: space:
54   -6227: word: obj
55   -6230: space: \x0a
56   -6231: dict_open: <<
57   -6233: space: \x0a
58   -6236: name: /Length
59   -6243: space:
60   -6244: integer: 38
61   -6246: space:
62   -6247: integer: 0
63   -6248: space:
64   -6249: word: R
65   -6250: space: \x0a
66   -6251: dict_close: >>
67   -6253: space: \x0a
68   -6254: word: stream
69   -skipping to endstream
70   -6305: word: endstream
71   -6314: space: \x0a
72   -6315: word: endobj
73   -6321: space: \x0a\x0a
74   -6323: integer: 38
75   -6325: space:
76   -6326: integer: 0
77   -6327: space:
78   -6328: word: obj
79   -6331: space: \x0a
80   -6332: integer: 44
81   -6334: space: \x0a
82   -6335: word: endobj
83   -6341: space: \x0a\x0a
84   -6343: comment: %% Contents for page 2
85   -6365: space: \x0a
86   -6366: comment: %% Original object ID: 38 0
87   -6393: space: \x0a
88   -6394: integer: 39
89   -6396: space:
90   -6397: integer: 0
91   -6398: space:
92   -6399: word: obj
93   -6402: space: \x0a
94   -6403: dict_open: <<
95   -6405: space: \x0a
96   -6408: name: /Length
97   -6415: space:
98   -6416: integer: 40
99   -6418: space:
100   -6419: integer: 0
101   -6420: space:
102   -6421: word: R
103   -6422: space: \x0a
104   -6423: dict_close: >>
105   -6425: space: \x0a
106   -6426: word: stream
107   -skipping to endstream
108   -6832: word: endstream
109   -6841: space: \x0a
110   -6842: word: endobj
111   -6848: space: \x0a\x0a
112   -6850: integer: 40
113   -6852: space:
114   -6853: integer: 0
115   -6854: space:
116   -6855: word: obj
117   -6858: space: \x0a
118   -6859: integer: 399
119   -6862: space: \x0a
120   -6863: word: endobj
121   -6869: space: \x0a\x0a
122   -6871: comment: %% Contents for page 3
123   -6893: space: \x0a
124   -6894: comment: %% Original object ID: 39 0
125   -6921: space: \x0a
126   -6922: integer: 41
127   -6924: space:
128   -6925: integer: 0
129   -6926: space:
130   -6927: word: obj
131   -6930: space: \x0a
132   -6931: dict_open: <<
133   -6933: space: \x0a
134   -6936: name: /Length
135   -6943: space:
136   -6944: integer: 42
137   -6946: space:
138   -6947: integer: 0
139   -6948: space:
140   -6949: word: R
141   -6950: space: \x0a
142   -6951: dict_close: >>
143   -6953: space: \x0a
144   -6954: word: stream
145   -skipping to endstream
146   -7001: word: endstream
147   -7010: space: \x0a
148   -7011: word: endobj
149   -7017: space: \x0a\x0a
150   -7019: integer: 42
151   -7021: space:
152   -7022: integer: 0
153   -7023: space:
154   -7024: word: obj
155   -7027: space: \x0a
156   -7028: integer: 40
157   -7030: space: \x0a
158   -7031: word: endobj
159   -7037: space: \x0a\x0a
160   -7039: comment: %% Contents for page 4
161   -7061: space: \x0a
162   -7062: comment: %% Original object ID: 40 0
163   -7089: space: \x0a
164   -7090: integer: 43
165   -7092: space:
166   -7093: integer: 0
167   -7094: space:
168   -7095: word: obj
169   -7098: space: \x0a
170   -7099: dict_open: <<
171   -7101: space: \x0a
172   -7104: name: /Length
173   -7111: space:
174   -7112: integer: 44
175   -7114: space:
176   -7115: integer: 0
177   -7116: space:
178   -7117: word: R
179   -7118: space: \x0a
180   -7119: dict_close: >>
181   -7121: space: \x0a
182   -7122: word: stream
183   -skipping to endstream
184   -7469: word: endstream
185   -7478: space: \x0a
186   -7479: word: endobj
187   -7485: space: \x0a\x0a
188   -7487: integer: 44
189   -7489: space:
190   -7490: integer: 0
191   -7491: space:
192   -7492: word: obj
193   -7495: space: \x0a
194   -7496: integer: 340
195   -7499: space: \x0a
196   -7500: word: endobj
197   -7506: space: \x0a\x0a
198   -7508: comment: %% Contents for page 5
199   -7530: space: \x0a
200   -7531: comment: %% Original object ID: 41 0
201   -7558: space: \x0a
202   -7559: integer: 45
203   -7561: space:
204   -7562: integer: 0
205   -7563: space:
206   -7564: word: obj
207   -7567: space: \x0a
208   -7568: dict_open: <<
209   -7570: space: \x0a
210   -7573: name: /Length
211   -7580: space:
212   -7581: integer: 46
213   -7583: space:
214   -7584: integer: 0
215   -7585: space:
216   -7586: word: R
217   -7587: space: \x0a
218   -7588: dict_close: >>
219   -7590: space: \x0a
220   -7591: word: stream
221   -skipping to endstream
222   -7666: word: endstream
223   -7675: space: \x0a
224   -7676: word: endobj
225   -7682: space: \x0a
226   -7683: comment: %QDF: ignore_newline
227   -7703: space: \x0a\x0a
228   -7705: integer: 46
229   -7707: space:
230   -7708: integer: 0
231   -7709: space:
232   -7710: word: obj
233   -7713: space: \x0a
234   -7714: integer: 67
235   -7716: space: \x0a
236   -7717: word: endobj
237   -7723: space: \x0a\x0a
238   -7725: comment: %% Contents for page 6
239   -7747: space: \x0a
240   -7748: comment: %% Original object ID: 42 0
241   -7775: space: \x0a
242   -7776: integer: 47
243   -7778: space:
244   -7779: integer: 0
245   -7780: space:
246   -7781: word: obj
247   -7784: space: \x0a
248   -7785: dict_open: <<
249   -7787: space: \x0a
250   -7790: name: /Length
251   -7797: space:
252   -7798: integer: 48
253   -7800: space:
254   -7801: integer: 0
255   -7802: space:
256   -7803: word: R
257   -7804: space: \x0a
258   -7805: dict_close: >>
259   -7807: space: \x0a
260   -7808: word: stream
261   -skipping to endstream
262   -7859: word: endstream
263   -7868: space: \x0a
264   -7869: word: endobj
265   -7875: space: \x0a\x0a
266   -7877: integer: 48
267   -7879: space:
268   -7880: integer: 0
269   -7881: space:
270   -7882: word: obj
271   -7885: space: \x0a
272   -7886: integer: 44
273   -7888: space: \x0a
274   -7889: word: endobj
275   -7895: space: \x0a\x0a
276   -7897: comment: %% Contents for page 7
277   -7919: space: \x0a
278   -7920: comment: %% Original object ID: 43 0
279   -7947: space: \x0a
280   -7948: integer: 49
281   -7950: space:
282   -7951: integer: 0
283   -7952: space:
284   -7953: word: obj
285   -7956: space: \x0a
286   -7957: dict_open: <<
287   -7959: space: \x0a
288   -7962: name: /Length
289   -7969: space:
290   -7970: integer: 50
291   -7972: space:
292   -7973: integer: 0
293   -7974: space:
294   -7975: word: R
295   -7976: space: \x0a
296   -7977: dict_close: >>
297   -7979: space: \x0a
298   -7980: word: stream
299   -skipping to endstream
300   -8306: word: endstream
301   -8315: space: \x0a
302   -8316: word: endobj
303   -8322: space: \x0a
304   -8323: comment: %QDF: ignore_newline
305   -8343: space: \x0a\x0a
306   -8345: integer: 50
307   -8347: space:
308   -8348: integer: 0
309   -8349: space:
310   -8350: word: obj
311   -8353: space: \x0a
312   -8354: integer: 318
313   -8357: space: \x0a
314   -8358: word: endobj
315   -8364: space: \x0a\x0a
316   -8366: comment: %% Contents for page 8
317   -8388: space: \x0a
318   -8389: comment: %% Original object ID: 44 0
319   -8416: space: \x0a
320   -8417: integer: 51
321   -8419: space:
322   -8420: integer: 0
323   -8421: space:
324   -8422: word: obj
325   -8425: space: \x0a
326   -8426: dict_open: <<
327   -8428: space: \x0a
328   -8431: name: /Length
329   -8438: space:
330   -8439: integer: 52
331   -8441: space:
332   -8442: integer: 0
333   -8443: space:
334   -8444: word: R
335   -8445: space: \x0a
336   -8446: dict_close: >>
337   -8448: space: \x0a
338   -8449: word: stream
339   -skipping to endstream
340   -8500: word: endstream
341   -8509: space: \x0a
342   -8510: word: endobj
343   -8516: space: \x0a\x0a
344   -8518: integer: 52
345   -8520: space:
346   -8521: integer: 0
347   -8522: space:
348   -8523: word: obj
349   -8526: space: \x0a
350   -8527: integer: 44
351   -8529: space: \x0a
352   -8530: word: endobj
353   -8536: space: \x0a\x0a
354   -8538: comment: %% Contents for page 9
355   -8560: space: \x0a
356   -8561: comment: %% Original object ID: 45 0
357   -8588: space: \x0a
358   -8589: integer: 53
359   -8591: space:
360   -8592: integer: 0
361   -8593: space:
362   -8594: word: obj
363   -8597: space: \x0a
364   -8598: dict_open: <<
365   -8600: space: \x0a
366   -8603: name: /Length
367   -8610: space:
368   -8611: integer: 54
369   -8613: space:
370   -8614: integer: 0
371   -8615: space:
372   -8616: word: R
373   -8617: space: \x0a
374   -8618: dict_close: >>
375   -8620: space: \x0a
376   -8621: word: stream
377   -skipping to endstream
378   -8672: word: endstream
379   -8681: space: \x0a
380   -8682: word: endobj
381   -8688: space: \x0a\x0a
382   -8690: integer: 54
383   -8692: space:
384   -8693: integer: 0
385   -8694: space:
386   -8695: word: obj
387   -8698: space: \x0a
388   -8699: integer: 44
389   -8701: space: \x0a
390   -8702: word: endobj
391   -8708: space: \x0a\x0a
392   -8710: comment: %% Contents for page 10
393   -8733: space: \x0a
394   -8734: comment: %% Original object ID: 46 0
395   -8761: space: \x0a
396   -8762: integer: 55
397   -8764: space:
398   -8765: integer: 0
399   -8766: space:
400   -8767: word: obj
401   -8770: space: \x0a
402   -8771: dict_open: <<
403   -8773: space: \x0a
404   -8776: name: /Length
405   -8783: space:
406   -8784: integer: 56
407   -8786: space:
408   -8787: integer: 0
409   -8788: space:
410   -8789: word: R
411   -8790: space: \x0a
412   -8791: dict_close: >>
413   -8793: space: \x0a
414   -8794: word: stream
415   -skipping to endstream
416   -8845: word: endstream
417   -8854: space: \x0a
418   -8855: word: endobj
419   -8861: space: \x0a\x0a
420   -8863: integer: 56
421   -8865: space:
422   -8866: integer: 0
423   -8867: space:
424   -8868: word: obj
425   -8871: space: \x0a
426   -8872: integer: 44
427   -8874: space: \x0a
428   -8875: word: endobj
429   -8881: space: \x0a\x0a
430   -8883: comment: %% Contents for page 11
431   -8906: space: \x0a
432   -8907: comment: %% Original object ID: 47 0
433   -8934: space: \x0a
434   -8935: integer: 57
435   -8937: space:
436   -8938: integer: 0
437   -8939: space:
438   -8940: word: obj
439   -8943: space: \x0a
440   -8944: dict_open: <<
441   -8946: space: \x0a
442   -8949: name: /Length
443   -8956: space:
444   -8957: integer: 58
445   -8959: space:
446   -8960: integer: 0
447   -8961: space:
448   -8962: word: R
449   -8963: space: \x0a
450   -8964: dict_close: >>
451   -8966: space: \x0a
452   -8967: word: stream
453   -skipping to endstream
454   -9018: word: endstream
455   -9027: space: \x0a
456   -9028: word: endobj
457   -9034: space: \x0a\x0a
458   -9036: integer: 58
459   -9038: space:
460   -9039: integer: 0
461   -9040: space:
462   -9041: word: obj
463   -9044: space: \x0a
464   -9045: integer: 44
465   -9047: space: \x0a
466   -9048: word: endobj
467   -9054: space: \x0a\x0a
468   -9056: integer: 59
469   -9058: space:
470   -9059: integer: 0
471   -9060: space:
472   -9061: word: obj
473   -9064: space: \x0a
474   -9065: dict_open: <<
475   -9067: space: \x0a
476   -9070: name: /Type
477   -9075: space:
478   -9076: name: /XRef
479   -9081: space: \x0a
480   -9084: name: /Length
481   -9091: space:
482   -9092: integer: 240
483   -9095: space: \x0a
484   -9098: name: /W
485   -9100: space:
486   -9101: array_open: [
487   -9102: space:
488   -9103: integer: 1
489   -9104: space:
490   -9105: integer: 2
491   -9106: space:
492   -9107: integer: 1
493   -9108: space:
494   -9109: array_close: ]
495   -9110: space: \x0a
496   -9113: name: /Root
497   -9118: space:
498   -9119: integer: 2
499   -9120: space:
500   -9121: integer: 0
501   -9122: space:
502   -9123: word: R
503   -9124: space: \x0a
504   -9127: name: /Size
505   -9132: space:
506   -9133: integer: 60
507   -9135: space: \x0a
508   -9138: name: /ID
509   -9141: space:
510   -9142: array_open: [
511   -9143: string: \x88\x04\x8e\x17\xc9a\xe0\x94\xff\xec\xe9\x8c\xb8\x8cF\xd0 (raw: <88048e17c961e094ffece98cb88c46d0>)
512   -9177: string: \xed\xd6\x0f\xe8\xee\x87\xf8\x871\xa8o\x81\x9f\xe6Q\x99 (raw: <edd60fe8ee87f88731a86f819fe65199>)
513   -9211: array_close: ]
514   -9212: space: \x0a
515   -9213: dict_close: >>
516   -9215: space: \x0a
517   -9216: word: stream
518   -skipping to endstream
519   -9464: word: endstream
520   -9473: space: \x0a
521   -9474: word: endobj
522   -9480: space: \x0a\x0a
523   -9482: word: startxref
524   -9491: space: \x0a
525   -9492: integer: 9056
526   -9496: space: \x0a
527   -9497: comment: %%EOF
528   -9502: space: \x0a
529   -9503: eof
530   ---- END FILE ---
531   ---- BEGIN PAGE 1 ---
532   -0: word: BT
533   -2: space: \x0a
534   -5: name: /F1
535   -8: space:
536   -9: integer: 24
537   -11: space:
538   -12: word: Tf
539   -14: space: \x0a
540   -17: integer: 72
541   -19: space:
542   -20: integer: 720
543   -23: space:
544   -24: word: Td
545   -26: space: \x0a
546   -29: string: Potato (raw: (Potato))
547   -37: space:
548   -38: word: Tj
549   -40: space: \x0a
550   -41: word: ET
551   -43: space: \x0a
552   -44: eof
553   ---- END PAGE 1 ---
554   ---- BEGIN PAGE 2 ---
555   -0: word: BT
556   -2: space: \x0a
557   -5: name: /F1
558   -8: space:
559   -9: integer: 24
560   -11: space:
561   -12: word: Tf
562   -14: space: \x0a
563   -17: integer: 72
564   -19: space:
565   -20: integer: 720
566   -23: space:
567   -24: word: Td
568   -26: space: \x0a
569   -29: string: Potato (raw: (Potato))
570   -37: space:
571   -38: word: Tj
572   -40: space: \x0a
573   -41: word: ET
574   -43: space: \x0a
575   -44: word: BI
576   -46: space: \x0a
577   -47: name: /CS
578   -50: space:
579   -51: name: /G
580   -53: name: /W
581   -55: space:
582   -56: integer: 66
583   -58: name: /H
584   -60: space:
585   -61: integer: 47
586   -63: name: /BPC
587   -67: space:
588   -68: integer: 8
589   -69: name: /F
590   -71: name: /Fl
591   -74: name: /DP
592   -77: dict_open: <<
593   -79: name: /Predictor
594   -89: space:
595   -90: integer: 15
596   -92: name: /Columns
597   -100: space:
598   -101: integer: 66
599   -103: dict_close: >>
600   -105: space: \x0a
601   -106: word: ID
602   -109: inline-image: x\x9c\xc5\xd6I\x0e\xc3 \x0c\x05P|\xffC;U\xc8`\xc0\xd37\x91Z\xa9\x0b\xa6\x17\x02\xc4\x98\xda\xe6\x8f\x1b}D\xf0\xef_\xb4\xf8\x1c\xc9W\xa9\x84\x9c\xc4-\x94\x88>\xff\x87\xc0\x8d>\x94^\x01&\xae\xa1u\xe2]\x80"!\x87\x95\x08\x96\x05*\xac&\x8fE|Sy\xae \xf0d-\x80<\x9d\x19B\x010B\x05\xfa@N\x11\xea+<\x1fhl\xe8K\xd0\xee/56L\xa0\x89\x90\xe3\x19\x1e \xa3\x96\xb9\xa6>0\x06>\x15Y\x81\xf9!c\xec\\x0eY\x0c\xd8\x0f%Y\xf0\x01\xa5\xd68?&\xa0\xd6\xeb\x88}j\x92\xfb\xe8\x1d;\xab\x8d3\x9d\xc2\xd6l\x14p\xdbsH\xf6\xfbt\xfa\x01Q\x02\xd8Tt*h\xccU\xfa\xe3w\x07\xcd\xd5\xd0%\xa8)p\x96\xb3"\x95DiRj\xb9\x96D\x18YNU\x11\xd3\xd9Av\x92F\xe0&\x0d\x90\xcd\xd4u#c\x95\xc6W\x09\xf4\xdf\x89\x03W\x93O\x0d\x0aEI
603   -354: space: \x0a
604   -355: word: BT
605   -357: space: \x0a
606   -360: name: /F1
607   -363: space:
608   -364: integer: 24
609   -366: space:
610   -367: word: Tf
611   -369: space: \x0a
612   -372: integer: 72
613   -374: space:
614   -375: integer: 720
615   -378: space:
616   -379: word: Td
617   -381: space: \x0a
618   -384: string: Potato (raw: (Potato))
619   -392: space:
620   -393: word: Tj
621   -395: space: \x0a
622   -396: word: ET
623   -398: space: \x0a
624   -399: eof
625   ---- END PAGE 2 ---
626   ---- BEGIN PAGE 3 ---
627   -0: word: BT
628   -2: space: \x0a
629   -5: name: /F1
630   -8: space:
631   -9: integer: 24
632   -11: space:
633   -12: word: Tf
634   -14: space: \x0a
635   -17: integer: 72
636   -19: space:
637   -20: integer: 720
638   -23: space:
639   -24: word: Td
640   -26: space: \x0a
641   -29: bad: (Potato\x0aET\x0a (EOF while reading token)
642   -40: eof
643   ---- END PAGE 3 ---
644   ---- BEGIN PAGE 4 ---
645   -0: word: BT
646   -2: space: \x0a
647   -5: name: /F1
648   -8: space:
649   -9: integer: 24
650   -11: space:
651   -12: word: Tf
652   -14: space: \x0a
653   -17: string: \xfe\xeb (raw: <feeb>)
654   -23: space: \x0a
655   -26: string: \xab\xcd (raw: <ab\x0aCD>)
656   -33: space: \x0a
657   -36: string: quack (raw: (qu\\x0d\x0aack))
658   -46: space: \x0a
659   -49: string: quack (raw: (qu\\x0aack))
660   -58: space: \x0a
661   -61: string: quack (raw: (qu\\x0dack))
662   -70: space: \x0a
663   -73: string: qu\x0aack (raw: (qu\\x0d\x0a\x0dack))
664   -84: space: \x0a
665   -87: string: qu\x0aack (raw: (qu\\x0d\x0dack))
666   -97: space: \x0a
667   -100: string: qu\x0a\x0a\x0a\x0a\x0a\x0aack (raw: (qu\\x0a\x0a\x0d\x0a\x0a\x0d\x0d\x0a\x0aack))
668   -117: space: \x0a
669   -120: string: qu\x0a\x0a\x0a\x0a\x0a\x0aack (raw: (qu\x0a\x0d\x0a\x0a\x0d\x0d\x0a\x0aack))
670   -135: space: \x0a
671   -138: integer: 72
672   -140: space:
673   -141: integer: 720
674   -144: space:
675   -145: word: Td
676   -147: space: \x0a
677   -150: real: 3.14
678   -154: space: \x0a
679   -157: real: 3.
680   -159: space: \x0a
681   -162: real: .14
682   -165: space: \x0a
683   -168: real: +3.14
684   -173: space: \x0a
685   -176: real: +3.
686   -179: space: \x0a
687   -182: real: +.14
688   -186: space: \x0a
689   -189: real: -3.14
690   -194: space: \x0a
691   -197: real: -3.
692   -200: space: \x0a
693   -203: real: -.14
694   -207: space: \x0a
695   -210: integer: +16059
696   -216: space: \x0a
697   -219: integer: -16059
698   -225: space: \x0a
699   -228: word: +.
700   -230: space: \x0a
701   -233: bad: <fade\x0aET (invalid character (T) in hexstring)
702   -241: space: \x0a
703   -242: bad: ) (unexpected ))
704   -243: bad: > (unexpected >)
705   -244: word: quack
706   -249: space:
707   -250: bad: /name#oops (invalid name token)
708   -260: space:
709   -261: name: /name (raw: /n#61me)
710   -268: space:
711   -269: word: one
712   -272: space:
713   -273: bool: true
714   -277: space:
715   -278: word: two
716   -281: space:
717   -282: bool: false
718   -287: space:
719   -288: word: three
720   -293: space:
721   -294: null: null
722   -298: space:
723   -299: word: four
724   -303: space: \x0a
725   -304: word: !@#$^&
726   -310: brace_open: {
727   -311: brace_close: }
728   -312: word: *-_+=
729   -317: space: \x0a
730   -318: word: abc123def3.14true
731   -335: space: \x0a
732   -336: bad: <ff\x0a (EOF while reading token)
733   -340: eof
734   ---- END PAGE 4 ---
735   ---- BEGIN PAGE 5 ---
736   -0: word: BT
737   -2: space: \x0a
738   -5: bad: /F#00x (null character not allowed in name token)
739   -11: space:
740   -12: integer: 24
741   -14: space:
742   -15: word: Tf
743   -17: space: \x0a
744   -20: integer: 72
745   -22: space:
746   -23: integer: 720
747   -26: space:
748   -27: word: Td
749   -29: space: \x0a
750   -32: string: P\x00tat\x00 (raw: (P\x00tat\000))
751   -43: space:
752   -44: word: Tj
753   -46: space: \x0a
754   -47: word: ET
755   -49: space: \x0a\x00\x0a
756   -52: name: /ThisMustBeLast
757   -67: eof
758   ---- END PAGE 5 ---
759   ---- BEGIN PAGE 6 ---
760   -0: word: ID
761   -EI not found; resuming normal scanning
762   -3: space:
763   -5: name: /F1
764   -8: space:
765   -9: integer: 24
766   -11: space:
767   -12: word: Tf
768   -14: space: \x0a
769   -17: integer: 72
770   -19: space:
771   -20: integer: 720
772   -23: space:
773   -24: word: Td
774   -26: space: \x0a
775   -29: string: Potato (raw: (Potato))
776   -37: space:
777   -38: word: Tj
778   -40: space: \x0a
779   -41: word: ET
780   -43: space: \x0a
781   -44: eof
782   ---- END PAGE 6 ---
783   ---- BEGIN PAGE 7 ---
784   -0: name: /potato
785   -7: space: \x0a
786   -8: word: BI
787   -10: space: \x0a
788   -11: name: /CS
789   -14: space:
790   -15: name: /G
791   -17: name: /W
792   -19: space:
793   -20: integer: 66
794   -22: name: /H
795   -24: space:
796   -25: integer: 47
797   -27: name: /BPC
798   -31: space:
799   -32: integer: 8
800   -33: name: /F
801   -35: name: /Fl
802   -38: name: /DP
803   -41: dict_open: <<
804   -43: name: /Predictor
805   -53: space:
806   -54: integer: 15
807   -56: name: /Columns
808   -64: space:
809   -65: integer: 66
810   -67: dict_close: >>
811   -69: space: \x0a
812   -70: word: ID
813   -73: inline-image: x\x9c\xc5\xd6I\x0e\xc3 \x0c\x05P|\xffC;U\xc8`\xc0\xd37\x91Z\xa9\x0b\xa6\x17\x02\xc4\x98\xda\xe6\x8f\x1b}D\xf0\xef_\xb4\xf8\x1c\xc9W\xa9\x84\x9c\xc4-\x94\x88>\xff\x87\xc0\x8d>\x94^\x01&\xae\xa1u\xe2]\x80"!\x87\x95\x08\x96\x05*\xac&\x8fE|Sy\xae \xf0d-\x80<\x9d\x19B\x010B\x05\xfa@N\x11\xea+<\x1fhl\xe8K\xd0\xee/56L\xa0\x89\x90\xe3\x19\x1e \xa3\x96\xb9\xa6>0\x06>\x15Y\x81\xf9!c\xec\\x0eY\x0c\xd8\x0f%Y\xf0\x01\xa5\xd68?&\xa0\xd6\xeb\x88}j\x92\xfb\xe8\x1d;\xab\x8d3\x9d\xc2\xd6l\x14p\xdbsH\xf6\xfbt\xfa\x01Q\x02\xd8Tt*h\xccU\xfa\xe3w\x07\xcd\xd5\xd0%\xa8)p\x96\xb3"\x95DiRj\xb9\x96D\x18YNU\x11\xd3\xd9Av\x92F\xe0&\x0d\x90\xcd\xd4u#c\x95\xc6W\x09\xf4\xdf\x89\x03W\x93O\x0d\x0aEI
814   -318: eof
815   ---- END PAGE 7 ---
816   ---- BEGIN PAGE 8 ---
817   -0: word: BT
818   -2: space: \x0a
819   -5: name: /F1
820   -8: space:
821   -9: integer: 24
822   -11: space:
823   -12: word: Tf
824   -14: space: \x0a
825   -17: integer: 72
826   -19: space:
827   -20: integer: 720
828   -23: space:
829   -24: word: Td
830   -26: space: \x0a
831   -29: string: Potato (raw: (Potato))
832   -37: space:
833   -38: word: Tj
834   -40: space: \x0a
835   -41: word: ET
836   -43: space: \x0a
837   -44: eof
838   ---- END PAGE 8 ---
839   ---- BEGIN PAGE 9 ---
840   -0: word: BT
841   -2: space: \x0a
842   -5: name: /F1
843   -8: space:
844   -9: integer: 24
845   -11: space:
846   -12: word: Tf
847   -14: space: \x0a
848   -17: integer: 72
849   -19: space:
850   -20: integer: 720
851   -23: space:
852   -24: word: Td
853   -26: space: \x0a
854   -29: string: Potato (raw: (Potato))
855   -37: space:
856   -38: word: Tj
857   -40: space: \x0a
858   -41: word: ET
859   -43: space: \x0a
860   -44: eof
861   ---- END PAGE 9 ---
862   ---- BEGIN PAGE 10 ---
863   -0: word: BT
864   -2: space: \x0a
865   -5: name: /F1
866   -8: space:
867   -9: integer: 24
868   -11: space:
869   -12: word: Tf
870   -14: space: \x0a
871   -17: integer: 72
872   -19: space:
873   -20: integer: 720
874   -23: space:
875   -24: word: Td
876   -26: space: \x0a
877   -29: string: Potato (raw: (Potato))
878   -37: space:
879   -38: word: Tj
880   -40: space: \x0a
881   -41: word: ET
882   -43: space: \x0a
883   -44: eof
884   ---- END PAGE 10 ---
885   ---- BEGIN PAGE 11 ---
886   -0: word: BT
887   -2: space: \x0a
888   -5: name: /F1
889   -8: space:
890   -9: integer: 24
891   -11: space:
892   -12: word: Tf
893   -14: space: \x0a
894   -17: integer: 72
895   -19: space:
896   -20: integer: 720
897   -23: space:
898   -24: word: Td
899   -26: space: \x0a
900   -29: string: Potato (raw: (Potato))
901   -37: space:
902   -38: word: Tj
903   -40: space: \x0a
904   -41: word: ET
905   -43: space: \x0a
906   -44: eof
907   ---- END PAGE 11 ---
908   ---- BEGIN OBJECT STREAM 1 ---
909   -0: integer: 2
910   -1: space:
911   -2: integer: 0
912   -3: space: \x0a
913   -4: integer: 3
914   -5: space:
915   -6: integer: 97
916   -8: space: \x0a
917   -9: integer: 4
918   -10: space:
919   -11: integer: 318
920   -14: space: \x0a
921   -15: integer: 5
922   -16: space:
923   -17: integer: 566
924   -20: space: \x0a
925   -21: integer: 6
926   -22: space:
927   -23: integer: 814
928   -26: space: \x0a
929   -27: integer: 7
930   -28: space:
931   -29: integer: 1062
932   -33: space: \x0a
933   -34: integer: 8
934   -35: space:
935   -36: integer: 1310
936   -40: space: \x0a
937   -41: integer: 9
938   -42: space:
939   -43: integer: 1558
940   -47: space: \x0a
941   -48: integer: 10
942   -50: space:
943   -51: integer: 1808
944   -55: space: \x0a
945   -56: integer: 11
946   -58: space:
947   -59: integer: 2058
948   -63: space: \x0a
949   -64: integer: 12
950   -66: space:
951   -67: integer: 2309
952   -71: space: \x0a
953   -72: integer: 13
954   -74: space:
955   -75: integer: 2560
956   -79: space: \x0a
957   -80: integer: 14
958   -82: space:
959   -83: integer: 2812
960   -87: space: \x0a
961   -88: integer: 15
962   -90: space:
963   -91: integer: 3064
964   -95: space: \x0a
965   -96: integer: 16
966   -98: space:
967   -99: integer: 3228
968   -103: space: \x0a
969   -104: integer: 17
970   -106: space:
971   -107: integer: 3309
972   -111: space: \x0a
973   -112: integer: 18
974   -114: space:
975   -115: integer: 3473
976   -119: space: \x0a
977   -120: integer: 19
978   -122: space:
979   -123: integer: 3554
980   -127: space: \x0a
981   -128: integer: 20
982   -130: space:
983   -131: integer: 3718
984   -135: space: \x0a
985   -136: integer: 21
986   -138: space:
987   -139: integer: 3799
988   -143: space: \x0a
989   -144: integer: 22
990   -146: space:
991   -147: integer: 3963
992   -151: space: \x0a
993   -152: integer: 23
994   -154: space:
995   -155: integer: 4044
996   -159: space: \x0a
997   -160: integer: 24
998   -162: space:
999   -163: integer: 4208
1000   -167: space: \x0a
1001   -168: integer: 25
1002   -170: space:
1003   -171: integer: 4289
1004   -175: space: \x0a
1005   -176: integer: 26
1006   -178: space:
1007   -179: integer: 4453
1008   -183: space: \x0a
1009   -184: integer: 27
1010   -186: space:
1011   -187: integer: 4534
1012   -191: space: \x0a
1013   -192: integer: 28
1014   -194: space:
1015   -195: integer: 4698
1016   -199: space: \x0a
1017   -200: integer: 29
1018   -202: space:
1019   -203: integer: 4779
1020   -207: space: \x0a
1021   -208: integer: 30
1022   -210: space:
1023   -211: integer: 4943
1024   -215: space: \x0a
1025   -216: integer: 31
1026   -218: space:
1027   -219: integer: 5024
1028   -223: space: \x0a
1029   -224: integer: 32
1030   -226: space:
1031   -227: integer: 5188
1032   -231: space: \x0a
1033   -232: integer: 33
1034   -234: space:
1035   -235: integer: 5269
1036   -239: space: \x0a
1037   -240: integer: 34
1038   -242: space:
1039   -243: integer: 5433
1040   -247: space: \x0a
1041   -248: integer: 35
1042   -250: space:
1043   -251: integer: 5514
1044   -255: space: \x0a
1045   -256: integer: 36
1046   -258: space:
1047   -259: integer: 5678
1048   -263: space: \x0a
1049   -264: comment: %% Object stream: object 2, index 0; original object ID: 2
1050   -322: space: \x0a
1051   -323: dict_open: <<
1052   -325: space: \x0a
1053   -328: name: /Pages
1054   -334: space:
1055   -335: integer: 3
1056   -336: space:
1057   -337: integer: 0
1058   -338: space:
1059   -339: word: R
1060   -340: space: \x0a
1061   -343: name: /Type
1062   -348: space:
1063   -349: name: /Catalog
1064   -357: space: \x0a
1065   -358: dict_close: >>
1066   -360: space: \x0a
1067   -361: comment: %% Object stream: object 3, index 1; original object ID: 3
1068   -419: space: \x0a
1069   -420: dict_open: <<
1070   -422: space: \x0a
1071   -425: name: /Count
1072   -431: space:
1073   -432: integer: 11
1074   -434: space: \x0a
1075   -437: name: /Kids
1076   -442: space:
1077   -443: array_open: [
1078   -444: space: \x0a
1079   -449: integer: 4
1080   -450: space:
1081   -451: integer: 0
1082   -452: space:
1083   -453: word: R
1084   -454: space: \x0a
1085   -459: integer: 5
1086   -460: space:
1087   -461: integer: 0
1088   -462: space:
1089   -463: word: R
1090   -464: space: \x0a
1091   -469: integer: 6
1092   -470: space:
1093   -471: integer: 0
1094   -472: space:
1095   -473: word: R
1096   -474: space: \x0a
1097   -479: integer: 7
1098   -480: space:
1099   -481: integer: 0
1100   -482: space:
1101   -483: word: R
1102   -484: space: \x0a
1103   -489: integer: 8
1104   -490: space:
1105   -491: integer: 0
1106   -492: space:
1107   -493: word: R
1108   -494: space: \x0a
1109   -499: integer: 9
1110   -500: space:
1111   -501: integer: 0
1112   -502: space:
1113   -503: word: R
1114   -504: space: \x0a
1115   -509: integer: 10
1116   -511: space:
1117   -512: integer: 0
1118   -513: space:
1119   -514: word: R
1120   -515: space: \x0a
1121   -520: integer: 11
1122   -522: space:
1123   -523: integer: 0
1124   -524: space:
1125   -525: word: R
1126   -526: space: \x0a
1127   -531: integer: 12
1128   -533: space:
1129   -534: integer: 0
1130   -535: space:
1131   -536: word: R
1132   -537: space: \x0a
1133   -542: integer: 13
1134   -544: space:
1135   -545: integer: 0
1136   -546: space:
1137   -547: word: R
1138   -548: space: \x0a
1139   -553: integer: 14
1140   -555: space:
1141   -556: integer: 0
1142   -557: space:
1143   -558: word: R
1144   -559: space: \x0a
1145   -562: array_close: ]
1146   -563: space: \x0a
1147   -566: name: /Type
1148   -571: space:
1149   -572: name: /Pages
1150   -578: space: \x0a
1151   -579: dict_close: >>
1152   -581: space: \x0a
1153   -582: comment: %% Object stream: object 4, index 2; original object ID: 4
1154   -640: space: \x0a
1155   -641: comment: %% Page 1
1156   -650: space: \x0a
1157   -651: dict_open: <<
1158   -653: space: \x0a
1159   -656: name: /Contents
1160   -665: space:
1161   -666: integer: 37
1162   -668: space:
1163   -669: integer: 0
1164   -670: space:
1165   -671: word: R
1166   -672: space: \x0a
1167   -675: name: /MediaBox
1168   -684: space:
1169   -685: array_open: [
1170   -686: space: \x0a
1171   -691: integer: 0
1172   -692: space: \x0a
1173   -697: integer: 0
1174   -698: space: \x0a
1175   -703: integer: 612
1176   -706: space: \x0a
1177   -711: integer: 792
1178   -714: space: \x0a
1179   -717: array_close: ]
1180   -718: space: \x0a
1181   -721: name: /Parent
1182   -728: space:
1183   -729: integer: 3
1184   -730: space:
1185   -731: integer: 0
1186   -732: space:
1187   -733: word: R
1188   -734: space: \x0a
1189   -737: name: /Resources
1190   -747: space:
1191   -748: dict_open: <<
1192   -750: space: \x0a
1193   -755: name: /Font
1194   -760: space:
1195   -761: dict_open: <<
1196   -763: space: \x0a
1197   -770: name: /F1
1198   -773: space:
1199   -774: integer: 15
1200   -776: space:
1201   -777: integer: 0
1202   -778: space:
1203   -779: word: R
1204   -780: space: \x0a
1205   -785: dict_close: >>
1206   -787: space: \x0a
1207   -792: name: /ProcSet
1208   -800: space:
1209   -801: integer: 16
1210   -803: space:
1211   -804: integer: 0
1212   -805: space:
1213   -806: word: R
1214   -807: space: \x0a
1215   -810: dict_close: >>
1216   -812: space: \x0a
1217   -815: name: /Type
1218   -820: space:
1219   -821: name: /Page
1220   -826: space: \x0a
1221   -827: dict_close: >>
1222   -829: space: \x0a
1223   -830: comment: %% Object stream: object 5, index 3; original object ID: 5
1224   -888: space: \x0a
1225   -889: comment: %% Page 2
1226   -898: space: \x0a
1227   -899: dict_open: <<
1228   -901: space: \x0a
1229   -904: name: /Contents
1230   -913: space:
1231   -914: integer: 39
1232   -916: space:
1233   -917: integer: 0
1234   -918: space:
1235   -919: word: R
1236   -920: space: \x0a
1237   -923: name: /MediaBox
1238   -932: space:
1239   -933: array_open: [
1240   -934: space: \x0a
1241   -939: integer: 0
1242   -940: space: \x0a
1243   -945: integer: 0
1244   -946: space: \x0a
1245   -951: integer: 612
1246   -954: space: \x0a
1247   -959: integer: 792
1248   -962: space: \x0a
1249   -965: array_close: ]
1250   -966: space: \x0a
1251   -969: name: /Parent
1252   -976: space:
1253   -977: integer: 3
1254   -978: space:
1255   -979: integer: 0
1256   -980: space:
1257   -981: word: R
1258   -982: space: \x0a
1259   -985: name: /Resources
1260   -995: space:
1261   -996: dict_open: <<
1262   -998: space: \x0a
1263   -1003: name: /Font
1264   -1008: space:
1265   -1009: dict_open: <<
1266   -1011: space: \x0a
1267   -1018: name: /F1
1268   -1021: space:
1269   -1022: integer: 17
1270   -1024: space:
1271   -1025: integer: 0
1272   -1026: space:
1273   -1027: word: R
1274   -1028: space: \x0a
1275   -1033: dict_close: >>
1276   -1035: space: \x0a
1277   -1040: name: /ProcSet
1278   -1048: space:
1279   -1049: integer: 18
1280   -1051: space:
1281   -1052: integer: 0
1282   -1053: space:
1283   -1054: word: R
1284   -1055: space: \x0a
1285   -1058: dict_close: >>
1286   -1060: space: \x0a
1287   -1063: name: /Type
1288   -1068: space:
1289   -1069: name: /Page
1290   -1074: space: \x0a
1291   -1075: dict_close: >>
1292   -1077: space: \x0a
1293   -1078: comment: %% Object stream: object 6, index 4; original object ID: 6
1294   -1136: space: \x0a
1295   -1137: comment: %% Page 3
1296   -1146: space: \x0a
1297   -1147: dict_open: <<
1298   -1149: space: \x0a
1299   -1152: name: /Contents
1300   -1161: space:
1301   -1162: integer: 41
1302   -1164: space:
1303   -1165: integer: 0
1304   -1166: space:
1305   -1167: word: R
1306   -1168: space: \x0a
1307   -1171: name: /MediaBox
1308   -1180: space:
1309   -1181: array_open: [
1310   -1182: space: \x0a
1311   -1187: integer: 0
1312   -1188: space: \x0a
1313   -1193: integer: 0
1314   -1194: space: \x0a
1315   -1199: integer: 612
1316   -1202: space: \x0a
1317   -1207: integer: 792
1318   -1210: space: \x0a
1319   -1213: array_close: ]
1320   -1214: space: \x0a
1321   -1217: name: /Parent
1322   -1224: space:
1323   -1225: integer: 3
1324   -1226: space:
1325   -1227: integer: 0
1326   -1228: space:
1327   -1229: word: R
1328   -1230: space: \x0a
1329   -1233: name: /Resources
1330   -1243: space:
1331   -1244: dict_open: <<
1332   -1246: space: \x0a
1333   -1251: name: /Font
1334   -1256: space:
1335   -1257: dict_open: <<
1336   -1259: space: \x0a
1337   -1266: name: /F1
1338   -1269: space:
1339   -1270: integer: 19
1340   -1272: space:
1341   -1273: integer: 0
1342   -1274: space:
1343   -1275: word: R
1344   -1276: space: \x0a
1345   -1281: dict_close: >>
1346   -1283: space: \x0a
1347   -1288: name: /ProcSet
1348   -1296: space:
1349   -1297: integer: 20
1350   -1299: space:
1351   -1300: integer: 0
1352   -1301: space:
1353   -1302: word: R
1354   -1303: space: \x0a
1355   -1306: dict_close: >>
1356   -1308: space: \x0a
1357   -1311: name: /Type
1358   -1316: space:
1359   -1317: name: /Page
1360   -1322: space: \x0a
1361   -1323: dict_close: >>
1362   -1325: space: \x0a
1363   -1326: comment: %% Object stream: object 7, index 5; original object ID: 7
1364   -1384: space: \x0a
1365   -1385: comment: %% Page 4
1366   -1394: space: \x0a
1367   -1395: dict_open: <<
1368   -1397: space: \x0a
1369   -1400: name: /Contents
1370   -1409: space:
1371   -1410: integer: 43
1372   -1412: space:
1373   -1413: integer: 0
1374   -1414: space:
1375   -1415: word: R
1376   -1416: space: \x0a
1377   -1419: name: /MediaBox
1378   -1428: space:
1379   -1429: array_open: [
1380   -1430: space: \x0a
1381   -1435: integer: 0
1382   -1436: space: \x0a
1383   -1441: integer: 0
1384   -1442: space: \x0a
1385   -1447: integer: 612
1386   -1450: space: \x0a
1387   -1455: integer: 792
1388   -1458: space: \x0a
1389   -1461: array_close: ]
1390   -1462: space: \x0a
1391   -1465: name: /Parent
1392   -1472: space:
1393   -1473: integer: 3
1394   -1474: space:
1395   -1475: integer: 0
1396   -1476: space:
1397   -1477: word: R
1398   -1478: space: \x0a
1399   -1481: name: /Resources
1400   -1491: space:
1401   -1492: dict_open: <<
1402   -1494: space: \x0a
1403   -1499: name: /Font
1404   -1504: space:
1405   -1505: dict_open: <<
1406   -1507: space: \x0a
1407   -1514: name: /F1
1408   -1517: space:
1409   -1518: integer: 21
1410   -1520: space:
1411   -1521: integer: 0
1412   -1522: space:
1413   -1523: word: R
1414   -1524: space: \x0a
1415   -1529: dict_close: >>
1416   -1531: space: \x0a
1417   -1536: name: /ProcSet
1418   -1544: space:
1419   -1545: integer: 22
1420   -1547: space:
1421   -1548: integer: 0
1422   -1549: space:
1423   -1550: word: R
1424   -1551: space: \x0a
1425   -1554: dict_close: >>
1426   -1556: space: \x0a
1427   -1559: name: /Type
1428   -1564: space:
1429   -1565: name: /Page
1430   -1570: space: \x0a
1431   -1571: dict_close: >>
1432   -1573: space: \x0a
1433   -1574: comment: %% Object stream: object 8, index 6; original object ID: 8
1434   -1632: space: \x0a
1435   -1633: comment: %% Page 5
1436   -1642: space: \x0a
1437   -1643: dict_open: <<
1438   -1645: space: \x0a
1439   -1648: name: /Contents
1440   -1657: space:
1441   -1658: integer: 45
1442   -1660: space:
1443   -1661: integer: 0
1444   -1662: space:
1445   -1663: word: R
1446   -1664: space: \x0a
1447   -1667: name: /MediaBox
1448   -1676: space:
1449   -1677: array_open: [
1450   -1678: space: \x0a
1451   -1683: integer: 0
1452   -1684: space: \x0a
1453   -1689: integer: 0
1454   -1690: space: \x0a
1455   -1695: integer: 612
1456   -1698: space: \x0a
1457   -1703: integer: 792
1458   -1706: space: \x0a
1459   -1709: array_close: ]
1460   -1710: space: \x0a
1461   -1713: name: /Parent
1462   -1720: space:
1463   -1721: integer: 3
1464   -1722: space:
1465   -1723: integer: 0
1466   -1724: space:
1467   -1725: word: R
1468   -1726: space: \x0a
1469   -1729: name: /Resources
1470   -1739: space:
1471   -1740: dict_open: <<
1472   -1742: space: \x0a
1473   -1747: name: /Font
1474   -1752: space:
1475   -1753: dict_open: <<
1476   -1755: space: \x0a
1477   -1762: name: /F1
1478   -1765: space:
1479   -1766: integer: 23
1480   -1768: space:
1481   -1769: integer: 0
1482   -1770: space:
1483   -1771: word: R
1484   -1772: space: \x0a
1485   -1777: dict_close: >>
1486   -1779: space: \x0a
1487   -1784: name: /ProcSet
1488   -1792: space:
1489   -1793: integer: 24
1490   -1795: space:
1491   -1796: integer: 0
1492   -1797: space:
1493   -1798: word: R
1494   -1799: space: \x0a
1495   -1802: dict_close: >>
1496   -1804: space: \x0a
1497   -1807: name: /Type
1498   -1812: space:
1499   -1813: name: /Page
1500   -1818: space: \x0a
1501   -1819: dict_close: >>
1502   -1821: space: \x0a
1503   -1822: comment: %% Object stream: object 9, index 7; original object ID: 9
1504   -1880: space: \x0a
1505   -1881: comment: %% Page 6
1506   -1890: space: \x0a
1507   -1891: dict_open: <<
1508   -1893: space: \x0a
1509   -1896: name: /Contents
1510   -1905: space:
1511   -1906: integer: 47
1512   -1908: space:
1513   -1909: integer: 0
1514   -1910: space:
1515   -1911: word: R
1516   -1912: space: \x0a
1517   -1915: name: /MediaBox
1518   -1924: space:
1519   -1925: array_open: [
1520   -1926: space: \x0a
1521   -1931: integer: 0
1522   -1932: space: \x0a
1523   -1937: integer: 0
1524   -1938: space: \x0a
1525   -1943: integer: 612
1526   -1946: space: \x0a
1527   -1951: integer: 792
1528   -1954: space: \x0a
1529   -1957: array_close: ]
1530   -1958: space: \x0a
1531   -1961: name: /Parent
1532   -1968: space:
1533   -1969: integer: 3
1534   -1970: space:
1535   -1971: integer: 0
1536   -1972: space:
1537   -1973: word: R
1538   -1974: space: \x0a
1539   -1977: name: /Resources
1540   -1987: space:
1541   -1988: dict_open: <<
1542   -1990: space: \x0a
1543   -1995: name: /Font
1544   -2000: space:
1545   -2001: dict_open: <<
1546   -2003: space: \x0a
1547   -2010: name: /F1
1548   -2013: space:
1549   -2014: integer: 25
1550   -2016: space:
1551   -2017: integer: 0
1552   -2018: space:
1553   -2019: word: R
1554   -2020: space: \x0a
1555   -2025: dict_close: >>
1556   -2027: space: \x0a
1557   -2032: name: /ProcSet
1558   -2040: space:
1559   -2041: integer: 26
1560   -2043: space:
1561   -2044: integer: 0
1562   -2045: space:
1563   -2046: word: R
1564   -2047: space: \x0a
1565   -2050: dict_close: >>
1566   -2052: space: \x0a
1567   -2055: name: /Type
1568   -2060: space:
1569   -2061: name: /Page
1570   -2066: space: \x0a
1571   -2067: dict_close: >>
1572   -2069: space: \x0a
1573   -2070: comment: %% Object stream: object 10, index 8; original object ID: 10
1574   -2130: space: \x0a
1575   -2131: comment: %% Page 7
1576   -2140: space: \x0a
1577   -2141: dict_open: <<
1578   -2143: space: \x0a
1579   -2146: name: /Contents
1580   -2155: space:
1581   -2156: integer: 49
1582   -2158: space:
1583   -2159: integer: 0
1584   -2160: space:
1585   -2161: word: R
1586   -2162: space: \x0a
1587   -2165: name: /MediaBox
1588   -2174: space:
1589   -2175: array_open: [
1590   -2176: space: \x0a
1591   -2181: integer: 0
1592   -2182: space: \x0a
1593   -2187: integer: 0
1594   -2188: space: \x0a
1595   -2193: integer: 612
1596   -2196: space: \x0a
1597   -2201: integer: 792
1598   -2204: space: \x0a
1599   -2207: array_close: ]
1600   -2208: space: \x0a
1601   -2211: name: /Parent
1602   -2218: space:
1603   -2219: integer: 3
1604   -2220: space:
1605   -2221: integer: 0
1606   -2222: space:
1607   -2223: word: R
1608   -2224: space: \x0a
1609   -2227: name: /Resources
1610   -2237: space:
1611   -2238: dict_open: <<
1612   -2240: space: \x0a
1613   -2245: name: /Font
1614   -2250: space:
1615   -2251: dict_open: <<
1616   -2253: space: \x0a
1617   -2260: name: /F1
1618   -2263: space:
1619   -2264: integer: 27
1620   -2266: space:
1621   -2267: integer: 0
1622   -2268: space:
1623   -2269: word: R
1624   -2270: space: \x0a
1625   -2275: dict_close: >>
1626   -2277: space: \x0a
1627   -2282: name: /ProcSet
1628   -2290: space:
1629   -2291: integer: 28
1630   -2293: space:
1631   -2294: integer: 0
1632   -2295: space:
1633   -2296: word: R
1634   -2297: space: \x0a
1635   -2300: dict_close: >>
1636   -2302: space: \x0a
1637   -2305: name: /Type
1638   -2310: space:
1639   -2311: name: /Page
1640   -2316: space: \x0a
1641   -2317: dict_close: >>
1642   -2319: space: \x0a
1643   -2320: comment: %% Object stream: object 11, index 9; original object ID: 11
1644   -2380: space: \x0a
1645   -2381: comment: %% Page 8
1646   -2390: space: \x0a
1647   -2391: dict_open: <<
1648   -2393: space: \x0a
1649   -2396: name: /Contents
1650   -2405: space:
1651   -2406: integer: 51
1652   -2408: space:
1653   -2409: integer: 0
1654   -2410: space:
1655   -2411: word: R
1656   -2412: space: \x0a
1657   -2415: name: /MediaBox
1658   -2424: space:
1659   -2425: array_open: [
1660   -2426: space: \x0a
1661   -2431: integer: 0
1662   -2432: space: \x0a
1663   -2437: integer: 0
1664   -2438: space: \x0a
1665   -2443: integer: 612
1666   -2446: space: \x0a
1667   -2451: integer: 792
1668   -2454: space: \x0a
1669   -2457: array_close: ]
1670   -2458: space: \x0a
1671   -2461: name: /Parent
1672   -2468: space:
1673   -2469: integer: 3
1674   -2470: space:
1675   -2471: integer: 0
1676   -2472: space:
1677   -2473: word: R
1678   -2474: space: \x0a
1679   -2477: name: /Resources
1680   -2487: space:
1681   -2488: dict_open: <<
1682   -2490: space: \x0a
1683   -2495: name: /Font
1684   -2500: space:
1685   -2501: dict_open: <<
1686   -2503: space: \x0a
1687   -2510: name: /F1
1688   -2513: space:
1689   -2514: integer: 29
1690   -2516: space:
1691   -2517: integer: 0
1692   -2518: space:
1693   -2519: word: R
1694   -2520: space: \x0a
1695   -2525: dict_close: >>
1696   -2527: space: \x0a
1697   -2532: name: /ProcSet
1698   -2540: space:
1699   -2541: integer: 30
1700   -2543: space:
1701   -2544: integer: 0
1702   -2545: space:
1703   -2546: word: R
1704   -2547: space: \x0a
1705   -2550: dict_close: >>
1706   -2552: space: \x0a
1707   -2555: name: /Type
1708   -2560: space:
1709   -2561: name: /Page
1710   -2566: space: \x0a
1711   -2567: dict_close: >>
1712   -2569: space: \x0a
1713   -2570: comment: %% Object stream: object 12, index 10; original object ID: 12
1714   -2631: space: \x0a
1715   -2632: comment: %% Page 9
1716   -2641: space: \x0a
1717   -2642: dict_open: <<
1718   -2644: space: \x0a
1719   -2647: name: /Contents
1720   -2656: space:
1721   -2657: integer: 53
1722   -2659: space:
1723   -2660: integer: 0
1724   -2661: space:
1725   -2662: word: R
1726   -2663: space: \x0a
1727   -2666: name: /MediaBox
1728   -2675: space:
1729   -2676: array_open: [
1730   -2677: space: \x0a
1731   -2682: integer: 0
1732   -2683: space: \x0a
1733   -2688: integer: 0
1734   -2689: space: \x0a
1735   -2694: integer: 612
1736   -2697: space: \x0a
1737   -2702: integer: 792
1738   -2705: space: \x0a
1739   -2708: array_close: ]
1740   -2709: space: \x0a
1741   -2712: name: /Parent
1742   -2719: space:
1743   -2720: integer: 3
1744   -2721: space:
1745   -2722: integer: 0
1746   -2723: space:
1747   -2724: word: R
1748   -2725: space: \x0a
1749   -2728: name: /Resources
1750   -2738: space:
1751   -2739: dict_open: <<
1752   -2741: space: \x0a
1753   -2746: name: /Font
1754   -2751: space:
1755   -2752: dict_open: <<
1756   -2754: space: \x0a
1757   -2761: name: /F1
1758   -2764: space:
1759   -2765: integer: 31
1760   -2767: space:
1761   -2768: integer: 0
1762   -2769: space:
1763   -2770: word: R
1764   -2771: space: \x0a
1765   -2776: dict_close: >>
1766   -2778: space: \x0a
1767   -2783: name: /ProcSet
1768   -2791: space:
1769   -2792: integer: 32
1770   -2794: space:
1771   -2795: integer: 0
1772   -2796: space:
1773   -2797: word: R
1774   -2798: space: \x0a
1775   -2801: dict_close: >>
1776   -2803: space: \x0a
1777   -2806: name: /Type
1778   -2811: space:
1779   -2812: name: /Page
1780   -2817: space: \x0a
1781   -2818: dict_close: >>
1782   -2820: space: \x0a
1783   -2821: comment: %% Object stream: object 13, index 11; original object ID: 13
1784   -2882: space: \x0a
1785   -2883: comment: %% Page 10
1786   -2893: space: \x0a
1787   -2894: dict_open: <<
1788   -2896: space: \x0a
1789   -2899: name: /Contents
1790   -2908: space:
1791   -2909: integer: 55
1792   -2911: space:
1793   -2912: integer: 0
1794   -2913: space:
1795   -2914: word: R
1796   -2915: space: \x0a
1797   -2918: name: /MediaBox
1798   -2927: space:
1799   -2928: array_open: [
1800   -2929: space: \x0a
1801   -2934: integer: 0
1802   -2935: space: \x0a
1803   -2940: integer: 0
1804   -2941: space: \x0a
1805   -2946: integer: 612
1806   -2949: space: \x0a
1807   -2954: integer: 792
1808   -2957: space: \x0a
1809   -2960: array_close: ]
1810   -2961: space: \x0a
1811   -2964: name: /Parent
1812   -2971: space:
1813   -2972: integer: 3
1814   -2973: space:
1815   -2974: integer: 0
1816   -2975: space:
1817   -2976: word: R
1818   -2977: space: \x0a
1819   -2980: name: /Resources
1820   -2990: space:
1821   -2991: dict_open: <<
1822   -2993: space: \x0a
1823   -2998: name: /Font
1824   -3003: space:
1825   -3004: dict_open: <<
1826   -3006: space: \x0a
1827   -3013: name: /F1
1828   -3016: space:
1829   -3017: integer: 33
1830   -3019: space:
1831   -3020: integer: 0
1832   -3021: space:
1833   -3022: word: R
1834   -3023: space: \x0a
1835   -3028: dict_close: >>
1836   -3030: space: \x0a
1837   -3035: name: /ProcSet
1838   -3043: space:
1839   -3044: integer: 34
1840   -3046: space:
1841   -3047: integer: 0
1842   -3048: space:
1843   -3049: word: R
1844   -3050: space: \x0a
1845   -3053: dict_close: >>
1846   -3055: space: \x0a
1847   -3058: name: /Type
1848   -3063: space:
1849   -3064: name: /Page
1850   -3069: space: \x0a
1851   -3070: dict_close: >>
1852   -3072: space: \x0a
1853   -3073: comment: %% Object stream: object 14, index 12; original object ID: 14
1854   -3134: space: \x0a
1855   -3135: comment: %% Page 11
1856   -3145: space: \x0a
1857   -3146: dict_open: <<
1858   -3148: space: \x0a
1859   -3151: name: /Contents
1860   -3160: space:
1861   -3161: integer: 57
1862   -3163: space:
1863   -3164: integer: 0
1864   -3165: space:
1865   -3166: word: R
1866   -3167: space: \x0a
1867   -3170: name: /MediaBox
1868   -3179: space:
1869   -3180: array_open: [
1870   -3181: space: \x0a
1871   -3186: integer: 0
1872   -3187: space: \x0a
1873   -3192: integer: 0
1874   -3193: space: \x0a
1875   -3198: integer: 612
1876   -3201: space: \x0a
1877   -3206: integer: 792
1878   -3209: space: \x0a
1879   -3212: array_close: ]
1880   -3213: space: \x0a
1881   -3216: name: /Parent
1882   -3223: space:
1883   -3224: integer: 3
1884   -3225: space:
1885   -3226: integer: 0
1886   -3227: space:
1887   -3228: word: R
1888   -3229: space: \x0a
1889   -3232: name: /Resources
1890   -3242: space:
1891   -3243: dict_open: <<
1892   -3245: space: \x0a
1893   -3250: name: /Font
1894   -3255: space:
1895   -3256: dict_open: <<
1896   -3258: space: \x0a
1897   -3265: name: /F1
1898   -3268: space:
1899   -3269: integer: 35
1900   -3271: space:
1901   -3272: integer: 0
1902   -3273: space:
1903   -3274: word: R
1904   -3275: space: \x0a
1905   -3280: dict_close: >>
1906   -3282: space: \x0a
1907   -3287: name: /ProcSet
1908   -3295: space:
1909   -3296: integer: 36
1910   -3298: space:
1911   -3299: integer: 0
1912   -3300: space:
1913   -3301: word: R
1914   -3302: space: \x0a
1915   -3305: dict_close: >>
1916   -3307: space: \x0a
1917   -3310: name: /Type
1918   -3315: space:
1919   -3316: name: /Page
1920   -3321: space: \x0a
1921   -3322: dict_close: >>
1922   -3324: space: \x0a
1923   -3325: comment: %% Object stream: object 15, index 13; original object ID: 15
1924   -3386: space: \x0a
1925   -3387: dict_open: <<
1926   -3389: space: \x0a
1927   -3392: name: /BaseFont
1928   -3401: space:
1929   -3402: name: /Helvetica
1930   -3412: space: \x0a
1931   -3415: name: /Encoding
1932   -3424: space:
1933   -3425: name: /WinAnsiEncoding
1934   -3441: space: \x0a
1935   -3444: name: /Name
1936   -3449: space:
1937   -3450: name: /F1
1938   -3453: space: \x0a
1939   -3456: name: /Subtype
1940   -3464: space:
1941   -3465: name: /Type1
1942   -3471: space: \x0a
1943   -3474: name: /Type
1944   -3479: space:
1945   -3480: name: /Font
1946   -3485: space: \x0a
1947   -3486: dict_close: >>
1948   -3488: space: \x0a
1949   -3489: comment: %% Object stream: object 16, index 14; original object ID: 16
1950   -3550: space: \x0a
1951   -3551: array_open: [
1952   -3552: space: \x0a
1953   -3555: name: /PDF
1954   -3559: space: \x0a
1955   -3562: name: /Text
1956   -3567: space: \x0a
1957   -3568: array_close: ]
1958   -3569: space: \x0a
1959   -3570: comment: %% Object stream: object 17, index 15; original object ID: 17
1960   -3631: space: \x0a
1961   -3632: dict_open: <<
1962   -3634: space: \x0a
1963   -3637: name: /BaseFont
1964   -3646: space:
1965   -3647: name: /Helvetica
1966   -3657: space: \x0a
1967   -3660: name: /Encoding
1968   -3669: space:
1969   -3670: name: /WinAnsiEncoding
1970   -3686: space: \x0a
1971   -3689: name: /Name
1972   -3694: space:
1973   -3695: name: /F1
1974   -3698: space: \x0a
1975   -3701: name: /Subtype
1976   -3709: space:
1977   -3710: name: /Type1
1978   -3716: space: \x0a
1979   -3719: name: /Type
1980   -3724: space:
1981   -3725: name: /Font
1982   -3730: space: \x0a
1983   -3731: dict_close: >>
1984   -3733: space: \x0a
1985   -3734: comment: %% Object stream: object 18, index 16; original object ID: 18
1986   -3795: space: \x0a
1987   -3796: array_open: [
1988   -3797: space: \x0a
1989   -3800: name: /PDF
1990   -3804: space: \x0a
1991   -3807: name: /Text
1992   -3812: space: \x0a
1993   -3813: array_close: ]
1994   -3814: space: \x0a
1995   -3815: comment: %% Object stream: object 19, index 17; original object ID: 19
1996   -3876: space: \x0a
1997   -3877: dict_open: <<
1998   -3879: space: \x0a
1999   -3882: name: /BaseFont
2000   -3891: space:
2001   -3892: name: /Helvetica
2002   -3902: space: \x0a
2003   -3905: name: /Encoding
2004   -3914: space:
2005   -3915: name: /WinAnsiEncoding
2006   -3931: space: \x0a
2007   -3934: name: /Name
2008   -3939: space:
2009   -3940: name: /F1
2010   -3943: space: \x0a
2011   -3946: name: /Subtype
2012   -3954: space:
2013   -3955: name: /Type1
2014   -3961: space: \x0a
2015   -3964: name: /Type
2016   -3969: space:
2017   -3970: name: /Font
2018   -3975: space: \x0a
2019   -3976: dict_close: >>
2020   -3978: space: \x0a
2021   -3979: comment: %% Object stream: object 20, index 18; original object ID: 20
2022   -4040: space: \x0a
2023   -4041: array_open: [
2024   -4042: space: \x0a
2025   -4045: name: /PDF
2026   -4049: space: \x0a
2027   -4052: name: /Text
2028   -4057: space: \x0a
2029   -4058: array_close: ]
2030   -4059: space: \x0a
2031   -4060: comment: %% Object stream: object 21, index 19; original object ID: 21
2032   -4121: space: \x0a
2033   -4122: dict_open: <<
2034   -4124: space: \x0a
2035   -4127: name: /BaseFont
2036   -4136: space:
2037   -4137: name: /Helvetica
2038   -4147: space: \x0a
2039   -4150: name: /Encoding
2040   -4159: space:
2041   -4160: name: /WinAnsiEncoding
2042   -4176: space: \x0a
2043   -4179: name: /Name
2044   -4184: space:
2045   -4185: name: /F1
2046   -4188: space: \x0a
2047   -4191: name: /Subtype
2048   -4199: space:
2049   -4200: name: /Type1
2050   -4206: space: \x0a
2051   -4209: name: /Type
2052   -4214: space:
2053   -4215: name: /Font
2054   -4220: space: \x0a
2055   -4221: dict_close: >>
2056   -4223: space: \x0a
2057   -4224: comment: %% Object stream: object 22, index 20; original object ID: 22
2058   -4285: space: \x0a
2059   -4286: array_open: [
2060   -4287: space: \x0a
2061   -4290: name: /PDF
2062   -4294: space: \x0a
2063   -4297: name: /Text
2064   -4302: space: \x0a
2065   -4303: array_close: ]
2066   -4304: space: \x0a
2067   -4305: comment: %% Object stream: object 23, index 21; original object ID: 23
2068   -4366: space: \x0a
2069   -4367: dict_open: <<
2070   -4369: space: \x0a
2071   -4372: name: /BaseFont
2072   -4381: space:
2073   -4382: name: /Helvetica
2074   -4392: space: \x0a
2075   -4395: name: /Encoding
2076   -4404: space:
2077   -4405: name: /WinAnsiEncoding
2078   -4421: space: \x0a
2079   -4424: name: /Name
2080   -4429: space:
2081   -4430: name: /F1
2082   -4433: space: \x0a
2083   -4436: name: /Subtype
2084   -4444: space:
2085   -4445: name: /Type1
2086   -4451: space: \x0a
2087   -4454: name: /Type
2088   -4459: space:
2089   -4460: name: /Font
2090   -4465: space: \x0a
2091   -4466: dict_close: >>
2092   -4468: space: \x0a
2093   -4469: comment: %% Object stream: object 24, index 22; original object ID: 24
2094   -4530: space: \x0a
2095   -4531: array_open: [
2096   -4532: space: \x0a
2097   -4535: name: /PDF
2098   -4539: space: \x0a
2099   -4542: name: /Text
2100   -4547: space: \x0a
2101   -4548: array_close: ]
2102   -4549: space: \x0a
2103   -4550: comment: %% Object stream: object 25, index 23; original object ID: 25
2104   -4611: space: \x0a
2105   -4612: dict_open: <<
2106   -4614: space: \x0a
2107   -4617: name: /BaseFont
2108   -4626: space:
2109   -4627: name: /Helvetica
2110   -4637: space: \x0a
2111   -4640: name: /Encoding
2112   -4649: space:
2113   -4650: name: /WinAnsiEncoding
2114   -4666: space: \x0a
2115   -4669: name: /Name
2116   -4674: space:
2117   -4675: name: /F1
2118   -4678: space: \x0a
2119   -4681: name: /Subtype
2120   -4689: space:
2121   -4690: name: /Type1
2122   -4696: space: \x0a
2123   -4699: name: /Type
2124   -4704: space:
2125   -4705: name: /Font
2126   -4710: space: \x0a
2127   -4711: dict_close: >>
2128   -4713: space: \x0a
2129   -4714: comment: %% Object stream: object 26, index 24; original object ID: 26
2130   -4775: space: \x0a
2131   -4776: array_open: [
2132   -4777: space: \x0a
2133   -4780: name: /PDF
2134   -4784: space: \x0a
2135   -4787: name: /Text
2136   -4792: space: \x0a
2137   -4793: array_close: ]
2138   -4794: space: \x0a
2139   -4795: comment: %% Object stream: object 27, index 25; original object ID: 27
2140   -4856: space: \x0a
2141   -4857: dict_open: <<
2142   -4859: space: \x0a
2143   -4862: name: /BaseFont
2144   -4871: space:
2145   -4872: name: /Helvetica
2146   -4882: space: \x0a
2147   -4885: name: /Encoding
2148   -4894: space:
2149   -4895: name: /WinAnsiEncoding
2150   -4911: space: \x0a
2151   -4914: name: /Name
2152   -4919: space:
2153   -4920: name: /F1
2154   -4923: space: \x0a
2155   -4926: name: /Subtype
2156   -4934: space:
2157   -4935: name: /Type1
2158   -4941: space: \x0a
2159   -4944: name: /Type
2160   -4949: space:
2161   -4950: name: /Font
2162   -4955: space: \x0a
2163   -4956: dict_close: >>
2164   -4958: space: \x0a
2165   -4959: comment: %% Object stream: object 28, index 26; original object ID: 28
2166   -5020: space: \x0a
2167   -5021: array_open: [
2168   -5022: space: \x0a
2169   -5025: name: /PDF
2170   -5029: space: \x0a
2171   -5032: name: /Text
2172   -5037: space: \x0a
2173   -5038: array_close: ]
2174   -5039: space: \x0a
2175   -5040: comment: %% Object stream: object 29, index 27; original object ID: 29
2176   -5101: space: \x0a
2177   -5102: dict_open: <<
2178   -5104: space: \x0a
2179   -5107: name: /BaseFont
2180   -5116: space:
2181   -5117: name: /Helvetica
2182   -5127: space: \x0a
2183   -5130: name: /Encoding
2184   -5139: space:
2185   -5140: name: /WinAnsiEncoding
2186   -5156: space: \x0a
2187   -5159: name: /Name
2188   -5164: space:
2189   -5165: name: /F1
2190   -5168: space: \x0a
2191   -5171: name: /Subtype
2192   -5179: space:
2193   -5180: name: /Type1
2194   -5186: space: \x0a
2195   -5189: name: /Type
2196   -5194: space:
2197   -5195: name: /Font
2198   -5200: space: \x0a
2199   -5201: dict_close: >>
2200   -5203: space: \x0a
2201   -5204: comment: %% Object stream: object 30, index 28; original object ID: 30
2202   -5265: space: \x0a
2203   -5266: array_open: [
2204   -5267: space: \x0a
2205   -5270: name: /PDF
2206   -5274: space: \x0a
2207   -5277: name: /Text
2208   -5282: space: \x0a
2209   -5283: array_close: ]
2210   -5284: space: \x0a
2211   -5285: comment: %% Object stream: object 31, index 29; original object ID: 31
2212   -5346: space: \x0a
2213   -5347: dict_open: <<
2214   -5349: space: \x0a
2215   -5352: name: /BaseFont
2216   -5361: space:
2217   -5362: name: /Helvetica
2218   -5372: space: \x0a
2219   -5375: name: /Encoding
2220   -5384: space:
2221   -5385: name: /WinAnsiEncoding
2222   -5401: space: \x0a
2223   -5404: name: /Name
2224   -5409: space:
2225   -5410: name: /F1
2226   -5413: space: \x0a
2227   -5416: name: /Subtype
2228   -5424: space:
2229   -5425: name: /Type1
2230   -5431: space: \x0a
2231   -5434: name: /Type
2232   -5439: space:
2233   -5440: name: /Font
2234   -5445: space: \x0a
2235   -5446: dict_close: >>
2236   -5448: space: \x0a
2237   -5449: comment: %% Object stream: object 32, index 30; original object ID: 32
2238   -5510: space: \x0a
2239   -5511: array_open: [
2240   -5512: space: \x0a
2241   -5515: name: /PDF
2242   -5519: space: \x0a
2243   -5522: name: /Text
2244   -5527: space: \x0a
2245   -5528: array_close: ]
2246   -5529: space: \x0a
2247   -5530: comment: %% Object stream: object 33, index 31; original object ID: 33
2248   -5591: space: \x0a
2249   -5592: dict_open: <<
2250   -5594: space: \x0a
2251   -5597: name: /BaseFont
2252   -5606: space:
2253   -5607: name: /Helvetica
2254   -5617: space: \x0a
2255   -5620: name: /Encoding
2256   -5629: space:
2257   -5630: name: /WinAnsiEncoding
2258   -5646: space: \x0a
2259   -5649: name: /Name
2260   -5654: space:
2261   -5655: name: /F1
2262   -5658: space: \x0a
2263   -5661: name: /Subtype
2264   -5669: space:
2265   -5670: name: /Type1
2266   -5676: space: \x0a
2267   -5679: name: /Type
2268   -5684: space:
2269   -5685: name: /Font
2270   -5690: space: \x0a
2271   -5691: dict_close: >>
2272   -5693: space: \x0a
2273   -5694: comment: %% Object stream: object 34, index 32; original object ID: 34
2274   -5755: space: \x0a
2275   -5756: array_open: [
2276   -5757: space: \x0a
2277   -5760: name: /PDF
2278   -5764: space: \x0a
2279   -5767: name: /Text
2280   -5772: space: \x0a
2281   -5773: array_close: ]
2282   -5774: space: \x0a
2283   -5775: comment: %% Object stream: object 35, index 33; original object ID: 35
2284   -5836: space: \x0a
2285   -5837: dict_open: <<
2286   -5839: space: \x0a
2287   -5842: name: /BaseFont
2288   -5851: space:
2289   -5852: name: /Helvetica
2290   -5862: space: \x0a
2291   -5865: name: /Encoding
2292   -5874: space:
2293   -5875: name: /WinAnsiEncoding
2294   -5891: space: \x0a
2295   -5894: name: /Name
2296   -5899: space:
2297   -5900: name: /F1
2298   -5903: space: \x0a
2299   -5906: name: /Subtype
2300   -5914: space:
2301   -5915: name: /Type1
2302   -5921: space: \x0a
2303   -5924: name: /Type
2304   -5929: space:
2305   -5930: name: /Font
2306   -5935: space: \x0a
2307   -5936: dict_close: >>
2308   -5938: space: \x0a
2309   -5939: comment: %% Object stream: object 36, index 34; original object ID: 36
2310   -6000: space: \x0a
2311   -6001: array_open: [
2312   -6002: space: \x0a
2313   -6005: name: /PDF
2314   -6009: space: \x0a
2315   -6012: name: /Text
2316   -6017: space: \x0a
2317   -6018: array_close: ]
2318   -6019: space: \x0a
2319   -6020: eof
2320   ---- END OBJECT STREAM 1 ---
qpdf/test_tokenizer.cc
... ... @@ -17,7 +17,7 @@ static char const* whoami = 0;
17 17 void usage()
18 18 {
19 19 std::cerr << "Usage: " << whoami
20   - << " [-maxlen len | -no-ignorable | -old-ei] filename"
  20 + << " [-maxlen len | -no-ignorable] filename"
21 21 << std::endl;
22 22 exit(2);
23 23 }
... ... @@ -133,7 +133,7 @@ try_skipping(QPDFTokenizer&amp; tokenizer, PointerHolder&lt;InputSource&gt; is,
133 133 static void
134 134 dump_tokens(PointerHolder<InputSource> is, std::string const& label,
135 135 size_t max_len, bool include_ignorable,
136   - bool skip_streams, bool skip_inline_images, bool old_ei)
  136 + bool skip_streams, bool skip_inline_images)
137 137 {
138 138 Finder f1(is, "endstream");
139 139 std::cout << "--- BEGIN " << label << " ---" << std::endl;
... ... @@ -186,14 +186,7 @@ dump_tokens(PointerHolder&lt;InputSource&gt; is, std::string const&amp; label,
186 186 {
187 187 char ch;
188 188 is->read(&ch, 1);
189   - if (old_ei)
190   - {
191   - tokenizer.expectInlineImage();
192   - }
193   - else
194   - {
195   - tokenizer.expectInlineImage(is);
196   - }
  189 + tokenizer.expectInlineImage(is);
197 190 inline_image_offset = is->tell();
198 191 }
199 192 else if (token.getType() == QPDFTokenizer::tt_eof)
... ... @@ -205,7 +198,7 @@ dump_tokens(PointerHolder&lt;InputSource&gt; is, std::string const&amp; label,
205 198 }
206 199  
207 200 static void process(char const* filename, bool include_ignorable,
208   - size_t max_len, bool old_ei)
  201 + size_t max_len)
209 202 {
210 203 PointerHolder<InputSource> is;
211 204  
... ... @@ -213,7 +206,7 @@ static void process(char const* filename, bool include_ignorable,
213 206 FileInputSource* fis = new FileInputSource();
214 207 fis->setFilename(filename);
215 208 is = fis;
216   - dump_tokens(is, "FILE", max_len, include_ignorable, true, false, false);
  209 + dump_tokens(is, "FILE", max_len, include_ignorable, true, false);
217 210  
218 211 // Tokenize content streams, skipping inline images
219 212 QPDF qpdf;
... ... @@ -232,7 +225,7 @@ static void process(char const* filename, bool include_ignorable,
232 225 "content data", content_data.getPointer());
233 226 is = bis;
234 227 dump_tokens(is, "PAGE " + QUtil::int_to_string(pageno),
235   - max_len, include_ignorable, false, true, old_ei);
  228 + max_len, include_ignorable, false, true);
236 229 }
237 230  
238 231 // Tokenize object streams
... ... @@ -251,7 +244,7 @@ static void process(char const* filename, bool include_ignorable,
251 244 is = bis;
252 245 dump_tokens(is, "OBJECT STREAM " +
253 246 QUtil::int_to_string((*iter).getObjectID()),
254   - max_len, include_ignorable, false, false, false);
  247 + max_len, include_ignorable, false, false);
255 248 }
256 249 }
257 250 }
... ... @@ -276,7 +269,6 @@ int main(int argc, char* argv[])
276 269 char const* filename = 0;
277 270 size_t max_len = 0;
278 271 bool include_ignorable = true;
279   - bool old_ei = false;
280 272 for (int i = 1; i < argc; ++i)
281 273 {
282 274 if (argv[i][0] == '-')
... ... @@ -293,10 +285,6 @@ int main(int argc, char* argv[])
293 285 {
294 286 include_ignorable = false;
295 287 }
296   - else if (strcmp(argv[i], "-old-ei") == 0)
297   - {
298   - old_ei = true;
299   - }
300 288 else
301 289 {
302 290 usage();
... ... @@ -318,7 +306,7 @@ int main(int argc, char* argv[])
318 306  
319 307 try
320 308 {
321   - process(filename, include_ignorable, max_len, old_ei);
  309 + process(filename, include_ignorable, max_len);
322 310 }
323 311 catch (std::exception& e)
324 312 {
... ...