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,10 +26,14 @@
26 26
27 * Very low-level QPDFTokenizer API now includes an 27 * Very low-level QPDFTokenizer API now includes an
28 expectInlineImage method that takes an input stream, enabling it 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 automatically everywhere within the qpdf library. Most user code 32 automatically everywhere within the qpdf library. Most user code
31 will never have to use the low-level tokenizer API. If you use 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 2019-01-29 Jay Berkenbilt <ejb@ql.org> 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,6 +24,9 @@ Do these things next time we have to break binary compatibility
24 * Get rid of the version of QPDF::copyForeignObject with the bool 24 * Get rid of the version of QPDF::copyForeignObject with the bool
25 unused parameter. 25 unused parameter.
26 26
  27 + * Remove version of QPDFTokenizer::expectInlineImage with no
  28 + arguments.
  29 +
27 Lexical 30 Lexical
28 ======= 31 =======
29 32
include/qpdf/QPDFTokenizer.hh
@@ -176,19 +176,23 @@ class QPDFTokenizer @@ -176,19 +176,23 @@ class QPDFTokenizer
176 // Calling this method puts the tokenizer in a state for reading 176 // Calling this method puts the tokenizer in a state for reading
177 // inline images. You should call this method after reading the 177 // inline images. You should call this method after reading the
178 // character following the ID operator. In that state, it will 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 // created next time getToken returns true) will either be 182 // created next time getToken returns true) will either be
182 // tt_inline_image or tt_bad. This is the only way readToken 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 QPDF_DLL 190 QPDF_DLL
191 void expectInlineImage(PointerHolder<InputSource> input); 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 QPDF_DLL 196 QPDF_DLL
193 void expectInlineImage(); 197 void expectInlineImage();
194 198
libqpdf/QPDFObjectHandle.cc
@@ -1570,16 +1570,7 @@ QPDFObjectHandle::parseContentStream_data( @@ -1570,16 +1570,7 @@ QPDFObjectHandle::parseContentStream_data(
1570 } 1570 }
1571 else 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 QTC::TC("qpdf", "QPDFObjectHandle inline image token"); 1574 QTC::TC("qpdf", "QPDFObjectHandle inline image token");
1584 callbacks->handleObject( 1575 callbacks->handleObject(
1585 QPDFObjectHandle::newInlineImage(inline_image)); 1576 QPDFObjectHandle::newInlineImage(inline_image));
libqpdf/QPDFPageObjectHelper.cc
@@ -228,10 +228,6 @@ InlineImageTracker::handleToken(QPDFTokenizer::Token const&amp; token) @@ -228,10 +228,6 @@ InlineImageTracker::handleToken(QPDFTokenizer::Token const&amp; token)
228 { 228 {
229 std::string image_data(token.getValue()); 229 std::string image_data(token.getValue());
230 size_t len = image_data.length(); 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 if (len >= this->min_size) 231 if (len >= this->min_size)
236 { 232 {
237 QTC::TC("qpdf", "QPDFPageObjectHelper externalize inline image"); 233 QTC::TC("qpdf", "QPDFPageObjectHelper externalize inline image");
@@ -256,14 +252,18 @@ InlineImageTracker::handleToken(QPDFTokenizer::Token const&amp; token) @@ -256,14 +252,18 @@ InlineImageTracker::handleToken(QPDFTokenizer::Token const&amp; token)
256 QTC::TC("qpdf", "QPDFPageObjectHelper keep inline image"); 252 QTC::TC("qpdf", "QPDFPageObjectHelper keep inline image");
257 write(bi_str); 253 write(bi_str);
258 writeToken(token); 254 writeToken(token);
  255 + state = st_top;
259 } 256 }
260 - state = st_top;  
261 } 257 }
262 else if (token == QPDFTokenizer::Token(QPDFTokenizer::tt_word, "ID")) 258 else if (token == QPDFTokenizer::Token(QPDFTokenizer::tt_word, "ID"))
263 { 259 {
264 bi_str += token.getValue(); 260 bi_str += token.getValue();
265 dict_str += " >>"; 261 dict_str += " >>";
266 } 262 }
  263 + else if (token == QPDFTokenizer::Token(QPDFTokenizer::tt_word, "EI"))
  264 + {
  265 + state = st_top;
  266 + }
