aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2009-02-21 03:31:08 +0100
committerJay Berkenbilt <ejb@ql.org>2009-02-21 03:31:08 +0100
commit35d72c822e07017feac2c6be02c1d402f4992728 (patch)
tree9f19c27a0b418b78186f0f62950d32be3c6a283a
parentda7166bead13d09ad29f68ad64da5500c82d9be1 (diff)
downloadqpdf-35d72c822e07017feac2c6be02c1d402f4992728.tar.zst
better recovery for appended files with damaged cross-reference tables
git-svn-id: svn+q:///qpdf/trunk@648 71b93d88-0707-0410-a8cf-f5a4172ac649
-rw-r--r--qpdf/qpdf.testcov1
-rw-r--r--qpdf/qtest/qpdf.test25
-rw-r--r--qpdf/qtest/qpdf/append-page-content-damaged.out3
-rw-r--r--qpdf/qtest/qpdf/append-page-content-damaged.pdf1592
-rw-r--r--qpdf/qtest/qpdf/append-page-content-damaged.qdf1614
-rw-r--r--qpdf/qtest/qpdf/append-page-content-good.qdf1408
-rw-r--r--qpdf/qtest/qpdf/append-page-content.pdf1592
7 files changed, 6234 insertions, 1 deletions
diff --git a/qpdf/qpdf.testcov b/qpdf/qpdf.testcov
index 0c2c0416..93f850f4 100644
--- a/qpdf/qpdf.testcov
+++ b/qpdf/qpdf.testcov
@@ -116,3 +116,4 @@ QPDFWriter not recompressing /FlateDecode 0
QPDF piping xref stream from encrypted file 0
unable to filter 0
QPDF_String non-trivial UTF-16 0
+QPDF xref overwrite object 0
diff --git a/qpdf/qtest/qpdf.test b/qpdf/qtest/qpdf.test
index f1a7bdd0..0fec2af5 100644
--- a/qpdf/qtest/qpdf.test
+++ b/qpdf/qtest/qpdf.test
@@ -152,7 +152,7 @@ for (my $i = 1; $i <= scalar(@badfiles); ++$i)
show_ntests();
# ----------
$td->notify("--- Recovery Tests ---");
-$n_tests += @badfiles + 2;
+$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
@@ -189,6 +189,29 @@ $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
+# mostly there.
+$td->runtest("good replaced page contents",
+ {$td->COMMAND =>
+ "qpdf --static-id -qdf append-page-content.pdf a.pdf"},
+ {$td->STRING => "",
+ $td->EXIT_STATUS => 0},
+ $td->NORMALIZE_NEWLINES);
+$td->runtest("check output",
+ {$td->FILE => "a.pdf"},
+ {$td->FILE => "append-page-content-good.qdf"});
+$td->runtest("damaged replaced page contents",
+ {$td->COMMAND => "qpdf --static-id -qdf" .
+ " append-page-content-damaged.pdf a.pdf"},
+ {$td->FILE => "append-page-content-damaged.out",
+ $td->EXIT_STATUS => 0},
+ $td->NORMALIZE_NEWLINES);
+$td->runtest("check output",
+ {$td->FILE => "a.pdf"},
+ {$td->FILE => "append-page-content-damaged.qdf"});
+
show_ntests();
# ----------
$td->notify("--- Basic Parsing Tests ---");
diff --git a/qpdf/qtest/qpdf/append-page-content-damaged.out b/qpdf/qtest/qpdf/append-page-content-damaged.out
new file mode 100644
index 00000000..0e30aece
--- /dev/null
+++ b/qpdf/qtest/qpdf/append-page-content-damaged.out
@@ -0,0 +1,3 @@
+WARNING: append-page-content-damaged.pdf: offset 0: file is damaged
+WARNING: append-page-content-damaged.pdf: can't find startxref
+WARNING: Attempting to reconstruct cross-reference table
diff --git a/qpdf/qtest/qpdf/append-page-content-damaged.pdf b/qpdf/qtest/qpdf/append-page-content-damaged.pdf
new file mode 100644
index 00000000..7f15df33
--- /dev/null
+++ b/qpdf/qtest/qpdf/append-page-content-damaged.pdf
@@ -0,0 +1,1592 @@
+%PDF-1.3
+%¿÷¢þ
+%QDF-1.0
+
+1 0 obj
+<<
+ /PageLabels 107 0 R
+ /Pages 2 0 R
+ /Type /Catalog
+ /PageMode /UseOutlines
+ /Outlines 95 0 R
+>>
+endobj
+
+2 0 obj
+<<
+ /Count 30
+ /Kids [
+ 3 0 R
+ 4 0 R
+ 5 0 R
+ 6 0 R
+ 7 0 R
+ 8 0 R
+ 9 0 R
+ 10 0 R
+ 11 0 R
+ 12 0 R
+ 13 0 R
+ 14 0 R
+ 15 0 R
+ 16 0 R
+ 17 0 R
+ 18 0 R
+ 19 0 R
+ 20 0 R
+ 21 0 R
+ 22 0 R
+ 23 0 R
+ 24 0 R
+ 25 0 R
+ 26 0 R
+ 27 0 R
+ 28 0 R
+ 29 0 R
+ 30 0 R
+ 31 0 R
+ 32 0 R
+ ]
+ /Type /Pages
+>>
+endobj
+
+%% Page 1
+3 0 obj
+<<
+ /Contents 33 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 2
+4 0 obj
+<<
+ /Contents 37 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 3
+5 0 obj
+<<
+ /Contents 39 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 4
+6 0 obj
+<<
+ /Contents 41 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 5
+7 0 obj
+<<
+ /Contents 43 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 6
+8 0 obj
+<<
+ /Contents 45 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 7
+9 0 obj
+<<
+ /Contents 47 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 8
+10 0 obj
+<<
+ /Contents 49 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 9
+11 0 obj
+<<
+ /Contents 51 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 10
+12 0 obj
+<<
+ /Contents 53 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 11
+13 0 obj
+<<
+ /Contents 55 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 12
+14 0 obj
+<<
+ /Contents 57 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 13
+15 0 obj
+<<
+ /Contents 59 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 14
+16 0 obj
+<<
+ /Contents 61 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 15
+17 0 obj
+<<
+ /Contents 63 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 16
+18 0 obj
+<<
+ /Contents 65 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 17
+19 0 obj
+<<
+ /Contents 67 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 18
+20 0 obj
+<<
+ /Contents 69 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 19
+21 0 obj
+<<
+ /Contents 71 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 20
+22 0 obj
+<<
+ /Contents 73 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 21
+23 0 obj
+<<
+ /Contents 75 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 22
+24 0 obj
+<<
+ /Contents 77 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 23
+25 0 obj
+<<
+ /Contents 79 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 24
+26 0 obj
+<<
+ /Contents 81 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 25
+27 0 obj
+<<
+ /Contents 83 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 26
+28 0 obj
+<<
+ /Contents 85 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 27
+29 0 obj
+<<
+ /Contents 87 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 28
+30 0 obj
+<<
+ /Contents 89 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 29
+31 0 obj
+<<
+ /Contents 91 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 30
+32 0 obj
+<<
+ /Contents 93 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Contents for page 1
+33 0 obj
+<<
+ /Length 34 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 0) Tj
+ET
+endstream
+endobj
+
+34 0 obj
+46
+endobj
+
+35 0 obj
+<<
+ /BaseFont /Helvetica
+ /Encoding /WinAnsiEncoding
+ /Name /F1
+ /Subtype /Type1
+ /Type /Font
+>>
+endobj
+
+36 0 obj
+[
+ /PDF
+ /Text
+]
+endobj
+
+%% Contents for page 2
+37 0 obj
+<<
+ /Length 38 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 1) Tj
+ET
+endstream
+endobj
+
+38 0 obj
+46
+endobj
+
+%% Contents for page 3
+39 0 obj
+<<
+ /Length 40 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 2) Tj
+ET
+endstream
+endobj
+
+40 0 obj
+46
+endobj
+
+%% Contents for page 4
+41 0 obj
+<<
+ /Length 42 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 3) Tj
+ET
+endstream
+endobj
+
+42 0 obj
+46
+endobj
+
+%% Contents for page 5
+43 0 obj
+<<
+ /Length 44 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 4) Tj
+ET
+endstream
+endobj
+
+44 0 obj
+46
+endobj
+
+%% Contents for page 6
+45 0 obj
+<<
+ /Length 46 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 5) Tj
+ET
+endstream
+endobj
+
+46 0 obj
+46
+endobj
+
+%% Contents for page 7
+47 0 obj
+<<
+ /Length 48 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 6) Tj
+ET
+endstream
+endobj
+
+48 0 obj
+46
+endobj
+
+%% Contents for page 8
+49 0 obj
+<<
+ /Length 50 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 7) Tj
+ET
+endstream
+endobj
+
+50 0 obj
+46
+endobj
+
+%% Contents for page 9
+51 0 obj
+<<
+ /Length 52 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 8) Tj
+ET
+endstream
+endobj
+
+52 0 obj
+46
+endobj
+
+%% Contents for page 10
+53 0 obj
+<<
+ /Length 54 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 9) Tj
+ET
+endstream
+endobj
+
+54 0 obj
+46
+endobj
+
+%% Contents for page 11
+55 0 obj
+<<
+ /Length 56 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 10) Tj
+ET
+endstream
+endobj
+
+56 0 obj
+47
+endobj
+
+%% Contents for page 12
+57 0 obj
+<<
+ /Length 58 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 11) Tj
+ET
+endstream
+endobj
+
+58 0 obj
+47
+endobj
+
+%% Contents for page 13
+59 0 obj
+<<
+ /Length 60 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 12) Tj
+ET
+endstream
+endobj
+
+60 0 obj
+47
+endobj
+
+%% Contents for page 14
+61 0 obj
+<<
+ /Length 62 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 13) Tj
+ET
+endstream
+endobj
+
+62 0 obj
+47
+endobj
+
+%% Contents for page 15
+63 0 obj
+<<
+ /Length 64 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 14) Tj
+ET
+endstream
+endobj
+
+64 0 obj
+47
+endobj
+
+%% Contents for page 16
+65 0 obj
+<<
+ /Length 66 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 15) Tj
+ET
+endstream
+endobj
+
+66 0 obj
+47
+endobj
+
+%% Contents for page 17
+67 0 obj
+<<
+ /Length 68 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 16) Tj
+ET
+endstream
+endobj
+
+68 0 obj
+47
+endobj
+
+%% Contents for page 18
+69 0 obj
+<<
+ /Length 70 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 17) Tj
+ET
+endstream
+endobj
+
+70 0 obj
+47
+endobj
+
+%% Contents for page 19
+71 0 obj
+<<
+ /Length 72 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 18) Tj
+ET
+endstream
+endobj
+
+72 0 obj
+47
+endobj
+
+%% Contents for page 20
+73 0 obj
+<<
+ /Length 74 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 19) Tj
+ET
+endstream
+endobj
+
+74 0 obj
+47
+endobj
+
+%% Contents for page 21
+75 0 obj
+<<
+ /Length 76 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 20) Tj
+ET
+endstream
+endobj
+
+76 0 obj
+47
+endobj
+
+%% Contents for page 22
+77 0 obj
+<<
+ /Length 78 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 21) Tj
+ET
+endstream
+endobj
+
+78 0 obj
+47
+endobj
+
+%% Contents for page 23
+79 0 obj
+<<
+ /Length 80 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 22) Tj
+ET
+endstream
+endobj
+
+80 0 obj
+47
+endobj
+
+%% Contents for page 24
+81 0 obj
+<<
+ /Length 82 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 23) Tj
+ET
+endstream
+endobj
+
+82 0 obj
+47
+endobj
+
+%% Contents for page 25
+83 0 obj
+<<
+ /Length 84 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 24) Tj
+ET
+endstream
+endobj
+
+84 0 obj
+47
+endobj
+
+%% Contents for page 26
+85 0 obj
+<<
+ /Length 86 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 25) Tj
+ET
+endstream
+endobj
+
+86 0 obj
+47
+endobj
+
+%% Contents for page 27
+87 0 obj
+<<
+ /Length 88 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 26) Tj
+ET
+endstream
+endobj
+
+88 0 obj
+47
+endobj
+
+%% Contents for page 28
+89 0 obj
+<<
+ /Length 90 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 27) Tj
+ET
+endstream
+endobj
+
+90 0 obj
+47
+endobj
+
+%% Contents for page 29
+91 0 obj
+<<
+ /Length 92 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 28) Tj
+ET
+endstream
+endobj
+
+92 0 obj
+47
+endobj
+
+%% Contents for page 30
+93 0 obj
+<<
+ /Length 94 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 29) Tj
+ET
+endstream
+endobj
+
+94 0 obj
+47
+endobj
+
+95 0 obj
+<<
+ /Type /Outlines
+ /First 96 0 R
+ /Last 97 0 R
+ /Count 6
+>>
+endobj
+
+96 0 obj
+<<
+ /Type /Outline
+ /Title (Isís 1 -> 5: /XYZ null null null)
+ /Parent 95 0 R
+ /Count 4
+ /Next 97 0 R
+ /First 98 0 R
+ /Last 99 0 R
+ /Dest [ 8 0 R /XYZ null null null ]
+>>
+endobj
+
+97 0 obj
+<<
+ /Type /Outline
+ /Title (Trepak 2 -> 15: /XYZ 66 756 3)
+ /Parent 95 0 R
+ /Prev 96 0 R
+ /Dest [ 18 0 R /XYZ 66 756 3 ]
+>>
+endobj
+
+98 0 obj
+<<
+ /Type /Outline
+ /Title (Amanda 1.1 -> 11: /Fit)
+ /Parent 96 0 R
+ /Next 99 0 R
+ /First 100 0 R
+ /Last 101 0 R
+ /Count -3
+ /Dest [ 14 0 R /Fit ]
+>>
+endobj
+
+99 0 obj
+<<
+ /Type /Outline
+ % /Title (Sandy (Sandy [Greek]) 1.2 -> 13: /FitH 792)
+ /Title <feff00530061006e00640079002000f703a303b103bd03b403b900f700200031002e00320020002d003e002000310033003a0020002f00460069007400480020003700390032>
+ /Parent 96 0 R
+ /Prev 98 0 R
+ /First 105 0 R
+ /Last 106 0 R
+ /Count 2
+ /Dest [ 16 0 R /FitH 792 ]
+>>
+endobj
+
+100 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.1 -> 12: /FitV 100)
+ /Parent 98 0 R
+ /Next 101 0 R
+ /First 102 0 R
+ /Last 103 0 R
+ /Count -2
+ /Dest [ 15 0 R /FitV 100 ]
+>>
+endobj
+
+101 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.2 -> 12: /XYZ null null null)
+ /Parent 98 0 R
+ /Prev 100 0 R
+ /First 104 0 R
+ /Last 104 0 R
+ /Count 1
+ /Dest [ 15 0 R /XYZ null null null ]
+>>
+endobj
+
+102 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.1.1 -> 18: /XYZ null null null)
+ /Parent 100 0 R
+ /Next 103 0 R
+ /Dest [ 21 0 R /XYZ null null null ]
+>>
+endobj
+
+103 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.1.2 -> 19: /XYZ null null null)
+ /Parent 100 0 R
+ /Prev 102 0 R
+ /Dest [ 22 0 R /XYZ null null null ]
+>>
+endobj
+
+104 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.2.1 -> 22: /XYZ null null null)
+ /Parent 101 0 R
+ /Dest [ 25 0 R /XYZ null null null ]
+>>
+endobj
+
+105 0 obj
+<<
+ /Type /Outline
+ /Title (Trepsichord 1.2.1 -> 1: /FitR 66 714 180 770)
+ /Parent 99 0 R
+ /Next 106 0 R
+ /Dest [ 4 0 R /FitR 66 714 180 770 ]
+>>
+endobj
+
+106 0 obj
+<<
+ /Type /Outline
+ /Title (Trepsicle 1.2.2 -> 0: /XYZ null null null)
+ /Parent 99 0 R
+ /Prev 105 0 R
+ /Dest [ 3 0 R /XYZ null null null ]
+>>
+endobj
+
+107 0 obj
+ << /Nums [
+ 0 << /P () >>
+ 2 << /S /r /St 1 >>
+ 7 << /P () >>
+ 9 << /S /r /St 6 >>
+ 11 << /P () >>
+ 12 << /S /D /St 2 >>
+ 15 << /S /D /St 6 >>
+ 19 << /P () >>
+ 20 << /S /D /St 12 >>
+ 22 << /S /D /St 16059 >>
+ 23 << /S /r /St 50 >>
+ 29 << /S /r /St 54 >>
+ ] >>
+endobj
+
+xref
+0 108
+0000000000 65535 f
+0000000025 00000 n
+0000000145 00000 n
+0000000541 00000 n
+0000000746 00000 n
+0000000951 00000 n
+0000001156 00000 n
+0000001361 00000 n
+0000001566 00000 n
+0000001771 00000 n
+0000001976 00000 n
+0000002182 00000 n
+0000002389 00000 n
+0000002596 00000 n
+0000002803 00000 n
+0000003010 00000 n
+0000003217 00000 n
+0000003424 00000 n
+0000003631 00000 n
+0000003838 00000 n
+0000004045 00000 n
+0000004252 00000 n
+0000004459 00000 n
+0000004666 00000 n
+0000004873 00000 n
+0000005080 00000 n
+0000005287 00000 n
+0000005494 00000 n
+0000005701 00000 n
+0000005908 00000 n
+0000006115 00000 n
+0000006322 00000 n
+0000006529 00000 n
+0000006748 00000 n
+0000006851 00000 n
+0000006871 00000 n
+0000006990 00000 n
+0000007049 00000 n
+0000007152 00000 n
+0000007195 00000 n
+0000007298 00000 n
+0000007341 00000 n
+0000007444 00000 n
+0000007487 00000 n
+0000007590 00000 n
+0000007633 00000 n
+0000007736 00000 n
+0000007779 00000 n
+0000007882 00000 n
+0000007925 00000 n
+0000008028 00000 n
+0000008071 00000 n
+0000008174 00000 n
+0000008218 00000 n
+0000008321 00000 n
+0000008365 00000 n
+0000008469 00000 n
+0000008513 00000 n
+0000008617 00000 n
+0000008661 00000 n
+0000008765 00000 n
+0000008809 00000 n
+0000008913 00000 n
+0000008957 00000 n
+0000009061 00000 n
+0000009105 00000 n
+0000009209 00000 n
+0000009253 00000 n
+0000009357 00000 n
+0000009401 00000 n
+0000009505 00000 n
+0000009549 00000 n
+0000009653 00000 n
+0000009697 00000 n
+0000009801 00000 n
+0000009845 00000 n
+0000009949 00000 n
+0000009993 00000 n
+0000010097 00000 n
+0000010141 00000 n
+0000010245 00000 n
+0000010289 00000 n
+0000010393 00000 n
+0000010437 00000 n
+0000010541 00000 n
+0000010585 00000 n
+0000010689 00000 n
+0000010733 00000 n
+0000010837 00000 n
+0000010881 00000 n
+0000010985 00000 n
+0000011029 00000 n
+0000011133 00000 n
+0000011177 00000 n
+0000011281 00000 n
+0000011301 00000 n
+0000011388 00000 n
+0000011584 00000 n
+0000011730 00000 n
+0000011905 00000 n
+0000012258 00000 n
+0000012449 00000 n
+0000012659 00000 n
+0000012828 00000 n
+0000012997 00000 n
+0000013150 00000 n
+0000013319 00000 n
+0000013484 00000 n
+trailer <<
+ /Root 1 0 R
+ /Size 108
+>>
+startxref
+13801
+%%EOF
+
+% 1. Delete page labels
+xref
+0 1
+0000000107 65535 f
+107 1
+0000000000 00001 f
+trailer << /Root 1 0 R /Size 108 /Prev 13801 >>
+startxref
+16059
+%%EOF
+
+% 2. Delete outlines, reuse page labels.
+
+107 1 obj
+ << /Nums [
+ 0 << /P () >>
+ 2 << /S /D /St 1 >>
+ 7 << /P () >>
+ 9 << /S /R /St 6 >>
+ 11 << /P () >>
+ 12 << /S /r /St 2 >>
+ 15 << /S /r /St 6 >>
+ 19 << /P () >>
+ 20 << /S /R /St 12 >>
+ 22 << /S /D /St 16059 >>
+ 23 << /S /r /St 50 >>
+ 29 << /S /r /St 54 >>
+ ] >>
+endobj
+
+% Reuse object 1 with the same generation number. Leave outlines
+% there pointing to a deleted object.
+1 0 obj
+<<
+ /PageLabels 107 1 R
+ /Pages 2 0 R
+ /Type /Catalog
+ /PageMode /UseOutlines
+ /Outlines 95 0 R
+>>
+endobj
+
+% Reuse object 33 to replace contents for page 1
+33 0 obj
+<<
+ /Length 50
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 0 new) Tj
+ET
+endstream
+endobj
+
+% Delete object 34
+
+xref
+0 2
+0000000034 65535 f
+0000016648 00000 n
+33 2
+0000016817 00000 n
+0000000095 00001 f
+95 13
+0000000096 00001 f
+0000000097 00001 f
+0000000098 00001 f
+0000000099 00001 f
+0000000100 00001 f
+0000000101 00001 f
+0000000102 00001 f
+0000000103 00001 f
+0000000104 00001 f
+0000000105 00001 f
+0000000106 00001 f
+0000000000 00001 f
+0000016227 00001 n
+trailer << /Size 108 /Prev 16059 /Root 1 0 R >>
+startxref
+oops
+%%EOF
diff --git a/qpdf/qtest/qpdf/append-page-content-damaged.qdf b/qpdf/qtest/qpdf/append-page-content-damaged.qdf
new file mode 100644
index 00000000..d81bd676
--- /dev/null
+++ b/qpdf/qtest/qpdf/append-page-content-damaged.qdf
@@ -0,0 +1,1614 @@
+%PDF-1.3
+%¿÷¢þ
+%QDF-1.0
+
+1 0 obj
+<<
+ /Outlines 2 0 R
+ /PageLabels 3 0 R
+ /PageMode /UseOutlines
+ /Pages 4 0 R
+ /Type /Catalog
+>>
+endobj
+
+2 0 obj
+<<
+ /Count 6
+ /First 5 0 R
+ /Last 6 0 R
+ /Type /Outlines
+>>
+endobj
+
+3 0 obj
+<<
+ /Nums [
+ 0
+ <<
+ /P ()
+ >>
+ 2
+ <<
+ /S /D
+ /St 1
+ >>
+ 7
+ <<
+ /P ()
+ >>
+ 9
+ <<
+ /S /R
+ /St 6
+ >>
+ 11
+ <<
+ /P ()
+ >>
+ 12
+ <<
+ /S /r
+ /St 2
+ >>
+ 15
+ <<
+ /S /r
+ /St 6
+ >>
+ 19
+ <<
+ /P ()
+ >>
+ 20
+ <<
+ /S /R
+ /St 12
+ >>
+ 22
+ <<
+ /S /D
+ /St 16059
+ >>
+ 23
+ <<
+ /S /r
+ /St 50
+ >>
+ 29
+ <<
+ /S /r
+ /St 54
+ >>
+ ]
+>>
+endobj
+
+4 0 obj
+<<
+ /Count 30
+ /Kids [
+ 7 0 R
+ 8 0 R
+ 9 0 R
+ 10 0 R
+ 11 0 R
+ 12 0 R
+ 13 0 R
+ 14 0 R
+ 15 0 R
+ 16 0 R
+ 17 0 R
+ 18 0 R
+ 19 0 R
+ 20 0 R
+ 21 0 R
+ 22 0 R
+ 23 0 R
+ 24 0 R
+ 25 0 R
+ 26 0 R
+ 27 0 R
+ 28 0 R
+ 29 0 R
+ 30 0 R
+ 31 0 R
+ 32 0 R
+ 33 0 R
+ 34 0 R
+ 35 0 R
+ 36 0 R
+ ]
+ /Type /Pages
+>>
+endobj
+
+5 0 obj
+<<
+ /Count 4
+ /Dest [
+ 12 0 R
+ /XYZ
+ null
+ null
+ null
+ ]
+ /First 37 0 R
+ /Last 38 0 R
+ /Next 6 0 R
+ /Parent 2 0 R
+ /Title (Isís 1 -> 5: /XYZ null null null)
+ /Type /Outline
+>>
+endobj
+
+6 0 obj
+<<
+ /Dest [
+ 22 0 R
+ /XYZ
+ 66
+ 756
+ 3
+ ]
+ /Parent 2 0 R
+ /Prev 5 0 R
+ /Title (Trepak 2 -> 15: /XYZ 66 756 3)
+ /Type /Outline
+>>
+endobj
+
+%% Page 1
+7 0 obj
+<<
+ /Contents 39 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 2
+8 0 obj
+<<
+ /Contents 43 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 3
+9 0 obj
+<<
+ /Contents 45 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 4
+10 0 obj
+<<
+ /Contents 47 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 5
+11 0 obj
+<<
+ /Contents 49 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 6
+12 0 obj
+<<
+ /Contents 51 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 7
+13 0 obj
+<<
+ /Contents 53 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 8
+14 0 obj
+<<
+ /Contents 55 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 9
+15 0 obj
+<<
+ /Contents 57 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 10
+16 0 obj
+<<
+ /Contents 59 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 11
+17 0 obj
+<<
+ /Contents 61 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 12
+18 0 obj
+<<
+ /Contents 63 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 13
+19 0 obj
+<<
+ /Contents 65 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 14
+20 0 obj
+<<
+ /Contents 67 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 15
+21 0 obj
+<<
+ /Contents 69 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 16
+22 0 obj
+<<
+ /Contents 71 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 17
+23 0 obj
+<<
+ /Contents 73 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 18
+24 0 obj
+<<
+ /Contents 75 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 19
+25 0 obj
+<<
+ /Contents 77 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 20
+26 0 obj
+<<
+ /Contents 79 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 21
+27 0 obj
+<<
+ /Contents 81 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 22
+28 0 obj
+<<
+ /Contents 83 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 23
+29 0 obj
+<<
+ /Contents 85 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 24
+30 0 obj
+<<
+ /Contents 87 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 25
+31 0 obj
+<<
+ /Contents 89 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 26
+32 0 obj
+<<
+ /Contents 91 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 27
+33 0 obj
+<<
+ /Contents 93 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 28
+34 0 obj
+<<
+ /Contents 95 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 29
+35 0 obj
+<<
+ /Contents 97 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 30
+36 0 obj
+<<
+ /Contents 99 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 41 0 R
+ >>
+ /ProcSet 42 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+37 0 obj
+<<
+ /Count -3
+ /Dest [
+ 18 0 R
+ /Fit
+ ]
+ /First 101 0 R
+ /Last 102 0 R
+ /Next 38 0 R
+ /Parent 5 0 R
+ /Title (Amanda 1.1 -> 11: /Fit)
+ /Type /Outline
+>>
+endobj
+
+38 0 obj
+<<
+ /Count 2
+ /Dest [
+ 20 0 R
+ /FitH
+ 792
+ ]
+ /First 103 0 R
+ /Last 104 0 R
+ /Parent 5 0 R
+ /Prev 37 0 R
+ /Title <feff00530061006e00640079002000f703a303b103bd03b403b900f700200031002e00320020002d003e002000310033003a0020002f00460069007400480020003700390032>
+ /Type /Outline
+>>
+endobj
+
+%% Contents for page 1
+39 0 obj
+<<
+ /Length 40 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 0 new) Tj
+ET
+endstream
+endobj
+
+40 0 obj
+50
+endobj
+
+41 0 obj
+<<
+ /BaseFont /Helvetica
+ /Encoding /WinAnsiEncoding
+ /Name /F1
+ /Subtype /Type1
+ /Type /Font
+>>
+endobj
+
+42 0 obj
+[
+ /PDF
+ /Text
+]
+endobj
+
+%% Contents for page 2
+43 0 obj
+<<
+ /Length 44 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 1) Tj
+ET
+endstream
+endobj
+
+44 0 obj
+46
+endobj
+
+%% Contents for page 3
+45 0 obj
+<<
+ /Length 46 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 2) Tj
+ET
+endstream
+endobj
+
+46 0 obj
+46
+endobj
+
+%% Contents for page 4
+47 0 obj
+<<
+ /Length 48 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 3) Tj
+ET
+endstream
+endobj
+
+48 0 obj
+46
+endobj
+
+%% Contents for page 5
+49 0 obj
+<<
+ /Length 50 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 4) Tj
+ET
+endstream
+endobj
+
+50 0 obj
+46
+endobj
+
+%% Contents for page 6
+51 0 obj
+<<
+ /Length 52 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 5) Tj
+ET
+endstream
+endobj
+
+52 0 obj
+46
+endobj
+
+%% Contents for page 7
+53 0 obj
+<<
+ /Length 54 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 6) Tj
+ET
+endstream
+endobj
+
+54 0 obj
+46
+endobj
+
+%% Contents for page 8
+55 0 obj
+<<
+ /Length 56 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 7) Tj
+ET
+endstream
+endobj
+
+56 0 obj
+46
+endobj
+
+%% Contents for page 9
+57 0 obj
+<<
+ /Length 58 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 8) Tj
+ET
+endstream
+endobj
+
+58 0 obj
+46
+endobj
+
+%% Contents for page 10
+59 0 obj
+<<
+ /Length 60 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 9) Tj
+ET
+endstream
+endobj
+
+60 0 obj
+46
+endobj
+
+%% Contents for page 11
+61 0 obj
+<<
+ /Length 62 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 10) Tj
+ET
+endstream
+endobj
+
+62 0 obj
+47
+endobj
+
+%% Contents for page 12
+63 0 obj
+<<
+ /Length 64 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 11) Tj
+ET
+endstream
+endobj
+
+64 0 obj
+47
+endobj
+
+%% Contents for page 13
+65 0 obj
+<<
+ /Length 66 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 12) Tj
+ET
+endstream
+endobj
+
+66 0 obj
+47
+endobj
+
+%% Contents for page 14
+67 0 obj
+<<
+ /Length 68 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 13) Tj
+ET
+endstream
+endobj
+
+68 0 obj
+47
+endobj
+
+%% Contents for page 15
+69 0 obj
+<<
+ /Length 70 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 14) Tj
+ET
+endstream
+endobj
+
+70 0 obj
+47
+endobj
+
+%% Contents for page 16
+71 0 obj
+<<
+ /Length 72 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 15) Tj
+ET
+endstream
+endobj
+
+72 0 obj
+47
+endobj
+
+%% Contents for page 17
+73 0 obj
+<<
+ /Length 74 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 16) Tj
+ET
+endstream
+endobj
+
+74 0 obj
+47
+endobj
+
+%% Contents for page 18
+75 0 obj
+<<
+ /Length 76 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 17) Tj
+ET
+endstream
+endobj
+
+76 0 obj
+47
+endobj
+
+%% Contents for page 19
+77 0 obj
+<<
+ /Length 78 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 18) Tj
+ET
+endstream
+endobj
+
+78 0 obj
+47
+endobj
+
+%% Contents for page 20
+79 0 obj
+<<
+ /Length 80 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 19) Tj
+ET
+endstream
+endobj
+
+80 0 obj
+47
+endobj
+
+%% Contents for page 21
+81 0 obj
+<<
+ /Length 82 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 20) Tj
+ET
+endstream
+endobj
+
+82 0 obj
+47
+endobj
+
+%% Contents for page 22
+83 0 obj
+<<
+ /Length 84 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 21) Tj
+ET
+endstream
+endobj
+
+84 0 obj
+47
+endobj
+
+%% Contents for page 23
+85 0 obj
+<<
+ /Length 86 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 22) Tj
+ET
+endstream
+endobj
+
+86 0 obj
+47
+endobj
+
+%% Contents for page 24
+87 0 obj
+<<
+ /Length 88 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 23) Tj
+ET
+endstream
+endobj
+
+88 0 obj
+47
+endobj
+
+%% Contents for page 25
+89 0 obj
+<<
+ /Length 90 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 24) Tj
+ET
+endstream
+endobj
+
+90 0 obj
+47
+endobj
+
+%% Contents for page 26
+91 0 obj
+<<
+ /Length 92 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 25) Tj
+ET
+endstream
+endobj
+
+92 0 obj
+47
+endobj
+
+%% Contents for page 27
+93 0 obj
+<<
+ /Length 94 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 26) Tj
+ET
+endstream
+endobj
+
+94 0 obj
+47
+endobj
+
+%% Contents for page 28
+95 0 obj
+<<
+ /Length 96 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 27) Tj
+ET
+endstream
+endobj
+
+96 0 obj
+47
+endobj
+
+%% Contents for page 29
+97 0 obj
+<<
+ /Length 98 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 28) Tj
+ET
+endstream
+endobj
+
+98 0 obj
+47
+endobj
+
+%% Contents for page 30
+99 0 obj
+<<
+ /Length 100 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 29) Tj
+ET
+endstream
+endobj
+
+100 0 obj
+47
+endobj
+
+101 0 obj
+<<
+ /Count -2
+ /Dest [
+ 19 0 R
+ /FitV
+ 100
+ ]
+ /First 105 0 R
+ /Last 106 0 R
+ /Next 102 0 R
+ /Parent 37 0 R
+ /Title (Isosicle 1.1.1 -> 12: /FitV 100)
+ /Type /Outline
+>>
+endobj
+
+102 0 obj
+<<
+ /Count 1
+ /Dest [
+ 19 0 R
+ /XYZ
+ null
+ null
+ null
+ ]
+ /First 107 0 R
+ /Last 107 0 R
+ /Parent 37 0 R
+ /Prev 101 0 R
+ /Title (Isosicle 1.1.2 -> 12: /XYZ null null null)
+ /Type /Outline
+>>
+endobj
+
+103 0 obj
+<<
+ /Dest [
+ 8 0 R
+ /FitR
+ 66
+ 714
+ 180
+ 770
+ ]
+ /Next 104 0 R
+ /Parent 38 0 R
+ /Title (Trepsichord 1.2.1 -> 1: /FitR 66 714 180 770)
+ /Type /Outline
+>>
+endobj
+
+104 0 obj
+<<
+ /Dest [
+ 7 0 R
+ /XYZ
+ null
+ null
+ null
+ ]
+ /Parent 38 0 R
+ /Prev 103 0 R
+ /Title (Trepsicle 1.2.2 -> 0: /XYZ null null null)
+ /Type /Outline
+>>
+endobj
+
+105 0 obj
+<<
+ /Dest [
+ 25 0 R
+ /XYZ
+ null
+ null
+ null
+ ]
+ /Next 106 0 R
+ /Parent 101 0 R
+ /Title (Isosicle 1.1.1.1 -> 18: /XYZ null null null)
+ /Type /Outline
+>>
+endobj
+
+106 0 obj
+<<
+ /Dest [
+ 26 0 R
+ /XYZ
+ null
+ null
+ null
+ ]
+ /Parent 101 0 R
+ /Prev 105 0 R
+ /Title (Isosicle 1.1.1.2 -> 19: /XYZ null null null)
+ /Type /Outline
+>>
+endobj
+
+107 0 obj
+<<
+ /Dest [
+ 29 0 R
+ /XYZ
+ null
+ null
+ null
+ ]
+ /Parent 102 0 R
+ /Title (Isosicle 1.1.2.1 -> 22: /XYZ null null null)
+ /Type /Outline
+>>
+endobj
+
+xref
+0 108
+0000000000 65535 f
+0000000025 00000 n
+0000000142 00000 n
+0000000222 00000 n
+0000000753 00000 n
+0000001143 00000 n
+0000001359 00000 n
+0000001534 00000 n
+0000001739 00000 n
+0000001944 00000 n
+0000002149 00000 n
+0000002355 00000 n
+0000002561 00000 n
+0000002767 00000 n
+0000002973 00000 n
+0000003179 00000 n
+0000003386 00000 n
+0000003593 00000 n
+0000003800 00000 n
+0000004007 00000 n
+0000004214 00000 n
+0000004421 00000 n
+0000004628 00000 n
+0000004835 00000 n
+0000005042 00000 n
+0000005249 00000 n
+0000005456 00000 n
+0000005663 00000 n
+0000005870 00000 n
+0000006077 00000 n
+0000006284 00000 n
+0000006491 00000 n
+0000006698 00000 n
+0000006905 00000 n
+0000007112 00000 n
+0000007319 00000 n
+0000007526 00000 n
+0000007722 00000 n
+0000007906 00000 n
+0000008239 00000 n
+0000008346 00000 n
+0000008366 00000 n
+0000008485 00000 n
+0000008544 00000 n
+0000008647 00000 n
+0000008690 00000 n
+0000008793 00000 n
+0000008836 00000 n
+0000008939 00000 n
+0000008982 00000 n
+0000009085 00000 n
+0000009128 00000 n
+0000009231 00000 n
+0000009274 00000 n
+0000009377 00000 n
+0000009420 00000 n
+0000009523 00000 n
+0000009566 00000 n
+0000009669 00000 n
+0000009713 00000 n
+0000009816 00000 n
+0000009860 00000 n
+0000009964 00000 n
+0000010008 00000 n
+0000010112 00000 n
+0000010156 00000 n
+0000010260 00000 n
+0000010304 00000 n
+0000010408 00000 n
+0000010452 00000 n
+0000010556 00000 n
+0000010600 00000 n
+0000010704 00000 n
+0000010748 00000 n
+0000010852 00000 n
+0000010896 00000 n
+0000011000 00000 n
+0000011044 00000 n
+0000011148 00000 n
+0000011192 00000 n
+0000011296 00000 n
+0000011340 00000 n
+0000011444 00000 n
+0000011488 00000 n
+0000011592 00000 n
+0000011636 00000 n
+0000011740 00000 n
+0000011784 00000 n
+0000011888 00000 n
+0000011932 00000 n
+0000012036 00000 n
+0000012080 00000 n
+0000012184 00000 n
+0000012228 00000 n
+0000012332 00000 n
+0000012376 00000 n
+0000012480 00000 n
+0000012524 00000 n
+0000012628 00000 n
+0000012672 00000 n
+0000012777 00000 n
+0000012798 00000 n
+0000013003 00000 n
+0000013235 00000 n
+0000013430 00000 n
+0000013617 00000 n
+0000013808 00000 n
+0000013999 00000 n
+trailer <<
+ /Root 1 0 R
+ /Size 108
+ /ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
+>>
+startxref
+14174
+%%EOF
diff --git a/qpdf/qtest/qpdf/append-page-content-good.qdf b/qpdf/qtest/qpdf/append-page-content-good.qdf
new file mode 100644
index 00000000..7f11503a
--- /dev/null
+++ b/qpdf/qtest/qpdf/append-page-content-good.qdf
@@ -0,0 +1,1408 @@
+%PDF-1.3
+%¿÷¢þ
+%QDF-1.0
+
+1 0 obj
+<<
+ /PageLabels 2 0 R
+ /PageMode /UseOutlines
+ /Pages 3 0 R
+ /Type /Catalog
+>>
+endobj
+
+2 0 obj
+<<
+ /Nums [
+ 0
+ <<
+ /P ()
+ >>
+ 2
+ <<
+ /S /D
+ /St 1
+ >>
+ 7
+ <<
+ /P ()
+ >>
+ 9
+ <<
+ /S /R
+ /St 6
+ >>
+ 11
+ <<
+ /P ()
+ >>
+ 12
+ <<
+ /S /r
+ /St 2
+ >>
+ 15
+ <<
+ /S /r
+ /St 6
+ >>
+ 19
+ <<
+ /P ()
+ >>
+ 20
+ <<
+ /S /R
+ /St 12
+ >>
+ 22
+ <<
+ /S /D
+ /St 16059
+ >>
+ 23
+ <<
+ /S /r
+ /St 50
+ >>
+ 29
+ <<
+ /S /r
+ /St 54
+ >>
+ ]
+>>
+endobj
+
+3 0 obj
+<<
+ /Count 30
+ /Kids [
+ 4 0 R
+ 5 0 R
+ 6 0 R
+ 7 0 R
+ 8 0 R
+ 9 0 R
+ 10 0 R
+ 11 0 R
+ 12 0 R
+ 13 0 R
+ 14 0 R
+ 15 0 R
+ 16 0 R
+ 17 0 R
+ 18 0 R
+ 19 0 R
+ 20 0 R
+ 21 0 R
+ 22 0 R
+ 23 0 R
+ 24 0 R
+ 25 0 R
+ 26 0 R
+ 27 0 R
+ 28 0 R
+ 29 0 R
+ 30 0 R
+ 31 0 R
+ 32 0 R
+ 33 0 R
+ ]
+ /Type /Pages
+>>
+endobj
+
+%% Page 1
+4 0 obj
+<<
+ /Contents 34 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 2
+5 0 obj
+<<
+ /Contents 38 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 3
+6 0 obj
+<<
+ /Contents 40 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 4
+7 0 obj
+<<
+ /Contents 42 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 5
+8 0 obj
+<<
+ /Contents 44 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 6
+9 0 obj
+<<
+ /Contents 46 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 7
+10 0 obj
+<<
+ /Contents 48 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 8
+11 0 obj
+<<
+ /Contents 50 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 9
+12 0 obj
+<<
+ /Contents 52 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 10
+13 0 obj
+<<
+ /Contents 54 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 11
+14 0 obj
+<<
+ /Contents 56 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 12
+15 0 obj
+<<
+ /Contents 58 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 13
+16 0 obj
+<<
+ /Contents 60 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 14
+17 0 obj
+<<
+ /Contents 62 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 15
+18 0 obj
+<<
+ /Contents 64 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 16
+19 0 obj
+<<
+ /Contents 66 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 17
+20 0 obj
+<<
+ /Contents 68 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 18
+21 0 obj
+<<
+ /Contents 70 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 19
+22 0 obj
+<<
+ /Contents 72 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 20
+23 0 obj
+<<
+ /Contents 74 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 21
+24 0 obj
+<<
+ /Contents 76 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 22
+25 0 obj
+<<
+ /Contents 78 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 23
+26 0 obj
+<<
+ /Contents 80 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 24
+27 0 obj
+<<
+ /Contents 82 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 25
+28 0 obj
+<<
+ /Contents 84 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 26
+29 0 obj
+<<
+ /Contents 86 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 27
+30 0 obj
+<<
+ /Contents 88 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 28
+31 0 obj
+<<
+ /Contents 90 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 29
+32 0 obj
+<<
+ /Contents 92 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 30
+33 0 obj
+<<
+ /Contents 94 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 3 0 R
+ /Resources <<
+ /Font <<
+ /F1 36 0 R
+ >>
+ /ProcSet 37 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Contents for page 1
+34 0 obj
+<<
+ /Length 35 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 0 new) Tj
+ET
+endstream
+endobj
+
+35 0 obj
+50
+endobj
+
+36 0 obj
+<<
+ /BaseFont /Helvetica
+ /Encoding /WinAnsiEncoding
+ /Name /F1
+ /Subtype /Type1
+ /Type /Font
+>>
+endobj
+
+37 0 obj
+[
+ /PDF
+ /Text
+]
+endobj
+
+%% Contents for page 2
+38 0 obj
+<<
+ /Length 39 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 1) Tj
+ET
+endstream
+endobj
+
+39 0 obj
+46
+endobj
+
+%% Contents for page 3
+40 0 obj
+<<
+ /Length 41 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 2) Tj
+ET
+endstream
+endobj
+
+41 0 obj
+46
+endobj
+
+%% Contents for page 4
+42 0 obj
+<<
+ /Length 43 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 3) Tj
+ET
+endstream
+endobj
+
+43 0 obj
+46
+endobj
+
+%% Contents for page 5
+44 0 obj
+<<
+ /Length 45 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 4) Tj
+ET
+endstream
+endobj
+
+45 0 obj
+46
+endobj
+
+%% Contents for page 6
+46 0 obj
+<<
+ /Length 47 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 5) Tj
+ET
+endstream
+endobj
+
+47 0 obj
+46
+endobj
+
+%% Contents for page 7
+48 0 obj
+<<
+ /Length 49 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 6) Tj
+ET
+endstream
+endobj
+
+49 0 obj
+46
+endobj
+
+%% Contents for page 8
+50 0 obj
+<<
+ /Length 51 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 7) Tj
+ET
+endstream
+endobj
+
+51 0 obj
+46
+endobj
+
+%% Contents for page 9
+52 0 obj
+<<
+ /Length 53 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 8) Tj
+ET
+endstream
+endobj
+
+53 0 obj
+46
+endobj
+
+%% Contents for page 10
+54 0 obj
+<<
+ /Length 55 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 9) Tj
+ET
+endstream
+endobj
+
+55 0 obj
+46
+endobj
+
+%% Contents for page 11
+56 0 obj
+<<
+ /Length 57 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 10) Tj
+ET
+endstream
+endobj
+
+57 0 obj
+47
+endobj
+
+%% Contents for page 12
+58 0 obj
+<<
+ /Length 59 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 11) Tj
+ET
+endstream
+endobj
+
+59 0 obj
+47
+endobj
+
+%% Contents for page 13
+60 0 obj
+<<
+ /Length 61 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 12) Tj
+ET
+endstream
+endobj
+
+61 0 obj
+47
+endobj
+
+%% Contents for page 14
+62 0 obj
+<<
+ /Length 63 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 13) Tj
+ET
+endstream
+endobj
+
+63 0 obj
+47
+endobj
+
+%% Contents for page 15
+64 0 obj
+<<
+ /Length 65 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 14) Tj
+ET
+endstream
+endobj
+
+65 0 obj
+47
+endobj
+
+%% Contents for page 16
+66 0 obj
+<<
+ /Length 67 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 15) Tj
+ET
+endstream
+endobj
+
+67 0 obj
+47
+endobj
+
+%% Contents for page 17
+68 0 obj
+<<
+ /Length 69 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 16) Tj
+ET
+endstream
+endobj
+
+69 0 obj
+47
+endobj
+
+%% Contents for page 18
+70 0 obj
+<<
+ /Length 71 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 17) Tj
+ET
+endstream
+endobj
+
+71 0 obj
+47
+endobj
+
+%% Contents for page 19
+72 0 obj
+<<
+ /Length 73 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 18) Tj
+ET
+endstream
+endobj
+
+73 0 obj
+47
+endobj
+
+%% Contents for page 20
+74 0 obj
+<<
+ /Length 75 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 19) Tj
+ET
+endstream
+endobj
+
+75 0 obj
+47
+endobj
+
+%% Contents for page 21
+76 0 obj
+<<
+ /Length 77 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 20) Tj
+ET
+endstream
+endobj
+
+77 0 obj
+47
+endobj
+
+%% Contents for page 22
+78 0 obj
+<<
+ /Length 79 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 21) Tj
+ET
+endstream
+endobj
+
+79 0 obj
+47
+endobj
+
+%% Contents for page 23
+80 0 obj
+<<
+ /Length 81 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 22) Tj
+ET
+endstream
+endobj
+
+81 0 obj
+47
+endobj
+
+%% Contents for page 24
+82 0 obj
+<<
+ /Length 83 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 23) Tj
+ET
+endstream
+endobj
+
+83 0 obj
+47
+endobj
+
+%% Contents for page 25
+84 0 obj
+<<
+ /Length 85 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 24) Tj
+ET
+endstream
+endobj
+
+85 0 obj
+47
+endobj
+
+%% Contents for page 26
+86 0 obj
+<<
+ /Length 87 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 25) Tj
+ET
+endstream
+endobj
+
+87 0 obj
+47
+endobj
+
+%% Contents for page 27
+88 0 obj
+<<
+ /Length 89 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 26) Tj
+ET
+endstream
+endobj
+
+89 0 obj
+47
+endobj
+
+%% Contents for page 28
+90 0 obj
+<<
+ /Length 91 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 27) Tj
+ET
+endstream
+endobj
+
+91 0 obj
+47
+endobj
+
+%% Contents for page 29
+92 0 obj
+<<
+ /Length 93 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 28) Tj
+ET
+endstream
+endobj
+
+93 0 obj
+47
+endobj
+
+%% Contents for page 30
+94 0 obj
+<<
+ /Length 95 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 29) Tj
+ET
+endstream
+endobj
+
+95 0 obj
+47
+endobj
+
+xref
+0 96
+0000000000 65535 f
+0000000025 00000 n
+0000000124 00000 n
+0000000655 00000 n
+0000001052 00000 n
+0000001257 00000 n
+0000001462 00000 n
+0000001667 00000 n
+0000001872 00000 n
+0000002077 00000 n
+0000002282 00000 n
+0000002488 00000 n
+0000002694 00000 n
+0000002901 00000 n
+0000003108 00000 n
+0000003315 00000 n
+0000003522 00000 n
+0000003729 00000 n
+0000003936 00000 n
+0000004143 00000 n
+0000004350 00000 n
+0000004557 00000 n
+0000004764 00000 n
+0000004971 00000 n
+0000005178 00000 n
+0000005385 00000 n
+0000005592 00000 n
+0000005799 00000 n
+0000006006 00000 n
+0000006213 00000 n
+0000006420 00000 n
+0000006627 00000 n
+0000006834 00000 n
+0000007041 00000 n
+0000007260 00000 n
+0000007367 00000 n
+0000007387 00000 n
+0000007506 00000 n
+0000007565 00000 n
+0000007668 00000 n
+0000007711 00000 n
+0000007814 00000 n
+0000007857 00000 n
+0000007960 00000 n
+0000008003 00000 n
+0000008106 00000 n
+0000008149 00000 n
+0000008252 00000 n
+0000008295 00000 n
+0000008398 00000 n
+0000008441 00000 n
+0000008544 00000 n
+0000008587 00000 n
+0000008690 00000 n
+0000008734 00000 n
+0000008837 00000 n
+0000008881 00000 n
+0000008985 00000 n
+0000009029 00000 n
+0000009133 00000 n
+0000009177 00000 n
+0000009281 00000 n
+0000009325 00000 n
+0000009429 00000 n
+0000009473 00000 n
+0000009577 00000 n
+0000009621 00000 n
+0000009725 00000 n
+0000009769 00000 n
+0000009873 00000 n
+0000009917 00000 n
+0000010021 00000 n
+0000010065 00000 n
+0000010169 00000 n
+0000010213 00000 n
+0000010317 00000 n
+0000010361 00000 n
+0000010465 00000 n
+0000010509 00000 n
+0000010613 00000 n
+0000010657 00000 n
+0000010761 00000 n
+0000010805 00000 n
+0000010909 00000 n
+0000010953 00000 n
+0000011057 00000 n
+0000011101 00000 n
+0000011205 00000 n
+0000011249 00000 n
+0000011353 00000 n
+0000011397 00000 n
+0000011501 00000 n
+0000011545 00000 n
+0000011649 00000 n
+0000011693 00000 n
+0000011797 00000 n
+trailer <<
+ /Root 1 0 R
+ /Size 96
+ /ID [<31415926535897932384626433832795><31415926535897932384626433832795>]
+>>
+startxref
+11817
+%%EOF
diff --git a/qpdf/qtest/qpdf/append-page-content.pdf b/qpdf/qtest/qpdf/append-page-content.pdf
new file mode 100644
index 00000000..38fd28f9
--- /dev/null
+++ b/qpdf/qtest/qpdf/append-page-content.pdf
@@ -0,0 +1,1592 @@
+%PDF-1.3
+%¿÷¢þ
+%QDF-1.0
+
+1 0 obj
+<<
+ /PageLabels 107 0 R
+ /Pages 2 0 R
+ /Type /Catalog
+ /PageMode /UseOutlines
+ /Outlines 95 0 R
+>>
+endobj
+
+2 0 obj
+<<
+ /Count 30
+ /Kids [
+ 3 0 R
+ 4 0 R
+ 5 0 R
+ 6 0 R
+ 7 0 R
+ 8 0 R
+ 9 0 R
+ 10 0 R
+ 11 0 R
+ 12 0 R
+ 13 0 R
+ 14 0 R
+ 15 0 R
+ 16 0 R
+ 17 0 R
+ 18 0 R
+ 19 0 R
+ 20 0 R
+ 21 0 R
+ 22 0 R
+ 23 0 R
+ 24 0 R
+ 25 0 R
+ 26 0 R
+ 27 0 R
+ 28 0 R
+ 29 0 R
+ 30 0 R
+ 31 0 R
+ 32 0 R
+ ]
+ /Type /Pages
+>>
+endobj
+
+%% Page 1
+3 0 obj
+<<
+ /Contents 33 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 2
+4 0 obj
+<<
+ /Contents 37 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 3
+5 0 obj
+<<
+ /Contents 39 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 4
+6 0 obj
+<<
+ /Contents 41 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 5
+7 0 obj
+<<
+ /Contents 43 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 6
+8 0 obj
+<<
+ /Contents 45 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 7
+9 0 obj
+<<
+ /Contents 47 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 8
+10 0 obj
+<<
+ /Contents 49 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 9
+11 0 obj
+<<
+ /Contents 51 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 10
+12 0 obj
+<<
+ /Contents 53 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 11
+13 0 obj
+<<
+ /Contents 55 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 12
+14 0 obj
+<<
+ /Contents 57 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 13
+15 0 obj
+<<
+ /Contents 59 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 14
+16 0 obj
+<<
+ /Contents 61 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 15
+17 0 obj
+<<
+ /Contents 63 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 16
+18 0 obj
+<<
+ /Contents 65 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 17
+19 0 obj
+<<
+ /Contents 67 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 18
+20 0 obj
+<<
+ /Contents 69 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 19
+21 0 obj
+<<
+ /Contents 71 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 20
+22 0 obj
+<<
+ /Contents 73 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 21
+23 0 obj
+<<
+ /Contents 75 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 22
+24 0 obj
+<<
+ /Contents 77 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 23
+25 0 obj
+<<
+ /Contents 79 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 24
+26 0 obj
+<<
+ /Contents 81 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 25
+27 0 obj
+<<
+ /Contents 83 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 26
+28 0 obj
+<<
+ /Contents 85 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 27
+29 0 obj
+<<
+ /Contents 87 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 28
+30 0 obj
+<<
+ /Contents 89 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 29
+31 0 obj
+<<
+ /Contents 91 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Page 30
+32 0 obj
+<<
+ /Contents 93 0 R
+ /MediaBox [
+ 0
+ 0
+ 612
+ 792
+ ]
+ /Parent 2 0 R
+ /Resources <<
+ /Font <<
+ /F1 35 0 R
+ >>
+ /ProcSet 36 0 R
+ >>
+ /Type /Page
+>>
+endobj
+
+%% Contents for page 1
+33 0 obj
+<<
+ /Length 34 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 0) Tj
+ET
+endstream
+endobj
+
+34 0 obj
+46
+endobj
+
+35 0 obj
+<<
+ /BaseFont /Helvetica
+ /Encoding /WinAnsiEncoding
+ /Name /F1
+ /Subtype /Type1
+ /Type /Font
+>>
+endobj
+
+36 0 obj
+[
+ /PDF
+ /Text
+]
+endobj
+
+%% Contents for page 2
+37 0 obj
+<<
+ /Length 38 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 1) Tj
+ET
+endstream
+endobj
+
+38 0 obj
+46
+endobj
+
+%% Contents for page 3
+39 0 obj
+<<
+ /Length 40 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 2) Tj
+ET
+endstream
+endobj
+
+40 0 obj
+46
+endobj
+
+%% Contents for page 4
+41 0 obj
+<<
+ /Length 42 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 3) Tj
+ET
+endstream
+endobj
+
+42 0 obj
+46
+endobj
+
+%% Contents for page 5
+43 0 obj
+<<
+ /Length 44 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 4) Tj
+ET
+endstream
+endobj
+
+44 0 obj
+46
+endobj
+
+%% Contents for page 6
+45 0 obj
+<<
+ /Length 46 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 5) Tj
+ET
+endstream
+endobj
+
+46 0 obj
+46
+endobj
+
+%% Contents for page 7
+47 0 obj
+<<
+ /Length 48 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 6) Tj
+ET
+endstream
+endobj
+
+48 0 obj
+46
+endobj
+
+%% Contents for page 8
+49 0 obj
+<<
+ /Length 50 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 7) Tj
+ET
+endstream
+endobj
+
+50 0 obj
+46
+endobj
+
+%% Contents for page 9
+51 0 obj
+<<
+ /Length 52 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 8) Tj
+ET
+endstream
+endobj
+
+52 0 obj
+46
+endobj
+
+%% Contents for page 10
+53 0 obj
+<<
+ /Length 54 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 9) Tj
+ET
+endstream
+endobj
+
+54 0 obj
+46
+endobj
+
+%% Contents for page 11
+55 0 obj
+<<
+ /Length 56 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 10) Tj
+ET
+endstream
+endobj
+
+56 0 obj
+47
+endobj
+
+%% Contents for page 12
+57 0 obj
+<<
+ /Length 58 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 11) Tj
+ET
+endstream
+endobj
+
+58 0 obj
+47
+endobj
+
+%% Contents for page 13
+59 0 obj
+<<
+ /Length 60 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 12) Tj
+ET
+endstream
+endobj
+
+60 0 obj
+47
+endobj
+
+%% Contents for page 14
+61 0 obj
+<<
+ /Length 62 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 13) Tj
+ET
+endstream
+endobj
+
+62 0 obj
+47
+endobj
+
+%% Contents for page 15
+63 0 obj
+<<
+ /Length 64 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 14) Tj
+ET
+endstream
+endobj
+
+64 0 obj
+47
+endobj
+
+%% Contents for page 16
+65 0 obj
+<<
+ /Length 66 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 15) Tj
+ET
+endstream
+endobj
+
+66 0 obj
+47
+endobj
+
+%% Contents for page 17
+67 0 obj
+<<
+ /Length 68 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 16) Tj
+ET
+endstream
+endobj
+
+68 0 obj
+47
+endobj
+
+%% Contents for page 18
+69 0 obj
+<<
+ /Length 70 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 17) Tj
+ET
+endstream
+endobj
+
+70 0 obj
+47
+endobj
+
+%% Contents for page 19
+71 0 obj
+<<
+ /Length 72 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 18) Tj
+ET
+endstream
+endobj
+
+72 0 obj
+47
+endobj
+
+%% Contents for page 20
+73 0 obj
+<<
+ /Length 74 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 19) Tj
+ET
+endstream
+endobj
+
+74 0 obj
+47
+endobj
+
+%% Contents for page 21
+75 0 obj
+<<
+ /Length 76 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 20) Tj
+ET
+endstream
+endobj
+
+76 0 obj
+47
+endobj
+
+%% Contents for page 22
+77 0 obj
+<<
+ /Length 78 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 21) Tj
+ET
+endstream
+endobj
+
+78 0 obj
+47
+endobj
+
+%% Contents for page 23
+79 0 obj
+<<
+ /Length 80 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 22) Tj
+ET
+endstream
+endobj
+
+80 0 obj
+47
+endobj
+
+%% Contents for page 24
+81 0 obj
+<<
+ /Length 82 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 23) Tj
+ET
+endstream
+endobj
+
+82 0 obj
+47
+endobj
+
+%% Contents for page 25
+83 0 obj
+<<
+ /Length 84 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 24) Tj
+ET
+endstream
+endobj
+
+84 0 obj
+47
+endobj
+
+%% Contents for page 26
+85 0 obj
+<<
+ /Length 86 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 25) Tj
+ET
+endstream
+endobj
+
+86 0 obj
+47
+endobj
+
+%% Contents for page 27
+87 0 obj
+<<
+ /Length 88 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 26) Tj
+ET
+endstream
+endobj
+
+88 0 obj
+47
+endobj
+
+%% Contents for page 28
+89 0 obj
+<<
+ /Length 90 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 27) Tj
+ET
+endstream
+endobj
+
+90 0 obj
+47
+endobj
+
+%% Contents for page 29
+91 0 obj
+<<
+ /Length 92 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 28) Tj
+ET
+endstream
+endobj
+
+92 0 obj
+47
+endobj
+
+%% Contents for page 30
+93 0 obj
+<<
+ /Length 94 0 R
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 29) Tj
+ET
+endstream
+endobj
+
+94 0 obj
+47
+endobj
+
+95 0 obj
+<<
+ /Type /Outlines
+ /First 96 0 R
+ /Last 97 0 R
+ /Count 6
+>>
+endobj
+
+96 0 obj
+<<
+ /Type /Outline
+ /Title (Isís 1 -> 5: /XYZ null null null)
+ /Parent 95 0 R
+ /Count 4
+ /Next 97 0 R
+ /First 98 0 R
+ /Last 99 0 R
+ /Dest [ 8 0 R /XYZ null null null ]
+>>
+endobj
+
+97 0 obj
+<<
+ /Type /Outline
+ /Title (Trepak 2 -> 15: /XYZ 66 756 3)
+ /Parent 95 0 R
+ /Prev 96 0 R
+ /Dest [ 18 0 R /XYZ 66 756 3 ]
+>>
+endobj
+
+98 0 obj
+<<
+ /Type /Outline
+ /Title (Amanda 1.1 -> 11: /Fit)
+ /Parent 96 0 R
+ /Next 99 0 R
+ /First 100 0 R
+ /Last 101 0 R
+ /Count -3
+ /Dest [ 14 0 R /Fit ]
+>>
+endobj
+
+99 0 obj
+<<
+ /Type /Outline
+ % /Title (Sandy (Sandy [Greek]) 1.2 -> 13: /FitH 792)
+ /Title <feff00530061006e00640079002000f703a303b103bd03b403b900f700200031002e00320020002d003e002000310033003a0020002f00460069007400480020003700390032>
+ /Parent 96 0 R
+ /Prev 98 0 R
+ /First 105 0 R
+ /Last 106 0 R
+ /Count 2
+ /Dest [ 16 0 R /FitH 792 ]
+>>
+endobj
+
+100 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.1 -> 12: /FitV 100)
+ /Parent 98 0 R
+ /Next 101 0 R
+ /First 102 0 R
+ /Last 103 0 R
+ /Count -2
+ /Dest [ 15 0 R /FitV 100 ]
+>>
+endobj
+
+101 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.2 -> 12: /XYZ null null null)
+ /Parent 98 0 R
+ /Prev 100 0 R
+ /First 104 0 R
+ /Last 104 0 R
+ /Count 1
+ /Dest [ 15 0 R /XYZ null null null ]
+>>
+endobj
+
+102 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.1.1 -> 18: /XYZ null null null)
+ /Parent 100 0 R
+ /Next 103 0 R
+ /Dest [ 21 0 R /XYZ null null null ]
+>>
+endobj
+
+103 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.1.2 -> 19: /XYZ null null null)
+ /Parent 100 0 R
+ /Prev 102 0 R
+ /Dest [ 22 0 R /XYZ null null null ]
+>>
+endobj
+
+104 0 obj
+<<
+ /Type /Outline
+ /Title (Isosicle 1.1.2.1 -> 22: /XYZ null null null)
+ /Parent 101 0 R
+ /Dest [ 25 0 R /XYZ null null null ]
+>>
+endobj
+
+105 0 obj
+<<
+ /Type /Outline
+ /Title (Trepsichord 1.2.1 -> 1: /FitR 66 714 180 770)
+ /Parent 99 0 R
+ /Next 106 0 R
+ /Dest [ 4 0 R /FitR 66 714 180 770 ]
+>>
+endobj
+
+106 0 obj
+<<
+ /Type /Outline
+ /Title (Trepsicle 1.2.2 -> 0: /XYZ null null null)
+ /Parent 99 0 R
+ /Prev 105 0 R
+ /Dest [ 3 0 R /XYZ null null null ]
+>>
+endobj
+
+107 0 obj
+ << /Nums [
+ 0 << /P () >>
+ 2 << /S /r /St 1 >>
+ 7 << /P () >>
+ 9 << /S /r /St 6 >>
+ 11 << /P () >>
+ 12 << /S /D /St 2 >>
+ 15 << /S /D /St 6 >>
+ 19 << /P () >>
+ 20 << /S /D /St 12 >>
+ 22 << /S /D /St 16059 >>
+ 23 << /S /r /St 50 >>
+ 29 << /S /r /St 54 >>
+ ] >>
+endobj
+
+xref
+0 108
+0000000000 65535 f
+0000000025 00000 n
+0000000145 00000 n
+0000000541 00000 n
+0000000746 00000 n
+0000000951 00000 n
+0000001156 00000 n
+0000001361 00000 n
+0000001566 00000 n
+0000001771 00000 n
+0000001976 00000 n
+0000002182 00000 n
+0000002389 00000 n
+0000002596 00000 n
+0000002803 00000 n
+0000003010 00000 n
+0000003217 00000 n
+0000003424 00000 n
+0000003631 00000 n
+0000003838 00000 n
+0000004045 00000 n
+0000004252 00000 n
+0000004459 00000 n
+0000004666 00000 n
+0000004873 00000 n
+0000005080 00000 n
+0000005287 00000 n
+0000005494 00000 n
+0000005701 00000 n
+0000005908 00000 n
+0000006115 00000 n
+0000006322 00000 n
+0000006529 00000 n
+0000006748 00000 n
+0000006851 00000 n
+0000006871 00000 n
+0000006990 00000 n
+0000007049 00000 n
+0000007152 00000 n
+0000007195 00000 n
+0000007298 00000 n
+0000007341 00000 n
+0000007444 00000 n
+0000007487 00000 n
+0000007590 00000 n
+0000007633 00000 n
+0000007736 00000 n
+0000007779 00000 n
+0000007882 00000 n
+0000007925 00000 n
+0000008028 00000 n
+0000008071 00000 n
+0000008174 00000 n
+0000008218 00000 n
+0000008321 00000 n
+0000008365 00000 n
+0000008469 00000 n
+0000008513 00000 n
+0000008617 00000 n
+0000008661 00000 n
+0000008765 00000 n
+0000008809 00000 n
+0000008913 00000 n
+0000008957 00000 n
+0000009061 00000 n
+0000009105 00000 n
+0000009209 00000 n
+0000009253 00000 n
+0000009357 00000 n
+0000009401 00000 n
+0000009505 00000 n
+0000009549 00000 n
+0000009653 00000 n
+0000009697 00000 n
+0000009801 00000 n
+0000009845 00000 n
+0000009949 00000 n
+0000009993 00000 n
+0000010097 00000 n
+0000010141 00000 n
+0000010245 00000 n
+0000010289 00000 n
+0000010393 00000 n
+0000010437 00000 n
+0000010541 00000 n
+0000010585 00000 n
+0000010689 00000 n
+0000010733 00000 n
+0000010837 00000 n
+0000010881 00000 n
+0000010985 00000 n
+0000011029 00000 n
+0000011133 00000 n
+0000011177 00000 n
+0000011281 00000 n
+0000011301 00000 n
+0000011388 00000 n
+0000011584 00000 n
+0000011730 00000 n
+0000011905 00000 n
+0000012258 00000 n
+0000012449 00000 n
+0000012659 00000 n
+0000012828 00000 n
+0000012997 00000 n
+0000013150 00000 n
+0000013319 00000 n
+0000013484 00000 n
+trailer <<
+ /Root 1 0 R
+ /Size 108
+>>
+startxref
+13801
+%%EOF
+
+% 1. Delete page labels
+xref
+0 1
+0000000107 65535 f
+107 1
+0000000000 00001 f
+trailer << /Root 1 0 R /Size 108 /Prev 13801 >>
+startxref
+16059
+%%EOF
+
+% 2. Delete outlines, reuse page labels.
+
+107 1 obj
+ << /Nums [
+ 0 << /P () >>
+ 2 << /S /D /St 1 >>
+ 7 << /P () >>
+ 9 << /S /R /St 6 >>
+ 11 << /P () >>
+ 12 << /S /r /St 2 >>
+ 15 << /S /r /St 6 >>
+ 19 << /P () >>
+ 20 << /S /R /St 12 >>
+ 22 << /S /D /St 16059 >>
+ 23 << /S /r /St 50 >>
+ 29 << /S /r /St 54 >>
+ ] >>
+endobj
+
+% Reuse object 1 with the same generation number. Leave outlines
+% there pointing to a deleted object.
+1 0 obj
+<<
+ /PageLabels 107 1 R
+ /Pages 2 0 R
+ /Type /Catalog
+ /PageMode /UseOutlines
+ /Outlines 95 0 R
+>>
+endobj
+
+% Reuse object 33 to replace contents for page 1
+33 0 obj
+<<
+ /Length 50
+>>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato 0 new) Tj
+ET
+endstream
+endobj
+
+% Delete object 34
+
+xref
+0 2
+0000000034 65535 f
+0000016648 00000 n
+33 2
+0000016817 00000 n
+0000000095 00001 f
+95 13
+0000000096 00001 f
+0000000097 00001 f
+0000000098 00001 f
+0000000099 00001 f
+0000000100 00001 f
+0000000101 00001 f
+0000000102 00001 f
+0000000103 00001 f
+0000000104 00001 f
+0000000105 00001 f
+0000000106 00001 f
+0000000000 00001 f
+0000016227 00001 n
+trailer << /Size 108 /Prev 16059 /Root 1 0 R >>
+startxref
+16940
+%%EOF