Commit eb49e07c0afc1b30b53d3ae2849c824c9407f00d

Authored by Jay Berkenbilt
1 parent 5211bcb5

Make inline image token exactly contain the image data

Do not include the trailing EI, and handle cases where EI is not
preceded by a delimiter. Such cases have been seen in the wild.
ChangeLog
... ... @@ -26,10 +26,14 @@
26 26  
27 27 * Very low-level QPDFTokenizer API now includes an
28 28 expectInlineImage method that takes an input stream, enabling it
29   - to locate an inline image's EI operator better. This is called
  29 + to locate an inline image's EI operator better. When this method
  30 + is called, the inline image token returned will not contain the EI
  31 + operator and will contain correct image data. This is called
30 32 automatically everywhere within the qpdf library. Most user code
31 33 will never have to use the low-level tokenizer API. If you use
32   - Pl_QPDFTokenizer, this will be done automatically for you.
  34 + Pl_QPDFTokenizer, this will be done automatically for you. If you
  35 + use the low-level API and call expectInlineImage, you should call
  36 + the new version.
33 37  
34 38 2019-01-29 Jay Berkenbilt <ejb@ql.org>
35 39  
... ...
... ... @@ -24,6 +24,9 @@ Do these things next time we have to break binary compatibility
24 24 * Get rid of the version of QPDF::copyForeignObject with the bool
25 25 unused parameter.
26 26  
  27 + * Remove version of QPDFTokenizer::expectInlineImage with no
  28 + arguments.
  29 +
27 30 Lexical
28 31 =======
29 32  
... ...
include/qpdf/QPDFTokenizer.hh
... ... @@ -176,19 +176,23 @@ class QPDFTokenizer
176 176 // Calling this method puts the tokenizer in a state for reading
177 177 // inline images. You should call this method after reading the
178 178 // character following the ID operator. In that state, it will
179   - // return all data up to and including the next EI token. After
180   - // you call this method, the next call to readToken (or the token
  179 + // return all data up to BUT NOT INCLUDING the next EI token. This
  180 + // is a difference in behavior from the legacy version. After you
  181 + // call this method, the next call to readToken (or the token
181 182 // created next time getToken returns true) will either be
182 183 // tt_inline_image or tt_bad. This is the only way readToken
183   - // returns a tt_inline_image token. The version of this method
184   - // that takes a PointerHolder<InputSource> does a better job of
185   - // locating the end of the inline image and should be used
186   - // whenever the input source is available. It preserves both
187   - // tell() and getLastOffset(). The version without the input
188   - // source will always end the inline image the first time it sees
189   - // something that looks like an EI operator.
  184 + // returns a tt_inline_image token. The older version of this
  185 + // method that takes does not take a PointerHolder<InputSource>
  186 + // will always end the inline image the first time it sees
  187 + // something that looks like an EI operator and will include the
  188 + // EI operator in the token. It is being maintained for backward
  189 + // compatibility only and will likely be removed in the future.
190 190 QPDF_DLL
191 191 void expectInlineImage(PointerHolder<InputSource> input);
  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.
192 196 QPDF_DLL
193 197 void expectInlineImage();
194 198  
... ...
libqpdf/QPDFObjectHandle.cc
... ... @@ -1570,16 +1570,7 @@ QPDFObjectHandle::parseContentStream_data(
1570 1570 }
1571 1571 else
1572 1572 {
1573   - // Skip back over EI
1574   - input->seek(-2, SEEK_CUR);
1575   - std::string inline_image = t.getRawValue();
1576   - for (int i = 0; i < 3; ++i)
1577   - {
1578   - if (inline_image.length() > 0)
1579   - {
1580   - inline_image.erase(inline_image.length() - 1);
1581   - }
1582   - }
  1573 + std::string inline_image = t.getValue();
1583 1574 QTC::TC("qpdf", "QPDFObjectHandle inline image token");
1584 1575 callbacks->handleObject(
1585 1576 QPDFObjectHandle::newInlineImage(inline_image));
... ...
libqpdf/QPDFPageObjectHelper.cc
... ... @@ -228,10 +228,6 @@ InlineImageTracker::handleToken(QPDFTokenizer::Token const&amp; token)
228 228 {
229 229 std::string image_data(token.getValue());
230 230 size_t len = image_data.length();
231   - // The token ends with delimiter followed by EI, so it
232   - // will always be at least 3 bytes long. We want to
233   - // exclude the EI and preceding delimiter.
234   - len = (len >= 3 ? len - 3 : 0);
235 231 if (len >= this->min_size)
236 232 {
237 233 QTC::TC("qpdf", "QPDFPageObjectHelper externalize inline image");
... ... @@ -256,14 +252,18 @@ InlineImageTracker::handleToken(QPDFTokenizer::Token const&amp; token)
256 252 QTC::TC("qpdf", "QPDFPageObjectHelper keep inline image");
257 253 write(bi_str);
258 254 writeToken(token);
  255 + state = st_top;
259 256 }
260   - state = st_top;
261 257 }
262 258 else if (token == QPDFTokenizer::Token(QPDFTokenizer::tt_word, "ID"))
263 259 {
264 260 bi_str += token.getValue();
265 261 dict_str += " >>";
266 262 }
  263 + else if (token == QPDFTokenizer::Token(QPDFTokenizer::tt_word, "EI"))
  264 + {
  265 + state = st_top;
  266 + }
267 267 else
268 268 {
269 269 bi_str += token.getValue();
... ...
libqpdf/QPDFTokenizer.cc
... ... @@ -73,15 +73,6 @@ QPDFWordTokenFinder::check()
73 73 // beginning of the input.
74 74 return false;
75 75 }
76   - is->seek(token_start - 1, SEEK_SET);
77   - char prev;
78   - bool prev_okay = ((is->read(&prev, 1) == 1) && is_delimiter(prev));
79   - is->seek(pos, SEEK_SET);
80   - if (! prev_okay)
81   - {
82   - QTC::TC("qpdf", "QPDFTokenizer finder word not preceded by delimiter");
83   - return false;
84   - }
85 76 return true;
86 77 }
87 78  
... ... @@ -724,7 +715,7 @@ QPDFTokenizer::findEI(PointerHolder&lt;InputSource&gt; input)
724 715 {
725 716 break;
726 717 }
727   - this->m->inline_image_bytes = input->tell() - pos;
  718 + this->m->inline_image_bytes = input->tell() - pos - 2;