267 else 267 else
268 { 268 {
269 bi_str += token.getValue(); 269 bi_str += token.getValue();
libqpdf/QPDFTokenizer.cc
@@ -73,15 +73,6 @@ QPDFWordTokenFinder::check() @@ -73,15 +73,6 @@ QPDFWordTokenFinder::check()
73 // beginning of the input. 73 // beginning of the input.
74 return false; 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 return true; 76 return true;
86 } 77 }
87 78
@@ -724,7 +715,7 @@ QPDFTokenizer::findEI(PointerHolder&lt;InputSource&gt; input) @@ -724,7 +715,7 @@ QPDFTokenizer::findEI(PointerHolder&lt;InputSource&gt; input)
724 { 715 {
725 break; 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 QPDFTokenizer check; 720 QPDFTokenizer check;
730 bool found_bad = false; 721 bool found_bad = false;
qpdf/qpdf.testcov
@@ -431,7 +431,6 @@ qpdf from_nr from repeat_nr 0 @@ -431,7 +431,6 @@ qpdf from_nr from repeat_nr 0
431 QPDF resolve duplicated page object 0 431 QPDF resolve duplicated page object 0
432 QPDF handle direct page object 0 432 QPDF handle direct page object 0
433 QPDFTokenizer finder found wrong word 0 433 QPDFTokenizer finder found wrong word 0
434 -QPDFTokenizer finder word not preceded by delimiter 0  
435 QPDFTokenizer found EI the old way 0 434 QPDFTokenizer found EI the old way 0
436 QPDFTokenizer found EI by byte count 0 435 QPDFTokenizer found EI by byte count 0
437 QPDFTokenizer inline image at EOF the old way 0 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,7 +776,7 @@ $td-&gt;runtest(&quot;tokenizer&quot;,
776 776
777 $td->runtest("tokenizer with old inline image code", 777 $td->runtest("tokenizer with old inline image code",
778 {$td->COMMAND => "test_tokenizer -old-ei tokens.pdf"}, 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 $td->NORMALIZE_NEWLINES); 780 $td->NORMALIZE_NEWLINES);
781 781
782 $td->runtest("tokenizer with max_len", 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 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT 3 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT
4 qpdf: image /IIm4 on page 1: not optimizing because DCT compression does not reduce image size 4 qpdf: image /IIm4 on page 1: not optimizing because DCT compression does not reduce image size
5 qpdf: wrote file a.pdf 5 qpdf: wrote file a.pdf
qpdf/qtest/qpdf/optimize-images-inline-images-keep-some.out
1 qpdf: image /IIm1 on page 1: not optimizing because image is smaller than requested minimum dimensions 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 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT 3 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT
4 qpdf: wrote file a.pdf 4 qpdf: wrote file a.pdf
qpdf/qtest/qpdf/optimize-images-inline-images.out
1 qpdf: image /IIm1 on page 1: not optimizing because image is smaller than requested minimum dimensions 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 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT 3 qpdf: image /IIm3 on page 1: not optimizing because unable to decode data or data already uses DCT
4 qpdf: image /IIm4 on page 1: not optimizing because image is smaller than requested minimum dimensions 4 qpdf: image /IIm4 on page 1: not optimizing because image is smaller than requested minimum dimensions
5 qpdf: wrote file a.pdf 5 qpdf: wrote file a.pdf
qpdf/qtest/qpdf/terminate-parsing.out
@@ -29,7 +29,7 @@ name: /Fl @@ -29,7 +29,7 @@ name: /Fl
29 name: /DP 29 name: /DP
30 dictionary: << /Columns 1 /Predictor 15 >> 30 dictionary: << /Columns 1 /Predictor 15 >>
31 operator: ID 31 operator: ID
32 -inline-image: 789c63fc0f0001030101 32 +inline-image: 789c63fc0f00010301010a
33 operator: EI 33 operator: EI
34 operator: Q 34 operator: Q
35 operator: q 35 operator: q
@@ -54,7 +54,7 @@ name: /Fl @@ -54,7 +54,7 @@ name: /Fl
54 name: /DP 54 name: /DP
55 dictionary: << /Columns 30 /Predictor 15 >> 55 dictionary: << /Columns 30 /Predictor 15 >>
56 operator: ID 56 operator: ID
57 -inline-image: 789cedd1a11100300800b1b2ffd06503148283bc8dfcf8af2a306ee352eff2e06318638c31c63b3801627b620a 57 +inline-image: 789cedd1a11100300800b1b2ffd06503148283bc8dfcf8af2a306ee352eff2e06318638c31c63b3801627b620a0a
58 operator: EI 58 operator: EI
59 operator: Q 59 operator: Q
60 operator: q 60 operator: q
@@ -79,7 +79,7 @@ name: /Fl @@ -79,7 +79,7 @@ name: /Fl
79 name: /DP 79 name: /DP
80 dictionary: << /Columns 32 /Predictor 15 >> 80 dictionary: << /Columns 32 /Predictor 15 >>
81 operator: ID 81 operator: ID
82 -inline-image: 789c63fccf801f308e2a185530aa60882a20203faa605401890a0643aa1e5530aa6054010d140000bdd03c13 82 +inline-image: 789c63fccf801f308e2a185530aa60882a20203faa605401890a0643aa1e5530aa6054010d140000bdd03c130a
83 operator: EI 83 operator: EI
84 operator: Q 84 operator: Q
85 -EOF- 85 -EOF-
qpdf/qtest/qpdf/tokenize-content-streams.out
@@ -38,7 +38,7 @@ name: /Fl @@ -38,7 +38,7 @@ name: /Fl
38 name: /DP 38 name: /DP
39 dictionary: << /Columns 1 /Predictor 15 >> 39 dictionary: << /Columns 1 /Predictor 15 >>
40 operator: ID 40 operator: ID
41 -inline-image: 789c63fc0f0001030101 41 +inline-image: 789c63fc0f00010301010a
42 operator: EI 42 operator: EI
43 operator: Q 43 operator: Q
44 operator: q 44 operator: q
@@ -63,7 +63,7 @@ name: /Fl @@ -63,7 +63,7 @@ name: /Fl
63 name: /DP 63 name: /DP
64 dictionary: << /Columns 30 /Predictor 15 >> 64 dictionary: << /Columns 30 /Predictor 15 >>
65 operator: ID 65 operator: ID
66 -inline-image: 789cedd1a11100300800b1b2ffd06503148283bc8dfcf8af2a306ee352eff2e06318638c31c63b3801627b620a 66 +inline-image: 789cedd1a11100300800b1b2ffd06503148283bc8dfcf8af2a306ee352eff2e06318638c31c63b3801627b620a0a
67 operator: EI 67 operator: EI
68 operator: Q 68 operator: Q
69 operator: q 69 operator: q
@@ -88,7 +88,7 @@ name: /Fl @@ -88,7 +88,7 @@ name: /Fl
88 name: /DP 88 name: /DP
89 dictionary: << /Columns 32 /Predictor 15 >> 89 dictionary: << /Columns 32 /Predictor 15 >>
90 operator: ID 90 operator: ID
91 -inline-image: 789c63fccf801f308e2a185530aa60882a20203faa605401890a0643aa1e5530aa6054010d140000bdd03c13 91 +inline-image: 789c63fccf801f308e2a185530aa60882a20203faa605401890a0643aa1e5530aa6054010d140000bdd03c130a
92 operator: EI 92 operator: EI
93 operator: Q 93 operator: Q
94 -EOF- 94 -EOF-
qpdf/qtest/qpdf/tokens-maxlen.out
@@ -599,7 +599,8 @@ skipping to endstream @@ -599,7 +599,8 @@ skipping to endstream
599 103: dict_close: >> 599 103: dict_close: >>
600 105: space: \x0a 600 105: space: \x0a
601 106: word: ID 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 354: space: \x0a 604 354: space: \x0a
604 355: word: BT 605 355: word: BT
605 357: space: \x0a 606 357: space: \x0a
@@ -810,7 +811,8 @@ EI not found; resuming normal scanning @@ -810,7 +811,8 @@ EI not found; resuming normal scanning
810 67: dict_close: >> 811 67: dict_close: >>
811 69: space: \x0a 812 69: space: \x0a
812 70: word: ID 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 318: eof 816 318: eof
815 --- END PAGE 7 --- 817 --- END PAGE 7 ---
816 --- BEGIN PAGE 8 --- 818 --- BEGIN PAGE 8 ---
qpdf/qtest/qpdf/tokens-no-ignorable.out
@@ -291,7 +291,8 @@ skipping to endstream @@ -291,7 +291,8 @@ skipping to endstream
291 101: integer: 66 291 101: integer: 66
292 103: dict_close: >> 292 103: dict_close: >>
293 106: word: ID 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 355: word: BT 296 355: word: BT
296 360: name: /F1 297 360: name: /F1
297 364: integer: 24 298 364: integer: 24
@@ -414,7 +415,8 @@ EI not found; resuming normal scanning @@ -414,7 +415,8 @@ EI not found; resuming normal scanning
414 65: integer: 66 415 65: integer: 66
415 67: dict_close: >> 416 67: dict_close: >>
416 70: word: ID 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 318: eof 420 318: eof
419 --- END PAGE 7 --- 421 --- END PAGE 7 ---
420 --- BEGIN PAGE 8 --- 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,7 +599,8 @@ skipping to endstream
599 103: dict_close: >> 599 103: dict_close: >>
600 105: space: \x0a 600 105: space: \x0a
601 106: word: ID 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 354: space: \x0a 604 354: space: \x0a
604 355: word: BT 605 355: word: BT
605 357: space: \x0a 606 357: space: \x0a
@@ -810,7 +811,8 @@ EI not found; resuming normal scanning @@ -810,7 +811,8 @@ EI not found; resuming normal scanning
810 67: dict_close: >> 811 67: dict_close: >>
811 69: space: \x0a 812 69: space: \x0a
812 70: word: ID 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 318: eof 816 318: eof
815 --- END PAGE 7 --- 817 --- END PAGE 7 ---
816 --- BEGIN PAGE 8 --- 818 --- BEGIN PAGE 8 ---