diff options
88 files changed, 395 insertions, 2173 deletions
diff --git a/qpdf/qtest/qpdf.test b/qpdf/qtest/qpdf.test index d0cba589..edd9f1ec 100644 --- a/qpdf/qtest/qpdf.test +++ b/qpdf/qtest/qpdf.test @@ -543,9 +543,9 @@ $td->runtest("check file", {$td->FILE => "a.pdf"}, {$td->FILE => "gen1.qdf"}); -# This file, from a user, is missing /ID in its trailer even though it -# is encrypted and also has a space instead of a newline after its -# xref keyword. xpdf can open it, but Adobe reader can't. +# A user provided a file that was missing /ID in its trailer even +# though it is encrypted and also has a space instead of a newline +# after its xref keyword. This file has those same properties. $td->runtest("check broken file", {$td->COMMAND => "qpdf --check invalid-id-xref.pdf"}, {$td->FILE => "invalid-id-xref.out", $td->EXIT_STATUS => 3}, @@ -995,7 +995,7 @@ $td->runtest("C API: no recovery", show_ntests(); # ---------- $td->notify("--- Recovery Tests ---"); -$n_tests += @badfiles + 8; +$n_tests += @badfiles + 6; # Recovery tests. These are mostly after-the-fact -- when recovery # was implemented, some degree of recovery was possible on many of the @@ -1021,18 +1021,6 @@ for (my $i = 1; $i <= scalar(@badfiles); ++$i) $td->NORMALIZE_NEWLINES); } -# This heifer file was a real file that contained errors that Acrobat -# Reader can recover. We can recover it too. -$td->runtest("recover heifer file", - {$td->COMMAND => "qpdf --static-id --no-original-object-ids" . - " -qdf heifer.pdf a.pdf"}, - {$td->FILE => "heifer.out", - $td->EXIT_STATUS => 3}, - $td->NORMALIZE_NEWLINES); -$td->runtest("check output", - {$td->FILE => "a.pdf"}, - {$td->FILE => "heifer.qdf"}); - # See if we can recover the cross reference table on a file that has # been appended to even when it deletes and reuses objects. We can't # completely do it in the case of deleted objects, but we can get @@ -1094,6 +1082,7 @@ my @goodfiles = ("implicit null", # 1 "hybrid xref old mode", # 18 "xref with prev", # 19 "lots of compressible objects", # 20 + "pound in name", # 21 ); $n_tests += (3 * @goodfiles) + 6; @@ -1275,31 +1264,10 @@ for (my $n = 16; $n <= 19; ++$n) show_ntests(); # ---------- $td->notify("--- Specific File Tests ---"); -$n_tests += 5; -$n_compare_pdfs += 1; +$n_tests += 2; # Special PDF files that caused problems at some point -# This file is a PDF 1.1 file with /# as a name and with -# inconsistencies in its free table. It also has LZW streams that -# happen to test boundary conditions in the LZW decoder. -$td->runtest("old and complex", - {$td->COMMAND => "qpdf --check old-and-complex.pdf"}, - {$td->FILE => "old-and-complex-check.out", - $td->EXIT_STATUS => 0}, - $td->NORMALIZE_NEWLINES); -$td->runtest("old and complex (C API)", - {$td->COMMAND => "qpdf-ctest 1 old-and-complex.pdf '' ''"}, - {$td->FILE => "old-and-complex-c-check.out", - $td->EXIT_STATUS => 0}, - $td->NORMALIZE_NEWLINES); - -$td->runtest("convert to qdf", - {$td->COMMAND => "qpdf --qdf old-and-complex.pdf a.qdf"}, - {$td->STRING => "", $td->EXIT_STATUS => 0}); - -compare_pdfs("old-and-complex.pdf", "a.qdf"); - $td->runtest("damaged stream", {$td->COMMAND => "qpdf --check damaged-stream.pdf"}, {$td->FILE => "damaged-stream.out", $td->EXIT_STATUS => 3}, @@ -1529,8 +1497,8 @@ $td->runtest("check linearized and modified", $td->EXIT_STATUS => 0}, $td->NORMALIZE_NEWLINES); $td->runtest("check multiple modifications", - {$td->COMMAND => "qpdf --check multiple-mods.pdf"}, - {$td->FILE => "multiple-mods-check.out", + {$td->COMMAND => "qpdf --check delete-and-reuse.pdf"}, + {$td->FILE => "delete-and-reuse-check.out", $td->EXIT_STATUS => 0}, $td->NORMALIZE_NEWLINES); @@ -1666,16 +1634,16 @@ my @encrypted_files = $n_tests += 5 + (2 * (@encrypted_files)) + (6 * (@encrypted_files - 6)) + 9; $td->runtest("encrypted file", - {$td->COMMAND => "test_driver 2 U25A0.pdf"}, + {$td->COMMAND => "test_driver 2 encrypted-with-images.pdf"}, {$td->FILE => "encrypted1.out", $td->EXIT_STATUS => 0}, $td->NORMALIZE_NEWLINES); $td->runtest("preserve encryption", - {$td->COMMAND => "qpdf U25A0.pdf U25A0.enc"}, + {$td->COMMAND => "qpdf encrypted-with-images.pdf encrypted-with-images.enc"}, {$td->STRING => "", $td->EXIT_STATUS => 0}); $td->runtest("recheck encrypted file", - {$td->COMMAND => "test_driver 2 U25A0.enc"}, + {$td->COMMAND => "test_driver 2 encrypted-with-images.enc"}, {$td->FILE => "encrypted1.out", $td->EXIT_STATUS => 0}, $td->NORMALIZE_NEWLINES); @@ -1882,13 +1850,13 @@ foreach my $d (@cenc) # linearized and/or encrypted as desired. $td->runtest("linearize encrypted file", - {$td->COMMAND => "qpdf --linearize U25A0.pdf a.pdf"}, + {$td->COMMAND => "qpdf --linearize encrypted-with-images.pdf a.pdf"}, {$td->STRING => "", $td->EXIT_STATUS => 0}); $td->runtest("check encryption", {$td->COMMAND => "qpdf --show-encryption a.pdf", $td->FILTER => "grep -v allowed"}, - {$td->STRING => "R = 2\nP = -60\nUser password = \n", + {$td->STRING => "R = 3\nP = -4\nUser password = \n", $td->EXIT_STATUS => 0}, $td->NORMALIZE_NEWLINES); $td->runtest("check linearization", @@ -2128,7 +2096,7 @@ show_ntests(); $td->notify("--- Content Preservation Tests ---"); # $n_tests incremented below -my @files = ("U25A0.pdf", # encrypted +my @files = ("encrypted-with-images.pdf", # encrypted "inline-images.pdf", "lin-special.pdf", "object-stream.pdf", @@ -2213,13 +2181,12 @@ foreach my $file (@files) } } -# inline-images-cr.pdf is xbkm938-dies.pdf from PDF collection -$td->runtest("convert inline-images-cr to qdf", +$td->runtest("convert inline-images to qdf", {$td->COMMAND => "qpdf --static-id --no-original-object-ids" . - " --qdf inline-images-cr.pdf a.pdf"}, + " --qdf inline-images.pdf a.pdf"}, {$td->STRING => "", $td->EXIT_STATUS => 0}); -compare_pdfs("inline-images-cr.pdf", "a.pdf"); +compare_pdfs("inline-images.pdf", "a.pdf"); show_ntests(); # ---------- diff --git a/qpdf/qtest/qpdf/U25A0.12-ogen.c-check b/qpdf/qtest/qpdf/U25A0.12-ogen.c-check deleted file mode 100644 index 11d6d63d..00000000 --- a/qpdf/qtest/qpdf/U25A0.12-ogen.c-check +++ /dev/null @@ -1,13 +0,0 @@ -version: 1.5 -linearized: 0 -encrypted: 1 -user password: -extract for accessibility: 0 -extract for any purpose: 0 -print low resolution: 1 -print high resolution: 1 -modify document assembly: 0 -modify forms: 0 -modify annotations: 0 -modify other: 0 -modify anything: 0 diff --git a/qpdf/qtest/qpdf/U25A0.12-ogen.check b/qpdf/qtest/qpdf/U25A0.12-ogen.check deleted file mode 100644 index 4e945d58..00000000 --- a/qpdf/qtest/qpdf/U25A0.12-ogen.check +++ /dev/null @@ -1,17 +0,0 @@ -checking a.pdf -PDF Version: 1.5 -R = 2 -P = -60 -User password = -extract for accessibility: not allowed -extract for any purpose: not allowed -print low resolution: allowed -print high resolution: allowed -modify document assembly: not allowed -modify forms: not allowed -modify annotations: not allowed -modify other: not allowed -modify anything: not allowed -File is not linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.12.c-check b/qpdf/qtest/qpdf/U25A0.12.c-check deleted file mode 100644 index b37fa759..00000000 --- a/qpdf/qtest/qpdf/U25A0.12.c-check +++ /dev/null @@ -1,13 +0,0 @@ -version: 1.3 -linearized: 0 -encrypted: 1 -user password: -extract for accessibility: 0 -extract for any purpose: 0 -print low resolution: 1 -print high resolution: 1 -modify document assembly: 0 -modify forms: 0 -modify annotations: 0 -modify other: 0 -modify anything: 0 diff --git a/qpdf/qtest/qpdf/U25A0.12.check b/qpdf/qtest/qpdf/U25A0.12.check deleted file mode 100644 index 581b48b2..00000000 --- a/qpdf/qtest/qpdf/U25A0.12.check +++ /dev/null @@ -1,17 +0,0 @@ -checking a.pdf -PDF Version: 1.3 -R = 2 -P = -60 -User password = -extract for accessibility: not allowed -extract for any purpose: not allowed -print low resolution: allowed -print high resolution: allowed -modify document assembly: not allowed -modify forms: not allowed -modify annotations: not allowed -modify other: not allowed -modify anything: not allowed -File is not linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.5.c-check b/qpdf/qtest/qpdf/U25A0.5.c-check deleted file mode 100644 index 757cc85d..00000000 --- a/qpdf/qtest/qpdf/U25A0.5.c-check +++ /dev/null @@ -1,3 +0,0 @@ -version: 1.3 -linearized: 0 -encrypted: 0 diff --git a/qpdf/qtest/qpdf/U25A0.5.check b/qpdf/qtest/qpdf/U25A0.5.check deleted file mode 100644 index 5da27b2a..00000000 --- a/qpdf/qtest/qpdf/U25A0.5.check +++ /dev/null @@ -1,6 +0,0 @@ -checking a.pdf -PDF Version: 1.3 -File is not encrypted -File is not linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.6.c-check b/qpdf/qtest/qpdf/U25A0.6.c-check deleted file mode 100644 index 757cc85d..00000000 --- a/qpdf/qtest/qpdf/U25A0.6.c-check +++ /dev/null @@ -1,3 +0,0 @@ -version: 1.3 -linearized: 0 -encrypted: 0 diff --git a/qpdf/qtest/qpdf/U25A0.6.check b/qpdf/qtest/qpdf/U25A0.6.check deleted file mode 100644 index 5da27b2a..00000000 --- a/qpdf/qtest/qpdf/U25A0.6.check +++ /dev/null @@ -1,6 +0,0 @@ -checking a.pdf -PDF Version: 1.3 -File is not encrypted -File is not linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.7.c-check b/qpdf/qtest/qpdf/U25A0.7.c-check deleted file mode 100644 index 757cc85d..00000000 --- a/qpdf/qtest/qpdf/U25A0.7.c-check +++ /dev/null @@ -1,3 +0,0 @@ -version: 1.3 -linearized: 0 -encrypted: 0 diff --git a/qpdf/qtest/qpdf/U25A0.7.check b/qpdf/qtest/qpdf/U25A0.7.check deleted file mode 100644 index 5da27b2a..00000000 --- a/qpdf/qtest/qpdf/U25A0.7.check +++ /dev/null @@ -1,6 +0,0 @@ -checking a.pdf -PDF Version: 1.3 -File is not encrypted -File is not linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.8.c-check b/qpdf/qtest/qpdf/U25A0.8.c-check deleted file mode 100644 index 757cc85d..00000000 --- a/qpdf/qtest/qpdf/U25A0.8.c-check +++ /dev/null @@ -1,3 +0,0 @@ -version: 1.3 -linearized: 0 -encrypted: 0 diff --git a/qpdf/qtest/qpdf/U25A0.8.check b/qpdf/qtest/qpdf/U25A0.8.check deleted file mode 100644 index 5da27b2a..00000000 --- a/qpdf/qtest/qpdf/U25A0.8.check +++ /dev/null @@ -1,6 +0,0 @@ -checking a.pdf -PDF Version: 1.3 -File is not encrypted -File is not linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.9-ogen.c-check b/qpdf/qtest/qpdf/U25A0.9-ogen.c-check deleted file mode 100644 index cc892af7..00000000 --- a/qpdf/qtest/qpdf/U25A0.9-ogen.c-check +++ /dev/null @@ -1,13 +0,0 @@ -version: 1.5 -linearized: 1 -encrypted: 1 -user password: -extract for accessibility: 0 -extract for any purpose: 0 -print low resolution: 1 -print high resolution: 1 -modify document assembly: 0 -modify forms: 0 -modify annotations: 0 -modify other: 0 -modify anything: 0 diff --git a/qpdf/qtest/qpdf/U25A0.9-ogen.check b/qpdf/qtest/qpdf/U25A0.9-ogen.check deleted file mode 100644 index 1d11997c..00000000 --- a/qpdf/qtest/qpdf/U25A0.9-ogen.check +++ /dev/null @@ -1,17 +0,0 @@ -checking a.pdf -PDF Version: 1.5 -R = 2 -P = -60 -User password = -extract for accessibility: not allowed -extract for any purpose: not allowed -print low resolution: allowed -print high resolution: allowed -modify document assembly: not allowed -modify forms: not allowed -modify annotations: not allowed -modify other: not allowed -modify anything: not allowed -File is linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.9.c-check b/qpdf/qtest/qpdf/U25A0.9.c-check deleted file mode 100644 index 18ee32d3..00000000 --- a/qpdf/qtest/qpdf/U25A0.9.c-check +++ /dev/null @@ -1,13 +0,0 @@ -version: 1.3 -linearized: 1 -encrypted: 1 -user password: -extract for accessibility: 0 -extract for any purpose: 0 -print low resolution: 1 -print high resolution: 1 -modify document assembly: 0 -modify forms: 0 -modify annotations: 0 -modify other: 0 -modify anything: 0 diff --git a/qpdf/qtest/qpdf/U25A0.9.check b/qpdf/qtest/qpdf/U25A0.9.check deleted file mode 100644 index e543256a..00000000 --- a/qpdf/qtest/qpdf/U25A0.9.check +++ /dev/null @@ -1,17 +0,0 @@ -checking a.pdf -PDF Version: 1.3 -R = 2 -P = -60 -User password = -extract for accessibility: not allowed -extract for any purpose: not allowed -print low resolution: allowed -print high resolution: allowed -modify document assembly: not allowed -modify forms: not allowed -modify annotations: not allowed -modify other: not allowed -modify anything: not allowed -File is linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.pdf b/qpdf/qtest/qpdf/U25A0.pdf Binary files differdeleted file mode 100644 index f8b779d4..00000000 --- a/qpdf/qtest/qpdf/U25A0.pdf +++ /dev/null diff --git a/qpdf/qtest/qpdf/delete-and-reuse-check.out b/qpdf/qtest/qpdf/delete-and-reuse-check.out new file mode 100644 index 00000000..f9a83f09 --- /dev/null +++ b/qpdf/qtest/qpdf/delete-and-reuse-check.out @@ -0,0 +1,6 @@ +checking delete-and-reuse.pdf +PDF Version: 1.3 +File is not encrypted +File is not linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.1-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.1-ogen.c-check index 7fc743a9..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.1-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.1-ogen.c-check diff --git a/qpdf/qtest/qpdf/U25A0.1-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.1-ogen.check index f95a8ecc..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.1-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.1-ogen.check diff --git a/qpdf/qtest/qpdf/U25A0.2-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.1.c-check index 7fc743a9..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.2-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.1.c-check diff --git a/qpdf/qtest/qpdf/U25A0.2-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.1.check index f95a8ecc..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.2-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.1.check diff --git a/qpdf/qtest/qpdf/U25A0.10-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.10-ogen.c-check index 963cdba4..963cdba4 100644 --- a/qpdf/qtest/qpdf/U25A0.10-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.10-ogen.c-check diff --git a/qpdf/qtest/qpdf/U25A0.10-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.10-ogen.check index 331cd70e..331cd70e 100644 --- a/qpdf/qtest/qpdf/U25A0.10-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.10-ogen.check diff --git a/qpdf/qtest/qpdf/U25A0.10.c-check b/qpdf/qtest/qpdf/encrypted-with-images.10.c-check index 628b5fac..963cdba4 100644 --- a/qpdf/qtest/qpdf/U25A0.10.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.10.c-check @@ -1,4 +1,4 @@ -version: 1.4 +version: 1.5 linearized: 0 encrypted: 1 user password: diff --git a/qpdf/qtest/qpdf/U25A0.10.check b/qpdf/qtest/qpdf/encrypted-with-images.10.check index 921e171a..331cd70e 100644 --- a/qpdf/qtest/qpdf/U25A0.10.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.10.check @@ -1,5 +1,5 @@ checking a.pdf -PDF Version: 1.4 +PDF Version: 1.5 R = 3 P = -4 User password = diff --git a/qpdf/qtest/qpdf/U25A0.11-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.11-ogen.c-check index ef82b7f0..ef82b7f0 100644 --- a/qpdf/qtest/qpdf/U25A0.11-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.11-ogen.c-check diff --git a/qpdf/qtest/qpdf/U25A0.11-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.11-ogen.check index aae0b3a5..aae0b3a5 100644 --- a/qpdf/qtest/qpdf/U25A0.11-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.11-ogen.check diff --git a/qpdf/qtest/qpdf/U25A0.11.c-check b/qpdf/qtest/qpdf/encrypted-with-images.11.c-check index a528204e..ef82b7f0 100644 --- a/qpdf/qtest/qpdf/U25A0.11.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.11.c-check @@ -1,4 +1,4 @@ -version: 1.4 +version: 1.5 linearized: 1 encrypted: 1 user password: diff --git a/qpdf/qtest/qpdf/U25A0.11.check b/qpdf/qtest/qpdf/encrypted-with-images.11.check index 74a360c1..aae0b3a5 100644 --- a/qpdf/qtest/qpdf/U25A0.11.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.11.check @@ -1,5 +1,5 @@ checking a.pdf -PDF Version: 1.4 +PDF Version: 1.5 R = 3 P = -4 User password = diff --git a/qpdf/qtest/qpdf/encrypted-with-images.12-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.12-ogen.c-check new file mode 100644 index 00000000..963cdba4 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.12-ogen.c-check @@ -0,0 +1,13 @@ +version: 1.5 +linearized: 0 +encrypted: 1 +user password: +extract for accessibility: 1 +extract for any purpose: 1 +print low resolution: 1 +print high resolution: 1 +modify document assembly: 1 +modify forms: 1 +modify annotations: 1 +modify other: 1 +modify anything: 1 diff --git a/qpdf/qtest/qpdf/encrypted-with-images.12-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.12-ogen.check new file mode 100644 index 00000000..331cd70e --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.12-ogen.check @@ -0,0 +1,17 @@ +checking a.pdf +PDF Version: 1.5 +R = 3 +P = -4 +User password = +extract for accessibility: allowed +extract for any purpose: allowed +print low resolution: allowed +print high resolution: allowed +modify document assembly: allowed +modify forms: allowed +modify annotations: allowed +modify other: allowed +modify anything: allowed +File is not linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/encrypted-with-images.12.c-check b/qpdf/qtest/qpdf/encrypted-with-images.12.c-check new file mode 100644 index 00000000..963cdba4 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.12.c-check @@ -0,0 +1,13 @@ +version: 1.5 +linearized: 0 +encrypted: 1 +user password: +extract for accessibility: 1 +extract for any purpose: 1 +print low resolution: 1 +print high resolution: 1 +modify document assembly: 1 +modify forms: 1 +modify annotations: 1 +modify other: 1 +modify anything: 1 diff --git a/qpdf/qtest/qpdf/encrypted-with-images.12.check b/qpdf/qtest/qpdf/encrypted-with-images.12.check new file mode 100644 index 00000000..331cd70e --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.12.check @@ -0,0 +1,17 @@ +checking a.pdf +PDF Version: 1.5 +R = 3 +P = -4 +User password = +extract for accessibility: allowed +extract for any purpose: allowed +print low resolution: allowed +print high resolution: allowed +modify document assembly: allowed +modify forms: allowed +modify annotations: allowed +modify other: allowed +modify anything: allowed +File is not linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/U25A0.3-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.2-ogen.c-check index 7fc743a9..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.3-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.2-ogen.c-check diff --git a/qpdf/qtest/qpdf/U25A0.3-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.2-ogen.check index f95a8ecc..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.3-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.2-ogen.check diff --git a/qpdf/qtest/qpdf/U25A0.4-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.2.c-check index 7fc743a9..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.4-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.2.c-check diff --git a/qpdf/qtest/qpdf/U25A0.4-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.2.check index f95a8ecc..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.4-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.2.check diff --git a/qpdf/qtest/qpdf/U25A0.5-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.3-ogen.c-check index 7fc743a9..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.5-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.3-ogen.c-check diff --git a/qpdf/qtest/qpdf/U25A0.5-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.3-ogen.check index f95a8ecc..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.5-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.3-ogen.check diff --git a/qpdf/qtest/qpdf/U25A0.6-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.3.c-check index 7fc743a9..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.6-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.3.c-check diff --git a/qpdf/qtest/qpdf/U25A0.6-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.3.check index f95a8ecc..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.6-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.3.check diff --git a/qpdf/qtest/qpdf/U25A0.7-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.4-ogen.c-check index 7fc743a9..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.7-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.4-ogen.c-check diff --git a/qpdf/qtest/qpdf/U25A0.7-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.4-ogen.check index f95a8ecc..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.7-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.4-ogen.check diff --git a/qpdf/qtest/qpdf/U25A0.8-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.4.c-check index 7fc743a9..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.8-ogen.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.4.c-check diff --git a/qpdf/qtest/qpdf/U25A0.8-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.4.check index f95a8ecc..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.8-ogen.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.4.check diff --git a/qpdf/qtest/qpdf/U25A0.1.c-check b/qpdf/qtest/qpdf/encrypted-with-images.5-ogen.c-check index 757cc85d..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.1.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.5-ogen.c-check @@ -1,3 +1,3 @@ -version: 1.3 +version: 1.5 linearized: 0 encrypted: 0 diff --git a/qpdf/qtest/qpdf/U25A0.2.check b/qpdf/qtest/qpdf/encrypted-with-images.5-ogen.check index 5da27b2a..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.2.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.5-ogen.check @@ -1,5 +1,5 @@ checking a.pdf -PDF Version: 1.3 +PDF Version: 1.5 File is not encrypted File is not linearized No syntax or stream encoding errors found; the file may still contain diff --git a/qpdf/qtest/qpdf/U25A0.2.c-check b/qpdf/qtest/qpdf/encrypted-with-images.5.c-check index 757cc85d..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.2.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.5.c-check @@ -1,3 +1,3 @@ -version: 1.3 +version: 1.5 linearized: 0 encrypted: 0 diff --git a/qpdf/qtest/qpdf/U25A0.1.check b/qpdf/qtest/qpdf/encrypted-with-images.5.check index 5da27b2a..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.1.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.5.check @@ -1,5 +1,5 @@ checking a.pdf -PDF Version: 1.3 +PDF Version: 1.5 File is not encrypted File is not linearized No syntax or stream encoding errors found; the file may still contain diff --git a/qpdf/qtest/qpdf/U25A0.3.c-check b/qpdf/qtest/qpdf/encrypted-with-images.6-ogen.c-check index 757cc85d..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.3.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.6-ogen.c-check @@ -1,3 +1,3 @@ -version: 1.3 +version: 1.5 linearized: 0 encrypted: 0 diff --git a/qpdf/qtest/qpdf/U25A0.3.check b/qpdf/qtest/qpdf/encrypted-with-images.6-ogen.check index 5da27b2a..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.3.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.6-ogen.check @@ -1,5 +1,5 @@ checking a.pdf -PDF Version: 1.3 +PDF Version: 1.5 File is not encrypted File is not linearized No syntax or stream encoding errors found; the file may still contain diff --git a/qpdf/qtest/qpdf/U25A0.4.c-check b/qpdf/qtest/qpdf/encrypted-with-images.6.c-check index 757cc85d..7fc743a9 100644 --- a/qpdf/qtest/qpdf/U25A0.4.c-check +++ b/qpdf/qtest/qpdf/encrypted-with-images.6.c-check @@ -1,3 +1,3 @@ -version: 1.3 +version: 1.5 linearized: 0 encrypted: 0 diff --git a/qpdf/qtest/qpdf/U25A0.4.check b/qpdf/qtest/qpdf/encrypted-with-images.6.check index 5da27b2a..f95a8ecc 100644 --- a/qpdf/qtest/qpdf/U25A0.4.check +++ b/qpdf/qtest/qpdf/encrypted-with-images.6.check @@ -1,5 +1,5 @@ checking a.pdf -PDF Version: 1.3 +PDF Version: 1.5 File is not encrypted File is not linearized No syntax or stream encoding errors found; the file may still contain diff --git a/qpdf/qtest/qpdf/encrypted-with-images.7-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.7-ogen.c-check new file mode 100644 index 00000000..7fc743a9 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.7-ogen.c-check @@ -0,0 +1,3 @@ +version: 1.5 +linearized: 0 +encrypted: 0 diff --git a/qpdf/qtest/qpdf/encrypted-with-images.7-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.7-ogen.check new file mode 100644 index 00000000..f95a8ecc --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.7-ogen.check @@ -0,0 +1,6 @@ +checking a.pdf +PDF Version: 1.5 +File is not encrypted +File is not linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/encrypted-with-images.7.c-check b/qpdf/qtest/qpdf/encrypted-with-images.7.c-check new file mode 100644 index 00000000..7fc743a9 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.7.c-check @@ -0,0 +1,3 @@ +version: 1.5 +linearized: 0 +encrypted: 0 diff --git a/qpdf/qtest/qpdf/encrypted-with-images.7.check b/qpdf/qtest/qpdf/encrypted-with-images.7.check new file mode 100644 index 00000000..f95a8ecc --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.7.check @@ -0,0 +1,6 @@ +checking a.pdf +PDF Version: 1.5 +File is not encrypted +File is not linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/encrypted-with-images.8-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.8-ogen.c-check new file mode 100644 index 00000000..7fc743a9 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.8-ogen.c-check @@ -0,0 +1,3 @@ +version: 1.5 +linearized: 0 +encrypted: 0 diff --git a/qpdf/qtest/qpdf/encrypted-with-images.8-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.8-ogen.check new file mode 100644 index 00000000..f95a8ecc --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.8-ogen.check @@ -0,0 +1,6 @@ +checking a.pdf +PDF Version: 1.5 +File is not encrypted +File is not linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/encrypted-with-images.8.c-check b/qpdf/qtest/qpdf/encrypted-with-images.8.c-check new file mode 100644 index 00000000..7fc743a9 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.8.c-check @@ -0,0 +1,3 @@ +version: 1.5 +linearized: 0 +encrypted: 0 diff --git a/qpdf/qtest/qpdf/encrypted-with-images.8.check b/qpdf/qtest/qpdf/encrypted-with-images.8.check new file mode 100644 index 00000000..f95a8ecc --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.8.check @@ -0,0 +1,6 @@ +checking a.pdf +PDF Version: 1.5 +File is not encrypted +File is not linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/encrypted-with-images.9-ogen.c-check b/qpdf/qtest/qpdf/encrypted-with-images.9-ogen.c-check new file mode 100644 index 00000000..ef82b7f0 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.9-ogen.c-check @@ -0,0 +1,13 @@ +version: 1.5 +linearized: 1 +encrypted: 1 +user password: +extract for accessibility: 1 +extract for any purpose: 1 +print low resolution: 1 +print high resolution: 1 +modify document assembly: 1 +modify forms: 1 +modify annotations: 1 +modify other: 1 +modify anything: 1 diff --git a/qpdf/qtest/qpdf/encrypted-with-images.9-ogen.check b/qpdf/qtest/qpdf/encrypted-with-images.9-ogen.check new file mode 100644 index 00000000..aae0b3a5 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.9-ogen.check @@ -0,0 +1,17 @@ +checking a.pdf +PDF Version: 1.5 +R = 3 +P = -4 +User password = +extract for accessibility: allowed +extract for any purpose: allowed +print low resolution: allowed +print high resolution: allowed +modify document assembly: allowed +modify forms: allowed +modify annotations: allowed +modify other: allowed +modify anything: allowed +File is linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/encrypted-with-images.9.c-check b/qpdf/qtest/qpdf/encrypted-with-images.9.c-check new file mode 100644 index 00000000..ef82b7f0 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.9.c-check @@ -0,0 +1,13 @@ +version: 1.5 +linearized: 1 +encrypted: 1 +user password: +extract for accessibility: 1 +extract for any purpose: 1 +print low resolution: 1 +print high resolution: 1 +modify document assembly: 1 +modify forms: 1 +modify annotations: 1 +modify other: 1 +modify anything: 1 diff --git a/qpdf/qtest/qpdf/encrypted-with-images.9.check b/qpdf/qtest/qpdf/encrypted-with-images.9.check new file mode 100644 index 00000000..aae0b3a5 --- /dev/null +++ b/qpdf/qtest/qpdf/encrypted-with-images.9.check @@ -0,0 +1,17 @@ +checking a.pdf +PDF Version: 1.5 +R = 3 +P = -4 +User password = +extract for accessibility: allowed +extract for any purpose: allowed +print low resolution: allowed +print high resolution: allowed +modify document assembly: allowed +modify forms: allowed +modify annotations: allowed +modify other: allowed +modify anything: allowed +File is linearized +No syntax or stream encoding errors found; the file may still contain +errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/encrypted1.out b/qpdf/qtest/qpdf/encrypted1.out index 99102b9d..3dd1efd0 100644 --- a/qpdf/qtest/qpdf/encrypted1.out +++ b/qpdf/qtest/qpdf/encrypted1.out @@ -1,578 +1,9 @@ -D:20000914005716 -Acrobat Distiller 4.05 for Windows -<68735ba82e3c37b5b8228510ba7e3ff6a57adff9901483de2357988c0a42aa48> -<f32ad8fda2ac3a46178937370a6f76071920499dad850a95f177b9089b6e20ca> -1 g -/GS1 gs -1 i -178.226 60.781 344.491 -11.279 re -f -BT -/F4 1 Tf -9.999 0 0 9.999 178.2259 51.9016 Tm -0 g -0.003 Tc -0 Tw -[(T)7(h)-1(e)-249(U)5(ni)5(code)-249(St)5(andar)8(d)-253(3)-1(.0,)-251(C)10(opyr)8(i)5(ght)-247()-221(1991-2000,)-251(U)5(n)-1(i)5(c)3(ode,)-251(I)0(nc.)-251(A)2(l)5(l)-247(r)8(i)5(ght)5(s)-244(r)8(es)8(er)8(ved)]TJ -ET -1 g -72.035 60.781 15.119 -11.279 re -f -BT -9.999 0 0 9.999 72.0347 51.9016 Tm -0 g -0.004 Tc -(542)Tj -ET -1 g -490.8 769.802 31.197 -15.959 re -f -BT -/F5 1 Tf -13.9985 0 0 13.9985 490.7998 756.9629 Tm -0 g -0.0057 Tc -[(25F)8.1(F)]TJ -ET -1 g -242.541 769.802 108.831 -15.959 re -f -BT -13.9985 0 0 13.9985 242.5405 756.9629 Tm -0 g -0.0027 Tc -[(Geom)12.8(etric)-247.6(Shapes)]TJ -ET -1 g -72.035 769.802 31.317 -15.959 re -f -BT -13.9985 0 0 13.9985 72.0347 756.9629 Tm -0 g -0.0057 Tc -[(25A)7.7(0)]TJ -ET -0 G -2 J 1 j 1.49 w 10 M []0 d -202.104 727.685 m -202.104 79.259 l -391.928 727.685 m -391.928 79.259 l -202.104 712.807 m -391.928 712.807 l -202.104 79.259 m -391.928 79.259 l -S -BT -/F6 1 Tf -9.999 0 0 9.999 209.0633 719.286 Tm --0.004 Tc -[(25A)-1389(25B)-1377(25C)-1346(25D)-1370(25E)-1413(25F)]TJ -ET -1 g -360.371 396.033 31.557 -39.597 re -f -/Cs9 cs 0 /P1 scn -360.371 396.033 31.557 -39.597 re -f -1 g -360.371 356.436 31.557 -39.597 re -f -/Cs9 cs 0 /P1 scn -360.371 356.436 31.557 -39.597 re -f -1 g -360.371 316.84 31.557 -39.597 re -f -/Cs9 cs 0 /P1 scn -360.371 316.84 31.557 -39.597 re -f -1 g -360.371 277.243 31.557 -39.597 re -f -/Cs9 cs 0 /P1 scn -360.371 277.243 31.557 -39.597 re -f -1 g -360.371 237.646 31.557 -39.597 re -f -/Cs9 cs 0 /P1 scn -360.371 237.646 31.557 -39.597 re -f -1 g -360.371 198.049 31.557 -39.597 re -f -/Cs9 cs 0 /P1 scn -360.371 198.049 31.557 -39.597 re -f -1 g -360.371 158.453 31.557 -39.597 re -f -/Cs9 cs 0 /P1 scn -360.371 158.453 31.557 -39.597 re -f -1 g -360.371 118.856 31.557 -39.597 re -f -/Cs9 cs 0 /P1 scn -360.371 118.856 31.557 -39.597 re -f -0.248 w -202.104 712.807 m -202.104 79.259 l -233.781 712.807 m -233.781 79.259 l -265.339 712.807 m -265.339 79.259 l -297.016 712.807 m -297.016 79.259 l -328.693 712.807 m -328.693 79.259 l -360.371 712.807 m -360.371 79.259 l -391.928 712.807 m -391.928 79.259 l -202.104 712.807 m -391.928 712.807 l -202.104 673.21 m -391.928 673.21 l -202.104 633.613 m -391.928 633.613 l -202.104 594.016 m -391.928 594.016 l -202.104 554.42 m -391.928 554.42 l -202.104 514.823 m -391.928 514.823 l -202.104 475.226 m -391.928 475.226 l -202.104 435.63 m -391.928 435.63 l -202.104 396.033 m -391.928 396.033 l -202.104 356.436 m -391.928 356.436 l -202.104 316.84 m -391.928 316.84 l -202.104 277.243 m -391.928 277.243 l -202.104 237.646 m -391.928 237.646 l -202.104 198.049 m -391.928 198.049 l -202.104 158.453 m -391.928 158.453 l -202.104 118.856 m -391.928 118.856 l -202.104 79.259 m -391.928 79.259 l -S -BT -/F7 1 Tf -21.998 0 0 21.998 209.6633 687.6086 Tm -0 g -0 Tc -()Tj -0 -1.8 TD -()Tj -T* -()Tj -T* -()Tj -T* -()Tj -T* -()Tj -T* -()Tj -T* -()Tj -T* -( )Tj -T* -(\012)Tj -/F9 1 Tf -0.2673 -1.8 TD -()Tj -T* -()Tj -/F7 1 Tf --0.3436 -1.8 TD -()Tj -T* -()Tj -0.2018 -1.8 TD -(\015)Tj -T* -()Tj -1.2491 27.0002 TD -()Tj -0 -1.8 TD -()Tj -0.06 -1.8 TD -()Tj -T* -()Tj -0.2127 -1.8 TD -()Tj -T* -()Tj --0.1636 -1.8 TD -()Tj -T* -()Tj -0.1855 -1.8 TD -()Tj -T* -()Tj --0.1418 -1.8 TD -()Tj -T* -()Tj --0.0927 -1.8 TD -()Tj -T* -()Tj -0.2127 -1.8 TD -()Tj -T* -()Tj -1.2764 27.0002 TD -()Tj -0 -1.8 TD -( )Tj -0.1855 -1.8 TD -(!)Tj -T* -(")Tj --0.1418 -1.8 TD -(#)Tj -T* -($)Tj --0.0927 -1.8 TD -(%)Tj -T* -(&)Tj -T* -(')Tj -T* -(\()Tj -0.0927 -1.8 TD -(\))Tj --0.0927 -1.8 TD -(*)Tj -T* -(+)Tj -T* -(,)Tj -T* -(-)Tj -T* -(.)Tj -1.44 27.0002 TD -(/)Tj -0 -1.8 TD -(0)Tj -T* -(1)Tj -T* -(2)Tj -T* -(3)Tj -T* -(4)Tj -T* -(5)Tj -T* -(6)Tj -0.2018 -1.8 TD -(7)Tj --0.2018 -1.8 TD -(8)Tj -T* -(9)Tj -T* -(:)Tj -T* -(;)Tj -T* -(<)Tj -T* -(=)Tj -T* -(>)Tj -1.44 27.0002 TD -(?)Tj -0 -1.8 TD -(@)Tj -T* -(A)Tj -T* -(B)Tj -T* -(C)Tj -T* -(D)Tj -0.2018 -1.8 TD -(E)Tj --0.2018 -1.8 TD -(F)Tj -T* -(G)Tj -T* -(H)Tj -T* -(I)Tj -T* -(J)Tj -T* -(K)Tj -T* -(L)Tj -T* -(M)Tj -T* -(N)Tj -1.4346 27.0002 TD -(O)Tj -0 -1.8 TD -(P)Tj -T* -(Q)Tj -T* -(R)Tj -T* -(S)Tj -T* -(T)Tj -T* -(U)Tj -T* -(V)Tj -/F11 1 Tf -5.9995 0 0 5.9995 212.183 675.2496 Tm -0.004 Tc -[(25A)11(0)]TJ -0 -6.6 TD -[(25A)11(1)]TJ -T* -[(25A)11(2)]TJ -T* -[(25A)11(3)]TJ -T* -[(25A)11(4)]TJ -T* -[(25A)11(5)]TJ -T* -[(25A)11(6)]TJ -T* -[(25A)11(7)]TJ -T* -[(25A)11(8)]TJ -T* -[(25A)11(9)]TJ --0.04 -6.6 TD -[(25A)11(A)]TJ -T* -[(25A)11(B)]TJ --0.04 -6.6 TD -[(25A)11(C)]TJ -T* -[(25A)11(D)]TJ -0.04 -6.6 TD -[(25A)11(E)]TJ -0.02 -6.6 TD -[(25A)11(F)]TJ -5.28 99 TD -[(25B)11(0)]TJ -0 -6.6 TD -[(25B)11(1)]TJ -T* -[(25B)11(2)]TJ -T* -[(25B)11(3)]TJ -T* -[(25B)11(4)]TJ -T* -[(25B)11(5)]TJ -T* -[(25B)11(6)]TJ -T* -[(25B)11(7)]TJ -T* -[(25B)11(8)]TJ -T* -[(25B)11(9)]TJ --0.04 -6.6 TD -[(25B)11(A)]TJ -T* -[(25B)11(B)]TJ --0.04 -6.6 TD -[(25B)11(C)]TJ -T* -[(25B)11(D)]TJ -0.04 -6.6 TD -[(25B)11(E)]TJ -0.02 -6.6 TD -[(25B)11(F)]TJ -5.26 99 TD -0.0053 Tc -(25C0)Tj -0 -6.6 TD -(25C1)Tj -T* -(25C2)Tj -T* -(25C3)Tj -T* -(25C4)Tj -T* -(25C5)Tj -T* -(25C6)Tj -T* -(25C7)Tj -T* -(25C8)Tj -T* -(25C9)Tj --0.04 -6.6 TD -(25CA)Tj -T* -(25CB)Tj --0.02 -6.6 TD -(25CC)Tj -T* -(25CD)Tj -0.02 -6.6 TD -(25CE)Tj -0.02 -6.6 TD -(25CF)Tj -5.3 99 TD -(25D0)Tj -0 -6.6 TD -(25D1)Tj -T* -(25D2)Tj -T* -(25D3)Tj -T* -(25D4)Tj -T* -(25D5)Tj -T* -(25D6)Tj -T* -(25D7)Tj -T* -(25D8)Tj -T* -(25D9)Tj --0.04 -6.6 TD -(25DA)Tj -T* -(25DB)Tj --0.02 -6.6 TD -(25DC)Tj -T* -(25DD)Tj -0.02 -6.6 TD -(25DE)Tj -0.02 -6.6 TD -(25DF)Tj -5.34 99 TD -0.004 Tc -[(25E)11(0)]TJ -0 -6.6 TD -[(25E)11(1)]TJ -T* -[(25E)11(2)]TJ -T* -[(25E)11(3)]TJ -T* -[(25E)11(4)]TJ -T* -[(25E)11(5)]TJ -T* -[(25E)11(6)]TJ -T* -[(25E)11(7)]TJ -T* -[(25E)11(8)]TJ -T* -[(25E)11(9)]TJ --0.04 -6.6 TD -[(25E)11(A)]TJ -T* -[(25E)11(B)]TJ --0.04 -6.6 TD -[(25E)11(C)]TJ -T* -[(25E)11(D)]TJ -0.04 -6.6 TD -[(25E)11(E)]TJ -0.02 -6.6 TD -[(25E)11(F)]TJ -5.3 99 TD -0.0023 Tc -(25F0)Tj -0 -6.6 TD -(25F1)Tj -T* -(25F2)Tj -T* -(25F3)Tj -T* -(25F4)Tj -T* -(25F5)Tj -T* -(25F6)Tj -T* -(25F7)Tj -/F6 1 Tf -9.999 0 0 9.999 191.4248 687.6086 Tm -0 Tc -(0)Tj -0 -3.9601 TD -(1)Tj -T* -(2)Tj -T* -(3)Tj -T* -(4)Tj -T* -(5)Tj -T* -(6)Tj -T* -(7)Tj -T* -(8)Tj -T* -(9)Tj --0.06 -3.9601 TD -(A)Tj -T* -(B)Tj --0.024 -3.9601 TD -(C)Tj -T* -(D)Tj -0.024 -3.9601 TD -(E)Tj -0.024 -3.9601 TD -(F)Tj -ET -1.49 w -202.104 727.685 m -202.104 79.259 l -391.928 727.685 m -391.928 79.259 l -202.104 712.807 m -391.928 712.807 l -202.104 79.259 m -391.928 79.259 l -S +D:20080424174457 +Apex PDFWriter +<36451bd39d753b7c1d10922c28e6665aa4f3353fb0348b536893e3b1db5c579b> +<c5fcd68fff42090ae5db77f3c6d7992e0122456a91bae5134273a6db134c87c4> +q +185 0 0 200 213.5 296 cm +/Im2 Do +Q test 2 done diff --git a/qpdf/qtest/qpdf/good21.out b/qpdf/qtest/qpdf/good21.out new file mode 100644 index 00000000..64e68463 --- /dev/null +++ b/qpdf/qtest/qpdf/good21.out @@ -0,0 +1,5 @@ +/QTest is direct and has type name (7) +/QTest is a name with value /# +unparse: /#23 +unparseResolved: /#23 +test 1 done diff --git a/qpdf/qtest/qpdf/good21.pdf b/qpdf/qtest/qpdf/good21.pdf new file mode 100644 index 00000000..aa9588d1 --- /dev/null +++ b/qpdf/qtest/qpdf/good21.pdf @@ -0,0 +1,81 @@ +%PDF-1.1 +1 0 obj +<< + /Type /Catalog + /Pages 2 0 R +>> +endobj + +2 0 obj +<< + /Type /Pages + /Kids [ + 3 0 R + ] + /Count 1 +>> +endobj + +3 0 obj +<< + /Type /Page + /Parent 2 0 R + /MediaBox [0 0 612 792] + /Contents 4 0 R + /Resources << + /ProcSet 5 0 R + /Font << + /F1 6 0 R + >> + >> +>> +endobj + +4 0 obj +<< + /Length 44 +>> +stream +BT + /F1 24 Tf + 72 720 Td + (Potato) Tj +ET +endstream +endobj + +5 0 obj +[ + /PDF + /Text +] +endobj + +6 0 obj +<< + /Type /Font + /Subtype /Type1 + /Name /F1 + /BaseFont /Helvetica + /Encoding /WinAnsiEncoding +>> +endobj + +xref +0 7 +0000000000 65535 f +0000000009 00000 n +0000000063 00000 n +0000000135 00000 n +0000000307 00000 n +0000000403 00000 n +0000000438 00000 n +trailer << + /Size 7 + /Root 1 0 R + /QTest /# +>> + +startxref +556 +%%EOF diff --git a/qpdf/qtest/qpdf/good21.qdf b/qpdf/qtest/qpdf/good21.qdf new file mode 100644 index 00000000..9ec8823d --- /dev/null +++ b/qpdf/qtest/qpdf/good21.qdf @@ -0,0 +1,102 @@ +%PDF-1.1 +% +%QDF-1.0 + +%% Original object ID: 1 0 +1 0 obj +<< + /Pages 2 0 R + /Type /Catalog +>> +endobj + +%% Original object ID: 2 0 +2 0 obj +<< + /Count 1 + /Kids [ + 3 0 R + ] + /Type /Pages +>> +endobj + +%% Page 1 +%% Original object ID: 3 0 +3 0 obj +<< + /Contents 4 0 R + /MediaBox [ + 0 + 0 + 612 + 792 + ] + /Parent 2 0 R + /Resources << + /Font << + /F1 6 0 R + >> + /ProcSet 7 0 R + >> + /Type /Page +>> +endobj + +%% Contents for page 1 +%% Original object ID: 4 0 +4 0 obj +<< + /Length 5 0 R +>> +stream +BT + /F1 24 Tf + 72 720 Td + (Potato) Tj +ET +endstream +endobj + +5 0 obj +44 +endobj + +%% Original object ID: 6 0 +6 0 obj +<< + /BaseFont /Helvetica + /Encoding /WinAnsiEncoding + /Name /F1 + /Subtype /Type1 + /Type /Font +>> +endobj + +%% Original object ID: 5 0 +7 0 obj +[ + /PDF + /Text +] +endobj + +xref +0 8 +0000000000 65535 f +0000000052 00000 n +0000000133 00000 n +0000000242 00000 n +0000000484 00000 n +0000000583 00000 n +0000000629 00000 n +0000000774 00000 n +trailer << + /QTest /#23 + /Root 1 0 R + /Size 8 + /ID [<31415926535897932384626433832795><31415926535897932384626433832795>] +>> +startxref +809 +%%EOF diff --git a/qpdf/qtest/qpdf/heifer.out b/qpdf/qtest/qpdf/heifer.out deleted file mode 100644 index cd02c232..00000000 --- a/qpdf/qtest/qpdf/heifer.out +++ /dev/null @@ -1,7 +0,0 @@ -WARNING: heifer.pdf: file is damaged -WARNING: heifer.pdf (file position 92741): xref not found -WARNING: heifer.pdf: Attempting to reconstruct cross-reference table -WARNING: heifer.pdf (object 2 0, file position 2165): expected endstream -WARNING: heifer.pdf (object 2 0, file position 51): attempting to recover stream length -WARNING: heifer.pdf (object 2 0, file position 51): recovered stream length: 2249 -qpdf: operation succeeded with warnings; resulting file may have some problems diff --git a/qpdf/qtest/qpdf/heifer.pdf b/qpdf/qtest/qpdf/heifer.pdf Binary files differdeleted file mode 100644 index a3c62422..00000000 --- a/qpdf/qtest/qpdf/heifer.pdf +++ /dev/null diff --git a/qpdf/qtest/qpdf/heifer.qdf b/qpdf/qtest/qpdf/heifer.qdf deleted file mode 100644 index 0e20c934..00000000 --- a/qpdf/qtest/qpdf/heifer.qdf +++ /dev/null @@ -1,1349 +0,0 @@ -%PDF-1.2 -% -%QDF-1.0 - -1 0 obj -<< - /Metadata 3 0 R - /Pages 5 0 R - /Type /Catalog ->> -endobj - -2 0 obj -<< - /CreationDate (D:20020815124312-04'00') - /Creator (Acrobat 4.0 Import Plug-in for Windows) - /ModDate (D:20020815124312-04'00') - /Producer (Acrobat Distiller 5.0.5 \(Windows\)) - /Title (geese_w-anchors.pdf) ->> -endobj - -3 0 obj -<< - /Subtype /XML - /Type /Metadata - /Length 4 0 R ->> -stream -<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d' bytes='992'?><rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'><rdf:Description about='' xmlns='http://ns.adobe.com/pdf/1.3/' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:CreationDate='2002-08-15T16:43:12Z' pdf:ModDate='2002-08-15T16:43:12Z' pdf:Producer='Acrobat Distiller 5.0.5 (Windows)' pdf:Creator='Acrobat 4.0 Import Plug-in for Windows' pdf:Title='geese_w-anchors.pdf'/> -<rdf:Description about='' xmlns='http://ns.adobe.com/xap/1.0/' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:CreateDate='2002-08-15T16:43:12Z' xap:ModifyDate='2002-08-15T16:43:12Z' xap:MetadataDate='2002-08-15T16:43:12Z'><xap:Title><rdf:Alt><rdf:li xml:lang='x-default'>geese_w-anchors.pdf</rdf:li></rdf:Alt></xap:Title></rdf:Description> -<rdf:Description about='' xmlns='http://purl.org/dc/elements/1.1/' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:title='geese_w-anchors.pdf'/> -</rdf:RDF><?xpacket end='r'?> -endstream -endobj - -4 0 obj -993 -endobj - -5 0 obj -<< - /Count 1 - /Kids [ - 6 0 R - ] - /MediaBox [ - 0 - 0 - 612 - 792 - ] - /Type /Pages ->> -endobj - -%% Page 1 -6 0 obj -<< - /Contents 7 0 R - /Parent 5 0 R - /Resources 9 0 R - /Type /Page ->> -endobj - -%% Contents for page 1 -7 0 obj -<< - /Length 8 0 R ->> -stream -q -/RelativeColorimetric ri -1 g -/GS1 gs -1 i -0 792 m -0 792 l -f -q -3.617 790.98 608.383 -787.92 re -W n -q -610.995 0 0 789.113 3.0369 2.5269 cm -/Im1 Do -Q -Q -BT -/F1 1 Tf -16 0 0 16 112.495 255.964 Tm -/Cs5 cs 0.78 0.275 0.157 sc -0 Tc -0 Tw -<01>Tj -/F2 1 Tf -14 0 0 14 164.401 206.964 Tm -0 0 0 sc -0.0003 Tc -[<01>-219.7<02>0<03040506>-24.7<070406>-24.7(\b)0.1<07090a06>-24.7<0b0c0d06>-24.7<0e0a0a0f06>-24.7<0203090a0f06>-24.7<030f06>-24.7<1007111206>-24.7<0f0c130a06>-24.7<0e1006>]TJ -6.7492 -2.889 TD -[<140c1006>-24.7<050b030d06>-24.7<0203040506>-24.7<070406>]TJ --11.7937 -2.4191 TD -[<0e12030f0206>-24.7<10071106>-24.7<15071006>-24.7<0c0d06>-24.7<030506>-24.7<0e12030f020d06>-24.7<0b07160a06>-24.7<0c0f1706>-24.7<0f071112030d0b130a0f0506>-24.7<05>0.1<0706>-24.7<0c06>-24.7<040c1303081006>-24.7<03>0.1<0f06>-24.7<0f0a0a1718>]TJ -/F3 1 Tf -9.75 0 0 9.75 101.201 106.951 Tm -0 Tc -0.028 Tw -[(Heifer International is a nonpr)30(ofit that alleviates hunger)125(, poverty and envir)30(onmental degradation )]TJ --1.5183 -1.3026 TD -[(thr)30(ough gifts of food- and income-pr)30(oducing farm animals and training. These animals pr)29.9(ovide a sour)30(ce)]TJ --0.7968 -1.3026 TD -[(of pr)30(otein, such as eggs and milk, for childr)30(en and generate income for families thr)30(ough the sale of animal )]TJ -0.5957 -1.3026 TD -[(pr)30(oducts. Since 1944, Heifer has helped over 4 million families in 125 countries become self-r)29.9(eliant. Each )]TJ -1.2818 -1.3026 TD -[(family passes on the gift by giving one or mor)30(e of its animal)140(s of)10(fspring to another family in need.)]TJ -/F4 1 Tf -8.1749 -2.1231 TD -0.031 Tw -[(T)80(o)0( learn mor)30(e about Heifer, visit http://www)79.9(.heifer)125(.or)30(g)]TJ -/F5 1 Tf -16 0 0 16 48.2658 742 Tm -/Cs5 cs 0.275 0.275 0.471 sc -0.0002 Tc -0 Tw -( 666)Tj -1.9556 -1.875 TD -( 444)Tj -12 0 0 12 140.128 286.264 Tm --0.0003 Tc -()Tj --2.1762 -2.5478 TD -( wwwwwwwwwwwwwwwwwwwwwwwwwwwww )Tj --4.6179 -1.9108 TD -( wwwwwwwwwwwwwwwwwwwwwwwwwwwwwww wwwwwwwwwwwwwwwwwwwwwwwwwwwww )Tj -7.1656 -3.6623 TD -( 333)Tj -0.0531 -3.4502 TD -( 555)Tj -/F4 1 Tf -9.75 0 0 9.75 117.723 24.2689 Tm -/Cs5 cs 0 0 0 sc -0 Tc -0.031 Tw -(To learn more about the gift you've been given, visit http://www.heifer.org/gift )Tj -ET -q -375 0 0 375 121 317 cm -/Im2 Do -Q -Q -endstream -endobj - -8 0 obj -2338 -endobj - -9 0 obj -<< - /ColorSpace << - /Cs5 10 0 R - >> - /ExtGState << - /GS1 11 0 R - >> - /Font << - /F1 12 0 R - /F2 13 0 R - /F3 14 0 R - /F4 15 0 R - /F5 16 0 R - >> - /ProcSet [ - /PDF - /Text - /ImageC - ] - /XObject << - /Im1 17 0 R - /Im2 19 0 R - >> ->> -endobj - -10 0 obj -[ - /CalRGB - << - /Gamma [ - 2.22222 - 2.22222 - 2.22222 - ] - /Matrix [ - 0.4124 - 0.2126 - 0.0193 - 0.3576 - 0.7152 - 0.1192 - 0.1805 - 0.0722 - 0.9505 - ] - /WhitePoint [ - 0.9505 - 1 - 1.089 - ] - >> -] -endobj - -11 0 obj -<< - /SA false - /SM 0.02 - /TR /Identity - /Type /ExtGState ->> -endobj - -12 0 obj -<< - /BaseFont /KPPLPG+Times-Bold+2 - /Encoding 21 0 R - /FirstChar 1 - /FontDescriptor 22 0 R - /LastChar 1 - /Subtype /Type1 - /Type /Font - /Widths [ - 250 - ] ->> -endobj - -13 0 obj -<< - /BaseFont /KPPMKC+Palatino-Roman+2 - /Encoding 23 0 R - /FirstChar 1 - /FontDescriptor 24 0 R - /LastChar 24 - /Subtype /Type1 - /Type /Font - /Widths [ - 778 - 556 - 291 - 333 - 326 - 250 - 546 - 291 - 565 - 479 - 582 - 500 - 424 - 553 - 582 - 556 - 603 - 395 - 883 - 946 - 234 - 601 - 611 - 250 - ] ->> -endobj - -14 0 obj -<< - /BaseFont /ItcEras-Book - /Encoding /MacRomanEncoding - /FirstChar 32 - /FontDescriptor 25 0 R - /LastChar 213 - /Subtype /Type1 - /Type /Font - /Widths [ - 282 - 214 - 333 - 565 - 565 - 830 - 669 - 195 - 283 - 283 - 518 - 565 - 282 - 243 - 282 - 401 - 565 - 565 - 565 - 565 - 565 - 565 - 565 - 565 - 565 - 565 - 282 - 282 - 565 - 565 - 565 - 453 - 768 - 582 - 569 - 616 - 720 - 536 - 512 - 733 - 710 - 219 - 358 - 520 - 447 - 820 - 732 - 788 - 512 - 788 - 526 - 457 - 475 - 695 - 620 - 926 - 553 - 497 - 551 - 285 - 282 - 285 - 565 - 500 - 268 - 511 - 570 - 461 - 583 - 514 - 271 - 595 - 584 - 205 - 230 - 440 - 205 - 840 - 584 - 572 - 577 - 574 - 329 - 376 - 292 - 579 - 468 - 816 - 445 - 464 - 424 - 287 - 282 - 287 - 565 - 0 - 582 - 582 - 616 - 536 - 732 - 788 - 695 - 511 - 511 - 511 - 511 - 511 - 511 - 461 - 514 - 514 - 514 - 514 - 205 - 205 - 205 - 205 - 584 - 572 - 572 - 572 - 572 - 572 - 579 - 579 - 579 - 579 - 518 - 430 - 565 - 565 - 518 - 565 - 504 - 545 - 768 - 768 - 830 - 268 - 334 - 0 - 795 - 788 - 0 - 565 - 0 - 0 - 565 - 579 - 0 - 0 - 0 - 0 - 0 - 360 - 360 - 0 - 820 - 572 - 453 - 214 - 565 - 0 - 565 - 0 - 0 - 398 - 398 - 1000 - 282 - 582 - 582 - 788 - 1020 - 934 - 500 - 1000 - 333 - 333 - 195 - 195 - ] ->> -endobj - -15 0 obj -<< - /BaseFont /ItcEras-Demi - /Encoding /WinAnsiEncoding - /FirstChar 32 - /FontDescriptor 26 0 R - /LastChar 121 - /Subtype /Type1 - /Type /Font - /Widths [ - 316 - 316 - 389 - 633 - 633 - 883 - 728 - 212 - 351 - 351 - 568 - 633 - 316 - 261 - 316 - 412 - 633 - 633 - 633 - 633 - 633 - 633 - 633 - 633 - 633 - 633 - 316 - 316 - 633 - 633 - 633 - 494 - 824 - 695 - 651 - 649 - 752 - 616 - 574 - 759 - 778 - 296 - 448 - 666 - 531 - 880 - 792 - 835 - 587 - 835 - 630 - 525 - 555 - 752 - 695 - 1073 - 628 - 584 - 619 - 351 - 316 - 351 - 633 - 500 - 339 - 568 - 621 - 489 - 635 - 561 - 352 - 639 - 644 - 272 - 312 - 550 - 272 - 896 - 644 - 618 - 626 - 629 - 389 - 446 - 373 - 629 - 543 - 874 - 560 - 543 - ] ->> -endobj - -16 0 obj -<< - /BaseFont /Courier - /Encoding /WinAnsiEncoding - /FirstChar 0 - /FontDescriptor 27 0 R - /LastChar 255 - /Subtype /Type1 - /Type /Font - /Widths [ - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - 600 - ] ->> -endobj - -17 0 obj -<< - /BitsPerComponent 8 - /ColorSpace 10 0 R - /Filter /DCTDecode - /Height 790 - /Intent /RelativeColorimetric - /Subtype /Image - /Type /XObject - /Width 611 - /Length 18 0 R ->> -stream - - - - -
- - -EFVU(eufv7GWgw8HXhx)9IYiy*:JZjz -&6E'dtU7()euFVfvGWgw8HXhx9IYiy*:JZjz -~Wb]v*UثWbV7z⫱Wb]@"[]v*UثWb]v*UWb,\^. R>FD_$aWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbZRpkv*UثWb]N*W]v*UثW]v*UثWb]v*UثWb]v*UHWaWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbZU -ov*UثWb]v*Uث -]v*UثWb]v*UثWb]v*UثWbV=Wb]v*UثWb]v*UثWb]v*UثWb*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*P #**Uت -OߊUW늮$
*UثWb]v*UثWb\qWb]v*Wb]v*UثWb]Zb4]v*UثWb]v*UثWb]v*ov*o\UثWb]v*UثWb]v*UثWbYA1W"@;Uv*UثVov*UثWb]v*UثUTTqUثWb]v*UثWb]v*UثWb]v*UثWb]q -v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]BvQND -ǑN -GAv*UثWb]v*UثWb]v*UثWbZR{b`VڴTuV&|Ui^]v*UثWb]v*UثWb]v*UثWb]v*- 8UثWb]v*UثWb]v*UثWb]v*UثWb]]w*D(
CiZ$8*zӵ:⭆튷v*pn$WT/%wb~݀UWb]Z -v*UJxRdf|Tb+JUثWb]**UثWb]v*UثWbZov*UثWb]p]v*UثWb;ӏ_v*Uثp]v*UZUUثWb]v*UثWbm-n!tS*Se"ѹsn<qUثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbZn]VWb]v*UثWb]q -ӹ銮]ZXLUΤ -***UثWb]v*UثWbT&UQMn((8 -=*v*UثWb]v*UثWb]v*UثWtZ -nLU^Wb]v*UثWbZV**UثWb]v*UثWb]v*UثWb]v*UثWb]v*Udl%
zxWb]v*UثWb]v*UثW\UثWb]v*UتjPP* -v*UثWb]v*UثWb]v*UثWb]v*}Q^T;AM][U);劮]z]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbIs+"}>VTt]v*銷v* -*UثWb]v*UثWbAUث]kov*UثWb]v*UثWb]v*UثWb]v*Uث\*b];wWbv*UثWb]v*B%(jn1U\UثWb]ukv*UثWb]v*UثWb]v*Wov*UثWb]v*UثWb]v**-N**UثWUثWb]]v*UثWb]Ɲ;[]v*UثWbJՁ)⫱Wb]ZND -|N*v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*Uث*UثWb]Y$jk,U~]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbTMMA;Uv*UثWb]v*UثWb]v*UثWb]v*UثWb]v*Uت˗zRتUثWb]v*UثWb]v*UثWb]u:]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثJj:Sov*Uت50**UثWb]v*UثUnT$ur*$]v*ĄEU~*UثWbZ&UUثWb]v*UثWb]v*UثWb]v*Ug3qJ_v*UثWb]v*U$**UثWb]v*UثWb]v*UثWb]v*UثF[]1Wb]v*UثWb]v**)v*UثWb]v*UثV'~ثxWbV*)cnqW+⫱Wb]v*UثWb]v*UثWb]v*Uت+ [aqULUثWb]v*UثWb]v*UhkWb]v*UثWb]v*UتPAqUثWb]v*UثWb]v*UتUU -cA⭊**UثWb5튻v*UثWb]v* -O^1Wb]v*UثWb]v*UثWb]v*Uث]v*UثWb]v*UثWb]v*UثWb -*Uث+^Wb]v*UثWb]v*UثWbPpcZ֙WɫWb\kv*UثWb]v*ኻv*UhȒv1UثWu]hb]v*UثWb]v*UثWb]v*UثR8zb?IUrSne8oʽ~USv*UثWb]v*UثWb]v*UثWb] -v*UثWb]v*UثWb]v*UثWb]v*UثVs*%U`JLU}:{b]v*UثWb]v*UثW`]]v*UثWb]v*UثWbZxqWb]v*UثWb]v*UثWb]v*UثWb]v*~*S[Z[]hov*Uv*UثWbWb]v*UثWb]v*UثWb]v*UثK㊶MqWb]v*Uث{b]v*UثWb]v*UثWb]⮨8Wb]iLUUثWb]w*UثWbWb]v*UثWb]PݞdՑD{h@V?m_W]v*UثWb]v*UثWb銻v*UثWb]k~^W[]v*UثWb]v* PU1Wbj\?B;U[{t'abثWb2i]v*UثWb]9Tv[]iZJw8UثWb]v*UثWb]v*UӦ**UثWb]NWb]v*UثWbVs_(v*b]v*Uj7[]v*UثWb]4"QF_v*UثWb]v*UثV늷v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWSv*UKׯ. - \(v*UثWQ\UثWb]v*UثWt]v*Uث*UثWb]v*UثWb]v*UثWb]v*UثV{b!$Eq]v*U#i**UثWb]v*U1WbVS##Ě_QmإثWb]v*Uث*Uv*UثWb(aovWb]v*UثWb]v*UثWb]v*UثUFQ㊮]v*UثWb]v*Uث*UثWb]u\UثWb]ly G$dەj#D$ӱKWb]v*UثWb]v*Uث^Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]OJ%_-w&T9'+K@BqTF*UثWb]v*UثWbC -v*UثWb]hъiSnxWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbO.@s]v*UثWb]v*Uv*MqVWb]\UثWb]v*UثWb]v*Ukۈ}ኮ]v*Uث\*WUUثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWbQhV]i]OLUUثLUثWb]v*UثWb]v*UثWb]v*UتB.(e -V5 -nqU\UثWb]v*UثVRN**UثWb]伸LUv*UثWb]v*UWb]j]u1Wb]v*UثWb]v*Uت6UثWb]v*UثWb]i5[Z:ov*UثWb]v*UثWb~~=9M*dUثWbZ{**UثWb]v*UثWb]v*UثWb]v*UثWb]½銷v*UثWb8K -Փj|*v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]ixWb]v*5**UثWb]v*UثMv*UثWb]v*UثWb]v*UثWb]v*UثWb]v*{W[';xAqULUثWbV⫱Wb]v*UثWb]v*UثWb]ZWM~]q]v*UثWb\1Wb]v*UثWb]v*Wb]v*UZov*UQN+xUثWb]v*UثWb]v%\M0Wb]v*UثWb]v*UثWb]v*UثWbV"5Wb]v*Uj֟+튮]v*UثWb]v*Uث*UثWb]v*UتpեvpGWb]v*UثWLUثTǣV/t#+fQ늻v*UثWb -ҾتUثWb]v*UثWb]v*UثWb]v*UثU6G\U~*UثWb]v*UثA#ov*UثWb]v*UثW^j6\B%FI#mHl*銷v*UثWb]v*qVWb~}k}26Wb] -h -Rm[ -v*UثWb]v*UثWbV-+V)늷v*UثWb]v*UثWb]H"M*eYIS+qS$]v*UثWb]v* uv*UثWb]v*UثVVWb]v*Uت`}UثWb]v*UثWb]v*U]v*UثWb]v*UثWb]v*("DW -ov*UثWb]v*UثWb]v*UثWb]v*Uث1WUثWbv*:]Wb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb0zb]p]q6늻v*Uث1WSv*,:=U[]v*UثWb]v*Um7&F*v*UثWb]v*UثWb]v*U -bWb]v*jO~x*)SJ1UثWb]kqV߉]̅*mU1 -*4튷v*UثWb]v*UثWb]Wb{b],Q'9* -4*1Wb]v*UثWb]v*UثWbZ~O|Uov*UثFowv*U[]v*ULUثWb -3\WNKN]v?m|7UyUUثWb]R)JN%v*Uov*UثWb]v*UO**UثWbP -9o_ov*UثWb\iv*UثMʆ{b~WeR_k' -endstream -endobj - -18 0 obj -18458 -endobj - -19 0 obj -<< - /BitsPerComponent 8 - /ColorSpace 10 0 R - /Filter /DCTDecode - /Height 375 - /Intent /RelativeColorimetric - /Subtype /Image - /Type /XObject - /Width 375 - /Length 20 0 R ->> -stream - - - - -
- - -EFVU(eufv7GWgw8HXhx)9IYiy*:JZjz -&6E'dtU7()euFVfvGWgw8HXhx9IYiy*:JZjz -⮥:'ll}*?tZu1M:Oin6㊸÷u+6]MG犺i}ثTZ]LUj5h犼^ט4me{ۨ+Ez.%FBӥӖ+ْg>Db# -;Ê1ګ~Of --Wzb*<3yA1z {)kO*|M%ɚId0j[?!R### -xzÛc͖녕X$d!AP>X?I^CgTo֞n.m-TĊkcYva~م9ڈeG ,.1PAw봺lWwjY=&w?|]Jo(~CrwPzƯsZ4Y}f&l≺䊧rlW[~ -{ -+fs ۔<fn`j
stm[Jm~0%xP;UQsRon@ߖ -<d"A܂_+gIv@ܨ4Z+/1=ij'&qBW!M#\8'o/d%DŽ|h<#FZ$2z+PG^?ϦpwnQK-@zqAʍra15:фjCޣ" -N|ͪe@98"KW[Puc)^&aNTuf4Ork{.a -K`49vQ)ʋ^|" \q\iӠZ#3 ty -~cZ]M*O+NZw0+W~wZ6=R4߶OхZ4´v
2ӍU\Tb@U{UۦUFê:s#qN]nE.J|J6A4iJjTU$(>KT#8ۯxtr5ol%ʤv - gm"$,bR eF09 X)G2h/;JD@>T@dF4<~aS,z1-Y5YL#RK~a2Ċ -YdM%B-)EZAlUmˆܑ6O_2M(2!<7<w|sXe?ט<ɠ\qaԄp/' GpMK&H9H69_.hڔ^Q]G5ƛw"fy%bC$z'ӮД;zoDl}jwIA<a#5;U`I4~hycX;& -*c1& QOvjP04n+eKdIHZ[ê*r?,lU$W<RK,1imiy֜|qE4R8Gn *>*,~;ܫnTKvP:~<Zoa?QI\Z$I(̀XՍP -ԓ$ O0h.!VBWMjLC7<c NgOde" -/2T;
bd5,=$ȿeJEB~9oe*Ф$IV!KzcҾ&a7P%U^b!TmnbH]g4z~6@snMKK^%]J0SŸB)+{[iU ,i67*Co4oeU*$_^ﮣnJ*V51S0ïhAA!9bGBDWk#/:#o7߄G[9+Ȩ$VX -ң@٠\[1@Ld-y:xJ?(}B)o.X ^L@>}dc'd@qcweg @6F9qH=V{mzZY* aʼ¼Pܗ2QLg.#u2*4RvŨA4' -y+n<0$V[ggXެC| -8+Mg3d&H G+)8
_b@<A#>K-ѨNaU)o]gy
*{mʹFIwn#q< -l2G, -=xb2NM2ct1~hF[[{
9Jӆ#UwGy,eRE<cQ)VV -]
QSʧ
TZVwFf}n;lTc2؞h, Q.XN)N'{^x>DSAy<N#\Zz6?^b2y6541t%WN_hqoB᷅L -2*@5|5?Ԙ][1xJ%,j>2;ERYّӕ܀UԊu*~F#~RӞ{gmaybF3si.Bv_}%#fI.ZxzqC"FcxNxLhpPD&fHذ5 -~ mn>` -GcHuK -!!h~!ܵrkqe,Rݫid[-y(bN+֧ZwÆDrnQ<GPQ6jqO͍(`J٭㋘(=Gv#j<6+NuW脺2$$hOIY=gOƄ
9jZ>s\mcia3,V#e 7oC(#ԣ*ﲨc{9x:Z]ޅH^3<K- -7Qo.`焠1sepfX-F -'+ -#^m0jC%g{{[(ޢGBOPU#J -!'VFSG;IL$xteYarQ`iSgj.=R&:0$`qܷcȴ0q+8z+)3Oу%@BY$bT*<)5Q^`"Re%f(j)f<4rCo-)Ibހ0d1M&}@N(.%XcB+!Y=GQ2zH yd?b9uzvYD].,"hR%cI%8ג1,Lum -**pbp?SVki9ܞ_OIaASUX{d
Z#q4/sk<=
"+-?l*߁ĎM -#Vp'EǙ} -~~=pVCZî-r-d
Ry#<@<vUg>*^{ɫ)MNǯ6h -=K+^,ֳDwXk68m˶_
ޅԼi:O0E"<$U{rcZq^2(M#
w1XCNM]!v -il<\GJ )((L:zm_E
"g&[ɨjG÷n?NP/])eل~k FgF<26r#k*]B dx -@4 -[.݀ɜrKNe$MD|h@#r^wn`6I]G}:k3uss`3mcVQĵ47q2^،$Q*&wjSR[?^U,f@A<㏣ -s2iwI!#q$$Ut4#0oKHuq!ԣ:ݬb 8J] -ھ9 --)6)
ɡ7Pgt[C;ʤ -&#E-?zd*E6lAh4żhMB(feo -~J(EjJF8ŢӸ{e"R߭U@~0.H)6Y.P4T+@t}9Xr =ތ%SPc% uTqe,b"Cl7횧d-ġ5S¸_2%n-&-*+OW;f_<3fڦ$P*Gxn89e2A-:k Z2BI۽76y
V6Hs4`VJ$2lxU%lH`686M; o叚vaEVr;6Ƙ0PKcϪwpK7 s/zșu -%[SK>ƑH3|>rMzt8qtCZ58Hy?U_oK1YoQ#hKʨŁ4 -0 -{W TBemqDJ,[{a'f
ws02(UULEzצ]O90@o(:3sx-G`s-Z ~9|4q
r̋GWm밡lpD0BU:-,ڀC.T;!Xiv+q'[u֜a0q' 2jP4х)N G s4Ԝ<OB -C|qƅ]ݽ!Af1UpH,O£s93{x0PR4 h!DPUR߾aF7_}9ZCh_O,K{n'a%( zJ9IVrc\#.R -eJt-LZ=̞c0ɧZ\.шGK
fr -RhHōzΩ<mkh?EgrHZ=/"cjDi ]N"/^EYv>1 g -D#" -:R90YZ[Zڤ E -]') -ejςTg\RLVԠ`uzL@T5htV4&G~EY ܶZ&N?9y HYV.Y`S=$]Wv#2#!vG6$R -a}\$I9@4>ʊf<2
~"G.l4fncFx=96_v*&壆Q25qE2 Vk`l -q.{KMhzE,oQ%IߨUwc7s0P;FDޟc?H\r=m֙`63r^R/չ)RHm-clkdHӡ -n'ʱ -8ʽEIc'1#KMյX/$ToNSөÒCd㘉LXׯI|b.G8
7g1h'D'n~3 -J~6_yW.`6K9UӐhfPQuyJfI -LA5b|3X}ELl zm,&HWALsk˖ڄ*'/js 7ő)PI4-LWEpTkՌjo1Îh#9T5]@aq
hʳ@ЖfZPzws唥)[1DմM-5kHncUkjZKY0c0;atP8ɘLq!2h˧}j[˗ɡxP8GN"we
z
A촩 -]GL$l#Vqy*A5̗'hs><#WQdOph -~@G9"?%!vq.Al"9bv9v
B -H~Hk"0_ -Jj -rEVc-7)q(P -N:yYup m{o.,qv2CMRPB_'1q1a懟_Ɏ_y8ga\!)u#`{.aC0(GYȄ~l&GFQE)uF\NqOn[91gX&FZ{@f=Σ+ihQ -\9y?0 -+ȟ|[n?EFb -% "ߊң -nGd. ҒM,gg& -:sCh&YdƒK:rN(Yo\m'F-XI]kO[rz͎S`o4EW<!O~wēE-A!?F$+zbh{jeQa<Wyg5X - -w}ĭ7cO2@ez垙 -Ԯ$T>cX'Yryc@Ӕ}Z>u"ujLWz^[[n_rU(Ht!FʦA#
~=!ɖ\"]28|/^#2CQM,"WVCzS#6 `GJ~-ѧ8)d,k" - )-$+d)ih-4<UQN0PÒmw_g[&A -2%XۈUŸ*Y'sZFKՒ68淖E]Iw|ͭw|,M
-Gh -FyDIvRc[)HxAweWn+@O|3cV<21c+(Ep$:ب?6p1:H- -FY -r86KhWWgS,/VVB>!ЀÒֆ.s`xOdkƐK^\[})KdK0W,m^{oM"Xn*?UvGfyNlBq8R=H6(-֣0M؎3[s&EK5lJ^S
1p@~ -[u ejI5p54s,midE"u+4Hku@*ОL̴ -?A\'z[1]ȥp8 -Gįj|i_&%dcL0md*yKm%'-R DJU9JПz2n|9Uao( -'~KGՀkn$cav -y*?hrc>bɵkv*:e±֟
OBE!t>ô*"%(2$B'(TXIZ*<GqDD苂!UdRh*S|fcI\ii#R9"12)lJ3~~ycRqVi^ر+diNӆ -t,MOr02نyLk(뺡/t"[(#SZ驮ٍ2ܓp>QGi?==)SUlܕysƏ&1vRK;R\vB̮Ƥ1 -d*Sd쎌1ȇԚl\4cP+7gBr@ -Q$aЂE@<Ze1V˩&ԃRԦBsH但^R9$@9'x8B>)-S5UDnRTa~/pTeay[z`цn*?<u^G-5t=?K,Y
Xvu^b<R
xp1g,^(͠sKKI<$`*qÆ#RJ;O_u5ޟ/" D%=wj{oę` LRHʰ_I~8Uu1*/s -دb;a^ycz3iVwS; ,AsUr6 ɿ˶Xc>!_ZTYV- haϖjwpumsH"n|9 ROx$ '?H NU5M,)cia͢toQFZou#rĝC+[KOˁ.)nӝ^؏ -uQ -1!Ք|4@جwMI?2$+K?3
z{s=Ӭ -Y&zdI.:m@h*ZޅmM,</9*el&yN>HkO)Z78ﮝ\vU=O-QAѾ?U&c7BpN9c݄sVlՍu{y*Z*È#U%xa+f~9x'B#|lkm9 tf% "|WOqtرeGw,Ƭ6Q.,Pؗd.!Yw52N!^5en[k\rq.Ь@ȧOJe9OHh5* T6 tܶ2gIHu%C4*ֻw S!܈6Hev A%3v8ZUWb=p),[=|Œ8}tIgF }ҹ ζfo6y(5}IIM,D"k -Ks{m^XP -,sNmļPH
=yHW4r+q -n2MG(q>Y:XҢҧiTgf<4ykpRj -7G<D"NF^Az%)Q] -ۗS("DfRNՙpn 8YyP/헴H`I#P7@EJ:!"G&P?R'V3]HS"=v!=dEP=KPDfkHEE$LrHD3ߢ3IY@Qbǃ
!rNԠxsmh(efr*X7{Y ؾnAn浼B$u'!̟g)M3o8>Ǡ]~^yAO[8,&yRh[vb=A9Ysx({OSeDZٌnGC^Fdjc-N49 -+AƐkрe*.IzH(xg;zs<>'Fޝcr$qѐ6#grm$kH#w
?jߏp7|{jlڊ`x ]Ĵ1_݃ -)YZ5P`v_B&YX'ta?"gMz衚cUd@ڝ@$@e18 u~vcJrd,])6F -0nYܬ#s#¿YOމuXЄZqOHC\A݀T;gaP[ (5T;]4DEZGrNʑe1N{oi3֦!S,R4Ne!Ş JqoT5AZg4߉ّK/ŴJM,YJ$p&<9{u|x.ஷYFbK2 -$Eذ%ՙ"NI"Z]MV)K^,G\4~ⷝZ\7+3p:T -A߈j,o"QF#
3dY.mW!g(wDc>2|2bc_֛MJ@/oc6t^l_%!F/z֧k1ZRp ":3 -^*=OLڱVu{3bi!3U~Axsj3gs:_\Nr3D6Pmb0r?Ђ˷QȖ1KƎ8UYx⢇%:w~6l5dyWd=oM!Ǐ"N&{2qH jŁqʌ/Qt=;}hѢ+?d7+nm\\ވ"eI(U*5ڤtM -"lV˃O3^( -4u}9;W,bCXhmj_bcT&5TlA (~_HōFl<"oYrҼdr8Fzn
9#3̰lb`%DûUR0;GղP2a~{M9pVi4q҄W=3,j85
g]ۜJ#5,i
V$5֝jUEɪ~.\vH%4}B$P^⏟ߵf{_z^dBPrRHFRoǠxe$ -Lp ϱǭs -Wד=Oc,Ρݨȭ1'6xdE&pjU -&w:q*-ýxsB1dgV{=rz
2?R! -9=r5՜n}<_XҤ{+4։Q$d_SjDrȓc[ -FGc4f>eCxc(.^5FC --Pt7szdCVx4"QP3H -c+F9xM|fa V%ZT -]Ṯ -Trbqe?QEv*i3A(Ӣ=PEP_:x{5p|9Bh(9Ma7{cM&\Ć; -KjwRJ xŶ Q:[i}H봟PLJP6iǝ7BݥjXlFW)WcV0 -1^<u&9?pLI#]qzfڣq,㳳ZFY$V+S' ~;o晥yoQ*ߙYb?Ҽqc
pu@>;#/%45rg7,O~ oiX8;\IE D<OJu\L$M)d\G
*P$w2PE?c"wp#rw|R6:]r-,L$wL\{5$j$BK,b 3/Z̎TkaC$rBcFUq8bAlw>Mm5o?UPW$FNNP/Rս5pн}P -#uo0wt:@F<V@K.&5g)'&6ĔTd9gᓙc_(˷&HW>EtcւNn{Tj`n"n,h~!БL$e(|Cp\+ -h @&m2$gra -\vC
|G)@DC2AajZ,D31F 932S˜B\Gm33G4#E>{`ܸi4&wvE@u:8"C`io%$Q{6ErdAܖqyy^EyVJs cO}ٌr|Ll%5
-cAw0HN ѷ.b8@ǖMh<n$ߞV \T*In$uhەGASMR4Rfx -S=g_qBđ>Mko1Ag}a0Y;'cU_WF/DPh;O<ط5U`x2 -+jt -pi"~h pgnD_~^9Ww㣚5m뿇<-Pk.i&}IYU'0~{АV/Hy l#-ࠐ-" E{8hxeu6O?C#T$kξil+ou[c7 -?1BHMO|P1;_ -Ho,Ŝea˄.Ew<ɩ:=8ຽrܓƭ -5go|7?&ۨWե/r^+Jeh`8P'YBWOc3F@r;/nq,GkLtepTH*58(]|Mu5M/nXPڴVI#pHhVfҷ.5;~n< KC[;#|G1T䡄|UhջuYY"B1QaZՕR7'r@rnLjqQݫ[Yf.
%oRHqvHZa<<1.e8a[VbhX;Y&fA?kg1r+gQ;8K )qUAQM;npF1 -n09ssJL
;%z=VK-AYQ"$$mP5'& -37&B$c1'm8RK7hr;I}((g5#nY#hr[n"~k'e:АenT4 -\D5]>PHzS:*ve!"@oiۇƓ)8}Q(~Q
վ,`&Yr1{]&e-ELj4j*wNdmJ_"9N<VH%mKd cSÑ+Fmgt,M*E14$` -EKeX+t+^T/ȨWёKbool{m6Y`1Y`^() Hcu>FY
x2J6#"m^duwl#o"Dꖧ] -j>\.3rC`VnD/"j -e?
^ooeq?ԲJUw1CCN'rp'#b>?g=?BXZ[Fc1ApEjGw5'%^F1065Bc|#w~>]dJ`~lQiuyckUhLjX -8G4n5z/oi}/]]@wOƿTʳiHOaB<"of -cR -Ǔ2qc_5uGw'ސ5/)\,Vяz - -J]I1àg/|ͦ=5q-Js*L:4k3']^@᰾ԥkĽ٧bz/'A̫nhtpA'G.N5#W<9В$c[Ũ)O*ˊe@[^b[ͨIt%,Qe)DBAQy~32 sۯvTL%/%nf)3=2&̑$\Fs=HHg(B#ocYyRLҹ[ddkH!u| -Ǔx
4KPI -Qzg1 -T3F<3UC8eȟM>.A}M8{c. -+qતMF͵2Q6-щoiyrB+ DA%C4*dxde >2i}l_~_cͭEq7:^9h7!gTߓW.#|Qۋn} -y 0DD^.i9-=)xµys
ouj
2+c\ - -jTmGnmV4a4ӆ25K$1!4] iN8IpD}npy(yTjFH~ - "lJQXK!5Gs5swIf*! -|?T Z_^!N/F^N?hrogq*CM[tϫpnY褥TH -<6ƾlLAUnޔ
eGn%L@#JTLjԀߋDVi⾬f!FJ1ǒ+v"'{O -'U&+xȾ/.7Y@t$ -bP^?iK`O1rKcIh&
5H("Gf~ -endstream -endobj - -20 0 obj -45194 -endobj - -21 0 obj -<< - /Differences [ - 1 - /g3 - ] - /Type /Encoding ->> -endobj - -22 0 obj -<< - /Ascent 0 - /CapHeight 0 - /CharSet (/g3) - /Descent 0 - /Flags 4 - /FontBBox [ - 0 - 0 - 0 - 0 - ] - /FontFile3 28 0 R - /FontName /KPPLPG+Times-Bold+2 - /ItalicAngle 0 - /StemV 0 - /Type /FontDescriptor ->> -endobj - -23 0 obj -<< - /Differences [ - 1 - /g36 - /g74 - /g76 - /g73 - /g87 - /g3 - /g82 - /g79 - /g89 - /g72 - /g75 - /g68 - /g86 - /g69 - /g81 - /g92 - /g88 - /g85 - /g80 - /g48 - /g77 - /g83 - /g71 - /g17 - ] - /Type /Encoding ->> -endobj - -24 0 obj -<< - /Ascent 0 - /CapHeight 0 - /CharSet (/g80/g71/g75/g73/g87/g48/g69/g81/g83/g74/g77/g17/g92/g36/g72/g3/g89/g85/g68/g79/g88/g82/g76/g86) - /Descent 0 - /Flags 4 - /FontBBox [ - -32 - -277 - 923 - 777 - ] - /FontFile3 30 0 R - /FontName /KPPMKC+Palatino-Roman+2 - /ItalicAngle 0 - /StemV 0 - /Type /FontDescriptor ->> -endobj - -25 0 obj -<< - /Ascent 667 - /CapHeight 667 - /Descent -219 - /Flags 32 - /FontBBox [ - -177 - -250 - 1141 - 880 - ] - /FontName /ItcEras-Book - /ItalicAngle -2 - /StemH 44 - /StemV 60 - /Type /FontDescriptor - /XHeight 494 ->> -endobj - -26 0 obj -<< - /Ascent 667 - /CapHeight 667 - /Descent -224 - /Flags 262176 - /FontBBox [ - -169 - -250 - 1247 - 909 - ] - /FontName /ItcEras-Demi - /ItalicAngle -2.5 - /StemH 98 - /StemV 140 - /Type /FontDescriptor - /XHeight 497 ->> -endobj - -27 0 obj -<< - /Ascent 629 - /CapHeight 562 - /Descent -157 - /Flags 35 - /FontBBox [ - -28 - -250 - 628 - 805 - ] - /FontFile3 32 0 R - /FontName /Courier - /ItalicAngle 0 - /StemH 51 - /StemV 51 - /Type /FontDescriptor - /XHeight 426 ->> -endobj - -28 0 obj -<< - /Subtype /Type1C - /Length 29 0 R ->> -stream - -endstream -endobj - -%QDF: ignore_newline -29 0 obj -85 -endobj - -30 0 obj -<< - /Subtype /Type1C - /Length 31 0 R ->> -stream - -
"%(+.0369<?BEHXg80g71g75g73g87g48g69g81g83g74g77g17g92g36g72g3g89g85g68g79g88g82g76g86Palatino-Roman+2 -fs~xD=6\tztdlջdsv⌹Zhusni{cmG],;Ntpnomlkkilۃ{Ӿ||vookguuww}FIo}XBoudRSUm}cDrb~~xqqkeU~^rgfqgy\vxyy{}K'hy~~yu|iX9vX;Vϊysuqqrrp2=l|\IoxloqQ3\z\oɸ$kPPQSA3\z\ogw~}vmlhbgpyhnTXyttvxxoNJ~wqpmhej}l|lxts||spmtsuuwzP#Azxwvvuif{ccyovzqyrmjtwxy|hrry{~l{y~o{cy|~~}}qrttx}}»}xwpf!gp|k\Nytsskbbovyyurovwz|}f1|vrt}s{svxo}nli[gpr}«3~||~~||~-GkyXEo}vhv~oaalyx|i}{|}~}{z}ԝonnljen{|drKpMz_tqQ{yk~~gfedccom`RUekn~f{hzhr{~s@
mv)tgj2qztic~ja mI~mf<v]u~{qj
t<nzswxwwmoppv|z1}~unmjgmoqxww~x~|}{vmmjfYcggpy{steX|o`yjZqzÖ͓ʝXl}l[nvn{dqH|gZ{}P)}ZfprdUn|}.uj $`pŋ{|}~}~z~z~z|zl|\IoxloqQ]4zvfo|zzslaaa`mx|xzvugpvuͽ5k&}yrqlfquwpiybp}avrvxv~tvuux~|g*iyn}XBoudRSU^/^zZolyXEo}ujubmon~}|{|{ux|zkyXEo}uju7tvzy~|jmqgzwwxx{~~u`aSGAPt]]\]tPBbfh|{qef^WN~\rmoql{emprpx~~Ǘg3~||~~|z}nZ53\x\oƶiyauV~Lo=}}}Ȼ|zob;{{tzuppsvjk}nnvy~u|usq{z||~}nrvyzvpju}nao~| -endstream -endobj - -%QDF: ignore_newline -31 0 obj -5820 -endobj - -32 0 obj -<< - /Subtype /Type1C - /Length 33 0 R ->> -stream - -( -x -NJ
>
/l]";h!h V#0KgN(=(:QVl !!@!a!!!!""M"#Y###$$h${$$$%%^%%%%&I&&'w'((()1)*K+ -dw(=ikanmmmmw;`I-,+ 7 - -ȭ5RRNPUPQUQPPI=
,Aq_qT~ocekpjmn#0<\˺vzdh_Hwwy8rg09l^~+a@MlU&z! -3p֣tdXNNw?{XTD_DTorUD?Ẽ~h?NALpWYDӨ[;|}}j<DqwtDPllxl.=isUHHPtiV_ǭVXYcM T訨mTIJ\.QO[}\}s҅ǻx--;Z Ti:?H]\yfXLKCNU!MNTTwx?~UR~DGN{iX8SP4*UNL5\\enܷRUiK(RYvƳygyrtv&X~pfdg0Ng쮝c#>Q#MaruFc16;CLWaCi3蓨\Q9=pP\+뜵bE~I {Qj[[@7-01
˦7BL0rnjjWR - -c^6[T -br^`fcPKD1mPTBB`T1mFJTr-(]%]7TbZ¸WWT"$ZTE;T;AbmT6e/^'cU*~*I}"/]w**}ITTy%z,`eXj.[T.D]֦ѻP^qXwt??,`2|9|vY6GFwsQUӦy{hjl_Z[8V4PJEж|7*OYH\:N``|m*%!RMrzT|8T{JT%:C6</-:uur=Q:0`}gFCT[][QAF0(4Ҭ`|;RT_ZGU/'&̩Ų|?r!FB'P|&F<z_==y\\^egm.H5!/ -CަJjƓ&r`jBcf8y|uxW!T!Tlll
VCaQiH;-;,* 2֣.XmGIVUy,R5=J'%? +T9vEIf^XT8Tp8ȷݚYT|9TTDAcT,DTUhDXT|r}<xOi`\iVȨlAh-db`B/lTDT8TOĵj<MTTBuT>CT`22WdyywXdhgo}iX_momoܸ TX͎?Wtfda9mvl[FHm]XS8Tp8ϯ~F9TmR"T!4#+0,T';BL5UVaq|cA>5Og\gT8T-dcbT6I9.= -V] -\al[n}crpk9t:1%KhhmnyolkuwylXjPhlxi7u|ujRU%\ztы{垌ȣX|_G/ -|z4 ɜ~yt!-H}kkJId[YWVzleIkjIf]\aWWeGHmaûIe$:I5/?95w,w*`@+@+CL$L$zTT/M$M$zTT9=M$M$zTT?CrTz[M$M$[8UyEE T#Tq]x[Yr\zwuuS!T!T!!ӡ"%T!T܅qno1c[EA T!T!!ݢqGqGT -#wM -#T#T::M#wMM#T#TT}}o -ocekpjmnSԲбS&!n2Rui__3@oFt;'';:'':M>,@K+@F+@w`L+@F+@CrTz[M$M$[TTz[L$L$[p۹ocelpjmndocekpjmnepcekpjmn w/~"`- -w7.$uYt.Y`AT -O~ax8T&3g$IaTYtw٣˰x@͋wcm -~9|vY6GFwsQUӦy{hjl_Z[8V4PJEж~7*OYH\:N``2ÿޞ~9|vY6GFwsQUӦy{hjl_Z[8V4PJEж~7*OYH\:N`x8L6`2|O&i>'~9|vY6GFwsQUӦy{hjl_Z[8V4PJEж|7*OYH\:N``2óƥs@`UU``UU`Pvzzvvzzvs@q9|vY6GFwsQUӦy{hjl_Z[8V4P@JEжs@7*@OYH\:N``2Ҿ}w{xYqocgptt}troXWeGuzz{yz{ɻŞ9|vY6GFwsQUӦy{hjl_Z[8V4PJEж{7*OYH\:N`J -CަJjƓ&r<-(3;)3y(&Kz_==y\\^egm.H5!/ -CަJjƓ&r<z_==y\\^egm.H5!/ -CަJjƓ&rP8L6<^&i>'Kz_==y\\^egm.H5!/ -CަJjƓ&rVj%l~AcT,DT:n(3;)3y(&~AcT,DT8v8L6AcT,DTM&i>'~AcT,DTaҾ}wYqocgptttroXWeGuzzyzɻŞ9mvl[FHm]XS8Tp8ϯ~F9Tgj%l -R"T!4#+0,T';BL5U-(3;)3y(&R"T!4#+0,T';BL5UmR"T!4#+0,T';BL5U48L6^&i>'R"T!4#+0,T';BL5UҾ}wYqocgptttroXWeGuzzyzɻŞ,R"T!4#+0,T';BL5U¶\la%)bw*0@PFF/]|㘶zpP2Uc^USCV5rpz[؏Յe{AfLT[T>¸tuax^j%l"~9TYcW_KpnvmTbbpsxHa:|v(3;)3y(&~9TYcW_KpnvmTbbps|Haީy'8L6y!9{TYcW_KpnvmTbbpsyHaxU&i>'~9TYcW_KpnvmTbbpsxHVS&Ggj%l.GT:-STL*9T6VS&ފG08L6-GT:-STL*9T6a%)bw*0/~'T/$W54`.'بsdVHpG'9mvqcCUUVZVC--
pQwTz~~W}И+E}И+E - -endstream -endobj - -%QDF: ignore_newline -33 0 obj -19922 -endobj - -xref -0 34 -0000000000 65535 f -0000000025 00000 n -0000000097 00000 n -0000000331 00000 n -0000001413 00000 n -0000001433 00000 n -0000001561 00000 n -0000001673 00000 n -0000004066 00000 n -0000004087 00000 n -0000004374 00000 n -0000004670 00000 n -0000004751 00000 n -0000004936 00000 n -0000005310 00000 n -0000006925 00000 n -0000007829 00000 n -0000010054 00000 n -0000028727 00000 n -0000028750 00000 n -0000074159 00000 n -0000074182 00000 n -0000074258 00000 n -0000074496 00000 n -0000074779 00000 n -0000075122 00000 n -0000075364 00000 n -0000075613 00000 n -0000075867 00000 n -0000076050 00000 n -0000076070 00000 n -0000081988 00000 n -0000082010 00000 n -0000102030 00000 n -trailer << - /Info 2 0 R - /Root 1 0 R - /Size 34 - /ID [<66be986488f3991cf47a7d3b19e355e5><31415926535897932384626433832795>] ->> -startxref -102053 -%%EOF diff --git a/qpdf/qtest/qpdf/inline-images-cr.pdf b/qpdf/qtest/qpdf/inline-images-cr.pdf Binary files differdeleted file mode 100644 index 48861a73..00000000 --- a/qpdf/qtest/qpdf/inline-images-cr.pdf +++ /dev/null diff --git a/qpdf/qtest/qpdf/invalid-id-xref.out b/qpdf/qtest/qpdf/invalid-id-xref.out index 514d5a00..9ae4405d 100644 --- a/qpdf/qtest/qpdf/invalid-id-xref.out +++ b/qpdf/qtest/qpdf/invalid-id-xref.out @@ -1,6 +1,6 @@ -WARNING: invalid-id-xref.pdf (trailer, file position 2493795): invalid /ID in trailer dictionary +WARNING: invalid-id-xref.pdf (trailer, file position 731): invalid /ID in trailer dictionary checking invalid-id-xref.pdf -PDF Version: 1.1 +PDF Version: 1.4 R = 3 P = -1804 User password = diff --git a/qpdf/qtest/qpdf/invalid-id-xref.pdf b/qpdf/qtest/qpdf/invalid-id-xref.pdf Binary files differindex eaae8041..025d3e98 100644 --- a/qpdf/qtest/qpdf/invalid-id-xref.pdf +++ b/qpdf/qtest/qpdf/invalid-id-xref.pdf diff --git a/qpdf/qtest/qpdf/issue-106.out b/qpdf/qtest/qpdf/issue-106.out index 80ccdf74..d93b7274 100644 --- a/qpdf/qtest/qpdf/issue-106.out +++ b/qpdf/qtest/qpdf/issue-106.out @@ -1,4 +1,5 @@ -WARNING: issue-106.pdf (file position 56627): error decoding stream data for object 29 0: stream inflate: inflate: data: incorrect data check -WARNING: issue-106.pdf (file position 64303): error decoding stream data for object 30 0: stream inflate: inflate: data: incorrect data check -WARNING: issue-106.pdf (file position 67427): error decoding stream data for object 31 0: stream inflate: inflate: data: incorrect data check +WARNING: issue-106.pdf: file is damaged +WARNING: issue-106.pdf (file position 809): xref not found +WARNING: issue-106.pdf: Attempting to reconstruct cross-reference table +WARNING: issue-106.pdf (file position 965): error decoding stream data for object 8 0: stream inflate: inflate: data: incorrect data check qpdf: operation succeeded with warnings; resulting file may have some problems diff --git a/qpdf/qtest/qpdf/issue-106.pdf b/qpdf/qtest/qpdf/issue-106.pdf Binary files differindex c11ebc2b..e8a1ce0e 100644 --- a/qpdf/qtest/qpdf/issue-106.pdf +++ b/qpdf/qtest/qpdf/issue-106.pdf diff --git a/qpdf/qtest/qpdf/multiple-mods-check.out b/qpdf/qtest/qpdf/multiple-mods-check.out deleted file mode 100644 index 103b5341..00000000 --- a/qpdf/qtest/qpdf/multiple-mods-check.out +++ /dev/null @@ -1,6 +0,0 @@ -checking multiple-mods.pdf -PDF Version: 1.3 -File is not encrypted -File is not linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/multiple-mods.pdf b/qpdf/qtest/qpdf/multiple-mods.pdf Binary files differdeleted file mode 100644 index 6370cd65..00000000 --- a/qpdf/qtest/qpdf/multiple-mods.pdf +++ /dev/null diff --git a/qpdf/qtest/qpdf/old-and-complex-c-check.out b/qpdf/qtest/qpdf/old-and-complex-c-check.out deleted file mode 100644 index f55decbc..00000000 --- a/qpdf/qtest/qpdf/old-and-complex-c-check.out +++ /dev/null @@ -1,3 +0,0 @@ -version: 1.1 -linearized: 0 -encrypted: 0 diff --git a/qpdf/qtest/qpdf/old-and-complex-check.out b/qpdf/qtest/qpdf/old-and-complex-check.out deleted file mode 100644 index 2c651518..00000000 --- a/qpdf/qtest/qpdf/old-and-complex-check.out +++ /dev/null @@ -1,6 +0,0 @@ -checking old-and-complex.pdf -PDF Version: 1.1 -File is not encrypted -File is not linearized -No syntax or stream encoding errors found; the file may still contain -errors that qpdf cannot detect diff --git a/qpdf/qtest/qpdf/old-and-complex.pdf b/qpdf/qtest/qpdf/old-and-complex.pdf Binary files differdeleted file mode 100644 index 74b8c255..00000000 --- a/qpdf/qtest/qpdf/old-and-complex.pdf +++ /dev/null diff --git a/qpdf/qtest/qpdf/split-content-stream.out b/qpdf/qtest/qpdf/split-content-stream.out index 4941e63b..eb09d598 100644 --- a/qpdf/qtest/qpdf/split-content-stream.out +++ b/qpdf/qtest/qpdf/split-content-stream.out @@ -1,5 +1,5 @@ checking split-content-stream.pdf -PDF Version: 1.4 +PDF Version: 1.3 File is not encrypted File is not linearized No syntax or stream encoding errors found; the file may still contain diff --git a/qpdf/qtest/qpdf/split-content-stream.pdf b/qpdf/qtest/qpdf/split-content-stream.pdf Binary files differindex 92cbfc02..3910a7c7 100644 --- a/qpdf/qtest/qpdf/split-content-stream.pdf +++ b/qpdf/qtest/qpdf/split-content-stream.pdf diff --git a/qpdf/qtest/qpdf/zero-offset.out b/qpdf/qtest/qpdf/zero-offset.out index df991469..f789b165 100644 --- a/qpdf/qtest/qpdf/zero-offset.out +++ b/qpdf/qtest/qpdf/zero-offset.out @@ -2,4 +2,4 @@ checking zero-offset.pdf PDF Version: 1.3 File is not encrypted File is not linearized -WARNING: zero-offset.pdf (object 27 0): object has offset 0 +WARNING: zero-offset.pdf (object 6 0): object has offset 0 diff --git a/qpdf/qtest/qpdf/zero-offset.pdf b/qpdf/qtest/qpdf/zero-offset.pdf Binary files differindex ff59b457..2e71f176 100644 --- a/qpdf/qtest/qpdf/zero-offset.pdf +++ b/qpdf/qtest/qpdf/zero-offset.pdf |