728 719  
729 720 QPDFTokenizer check;
730 721 bool found_bad = false;
... ...
qpdf/qpdf.testcov
... ... @@ -431,7 +431,6 @@ 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 finder word not preceded by delimiter 0
435 434 QPDFTokenizer found EI the old way 0
436 435 QPDFTokenizer found EI by byte count 0
437 436 QPDFTokenizer inline image at EOF the old way 0
... ...
qpdf/qtest/qpdf.test
... ... @@ -776,7 +776,7 @@ $td-&gt;runtest(&quot;tokenizer&quot;,
776 776  
777 777 $td->runtest("tokenizer with old inline image code",
778 778 {$td->COMMAND => "test_tokenizer -old-ei tokens.pdf"},
779   - {$td->FILE => "tokens.out", $td->EXIT_STATUS => 0},
  779 + {$td->FILE => "tokens-old-ei.out", $td->EXIT_STATUS => 0},
780 780 $td->NORMALIZE_NEWLINES);
781 781  
782 782 $td->runtest("tokenizer with max_len",
... ...
qpdf/qtest/qpdf/damaged-inline-image-out.pdf
No preview for this file type
qpdf/qtest/qpdf/inline-images-ii-some.pdf
No preview for this file type
qpdf/qtest/qpdf/large-inline-image-ii-all.pdf
No preview for this file type
qpdf/qtest/qpdf/large-inline-image-ii-some.pdf
No preview for this file type
qpdf/qtest/qpdf/optimize-images-inline-images-all-size.out
1   -qpdf: image /IIm1 on page 1: optimizing image reduces size from 2391 to ...
2   -qpdf: image /IIm2 on page 1: optimizing image reduces size from 2134996 to ...
  1 +qpdf: image /IIm1 on page 1: optimizing image reduces size from 2392 to ...
  2 +qpdf: image /IIm2 on page 1: optimizing image reduces size from 2134997 to ...
3 3 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT
4 4 qpdf: image /IIm4 on page 1: not optimizing because DCT compression does not reduce image size
5 5 qpdf: wrote file a.pdf
... ...
qpdf/qtest/qpdf/optimize-images-inline-images-keep-some.out
1 1 qpdf: image /IIm1 on page 1: not optimizing because image is smaller than requested minimum dimensions
2   -qpdf: image /IIm2 on page 1: optimizing image reduces size from 2134996 to ...
  2 +qpdf: image /IIm2 on page 1: optimizing image reduces size from 2134997 to ...
3 3 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT
4 4 qpdf: wrote file a.pdf
... ...
qpdf/qtest/qpdf/optimize-images-inline-images.out
1 1 qpdf: image /IIm1 on page 1: not optimizing because image is smaller than requested minimum dimensions
2   -qpdf: image /IIm2 on page 1: optimizing image reduces size from 2134996 to ...
  2 +qpdf: image /IIm2 on page 1: optimizing image reduces size from 2134997 to ...
3 3 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT
4 4 qpdf: image /IIm4 on page 1: not optimizing because image is smaller than requested minimum dimensions
5 5 qpdf: wrote file a.pdf
... ...
qpdf/qtest/qpdf/terminate-parsing.out
... ... @@ -29,7 +29,7 @@ name: /Fl
29 29 name: /DP
30 30 dictionary: << /Columns 1 /Predictor 15 >>
31 31 operator: ID
32   -inline-image: 789c63fc0f0001030101
  32 +inline-image: 789c63fc0f00010301010a
33 33 operator: EI
34 34 operator: Q
35 35 operator: q
... ... @@ -54,7 +54,7 @@ name: /Fl
54 54 name: /DP
55 55 dictionary: << /Columns 30 /Predictor 15 >>
56 56 operator: ID
57   -inline-image: 789cedd1a11100300800b1b2ffd06503148283bc8dfcf8af2a306ee352eff2e06318638c31c63b3801627b620a
  57 +inline-image: 789cedd1a11100300800b1b2ffd06503148283bc8dfcf8af2a306ee352eff2e06318638c31c63b3801627b620a0a
58 58 operator: EI
59 59 operator: Q
60 60 operator: q
... ... @@ -79,7 +79,7 @@ name: /Fl
79 79 name: /DP
80 80 dictionary: << /Columns 32 /Predictor 15 >>
81 81 operator: ID
82   -inline-image: 789c63fccf801f308e2a185530aa60882a20203faa605401890a0643aa1e5530aa6054010d140000bdd03c13
  82 +inline-image: 789c63fccf801f308e2a185530aa60882a20203faa605401890a0643aa1e5530aa6054010d140000bdd03c130a
83 83 operator: EI
84 84 operator: Q
85 85 -EOF-
... ...
qpdf/qtest/qpdf/tokenize-content-streams.out
... ... @@ -38,7 +38,7 @@ name: /Fl
38 38 name: /DP
39 39 dictionary: << /Columns 1 /Predictor 15 >>
40 40 operator: ID
41   -inline-image: 789c63fc0f0001030101
  41 +inline-image: 789c63fc0f00010301010a
42 42 operator: EI
43 43 operator: Q
44 44 operator: q
... ... @@ -63,7 +63,7 @@ name: /Fl
63 63 name: /DP
64 64 dictionary: << /Columns 30 /Predictor 15 >>
65 65 operator: ID
66   -inline-image: 789cedd1a11100300800b1b2ffd06503148283bc8dfcf8af2a306ee352eff2e06318638c31c63b3801627b620a
  66 +inline-image: 789cedd1a11100300800b1b2ffd06503148283bc8dfcf8af2a306ee352eff2e06318638c31c63b3801627b620a0a
67 67 operator: EI
68 68 operator: Q
69 69 operator: q
... ... @@ -88,7 +88,7 @@ name: /Fl
88 88 name: /DP
89 89 dictionary: << /Columns 32 /Predictor 15 >>
90 90 operator: ID
91   -inline-image: 789c63fccf801f308e2a185530aa60882a20203faa605401890a0643aa1e5530aa6054010d140000bdd03c13
  91 +inline-image: 789c63fccf801f308e2a185530aa60882a20203faa605401890a0643aa1e5530aa6054010d140000bdd03c130a
92 92 operator: EI
93 93 operator: Q
94 94 -EOF-
... ...
qpdf/qtest/qpdf/tokens-maxlen.out
... ... @@ -599,7 +599,8 @@ skipping to endstream
599 599 103: dict_close: >>
600 600 105: space: \x0a
601 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
  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\x0a
  603 +352: word: EI
603 604 354: space: \x0a
604 605 355: word: BT
605 606 357: space: \x0a
... ... @@ -810,7 +811,8 @@ EI not found; resuming normal scanning
810 811 67: dict_close: >>
811 812 69: space: \x0a
812 813 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 +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\x0a
  815 +316: word: EI
814 816 318: eof
815 817 --- END PAGE 7 ---
816 818 --- BEGIN PAGE 8 ---
... ...
qpdf/qtest/qpdf/tokens-no-ignorable.out
... ... @@ -291,7 +291,8 @@ skipping to endstream
291 291 101: integer: 66
292 292 103: dict_close: >>
293 293 106: word: ID
294   -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
  294 +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\x0a
  295 +352: word: EI
295 296 355: word: BT
296 297 360: name: /F1
297 298 364: integer: 24
... ... @@ -414,7 +415,8 @@ EI not found; resuming normal scanning
414 415 65: integer: 66
415 416 67: dict_close: >>
416 417 70: word: ID
417   -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
  418 +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\x0a
  419 +316: word: EI
418 420 318: eof
419 421 --- END PAGE 7 ---
420 422 --- BEGIN PAGE 8 ---
... ...
qpdf/qtest/qpdf/tokens-old-ei.out 0 โ†’ 100644
  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/qtest/qpdf/tokens.out
... ... @@ -599,7 +599,8 @@ skipping to endstream
599 599 103: dict_close: >>
600 600 105: space: \x0a
601 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
  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\x0a
  603 +352: word: EI
603 604 354: space: \x0a
604 605 355: word: BT
605 606 357: space: \x0a
... ... @@ -810,7 +811,8 @@ EI not found; resuming normal scanning
810 811 67: dict_close: >>
811 812 69: space: \x0a
812 813 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 +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\x0a
  815 +316: word: EI
814 816 318: eof
815 817 --- END PAGE 7 ---
816 818 --- BEGIN PAGE 8 ---
... ...