summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/triptrap
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-17 21:41:51 +0000
committerKarl Berry <karl@freefriends.org>2006-01-17 21:41:51 +0000
commit487ca4806cc046076293cf6cc5fbba0db282bac7 (patch)
tree847b412ab5158dd7bdd7ed7e5a4cc3fbca94be32 /Build/source/texk/web2c/triptrap
parenta3d3111bfe26b8e5f5bc6049dfb2a4ca2edc7881 (diff)
texk 1
git-svn-id: svn://tug.org/texlive/trunk@1485 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/triptrap')
-rw-r--r--Build/source/texk/web2c/triptrap/README96
-rw-r--r--Build/source/texk/web2c/triptrap/mftrap.diffs100
-rw-r--r--Build/source/texk/web2c/triptrap/mftrap.fot59
-rw-r--r--Build/source/texk/web2c/triptrap/mftrap.log4266
-rw-r--r--Build/source/texk/web2c/triptrap/mftrap.pl490
-rw-r--r--Build/source/texk/web2c/triptrap/mftrap1.in3
-rw-r--r--Build/source/texk/web2c/triptrap/mftrap2.in1
-rw-r--r--Build/source/texk/web2c/triptrap/mftrapin.log179
-rw-r--r--Build/source/texk/web2c/triptrap/mptrap.diffs621
-rw-r--r--Build/source/texk/web2c/triptrap/mptrap.fot82
-rw-r--r--Build/source/texk/web2c/triptrap/mptrap.log4755
-rw-r--r--Build/source/texk/web2c/triptrap/mptrap.pl520
-rw-r--r--Build/source/texk/web2c/triptrap/mptrap.readme50
-rw-r--r--Build/source/texk/web2c/triptrap/mptrap1.in3
-rw-r--r--Build/source/texk/web2c/triptrap/mptrap2.in2
-rw-r--r--Build/source/texk/web2c/triptrap/mptrapin.log198
-rw-r--r--Build/source/texk/web2c/triptrap/mtrap.035
-rw-r--r--Build/source/texk/web2c/triptrap/mtrap.139
-rw-r--r--Build/source/texk/web2c/triptrap/mtrap.log1108
-rw-r--r--Build/source/texk/web2c/triptrap/mtrap.mp202
-rw-r--r--Build/source/texk/web2c/triptrap/texmf.cnf91
-rw-r--r--Build/source/texk/web2c/triptrap/trap.14825
-rw-r--r--Build/source/texk/web2c/triptrap/trap.14985
-rw-r--r--Build/source/texk/web2c/triptrap/trap.15043
-rw-r--r--Build/source/texk/web2c/triptrap/trap.151219
-rw-r--r--Build/source/texk/web2c/triptrap/trap.19714
-rw-r--r--Build/source/texk/web2c/triptrap/trap.20058
-rw-r--r--Build/source/texk/web2c/triptrap/trap.521
-rw-r--r--Build/source/texk/web2c/triptrap/trap.614
-rw-r--r--Build/source/texk/web2c/triptrap/trap.mf170
-rw-r--r--Build/source/texk/web2c/triptrap/trap.mp215
-rw-r--r--Build/source/texk/web2c/triptrap/trap.mpx27
-rw-r--r--Build/source/texk/web2c/triptrap/trap.typ210
-rw-r--r--Build/source/texk/web2c/triptrap/trapf.pl105
-rw-r--r--Build/source/texk/web2c/triptrap/trapman.tex400
-rw-r--r--Build/source/texk/web2c/triptrap/trip.diffs147
-rw-r--r--Build/source/texk/web2c/triptrap/trip.fot83
-rw-r--r--Build/source/texk/web2c/triptrap/trip.log7295
-rw-r--r--Build/source/texk/web2c/triptrap/trip.pl833
-rw-r--r--Build/source/texk/web2c/triptrap/trip.tex448
-rw-r--r--Build/source/texk/web2c/triptrap/trip.typ1215
-rw-r--r--Build/source/texk/web2c/triptrap/trip1.in2
-rw-r--r--Build/source/texk/web2c/triptrap/trip2.in1
-rw-r--r--Build/source/texk/web2c/triptrap/tripin.log465
-rw-r--r--Build/source/texk/web2c/triptrap/tripman.tex413
-rw-r--r--Build/source/texk/web2c/triptrap/tripos.tex3
-rw-r--r--Build/source/texk/web2c/triptrap/writeo1
-rw-r--r--Build/source/texk/web2c/triptrap/writeo.210
48 files changed, 25422 insertions, 0 deletions
diff --git a/Build/source/texk/web2c/triptrap/README b/Build/source/texk/web2c/triptrap/README
new file mode 100644
index 00000000000..a129fb893a9
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/README
@@ -0,0 +1,96 @@
+web2c/triptrap -- The trip and trap tests are Knuth's torture tests for
+TeX and Metafont. The MetaPost test is also named `trap', so I've
+renamed the conflicting files to `mftrap...' and `mptrap...'. (The
+contents of all files remain absolutely unaltered, of course.)
+
+The tests are exercised in the web2c distribution via `make trip trap mptrap'
+(from the top-level or web2c/ directories). They do not and cannot
+exercise the path searching capabilities; for that, a few ``normal''
+test runs before and after installation should suffice.
+
+{trip,mftrap,mptrap}.diffs -- show the diffs from Knuth's originals as
+generated on my development machine. tripman.tex, trapman.tex, and
+mptrap.readme explain precisely what is and is not acceptable.
+Generally, for trap and MetaPost trap, dates and times, a number of
+ constants and one call to BLANKRECTANGLE will be different.
+For trip, again some constants will be different. The floating point
+ numbers in glue set ratios may be slightly different (but all the box
+ dimensions must be the same), and the y* and down* commands in the
+ trip.dvi file may be somewhat different. The hyphenation exceptions
+ are different because the exception routine now does not count
+ identical hyphenations separately, i.e., \hyphenation{a-a a-a} only
+ generates one exception in the table. See the messages below for why
+ this is a good/necessary thing (if the hyphenation exception table is
+ to be dynamic at all).
+
+texmf.cnf -- sets up various constants the way the tests want them. Not
+all constants can be changed, alas, but this suffices to avoid building
+a separate binary just to run the tests.
+
+*.in -- fed to the programs as standard input, to avoid manual intervention.
+
+All the other files are test sources and output.
+It's a mistake to change them.
+
+
+About the hyphenation exception thing:
+
+Date: Mon, 1 Apr 96 11:04:29 BST
+From: wgs@maths.ucd.ie (Wayne G. Sullivan)
+To: kb@cs.umb.edu (K. Berry)
+Subject: Re: hyph_size +1
+
+Upon consideration I found another change needed for dynamic hyph_size.
+Actually, it is one I used earlier but removed for the sake of the trip.log.
+Knuth's treatment of hyhpenation exceptions has an unpleasant "feature"
+in that if the same "word" is given in \hyphenation{...}, the code does not
+replace the existing entry, but adds a new entry which comes before all
+other entries of the specific "word" (which includes the language code
+as its last "letter"), so that the earlier entries are inaccessible. The
+point is that the exceptions table retains useless data.
+Try this with the current version of TeX:
+ \hyphenation{ab ab ab ab ... ab ab}
+Use any word you like for "ab" so long as it has at least two letters. With
+\tracingstats>0, you get lots of hyphen exceptions, but only the last for
+"ab" is accessible. I could copy this behavior using a simple hash code,
+but it seems [pointless]. Instead, when a word is repeated in "\hyphenation"
+the new code simply replaces the old entry, so no extra space in the
+exception tables is consumed. Since there is no way to recover the previous
+entry for a hyphenation exception which has been superseded, I can see no
+point in keeping the old data. The location of hyphens is kept as a linked
+list in TeX's mem array. This data for a superseded hyphenation exception
+could also be flushed, but it makes more differences in trip.log because
+the memory stats are different. These entries are unlikely to consume much
+space, so there is little harm in leaving them.
+
+Anyway the additional change needed corresponds to the following:
+
+diff -c tex.ch.old tex.ch
+*** tex.ch.old Fri Mar 29 17:25:28 1996
+--- tex.ch Mon Apr 1 10:08:54 1996
+***************
+*** 2177,2182 ****
+--- 2177,2183 ----
+ until u=str_start[k+1];
+ {repeat hyphenation exception; flushing old data}
+ flush_string; s:=hyph_word[h]; {avoid |slow_make_string|!}
++ decr(hyph_count);
+ { We could also |flush_list(hyph_list[h]);|, but it interferes
+ with the trip.log. }
+ goto found;
+
+Thus it is only additional change is to decrement the hyph_count when a
+repeat hyphenation exception is encountered. This is really essential only
+for the "ini" version. The reason is to know exactly how many hyphenation
+exceptions to undump. The change might as well be included in all versions,
+because it handles repeated hyphenation exceptions in a more efficient way
+than the original code. I checked through trip.tex. There is only one word
+included in hyphenation exceptions, but it is given two different hyphenations.
+Thus the original trip.log states 2 hyphenation exceptions, while the one
+using simple hashing shows only 1 -- the single exception has been entered
+twice.
+
+[...]
+
+Wayne
+
diff --git a/Build/source/texk/web2c/triptrap/mftrap.diffs b/Build/source/texk/web2c/triptrap/mftrap.diffs
new file mode 100644
index 00000000000..b8051bcfb3a
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mftrap.diffs
@@ -0,0 +1,100 @@
+make[1]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c'
+cd lib && make -w CC='gcc' CFLAGS='-g ' LDFLAGS=''
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/lib'
+make[2]: Nothing to be done for `default'.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/lib'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' fixwrites
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `fixwrites' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' splitup
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `splitup' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' web2c
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `web2c' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+rm -f trap.mf trap.base
+rm -f mftrapin.fot mftrapin.log
+rm -f mftrap.fot mftrap.log mftrap.tfm
+rm -f mftrap.pl trap.72270gf trap.typ
+ln -s ./triptrap/trap.mf . # get same filename in log
+/bin/sh -c 'TEXMFCNF=./triptrap ./mf --progname=inimf <./triptrap/mftrap1.in >mftrapin.fot'
+mv trap.log mftrapin.log
+diff ./triptrap/mftrapin.log mftrapin.log
+1c1
+< This is METAFONT, Version 2.71828 (INIMF) 23 DEC 2002 11:57
+---
+> This is METAFONT, Version 2.71828 (Web2C 7.5.5) (INIMF) 3 AUG 2005 10:46
+150c150
+< String usage 26&83 (1895&21534 still untouched)
+---
+> String usage 30&98 (6387&79485 still untouched)
+176,177c176,177
+< (preloaded base=trap 98.8.8)
+< 1113 strings of total length 20515
+---
+> (base=trap 2005.8.3)
+> 1122 strings of total length 20565
+/bin/sh -c 'TEXMFCNF=./triptrap ./mf --progname=inimf <./triptrap/mftrap2.in >mftrap.fot'
+mv trap.log mftrap.log
+mv trap.tfm mftrap.tfm
+diff ./triptrap/mftrap.fot mftrap.fot
+1,3c1,2
+< This is METAFONT, Version 2.71828 (INIMF)
+< ** &trap trap
+< (trap.mf
+---
+> This is METAFONT, Version 2.71828 (Web2C 7.5.5) (INIMF)
+> **(trap.mf
+39c38
+< String usage 42&168 (1818&17726 still untouched)
+---
+> String usage 50&202 (6301&75642 still untouched)
+diff ./triptrap/mftrap.log mftrap.log
+1c1
+< This is METAFONT, Version 2.71828 (preloaded base=trap 2002.12.23) 23 DEC 2002 11:57
+---
+> This is METAFONT, Version 2.71828 (Web2C 7.5.5) (base=trap 2005.8.3) 3 AUG 2005 10:46
+1825c1825
+< String usage 24&92 (1863&21408 still untouched)
+---
+> String usage 30&119 (6347&79310 still untouched)
+2738c2738
+< Calling BLANKRECTANGLE(100,100,0,1)
+---
+> Calling BLANKRECTANGLE(1664,1664,0,1)
+4235c4235
+< String usage 42&168 (1818&17726 still untouched)
+---
+> String usage 50&202 (6301&75642 still untouched)
+4251,4252c4251,4252
+< 69 strings out of 1887
+< 3759 string characters out of 21485
+---
+> 77 strings out of 6378
+> 3793 string characters out of 79435
+4254,4255c4254,4255
+< 289 symbolic tokens out of 2100
+< 8i,43n,14r,8p,167b stack positions out of 30i,100n,300r,150p,500b
+---
+> 289 symbolic tokens out of 9500
+> 8i,43n,14r,8p,167b stack positions out of 300i,300n,1000r,150p,500b
+4263c4263
+< out of 256w,16h,16d,64i,5000l,500k,256e,50p)
+---
+> out of 256w,16h,16d,64i,15000l,2500k,256e,60p)
+./tftopl ./mftrap.tfm mftrap.pl
+diff ./triptrap/mftrap.pl mftrap.pl
+/bin/sh -c 'TEXMFCNF=./triptrap ./gftype -m -i ./trap.72270gf >trap.typ'
+diff ./triptrap/trap.typ trap.typ
+1c1
+< This is GFtype, Version 3.1
+---
+> This is GFtype, Version 3.1 (Web2C 7.5.5)
+3c3
+< ' METAFONT output 2002.12.23:1157'
+---
+> ' METAFONT output 2005.08.03:1046'
+make[1]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c'
diff --git a/Build/source/texk/web2c/triptrap/mftrap.fot b/Build/source/texk/web2c/triptrap/mftrap.fot
new file mode 100644
index 00000000000..c4eb700c4c7
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mftrap.fot
@@ -0,0 +1,59 @@
+This is METAFONT, Version 2.71828 (INIMF)
+** &trap trap
+(trap.mf
+\*//*\trap\pass2!
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+l.21 ...t next=\; delimiters ^~7
+ ! fi
+! Extra tokens will be flushed.
+<to be read again>
+ !
+l.21 ... next=\; delimiters ^~7!
+ fi
+! Forbidden token found while scanning to the end of the statement.
+<inserted text>
+ ;
+<to be read again>
+ \
+l.22 next\
+ ; % the second pass will now compute silently; the ...
+
+hello again^^_
+>> pen (see the transcript file)
+>> path (see the transcript file)
+>> path (see the transcript file)
+>> path (see the transcript file)
+f<expr>->let)=];let[=(;show._
+(EXPR0)<-xx
+{let}
+{let}
+{show}
+>> _1
+{showdependencies}
+xpart '=-ypart '-0.66667
+{qq:=pen}
+{showstats}
+Memory usage 1476&588 (104 still untouched)
+String usage 42&168 (1818&17726 still untouched)
+{[repeat the loop]}
+! A group begun on line 163 never ended.
+<to be read again>
+ endtext
+l.163 ... showstats; bye endtext
+
+{endgroup}
+ )
+(end occurred when else on line 93 was incomplete)
+(end occurred when if on line 36 was incomplete)
+(end occurred when elseif on line 21 was incomplete)
+(see the transcript file for additional information)
+(illegal design size has been changed to 128pt)
+(some chardp values had to be adjusted by as much as 0.5pt)
+(local label 0:: was missing)
+(local label 5:: was missing)
+(4 font metric dimensions had to be decreased)
+Font metrics written on trap.tfm.
+Output written on trap.72270gf (5 characters, 1028 bytes).
+Transcript written on trap.log.
diff --git a/Build/source/texk/web2c/triptrap/mftrap.log b/Build/source/texk/web2c/triptrap/mftrap.log
new file mode 100644
index 00000000000..23bf114c633
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mftrap.log
@@ -0,0 +1,4266 @@
+This is METAFONT, Version 2.71828 (preloaded base=trap 2002.12.23) 23 DEC 2002 11:57
+** &trap trap
+(trap.mf
+{if}
+{known(0)}
+{not(true)}
+{false}
+{known("")}
+{true}
+
+/*\`'@#->begingroup.message(SUFFIX1)&str(SUFFIX0)&jobname&char.ASCII'`&s
+tr(SUFFIX2)!endgroup
+(SUFFIX0)<-/*\
+(SUFFIX1)<-`'
+(SUFFIX2)<-pass2
+{begingroup}
+{message}
+
+`'->begingroup'`endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-`'
+{begingroup}
+
+'`->"\*/"
+{endgroup}
+{("\*/")&("/*\")}
+{jobname}
+{("\*//*\")&("trap")}
+
+'`->"\*/"
+{ASCII("\*/")}
+{char(92)}
+{("\*//*\trap")&("\")}
+{("\*//*\trap\")&("pass2!")}
+
+\*//*\trap\pass2!
+{endgroup}
+{outer}
+{let}
+{delimiters}
+
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+l.21 ...t next=\; delimiters ^~7
+ ! fi
+Sorry: You can't redefine a number, string, or expr.
+I've inserted an inaccessible symbol so that your
+definition will be completed without mixing me up too badly.
+
+! Extra tokens will be flushed.
+<to be read again>
+ !
+l.21 ... next=\; delimiters ^~7!
+ fi
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+! Forbidden token found while scanning to the end of the statement.
+<inserted text>
+ ;
+<to be read again>
+ \
+l.22 next\
+ ; % the second pass will now compute silently; the ...
+A previous error seems to have propagated,
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{\}
+{batchmode}
+
+! An expression can't begin with `endgroup'.
+<inserted text>
+ 0
+<to be read again>
+ endgroup
+l.23 batchmode; ^~7,endgroup
+ pausing:=1; exitif p exitif bool...
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+! Missing ` INACCESSIBLE' has been inserted.
+<to be read again>
+ endgroup
+l.23 batchmode; ^~7,endgroup
+ pausing:=1; exitif p exitif bool...
+I found no right delimiter to match a left one. So I've
+put one in, behind the scenes; this may fix the problem.
+
+! Extra `endgroup'.
+<recently read> endgroup
+
+l.23 batchmode; ^~7,endgroup
+ pausing:=1; exitif p exitif bool...
+I'm not currently working on a `begingroup',
+so I had better not try to end anything.
+
+{pausing:=1}
+{exitif}
+{exitif}
+{pencircle}
+{endfor}
+! Extra `endfor'.
+l.23 ...ean pen pencircle endfor
+
+I'm not currently working on a for loop,
+so I had better not try to end anything.
+
+{scantokens}
+{begingroup}
+{message}
+{char(0)}
+{("^^@")&("watch this")}
+^^@watch this
+{-(1)}
+{char(-1)}
+{("pair p[],';")&("^^ff")}
+{endgroup}
+{pen(future pen)}
+{boolean(true)}
+{true}
+! No loop is in progress.
+<to be read again>
+ pair
+<scantokens> pair
+ p[],';^^ff
+<to be read again>
+ path
+l.25 path
+ p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
+Why say `exitif' when there's nothing to exit from?
+
+>> p
+! Undefined condition will be treated as `false'.
+<to be read again>
+ pair
+<scantokens> pair
+ p[],';^^ff
+<to be read again>
+ path
+l.25 path
+ p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
+The expression shown above should have had a definite
+true-or-false value. I'm changing it to `false'.
+
+{false}
+! Missing `;' has been inserted.
+<to be read again>
+ pair
+<scantokens> pair
+ p[],';^^ff
+<to be read again>
+ path
+l.25 path
+ p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
+After `exitif <boolean exp>' I expect to see a semicolon.
+I shall pretend that one was there.
+
+{pair}
+! Text line contains an invalid character.
+<scantokens> pair p[],';^^ff
+
+<to be read again>
+ path
+l.25 path
+ p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
+A funny symbol that I can't read has just been input.
+Continue, and I'll forget that it ever happened.
+
+{path}
+{-(2)}
+{-(1)}
+{turningnumber((xpart ',ypart '))}
+Path at line 25, before choices:
+(1,-2){curl 1}
+ ..(2,-1)
+ ..(2.5,0.5)
+ ..(1,2)
+ ..{curl 1}(0,2.5)
+
+Path at line 25, after choices:
+(1,-2)..controls (1.37755,-1.71404) and (1.71404,-1.37755)
+ ..(2,-1)..controls (2.33353,-0.55965) and (2.59729,-0.04124)
+ ..(2.5,0.5)..controls (2.36812,1.23369) and (1.6712,1.65662)
+ ..(1,2)..controls (0.66821,2.16974) and (0.33485,2.33641)
+ ..(0,2.5)
+
+{(unknown path qw)=(path)}
+{numeric}
+! Enormous number has been reduced.
+l.26 ...[$] ]]=10000000000000000
+ ; "this string constant is in...
+I can't handle numbers bigger than about 4095.99998;
+so I've changed your constant to that maximum amount.
+
+{(p[[ [-1] ]])=(4095.99998)}
+## p[[ [-1] ]]=4095.99998
+! Incomplete string token has been flushed.
+l.26 ...g constant is incomplete
+
+Strings should finish on the same line as they began.
+I've deleted the partial string; you might want to
+insert another by typing, e.g., `I"new string"'.
+
+{string}
+! Declared variable conflicts with previous vardef.
+<to be read again>
+ ,
+l.27 string foo[]p,
+ p~if true:[]; p~000=char34&char200&char34;
+You can't use, e.g., `numeric foo[]' after `vardef foo'.
+Proceed, and I'll ignore the illegal redeclaration.
+
+{if}
+{true}
+{true}
+{char(34)}
+{char(200)}
+{(""")&("^^c8")}
+{char(34)}
+{(""^^c8")&(""")}
+{(unknown string p~0)=(""^^c8"")}
+{boolean}
+{fi}
+{showvariable}
+boolean.boolean=unknown boolean
+! OK.
+l.28 ...n; showvariable boolean;
+ def\\= =end enddef;
+
+{def}
+{picture}
+{show}
+{scantokens}
+{length("^^c8")}
+>> 1
+! OK.
+<recently read> ;
+
+l.29 ...w length scantokens p~0;
+
+
+{pen}
+! Illegal suffix of declared variable will be flushed.
+<to be read again>
+ [
+<to be read again>
+ "a"
+l.30 pen p~[]~,q["a"
+ ,qq; p~1~=q=pencircle scaled mexp(-3016.5...
+Variables in declarations must consist entirely of
+names and collective subscripts, e.g., `x[]a'.
+Are you trying to use a reserved word in a variable name?
+I'm going to discard the junk I found here,
+up to the next comma or the end of the declaration.
+
+{pencircle}
+{-(3016.57654)}
+{mexp(-3016.57654)}
+{(future pen)scaled(0)}
+Pen polygon at line 30 (newly created):
+(0.5,0)
+ .. (0,0.5)
+ .. (-0.5,0)
+ .. (0,-0.5)
+ .. cycle
+
+{(unknown pen q)=(pen)}
+{(unknown pen p~1~)=(pen)}
+{transform}
+! Illegal suffix of declared variable will be flushed.
+<to be read again>
+ 0
+l.31 transform p,pp0
+ ; if p=p:qq=makepen((1,0)..cycle) xscaled...
+Variables in declarations must consist entirely of
+names and collective subscripts, e.g., `x[]a'.
+Explicit subscripts like `x15a' aren't permitted.
+I'm going to discard the junk I found here,
+up to the next comma or the end of the declaration.
+
+{if}
+{((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p))=((xpart p,ypart
+ p,xxpart p,xypart p,yxpart p,yypart p))}
+{true}
+Path at line 31, before choices:
+(1,0)
+ ..cycle
+
+Path at line 31, after choices:
+(1,0)..controls (1,0) and (1,0)
+ ..cycle
+
+{makepen(path)}
+{hex("1000")}
+! Number too large (4096).
+<to be read again>
+ ;
+l.31 ...cle) xscaled hex "1000";
+ fi
+I have trouble with numbers greater than 4095; watch out.
+
+{(future pen)xscaled(4096)}
+! Pen too large.
+<to be read again>
+ ;
+l.31 ...cle) xscaled hex "1000";
+ fi
+The cycle you specified has a coordinate of 4095.5 or more.
+So I've replaced it by the trivial path `(0,0)..cycle'.
+
+Pen polygon at line 31 (newly created):
+(0,0)
+ .. cycle
+
+{(unknown pen qq)=(pen)}
+{fi}
+Path at line 32, before choices:
+(0,0)
+ ..(1,0)
+ ..(0,1)
+ ..(0,0)
+ ..(1,0)
+ ..(0,1)
+ ..cycle
+
+Path at line 32, after choices:
+(0,0)..controls (0.29056,-0.29056) and (0.75859,-0.30772)
+ ..(1,0)..controls (1.51964,0.66237) and (0.66237,1.51964)
+ ..(0,1)..controls (-0.30772,0.75859) and (-0.29056,0.29056)
+ ..(0,0)..controls (0.29056,-0.29056) and (0.75859,-0.30772)
+ ..(1,0)..controls (1.51964,0.66237) and (0.66237,1.51964)
+ ..(0,1)..controls (-0.30772,0.75859) and (-0.29056,0.29056)
+ ..cycle
+
+{makepen(path)}
+! Pen cycle must be convex.
+<to be read again>
+ ;
+l.32 ...)..(1,0)..(0,1)..cycle);
+
+The cycle you specified either has consecutive equal points
+or turns right or turns through more than 360 degrees.
+So I've replaced it by the trivial path `(0,0)..cycle'.
+
+Pen polygon at line 32 (newly created):
+(0,0)
+ .. cycle
+
+{qq:=pen}
+{vardef}
+! Missing parameter type; `expr' will be assumed.
+<to be read again>
+ )
+l.33 ...ext suffix a,b endtext()
+ )suffix@=show #@; p.a.b() end...
+You should've had `expr' or `suffix' or `text' here.
+
+{expandafter}
+{\}
+{let}
+
+\\->=end
+{outer}
+{pencircle}
+{(future pen)scaled(4.5)}
+{(future pen)yscaled(2)}
+Pen polygon at line 34 (newly created):
+(0.5,-4.5)
+ .. (1,-4)
+ .. (2,-2.5)
+ .. (2.5,0)
+ .. (2,2.5)
+ .. (1,4)
+ .. (0.5,4.5)
+ .. (-0.5,4.5)
+ .. (-1,4)
+ .. (-2,2.5)
+ .. (-2.5,0)
+ .. (-2,-2.5)
+ .. (-1,-4)
+ .. (-0.5,-4.5)
+ .. cycle
+
+{qq:=pen}
+{((6,12))-((xpart p7,ypart p7))}
+{((0,1))transformed((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p
+))}
+{(x)-(x)}
+{(2)/(0)}
+>> 2
+! Division by zero.
+<to be read again>
+ ,
+l.35 ...)transformed p=(2/(x-x),
+ 3/0)transformed p;
+You're trying to divide the quantity shown above the error
+message by zero. I'm going to divide it by one instead.
+
+! Division by zero.
+l.35 ...ansformed p=(2/(x-x),3/0
+ )transformed p;
+I'll pretend that you meant to divide by 1.
+
+{((2,3))transformed((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p
+))}
+{((linearform,linearform))=((linearform,linearform))}
+## yxpart p=-yypart p
+## xxpart p=-xypart p
+{((-xpart p7+6,-ypart p7+12))=((linearform,linearform))}
+## ypart p7=-ypart p-yypart p+12
+## xpart p7=-xpart p-xypart p+6
+{\}
+{if}
+{string(unknown string p~[-1])}
+{true}
+{(p0.1 0.2)-(p0.1 0.2)}
+! The token `endtext' is no longer a right delimiter.
+l.36 ...1.2-p.1.199999,1 endtext
+ transformed p;
+Strange: This token has lost its former meaning!
+I'll read it as a right delimiter this time;
+but watch out, I'll probably miss it later.
+
+{((0,1))transformed((xpart p,ypart p,-xypart p,xypart p,-yypart p,yypart
+ p))}
+{((linearform,linearform))=((linearform,linearform))}
+## ypart p=-yypart p+6
+#### ypart p7=6
+## xpart p=-xypart p+3
+#### xpart p7=3
+{(unknown path p1 2p)=((3,6))}
+{showstopping:=0}
+{showvariable}
+p=(-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p)
+p[]=pair
+p[][]=numeric
+p[][]p=unknown path
+p[][]p~=macro:(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup ETC.
+p[]~=unknown boolean
+p~=path
+p~[]=unknown string
+p~[]~=unknown pen
+p~[]~[][]=unknown picture
+p~[-1]=unknown string p~[-1]
+p~0=""^^c8""
+p~1~=pen
+p[[ [] ]]=numeric
+p[[ [-1] ]]=4095.99998
+p0.1 0.2=p0.1 0.2
+p1 2p=path
+p7=(3,6)
+{((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))=((-xy
+part p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))}
+{let}
+{let}
+{xxpart((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))
+}
+{(-xypart p)+(0.002)}
+{yxpart((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))
+}
+{((xpart p2,ypart p2))-((xpart p1,ypart p1))}
+{(1)*((linearform,linearform))}
+{((xpart p1,ypart p1))+((linearform,linearform))}
+{(y)+(0.00002)}
+{yypart((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))
+}
+{xypart((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))
+}
+{((5,y))=((yypart p,xypart p))}
+## y=xypart p
+## yypart p=5
+#### ypart p=1
+#### yxpart p=-5
+{((5,xypart p+0.00002))=((5,xypart p))}
+{((xpart p2,ypart p2))=((5,xypart p))}
+## ypart p2=xypart p
+## xpart p2=5
+{((-xypart p+0.002,-5))=((5,xypart p))}
+## xypart p=-5
+#### ypart p2=-5
+#### y=-5
+#### xpart p=8
+#### xxpart p=5
+! Inconsistent equation (off by -0.002).
+<to be read again>
+ ;
+l.38 ...,y)=(yypart p,xypart p);
+
+The equation I just read contradicts what was said before.
+But don't worry; continue and I'll just ignore it.
+
+Path at line 39, before choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+ ..cycle
+
+Path at line 39, after choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)..controls (17.52783,8.54388) and (-15.45978,-4.12262)
+ ..cycle
+
+{reverse(path)}
+{(path)transformed((8,1,5,-5,-5,5))}
+{(path)=(unknown path p2 3p)}
+
+p1 2p~(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup.show(SUFFIX0);p(SUFF
+IX2)(SUFFIX3)((EXPR4)endgroup
+(SUFFIX0)<-p1 2p
+(SUFFIX1)<-~
+(SUFFIX2)<-
+(SUFFIX3)<-2 3p~
+! A primary expression can't begin with `right delimiter that matches ('
+.
+<inserted text>
+ 0
+<to be read again>
+ )
+l.40 ...000000001]2p~(,[2]3p~,-)
+ =p~1~2[pausing];
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+{-(0)}
+(EXPR4)<-0
+(SUFFIX5)<-
+{begingroup}
+{show}
+>> Path at line 40:
+(3,6)
+
+
+p2 3p~(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup.show(SUFFIX0);p(SUFF
+IX2)(SUFFIX3)((EXPR4)endgroup
+(SUFFIX0)<-p2 3p
+(SUFFIX1)<-~
+! Missing `,' has been inserted.
+<to be read again>
+ (0)
+p1 2p~->...IX2)(SUFFIX3)((EXPR4)
+ endgroup
+<to be read again>
+ =
+l.40 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I've finished reading a macro argument and am about to
+read another; the arguments weren't delimited correctly.
+You might want to delete some tokens before continuing.
+
+(SUFFIX2)<-
+! Missing `,' has been inserted.
+<to be read again>
+ (0)
+p1 2p~->...IX2)(SUFFIX3)((EXPR4)
+ endgroup
+<to be read again>
+ =
+l.40 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I've finished reading a macro argument and am about to
+read another; the arguments weren't delimited correctly.
+You might want to delete some tokens before continuing.
+
+(SUFFIX3)<-
+! Missing `)' has been inserted.
+<to be read again>
+ endgroup
+<to be read again>
+ =
+l.40 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I've gotten to the end of the macro parameter list.
+You might want to delete some tokens before continuing.
+
+(EXPR4)<-0
+(SUFFIX5)<-
+{begingroup}
+{show}
+>> Path at line 40:
+(8,1)..controls (-48.68579,57.68579) and (52.91974,-43.91974)
+ ..(28,-19)..controls (-7,16) and (63,-54)
+ ..cycle
+
+>> (8,1,5,-5,-5,5)
+! Isolated expression.
+<to be read again>
+ (
+p2 3p~->...;p(SUFFIX2)(SUFFIX3)(
+ (EXPR4)endgroup
+<to be read again>
+ endgroup
+<to be read again>
+ =
+l.40 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I couldn't find an `=' or `:=' after the
+expression that is shown above this error message,
+so I guess I'll just ignore it and carry on.
+
+! Extra tokens will be flushed.
+<to be read again>
+ (
+p2 3p~->...;p(SUFFIX2)(SUFFIX3)(
+ (EXPR4)endgroup
+<to be read again>
+ endgroup
+<to be read again>
+ =
+l.40 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+{endgroup}
+{endgroup}
+{(vacuous)=(unknown picture p~1~2 1)}
+>> vacuous
+>> unknown picture p~1~2 1
+! Equation cannot be performed (vacuous=unknown picture).
+<to be read again>
+ ;
+l.40 ...2]3p~,-)=p~1~2[pausing];
+
+I'm sorry, but I don't know how to make such things equal.
+(See the two expressions just above the error message.)
+
+{vardef}
+Runaway definition?
+if.p(SUFFIX1)(SUFFIX1)=(SUFFIX1)(SUFFIX1)p.fi
+! Forbidden token found while scanning the definition of p~[].
+<inserted text>
+ enddef
+<to be read again>
+ ;
+l.41 ...iary t:=if p@ @=@ @p fi;
+ vardef p[][]p~[]=BAD; inner ;;
+I suspect you have forgotten an `enddef',
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{vardef}
+! This variable already starts with a macro.
+l.41 ...@p fi; vardef p[][]p~[]=
+ BAD; inner ;;
+After `vardef a' you can't say `vardef a.b'.
+So I'll have to discard this definition.
+
+Runaway definition?
+BAD
+! Forbidden token found while scanning the definition of a bad variable.
+<inserted text>
+ enddef
+<to be read again>
+ ;
+l.41 ...i; vardef p[][]p~[]=BAD;
+ inner ;;
+I suspect you have forgotten an `enddef',
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{inner}
+{show}
+{-(2)}
+
+p~[-2]@#<tertiary>->begingroup.if.p(SUFFIX1)(SUFFIX1)=(SUFFIX1)(SUFFIX1)
+p.fi.endgroup
+(SUFFIX0)<-p~
+(SUFFIX1)<-[-2]
+(SUFFIX2)<-~
+! A tertiary expression can't begin with `['.
+<inserted text>
+ 0
+<to be read again>
+ [
+<to be read again>
+ (3000)
+<to be read again>
+ ,
+l.42 show p~[-2]~[3000,
+ x]++4000>path p3; showvariable p,P;
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+{(x)-(3000)}
+{(0)*(x-3000)}
+{(3000)+(0)}
+{(3000)++(4000)}
+(EXPR3)<-4999.99998
+{begingroup}
+{if}
+{(p[-2][-2])=(-2)}
+>> p[-2][-2]+2
+! Unknown relation will be considered false.
+<to be read again>
+ [-2]
+p~[-2]->...1)=(SUFFIX1)(SUFFIX1)
+ p.fi.endgroup
+<to be read again>
+ >
+l.42 show p~[-2]~[3000,x]++4000>
+ path p3; showvariable p,P;
+Oh dear. I can't decide if the expression above is positive,
+negative, or zero. So this comparison test won't be `true'.
+
+{false}
+! Missing `:' has been inserted.
+<to be read again>
+ [-2]
+p~[-2]->...1)=(SUFFIX1)(SUFFIX1)
+ p.fi.endgroup
+<to be read again>
+ >
+l.42 show p~[-2]~[3000,x]++4000>
+ path p3; showvariable p,P;
+There should've been a colon after the condition.
+I shall pretend that one was there.
+
+{endgroup}
+{path((xpart p3,ypart p3))}
+{(vacuous)>(false)}
+>> vacuous
+>> false
+! Not implemented: (vacuous)>(boolean).
+<to be read again>
+ ;
+l.42 ...~[3000,x]++4000>path p3;
+ showvariable p,P;
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+>> false
+{showvariable}
+p=(8,1,5,-5,-5,5)
+p[]=pair
+p[][]=numeric
+p[][]p=unknown path
+p[][]p~=macro:(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup ETC.
+p[]~=unknown boolean
+p~=path
+p~[]@#=macro:<tertiary>->begingroup.if.p(SUFFIX1)(SUFFIX1) ETC.
+p[[ [] ]]=numeric
+p[[ [-1] ]]=4095.99998
+p[-2][-2]=p[-2][-2]
+p0.1 0.2=p0.1 0.2
+p1=(xpart p1,ypart p1)
+p1 2p=path
+p2=(5,-5)
+p2 3p=path
+p3=(xpart p3,ypart p3)
+p7=(3,6)
+> P=tag
+{numeric}
+{(2)*(alpha)}
+{(p3~)=(2alpha)}
+## alpha=0.5p3~
+{(1)/(-1)}
+{(3)*(beta)}
+{(p[-1]~)=(3beta)}
+## beta=0.33333p[-1]~
+{begingroup}
+{save}
+{showvariable}
+> p=tag
+{(3)*(0.33333(SAVED)p[-1]~)}
+{((SAVED)p[-1]~)=(1)}
+## (SAVED)p[-1]~=1
+#### beta=0.33333
+{restoring p}
+{endgroup}
+{showvariable}
+p=(8,1,5,-5,-5,5)
+p[]=pair
+p[][]=numeric
+p[][]p=unknown path
+p[][]p~=macro:(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup ETC.
+p[]~=numeric
+p~=path
+p~[]@#=macro:<tertiary>->begingroup.if.p(SUFFIX1)(SUFFIX1) ETC.
+p[[ [] ]]=numeric
+p[[ [-1] ]]=4095.99998
+p[-2][-2]=p[-2][-2]
+p[-1]~=1
+p0.1 0.2=p0.1 0.2
+p1=(xpart p1,ypart p1)
+p1 2p=path
+p2=(5,-5)
+p2 3p=path
+p3=(xpart p3,ypart p3)
+p3~=p3~
+p7=(3,6)
+{def}
+{def}
+! Missing `=' has been inserted.
+<to be read again>
+ false
+l.45 ...enddef;def!primary!false
+ ):!fi enddef;
+The next thing in this `def' should have been `=',
+because I've already looked at the definition heading.
+But don't worry; I'll pretend that an equals sign
+was present. Everything from here to `enddef'
+will be the replacement text of this macro.
+
+{def}
+{(path)scaled(-1)}
+Path at line 46, before choices:
+(1,-2)..controls (1.37755,-1.71404) and (1.71404,-1.37755)
+ ..(2,-1)..controls (2.33353,-0.55965) and (2.59729,-0.04124)
+ ..(2.5,0.5)..controls (2.36812,1.23369) and (1.6712,1.65662)
+ ..(1,2)..controls (0.66821,2.16974) and (0.33485,2.33641)
+ ..(0,2.5)
+ ..(-1,2)..controls (-1.37755,1.71404) and (-1.71404,1.37755)
+ ..(-2,1)..controls (-2.33353,0.55965) and (-2.59729,0.04124)
+ ..(-2.5,-0.5)..controls (-2.36812,-1.23369) and (-1.6712,-1.65662)
+ ..(-1,-2)..controls (-0.66821,-2.16974) and (-0.33485,-2.33641)
+ ..(0,-2.5)
+ ..cycle
+
+Path at line 46, after choices:
+(1,-2)..controls (1.37755,-1.71404) and (1.71404,-1.37755)
+ ..(2,-1)..controls (2.33353,-0.55965) and (2.59729,-0.04124)
+ ..(2.5,0.5)..controls (2.36812,1.23369) and (1.6712,1.65662)
+ ..(1,2)..controls (0.66821,2.16974) and (0.33485,2.33641)
+ ..(0,2.5)..controls (-0.37186,2.68167) and (-0.668,2.25146)
+ ..(-1,2)..controls (-1.37755,1.71404) and (-1.71404,1.37755)
+ ..(-2,1)..controls (-2.33353,0.55965) and (-2.59729,0.04124)
+ ..(-2.5,-0.5)..controls (-2.36812,-1.23369) and (-1.6712,-1.65662)
+ ..(-1,-2)..controls (-0.66821,-2.16974) and (-0.33485,-2.33641)
+ ..(0,-2.5)..controls (0.37186,-2.68167) and (0.668,-2.25146)
+ ..cycle
+
+{makepen(path)}
+Pen polygon at line 46 (newly created):
+(1,-2)
+ .. (2,-1)
+ .. (2.5,0.5)
+ .. (1,2)
+ .. (0,2.5)
+ .. (-1,2)
+ .. (-2,1)
+ .. (-2.5,-0.5)
+ .. (-1,-2)
+ .. (0,-2.5)
+ .. cycle
+
+{qq:=pen}
+{primarydef}
+{secondarydef}
+
+//<expr>->
+
+//<expr>->
+{pencircle}
+{length(path)}
+{(future pen)slanted(1)}
+{((3,6))-((5,-5))}
+
+_aa__<secondary>->if(true
+{(0.1)*(15)}
+{odd(1.50009)}
+{not(false)}
+{known((8,1,5,-5,-5,5))}
+{(true)and(true)}
+(EXPR0)<-true
+{if}
+{true}
+
+!<primary>->false):(EXPR0)fi
+(EXPR0)<-(5,-5)
+{false}
+{(true)or(false)}
+{true}
+{fi}
+{-((5,-5))}
+{-((5,-5))}
+{+(1)}
+{-(1)}
+>> -1
+! Improper curl has been replaced by 1.
+<to be read again>
+ )
+l.51 {curl- +1)
+ ..tension atleast1..cycle sqrt2++sqrt2***[[]];
+A curl must be a known, nonnegative number.
+
+! Missing `}' has been inserted.
+<to be read again>
+ )
+l.51 {curl- +1)
+ ..tension atleast1..cycle sqrt2++sqrt2***[[]];
+I've scanned a direction spec for part of a path,
+so a right brace should have come next.
+I shall pretend that one was there.
+
+Path at line 51, before choices:
+(-5,5)
+
+Path at line 51, after choices:
+(-5,5)
+
+Path at line 51, before choices:
+(3,6)..controls (5,-5) and (-5,5)
+ ..(-5,5)..tension atleast1
+ ..{2896.30943,-2896.30934}cycle
+
+Path at line 51, after choices:
+(3,6)..controls (5,-5) and (-5,5)
+ ..(-5,5)..controls (-3.29726,7.86205) and (0.64516,8.35484)
+ ..cycle
+
+! Missing `)' has been inserted.
+<to be read again>
+ sqrt
+l.51 ...ion atleast1..cycle sqrt
+ 2++sqrt2***[[]];
+I found no right delimiter to match a left one. So I've
+put one in, behind the scenes; this may fix the problem.
+
+{((-2,11))subpath(path)}
+{reverse(path)}
+{makepen(path)}
+
+**->[[show(EXPR0)*(EXPR1)]]
+(EXPR0)<-future pen
+(EXPR1)<-future pen
+{begingroup}
+{show}
+{(future pen)*(future pen)}
+>> future pen
+>> future pen
+! Not implemented: (future pen)*(future pen).
+<to be read again>
+ ]]
+<to be read again>
+ sqrt
+l.51 ...ion atleast1..cycle sqrt
+ 2++sqrt2***[[]];
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+! Pen path must be a cycle.
+<to be read again>
+ ]]
+<to be read again>
+ sqrt
+l.51 ...ion atleast1..cycle sqrt
+ 2++sqrt2***[[]];
+I can't make a pen from the given path.
+So I've replaced it by the trivial path `(0,0)..cycle'.
+
+>> Pen polygon at line 51:
+(0,0)
+ .. cycle
+
+{endgroup}
+(EXPR0)<-vacuous
+{sqrt(2)}
+{sqrt(2)}
+{(1.41422)++(1.41422)}
+{begingroup}
+{endgroup}
+
+***->expandafter(EXPR1)scantokens"**oct"(EXPR0)
+(EXPR0)<-2
+(EXPR1)<-vacuous
+{expandafter}
+{scantokens}
+{oct(2)}
+>> 2
+! Not implemented: oct(known numeric).
+<to be read again>
+ ;
+l.51 ...cle sqrt2++sqrt2***[[]];
+
+I'm afraid I don't know how to apply that operation to that
+particular type. Continue, and I'll simply return the
+argument (shown above) as the result of the operation.
+
+
+**->[[show(EXPR0)*(EXPR1)]]
+(EXPR0)<-vacuous
+(EXPR1)<-2
+{begingroup}
+{show}
+{(vacuous)*(2)}
+>> vacuous
+>> 2
+! Not implemented: (vacuous)*(known numeric).
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.51 ...cle sqrt2++sqrt2***[[]];
+
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+>> 2
+{endgroup}
+(EXPR0)<-vacuous
+{begingroup}
+{interim}
+{-(20.5)}
+{charcode:=-20.5}
+{proofing:=-20.5}
+{-(2048)}
+{chardp:=-2048}
+{shipout}
+{nullpicture}
+! Enormous chardp has been reduced.
+<to be read again>
+ ]]
+l.52 ...48;shipout nullpicture]]
+ ;
+Font metric dimensions must be less than 2048pt.
+
+{restoring proofing=0}
+{endgroup}
+{if}
+{-(275.50002)}
+{charexists(-275.50002)}
+{known(unknown path p0 0p)}
+{(true)>(false)}
+{known(path)}
+{(true)=(true)}
+{true}
+{randomseed}
+! Missing `:=' has been inserted.
+<to be read again>
+ charcode
+l.53 ... p~: randomseed charcode
+ ; fi
+Always say `randomseed:=<numeric expression>'.
+
+{randomseed:=-20.5}
+{fi}
+{randomseed}
+>> "goof"
+! Unknown value will be ignored.
+<to be read again>
+ ;
+l.54 randomseed:="goof";
+ a[($,18++1+-+18),(2,3)]=b[(3,2),(1,$);
+Your expression was too random for me to handle,
+so I won't change the random seed just now.
+
+{(18)++(1)}
+{(18.02776)+-+(18)}
+{((2,3))-((-1,1))}
+{(a)*((3,2))}
+{((-1,1))+((3a,2a))}
+! Missing `]' has been inserted.
+<to be read again>
+ ;
+l.54 ...8),(2,3)]=b[(3,2),(1,$);
+
+I've scanned an expression of the form `a[b,c',
+so a right bracket should have come next.
+I shall pretend that one was there.
+
+{((1,-1))-((3,2))}
+{(b)*((-2,-3))}
+{((3,2))+((-2b,-3b))}
+{((3a-1,2a+1))=((-2b+3,-3b+2))}
+## b=-0.66667a+0.33333
+## a=2
+#### b=-1
+{show}
+{(^)+(1)}
+{(~)+(2)}
+{-(1)}
+{((^+1,~+2))slanted(-1)}
+{-(2)}
+{((linearform,~+2))yscaled(-2)}
+{-((3,4))}
+{((linearform,-2~-4))zscaled((-3,-4))}
+>> (-5~-3^-13,10~-4^+16)
+{((xpart pp,ypart pp,xxpart pp,xypart pp,yxpart pp,yypart pp))xscaled(9)
+}
+{((8,1,5,-5,-5,5))transformed((9xpart pp,ypart pp,9xxpart pp,9xypart pp,
+yxpart pp,yypart pp))}
+>> (9xpart pp+72xxpart pp+9xypart pp,ypart pp+8yxpart pp+yypart pp,45xxp
+art pp-45xypart pp,-45xxpart pp+45xypart pp,5yxpart pp-5yypart pp,-5yxpa
+rt pp+5yypart pp)
+{((xpart pp,ypart pp,xxpart pp,xypart pp,yxpart pp,yypart pp))shifted((1
+,2))}
+{((8,1,5,-5,-5,5))transformed((8,1,5,-5,-5,5))}
+{((xpart pp+1,ypart pp+2,xxpart pp,xypart pp,yxpart pp,yypart pp))transf
+ormed((43,-34,50,-50,-50,50))}
+>> (50xpart pp-50ypart pp-7,-50xpart pp+50ypart pp+16,50xxpart pp-50yxpa
+rt pp,50xypart pp-50yypart pp,-50xxpart pp+50yxpart pp,-50xypart pp+50yy
+part pp)
+{(2)-(1)}
+{(_0)*(1)}
+{(1)+(_0)}
+{-(_0+1)}
+>> -_0-1
+{show}
+{normaldeviate}
+{-(-2048)}
+{uniformdeviate(2048)}
+{angle((-0.41438,761.67789))}
+{cosd(90.03117)}
+{(200)*(-0.00055)}
+{mexp(-0.10986)}
+{sqrt(0.99957)}
+{mlog(0.99979)}
+{sind(-0.05469)}
+{floor(-0.00096)}
+>> -1
+{string}
+{(unknown string s2)=(unknown string s4)}
+{(unknown string s1)=(unknown string s2)}
+{(unknown string s3)=(unknown string s5)}
+{(unknown string s2)=(unknown string s4)}
+! Redundant equation.
+<to be read again>
+ ;
+l.58 ... s1=s2=s4; s3=s5; s1=s2;
+ if s1<=s4<>(s1<>s3):show[[ch...
+I already knew that this equation was true.
+But perhaps no harm has been done; let's continue.
+
+{if}
+{(unknown string s2)<=(unknown string s1)}
+{(unknown string s2)<>(unknown string s5)}
+>> unknown string s2
+>> unknown string s5
+! Unknown relation will be considered false.
+<to be read again>
+ )
+l.58 ...=s2; if s1<=s4<>(s1<>s3)
+ :show[[char34=s2:=s3]]fi;
+The quantities shown above have not been equated.
+
+{(true)<>(false)}
+{true}
+{show}
+{begingroup}
+{char(34)}
+{s2:=unknown string s5}
+{(""")=(unknown string s2)}
+{endgroup}
+{fi}
+>> vacuous
+{(0.1)point(path)}
+{begingroup}
+{pencircle}
+Pen polygon at line 59 (newly created):
+(0.5,0)
+ .. (0,0.5)
+ .. (-0.5,0)
+ .. (0,-0.5)
+ .. cycle
+
+{endgroup}
+{((3.24413,0.64801))penoffset(pen)}
+{((0,-0.5))rotated(540)}
+{((0,0.5))/(0.33333)}
+{-(1.5)}
+! Paths don't touch; `&' will be changed to `..'.
+<to be read again>
+ )
+l.60 ...tcontrol-1.5of(p~&cycle)
+ -precontrol1/2of p~(p~)=s1:=s...
+When you join paths `p&q', the ending point of p
+must be exactly equal to the starting point of q.
+So I'm going to pretend that you said `p..q' instead.
+
+Path at line 60, before choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+ ..cycle
+
+Path at line 60, after choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)..controls (17.52783,8.54388) and (-15.45978,-4.12262)
+ ..cycle
+
+{(-1.5)postcontrol(path)}
+{(0.5)precontrol(path)}
+{((-2.75,-5))-((3.75,-1))}
+! Missing `of' has been inserted for directiontime.
+<to be read again>
+ (
+l.60 ...cle)-precontrol1/2of p~(
+ p~)=s1:=s4:=s4;
+I've got the first argument; will look now for the other.
+
+{((-6.5,-4))directiontime(path)}
+{decimal(0.5)}
+{((0,1.50003))substring("0.5")}
+{s4:=unknown string s1}
+{s1:=unknown string s4}
+{("0.")=(unknown string s1)}
+{path}
+{length(" ")}
+! Missing `,' has been inserted.
+<to be read again>
+ }
+l.61 ...p~[]; p~1=p2{length" "}
+ &cycle; p~1=p2=p~0; p2..contr...
+I've got the x coordinate of a path direction;
+will look for the y coordinate next.
+
+! An expression can't begin with `}'.
+<inserted text>
+ 0
+<to be read again>
+ }
+l.61 ...p~[]; p~1=p2{length" "}
+ &cycle; p~1=p2=p~0; p2..contr...
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+Path at line 61, before choices:
+(5,-5){4096,0}
+ ..{4096,0}cycle
+
+Path at line 61, after choices:
+(5,-5)..controls (5,-5) and (5,-5)
+ ..cycle
+
+{(unknown path p~1)=(path)}
+{((5,-5))=(unknown path p~0)}
+{(path)=(path)}
+! Redundant or inconsistent equation.
+<to be read again>
+ ;
+l.61 ..." "}&cycle; p~1=p2=p~0;
+ p2..controls-p2..cycle=p~2;(p7
+An equation between already-known quantities can't help.
+But don't worry; continue and I'll just ignore it.
+
+{-((5,-5))}
+Path at line 61, before choices:
+(5,-5)..controls (-5,5) and (-5,5)
+ ..cycle
+
+Path at line 61, after choices:
+(5,-5)..controls (-5,5) and (-5,5)
+ ..cycle
+
+{(path)=(unknown path p~2)}
+{length(path)}
+Path at line 62, before choices:
+(3,6)..tension 1.2
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)
+ ..(5,-5)..controls (-5,5) and (-5,5)
+ ..(5,-5){0,4096}..tension 1 and atleast1
+ ..cycle
+
+Path at line 62, after choices:
+(3,6)..controls (-3.01212,4.82085) and (-1.0424,-6.01257)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (-5,5) and (-5,5)
+ ..(5,-5)..controls (5,0.02791) and (4.99951,6.39217)
+ ..cycle
+
+>> x
+! Improper tension has been set to 1.
+<to be read again>
+ ..
+l.63 x..
+ {curl1}-p7{curl hex "IsBad"}..tension.75and.74999..p...
+The expression above should have been a number >=3/4.
+
+{-((3,6))}
+{hex("IsBad")}
+>> "IsBad"
+! String contains illegal digits.
+<to be read again>
+ }
+l.63 ...l1}-p7{curl hex "IsBad"}
+ ..tension.75and.74999..p2{0,1...
+I zeroed out characters that weren't hex digits.
+
+>> 0.74998
+! Improper tension has been set to 1.
+<to be read again>
+ ..
+l.63 ...}..tension.75and.74999..
+ p2{0,1}&p2{_,'}..cycle:=p
+The expression above should have been a number >=3/4.
+
+>> _
+! Undefined x coordinate has been replaced by 0.
+<to be read again>
+ ,
+l.63 ...and.74999..p2{0,1}&p2{_,
+ '}..cycle:=p
+I need a `known' x value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+>> (xpart ',ypart ')
+! Undefined y coordinate has been replaced by 0.
+<to be read again>
+ }
+l.63 ...d.74999..p2{0,1}&p2{_,'}
+ ..cycle:=p
+I need a `known' y value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+Path at line 63, before choices:
+(3,6)..controls (-3.01212,4.82085) and (-1.0424,-6.01257)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (-5,5) and (-5,5)
+ ..(5,-5)..controls (5,0.02791) and (4.99951,6.39217)
+ ..(3,6)
+ ..{curl 1}(-3,-6){curl 2989}..tension 0.75 and 1
+ ..{0,4096}(5,-5){curl 1}
+ ..cycle
+
+Path at line 63, after choices:
+(3,6)..controls (-3.01212,4.82085) and (-1.0424,-6.01257)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (-5,5) and (-5,5)
+ ..(5,-5)..controls (5,0.02791) and (4.99951,6.39217)
+ ..(3,6)..controls (-2.44821,4.93144) and (-5.41408,-1.00029)
+ ..(-3,-6)..controls (-3.70045,-12.19485) and (5,-11.61679)
+ ..(5,-5)..controls (12.45406,-3.75087) and (10.41669,7.45464)
+ ..cycle
+
+>> path
+! Improper `:=' will be changed to `='.
+l.63 ...p2{0,1}&p2{_,'}..cycle:=
+ p
+I didn't find a variable name at the left of the `:=',
+so I'm going to pretend that you said `=' instead.
+
+{(path)=(unknown path p~4)}
+{-(9)}
+{((3.5001,7.00002))subpath(path)}
+{((-9,9))subpath(path)}
+{(path)=(unknown path p~6)}
+{show}
+>> Path at line 65:
+(-2.5,2.5)..controls (-2.49893,2.49893) and (0.00107,-0.00107)
+ ..(5,-5)..controls (5,0.02791) and (4.99951,6.39217)
+ ..(3,6)..controls (-2.44821,4.93144) and (-5.41408,-1.00029)
+ ..(-3,-6)..controls (-3.70045,-12.19485) and (5,-11.61679)
+ ..(5,-5)..controls (5.0001,-4.99998) and (5.00021,-4.99997)
+ ..(5.00032,-4.99995)
+
+{((1,2))directiontime(path)}
+>> 1
+{-(1.00002)}
+{((1,-1.00002))directiontime(path)}
+>> 3.24937
+Path at line 66, before choices:
+(0,0)..controls (1,1) and (0,1)
+ ..(1,0)
+
+Path at line 66, after choices:
+(0,0)..controls (1,1) and (0,1)
+ ..(1,0)
+
+{(unknown path p~3)=(path)}
+{show}
+Path at line 66, before choices:
+(5,-5){-2896.30943,-2896.30934}
+ ..{1831.78674,3663.57385}cycle
+
+Path at line 66, after choices:
+(5,-5)..controls (5,-5) and (5,-5)
+ ..cycle
+
+>> Path at line 66:
+(5,-5)..controls (5,-5) and (5,-5)
+ ..cycle
+
+{((0.31416,1))subpath(path)}
+{((1,1))directiontime(path)}
+{(1)-(0.31416)}
+{(0.27097)*(0.68584)}
+{(0.31416)+(0.18584)}
+>> 0.5
+{((0,0.25))subpath(path)}
+{((0.25,1))subpath(path)}
+Path at line 68, before choices:
+(0,0)..controls (0.25,0.25) and (0.375,0.4375)
+ ..(0.4375,0.5625)..controls (0.625,0.9375) and (0.25,0.75)
+ ..(1,0)
+
+Path at line 68, after choices:
+(0,0)..controls (0.25,0.25) and (0.375,0.4375)
+ ..(0.4375,0.5625)..controls (0.625,0.9375) and (0.25,0.75)
+ ..(1,0)
+
+! Missing `endtext' has been inserted.
+<to be read again>
+ ;
+l.68 ...~3)shifted begintext1,0;
+
+I found no right delimiter to match a left one. So I've
+put one in, behind the scenes; this may fix the problem.
+
+{(path)shifted((1,0))}
+{(unknown path p~5)=(path)}
+{(2/3)*((xpart ',ypart '))}
+{((0.66667xpart ',0.66667ypart '))zscaled((xpart ',ypart '))}
+>> (0,0,xpart ',-ypart ',ypart ',xpart ')
+! Transform components aren't all known.
+<to be read again>
+ {
+l.69 p~3:=2/3'zscaled'{
+ p~3}..controls(2,2/3(3))and penoffset(...
+I'm unable to apply a partially specified transformation
+except to a fully known pair or transform.
+Proceed, and I'll omit the transformation.
+
+>> 0.66667xpart '
+! Undefined x coordinate has been replaced by 0.
+<to be read again>
+ {
+l.69 p~3:=2/3'zscaled'{
+ p~3}..controls(2,2/3(3))and penoffset(...
+I need a `known' x value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+>> 0.66667ypart '
+! Undefined y coordinate has been replaced by 0.
+<to be read again>
+ {
+l.69 p~3:=2/3'zscaled'{
+ p~3}..controls(2,2/3(3))and penoffset(...
+I need a `known' y value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+>> path
+! Undefined coordinates have been replaced by (0,0).
+<to be read again>
+ }
+l.69 p~3:=2/3'zscaled'{p~3}
+ ..controls(2,2/3(3))and penoffset(...
+I need x and y numbers for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+{(2/3)*(3)}
+{(1/2)*(x)}
+{((0.5x,-5))penoffset((0,1))}
+>> (0.5x,-5)
+>> (0,1)
+! Not implemented: penoffset(unknown pair)of(pair).
+<to be read again>
+ (
+l.69 ...enoffset(1/2x,y)of(0,1)(
+ 1,0);
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+! Missing `..' has been inserted.
+<to be read again>
+ (
+l.69 ...enoffset(1/2x,y)of(0,1)(
+ 1,0);
+A path join command should end with two dots.
+
+Path at line 69, before choices:
+(0,0)..controls (2,2) and (0,1)
+ ..(1,0)
+
+Path at line 69, after choices:
+(0,0)..controls (2,2) and (0,1)
+ ..(1,0)
+
+{p~3:=path}
+{show}
+{reverse(path)}
+{(path)intersectiontimes(path)}
+>> (0.17227,0.28339)
+{(0.17227)point(path)}
+>> (0.71329,0.78188)
+{(1)-(0.28339)}
+{(0.71661)point(path)}
+>> (0.7133,0.78189)
+{show}
+{(path)shifted((0.01,0))}
+{(path)intersectiontimes(path)}
+{xpart((1.47693,1.18973))}
+{(1.47693)point(path)}
+{(path)shifted((0.01,0))}
+{(path)intersectiontimes(path)}
+{ypart((1.47693,1.18973))}
+{(1.18973)point(path)}
+{((1.50499,0.71521))-((1.495,0.71521))}
+>> (0.01,0)
+{begingroup}
+{interim}
+{tracingedges:=1}
+{-(1)}
+{-(1.00002)}
+{(-1)+-+(-1.00002)}
+! Pythagorean subtraction 1+-+1.00002 has been replaced by 0.
+l.73 ...es:=1; e[-1+-+ -1.00001]
+ =nullpicture; addto e1 also[[
+Since I don't take square roots of negative numbers,
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{nullpicture}
+{(unknown picture e0)=(picture)}
+{addto}
+{begingroup}
+{addto}
+{(path)scaled(3)}
+Path at line 74, before subdivision into octants:
+(3,0)..controls (3.75,0.75) and (4.125,1.3125)
+ ..(4.3125,1.6875)..controls (4.875,2.8125) and (3.75,2.25)
+ ..(6,0)..controls (3.75,2.25) and (4.875,2.8125)
+ ..(4.3125,1.6875)..controls (4.125,1.3125) and (3.75,0.75)
+ ..cycle
+
+Cycle spec at line 74, after subdivision:
+(3,0) % beginning in octant `NNE'
+ ..controls (3.75,0.75) and (4.125,1.3125)
+ ..(4.3125,1.6875) % segment 0
+ ..controls (4.5,2.0625) and (4.5,2.25)
+ ..(4.5,2.25) % segment 1
+% entering octant `NNW'
+% entering octant `WNW'
+% entering octant `WSW'
+% entering octant `SSW'
+% entering octant `SSE'
+ ..controls (4.5,2.25) and (4.5,1.5)
+ ..(6,0) % segment 1
+% entering octant `ESE'
+% entering octant `ENE'
+% entering octant `NNE'
+% entering octant `NNW'
+ ..controls (4.5,1.5) and (4.5,2.25)
+ ..(4.5,2.25) % segment 2
+% entering octant `WNW'
+% entering octant `WSW'
+% entering octant `SSW'
+ ..controls (4.5,2.25) and (4.5,2.0625)
+ ..(4.3125,1.6875) % segment 2
+ ..controls (4.125,1.3125) and (3.75,0.75)
+ ..(3,0) % segment 3
+% entering octant `SSE'
+% entering octant `ESE'
+% entering octant `ENE'
+ & cycle
+
+Tracing edges at line 74: (weight 1)
+(4,0)(4,1)(5,1)(5,3)(4,3)(4,1)(5,1)(5,0)(6,0)(6,1)(5,1)(5,3)
+(4,3)(4,1)(3,1)(3,0).
+
+{(unknown picture e1)=(unknown picture e2)}
+{(picture)=(unknown picture e1)}
+{cull}
+{nullpicture}
+{endgroup}
+{show}
+{-(4095)}
+{(picture)shifted((4089,-4095))}
+>> Edge structure at line 75:
+row -4093: | 4093+ 4094-
+row -4094: | 4093+ 4094-
+row -4095: | 4092+ 4093- 4094+ 4095-
+
+{-(4095)}
+{(picture)shifted((-4095,4092))}
+{-(3)}
+{(picture)shifted((-3,0))}
+>> Edge structure at line 75:
+row 4094: -4094+ -4093- -4094+ -4093- |
+row 4093: -4094+ -4093- -4094+ -4093- |
+row 4092: -4095+ -4092- -4093+ -4094- |
+
+{-(4095)}
+{(picture)shifted((4089,-4095))}
+! Too far to shift.
+<to be read again>
+ ]]
+l.76 e2 shifted(4089,-4095)]]
+ ;addto e1 also e2 shifted(-2,$)...
+I can't shift the picture as requested---it would
+make some coordinates too large or too small.
+Proceed, and I'll omit the transformation.
+
+>> Edge structure at line 76:
+row 2: 4+ 5- 4+ 5- |
+row 1: 4+ 5- 4+ 5- |
+row 0: 3+ 6- 5+ 4- |
+
+{restoring tracingedges=32767.99998}
+{endgroup}
+{addto}
+{-(2)}
+{(picture)shifted((-2,-1))}
+{-(4)}
+{(picture)shifted((-4,-1))}
+{e1:=picture}
+{addto}
+{(picture)rotated(89.999)}
+! That transformation is too hard.
+<to be read again>
+ +
+l.77 ...e0 also e1rotated89.999+
+ e1scaled$; show e0 xscaled-10...
+I can apply complicated transformations to paths,
+but I can only do integer operations on pictures.
+Proceed, and I'll omit the transformation.
+
+{(picture)scaled(-1)}
+{(picture)+(picture)}
+{show}
+{-(10)}
+{(picture)xscaled(-10)}
+{(picture)yscaled(2)}
+{(picture)xscaled(82)}
+! Scaled picture would be too big.
+<to be read again>
+ yscaled
+l.78 yscaled
+ 683;addto e1 doublepath (0,9) withweight-3 withwe...
+I can't xscale the picture as requested---it would
+make some coordinates too large or too small.
+Proceed, and I'll omit the transformation.
+
+{(picture)yscaled(683)}
+! Scaled picture would be too big.
+<to be read again>
+ ;
+l.78 yscaled683;
+ addto e1 doublepath (0,9) withweight-3 withwe...
+I can't yscale the picture as requested---it would
+make some coordinates too large or too small.
+Proceed, and I'll omit the transformation.
+
+>> Edge structure at line 78:
+row 5: -40- -50+ -40- -50+ |
+row 4: -40- -50+ -40- -50+ |
+row 3: -30+ 0- -10+ -20- -40- -50+ -40- -50+ | -10+ 0-
+row 2: -30+ 0- -10+ -20- -40- -50+ -40- -50+ | -10+ 0-
+row 1: 20- 10+ 20- 10+ -20+ -10- -20+ -10- -30- -60+ -50- -40+ |
+ -10+ -10+ 0- 0- 10+ 20-
+row 0: 20- 10+ 20- 10+ -20+ -10- -20+ -10- -30- -60+ -50- -40+ |
+ -10+ -10+ 0- 0- 10+ 20-
+row -1: 20- 10+ 20- 10+ -20+ -10- -20+ -10- | -20+ -10- 0+ 0+ 10-
+ 10-
+row -2: 20- 10+ 20- 10+ -20+ -10- -20+ -10- | -20+ -10- 0+ 0+ 10-
+ 10-
+row -3: 30- 0+ 10- 20+ | 0+ 10-
+row -4: 30- 0+ 10- 20+ | 0+ 10-
+
+{addto}
+{-(3)}
+{turningnumber(path)}
+! Weight must be -3, -2, -1, +1, +2, or +3.
+<to be read again>
+ withpen
+l.79 withpen
+ pencircle xscaled(oct"180"++1) rotated-angle(64...
+I'll ignore the bad `with' clause and look for another.
+
+{pencircle}
+{oct("180")}
+>> "180"
+! String contains illegal digits.
+<to be read again>
+ ++
+l.79 ...ircle xscaled(oct"180"++
+ 1) rotated-angle(64,$) shifte...
+I zeroed out characters that weren't in the range 0..7.
+
+{(64)++(1)}
+{(future pen)xscaled(64.00781)}
+{angle((64,-1))}
+{-(-0.89517)}
+{(future pen)rotated(0.89517)}
+{(future pen)shifted((9,8))}
+Pen polygon at line 80 (newly created):
+(9,7.5)
+ .. (37.5,8)
+ .. (41,8.5)
+ .. (9,8.5)
+ .. (-19.5,8)
+ .. (-23,7.5)
+ .. cycle
+
+Path at line 80, before choices:
+(-1,-1){curl 1}
+ ..(1,0)
+ ..(1,1)
+ ..(-1,0)
+ ..{curl 1}cycle
+
+Path at line 80, after choices:
+(-1,-1)..controls (-0.18568,-1.14464) and (0.62712,-0.73824)
+ ..(1,0)..controls (1.16457,0.32584) and (1.21637,0.71506)
+ ..(1,1)..controls (0.46898,1.69931) and (-0.7587,1.2167)
+ ..(-1,0)..controls (-1.06546,-0.33012) and (-1.06546,-0.66988)
+ ..cycle
+
+{makepen(path)}
+{(future pen)xscaled(4095.49998)}
+Pen polygon at line 80 (newly created):
+(4095.49998,0)
+ .. (4095.49998,1)
+ .. (-4095.49998,0)
+ .. (-4095.49998,-1)
+ .. cycle
+
+Path at line 80, before subdivision into octants:
+(0,9)..controls (0,9) and (0,9)
+ ..cycle
+
+! Curve out of range.
+<to be read again>
+ ;
+l.80 ...cycle)xscaled4095.49999;
+
+At least one of the coordinates in the path I'm about to
+digitize was really huge (potentially bigger than 4095).
+So I've cut it back to the maximum size.
+The results will probably be pretty wild.
+
+Cycle spec at line 80, after subdivision:
+(0,0) % beginning in octant `ENE'
+% entering octant `NNE'
+% entering octant `NNW'
+% entering octant `WNW'
+% entering octant `WSW'
+% entering octant `SSW'
+% entering octant `SSE'
+% entering octant `ESE'
+ & cycle
+
+Tracing edges at line 80: (weight -3)
+@ Octant ENE (2 offsets), from (-4095.49998,-1) to (4095.49998,0)
+@ transition line 0, from (-4095.49998,-1) to (-4095.49998,-1)
+@ transition line 1, from (-4095.49998,-1) to (4095.49998,0)
+@ transition line 2, from (4095.49998,0) to (4095.49998,0)
+(0,-1)
+@ Octant NNE (1 offset), from (4095.49998,0) to (4095.49998,1)
+@ transition line 2, from (4095.49998,0) to (4095.49998,0)
+@ transition line 1, from (4095.49998,0) to (4095.49998,1)
+(0,0)(4095,0)
+@ Octant NNW (0 offsets), from (4095.49998,1) to (4095.49998,1)
+@ transition line 0, from (4095.49998,1) to (4095.49998,1)
+@ Octant WNW (0 offsets), from (4095.49998,1) to (4095.49998,1)
+@ transition line 1, from (4095.49998,1) to (4095.49998,1)
+@ Octant WSW (2 offsets), from (4095.49998,1) to (-4095.49998,0)
+@ transition line 0, from (4095.49998,1) to (4095.49998,1)
+@ transition line 1, from (4095.49998,1) to (-4095.49998,0)
+@ transition line 2, from (-4095.49998,0) to (-4095.49998,0)
+(4095,1)(0,1)
+@ Octant SSW (1 offset), from (-4095.49998,0) to (-4095.49998,-1)
+@ transition line 2, from (-4095.49998,0) to (-4095.49998,0)
+@ transition line 1, from (-4095.49998,0) to (-4095.49998,-1)
+(0,0)(-4095,0)
+@ Octant SSE (0 offsets), from (-4095.49998,-1) to (-4095.49998,-1)
+@ transition line 0, from (-4095.49998,-1) to (-4095.49998,-1)
+@ Octant ESE (0 offsets), from (-4095.49998,-1) to (-4095.49998,-1)
+@ transition line 1, from (-4095.49998,-1) to (-4095.49998,-1)
+(-4095,-1).
+
+{show}
+>> Edge structure at line 81:
+row 1: | 0+ 1-
+row 0: 0--- 4095+++ -2+ -1- -2+ -1- | 0+ 1-
+row -1: -4095--- 0+++ -2+ -1- -2+ -1- | -1+ 0- 1+ 2-
+row -2: -3+ 0- -1+ -2- |
+
+{totalweight(picture)}
+>> -0.37476
+{charcode:=5}
+{chardp:=5}
+{-(1.5)}
+{xoffset:=-1.5}
+{shipout}
+[5]
+Edge structure at line 81 (just shipped out):
+row 1: | -1+ 0-
+row 0: | -3+ -3+ -2- -2- -1--- -1+ 0- 4094+++
+row -1: | -4096--- -3+ -3+ -2- -2- -2+ -1- -1+++ 0+ 1-
+row -2: | -4+ -3- -2+ -1-
+
+{showstats}
+Memory usage 1084&202 (749 still untouched)
+String usage 24&92 (1863&21408 still untouched)
+{addto}
+{(path)yscaled(0.01666)}
+Path at line 82, before subdivision into octants:
+(0,0)..controls (15,0.06665) and (-15,-0.19995)
+ ..(4,0)..controls (-15,-0.19995) and (15,0.06665)
+ ..cycle
+
+Cycle spec at line 82, after subdivision:
+(0,0) % beginning in octant `ENE'
+ ..controls (1.74272,0.00775) and (2.87802,0.01099)
+ ..(3.55333,0.01099) % segment 0
+% entering octant `ESE'
+ ..controls (4.12251,0.01099) and (4.36491,0.00868)
+ ..(4.36877,0.00482) % segment 0
+% entering octant `SSE'
+ ..controls (4.3688,0.00479) and (4.36882,0.00476)
+ ..(4.36882,0.00473) % segment 0
+% entering octant `SSW'
+ ..controls (4.36882,0.0047) and (4.3688,0.00467)
+ ..(4.36877,0.00464) % segment 0
+% entering octant `WSW'
+ ..controls (4.34875,-0.01538) and (-1.88759,-0.07579)
+ ..(-2.48894,-0.07579) % segment 0
+% entering octant `WNW'
+ ..controls (-2.5191,-0.07579) and (-2.5351,-0.07564)
+ ..(-2.53542,-0.07532) % segment 0
+% entering octant `NNW'
+% entering octant `NNE'
+% entering octant `ENE'
+ ..controls (-2.53209,-0.07199) and (-0.88672,-0.05144)
+ ..(4,0) % segment 0
+% entering octant `NNE'
+% entering octant `NNW'
+% entering octant `WNW'
+% entering octant `WSW'
+ ..controls (-0.88672,-0.05144) and (-2.5321,-0.072)
+ ..(-2.53542,-0.07532) % segment 1
+% entering octant `SSW'
+% entering octant `SSE'
+% entering octant `ESE'
+ ..controls (-2.53511,-0.07562) and (-2.5191,-0.07579)
+ ..(-2.48894,-0.07579) % segment 1
+% entering octant `ENE'
+ ..controls (-1.88759,-0.07579) and (4.34877,-0.01537)
+ ..(4.36877,0.00464) % segment 1
+% entering octant `NNE'
+ ..controls (4.3688,0.00467) and (4.36882,0.0047)
+ ..(4.36882,0.00473) % segment 1
+% entering octant `NNW'
+ ..controls (4.36882,0.00476) and (4.3688,0.00479)
+ ..(4.36877,0.00482) % segment 1
+% entering octant `WNW'
+ ..controls (4.36491,0.00868) and (4.12251,0.01099)
+ ..(3.55333,0.01099) % segment 1
+% entering octant `WSW'
+ ..controls (2.87802,0.01099) and (1.74272,0.00775)
+ ..(0,0) % segment 1
+% entering octant `SSW'
+% entering octant `SSE'
+% entering octant `ESE'
+ & cycle
+
+Tracing edges at line 82: (weight 1)
+(No new edges added.)
+
+{(picture)yscaled(0)}
+{e3:=picture}
+{autorounding:=2}
+{addto}
+Path at line 83, before choices:
+(0.5,0){curl 1}
+ ..{curl 1}(3.5,1.5)
+
+Path at line 83, after choices:
+(0.5,0)..controls (1.5,0.5) and (2.5,1)
+ ..(3.5,1.5)
+
+Path at line 83, before subdivision into octants:
+(0.5,0)..controls (1.5,0.5) and (2.5,1)
+ ..(3.5,1.5)..controls (2.5,1) and (1.5,0.5)
+ ..cycle
+
+Cycle spec at line 83, after subdivision and double autorounding:
+(0.5,0) % beginning in octant `ENE'
+ ..controls (1.5,0.5) and (2.5,1)
+ ..(3.5,1.5) % segment 0
+% entering octant `NNE'
+% entering octant `NNW'
+% entering octant `WNW'
+% entering octant `WSW'
+ ..controls (2.5,1) and (1.5,0.5)
+ ..(0.5,0) % segment 1
+% entering octant `SSW'
+% entering octant `SSE'
+% entering octant `ESE'
+ & cycle
+
+Tracing edges at line 83: (weight 2)
+(2,0)(2,1)(4,1)(4,2)(4,1)(2,1)(2,0).
+
+{tracingspecs:=0}
+Path at line 84, before choices:
+(1,1)
+ ..cycle
+
+Path at line 84, after choices:
+(1,1)..controls (1,1) and (1,1)
+ ..cycle
+
+{makepen(path)}
+{(future pen)yscaled(1.5)}
+Pen polygon at line 84 (newly created):
+(1,1.5)
+ .. cycle
+
+{q:=pen}
+{((-1,yy))rotated((8,1,5,-5,-5,5))}
+>> (8,1,5,-5,-5,5)
+! Improper transformation argument.
+<to be read again>
+ {
+l.85 p~8=(($,yy)rotated p{
+ 0,1}..{0,$}(1,0){0,$}..cycle)scaled...
+The expression shown above has the wrong type,
+so I can't transform anything using it.
+Proceed, and I'll omit the transformation.
+
+>> yy
+! Undefined y coordinate has been replaced by 0.
+<to be read again>
+ {
+l.85 p~8=(($,yy)rotated p{
+ 0,1}..{0,$}(1,0){0,$}..cycle)scaled...
+I need a `known' y value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+Path at line 85, before choices:
+(-1,0){0,4096}
+ ..{0,-4096}(1,0){0,-4096}
+ ..{0,4096}cycle
+
+Path at line 85, after choices:
+(-1,0)..controls (-1,1.33333) and (1,1.33333)
+ ..(1,0)..controls (1,-1.33333) and (-1,-1.33333)
+ ..cycle
+
+{(path)scaled(2)}
+{(path)shifted((1000.49,9))}
+{(unknown path p~8)=(path)}
+{turningcheck:=1}
+{addto}
+>> (8,1,5,-5,-5,5)
+! Improper type.
+<to be read again>
+ withpen
+l.86 ...n q withweight p withpen
+ cycle p;
+Next time say `withweight <known numeric expression>';
+I'll ignore the bad `with' clause and look for another.
+
+{cycle((8,1,5,-5,-5,5))}
+>> false
+! Improper type.
+<to be read again>
+ ;
+l.86 ...eight p withpen cycle p;
+
+Next time say `withpen <known pen expression>';
+I'll ignore the bad `with' clause and look for another.
+
+Tracing edges at line 86: (weight 1)
+@ Octant NNE (0 offsets), from (999,10.5) to (999.15451,11.65451)
+@ transition line 1, from (999.15451,11.65451) to (999.15451,11.65451)
+(999,11)
+@ Octant ENE (0 offsets), from (999.15451,11.65451) to (1001,12)
+@ transition line 0, from (999.15451,11.65451) to (999.15451,11.65451)
+@ Octant ESE (0 offsets), from (1001,12) to (1002.8455,11.6545)
+@ transition line 1, from (1002.8455,11.6545) to (1002.8455,11.6545)
+@ Octant SSE (0 offsets), from (1002.8455,11.6545) to (1003,10.5)
+@ transition line 0, from (1002.8455,11.6545) to (1002.8455,11.6545)
+(999,12)(1003,12)
+@ Octant SSW (0 offsets), from (1003,10.5) to (1002.84549,9.34549)
+@ transition line 1, from (1002.84549,9.34549) to (1002.84549,9.34549)
+@ Octant WSW (0 offsets), from (1002.84549,9.34549) to (1001,9)
+@ transition line 0, from (1002.84549,9.34549) to (1002.84549,9.34549)
+@ Octant WNW (0 offsets), from (1001,9) to (999.1545,9.3455)
+@ transition line 1, from (999.1545,9.3455) to (999.1545,9.3455)
+@ Octant NNW (0 offsets), from (999.1545,9.3455) to (999,10.5)
+@ transition line 0, from (999.1545,9.3455) to (999.1545,9.3455)
+(1003,9)(999,9)(999,11).
+
+Tracing edges at line 86: (weight 1)
+@ Octant SSE (0 offsets), from (999,10.5) to (999.15451,9.34549)
+@ transition line 0, from (999,10.5) to (999,10.5)
+(999,11)
+@ Octant ESE (0 offsets), from (999.15451,9.34549) to (1001,9)
+@ transition line 1, from (1001,9) to (1001,9)
+@ Octant ENE (0 offsets), from (1001,9) to (1002.8455,9.3455)
+@ transition line 0, from (1001,9) to (1001,9)
+@ Octant NNE (0 offsets), from (1002.8455,9.3455) to (1003,10.5)
+@ transition line 1, from (1003,10.5) to (1003,10.5)
+(999,9)(1003,9)
+@ Octant NNW (0 offsets), from (1003,10.5) to (1002.84549,11.65451)
+@ transition line 0, from (1003,10.5) to (1003,10.5)
+@ Octant WNW (0 offsets), from (1002.84549,11.65451) to (1001,12)
+@ transition line 1, from (1001,12) to (1001,12)
+@ Octant WSW (0 offsets), from (1001,12) to (999.1545,11.6545)
+@ transition line 0, from (1001,12) to (1001,12)
+@ Octant SSW (0 offsets), from (999.1545,11.6545) to (999,10.5)
+@ transition line 1, from (999,10.5) to (999,10.5)
+(1003,12)(999,12)(999,11).
+
+{begingroup}
+{interim}
+{(xx)=(0.1)}
+## xx=0.1
+{autorounding:=0.1}
+{addto}
+Tracing edges at line 87: (weight -2)
+@ Octant NNE (0 offsets), from (999,10.5) to (999.38197,11.42706)
+@ transition line 1, from (999.38197,11.42706) to (999.38197,11.42706)
+@ Octant ENE (0 offsets), from (999.38197,11.42706) to (1001,12)
+@ transition line 0, from (999.38197,11.42706) to (999.38197,11.42706)
+(999,11)
+@ Octant ESE (0 offsets), from (1001,12) to (1002.61804,11.42705)
+@ transition line 1, from (1002.61804,11.42705) to (1002.61804,11.42705)
+(999,12)(1003,12)
+@ Octant SSE (0 offsets), from (1002.61804,11.42705) to (1003,10.5)
+@ transition line 0, from (1002.61804,11.42705) to (1002.61804,11.42705)
+@ Octant SSW (0 offsets), from (1003,10.5) to (1002.61803,9.57294)
+@ transition line 1, from (1002.61803,9.57294) to (1002.61803,9.57294)
+@ Octant WSW (0 offsets), from (1002.61803,9.57294) to (1001,9)
+@ transition line 0, from (1002.61803,9.57294) to (1002.61803,9.57294)
+@ Octant WNW (0 offsets), from (1001,9) to (999.38196,9.57295)
+@ transition line 1, from (999.38196,9.57295) to (999.38196,9.57295)
+(1003,9)(999,9)
+@ Octant NNW (0 offsets), from (999.38196,9.57295) to (999,10.5)
+@ transition line 0, from (999.38196,9.57295) to (999.38196,9.57295)
+(999,11).
+
+{restoring autorounding=2}
+{endgroup}
+{-(14.5)}
+{charext:=-14.5}
+{chardp:=-14.5}
+{chardx:=-14.5}
+{shipout}
+{-(picture)}
+{(picture)-(picture)}
+{-(picture)}
+{turningnumber(path)}
+{(6)*(-1)}
+{(picture)shifted((0,-6))}
+{(picture)+(picture)}
+[5.-14]
+Edge structure at line 88 (just shipped out):
+row 11: | 998- 998+ 998++ 1002-- 1002- 1002+
+row 10: | 998- 998+ 998++ 1002-- 1002- 1002+
+row 9: | 998- 998+ 998++ 1002-- 1002- 1002+
+row 5: | 998- 998+ 998++ 1002-- 1002- 1002+
+row 4: | 998- 998+ 998++ 1002-- 1002- 1002+
+row 3: | 998- 998+ 998++ 1002-- 1002- 1002+
+row 2: | 3+ 3+ 3+ 3+ 4- 4- 4- 4-
+row 1: | -1+ -1+ 0- 0- 1+ 2- 3+ 3+ 3+ 3+ 4- 4- 4- 4-
+row 0: | -3+ -3+ -3+ -2- -2- -2- -1+ -1+ 0- 0- 0+ 0+ 1- 1- 2+ 2+
+ 3- 3- 4+ 4+ 5- 5-
+row -1: | -3+ -3+ -2- -2- -2+ -2+ -1- -1- 0+ 0+ 0+ 1- 1- 1-
+row -2: | -4+ -3- -2+ -2+ -1- -1-
+row -4: | 3+ 3+ 4- 4-
+row -5: | 3+ 3+ 4- 4-
+row -6: | 2+ 3- 4+ 5-
+
+Path at line 89, before choices:
+(0,0){curl 1}
+ ..(1,0.5)
+ ..(5,1.5)
+ ..(7,2.5)
+ ..(12,3.5)
+ ..{curl 1}(13,4)
+
+Path at line 89, after choices:
+(0,0)..controls (0.3153,0.20053) and (0.6504,0.36807)
+ ..(1,0.5)..controls (2.29114,0.98723) and (3.72412,0.97192)
+ ..(5,1.5)..controls (5.68967,1.78545) and (6.30771,2.22081)
+ ..(7,2.5)..controls (8.58867,3.1407) and (10.3946,2.90645)
+ ..(12,3.5)..controls (12.3506,3.62962) and (12.68594,3.7973)
+ ..(13,4)
+
+{(unknown path p~9)=(path)}
+{addto}
+Tracing edges at line 89: (weight 1)
+(1,0)(1,1)(5,1)(5,2)(7,2)(7,3)(12,3)(12,4)(12,3)(7,3)(7,2)(5,2)
+(5,1)(1,1)(1,0).
+
+{smoothing:=1}
+{addto}
+Tracing edges at line 90: (weight 1)
+(1,0)(1,1)(4,1)(4,2)(8,2)(8,3)(12,3)(12,4)(12,3)(8,3)(8,2)(4,2)
+(4,1)(1,1)(1,0).
+
+{addto}
+{-(4095)}
+Path at line 91, before choices:
+(-4095,0){curl 1}..tension 0.75 and 999
+ ..{curl 1}(0,2)
+
+Path at line 91, after choices:
+(-4095,0)..controls (-2275,0.88889) and (-1.36636,1.99933)
+ ..(0,2)
+
+Tracing edges at line 91: (weight 1)
+(-3071,0)(-3071,1)(-1024,1)(-1024,2)(-1024,1)(-3071,1)(-3071,0).
+
+{show}
+{-(90)}
+{(picture)rotated(-90)}
+>> Edge structure at line 91:
+
+{(picture)+(picture)}
+{(90)*(-1)}
+{(picture)rotated(-90)}
+{(picture)rotated(90)}
+>> Edge structure at line 91:
+row 2: | 4+++ 4+ 5--- 5-
+row 1: | 0+++ 0+ 1--- 1- 2++ 3-- 4+++ 4+ 5--- 5-
+row 0: | -2+++ -2+++ -1--- -1--- 0+++ 0+ 2--- 2- 3++ 4-- 5++ 6--
+row -1: | -2+++ -2+ 0--- 0- 1+++ 1+++ 2--- 2---
+row -2: | -3++ -2-- -1+++ -1+ 0--- 0-
+
+{if}
+{if}
+{elseif}
+! Missing `:' has been inserted.
+<inserted text>
+ :
+<to be read again>
+ elseif
+l.92 if "a" if "ab">"b" elseif
+ path reverse (3,4): >="aa":foo...
+
+{("ab")>("b")}
+{false}
+{reverse((3,4))}
+{path(path)}
+{true}
+{("a")>=("aa")}
+{false}
+{if}
+{((xpart ',ypart '))-((1,yy))}
+{((xpart '-1,linearform))<((xpart ',ypart '))}
+{true}
+{fi}
+{else}
+! Extra else.
+l.93 ... if '-(1,yy)<': :fi else
+ def dup text t=[[t;save endd...
+I'm ignoring this; it doesn't match any if.
+
+{def}
+{def}
+{def}
+
+||<tertiary>->show.substring(EXPR0)of("a"
+(EXPR0)<-(2,-1)
+{show}
+{("a")&("bc")}
+{((2,-1))substring("abc")}
+>> "ba"
+{tertiarydef}
+{def}
+{show}
+{((23.3,4.5))subpath(path)}
+Path at line 100, before choices:
+(0,0){curl 2}
+ ..(13,4)..controls (12.84297,3.89865) and (12.68063,3.80606)
+ ..(12.51372,3.72261){curl 3}
+ ..{curl 4}(-1,-1){curl 4}
+ ..{curl 2}cycle
+
+Path at line 100, after choices:
+(0,0)..controls (-40.15552,-36.7088) and (58.71173,33.50317)
+ ..(13,4)..controls (12.84297,3.89865) and (12.68063,3.80606)
+ ..(12.51372,3.72261)..controls (8.00914,2.1484) and (3.50458,0.5742)
+ ..(-1,-1)..controls (-0.66667,-0.66667) and (-0.33333,-0.33333)
+ ..cycle
+
+>> Path at line 100:
+(0,0)..controls (-40.15552,-36.7088) and (58.71173,33.50317)
+ ..(13,4)..controls (12.84297,3.89865) and (12.68063,3.80606)
+ ..(12.51372,3.72261)..controls (8.00914,2.1484) and (3.50458,0.5742)
+ ..(-1,-1)..controls (-0.66667,-0.66667) and (-0.33333,-0.33333)
+ ..cycle
+
+{numspecial}
+{(2)+(3)}
+
+++->[[dup.showtoken(EXPR0);]];def.x.expr.z.of(EXPR1)=z.enddef;texts(x=((
+EXPR1)+0)(EXPR1)+(EXPR1))("xx",foo((EXPR0)))=0]]
+(EXPR0)<-path
+(EXPR1)<-5
+{begingroup}
+
+dup<text>->[[(TEXT0);save
+(TEXT0)<-showtoken(path)
+{begingroup}
+{showtoken}
+> (path)
+{save}
+{restoring ;}
+{endgroup}
+{def}
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+++->...]];def.x.expr.z.of(EXPR1)
+ =z.enddef;texts(x=((EXPR1)+0)...
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+Sorry: You can't redefine a number, string, or expr.
+I've inserted an inaccessible symbol so that your
+definition will be completed without mixing me up too badly.
+
+
+texts(TEXT0)(TEXT1)<expr>->for.n:=,for.n"yy":n,length.if.false:endfor(TE
+XT1),(TEXT0),:if.string.n:forsuffixes.n=foo1,[foo(n)],':show(TEXT0),(TEX
+T1)|(n;exitif.not('<='+((EXPR2),yy))endfor.for.m= :+endfor.for.m=alpha.s
+tep-1.1 3$:+m.endfor.fi.endfor
+(TEXT0)<-x=((5)+0)(5)+(5)
+(TEXT1)<-"xx",foo((path))
+(EXPR2)<-0
+{for}
+{for}
+! Missing `=' has been inserted.
+<to be read again>
+ "yy"
+texts->for.n:=,for.n"yy"
+ :n,length.if.false:endfor(TEXT1),(TEX...
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+The next thing in this loop should have been `=' or `:='.
+But don't worry; I'll pretend that an equals sign
+was present, and I'll look for the values next.
+
+{loop value="yy"}
+{if}
+{false}
+{false}
+! Incomplete if; all text was ignored after line 100.
+<inserted text>
+ fi
+<to be read again>
+ ENDFOR
+<for("yy")> ....if.false: ENDFOR
+
+texts->...length.if.false:endfor
+ (TEXT1),(TEXT0),:if.string.n:...
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+A forbidden `outer' token occurred in skipped text.
+This kind of error happens when you say `if...' and forget
+the matching `fi'. I've inserted a `fi'; this might work.
+
+{[repeat the loop]}
+{length("xx")}
+
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+(TEXT2)<-(path)
+{begingroup}
+{endgroup}
+
+x<expr>of<primary>->(EXPR0)
+{(5)+(0)}
+(EXPR0)<-5
+! Missing `of' has been inserted for x.
+<to be read again>
+ (5)
+<argument> x=((5)+0)(5)
+ +(5)
+texts->...:endfor(TEXT1),(TEXT0)
+ ,:if.string.n:forsuffixes.n=f...
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+I've got the first argument; will look now for the other.
+
+(EXPR1)<-5
+{(5)+(5)}
+{loop value="yy"}
+{if}
+{string("yy")}
+{true}
+{forsuffixes}
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+<for("yy")> ...orsuffixes(EXPR0)
+ =foo1,[foo((EXPR0))],':show.x...
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+Sorry: You can't redefine a number, string, or expr.
+I've inserted an inaccessible symbol so that your
+definition will be completed without mixing me up too badly.
+
+
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+(TEXT2)<-("yy")
+{begingroup}
+{endgroup}
+>> "yy"
+! Improper subscript has been replaced by zero.
+<for("yy")> ...o1,[foo((EXPR0))]
+ ,':show.x=((5)+0)(5)+(5),"xx"...
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+A bracketed subscript must have a known numeric value;
+unfortunately, what I found was the value that appears just
+above this error message. So I'll try a zero subscript.
+
+{loop value=foo1}
+{show}
+
+x<expr>of<primary>->(EXPR0)
+{(5)+(0)}
+(EXPR0)<-5
+! Missing `of' has been inserted for x.
+<to be read again>
+ (5)
+<for(foo1)> show.x=((5)+0)(5)
+ +(5),"xx",foo((path))|(("yy");ex...
+<for("yy")> ...'+((0),yy))endfor
+ .for.m= :+endfor.for.m=alpha....
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+I've got the first argument; will look now for the other.
+
+(EXPR1)<-5
+{(5)+(5)}
+>> 10
+>> "xx"
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+(TEXT2)<-(path)
+{begingroup}
+{endgroup}
+
+|<suffix>->,(SUFFIX0)
+! Missing `)' has been inserted.
+<to be read again>
+ ("yy")
+<for(foo1)> ...o((path))|(("yy")
+ ;exitif.not('<='+((0),yy)) EN...
+<for("yy")> ...'+((0),yy))endfor
+ .for.m= :+endfor.for.m=alpha....
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+I've gotten to the end of the macro parameter list.
+You might want to delete some tokens before continuing.
+
+(SUFFIX0)<-
+>> Path at line 100:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+
+>> "yy"
+{exitif}
+{((xpart ',ypart '))+((0,yy))}
+{((xpart ',ypart '))<=((xpart ',linearform))}
+>> -yy
+! Unknown relation will be considered false.
+<to be read again>
+ )
+<for(foo1)> ...ot('<='+((0),yy))
+ ENDFOR
+<for("yy")> ...'+((0),yy))endfor
+ .for.m= :+endfor.for.m=alpha....
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+Oh dear. I can't decide if the expression above is positive,
+negative, or zero. So this comparison test won't be `true'.
+
+{[repeat the loop]}
+{loop value=0}
+{not(false)}
+{true}
+{for}
+{for}
+>> 0.5p3~
+! Improper initial value has been replaced by 0.
+<to be read again>
+ step
+<for("yy")> ....for.m=alpha.step
+ -1.1 3$:+m.endfor.fi ENDFOR
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+When you say `for x=a step b until c',
+the initial value `a' and the step size `b'
+and the final value `c' must have known numeric values.
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{-(1.1)}
+! Missing `until' has been inserted.
+<to be read again>
+ 3
+<for("yy")> ...=alpha.step-1.1 3
+ $:+m.endfor.fi ENDFOR
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.100 ...cle;numspecial p~++2+3;
+ [[
+I assume you meant to say `until' after `step'.
+So I'll look for the final value and colon next.
+
+{(3)*(-1)}
+{loop value=0}
+{[repeat the loop]}
+{loop value=-1.1}
+{+(0)}
+{[repeat the loop]}
+{loop value=-2.20001}
+{(0)+(-1.1)}
+{[repeat the loop]}
+{fi}
+{[repeat the loop]}
+{loop value=2}
+{if}
+{string(2)}
+{false}
+{[repeat the loop]}
+{loop value=path}
+{if}
+{string(path)}
+{false}
+{[repeat the loop]}
+{loop value=10}
+{if}
+{string(10)}
+{false}
+{[repeat the loop]}
+{(-1.1)+(-2.20001)}
+{endgroup}
+{begingroup}
+{let}
+{save}
+{def}
+{def}
+
+texts->input
+{input}
+(trap.mf
+if->endinput?
+{endinput}
+{if}
+{known(0)}
+{not(true)}
+{false}
+)
+! Incomplete if; all text was ignored after line 2.
+<inserted text>
+ fi
+l.101 ...input enddef;texts trap
+ ]];
+The file ended while I was skipping conditional text.
+This kind of error happens when you say `if...' and forget
+the matching `fi'. I've inserted a `fi'; this might work.
+
+{restoring \}
+{restoring if}
+{endgroup}
+
+dup<text>->[[(TEXT0);save
+Runaway text?
+[[def.texts.secondary.x=primarydef.y++y=x@y.enddef;showtoken ETC.
+! Forbidden token found while scanning a text argument.
+<inserted text>
+ endgroup
+<to be read again>
+ \
+l.102 ...showtoken++;x enddef]]\
+ ;
+It seems that a right delimiter was left out,
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+(TEXT0)<-[[def.texts.secondary.x=primarydef.y++y=x@y.enddef;showtoken++;
+x.enddef]]
+{begingroup}
+{begingroup}
+{def}
+{endgroup}
+{save}
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+<to be read again>
+ \
+l.102 ...showtoken++;x enddef]]\
+ ;
+Sorry: You can't redefine my error-recovery tokens.
+I've inserted an inaccessible symbol so that your
+definition will be completed without mixing me up too badly.
+
+{\}
+{proofing:=1}
+
+texts<secondary>->primarydef.y++y=(EXPR0)@y.enddef;showtoken++;(EXPR0)
+(EXPR0)<-"a"
+{primarydef}
+{showtoken}
+> ++=primarydef'd macro:
+("a")@(EXPR1)
+{("a")&("b")}
+ab
+texts<secondary>->primarydef.y++y=(EXPR0)@y.enddef;showtoken++;(EXPR0)
+{(1.00002)*(a1)}
+{-(1.00002a1)}
+(EXPR0)<--1.00002a1
+{primarydef}
+{showtoken}
+> ++=primarydef'd macro:
+(-1.00002a1)@(EXPR1)
+{(a2)+(a3)}
+{(linearform)+(a4)}
+{(linearform)+(a5)}
+{(linearform)+(a6)}
+{-(linearform)}
+{(-1.00002a1)=(linearform)}
+## a1=0.99998a6+0.99998a5+0.99998a4+0.99998a3+0.99998a2
+{-((a3,a2))}
+{((-a3,-a2))/(0.99998)}
+{(a4)+(a5)}
+{begingroup}
+{showdependencies}
+a1=0.99998a6+0.99998a5+0.99998a4+0.99998a3+0.99998a2
+alpha=0.5p3~
+{endgroup}
+{(linearform)+(a6)}
+{(a3)+(a4)}
+{(linearform)+(a5)}
+{(linearform)+(a6)}
+{-((linearform,linearform))}
+{((-1.00002a3,-1.00002a2))=((linearform,linearform))}
+## a2=0.99998a6+0.99998a5+0.99998a4+0.99998a3
+## a3=0.99998a6+0.99998a5+0.99998a4
+{restoring INACCESSIBLE}
+{endgroup}
+{(1.00002)*(0.25a4*4)}
+{(0.25a4*4)+(1)}
+{(0.25a5*4)+(0.25a6*4)}
+{(0.25a4*4+1)=(linearform)}
+## a4*4=0.99998a6*4+0.99998a5*4-3.99994
+{(0.9)*(0.5p3~)}
+{(0.45p3~)+(7)}
+{alpha:=0.45p3~+7}
+## alpha=0.45p3~+7
+{showdependencies}
+alpha=0.45p3~+7
+a4=0.25a6*4+0.25a5*4-0.99998
+a3=0.49998a6*4+0.49998a5*4-0.99997
+a2=0.99997a6*4+0.99997a5*4-1.99992
+a1=1.99992a6*4+1.99992a5*4-3.99982
+{(0.66667)-(0.25a6*4)}
+{(0.25a6*4)=(-0.25a6*4+0.66667)}
+## a6*4=1.33334
+{(0.25a5*4)=(0.33333)}
+## a5*4=1.33331
+#### a4=-0.33333
+#### a3=0.33333
+#### a2=0.66664
+#### a1=1.33328
+{cull}
+{(4)*(0.33333)}
+{chardp:=27}
+{charcode:=27}
+{openwindow}
+! Improper `openwindow'.
+<to be read again>
+ ;
+l.107 ...) to (0,0) at "whoops";
+ addto p; shipout p; cull p;
+Say `openwindow k from (r0,c0) to (r1,c1) at (x,y)',
+where all quantities are known and k is between 0 and 15.
+
+{addto}
+>> (8,1,5,-5,-5,5)
+! Not a suitable variable.
+<to be read again>
+ ;
+l.107 ...) at "whoops"; addto p;
+ shipout p; cull p;
+At this point I needed to see the name of a picture variable.
+(Or perhaps you have indeed presented me with one; I might
+have missed it, if it wasn't followed by the proper token.)
+So I'll not change anything just now.
+
+{shipout}
+! Variable p is the wrong type (transform).
+<to be read again>
+ ;
+l.107 ...s"; addto p; shipout p;
+ cull p;
+I was looking for a "known" picture variable.
+So I'll not change anything just now.
+
+{cull}
+>> (8,1,5,-5,-5,5)
+! Not a suitable variable.
+<to be read again>
+ ;
+l.107 ...o p; shipout p; cull p;
+
+At this point I needed to see the name of a picture variable.
+(Or perhaps you have indeed presented me with one; I might
+have missed it, if it wasn't followed by the proper token.)
+So I'll not change anything just now.
+
+{openwindow}
+{-(0.5)}
+
+Calling BLANKRECTANGLE(0,0,0,0)
+Calling UPDATESCREEN
+{special}
+>> (8,1,5,-5,-5,5)
+! Unsuitable expression.
+<to be read again>
+ ;
+l.108 ...$) at (0,0); special p;
+ numspecial "p";
+The expression shown above has the wrong type to be output.
+
+{numspecial}
+>> "p"
+! Unsuitable expression.
+<to be read again>
+ ;
+l.108 ...cial p; numspecial "p";
+
+The expression shown above has the wrong type to be output.
+
+{openwindow}
+{(32)*(1024)}
+! Arithmetic overflow.
+l.109 ....49999 from (0,32*1024)
+ to (1,31*1057) at (0,0); shi...
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+{(31)*(1057)}
+
+Calling BLANKRECTANGLE(100,100,0,1)
+Calling UPDATESCREEN
+{shipout}
+[27.-14]
+Edge structure at line 109 (just shipped out):
+row 0: | -3++ -2-- -1++ 4094--
+row -1: | -4096++ -3-- -2++ -1--
+
+{openwindow}
+Path at line 110, before choices:
+(0,0)
+
+Path at line 110, after choices:
+(0,0)
+
+{length(path)}
+
+Calling BLANKRECTANGLE(0,2,0,4)
+Calling UPDATESCREEN
+{openwindow}
+{length((-1,0))}
+{-(5)}
+
+Calling BLANKRECTANGLE(1,10,1,3)
+Calling UPDATESCREEN
+{display}
+{nullpicture}
+>> picture
+! Not a suitable variable.
+<to be read again>
+ ;
+l.112 display nullpicture;
+ display p inwindow 3; display p in...
+At this point I needed to see the name of a picture variable.
+(Or perhaps you have indeed presented me with one; I might
+have missed it, if it wasn't followed by the proper token.)
+So I'll not change anything just now.
+
+{display}
+>> 3
+! Bad window number.
+<to be read again>
+ ;
+l.112 ...; display p inwindow 3;
+ display p inwindow 6;
+It should be the number of an open window.
+
+{display}
+! Variable p is the wrong type (transform).
+<to be read again>
+ ;
+l.112 ...; display p inwindow 6;
+
+I was looking for a "known" picture variable.
+So I'll not change anything just now.
+
+{display}
+
+Calling BLANKRECTANGLE(1,10,1,3)
+Calling PAINTROW(2,1;4,5,6,10)
+Calling UPDATESCREEN
+{cull}
+! Enormous number has been reduced.
+l.113 ...opping (0.1,4095.999999
+ ) withweight 3.5
+I can't handle numbers bigger than about 4095.99998;
+so I've changed your constant to that maximum amount.
+
+! Weight must be -3, -2, -1, +1, +2, or +3.
+<to be read again>
+ withweight
+l.114 withweight
+ -3.5; display e0 inwindow 5.5; addto e0 also ...
+I'll ignore the bad `with' clause and look for another.
+
+{-(3.5)}
+! Bad culling amounts.
+<to be read again>
+ ;
+l.114 withweight-3.5;
+ display e0 inwindow 5.5; addto e0 also ...
+Always cull by known amounts that exclude 0.
+
+{display}
+
+Calling BLANKRECTANGLE(1,10,1,3)
+Calling PAINTROW(2,1;4,5,6,8,9,10)
+Calling PAINTROW(1,1;6,7,8,9)
+Calling UPDATESCREEN
+{addto}
+>> (8,1,5,-5,-5,5)
+! Improper `addto'.
+<to be read again>
+ ;
+l.114 ...w 5.5; addto e0 also p;
+ addto e0 contour 0;
+This expression should have specified a known picture.
+So I'll not change anything just now.
+
+{addto}
+>> 0
+! Improper `addto'.
+<to be read again>
+ ;
+l.114 ... p; addto e0 contour 0;
+
+This expression should have been a known path.
+So I'll not change anything just now.
+
+{display}
+
+Calling BLANKRECTANGLE(0,2,0,4)
+Calling PAINTROW(2,1;0,1)
+Calling PAINTROW(1,1;0,1)
+Calling PAINTROW(0,1;1,2)
+Calling UPDATESCREEN
+{addto}
+! Not a cycle.
+<to be read again>
+ ;
+l.115 ...; addto e0 contour p~9;
+
+That contour should have ended with `..cycle' or `&cycle'.
+So I'll not change anything just now.
+
+{display}
+{(3)+(3)}
+
+Calling BLANKRECTANGLE(1,10,1,3)
+Calling PAINTROW(2,1;4,5,6,10)
+Calling UPDATESCREEN
+{display}
+{begingroup}
+{vardef}
+{endgroup}
+! Variable e0e0 has been obliterated.
+<to be read again>
+ ;
+l.116 ...vardef e[]e=enddef;6]];
+
+It seems you did a nasty thing---probably by accident,
+but nevertheless you nearly hornswoggled me...
+While I was evaluating the right-hand side of this
+command, something happened, and the left-hand side
+is no longer a variable! So I won't change anything.
+
+{addto}
+{display}
+Calling PAINTROW(1,1;0,1,2)
+Calling PAINTROW(0,0;0,1,2)
+Calling UPDATESCREEN
+{ligtable}
+{display}
+{display}
+Calling UPDATESCREEN
+{show}
+{begingroup}
+{interim}
+{tracingcommands:=0}
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"g"
+(TEXT1)<-=:|
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"h":"i"
+(TEXT1)<-|=:
+! Character h is already in a ligtable.
+<to be read again>
+ :
+<argument> "h":
+ "i"
+lig->...;ligtable(TEXT0):(TEXT0)
+ (TEXT1)0,skipto255;boundarych...
+l.119 ...=:|); lig("h":"i")(|=:)
+ ;
+It's not legal to label a character more than once.
+So I'll not change anything just now.
+
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"j"
+(TEXT1)<-|=:>
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"k"
+(TEXT1)<-=:|>
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"l"
+(TEXT1)<-|=:|>
+{restoring tracingcommands=2.1}
+{endgroup}
+>> vacuous
+{begingroup}
+{let}
+{vardef}
+{endgroup}
+! Variable c.a1 has been obliterated.
+<to be read again>
+ ;
+l.121 ...;vardef b=enddef;1]] ];
+ ligtable"m":0=:0,skipto5;
+It seems you did a nasty thing---probably by accident,
+but nevertheless you nearly hornswoggled me...
+While I was evaluating the suffix of this variable,
+something was redefined, and it's no longer a variable!
+In order to get back on my feet, I've inserted `0' instead.
+
+{b1:=0}
+! Variable b1 has been obliterated.
+<to be read again>
+ ;
+l.121 ...;vardef b=enddef;1]] ];
+ ligtable"m":0=:0,skipto5;
+It seems you did a nasty thing---probably by accident,
+but nevertheless you nearly hornswoggled me...
+While I was evaluating the right-hand side of this
+command, something happened, and the left-hand side
+is no longer a variable! So I won't change anything.
+
+{ligtable}
+! A statement can't begin with `skipto'.
+<to be read again>
+ !!
+l.122 !!
+ ; errhelp 0; errmessage "Be like Jane";
+I was looking for the beginning of a new statement.
+If you just proceed without changing anything, I'll ignore
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+! Extra tokens will be flushed.
+<to be read again>
+ !!
+l.122 !!
+ ; errhelp 0; errmessage "Be like Jane";
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+{errhelp}
+>> 0
+! Not a string.
+<to be read again>
+ ;
+l.122 !!; errhelp 0;
+ errmessage "Be like Jane";
+A message should be a known string expression.
+
+{errmessage}
+! Be like Jane.
+<to be read again>
+ ;
+l.122 ...message "Be like Jane";
+
+This error message was generated by an `errmessage'
+command, so I can't give any explicit help.
+Pretend that you're Miss Marple: Examine all clues,
+and deduce the truth by inspired guesses.
+
+{errhelp}
+{errmessage}
+! .
+<to be read again>
+ ;
+l.123 ...e%%%lp%"; errmessage"";
+ errhelp ""; errmessage "Anot...
+He%
+lp
+
+
+{errhelp}
+{errmessage}
+! Another.
+<to be read again>
+ ;
+l.123 ...; errmessage "Another";
+
+(That was another `errmessage'.)
+
+{headerbyte}
+>> 0
+! Improper location.
+<to be read again>
+ ;
+l.124 headerbyte 0;
+ headerbyte(48.5)substring(-9,9)of"long"; ...
+I was looking for a known, positive number.
+For safety's sake I'll ignore the present command.
+
+{headerbyte}
+! Missing `:' has been inserted.
+<to be read again>
+ substring
+l.124 ...aderbyte(48.5)substring
+ (-9,9)of"long"; for\=0:\
+A colon should follow a headerbyte or fontinfo location.
+
+{-(9)}
+{((-9,9))substring("long")}
+>> "long"
+! Invalid code has been replaced by 0.
+<to be read again>
+ ;
+l.124 ...ubstring(-9,9)of"long";
+ for\=0:\
+I was looking for a number between 0 and 255, or for a
+string of length 1. Didn't find it; will use 0 instead.
+
+{for}
+Runaway loop?
+! Forbidden token found while scanning the text of a for loop.
+<inserted text>
+ endfor
+<to be read again>
+ \
+l.124 ...-9,9)of"long"; for\=0:\
+
+I suspect you have forgotten an `endfor',
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{loop value=0}
+{[repeat the loop]}
+{\}
+{headerbyte}
+{(2)*(0.33333)}
+{fontdimen}
+{(2)*(0.33333)}
+>> "q"
+! Improper font parameter.
+<to be read again>
+ ;
+l.125 ..."; fontdimen 9:2a6,"q";
+ fontdimen 1:2048;
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{fontdimen}
+{fontmaking:=1}
+{extensible}
+! Missing `:' has been inserted.
+<to be read again>
+ 5
+l.126 ...king:=1; extensible 5 5
+ ,"c"255.5,"d"; charlist 0:5:"...
+I'm processing `extensible c: t,m,b,r'.
+
+! Missing `,' has been inserted.
+<to be read again>
+ 255.5
+l.126 ...extensible 5 5,"c"255.5
+ ,"d"; charlist 0:5:"a":"d";
+I'm processing `extensible c: t,m,b,r'.
+
+>> 255.5
+! Invalid code has been replaced by 0.
+<to be read again>
+ ,
+l.126 ...xtensible 5 5,"c"255.5,
+ "d"; charlist 0:5:"a":"d";
+I was looking for a number between 0 and 255, or for a
+string of length 1. Didn't find it; will use 0 instead.
+
+{charlist}
+! Character code 5 is already extensible.
+<to be read again>
+ :
+l.126 ...,"d"; charlist 0:5:"a":
+ "d";
+It's not legal to label a character more than once.
+So I'll not change anything just now.
+
+{ligtable}
+! Too far to skip.
+l.127 ligtable255:255::
+ "a"=:"b","d" kern -2048,"c":0:99.5:"e"...
+At most 127 lig/kern steps can separate skipto1 from 1::.
+
+{-(2048)}
+! Character code 0 is already in a charlist.
+<to be read again>
+ :
+l.127 ...","d" kern -2048,"c":0:
+ 99.5:"e"|=:|"f",0kern';
+It's not legal to label a character more than once.
+So I'll not change anything just now.
+
+>> (xpart ',ypart ')
+! Improper kern.
+<to be read again>
+ ;
+l.127 ...99.5:"e"|=:|"f",0kern';
+
+The amount of kern should be a known numeric value.
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{ligtable}
+! Character code 5 is already extensible.
+<to be read again>
+ :
+l.128 ligtable 5:
+ 0; def clear(text x)=interim x:=$ enddef; cl...
+It's not legal to label a character more than once.
+So I'll not change anything just now.
+
+! Illegal ligtable step.
+<to be read again>
+ ;
+l.128 ligtable 5:0;
+ def clear(text x)=interim x:=$ enddef; cl...
+I was looking for `=:' or `kern' here.
+
+{def}
+
+clear(TEXT0)->interim(TEXT0):=$
+(TEXT0)<-hppp
+{interim}
+{hppp:=-1}
+{(0)=(0)}
+! Redundant equation.
+<to be read again>
+ ;
+l.128 ...f; clear(hppp); vppp=0;
+
+I already knew that this equation was true.
+But perhaps no harm has been done; let's continue.
+
+{begingroup}
+
+clear(TEXT0)->interim(TEXT0):=$
+(TEXT0)<-tracingmacros
+{interim}
+{tracingmacros:=-1}
+{interim}
+{tracingcommands:=-1}
+Runaway text?
+tracingoutput
+! Forbidden token found while scanning a text argument.
+<inserted text>
+ )
+<to be read again>
+ \
+l.129 ...); clear(tracingoutput\
+ ;
+It seems that a right delimiter was left out,
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{restoring proofing=1}
+{restoring tracingoutput=1}
+{restoring tracingcommands=2.1}
+{restoring tracingmacros=1}
+{endgroup}
+{def}
+{def}
+{addto}
+Path at line 139, before choices:
+(0,0){4096,0}
+ ..{4096,0}(1,0){0,-4096}
+ ..{0,4096}cycle
+
+Path at line 139, after choices:
+(0,0)..controls (0.33333,0) and (0.66667,0)
+ ..(1,0)..controls (1,-0.66667) and (0,-0.66667)
+ ..cycle
+
+> 0 ENE 1 (ESE SSE) SSW WSW WNW NNW 0 (NNE)
+! Backwards path (turning number is negative).
+<to be read again>
+ ;
+l.139 ....{0,1}cycle withpen qq;
+
+The path doesn't have a counterclockwise orientation,
+so I'll probably have trouble drawing it.
+(See Chapter 27 of The METAFONTbook for more help.)
+
+Tracing edges at line 139: (weight 1)
+@ Octant ENE (2 offsets), from (2.5,-0.5) to (1.5,-2)
+@ retrograde line from (2.5,-0.5) to (0.5,-2)
+(3,0)(3,-1)(1,-1)
+@ transition line 0, from (0.5,-2) to (0.5,-2)
+@ transition line 1, from (1.5,-2) to (2.5,-1.5)
+@ transition line 2, from (2.5,-1.5) to (3.5,-0.5)
+(1,-2)(3,-2)(3,-1)(4,-1)
+@ retrograde line from (3.5,-0.5) to (1.5,-2)
+(4,0)(4,-1)(2,-1)
+@ Octant ESE (2 offsets), from (1.5,-2) to (-1,0)
+@ retrograde line from (1.5,-2) to (-1,0)
+(2,-2)(1,-2)(1,-1)(0,-1)
+@ transition line 3, from (-1,0) to (0.5,-1.5)
+@ transition line 2, from (0.5,-1.5) to (1.5,-2)
+@ transition line 1, from (1.5,-2) to (1.5,-2)
+(0,0)(0,-1)(1,-1)
+@ retrograde line from (1.5,-2) to (-1,0)
+(1,-2)(1,-1)(0,-1)
+@ Octant SSE (0 offsets), from (-1,0) to (-1,0)
+@ transition line 0, from (-1,0) to (-1,0)
+@ Octant SSW (2 offsets), from (-1,0) to (-0.82407,0.67593)
+@ retrograde line from (-1,0) to (-0.5,1.5)
+(0,0)(-1,0)(-1,1)(0,1)
+@ transition line 3, from (-0.5,1.5) to (-0.5,1.5)
+@ transition line 2, from (-0.5,1.5) to (-1,0)
+@ transition line 1, from (-1.06265,-0.39499) to (-0.56265,1.10501)
+@ transition line 2, from (-0.82407,0.67593) to (-1.32407,-0.82407)
+@ transition line 1, from (-1.32407,-0.82407) to (-1.32407,-0.82407)
+(0,2)(0,1)(-1,1)
+@ retrograde line from (-1.32407,-0.82407) to (-0.82407,0.67593)
+(-1,-1)
+@ Octant WSW (2 offsets), from (-0.82407,0.67593) to (1,2)
+@ retrograde line from (-0.82407,0.67593) to (1.17593,2.17593)
+(-1,1)(0,1)
+@ transition line 0, from (1.17593,2.17593) to (1.17593,2.17593)
+@ transition line 1, from (1.17593,2.17593) to (0.17593,1.67593)
+@ transition line 2, from (0,1.5) to (-1,0.5)
+(0,2)
+@ retrograde line from (-1,0.5) to (1,2)
+(0,1)
+@ Octant WNW (2 offsets), from (1,2) to (3.32407,0.17593)
+@ retrograde line from (1,2) to (3.5,0)
+(0,2)(2,2)(2,1)(3,1)
+@ transition line 3, from (3.5,0) to (2,1.5)
+@ transition line 2, from (1.82407,1.67593) to (0.82407,2.17593)
+@ transition line 1, from (0.82407,2.17593) to (0.82407,2.17593)
+(3,0)(3,1)(2,1)
+@ retrograde line from (0.82407,2.17593) to (3.32407,0.17593)
+(2,2)(2,1)(3,1)
+@ Octant NNW (0 offsets), from (3.32407,0.17593) to (3,1)
+@ transition line 0, from (3.32407,0.17593) to (3.32407,0.17593)
+(3,0)
+@ Octant NNE (2 offsets), from (3,1) to (2.5,-0.5)
+@ retrograde line from (3,1) to (2.5,-0.5)
+(3,1)
+@ transition line 3, from (2.5,-0.5) to (2.5,-0.5)
+@ transition line 2, from (2.5,-0.5) to (3,1)
+@ transition line 1, from (3,1) to (3,1)
+(3,0)
+@ retrograde line from (3,1) to (2.5,-0.5)
+(3,1)(3,0).
+
+
+f(SUFFIX0)(EXPR1)(EXPR2)(TEXT3)->numeric.w;show(EXPR1);addto(SUFFIX0)con
+tour(0,0)..(2,0)..(1,$)..(1,1)..cycle.withpen.qq;addto(SUFFIX0)doublepat
+h(0,0){1,1}..{2,1}(2,1)withpen.qq;addto(SUFFIX0)doublepath(($,$){1,0}..(
+1,1){1,0})scaled0.5withpen.nullpen;cull(SUFFIX0)keeping(4,4)withweight1.
+5;
+! Missing `]' has been inserted.
+<to be read again>
+ ,
+l.140 f(e[3,
+ w); g(e3,transformed p,penoffset-(1,1.3)of(pencir...
+I've seen a `[' and a subscript value, in a suffix,
+so a right bracket should have come next.
+I shall pretend that one was there.
+
+(SUFFIX0)<-e3
+(EXPR1)<-unknown path w
+! Missing argument to f.
+<to be read again>
+ ;
+l.140 f(e[3,w);
+ g(e3,transformed p,penoffset-(1,1.3)of(pencir...
+That macro has more parameters than you thought.
+I'll continue by pretending that each missing argument
+is either zero or null.
+
+(EXPR2)<-0
+! Missing argument to f.
+<to be read again>
+ ;
+l.140 f(e[3,w);
+ g(e3,transformed p,penoffset-(1,1.3)of(pencir...
+That macro has more parameters than you thought.
+I'll continue by pretending that each missing argument
+is either zero or null.
+
+(TEXT3)<-
+{numeric}
+{show}
+>> unknown path %CAPSULE1615
+{addto}
+Path at line 140, before choices:
+(0,0)
+ ..(2,0)
+ ..(1,-1)
+ ..(1,1)
+ ..cycle
+
+Path at line 140, after choices:
+(0,0)..controls (0.56189,-0.5286) and (1.43811,0.5286)
+ ..(2,0)..controls (2.70831,-0.66634) and (1.66634,-1.70831)
+ ..(1,-1)..controls (0.4714,-0.43811) and (1.5286,0.43811)
+ ..(1,1)..controls (0.33366,1.70831) and (-0.70831,0.66634)
+ ..cycle
+
+> 0 ESE ENE ESE 1 SSE SSW WSW WNW NNW 2 NNE NNW 3 WNW WSW SSW SSE ESE 0
+! Strange path (turning number is zero).
+<to be read again>
+ ;
+f->.....(1,1)..cycle.withpen.qq;
+ addto(SUFFIX0)doublepath(0,0)...
+<to be read again>
+ ;
+l.140 f(e[3,w);
+ g(e3,transformed p,penoffset-(1,1.3)of(pencir...
+The path doesn't have a counterclockwise orientation,
+so I'll probably have trouble drawing it.
+(See Chapter 27 of The METAFONTbook for more help.)
+
+Tracing edges at line 140: (weight 1)
+@ Octant ENE (2 offsets), from (0.26321,-2.6526) to (1.73679,-2.34741)
+@ transition line 0, from (0.26321,-2.6526) to (0.26321,-2.6526)
+@ transition line 1, from (1.73679,-2.34741) to (2.73679,-1.84741)
+@ transition line 2, from (2.73679,-1.84741) to (3.73679,-0.84741)
+(1,-3)(1,-2)(3,-2)
+@ retrograde line from (3.73679,-0.84741) to (1.73679,-2.34741)
+(3,-1)
+@ Octant ESE (2 offsets), from (1.73679,-2.34741) to (-0.25465,-0.56029)
+@ retrograde line from (1.73679,-2.34741) to (-0.76321,-0.34741)
+(3,-2)(1,-2)(1,-1)(-1,-1)
+@ transition line 3, from (-0.76321,-0.34741) to (0.73679,-1.84741)
+@ transition line 2, from (0.73679,-1.84741) to (1.73679,-2.34741)
+@ transition line 1, from (2.05333,-2.41772) to (1.05333,-1.91772)
+@ transition line 2, from (1.24535,-2.06029) to (2.24535,-2.56029)
+@ transition line 1, from (2.24535,-2.56029) to (2.24535,-2.56029)
+(-1,0)(-1,-1)(0,-1)(0,-2)(2,-2)
+@ retrograde line from (2.24535,-2.56029) to (-0.25465,-0.56029)
+(2,-3)(2,-2)(1,-2)
+@ Octant SSE (0 offsets), from (-0.25465,-0.56029) to (0,-1.13196)
+@ transition line 0, from (-0.25465,-0.56029) to (-0.25465,-0.56029)
+@ Octant SSW (2 offsets), from (0,-1.13196) to (0.25,-0.25)
+@ retrograde line from (0,-1.13196) to (0.5,0.36804)
+(1,-1)(0,-1)
+@ transition line 3, from (0.5,0.36804) to (0.5,0.36804)
+@ transition line 2, from (0.5,0.36804) to (0,-1.13196)
+@ transition line 1, from (-0.04594,-1.41693) to (0.45406,0.08307)
+@ transition line 2, from (0.25,-0.25) to (-0.25,-1.75)
+@ transition line 1, from (-0.25,-1.75) to (-0.25,-1.75)
+(0,0)
+@ retrograde line from (-0.25,-1.75) to (0.25,-0.25)
+(0,-2)
+@ Octant WSW (2 offsets), from (0.25,-0.25) to (1.63197,1)
+@ retrograde line from (0.25,-0.25) to (2.25,1.25)
+(0,0)(1,0)
+@ transition line 0, from (2.25,1.25) to (2.25,1.25)
+@ transition line 1, from (2.25,1.25) to (1.25,0.75)
+@ transition line 2, from (1.03186,0.59352) to (2.03186,1.09352)
+@ transition line 1, from (1.63197,1) to (0.63197,0.5)
+@ transition line 2, from (0.63197,0.5) to (-0.36803,-0.5)
+(1,1)
+@ retrograde line from (-0.36803,-0.5) to (1.63197,1)
+(1,0)
+@ Octant WNW (2 offsets), from (1.63197,1) to (3.56024,-0.74529)
+@ retrograde line from (1.63197,1) to (4.13197,-1)
+(1,1)(2,1)(2,0)(4,0)
+@ transition line 3, from (4.13197,-1) to (2.63197,0.5)
+@ transition line 2, from (2.63197,0.5) to (1.63197,1)
+@ transition line 1, from (1.29863,1.07983) to (2.29863,0.57983)
+@ transition line 2, from (2.06024,0.75471) to (1.06024,1.25471)
+@ transition line 1, from (1.06024,1.25471) to (1.06024,1.25471)
+(4,-1)(4,0)(3,0)
+@ retrograde line from (1.06024,1.25471) to (3.56024,-0.74529)
+(3,1)(2,1)(2,0)(3,0)
+@ Octant NNW (0 offsets), from (3.56024,-0.74529) to (3.3474,-0.23679)
+@ transition line 0, from (3.56024,-0.74529) to (3.56024,-0.74529)
+(3,-1)
+@ Octant NNE (2 offsets), from (3.3474,-0.23679) to (3.65259,1.23679)
+@ retrograde line from (3.3474,-0.23679) to (2.8474,-1.73679)
+(3,0)
+@ transition line 3, from (2.8474,-1.73679) to (2.8474,-1.73679)
+@ transition line 2, from (2.8474,-1.73679) to (3.3474,-0.23679)
+@ transition line 1, from (3.65259,1.23679) to (3.65259,1.23679)
+(3,-2)
+@ Octant NNW (0 offsets), from (3.65259,1.23679) to (3.43976,1.74529)
+@ transition line 0, from (3.65259,1.23679) to (3.65259,1.23679)
+(3,1)(4,1)
+@ Octant WNW (2 offsets), from (3.43976,1.74529) to (0.36803,4)
+@ transition line 3, from (3.43976,1.74529) to (1.93976,3.24529)
+@ transition line 2, from (1.70137,3.42017) to (0.70137,3.92017)
+@ transition line 1, from (0.36803,4) to (0.36803,4)
+(4,2)(3,2)(3,3)(2,3)
+@ Octant WSW (2 offsets), from (0.36803,4) to (-2.25,2.25)
+@ transition line 0, from (0.36803,4) to (0.36803,4)
+@ transition line 1, from (-0.03186,3.90648) to (-1.03186,3.40648)
+@ transition line 2, from (-1.25,3.25) to (-2.25,2.25)
+(2,4)(-1,4)(-1,3)(-2,3)
+@ Octant SSW (2 offsets), from (-2.25,2.25) to (-3,0.13196)
+@ transition line 3, from (-2.25,2.25) to (-2.25,2.25)
+@ transition line 2, from (-2.45406,1.91695) to (-2.95406,0.41695)
+@ transition line 1, from (-3,0.13196) to (-3,0.13196)
+(-2,2)(-3,2)
+@ Octant SSE (0 offsets), from (-3,0.13196) to (-2.74533,-0.43973)
+@ transition line 0, from (-3,0.13196) to (-3,0.13196)
+@ Octant ESE (2 offsets), from (-2.74533,-0.43973) to (0.26321,-2.6526)
+@ transition line 3, from (-2.74533,-0.43973) to (-1.24533,-1.93973)
+@ transition line 2, from (-1.05331,-2.08229) to (-0.05331,-2.58229)
+@ transition line 1, from (0.26321,-2.6526) to (0.26321,-2.6526)
+(-3,-1)(-2,-1)(-2,-2)(0,-2)(0,-3).
+
+{addto}
+Path at line 140, before choices:
+(0,0){2896.30943,2896.30934}
+ ..{3663.57385,1831.78674}(2,1)
+
+Path at line 140, after choices:
+(0,0)..controls (0.53566,0.53566) and (1.32689,0.66344)
+ ..(2,1)
+
+Tracing edges at line 140: (weight 1)
+@ Octant ENE (2 offsets), from (0,-2.5) to (4,0)
+@ transition line 0, from (0,-2.5) to (0,-2.5)
+@ transition line 1, from (0,-2.5) to (1,-2)
+@ transition line 2, from (1.607,-1.57747) to (0.607,-2.07747)
+@ transition line 1, from (2,-1.5) to (3,-1)
+@ transition line 2, from (3,-1) to (4,0)
+(2,-2)(2,-1)(4,-1)
+@ Octant NNE (2 offsets), from (4,0) to (4.5,1.5)
+@ transition line 3, from (4,0) to (4,0)
+@ transition line 2, from (4,0) to (4.5,1.5)
+@ transition line 1, from (4.5,1.5) to (4.5,1.5)
+(4,1)(5,1)
+@ Octant NNW (0 offsets), from (4.5,1.5) to (4.5,1.5)
+@ transition line 0, from (4.5,1.5) to (4.5,1.5)
+@ Octant WNW (2 offsets), from (4.5,1.5) to (2,3.5)
+@ transition line 3, from (4.5,1.5) to (3,3)
+@ transition line 2, from (3,3) to (2,3.5)
+@ transition line 1, from (2,3.5) to (2,3.5)
+(5,2)(4,2)(4,3)(2,3)
+@ Octant WSW (2 offsets), from (2,3.5) to (-2,1)
+@ transition line 0, from (2,3.5) to (2,3.5)
+@ transition line 1, from (0.607,2.92253) to (-0.393,2.42253)
+@ transition line 2, from (-1,2) to (-2,1)
+(2,4)(2,3)(0,3)(0,2)(-1,2)
+@ Octant SSW (2 offsets), from (-2,1) to (-2.5,-0.5)
+@ transition line 3, from (-2,1) to (-2,1)
+@ transition line 2, from (-2,1) to (-2.5,-0.5)
+@ transition line 1, from (-2.5,-0.5) to (-2.5,-0.5)
+(-1,1)(-2,1)
+@ Octant SSE (0 offsets), from (-2.5,-0.5) to (-2.5,-0.5)
+@ transition line 0, from (-2.5,-0.5) to (-2.5,-0.5)
+@ Octant ESE (2 offsets), from (-2.5,-0.5) to (0,-2.5)
+@ transition line 3, from (-2.5,-0.5) to (-1,-2)
+@ transition line 2, from (-1,-2) to (0,-2.5)
+@ transition line 1, from (0,-2.5) to (0,-2.5)
+(-2,-1)(-1,-1)(-1,-2).
+
+{addto}
+Path at line 140, before choices:
+(-1,-1){4096,0}
+ ..{4096,0}(1,1)
+
+Path at line 140, after choices:
+(-1,-1)..controls (0.10457,-1) and (-0.10457,1)
+ ..(1,1)
+
+{(path)scaled(0.5)}
+{nullpen}
+Tracing edges at line 140: (weight 1)
+(0,0)(0,1)(0,0).
+
+{cull}
+
+g(SUFFIX0)->show(SUFFIX0)
+(SUFFIX0)<-e3
+! Too many arguments to g;
+ Missing `)' has been inserted.
+l.140 f(e[3,w); g(e3,
+ transformed p,penoffset-(1,1.3)of(pencir...
+I'm going to assume that the comma I just read was a
+right delimiter, and then I'll begin expanding the macro.
+You might want to delete some tokens before continuing.
+
+{show}
+{(picture)transformed((8,1,5,-5,-5,5))}
+>> Edge structure at line 140:
+
+{-((1,1.3))}
+{pencircle}
+{(future pen)scaled(20)}
+{-(0.5)}
+{(future pen)yscaled(-0.5)}
+Pen polygon at line 140 (newly created):
+(1.5,-5)
+ .. (4.5,-4.5)
+ .. (6,-4)
+ .. (8,-3)
+ .. (9.5,-1.5)
+ .. (10,-0.5)
+ .. (10,0.5)
+ .. (9.5,1.5)
+ .. (8,3)
+ .. (6,4)
+ .. (4.5,4.5)
+ .. (1.5,5)
+ .. (-1.5,5)
+ .. (-4.5,4.5)
+ .. (-6,4)
+ .. (-8,3)
+ .. (-9.5,1.5)
+ .. (-10,0.5)
+ .. (-10,-0.5)
+ .. (-9.5,-1.5)
+ .. (-8,-3)
+ .. (-6,-4)
+ .. (-4.5,-4.5)
+ .. (-1.5,-5)
+ .. cycle
+
+{((-1,-1.3))penoffset(pen)}
+>> (-9.5,1.5)
+Path at line 141, before choices:
+(0,0)..controls (1,1) and (-1,1)
+ ..(3,0)
+
+Path at line 141, after choices:
+(0,0)..controls (1,1) and (-1,1)
+ ..(3,0)
+
+{((0,1))directiontime(path)}
+>> 0.33333
+{(3.14159)point(path)}
+{((3.14159,4))subpath(path)}
+{((7.68668,2.72437))intersectiontimes(path)}
+>> (0,0)
+Path at line 143, before choices:
+(-1,1.1){curl 1}
+ ..{curl 1}(1,-1)
+
+Path at line 143, after choices:
+(-1,1.1)..controls (-0.33333,0.40001) and (0.33333,-0.3)
+ ..(1,-1)
+
+{(-1)precontrol((0,0))}
+{(path)intersectiontimes((0,0))}
+>> (-1,-1)
+{addto}
+{-(4094.99998)}
+{-(0.00002)}
+Path at line 144, before choices:
+(-4094.99998,0){curl 1}
+ ..{curl 1}(4094.99998,-0.00002)
+
+Path at line 144, after choices:
+(-4094.99998,0)..controls (-1365,0) and (1365,-0.00002)
+ ..(4094.99998,-0.00002)
+
+{pencircle}
+{(0)penoffset(future pen)}
+Pen polygon at line 145 (newly created):
+(0.5,0)
+ .. (0,0.5)
+ .. (-0.5,0)
+ .. (0,-0.5)
+ .. cycle
+
+>> 0
+>> pen
+! Not implemented: penoffset(known numeric)of(pen).
+<to be read again>
+ ;
+l.145 pencircle;
+ addto e3 also e3 shifted (0,257); ,"flushed ...
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+Tracing edges at line 145: (weight 1)
+@ Octant ESE (1 offset), from (-4095.49998,0) to (4094.99998,-0.50002)
+@ transition line 2, from (-4095.49998,0) to (-4094.99998,-0.5)
+@ transition line 1, from (4094.99998,-0.50002) to (4094.99998,-0.50002)
+(-4095,0)
+@ Octant ENE (1 offset), from (4094.99998,-0.50002) to (4095.49998,-0.00
+002)
+@ transition line 0, from (4094.99998,-0.50002) to (4094.99998,-0.50002)
+@ transition line 1, from (4094.99998,-0.50002) to (4095.49998,-0.00002)
+(-4095,-1)(4095,-1)
+@ Octant NNE (0 offsets), from (4095.49998,-0.00002) to (4095.49998,-0.0
+0002)
+@ transition line 1, from (4095.49998,-0.00002) to (4095.49998,-0.00002)
+@ Octant NNW (0 offsets), from (4095.49998,-0.00002) to (4095.49998,-0.0
+0002)
+@ transition line 0, from (4095.49998,-0.00002) to (4095.49998,-0.00002)
+@ Octant WNW (1 offset), from (4095.49998,-0.00002) to (-4094.99998,0.5)
+@ transition line 2, from (4095.49998,-0.00002) to (4094.99998,0.49998)
+@ transition line 1, from (-4094.99998,0.5) to (-4094.99998,0.5)
+(4095,0)(-4095,0)
+@ Octant WSW (1 offset), from (-4094.99998,0.5) to (-4095.49998,0)
+@ transition line 0, from (-4094.99998,0.5) to (-4094.99998,0.5)
+@ transition line 1, from (-4094.99998,0.5) to (-4095.49998,0)
+(-4095,1)
+@ Octant SSW (0 offsets), from (-4095.49998,0) to (-4095.49998,0)
+@ transition line 1, from (-4095.49998,0) to (-4095.49998,0)
+@ Octant SSE (0 offsets), from (-4095.49998,0) to (-4095.49998,0)
+@ transition line 0, from (-4095.49998,0) to (-4095.49998,0)
+(-4095,0).
+
+{addto}
+{(picture)shifted((0,257))}
+! A statement can't begin with `,'.
+<to be read again>
+ ,
+l.145 ...o e3 shifted (0,257); ,
+ "flushed with pride"; numeric...
+I was looking for the beginning of a new statement.
+If you just proceed without changing anything, I'll ignore
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+! Extra tokens will be flushed.
+<to be read again>
+ ,
+l.145 ...o e3 shifted (0,257); ,
+ "flushed with pride"; numeric...
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+{numeric}
+{def}
+
+f(EXPR0)(EXPR1)(EXPR2)->showdependencies;tracingcapsules:=1;showdependen
+cies;show1/3(3,6)*(((EXPR0)+(EXPR1))+((EXPR1)-(EXPR0))),(1,1)/sqrt2zscal
+ed((EXPR0)+1,(EXPR0)+2)-((EXPR0)+1,(EXPR0)+2)rotated45,(0,1)zscaled(1,(E
+XPR1)+2)-(1,(EXPR1)+2)rotated90
+{(xx)+(1)}
+{(xx+1)/(0.3)}
+(EXPR0)<-3.3333xx+3.3333
+{(yy)-(1)}
+{(yy-1)/(0.5)}
+(EXPR1)<-2yy-2
+(EXPR2)<-(xx,0)
+{showdependencies}
+alpha=0.45p3~+7
+{tracingcapsules:=1}
+{showdependencies}
+xpart %CAPSULE1359=xx
+%CAPSULE1367=2yy-2
+%CAPSULE1375 = 3.3333xx+3.3333
+alpha=0.45p3~+7
+{show}
+{(1/3)*((3,6))}
+{(3.3333xx+3.3333)+(2yy-2)}
+{(2yy-2)-(3.3333xx+3.3333)}
+{(linearform)+(linearform)}
+{((1,2))*(4yy-4)}
+>> (4yy-4,8yy-8)
+{sqrt(2)}
+{((1,1))/(1.41422)}
+{(3.3333xx+3.3333)+(1)}
+{(3.3333xx+3.3333)+(2)}
+{((0.7071,0.7071))zscaled((3.3333xx+4.3333,3.3333xx+5.3333))}
+{(3.3333xx+3.3333)+(1)}
+{(3.3333xx+3.3333)+(2)}
+{((3.3333xx+4.3333,3.3333xx+5.3333))rotated(45)}
+{((-0.7071,4.71399xx+6.83531))-((-0.7071,4.71399xx+6.83531))}
+>> (0,0)
+{(2yy-2)+(2)}
+{((0,1))zscaled((1,2yy))}
+{(2yy-2)+(2)}
+{((1,2yy))rotated(90)}
+{((-2yy,1))-((-2yy,1))}
+>> (0,0)
+{(1000)*(o3)}
+{(o1)-(o2)}
+{(4000)*(linearform)}
+{(1000o3)-(linearform)}
+{(4000)*(o2)}
+{(linearform)+(4000o2)}
+{(linearform)+(9)}
+{(0.01)*(o3)}
+{-(0.01o3)}
+{(3)*(ooo)}
+{(-0.01o3)+(3ooo)}
+{begingroup}
+{(o2)+(o4)}
+{(linearform)+(o5)}
+{(linearform)-(20)}
+{(9/10)*(linearform)}
+{(oo)=(linearform)}
+## oo=0.9o5+0.9o4+0.9o2-18
+{(0.5)*(o2)}
+{(o1)+(0.5o2)}
+{(8/9)*(linearform)}
+{(o5)=(linearform)}
+## o5=0.44444o2+0.88889o1
+{(o4)=(linearform)}
+## o4=0.44444o2+0.88889o1
+{(0.0001)*(o2)}
+{-(0.0001o2)}
+{(o6)=(-0.0001o2)}
+## o6=-0.0001o2
+{showdependencies}
+o6=-0.0001o2
+o4=0.44444o2+0.88889o1
+o5=0.44444o2+0.88889o1
+oo=1.7o2+1.6o1-18
+%CAPSULE382 = 3ooo-0.01o3
+xpart %CAPSULE1049 = 8000o2-4000o1+1000o3+9
+xpart %CAPSULE1383=xpart '
+ypart %CAPSULE1383=ypart '
+alpha=0.45p3~+7
+{numeric}
+### 4000o1 = -xpart %CAPSULE1049+8000o2+1000o3+9
+### -4.87383o2 = -oo-0.0004xpart %CAPSULE1049+0.39673o3-17.99643
+#### o6=-0.00027
+### -0.04366o3 = -o4+0.46689oo+8.40439
+### -o4 = -o5
+### 0.22894o5 = -%CAPSULE382+0.10689oo+3ooo+1.92412
+{begingroup}
+{pair}
+### -alfa=-xpart %CAPSULE1494
+{endgroup}
+{xpart((xpart %CAPSULE1494,0))}
+### -xpart %CAPSULE17=-%CAPSULE1176
+{endgroup}
+{(%CAPSULE382)+(%CAPSULE1176)}
+### -%CAPSULE382=-%CAPSULE1893+%CAPSULE1176
+### -%CAPSULE1893=-ypart %CAPSULE1049
+{begingroup}
+{save}
+{(1)-(p$)}
+{restoring p}
+### p$=-ypart %CAPSULE604+1
+{endgroup}
+{(2/3)*((-ypart %CAPSULE604+1,ypart %CAPSULE604))}
+### ypart %CAPSULE604=-xpart %CAPSULE604+1
+### -0.66667xpart %CAPSULE604=-xpart %CAPSULE1889
+{-((xpart %CAPSULE1889,-xpart %CAPSULE1889+0.66667))}
+### xpart %CAPSULE1889=-xpart %CAPSULE1172
+{((xpart %CAPSULE1049,ypart %CAPSULE1049))=((xpart %CAPSULE1172,-xpart %
+CAPSULE1172-0.66667))}
+## xpart %CAPSULE1172=-ypart %CAPSULE1049-0.66667
+## ypart %CAPSULE1049=-xpart %CAPSULE1049-0.66667
+### -xpart %CAPSULE1049=-xpart %CAPSULE1172
+{((xpart ',ypart '))=((xpart %CAPSULE1172,-xpart %CAPSULE1172-0.66667))}
+## xpart %CAPSULE1172=-ypart '-0.66667
+## xpart '=-ypart '-0.66667
+{begingroup}
+{(0.5)*(ooo)}
+{begingroup}
+{numeric}
+### -ooo=-%CAPSULE1494
+{endgroup}
+{(%CAPSULE1494)+(1)}
+### -%CAPSULE1494=-%CAPSULE1350+1
+{(1/2)*(%CAPSULE1350)}
+### -0.5%CAPSULE1350=-%CAPSULE1367
+{-(%CAPSULE1367)}
+### %CAPSULE1367=-%CAPSULE1893
+{(2)*(%CAPSULE1893)}
+### -2%CAPSULE1893=-%CAPSULE1885
+{(-0.5%CAPSULE1885-0.5)=(%CAPSULE1885)}
+## %CAPSULE1885=-0.33333
+{(oo)=(-0.33333)}
+## oo=-0.33333
+{endgroup}
+{(4000)*(-0.33333)}
+{yoffset:=-1333.31299}
+{xoffset:=-1333.31299}
+{for}
+{sqrt(-1)}
+! Square root of -1 has been replaced by 0.
+l.153 for @=angle(sqrt$,
+ mlog$):charext:=uniformdeviate$;charh...
+Since I don't take square roots of negative numbers,
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{mlog(-1)}
+! Logarithm of -1 has been replaced by 0.
+l.153 for @=angle(sqrt$,mlog$)
+ :charext:=uniformdeviate$;charh...
+Since I don't take logs of non-positive numbers,
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{angle((0,0))}
+! angle(0,0) is taken as zero.
+l.153 for @=angle(sqrt$,mlog$):
+ charext:=uniformdeviate$;charh...
+The `angle' between two identical points is undefined.
+I'm zeroing this one. Proceed, with fingers crossed.
+
+Runaway loop?
+charext:=uniformdeviate$;charht:=2048;granularity:=-8; ETC.
+! Forbidden token found while scanning the text of a for loop.
+<inserted text>
+ endfor
+<to be read again>
+ endtext
+l.163 ... showstats; bye endtext
+
+I suspect you have forgotten an `endfor',
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{loop value=0}
+{uniformdeviate(-1)}
+{charext:=-0.00507}
+{charht:=2048}
+{-(8)}
+{granularity:=-8}
+{addto}
+{-(100)}
+{-(99)}
+Path at line 163, before choices:
+(0,-100)..tension 500
+ ..(100,-99)..tension 3000
+ ..cycle
+
+Path at line 163, after choices:
+(0,-100)..controls (-36.92659,-103.51175) and (136.98943,-101.7726)
+ ..(100,-99)..controls (99.9889,-98.99916) and (0.01108,-99.99895)
+ ..cycle
+
+Tracing edges at line 163: (weight 1)
+(-3,-101)(-3,-102)(71,-102)(71,-101)(99,-101)(99,-100)(103,-100)
+(103,-99)(48,-99)(48,-100)(-7,-100)(-7,-101).
+
+{tracingoutput:=0}
+{shipout}
+! Enormous charht has been reduced.
+<to be read again>
+ ;
+<for(0)> ...=(EXPR0);shipout.e3;
+ special"bye";interim.char99="...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.163 ... showstats; bye endtext
+
+Font metric dimensions must be less than 2048pt.
+
+[109]
+{special}
+{interim}
+! The token `char' isn't an internal quantity.
+<to be read again>
+ char
+<for(0)> ...al"bye";interim.char
+ 99="c";true=false;[[clear(tra...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.163 ... showstats; bye endtext
+
+Something like `tracingonline' should follow `interim'.
+
+{char(99)}
+{("c")=("c")}
+! Redundant equation.
+<to be read again>
+ ;
+<for(0)> ...;interim.char99="c";
+ true=false;[[clear(tracingcom...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.163 ... showstats; bye endtext
+
+I already knew that this equation was true.
+But perhaps no harm has been done; let's continue.
+
+{true}
+{false}
+{(true)=(false)}
+! Inconsistent equation.
+<to be read again>
+ ;
+<for(0)> ...ar99="c";true=false;
+ [[clear(tracingcommands);char...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.163 ... showstats; bye endtext
+
+The equation I just read contradicts what was said before.
+But don't worry; continue and I'll just ignore it.
+
+{begingroup}
+
+clear(TEXT0)->interim(TEXT0):=$
+(TEXT0)<-tracingcommands
+{interim}
+{tracingcommands:=-1}
+! Enormous charht has been reduced.
+<to be read again>
+ ;
+<for(0)> ...shipout+nullpicture;
+ "careful"for.for=(EXPR0)step2...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.163 ... showstats; bye endtext
+
+Font metric dimensions must be less than 2048pt.
+
+[0]
+careful METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT M
+ETAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT M
+ETAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT M
+ETAFONT METAFONT METAFONT METAFONT
+{restoring tracingcommands=2.1}
+{endgroup}
+{scrollmode}
+
+{char(31)}
+{("hello again")&("^^_")}
+hello again^^_
+{save}
+### -0.45p3~=-alpha+7
+{-(0.043)}
+{fillin:=-0.043}
+{def}
+{begingroup}
+{tracingspecs:=1}
+{show}
+{nullpen}
+
+>> Pen polygon at line 163:
+(0,0)
+ .. cycle
+
+{makepath(pen)}
+
+>> Path at line 163:
+(1,-2)..controls (1,-2) and (2,-1)
+ ..(2,-1)..controls (2,-1) and (2.5,0.5)
+ ..(2.5,0.5)..controls (2.5,0.5) and (1,2)
+ ..(1,2)..controls (1,2) and (0,2.5)
+ ..(0,2.5)..controls (0,2.5) and (-1,2)
+ ..(-1,2)..controls (-1,2) and (-2,1)
+ ..(-2,1)..controls (-2,1) and (-2.5,-0.5)
+ ..(-2.5,-0.5)..controls (-2.5,-0.5) and (-1,-2)
+ ..(-1,-2)..controls (-1,-2) and (0,-2.5)
+ ..(0,-2.5)..controls (0,-2.5) and (1,-2)
+ ..cycle
+
+{(pen)rotated(1)}
+Pen polygon at line 163 (newly created):
+(0.97366,1.51723)
+ .. cycle
+
+{makepath(pen)}
+
+>> Path at line 163:
+(0.97366,1.51723)..controls (0.97366,1.51723) and (0.97366,1.51723)
+ ..cycle
+
+{pencircle}
+{makepath(future pen)}
+Pen polygon at line 163 (newly created):
+(0.5,-0.5)
+ .. (0.5,0.5)
+ .. (-0.5,0.5)
+ .. (-0.5,-0.5)
+ .. cycle
+
+{(path)rotated(-1)}
+
+>> Path at line 163:
+(0.4912,-0.50865)..controls (0.4912,-0.50865) and (0.50865,0.4912)
+ ..(0.50865,0.4912)..controls (0.50865,0.4912) and (-0.4912,0.50865)
+ ..(-0.4912,0.50865)..controls (-0.4912,0.50865) and (-0.50865,-0.4912)
+ ..(-0.50865,-0.4912)..controls (-0.50865,-0.4912) and (0.4912,-0.50865)
+ ..cycle
+
+{addto}
+Path at line 163, before choices:
+(0,2){0,-4096}
+ ..{0,-4096}(0,1){0,-4096}
+ ..{4096,0}(3,0){4096,0}
+ ..{4096,0}(4,0){4096,0}
+ ..{0,-4096}cycle
+
+Path at line 163, after choices:
+(0,2)..controls (0,1.66667) and (0,1.33333)
+ ..(0,1)..controls (0,-0.20886) and (1.63324,0)
+ ..(3,0)..controls (3.33333,0) and (3.66667,0)
+ ..(4,0)..controls (13.63031,0) and (0,10.64238)
+ ..cycle
+
+Path at line 163, before choices:
+(0,0)
+ ..(5,2.9)
+ ..(4,3)
+ ..cycle
+
+Path at line 163, after choices:
+(0,0)..controls (0.9363,-8.0181) and (11.81119,0.07109)
+ ..(5,2.9)..controls (4.68596,3.03043) and (4.33879,3.02028)
+ ..(4,3)..controls (1.86353,2.87216) and (-0.21431,1.83528)
+ ..cycle
+
+{makepen(path)}
+Pen polygon at line 163 (newly created):
+(5,2.9)
+ .. (4,3)
+ .. (0,0)
+ .. cycle
+
+Path at line 163, before subdivision into octants:
+(0,2)..controls (0,1.66667) and (0,1.33333)
+ ..(0,1)..controls (0,-0.20886) and (1.63324,0)
+ ..(3,0)..controls (3.33333,0) and (3.66667,0)
+ ..(4,0)..controls (13.63031,0) and (0,10.64238)
+ ..cycle
+
+Cycle spec at line 163, after subdivision and double autorounding:
+(1.5,0.00272) % beginning in octant `SSE'
+ ..controls (1.5,-0.49254) and (1.63411,-0.82727)
+ ..(1.8592,-1.05237) % segment 1
+% entering octant `ESE'
+ ..controls (2.23936,-1.43253) and (2.87909,-1.5)
+ ..(3.57066,-1.5) % segment 1
+% entering octant `ENE'
+ ..controls (3.95114,-1.5) and (4.3473,-1.47957)
+ ..(4.72458,-1.47957) % segment 1
+ ..controls (5.08287,-1.47957) and (5.44116,-1.47957)
+ ..(5.79944,-1.47957) % segment 2
+ ..controls (7.35368,-1.47957) and (8.34424,-1.12393)
+ ..(8.90538,-0.56279) % segment 3
+% entering octant `NNE'
+ ..controls (9.31982,-0.14835) and (9.5,0.37819)
+ ..(9.5,0.95631) % segment 3
+% entering octant `NNW'
+ ..controls (9.5,2.00116) and (8.61821,3.4318)
+ ..(7.41951,4.6305) % segment 3
+% entering octant `WNW'
+ ..controls (6.32909,5.72092) and (5.11603,6.5)
+ ..(4.2104,6.5) % segment 3
+% entering octant `WSW'
+ ..controls (3.64668,6.5) and (3.12122,6.31134)
+ ..(2.68588,5.876) % segment 3
+% entering octant `SSW'
+ ..controls (1.97163,5.16176) and (1.5,3.78351)
+ ..(1.5,1.485) % segment 3
+ ..controls (1.5,0.99092) and (1.5,0.49681)
+ ..(1.5,0.00272) % segment 0
+ & cycle
+
+Tracing edges at line 163: (weight 1)
+@ Octant SSE (0 offsets), from (1.5,0.00272) to (1.8592,-1.05237)
+@ transition line 0, from (1.5,0.00272) to (1.5,0.00272)
+(2,0)
+@ Octant ESE (0 offsets), from (1.8592,-1.05237) to (3.57066,-1.5)
+@ transition line 1, from (3.57066,-1.5) to (3.57066,-1.5)
+@ Octant ENE (2 offsets), from (3.57066,-1.5) to (13.90538,2.3372)
+@ transition line 0, from (3.57066,-1.5) to (3.57066,-1.5)
+@ transition line 1, from (8.41534,-0.93503) to (13.41534,1.96497)
+@ transition line 2, from (13.90538,2.3372) to (13.90538,2.3372)
+(2,-1)(9,-1)(9,0)(11,0)(11,1)(13,1)
+@ Octant NNE (0 offsets), from (13.90538,2.3372) to (14.5,3.85631)
+@ transition line 1, from (14.5,3.85631) to (14.5,3.85631)
+(13,2)(14,2)
+@ Octant NNW (0 offsets), from (14.5,3.85631) to (12.41951,7.53049)
+@ transition line 0, from (14.5,3.85631) to (14.5,3.85631)
+(14,6)(13,6)(13,7)(12,7)
+@ Octant WNW (2 offsets), from (12.41951,7.53049) to (8.2104,9.5)
+@ transition line 3, from (12.41951,7.53049) to (12.41951,7.53049)
+@ transition line 2, from (9.38113,9.39124) to (8.38113,9.49124)
+@ transition line 1, from (8.2104,9.5) to (8.2104,9.5)
+(12,8)(11,8)(11,9)(8,9)
+@ Octant WSW (2 offsets), from (8.2104,9.5) to (2.68588,5.876)
+@ transition line 0, from (8.2104,9.5) to (8.2104,9.5)
+@ transition line 1, from (6.92668,9.08539) to (2.92668,6.08539)
+@ transition line 2, from (2.68588,5.876) to (2.68588,5.876)
+(8,10)(8,9)(6,9)(6,8)(5,8)(5,7)(3,7)
+@ Octant SSW (0 offsets), from (2.68588,5.876) to (1.5,0.00272)
+@ transition line 1, from (1.5,0.00272) to (1.5,0.00272)
+(3,6)(2,6)(2,0).
+
+Path at line 163, before subdivision into octants:
+(0,2)..controls (0,10.64238) and (13.63031,0)
+ ..(4,0)..controls (3.66667,0) and (3.33333,0)
+ ..(3,0)..controls (1.63324,0) and (0,-0.20886)
+ ..(0,1)..controls (0,1.33333) and (0,1.66667)
+ ..cycle
+
+Cycle spec at line 163, after subdivision and double autorounding:
+(2.68588,5.876) % beginning in octant `ENE'
+ ..controls (3.12122,6.31134) and (3.64668,6.5)
+ ..(4.2104,6.5) % segment 0
+% entering octant `ESE'
+ ..controls (5.11603,6.5) and (6.32909,5.72092)
+ ..(7.41953,4.63048) % segment 0
+% entering octant `SSE'
+ ..controls (8.61824,3.43176) and (9.5,2.00116)
+ ..(9.5,0.95631) % segment 0
+% entering octant `SSW'
+ ..controls (9.5,0.37819) and (9.31982,-0.14835)
+ ..(8.90538,-0.56279) % segment 0
+% entering octant `WSW'
+ ..controls (8.34425,-1.12392) and (7.35368,-1.47957)
+ ..(5.79944,-1.47957) % segment 0
+ ..controls (5.44116,-1.47957) and (5.08287,-1.47957)
+ ..(4.72458,-1.47957) % segment 1
+ ..controls (4.3473,-1.47957) and (3.95114,-1.5)
+ ..(3.57066,-1.5) % segment 2
+% entering octant `WNW'
+ ..controls (2.87909,-1.5) and (2.23936,-1.43253)
+ ..(1.85919,-1.05235) % segment 2
+% entering octant `NNW'
+ ..controls (1.6341,-0.82726) and (1.5,-0.49254)
+ ..(1.5,0.00272) % segment 2
+% entering octant `NNE'
+ ..controls (1.5,0.49681) and (1.5,0.99092)
+ ..(1.5,1.485) % segment 3
+ ..controls (1.5,3.78351) and (1.97165,5.16177)
+ ..(2.68588,5.876) % segment 0
+ & cycle
+
+Tracing edges at line 163: (weight 1)
+@ Octant ENE (2 offsets), from (7.68588,8.776) to (4.2104,6.5)
+@ retrograde line from (7.68588,8.776) to (2.68588,5.876)
+(7,9)(7,8)(5,8)(5,7)(4,7)
+@ transition line 0, from (2.68588,5.876) to (2.68588,5.876)
+@ transition line 1, from (2.68588,5.876) to (7.68588,8.776)
+@ transition line 2, from (8.13123,9.12088) to (3.13123,6.22089)
+@ transition line 1, from (4.2104,6.5) to (9.2104,9.4)
+@ transition line 2, from (9.2104,9.4) to (9.2104,9.4)
+(4,6)(4,7)(6,7)(6,8)(8,8)
+@ retrograde line from (9.2104,9.4) to (4.2104,6.5)
+(8,9)(8,8)(6,8)
+@ Octant ESE (0 offsets), from (4.2104,6.5) to (7.41953,4.63048)
+@ transition line 1, from (7.41953,4.63048) to (7.41953,4.63048)
+(6,7)(4,7)(4,6)(6,6)
+@ Octant SSE (0 offsets), from (7.41953,4.63048) to (9.5,0.95631)
+@ transition line 0, from (7.41953,4.63048) to (7.41953,4.63048)
+(6,5)(8,5)(8,3)(9,3)
+@ Octant SSW (0 offsets), from (9.5,0.95631) to (8.90538,-0.56279)
+@ transition line 1, from (8.90538,-0.56279) to (8.90538,-0.56279)
+@ Octant WSW (2 offsets), from (8.90538,-0.56279) to (7.57066,1.5)
+@ retrograde line from (8.90538,-0.56279) to (12.90538,2.43721)
+(9,-1)(9,0)(10,0)(10,1)(12,1)
+@ transition line 0, from (12.90538,2.43721) to (12.90538,2.43721)
+@ transition line 1, from (12.90538,2.43721) to (8.90538,-0.56279)
+@ transition line 2, from (8.6665,-0.76936) to (12.6665,2.23064)
+@ transition line 1, from (7.57066,1.5) to (3.57066,-1.5)
+@ transition line 2, from (3.57066,-1.5) to (3.57066,-1.5)
+(12,2)(8,2)(8,1)(6,1)(6,0)(5,0)
+@ retrograde line from (3.57066,-1.5) to (7.57066,1.5)
+(5,-1)(5,0)(6,0)(6,1)(8,1)
+@ Octant WNW (2 offsets), from (7.57066,1.5) to (6.85919,1.84764)
+@ retrograde line from (7.57066,1.5) to (8.57066,1.4)
+(8,2)
+@ transition line 3, from (8.57066,1.4) to (8.57066,1.4)
+@ transition line 2, from (8.57066,1.4) to (7.57066,1.5)
+@ transition line 1, from (6.95764,1.52585) to (7.95764,1.42584)
+@ transition line 2, from (6.85919,1.84764) to (5.85919,1.94765)
+@ transition line 1, from (5.85919,1.94765) to (5.85919,1.94765)
+(8,1)
+@ retrograde line from (5.85919,1.94765) to (6.85919,1.84764)
+@ Octant NNW (0 offsets), from (6.85919,1.84764) to (6.5,2.90271)
+@ transition line 0, from (6.85919,1.84764) to (6.85919,1.84764)
+(8,2)(7,2)
+@ Octant NNE (0 offsets), from (6.5,2.90271) to (7.68588,8.776)
+@ transition line 1, from (7.68588,8.776) to (7.68588,8.776)
+(7,9).
+
+{tracingonline:=1}
+
+f<expr>->let)=];let[=(;show._
+(EXPR0)<-xx
+{let}
+{let}
+{show}
+>> _1
+{showdependencies}
+xpart '=-ypart '-0.66667
+{qq:=pen}
+{showstats}
+Memory usage 1476&588 (104 still untouched)
+String usage 42&168 (1818&17726 still untouched)
+{[repeat the loop]}
+! A group begun on line 163 never ended.
+<to be read again>
+ endtext
+l.163 ... showstats; bye endtext
+
+I saw a `begingroup' back there that hasn't been matched
+by `endgroup'. So I've inserted `endgroup' now.
+
+{endgroup}
+ )
+(end occurred when else on line 93 was incomplete)
+(end occurred when if on line 36 was incomplete)
+(end occurred when elseif on line 21 was incomplete)
+Here is how much of METAFONT's memory you used:
+ 69 strings out of 1887
+ 3759 string characters out of 21485
+ 2897 words of memory out of 3001
+ 289 symbolic tokens out of 2100
+ 8i,43n,14r,8p,167b stack positions out of 30i,100n,300r,150p,500b
+
+(illegal design size has been changed to 128pt)
+(some chardp values had to be adjusted by as much as 0.5pt)
+(local label 0:: was missing)
+(local label 5:: was missing)
+(4 font metric dimensions had to be decreased)
+(You used 3w,2h,16d,2i,312l,301k,1e,10p metric file positions
+ out of 256w,16h,16d,64i,5000l,500k,256e,50p)
+
+Font metrics written on trap.tfm.
+Output written on trap.72270gf (5 characters, 1028 bytes).
diff --git a/Build/source/texk/web2c/triptrap/mftrap.pl b/Build/source/texk/web2c/triptrap/mftrap.pl
new file mode 100644
index 00000000000..bae32a41fb4
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mftrap.pl
@@ -0,0 +1,490 @@
+(CODINGSCHEME Q)
+(DESIGNSIZE R 128.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 5546464252)
+(FONTDIMEN
+ (SLANT R 2047.999999)
+ (SPACE R 0.0)
+ (STRETCH R 0.0)
+ (SHRINK R 0.0)
+ (XHEIGHT R 0.0)
+ (QUAD R 0.0)
+ (EXTRASPACE R 0.0)
+ (PARAMETER D 8 R 0.0)
+ (PARAMETER D 9 R 0.005208)
+ (PARAMETER D 10 R 0.0)
+ )
+(BOUNDARYCHAR O 377)
+(LIGTABLE
+ (COMMENT THIS PART OF THE PROGRAM IS NEVER USED!
+ )
+ (LABEL BOUNDARYCHAR)
+ (/LIG/>> O 377 O 0)
+ (KRN O 0 R 0.0)
+ (KRN O 0 R 0.0078125)
+ (KRN O 0 R 0.015625)
+ (KRN O 0 R 0.0234375)
+ (KRN O 0 R 0.03125)
+ (KRN O 0 R 0.0390625)
+ (KRN O 0 R 0.046875)
+ (KRN O 0 R 0.0546875)
+ (KRN O 0 R 0.0625)
+ (KRN O 0 R 0.0703125)
+ (KRN O 0 R 0.078125)
+ (KRN O 0 R 0.0859375)
+ (KRN O 0 R 0.09375)
+ (KRN O 0 R 0.1015625)
+ (KRN O 0 R 0.109375)
+ (KRN O 0 R 0.1171875)
+ (KRN O 0 R 0.125)
+ (KRN O 0 R 0.1328125)
+ (KRN O 0 R 0.140625)
+ (KRN O 0 R 0.1484375)
+ (KRN O 0 R 0.15625)
+ (KRN O 0 R 0.1640625)
+ (KRN O 0 R 0.171875)
+ (KRN O 0 R 0.1796875)
+ (KRN O 0 R 0.1875)
+ (KRN O 0 R 0.1953125)
+ (KRN O 0 R 0.203125)
+ (KRN O 0 R 0.2109375)
+ (KRN O 0 R 0.21875)
+ (KRN O 0 R 0.2265625)
+ (KRN O 0 R 0.234375)
+ (KRN O 0 R 0.2421875)
+ (KRN O 0 R 0.25)
+ (KRN O 0 R 0.2578125)
+ (KRN O 0 R 0.265625)
+ (KRN O 0 R 0.2734375)
+ (KRN O 0 R 0.28125)
+ (KRN O 0 R 0.2890625)
+ (KRN O 0 R 0.296875)
+ (KRN O 0 R 0.3046875)
+ (KRN O 0 R 0.3125)
+ (KRN O 0 R 0.3203125)
+ (KRN O 0 R 0.328125)
+ (KRN O 0 R 0.3359375)
+ (KRN O 0 R 0.34375)
+ (KRN O 0 R 0.3515625)
+ (KRN O 0 R 0.359375)
+ (KRN O 0 R 0.3671875)
+ (KRN O 0 R 0.375)
+ (KRN O 0 R 0.3828125)
+ (KRN O 0 R 0.390625)
+ (KRN O 0 R 0.3984375)
+ (KRN O 0 R 0.40625)
+ (KRN O 0 R 0.4140625)
+ (KRN O 0 R 0.421875)
+ (KRN O 0 R 0.4296875)
+ (KRN O 0 R 0.4375)
+ (KRN O 0 R 0.4453125)
+ (KRN O 0 R 0.453125)
+ (KRN O 0 R 0.4609375)
+ (SKIP D 1)
+ (LABEL C g)
+ (LIG/ C g O 0)
+ (STOP)
+ (KRN O 0 R 0.400782)
+ (KRN O 0 R 0.408594)
+ (KRN O 0 R 0.416407)
+ (KRN O 0 R 0.424219)
+ (KRN O 0 R 0.432032)
+ (KRN O 0 R 0.439844)
+ (KRN O 0 R 0.447657)
+ (KRN O 0 R 0.455469)
+ (KRN O 0 R 0.463282)
+ (KRN O 0 R 0.471094)
+ (KRN O 0 R 0.478907)
+ (KRN O 0 R 0.486719)
+ (KRN O 0 R 0.494532)
+ (KRN O 0 R 0.502344)
+ (KRN O 0 R 0.510157)
+ (KRN O 0 R 0.517969)
+ (KRN O 0 R 0.525782)
+ (KRN O 0 R 0.533594)
+ (KRN O 0 R 0.541407)
+ (KRN O 0 R 0.549219)
+ (KRN O 0 R 0.557032)
+ (KRN O 0 R 0.564844)
+ (KRN O 0 R 0.572657)
+ (KRN O 0 R 0.580469)
+ (KRN O 0 R 0.588282)
+ (KRN O 0 R 0.596094)
+ (KRN O 0 R 0.603907)
+ (KRN O 0 R 0.611719)
+ (KRN O 0 R 0.619532)
+ (KRN O 0 R 0.627344)
+ (KRN O 0 R 0.635157)
+ (KRN O 0 R 0.642969)
+ (KRN O 0 R 0.650782)
+ (KRN O 0 R 0.658594)
+ (KRN O 0 R 0.666407)
+ (KRN O 0 R 0.674219)
+ (KRN O 0 R 0.682032)
+ (KRN O 0 R 0.689844)
+ (KRN O 0 R 0.697657)
+ (KRN O 0 R 0.705469)
+ (KRN O 0 R 0.713282)
+ (KRN O 0 R 0.721094)
+ (KRN O 0 R 0.728907)
+ (KRN O 0 R 0.736719)
+ (KRN O 0 R 0.744532)
+ (KRN O 0 R 0.752344)
+ (KRN O 0 R 0.760157)
+ (KRN O 0 R 0.767969)
+ (KRN O 0 R 0.775782)
+ (KRN O 0 R 0.783594)
+ (KRN O 0 R 0.791407)
+ (KRN O 0 R 0.799219)
+ (KRN O 0 R 0.807032)
+ (KRN O 0 R 0.814844)
+ (KRN O 0 R 0.822657)
+ (KRN O 0 R 0.830469)
+ (KRN O 0 R 0.838282)
+ (KRN O 0 R 0.846094)
+ (KRN O 0 R 0.853907)
+ (KRN O 0 R 0.861719)
+ (SKIP D 1)
+ (LABEL C h)
+ (LABEL C i)
+ (/LIG C i O 0)
+ (STOP)
+ (KRN O 0 R 0.801562)
+ (KRN O 0 R 0.809375)
+ (KRN O 0 R 0.817187)
+ (KRN O 0 R 0.825)
+ (KRN O 0 R 0.832812)
+ (KRN O 0 R 0.840625)
+ (KRN O 0 R 0.848437)
+ (KRN O 0 R 0.85625)
+ (KRN O 0 R 0.864062)
+ (KRN O 0 R 0.871875)
+ (KRN O 0 R 0.879687)
+ (KRN O 0 R 0.8875)
+ (KRN O 0 R 0.895312)
+ (KRN O 0 R 0.903125)
+ (KRN O 0 R 0.910937)
+ (KRN O 0 R 0.91875)
+ (KRN O 0 R 0.926562)
+ (KRN O 0 R 0.934375)
+ (KRN O 0 R 0.942187)
+ (KRN O 0 R 0.95)
+ (KRN O 0 R 0.957812)
+ (KRN O 0 R 0.965625)
+ (KRN O 0 R 0.973437)
+ (KRN O 0 R 0.98125)
+ (KRN O 0 R 0.989062)
+ (KRN O 0 R 0.996875)
+ (KRN O 0 R 1.004687)
+ (KRN O 0 R 1.0125)
+ (KRN O 0 R 1.020312)
+ (KRN O 0 R 1.028125)
+ (KRN O 0 R 1.035937)
+ (KRN O 0 R 1.04375)
+ (KRN O 0 R 1.051562)
+ (KRN O 0 R 1.059375)
+ (KRN O 0 R 1.067187)
+ (KRN O 0 R 1.075)
+ (KRN O 0 R 1.082812)
+ (KRN O 0 R 1.090625)
+ (KRN O 0 R 1.098437)
+ (KRN O 0 R 1.10625)
+ (KRN O 0 R 1.114062)
+ (KRN O 0 R 1.121875)
+ (KRN O 0 R 1.129687)
+ (KRN O 0 R 1.1375)
+ (KRN O 0 R 1.145312)
+ (KRN O 0 R 1.153125)
+ (KRN O 0 R 1.160937)
+ (KRN O 0 R 1.16875)
+ (KRN O 0 R 1.176562)
+ (KRN O 0 R 1.184375)
+ (KRN O 0 R 1.192187)
+ (KRN O 0 R 1.2)
+ (KRN O 0 R 1.207812)
+ (KRN O 0 R 1.215625)
+ (KRN O 0 R 1.223437)
+ (KRN O 0 R 1.23125)
+ (KRN O 0 R 1.239062)
+ (KRN O 0 R 1.246875)
+ (KRN O 0 R 1.254687)
+ (KRN O 0 R 1.2625)
+ (SKIP D 1)
+ (LABEL C j)
+ (/LIG> C j O 0)
+ (SKIP D 123)
+ (KRN O 0 R 1.202344)
+ (KRN O 0 R 1.210156)
+ (KRN O 0 R 1.217969)
+ (KRN O 0 R 1.225781)
+ (KRN O 0 R 1.233594)
+ (KRN O 0 R 1.241406)
+ (KRN O 0 R 1.249219)
+ (KRN O 0 R 1.257031)
+ (KRN O 0 R 1.264844)
+ (KRN O 0 R 1.272656)
+ (KRN O 0 R 1.280469)
+ (KRN O 0 R 1.288281)
+ (KRN O 0 R 1.296094)
+ (KRN O 0 R 1.303906)
+ (KRN O 0 R 1.311719)
+ (KRN O 0 R 1.319531)
+ (KRN O 0 R 1.327344)
+ (KRN O 0 R 1.335156)
+ (KRN O 0 R 1.342969)
+ (KRN O 0 R 1.350781)
+ (KRN O 0 R 1.358594)
+ (KRN O 0 R 1.366406)
+ (KRN O 0 R 1.374219)
+ (KRN O 0 R 1.382031)
+ (KRN O 0 R 1.389844)
+ (KRN O 0 R 1.397656)
+ (KRN O 0 R 1.405469)
+ (KRN O 0 R 1.413281)
+ (KRN O 0 R 1.421094)
+ (KRN O 0 R 1.428906)
+ (KRN O 0 R 1.436719)
+ (KRN O 0 R 1.444531)
+ (KRN O 0 R 1.452344)
+ (KRN O 0 R 1.460156)
+ (KRN O 0 R 1.467969)
+ (KRN O 0 R 1.475781)
+ (KRN O 0 R 1.483594)
+ (KRN O 0 R 1.491406)
+ (KRN O 0 R 1.499219)
+ (KRN O 0 R 1.507031)
+ (KRN O 0 R 1.514844)
+ (KRN O 0 R 1.522656)
+ (KRN O 0 R 1.530469)
+ (KRN O 0 R 1.538281)
+ (KRN O 0 R 1.546094)
+ (KRN O 0 R 1.553906)
+ (KRN O 0 R 1.561719)
+ (KRN O 0 R 1.569531)
+ (KRN O 0 R 1.577344)
+ (KRN O 0 R 1.585156)
+ (KRN O 0 R 1.592969)
+ (KRN O 0 R 1.600781)
+ (KRN O 0 R 1.608594)
+ (KRN O 0 R 1.616406)
+ (KRN O 0 R 1.624219)
+ (KRN O 0 R 1.632031)
+ (KRN O 0 R 1.639844)
+ (KRN O 0 R 1.647656)
+ (KRN O 0 R 1.655469)
+ (KRN O 0 R 1.663281)
+ (SKIP D 1)
+ (LABEL C k)
+ (LIG/> C k O 0)
+ (SKIP D 62)
+ (KRN O 0 R 1.603125)
+ (KRN O 0 R 1.610937)
+ (KRN O 0 R 1.61875)
+ (KRN O 0 R 1.626562)
+ (KRN O 0 R 1.634375)
+ (KRN O 0 R 1.642187)
+ (KRN O 0 R 1.65)
+ (KRN O 0 R 1.657812)
+ (KRN O 0 R 1.665625)
+ (KRN O 0 R 1.673437)
+ (KRN O 0 R 1.68125)
+ (KRN O 0 R 1.689062)
+ (KRN O 0 R 1.696875)
+ (KRN O 0 R 1.704687)
+ (KRN O 0 R 1.7125)
+ (KRN O 0 R 1.720312)
+ (KRN O 0 R 1.728125)
+ (KRN O 0 R 1.735937)
+ (KRN O 0 R 1.74375)
+ (KRN O 0 R 1.751562)
+ (KRN O 0 R 1.759375)
+ (KRN O 0 R 1.767187)
+ (KRN O 0 R 1.775)
+ (KRN O 0 R 1.782812)
+ (KRN O 0 R 1.790625)
+ (KRN O 0 R 1.798437)
+ (KRN O 0 R 1.80625)
+ (KRN O 0 R 1.814062)
+ (KRN O 0 R 1.821875)
+ (KRN O 0 R 1.829687)
+ (KRN O 0 R 1.8375)
+ (KRN O 0 R 1.845312)
+ (KRN O 0 R 1.853125)
+ (KRN O 0 R 1.860937)
+ (KRN O 0 R 1.86875)
+ (KRN O 0 R 1.876562)
+ (KRN O 0 R 1.884375)
+ (KRN O 0 R 1.892187)
+ (KRN O 0 R 1.9)
+ (KRN O 0 R 1.907812)
+ (KRN O 0 R 1.915625)
+ (KRN O 0 R 1.923437)
+ (KRN O 0 R 1.93125)
+ (KRN O 0 R 1.939062)
+ (KRN O 0 R 1.946875)
+ (KRN O 0 R 1.954687)
+ (KRN O 0 R 1.9625)
+ (KRN O 0 R 1.970312)
+ (KRN O 0 R 1.978125)
+ (KRN O 0 R 1.985937)
+ (KRN O 0 R 1.99375)
+ (KRN O 0 R 2.001562)
+ (KRN O 0 R 2.009375)
+ (KRN O 0 R 2.017187)
+ (KRN O 0 R 2.025)
+ (KRN O 0 R 2.032812)
+ (KRN O 0 R 2.040625)
+ (KRN O 0 R 2.048437)
+ (KRN O 0 R 2.05625)
+ (KRN O 0 R 2.064062)
+ (STOP)
+ (LABEL C l)
+ (/LIG/> C l O 0)
+ (SKIP D 1)
+ (LABEL C m)
+ (LIG O 0 O 0)
+ (STOP)
+ (LIG C a C b)
+ (KRN C d R -15.999999)
+ (LABEL C c)
+ (LABEL C d)
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ (STOP)
+ (COMMENT THIS PART OF THE PROGRAM IS NEVER USED!
+ )
+ )
+(CHARACTER O 0
+ (CHARWD R 2.0)
+ (CHARHT R 15.999999)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ (NEXTLARGER O 5)
+ )
+(CHARACTER O 5
+ (CHARWD R 0.0)
+ (CHARDP R -0.113281)
+ (VARCHAR
+ (TOP O 5)
+ (MID C c)
+ (REP C d)
+ )
+ )
+(CHARACTER O 33
+ (CHARWD R 0.0)
+ (CHARDP R 0.2109375)
+ )
+(CHARACTER O 137
+ (CHARWD R 0.0)
+ (CHARDP R 0.1015625)
+ )
+(CHARACTER O 140
+ (CHARWD R 0.0)
+ (CHARDP R 0.089844)
+ )
+(CHARACTER C a
+ (CHARWD R 0.0)
+ (NEXTLARGER C d)
+ )
+(CHARACTER C b
+ (CHARWD R 0.0)
+ (CHARDP R 0.1640625)
+ )
+(CHARACTER C c
+ (CHARWD R 0.0)
+ (CHARDP R -0.011719)
+ (COMMENT
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C d
+ (CHARWD R 0.0)
+ (CHARDP R 0.1328125)
+ (COMMENT
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C e
+ (CHARWD R 0.0)
+ (CHARDP R 0.089844)
+ )
+(CHARACTER C f
+ (CHARWD R 0.0)
+ (CHARDP R 0.0234375)
+ )
+(CHARACTER C g
+ (CHARWD R 0.0)
+ (CHARDP R -0.011719)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (LIG/ C g O 0)
+ )
+ )
+(CHARACTER C h
+ (CHARWD R 0.0)
+ (CHARDP R 0.1953125)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (/LIG C i O 0)
+ )
+ )
+(CHARACTER C i
+ (CHARWD R 0.0)
+ (CHARDP R 0.2421875)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (/LIG C i O 0)
+ )
+ )
+(CHARACTER C j
+ (CHARWD R 0.0)
+ (CHARDP R 0.1484375)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (/LIG> C j O 0)
+ (LIG C a C b)
+ (KRN C d R -15.999999)
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C k
+ (CHARWD R 0.0)
+ (CHARDP R 0.0546875)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (LIG/> C k O 0)
+ (LIG C a C b)
+ (KRN C d R -15.999999)
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C l
+ (CHARWD R 2.0)
+ (CHARDP R 0.1796875)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (/LIG/> C l O 0)
+ (LIG C a C b)
+ (KRN C d R -15.999999)
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C m
+ (CHARWD R 2.0)
+ (CHARHT R 15.999999)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (LIG O 0 O 0)
+ )
+ )
+(CHARACTER O 354
+ (CHARWD R 0.0)
+ (CHARDP R -15.999999)
+ )
diff --git a/Build/source/texk/web2c/triptrap/mftrap1.in b/Build/source/texk/web2c/triptrap/mftrap1.in
new file mode 100644
index 00000000000..1e7b96cab35
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mftrap1.in
@@ -0,0 +1,3 @@
+
+\input trap
+
diff --git a/Build/source/texk/web2c/triptrap/mftrap2.in b/Build/source/texk/web2c/triptrap/mftrap2.in
new file mode 100644
index 00000000000..d3dba8ac65d
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mftrap2.in
@@ -0,0 +1 @@
+ &trap trap
diff --git a/Build/source/texk/web2c/triptrap/mftrapin.log b/Build/source/texk/web2c/triptrap/mftrapin.log
new file mode 100644
index 00000000000..f7740f9de91
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mftrapin.log
@@ -0,0 +1,179 @@
+This is METAFONT, Version 2.71828 (INIMF) 23 DEC 2002 11:57
+**\input trap
+(trap.mf
+>> << == >> ::: ||`` ''--!! ??## && @@ $$[[]]{{ }}((5.5 0.5))
+>> ".."
+! Not implemented: (unknown numeric)++(string).
+<to be read again>
+ ;
+l.4 ...}} . (( 5.5.5 )) ++ "..";
+
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+..
+! Missing `=' has been inserted.
+<to be read again>
+ ,
+l.5 begingroup save =; let=,
+ ; save,; newinternal $=,; let )...
+You should have said `let symbol = something'.
+But don't worry; I'll pretend that an equals sign
+was present. The next token I read will be `something'.
+
+> errorstopmode=errorstopmode
+> readstring=readstring
+> 2
+> "2"
+> ,=,
+> (=tag
+> )=,
+<< == >> ::: ||`` ''--!! ??## && @@ $$[[]]{{ }}(([][]))=numeric
+<< == >> ::: ||`` ''--!! ??## && @@ $$[[]]{{ }}((5.5 0.5))=<< == >> :::
+||`` ''--!! ??## && @@ $$[[]]{{ }}((5.5 0.5))
+> year=month
+! OK.
+l.6 ...ring,2,"2",,,(,),<<,year;
+
+
+! Missing `:' has been inserted.
+<to be read again>
+ ;
+l.8 ...not cycle "":1.1 forever;
+ fi;
+The next thing in this loop should have been a `:'.
+So I'll pretend that a colon was present;
+everything from here to `endfor' will be iterated.
+
+{fi}
+{exitif}
+{[repeat the loop]}
+{false}
+{fi}
+{exitif}
+{[repeat the loop]}
+{(2.1)>(2)}
+{true}
+{tracingcommands:=2.1}
+{showtoken}
+> |=:|>=|=:|>
+! OK.
+l.9 ... endfor; showtoken |=:|>;
+
+
+! Arithmetic overflow.
+l.10 tracingedges:=1/.00001
+ ; tracingequations:=$+1; p~=trac...
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+{tracingedges:=32767.99998}
+{(0)+(1)}
+{tracingequations:=1}
+{(32767.99998)+(0.00002)}
+! Arithmetic overflow.
+l.10 ... p~=tracingedges+.00001;
+
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+{(p~)=(32767.99998)}
+## p~=32767.99998
+{interim}
+{tracingmacros:=1}
+{tracingoutput:=1}
+{warningcheck:=1}
+{tracingstats:=1}
+{tracingchoices:=1}
+{tracingpens:=1}
+{tracingspecs:=1}
+{ASCII("")}
+{$:=-1}
+{$:=x}
+>> x
+! Internal quantity `$' must receive a known value.
+<to be read again>
+ ;
+l.12 ...os:=1; $:=ASCII""; $:=x;
+ p~:=p~;
+I can't set an internal quantity to anything but a known
+numeric value, so I'll have to ignore this assignment.
+
+{p~:=32767.99998}
+## p~=32767.99998
+! Value is too large (32767.99998).
+l.12 ...:=ASCII""; $:=x; p~:=p~;
+
+The equation I just processed has given some variable
+a value of 4096 or more. Continue and I'll try to cope
+with that big value; but it might be dangerous.
+(Set warningcheck:=0 to suppress this message.)
+
+{delimiters}
+{delimiters}
+{vardef}
+{def}
+
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+(TEXT2)<-interim.proofing:=(-0.5;shipout.nullpicture;special"3"
+{begingroup}
+{interim}
+{-(0.5)}
+! Missing `)' has been inserted.
+<to be read again>
+ ;
+<argument> ...m.proofing:=(-0.5;
+ shipout.nullpicture;special"3"
+foo->begingroup(TEXT2)
+ endgroup
+l.16 ...ture; special"3" endtext
+ ;
+I found no right delimiter to match a left one. So I've
+put one in, behind the scenes; this may fix the problem.
+
+{proofing:=-0.5}
+{shipout}
+{nullpicture}
+{special}
+{restoring proofing=0}
+{endgroup}
+{for}
+{showstats}
+Memory usage 291&41 (1922 still untouched)
+String usage 26&83 (1895&21534 still untouched)
+! OK.
+l.17 ...ing:fi endfor showstats;
+ let!!=skipto;
+
+{let}
+{path}
+{-(15)}
+{-(12)}
+Path at line 18, before choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+
+Path at line 18, after choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+
+{(unknown path p~)=(path)}
+{everyjob}
+{vardef}
+{let}
+{vardef}
+{def}
+{elseif}
+ )
+Beginning to dump on file trap.base
+ (preloaded base=trap 98.8.8)
+1113 strings of total length 20515
+395 memory locations dumped; current usage is 317&67
+265 symbolic tokens
diff --git a/Build/source/texk/web2c/triptrap/mptrap.diffs b/Build/source/texk/web2c/triptrap/mptrap.diffs
new file mode 100644
index 00000000000..cf317039f39
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mptrap.diffs
@@ -0,0 +1,621 @@
+make[1]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c'
+cd lib && make -w CC='gcc' CFLAGS='-g ' LDFLAGS=''
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/lib'
+make[2]: Nothing to be done for `default'.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/lib'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' fixwrites
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `fixwrites' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' splitup
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `splitup' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' web2c
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `web2c' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+rm -f mtrap.mp mtrap.mem trapf.tfm
+rm -f mtrap.log mtrap.0 mtrap.1 writeo writeo.log writeo.2
+rm -f trap.mp trap.mpx mptrapin.fot mptrapin.log
+rm -f mptrap.fot mptrap.log mptrap.tfm
+rm -f trap.ps trap.mem trap.0 trap.5 trap.6 trap.95 trap.96 trap.97
+rm -f trap.98 trap.99 trap.100 trap.101 trap.102 trap.103 trap.104
+rm -f trap.105 trap.106 trap.107 trap.108 trap.109 trap.148
+rm -f trap.149 trap.150 trap.151 trap.197 trap.200
+rm -f mptrap.pl
+ln -s ./triptrap/mtrap.mp . # get same filename in log
+./pltotf ./triptrap/trapf.pl trapf.tfm
+/bin/sh -c 'TEXMFCNF=./triptrap ./mpost --progname=inimpost mtrap'
+This is MetaPost, Version 0.901 (Web2C 7.5.5) (INIMP)
+(mtrap.mp
+diff ./triptrap/mtrap.log mtrap.log
+1,2c1,2
+< This is MetaPost, C Version 0.64 (INIMP) 28 JAN 1998 11:18
+< **mtrap
+---
+> This is MetaPost, Version 0.901 (Web2C 7.5.5) (INIMP) 3 AUG 2005 10:46
+> **mtrap
+5c5
+< String usage 4&24 (1306&9877 now untouched)
+---
+> String usage 5&29 (1297&17816 now untouched)
+300,306c300,306
+< String usage 8&32 (1302&9869 now untouched)
+< Memory usage 109&13 (3358 still untouched)
+< String usage 10&42 (1300&9859 now untouched)
+< Memory usage 116&13 (3358 still untouched)
+< String usage 11&45 (1299&9856 now untouched)
+< Memory usage 139&56 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> String usage 9&37 (1293&17808 now untouched)
+> Memory usage 120&13 (3358 still untouched)
+> String usage 11&47 (1291&17798 now untouched)
+> Memory usage 127&13 (3358 still untouched)
+> String usage 12&50 (1290&17795 now untouched)
+> Memory usage 150&56 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+316,317c316,317
+< Memory usage 152&59 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 163&59 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+341,342c341,342
+< Memory usage 220&59 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 239&59 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+358,359c358,359
+< Memory usage 245&59 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 267&59 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+374,375c374,375
+< Memory usage 293&72 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 318&72 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+404,405c404,405
+< Memory usage 314&59 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 342&59 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+442,443c442,443
+< Memory usage 339&59 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 370&59 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+480,481c480,481
+< Memory usage 339&59 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 370&59 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+496,497c496,497
+< Memory usage 345&70 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 376&70 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+537,538c537,538
+< Memory usage 364&59 (3358 still untouched)
+< String usage 14&51 (1296&9850 now untouched)
+---
+> Memory usage 398&59 (3358 still untouched)
+> String usage 15&56 (1287&17789 now untouched)
+550,551c550,551
+< Memory usage 355&64 (3358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 386&64 (3358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+594,595c594,595
+< Memory usage 365&59 (3358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 396&59 (3358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+610,611c610,611
+< Memory usage 390&73 (3358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 424&73 (3358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+659,660c659,660
+< Memory usage 409&59 (3358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 446&59 (3358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+668,671c668,671
+< Memory usage 409&59 (3358 still untouched)
+< String usage 18&75 (1292&9826 now untouched)
+< Memory usage 308&13 (3358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 446&59 (3358 still untouched)
+> String usage 19&80 (1283&17765 now untouched)
+> Memory usage 339&13 (3358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+721,722c721,722
+< Memory usage 308&13 (3358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 339&13 (3358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+724,725c724,725
+< Memory usage 563&13 (3358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 622&13 (3358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+817,818c817,818
+< Memory usage 747&13 (3358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 826&13 (3358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+847,848c847,848
+< Memory usage 1003&85 (2358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 1110&85 (2358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+872,873c872,873
+< Memory usage 873&85 (2358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 966&85 (2358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+897,898c897,898
+< Memory usage 786&85 (2358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 868&85 (2358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+919,920c919,920
+< Memory usage 773&85 (2358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 852&85 (2358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+942,943c942,943
+< Memory usage 788&85 (2358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 870&85 (2358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+949,950c949,950
+< Memory usage 319&13 (2358 still untouched)
+< String usage 17&64 (1293&9837 now untouched)
+---
+> Memory usage 350&13 (2358 still untouched)
+> String usage 18&69 (1284&17776 now untouched)
+952,953c952,953
+< Memory usage 325&13 (2358 still untouched)
+< String usage 20&78 (1287&9809 now untouched)
+---
+> Memory usage 356&13 (2358 still untouched)
+> String usage 21&83 (1278&17748 now untouched)
+956c956,957
+< >> "%%Creator: MetaPost"
+---
+> >> "%%HiResBoundingBox: -36 -24 84 84"
+> >> "%%Creator: MetaPost 0.901"
+958a960
+> >> "%%BeginProlog"
+988,989c990,991
+< Memory usage 325&13 (2358 still untouched)
+< String usage 22&84 (1247&8769 now untouched)
+---
+> Memory usage 356&13 (2358 still untouched)
+> String usage 23&89 (1236&16656 now untouched)
+992,994c994,996
+< >> 40
+< Memory usage 325&13 (2358 still untouched)
+< String usage 22&84 (1206&7603 now untouched)
+---
+> >> 42
+> Memory usage 356&13 (2358 still untouched)
+> String usage 23&89 (1193&15438 now untouched)
+998,1002c1000,1008
+< >> "%%Creator: MetaPost"
+< Memory usage 325&13 (2358 still untouched)
+< String usage 24&110 (1197&7522 now untouched)
+< Memory usage 325&13 (2358 still untouched)
+< String usage 26&125 (1148&7358 now untouched)
+---
+> >> "%%HiResBoundingBox: -36 -24 84 84"
+> Memory usage 356&13 (2358 still untouched)
+> String usage 25&129 (1184&15343 now untouched)
+> write0 = `writeo'.
+>
+> write1 = `writeo.2'.
+>
+> Memory usage 356&13 (2358 still untouched)
+> String usage 27&144 (1135&15179 now untouched)
+1004c1010
+< >> "%%Pages: 1"
+---
+> >> "%%CreationDate: 2005.08.03:1046"
+1006c1012
+< >> "%*Font: trapf 9.9628 9.96265 35:c008"
+---
+> >> "%%Pages: 1"
+1008,1010c1014,1018
+< >> "%%EndProlog"
+< Memory usage 325&13 (2358 still untouched)
+< String usage 25&135 (1144&7308 now untouched)
+---
+> >> "%*Font: trapf 9.9628 9.96265 35:c008"
+> Memory usage 356&13 (2358 still untouched)
+> String usage 26&134 (1131&15135 now untouched)
+> write0 = `writeo'.
+>
+1013,1014c1021,1022
+< Memory usage 325&13 (2358 still untouched)
+< String usage 26&141 (1195&1840 now untouched)
+---
+> Memory usage 356&13 (2358 still untouched)
+> String usage 27&140 (1258&16265 now untouched)
+1038,1039c1046,1047
+< Memory usage 325&13 (2358 still untouched)
+< String usage 26&141 (1195&1840 now untouched)
+---
+> Memory usage 356&13 (2358 still untouched)
+> String usage 27&140 (1258&16265 now untouched)
+1048,1049c1056,1057
+< Memory usage 327&13 (2358 still untouched)
+< String usage 27&149 (1194&1832 now untouched)
+---
+> Memory usage 358&13 (2358 still untouched)
+> String usage 28&148 (1257&16257 now untouched)
+1097,1098c1105,1106
+< Memory usage 327&13 (2358 still untouched)
+< String usage 27&149 (1193&1824 now untouched)
+---
+> Memory usage 358&13 (2358 still untouched)
+> String usage 28&148 (1256&16249 now untouched)
+1101,1102c1109,1110
+< 32 strings out of 1310
+< 561 string characters out of 9901
+---
+> 33 strings out of 1302
+> 560 string characters out of 17845
+1104,1106c1112,1114
+< 237 symbolic tokens out of 2100
+< 5i,33n,6p,100b stack positions out of 30i,100n,150p,500b
+< 3 string compactions (moved 1368 characters, 89 strings)
+---
+> 238 symbolic tokens out of 9500
+> 5i,33n,6p,99b stack positions out of 300i,300n,1500p,500b
+> 2 string compactions (moved 880 characters, 63 strings)
+diff ./triptrap/mtrap.0 mtrap.0
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: -36 -24 84 84
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+6a8
+> %%BeginProlog
+diff ./triptrap/mtrap.1 mtrap.1
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: -84 -36 24 84
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+6a8
+> %%BeginProlog
+diff ./triptrap/writeo writeo
+diff ./triptrap/writeo.2 writeo.2
+ln -s ./triptrap/trap.mp .
+ln -s ./triptrap/trap.mpx .
+/bin/sh -c 'TEXMFCNF=./triptrap ./mpost --progname=inimpost <./triptrap/mptrap1.in >mptrapin.fot'
+mv trap.log mptrapin.log
+diff ./triptrap/mptrapin.log mptrapin.log
+1c1
+< This is MetaPost, C Version 0.632 (INIMP) 24 JAN 1997 11:13
+---
+> This is MetaPost, Version 0.901 (Web2C 7.5.5) (INIMP) 3 AUG 2005 10:46
+162c162
+< String usage 28&93 (1282&9362 now untouched)
+---
+> String usage 29&97 (1272&17743 now untouched)
+195,198c195,198
+< (preloaded mem=trap 97.1.24)
+< at most 1226 strings of total length 22670
+< 398 memory locations dumped; current usage is 318&68
+< 279 symbolic tokens
+---
+> (mem=trap 2005.8.3)
+> at most 1236 strings of total length 22276
+> 400 memory locations dumped; current usage is 320&68
+> 281 symbolic tokens
+/bin/sh -c 'TEXMFCNF=./triptrap ./mpost --progname=inimpost <./triptrap/mptrap2.in >mptrap.fot'
+mv trap.log mptrap.log
+mv trap.tfm mptrap.tfm
+diff ./triptrap/mptrap.fot mptrap.fot
+0a1
+> This is MetaPost, Version 0.901 (Web2C 7.5.5) (INIMP)
+34,35c35,36
+< Memory usage 2147&536 (39 still untouched)
+< String usage 73&277 (1110&5373 now untouched)
+---
+> Memory usage 2315&536 (39 still untouched)
+> String usage 74&281 (1103&13766 now untouched)
+diff ./triptrap/mptrap.log mptrap.log
+1c1
+< This is MetaPost, C Version 0.632 (preloaded mem=trap 97.1.24) 24 JAN 1997 11:13
+---
+> This is MetaPost, Version 0.901 (Web2C 7.5.5) (mem=trap 2005.8.3) 3 AUG 2005 10:46
+1621,1622c1621,1622
+< Memory usage 1178&115 (2344 still untouched)
+< String usage 22&84 (1244&9177 now untouched)
+---
+> Memory usage 1244&115 (2344 still untouched)
+> String usage 23&88 (1236&17569 now untouched)
+2612c2612
+< >> unknown path %CAPSULE1695
+---
+> >> unknown path %CAPSULE1901
+2665c2665
+< dashed (on 3 off 0) shifted 0
+---
+> dashed (on 0 off 0) shifted 0
+2816,2818c2816,2818
+< xpart %CAPSULE2512=xx
+< %CAPSULE2520=2yy-2
+< %CAPSULE2528 = 3.3333xx+3.3333
+---
+> xpart %CAPSULE2366=xx
+> %CAPSULE2374=2yy-2
+> %CAPSULE2382 = 3.3333xx+3.3333
+2877,2880c2877,2880
+< %CAPSULE2440 = 3ooo-0.01o3
+< %CAPSULE2460 = 8000o2-4000o1+1000o3+9
+< xpart %CAPSULE2536=xpart '
+< ypart %CAPSULE2536=ypart '
+---
+> %CAPSULE2294 = 3ooo-0.01o3
+> %CAPSULE2314 = 8000o2-4000o1+1000o3+9
+> xpart %CAPSULE2390=xpart '
+> ypart %CAPSULE2390=ypart '
+2883,2884c2883,2884
+< ### 4000o1 = -%CAPSULE2460+8000o2+1000o3+9
+< ### -4.87383o2 = -oo-0.0004%CAPSULE2460+0.39673o3-17.99643
+---
+> ### 4000o1 = -%CAPSULE2314+8000o2+1000o3+9
+> ### -4.87383o2 = -oo-0.0004%CAPSULE2314+0.39673o3-17.99643
+2888c2888
+< ### 0.22894o5 = -%CAPSULE2440+0.10689oo+3ooo+1.92412
+---
+> ### 0.22894o5 = -%CAPSULE2294+0.10689oo+3ooo+1.92412
+2891c2891
+< ### -alfa=-%CAPSULE2428
+---
+> ### -alfa=-%CAPSULE2282
+2893,2900c2893,2900
+< ### -%CAPSULE2428=-xpart %CAPSULE2426
+< {xpart((xpart %CAPSULE2426,0))}
+< ### -xpart %CAPSULE9=-%CAPSULE2416
+< {endgroup}
+< {(%CAPSULE2440)+(%CAPSULE2416)}
+< ### -%CAPSULE2440=-%CAPSULE2404+%CAPSULE2416
+< ### -%CAPSULE2404=-ypart %CAPSULE2402
+< ### -%CAPSULE2460=-xpart %CAPSULE2402
+---
+> ### -%CAPSULE2282=-xpart %CAPSULE2280
+> {xpart((xpart %CAPSULE2280,0))}
+> ### -xpart %CAPSULE9=-%CAPSULE2270
+> {endgroup}
+> {(%CAPSULE2294)+(%CAPSULE2270)}
+> ### -%CAPSULE2294=-%CAPSULE2258+%CAPSULE2270
+> ### -%CAPSULE2258=-ypart %CAPSULE2256
+> ### -%CAPSULE2314=-xpart %CAPSULE2256
+2905c2905
+< ### p$=-ypart %CAPSULE2368+1
+---
+> ### p$=-ypart %CAPSULE2222+1
+2907,2919c2907,2919
+< {(2/3)*((-ypart %CAPSULE2368+1,ypart %CAPSULE2368))}
+< ### ypart %CAPSULE2368=-xpart %CAPSULE2368+1
+< ### -0.66667xpart %CAPSULE2368=-xpart %CAPSULE2360
+< {-((xpart %CAPSULE2360,-xpart %CAPSULE2360+0.66667))}
+< ### xpart %CAPSULE2360=-xpart %CAPSULE2340
+< {((xpart %CAPSULE2402,ypart %CAPSULE2402))=((xpart %CAPSULE2340,-xpart %
+< CAPSULE2340-0.66667))}
+< ## xpart %CAPSULE2340=-ypart %CAPSULE2402-0.66667
+< ## xpart %CAPSULE2402=-ypart %CAPSULE2402-0.66667
+< ### ypart %CAPSULE2402=-xpart %CAPSULE2402-0.66667
+< ### -xpart %CAPSULE2402=-xpart %CAPSULE2340
+< {((xpart ',ypart '))=((xpart %CAPSULE2340,-xpart %CAPSULE2340-0.66667))}
+< ## xpart %CAPSULE2340=-ypart '-0.66667
+---
+> {(2/3)*((-ypart %CAPSULE2222+1,ypart %CAPSULE2222))}
+> ### ypart %CAPSULE2222=-xpart %CAPSULE2222+1
+> ### -0.66667xpart %CAPSULE2222=-xpart %CAPSULE2214
+> {-((xpart %CAPSULE2214,-xpart %CAPSULE2214+0.66667))}
+> ### xpart %CAPSULE2214=-xpart %CAPSULE2194
+> {((xpart %CAPSULE2256,ypart %CAPSULE2256))=((xpart %CAPSULE2194,-xpart %
+> CAPSULE2194-0.66667))}
+> ## xpart %CAPSULE2194=-ypart %CAPSULE2256-0.66667
+> ## xpart %CAPSULE2256=-ypart %CAPSULE2256-0.66667
+> ### ypart %CAPSULE2256=-xpart %CAPSULE2256-0.66667
+> ### -xpart %CAPSULE2256=-xpart %CAPSULE2194
+> {((xpart ',ypart '))=((xpart %CAPSULE2194,-xpart %CAPSULE2194-0.66667))}
+> ## xpart %CAPSULE2194=-ypart '-0.66667
+2925c2925
+< ### -ooo=-%CAPSULE2302
+---
+> ### -ooo=-%CAPSULE2156
+2927,2936c2927,2936
+< {(%CAPSULE2302)+(1)}
+< ### -%CAPSULE2302=-%CAPSULE2290+1
+< {(1/2)*(%CAPSULE2290)}
+< ### -0.5%CAPSULE2290=-%CAPSULE2282
+< {-(%CAPSULE2282)}
+< ### %CAPSULE2282=-%CAPSULE2274
+< {(2)*(%CAPSULE2274)}
+< ### -2%CAPSULE2274=-%CAPSULE2266
+< {(-0.5%CAPSULE2266-0.5)=(%CAPSULE2266)}
+< ## %CAPSULE2266=-0.33333
+---
+> {(%CAPSULE2156)+(1)}
+> ### -%CAPSULE2156=-%CAPSULE2144+1
+> {(1/2)*(%CAPSULE2144)}
+> ### -0.5%CAPSULE2144=-%CAPSULE2136
+> {-(%CAPSULE2136)}
+> ### %CAPSULE2136=-%CAPSULE2128
+> {(2)*(%CAPSULE2128)}
+> ### -2%CAPSULE2128=-%CAPSULE2120
+> {(-0.5%CAPSULE2120-0.5)=(%CAPSULE2120)}
+> ## %CAPSULE2120=-0.33333
+3509,3510c3509,3510
+< Memory usage 3017&264 (273 still untouched)
+< String usage 68&249 (1155&8794 now untouched)
+---
+> Memory usage 3275&264 (273 still untouched)
+> String usage 69&253 (1147&17186 now untouched)
+3520,3521c3520,3521
+< Memory usage 2267&264 (273 still untouched)
+< String usage 66&241 (1154&8790 now untouched)
+---
+> Memory usage 2446&264 (273 still untouched)
+> String usage 67&245 (1146&17182 now untouched)
+3990a3991,3992
+> ..(10,10)
+> ..controls (10,10) and (10,10)
+4378,4379c4380,4381
+< Memory usage 2744&607 (39 still untouched)
+< String usage 73&279 (1138&8717 now untouched)
+---
+> Memory usage 2959&607 (39 still untouched)
+> String usage 74&283 (1130&17109 now untouched)
+4384,4385c4386,4387
+< Memory usage 2704&536 (39 still untouched)
+< String usage 73&279 (1138&8717 now untouched)
+---
+> Memory usage 2919&536 (39 still untouched)
+> String usage 74&283 (1130&17109 now untouched)
+4673,4674c4675,4676
+< Memory usage 2147&536 (39 still untouched)
+< String usage 73&277 (1110&5373 now untouched)
+---
+> Memory usage 2315&536 (39 still untouched)
+> String usage 74&281 (1103&13766 now untouched)
+4739,4740c4741,4742
+< 75 strings out of 1277
+< 768 string characters out of 9330
+---
+> 76 strings out of 1268
+> 772 string characters out of 17724
+4742,4743c4744,4745
+< 337 symbolic tokens out of 2100
+< 8i,35n,8p,167b stack positions out of 30i,100n,150p,500b
+---
+> 339 symbolic tokens out of 9500
+> 8i,35n,8p,167b stack positions out of 300i,300n,1500p,500b
+4752c4754
+< out of 256w,16h,16d,64i,5000l,500k,256e,50p)
+---
+> out of 256w,16h,16d,64i,15000l,2500k,256e,50p)
+diff ./triptrap/trap.5 trap.5
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: -150.99219 -2 168.99219 20.00024
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+5a7
+> %%BeginProlog
+diff ./triptrap/trap.6 trap.6
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: 3 0 6 2.25
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+5a7
+> %%BeginProlog
+diff ./triptrap/trap.148 trap.148
+2,4c2,5
+< %%BoundingBox: -5 -5 13 5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%BoundingBox: -4 -6 13 6
+> %%HiResBoundingBox: -3.5 -5.5 12.5 5.5
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+5a7
+> %%BeginProlog
+diff ./triptrap/trap.149 trap.149
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: -27.5 -27.5 51.6906 36.71318
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+5a7
+> %%BeginProlog
+diff ./triptrap/trap.150 trap.150
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: -5 -5 33 25
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+5a7
+> %%BeginProlog
+28c30
+< 15 10 lineto
+---
+> 10 5 lineto
+diff ./triptrap/trap.151 trap.151
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: -4095.49998 -101.96362 4095.49998 261
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+5a7
+> %%BeginProlog
+diff ./triptrap/trap.197 trap.197
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: -1.99254 -3.98508 7.97011 3.98506
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+6a8
+> %%BeginProlog
+diff ./triptrap/trap.200 trap.200
+3,4c3,5
+< %%Creator: MetaPost
+< %%CreationDate: 1998.01.28:1118
+---
+> %%HiResBoundingBox: -6.2132 -5.9851 36.21318 37.00375
+> %%Creator: MetaPost 0.901
+> %%CreationDate: 2005.08.03:1046
+7a9
+> %%BeginProlog
+./tftopl ./mptrap.tfm mptrap.pl
+diff ./triptrap/mptrap.pl mptrap.pl
+make[1]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c'
diff --git a/Build/source/texk/web2c/triptrap/mptrap.fot b/Build/source/texk/web2c/triptrap/mptrap.fot
new file mode 100644
index 00000000000..dd115f1982d
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mptrap.fot
@@ -0,0 +1,82 @@
+**(trap.mp
+\*//*\trap\pass2!
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+l.22 ...t next=\; delimiters ^~7
+ ! fi
+! Extra tokens will be flushed.
+<to be read again>
+ !
+l.22 ... next=\; delimiters ^~7!
+ fi
+! Forbidden token found while scanning to the end of the statement.
+<inserted text>
+ ;
+<to be read again>
+ \
+l.23 next\
+ ; % the second pass will now compute silently; the ...
+
+hello again^^_
+{tracingonline:=1}
+
+f<expr>->let)=];let[=(;show._
+(EXPR0)<-xx
+{let}
+{let}
+{show}
+>> _1
+{showdependencies}
+xpart '=-ypart '-0.66667
+{qq:=pen}
+{showstats}
+Memory usage 2147&536 (39 still untouched)
+String usage 73&277 (1110&5373 now untouched)
+{[repeat the loop]}
+>> bye
+! Isolated expression.
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+! Extra tokens will be flushed.
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+! Forbidden token found while scanning to the end of the statement.
+<inserted text>
+ ;
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+{show}
+)
+*! An expression can't begin with `end'.
+<inserted text>
+ 0
+<to be read again>
+ end
+<*> end
+
+>> 0
+! A group begun on line 206 never ended.
+<to be read again>
+ end
+<*> end
+
+{endgroup}
+(end occurred when else on line 88 was incomplete)
+(end occurred when if on line 37 was incomplete)
+(end occurred when elseif on line 22 was incomplete)
+(see the transcript file for additional information)
+(illegal design size has been changed to 128pt)
+(some chardp values had to be adjusted by as much as 0.5pt)
+(local label 0:: was missing)
+(local label 5:: was missing)
+(4 font metric dimensions had to be decreased)
+Font metrics written on trap.tfm.
+25 output files written: trap.ps .. trap.200
+Transcript written on trap.log.
diff --git a/Build/source/texk/web2c/triptrap/mptrap.log b/Build/source/texk/web2c/triptrap/mptrap.log
new file mode 100644
index 00000000000..147992a44a0
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mptrap.log
@@ -0,0 +1,4755 @@
+This is MetaPost, C Version 0.632 (preloaded mem=trap 97.1.24) 24 JAN 1997 11:13
+** &trap trap
+(trap.mp
+{if}
+{known(0)}
+{not(true)}
+{false}
+{known("")}
+{true}
+
+/*\`'@#->begingroup.message(SUFFIX1)&str(SUFFIX0)&jobname&char.ASCII'`&s
+tr(SUFFIX2)!endgroup
+(SUFFIX0)<-/*\
+(SUFFIX1)<-`'
+(SUFFIX2)<-pass2
+{begingroup}
+{message}
+
+`'->begingroup'`endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-`'
+{begingroup}
+
+'`->"\*/"
+{endgroup}
+{("\*/")&("/*\")}
+{jobname}
+{("\*//*\")&("trap")}
+
+'`->"\*/"
+{ASCII("\*/")}
+{char(92)}
+{("\*//*\trap")&("\")}
+{("\*//*\trap\")&("pass2!")}
+
+\*//*\trap\pass2!
+{endgroup}
+{nonstopmode}
+
+{outer}
+{let}
+{delimiters}
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+l.22 ...t next=\; delimiters ^~7
+ ! fi
+Sorry: You can't redefine a number, string, or expr.
+I've inserted an inaccessible symbol so that your
+definition will be completed without mixing me up too badly.
+
+! Extra tokens will be flushed.
+<to be read again>
+ !
+l.22 ... next=\; delimiters ^~7!
+ fi
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+! Forbidden token found while scanning to the end of the statement.
+<inserted text>
+ ;
+<to be read again>
+ \
+l.23 next\
+ ; % the second pass will now compute silently; the ...
+A previous error seems to have propagated,
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{\}
+{batchmode}
+
+! An expression can't begin with `endgroup'.
+<inserted text>
+ 0
+<to be read again>
+ endgroup
+l.24 batchmode; ^~7,endgroup
+ pausing:=1; exitif p exitif bool...
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+! Missing ` INACCESSIBLE' has been inserted.
+<to be read again>
+ endgroup
+l.24 batchmode; ^~7,endgroup
+ pausing:=1; exitif p exitif bool...
+I found no right delimiter to match a left one. So I've
+put one in, behind the scenes; this may fix the problem.
+
+! Extra `endgroup'.
+<recently read> endgroup
+
+l.24 batchmode; ^~7,endgroup
+ pausing:=1; exitif p exitif bool...
+I'm not currently working on a `begingroup',
+so I had better not try to end anything.
+
+{pausing:=1}
+{exitif}
+{exitif}
+{pencircle}
+{endfor}
+! Extra `endfor'.
+l.24 ...ean pen pencircle endfor
+
+I'm not currently working on a for loop,
+so I had better not try to end anything.
+
+{scantokens}
+{begingroup}
+{message}
+{char(0)}
+{("^^@")&("watch this")}
+^^@watch this
+{-(1)}
+{char(-1)}
+{("pair p[],';")&("^^ff")}
+{endgroup}
+{pen(pen)}
+{boolean(true)}
+{true}
+! No loop is in progress.
+<to be read again>
+ pair
+<scantokens> pair
+ p[],';^^ff
+<to be read again>
+ path
+l.26 path
+ p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
+Why say `exitif' when there's nothing to exit from?
+
+>> p
+! Undefined condition will be treated as `false'.
+<to be read again>
+ pair
+<scantokens> pair
+ p[],';^^ff
+<to be read again>
+ path
+l.26 path
+ p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
+The expression shown above should have had a definite
+true-or-false value. I'm changing it to `false'.
+
+{false}
+! Missing `;' has been inserted.
+<to be read again>
+ pair
+<scantokens> pair
+ p[],';^^ff
+<to be read again>
+ path
+l.26 path
+ p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
+After `exitif <boolean exp>' I expect to see a semicolon.
+I shall pretend that one was there.
+
+{pair}
+! Text line contains an invalid character.
+<scantokens> pair p[],';^^ff
+
+<to be read again>
+ path
+l.26 path
+ p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
+A funny symbol that I can't read has just been input.
+Continue, and I'll forget that it ever happened.
+
+{path}
+{-(2)}
+{-(1)}
+{turningnumber((xpart ',ypart '))}
+Path at line 26, before choices:
+(1,-2){curl 1}
+ ..(2,-1)
+ ..(2.5,0.5)
+ ..(1,2)
+ ..{curl 1}(0,2.5)
+
+Path at line 26, after choices:
+(1,-2)..controls (1.37755,-1.71404) and (1.71404,-1.37755)
+ ..(2,-1)..controls (2.33353,-0.55965) and (2.59729,-0.04124)
+ ..(2.5,0.5)..controls (2.36812,1.23369) and (1.6712,1.65662)
+ ..(1,2)..controls (0.66821,2.16974) and (0.33485,2.33641)
+ ..(0,2.5)
+
+{(unknown path qw)=(path)}
+{numeric}
+! Enormous number has been reduced.
+l.27 ...[$] ]]=10000000000000000
+ ; "this string constant is in...
+I can't handle numbers bigger than 32767.99998;
+so I've changed your constant to that maximum amount.
+
+{(p[[ [-1] ]])=(32767.99998)}
+## p[[ [-1] ]]=32767.99998
+! Value is too large (32767.99998).
+l.27 ...$] ]]=10000000000000000;
+ "this string constant is inc...
+The equation I just processed has given some variable
+a value of 4096 or more. Continue and I'll try to cope
+with that big value; but it might be dangerous.
+(Set warningcheck:=0 to suppress this message.)
+
+! Incomplete string token has been flushed.
+l.27 ...g constant is incomplete
+
+Strings should finish on the same line as they began.
+I've deleted the partial string; you might want to
+insert another by typing, e.g., `I"new string"'.
+
+{string}
+! Declared variable conflicts with previous vardef.
+<to be read again>
+ ,
+l.28 string foo[]p,
+ p~if true:[];
+You can't use, e.g., `numeric foo[]' after `vardef foo'.
+Proceed, and I'll ignore the illegal redeclaration.
+
+{if}
+{true}
+{true}
+{boolean}
+{fi}
+{showvariable}
+boolean.boolean=unknown boolean
+! OK.
+l.29 ...n; showvariable boolean;
+
+
+{inner}
+{def}
+{outer}
+{picture}
+{pen}
+! Illegal suffix of declared variable will be flushed.
+<to be read again>
+ [
+<to be read again>
+ "a"
+l.31 pen p~[]~,q["a"
+ ,qq; p~1~=q=pencircle scaled mexp(-3016.5...
+Variables in declarations must consist entirely of
+names and collective subscripts, e.g., `x[]a'.
+Are you trying to use a reserved word in a variable name?
+I'm going to discard the junk I found here,
+up to the next comma or the end of the declaration.
+
+{pencircle}
+{-(3016.57654)}
+{mexp(-3016.57654)}
+{(pen)scaled(0)}
+{(unknown pen q)=(pen)}
+{(unknown pen p~1~)=(pen)}
+{transform}
+! Illegal suffix of declared variable will be flushed.
+<to be read again>
+ 0
+l.32 transform p,pp0
+ ; if p=p:qq=makepen((7,0)..cycle) xscaled...
+Variables in declarations must consist entirely of
+names and collective subscripts, e.g., `x[]a'.
+Explicit subscripts like `x15a' aren't permitted.
+I'm going to discard the junk I found here,
+up to the next comma or the end of the declaration.
+
+{if}
+{((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p))=((xpart p,ypart
+ p,xxpart p,xypart p,yxpart p,yypart p))}
+{true}
+Path at line 32, before choices:
+(7,0)
+ ..cycle
+
+Path at line 32, after choices:
+(7,0)..controls (7,0) and (7,0)
+ ..cycle
+
+{makepen(path)}
+{hex("1000")}
+! Number too large (4096).
+<to be read again>
+ ;
+l.32 ...cle) xscaled hex "1000";
+ show qq;fi
+I have trouble with numbers greater than 4095; watch out.
+(Set warningcheck:=0 to suppress this message.)
+
+{(pen)xscaled(4096)}
+{(unknown pen qq)=(pen)}
+{show}
+>> Pen at line 32:
+pencircle transformed (28672,0,0,0,0,0)
+
+! OK.
+l.32 ...aled hex "1000";show qq;
+ fi
+
+{fi}
+Path at line 33, before choices:
+(4,1)
+ ..(1,2)
+ ..(5,3)
+ ..(3,2)
+ ..(1,1)
+ ..(0,1)
+ ..(1,0)
+ ..cycle
+
+Path at line 33, after choices:
+(4,1)..controls (3.72015,2.36482) and (1.84834,1.36037)
+ ..(1,2)..controls (-5.16994,6.65202) and (8.52596,9.85889)
+ ..(5,3)..controls (4.6365,2.29291) and (3.69041,2.34465)
+ ..(3,2)..controls (2.30983,1.65547) and (1.78375,0.86862)
+ ..(1,1)..controls (0.63611,1.06099) and (0.23091,1.28844)
+ ..(0,1)..controls (-0.3216,0.5983) and (0.24828,0.12357)
+ ..(1,0)..controls (2.58165,-0.25998) and (4.23677,-0.15471)
+ ..cycle
+
+{makepen(path)}
+{qq:=pen}
+{show}
+>> Pen at line 33:
+(0,1)
+ .. (1,0)
+ .. (4,1)
+ .. (5,3)
+ .. (1,2)
+ .. cycle
+
+! OK.
+l.33 .....(1,0)..cycle);show qq;
+
+
+{vardef}
+! Missing parameter type; `expr' will be assumed.
+<to be read again>
+ )
+l.34 ...ext suffix a,b endtext()
+ )suffix@=show #@; p.a.b() end...
+You should've had `expr' or `suffix' or `text' here.
+
+{expandafter}
+{\}
+{let}
+
+\\->=show
+{outer}
+{((6,12))-((xpart p7,ypart p7))}
+{((0,1))transformed((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p
+))}
+{(x)-(x)}
+{(2)/(0)}
+>> 2
+! Division by zero.
+<to be read again>
+ ,
+l.36 ...)transformed p=(2/(x-x),
+ 3/0)transformed p;
+You're trying to divide the quantity shown above the error
+message by zero. I'm going to divide it by one instead.
+
+! Division by zero.
+l.36 ...ansformed p=(2/(x-x),3/0
+ )transformed p;
+I'll pretend that you meant to divide by 1.
+
+{((2,3))transformed((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p
+))}
+{((linearform,linearform))=((linearform,linearform))}
+## yxpart p=-yypart p
+## xxpart p=-xypart p
+{((-xpart p7+6,-ypart p7+12))=((linearform,linearform))}
+## ypart p7=-ypart p-yypart p+12
+## xpart p7=-xpart p-xypart p+6
+{\}
+{if}
+{string(unknown string p~[-1])}
+{true}
+{(p0.1 0.2)-(p0.1 0.2)}
+! The token `endtext' is no longer a right delimiter.
+l.37 ...1.2-p.1.199999,1 endtext
+ transformed p;
+Strange: This token has lost its former meaning!
+I'll read it as a right delimiter this time;
+but watch out, I'll probably miss it later.
+
+{((0,1))transformed((xpart p,ypart p,-xypart p,xypart p,-yypart p,yypart
+ p))}
+{((linearform,linearform))=((linearform,linearform))}
+## ypart p=-yypart p+6
+#### ypart p7=6
+## xpart p=-xypart p+3
+#### xpart p7=3
+{(unknown path p1 2p)=((3,6))}
+{showstopping:=0}
+{showvariable}
+p=(-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p)
+p[]=pair
+p[][]=numeric
+p[][]p=unknown path
+p[][]p~=macro:(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup ETC.
+p[]~=unknown boolean
+p~=path
+p~[]=unknown string
+p~[]~=unknown pen
+p~[]~[][]=unknown picture
+p~[-1]=unknown string p~[-1]
+p~1~=pen
+p[[ [] ]]=numeric
+p[[ [-1] ]]=32767.99998
+p0.1 0.2=p0.1 0.2
+p1 2p=path
+p7=(3,6)
+{((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))=((-xy
+part p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))}
+{let}
+{let}
+{xxpart((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))
+}
+{(-xypart p)+(0.002)}
+{yxpart((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))
+}
+{((xpart p2,ypart p2))-((xpart p1,ypart p1))}
+{(1)*((linearform,linearform))}
+{((xpart p1,ypart p1))+((linearform,linearform))}
+{(y)+(0.00002)}
+{yypart((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))
+}
+{xypart((-xypart p+3,-yypart p+6,-xypart p,xypart p,-yypart p,yypart p))
+}
+{((5,y))=((yypart p,xypart p))}
+## y=xypart p
+## yypart p=5
+#### ypart p=1
+#### yxpart p=-5
+{((5,xypart p+0.00002))=((5,xypart p))}
+{((xpart p2,ypart p2))=((5,xypart p))}
+## ypart p2=xypart p
+## xpart p2=5
+{((-xypart p+0.002,-5))=((5,xypart p))}
+## xypart p=-5
+#### ypart p2=-5
+#### y=-5
+#### xpart p=8
+#### xxpart p=5
+! Inconsistent equation (off by -0.002).
+<to be read again>
+ ;
+l.39 ...,y)=(yypart p,xypart p);
+
+The equation I just read contradicts what was said before.
+But don't worry; continue and I'll just ignore it.
+
+Path at line 40, before choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+ ..cycle
+
+Path at line 40, after choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)..controls (17.52783,8.54388) and (-15.45978,-4.12262)
+ ..cycle
+
+{reverse(path)}
+{(path)transformed((8,1,5,-5,-5,5))}
+{(path)=(unknown path p2 3p)}
+
+p1 2p~(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup.show(SUFFIX0);p(SUFF
+IX2)(SUFFIX3)((EXPR4)endgroup
+(SUFFIX0)<-p1 2p
+(SUFFIX1)<-~
+(SUFFIX2)<-
+(SUFFIX3)<-2 3p~
+! A primary expression can't begin with `right delimiter that matches ('
+.
+<inserted text>
+ 0
+<to be read again>
+ )
+l.41 ...000000001]2p~(,[2]3p~,-)
+ =p~1~2[pausing];
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+{-(0)}
+(EXPR4)<-0
+(SUFFIX5)<-
+{begingroup}
+{show}
+>> Path at line 41:
+(3,6)
+
+
+p2 3p~(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup.show(SUFFIX0);p(SUFF
+IX2)(SUFFIX3)((EXPR4)endgroup
+(SUFFIX0)<-p2 3p
+(SUFFIX1)<-~
+! Missing `,' has been inserted.
+<to be read again>
+ (0)
+p1 2p~->...IX2)(SUFFIX3)((EXPR4)
+ endgroup
+<to be read again>
+ =
+l.41 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I've finished reading a macro argument and am about to
+read another; the arguments weren't delimited correctly.
+You might want to delete some tokens before continuing.
+
+(SUFFIX2)<-
+! Missing `,' has been inserted.
+<to be read again>
+ (0)
+p1 2p~->...IX2)(SUFFIX3)((EXPR4)
+ endgroup
+<to be read again>
+ =
+l.41 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I've finished reading a macro argument and am about to
+read another; the arguments weren't delimited correctly.
+You might want to delete some tokens before continuing.
+
+(SUFFIX3)<-
+! Missing `)' has been inserted.
+<to be read again>
+ endgroup
+<to be read again>
+ =
+l.41 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I've gotten to the end of the macro parameter list.
+You might want to delete some tokens before continuing.
+
+(EXPR4)<-0
+(SUFFIX5)<-
+{begingroup}
+{show}
+>> Path at line 41:
+(8,1)..controls (-48.68579,57.68579) and (52.91974,-43.91974)
+ ..(28,-19)..controls (-7,16) and (63,-54)
+ ..cycle
+
+>> (8,1,5,-5,-5,5)
+! Isolated expression.
+<to be read again>
+ (
+p2 3p~->...;p(SUFFIX2)(SUFFIX3)(
+ (EXPR4)endgroup
+<to be read again>
+ endgroup
+<to be read again>
+ =
+l.41 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I couldn't find an `=' or `:=' after the
+expression that is shown above this error message,
+so I guess I'll just ignore it and carry on.
+
+! Extra tokens will be flushed.
+<to be read again>
+ (
+p2 3p~->...;p(SUFFIX2)(SUFFIX3)(
+ (EXPR4)endgroup
+<to be read again>
+ endgroup
+<to be read again>
+ =
+l.41 ...00000001]2p~(,[2]3p~,-)=
+ p~1~2[pausing];
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+{endgroup}
+{endgroup}
+{(vacuous)=(unknown picture p~1~2 1)}
+>> vacuous
+>> unknown picture p~1~2 1
+! Equation cannot be performed (vacuous=unknown picture).
+<to be read again>
+ ;
+l.41 ...2]3p~,-)=p~1~2[pausing];
+
+I'm sorry, but I don't know how to make such things equal.
+(See the two expressions just above the error message.)
+
+{vardef}
+Runaway definition?
+if.p(SUFFIX1)(SUFFIX1)=(SUFFIX1)(SUFFIX1)p.fi
+! Forbidden token found while scanning the definition of p~[].
+<inserted text>
+ enddef
+<to be read again>
+ ;
+l.42 ...iary t:=if p@ @=@ @p fi;
+ vardef p[][]p~[]=BAD; inner ;;
+I suspect you have forgotten an `enddef',
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{vardef}
+! This variable already starts with a macro.
+l.42 ...@p fi; vardef p[][]p~[]=
+ BAD; inner ;;
+After `vardef a' you can't say `vardef a.b'.
+So I'll have to discard this definition.
+
+Runaway definition?
+BAD
+! Forbidden token found while scanning the definition of a bad variable.
+<inserted text>
+ enddef
+<to be read again>
+ ;
+l.42 ...i; vardef p[][]p~[]=BAD;
+ inner ;;
+I suspect you have forgotten an `enddef',
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{inner}
+{show}
+{-(2)}
+
+p~[-2]@#<tertiary>->begingroup.if.p(SUFFIX1)(SUFFIX1)=(SUFFIX1)(SUFFIX1)
+p.fi.endgroup
+(SUFFIX0)<-p~
+(SUFFIX1)<-[-2]
+(SUFFIX2)<-~
+! A tertiary expression can't begin with `['.
+<inserted text>
+ 0
+<to be read again>
+ [
+<to be read again>
+ (3000)
+<to be read again>
+ ,
+l.43 show p~[-2]~[3000,
+ x]++4000>path p3; showvariable p,P;
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+{(x)-(3000)}
+{(0)*(x-3000)}
+{(3000)+(0)}
+{(3000)++(4000)}
+(EXPR3)<-4999.99998
+{begingroup}
+{if}
+{(p[-2][-2])=(-2)}
+>> p[-2][-2]+2
+! Unknown relation will be considered false.
+<to be read again>
+ [-2]
+p~[-2]->...1)=(SUFFIX1)(SUFFIX1)
+ p.fi.endgroup
+<to be read again>
+ >
+l.43 show p~[-2]~[3000,x]++4000>
+ path p3; showvariable p,P;
+Oh dear. I can't decide if the expression above is positive,
+negative, or zero. So this comparison test won't be `true'.
+
+{false}
+! Missing `:' has been inserted.
+<to be read again>
+ [-2]
+p~[-2]->...1)=(SUFFIX1)(SUFFIX1)
+ p.fi.endgroup
+<to be read again>
+ >
+l.43 show p~[-2]~[3000,x]++4000>
+ path p3; showvariable p,P;
+There should've been a colon after the condition.
+I shall pretend that one was there.
+
+{endgroup}
+{path((xpart p3,ypart p3))}
+{(vacuous)>(false)}
+>> vacuous
+>> false
+! Not implemented: (vacuous)>(boolean).
+<to be read again>
+ ;
+l.43 ...~[3000,x]++4000>path p3;
+ showvariable p,P;
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+>> false
+{showvariable}
+p=(8,1,5,-5,-5,5)
+p[]=pair
+p[][]=numeric
+p[][]p=unknown path
+p[][]p~=macro:(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup ETC.
+p[]~=unknown boolean
+p~=path
+p~[]@#=macro:<tertiary>->begingroup.if.p(SUFFIX1)(SUFFIX1) ETC.
+p[[ [] ]]=numeric
+p[[ [-1] ]]=32767.99998
+p[-2][-2]=p[-2][-2]
+p0.1 0.2=p0.1 0.2
+p1=(xpart p1,ypart p1)
+p1 2p=path
+p2=(5,-5)
+p2 3p=path
+p3=(xpart p3,ypart p3)
+p7=(3,6)
+> P=tag
+{numeric}
+{(2)*(alpha)}
+{(p3~)=(2alpha)}
+## alpha=0.5p3~
+{(1)/(-1)}
+{(3)*(beta)}
+{(p[-1]~)=(3beta)}
+## beta=0.33333p[-1]~
+{begingroup}
+{save}
+{showvariable}
+> p=tag
+{(3)*(0.33333(SAVED)p[-1]~)}
+{((SAVED)p[-1]~)=(1)}
+## (SAVED)p[-1]~=1
+#### beta=0.33333
+{restoring p}
+{endgroup}
+{showvariable}
+p=(8,1,5,-5,-5,5)
+p[]=pair
+p[][]=numeric
+p[][]p=unknown path
+p[][]p~=macro:(SUFFIX2)(SUFFIX3)(EXPR4)<suffix>->begingroup ETC.
+p[]~=numeric
+p~=path
+p~[]@#=macro:<tertiary>->begingroup.if.p(SUFFIX1)(SUFFIX1) ETC.
+p[[ [] ]]=numeric
+p[[ [-1] ]]=32767.99998
+p[-2][-2]=p[-2][-2]
+p[-1]~=1
+p0.1 0.2=p0.1 0.2
+p1=(xpart p1,ypart p1)
+p1 2p=path
+p2=(5,-5)
+p2 3p=path
+p3=(xpart p3,ypart p3)
+p3~=p3~
+p7=(3,6)
+{def}
+{def}
+! Missing `=' has been inserted.
+<to be read again>
+ false
+l.46 ...enddef;def!primary!false
+ ):!fi enddef;
+The next thing in this `def' should have been `=',
+because I've already looked at the definition heading.
+But don't worry; I'll pretend that an equals sign
+was present. Everything from here to `enddef'
+will be the replacement text of this macro.
+
+{def}
+{(path)scaled(-1)}
+Path at line 47, before choices:
+(1,-2)..controls (1.37755,-1.71404) and (1.71404,-1.37755)
+ ..(2,-1)..controls (2.33353,-0.55965) and (2.59729,-0.04124)
+ ..(2.5,0.5)..controls (2.36812,1.23369) and (1.6712,1.65662)
+ ..(1,2)..controls (0.66821,2.16974) and (0.33485,2.33641)
+ ..(0,2.5)
+ ..(-1,2)..controls (-1.37755,1.71404) and (-1.71404,1.37755)
+ ..(-2,1)..controls (-2.33353,0.55965) and (-2.59729,0.04124)
+ ..(-2.5,-0.5)..controls (-2.36812,-1.23369) and (-1.6712,-1.65662)
+ ..(-1,-2)..controls (-0.66821,-2.16974) and (-0.33485,-2.33641)
+ ..(0,-2.5)
+ ..cycle
+
+Path at line 47, after choices:
+(1,-2)..controls (1.37755,-1.71404) and (1.71404,-1.37755)
+ ..(2,-1)..controls (2.33353,-0.55965) and (2.59729,-0.04124)
+ ..(2.5,0.5)..controls (2.36812,1.23369) and (1.6712,1.65662)
+ ..(1,2)..controls (0.66821,2.16974) and (0.33485,2.33641)
+ ..(0,2.5)..controls (-0.37186,2.68167) and (-0.668,2.25146)
+ ..(-1,2)..controls (-1.37755,1.71404) and (-1.71404,1.37755)
+ ..(-2,1)..controls (-2.33353,0.55965) and (-2.59729,0.04124)
+ ..(-2.5,-0.5)..controls (-2.36812,-1.23369) and (-1.6712,-1.65662)
+ ..(-1,-2)..controls (-0.66821,-2.16974) and (-0.33485,-2.33641)
+ ..(0,-2.5)..controls (0.37186,-2.68167) and (0.668,-2.25146)
+ ..cycle
+
+{makepen(path)}
+{qq:=pen}
+{show}
+>> Pen at line 48:
+(-2.5,-0.5)
+ .. (-1,-2)
+ .. (0,-2.5)
+ .. (1,-2)
+ .. (2,-1)
+ .. (2.5,0.5)
+ .. (1,2)
+ .. (0,2.5)
+ .. (-1,2)
+ .. (-2,1)
+ .. cycle
+
+{primarydef}
+{secondarydef}
+
+//<expr>->
+
+//<expr>->
+{pencircle}
+{length(path)}
+{(pen)slanted(1)}
+{((3,6))-((5,-5))}
+
+_aa__<secondary>->if(true
+{(0.1)*(15)}
+{odd(1.50009)}
+{not(false)}
+{known((8,1,5,-5,-5,5))}
+{(true)and(true)}
+(EXPR0)<-true
+{if}
+{true}
+
+!<primary>->false):(EXPR0)fi
+(EXPR0)<-(5,-5)
+{false}
+{(true)or(false)}
+{true}
+{fi}
+{-((5,-5))}
+{-((5,-5))}
+{+(1)}
+{-(1)}
+>> -1
+! Improper curl has been replaced by 1.
+<to be read again>
+ )
+l.52 {curl- +1)
+ ..tension atleast1..cycle sqrt2++sqrt2***[[]];
+A curl must be a known, nonnegative number.
+
+! Missing `}' has been inserted.
+<to be read again>
+ )
+l.52 {curl- +1)
+ ..tension atleast1..cycle sqrt2++sqrt2***[[]];
+I've scanned a direction spec for part of a path,
+so a right brace should have come next.
+I shall pretend that one was there.
+
+Path at line 52, before choices:
+(-5,5)
+
+Path at line 52, after choices:
+(-5,5)
+
+Path at line 52, before choices:
+(3,6)..controls (5,-5) and (-5,5)
+ ..(-5,5)..tension atleast1
+ ..{2896.30943,-2896.30934}cycle
+
+Path at line 52, after choices:
+(3,6)..controls (5,-5) and (-5,5)
+ ..(-5,5)..controls (-3.29726,7.86205) and (0.64516,8.35484)
+ ..cycle
+
+! Missing `)' has been inserted.
+<to be read again>
+ sqrt
+l.52 ...ion atleast1..cycle sqrt
+ 2++sqrt2***[[]];
+I found no right delimiter to match a left one. So I've
+put one in, behind the scenes; this may fix the problem.
+
+{((-2,11))subpath(path)}
+{reverse(path)}
+{makepen(path)}
+
+**->[[show(EXPR0)*(EXPR1)]]
+(EXPR0)<-pen
+(EXPR1)<-pen
+{begingroup}
+{show}
+{(pen)*(pen)}
+>> pen
+>> pen
+! Not implemented: (pen)*(pen).
+<to be read again>
+ ]]
+<to be read again>
+ sqrt
+l.52 ...ion atleast1..cycle sqrt
+ 2++sqrt2***[[]];
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+>> Pen at line 52:
+(-5,5)
+ .. (3,6)
+ .. cycle
+
+{endgroup}
+(EXPR0)<-vacuous
+{sqrt(2)}
+{sqrt(2)}
+{(1.41422)++(1.41422)}
+{begingroup}
+{endgroup}
+
+***->expandafter(EXPR1)scantokens"**oct"(EXPR0)
+(EXPR0)<-2
+(EXPR1)<-vacuous
+{expandafter}
+{scantokens}
+{oct(2)}
+>> 2
+! Not implemented: oct(known numeric).
+<to be read again>
+ ;
+l.52 ...cle sqrt2++sqrt2***[[]];
+
+I'm afraid I don't know how to apply that operation to that
+particular type. Continue, and I'll simply return the
+argument (shown above) as the result of the operation.
+
+
+**->[[show(EXPR0)*(EXPR1)]]
+(EXPR0)<-vacuous
+(EXPR1)<-2
+{begingroup}
+{show}
+{(vacuous)*(2)}
+>> vacuous
+>> 2
+! Not implemented: (vacuous)*(known numeric).
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.52 ...cle sqrt2++sqrt2***[[]];
+
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+>> 2
+{endgroup}
+(EXPR0)<-vacuous
+{-(20.5)}
+{charcode:=-20.5}
+{-(2048)}
+{chardp:=-2048}
+{shipout}
+{nullpicture}
+! Enormous chardp has been reduced.
+<to be read again>
+ ;
+l.53 ...048;shipout nullpicture;
+
+Font metric dimensions must be less than 2048pt.
+
+[]
+Edge structure at line 53 (just shipped out):
+End edges
+
+{if}
+{-(275.50002)}
+{charexists(-275.50002)}
+{known(unknown path p0 0p)}
+{(true)>(false)}
+{known(path)}
+{(true)=(true)}
+{true}
+{randomseed}
+! Missing `:=' has been inserted.
+<to be read again>
+ charcode
+l.54 ... p~: randomseed charcode
+ ; fi
+Always say `randomseed:=<numeric expression>'.
+
+{randomseed:=-20.5}
+{fi}
+{randomseed}
+>> "goof"
+! Unknown value will be ignored.
+<to be read again>
+ ;
+l.55 randomseed:="goof";
+ a[($,18++1+-+18),(2,3)]=b[(3,2),(1,$);
+Your expression was too random for me to handle,
+so I won't change the random seed just now.
+
+{(18)++(1)}
+{(18.02776)+-+(18)}
+{((2,3))-((-1,1))}
+{(a)*((3,2))}
+{((-1,1))+((3a,2a))}
+! Missing `]' has been inserted.
+<to be read again>
+ ;
+l.55 ...8),(2,3)]=b[(3,2),(1,$);
+
+I've scanned an expression of the form `a[b,c',
+so a right bracket should have come next.
+I shall pretend that one was there.
+
+{((1,-1))-((3,2))}
+{(b)*((-2,-3))}
+{((3,2))+((-2b,-3b))}
+{((3a-1,2a+1))=((-2b+3,-3b+2))}
+## b=-0.66667a+0.33333
+## a=2
+#### b=-1
+{show}
+{(^)+(1)}
+{(~)+(2)}
+{-(1)}
+{((^+1,~+2))slanted(-1)}
+{-(2)}
+{((linearform,~+2))yscaled(-2)}
+{-((3,4))}
+{((linearform,-2~-4))zscaled((-3,-4))}
+>> (-5~-3^-13,10~-4^+16)
+{((xpart pp,ypart pp,xxpart pp,xypart pp,yxpart pp,yypart pp))xscaled(9)
+}
+{((8,1,5,-5,-5,5))transformed((9xpart pp,ypart pp,9xxpart pp,9xypart pp,
+yxpart pp,yypart pp))}
+>> (9xpart pp+72xxpart pp+9xypart pp,ypart pp+8yxpart pp+yypart pp,45xxp
+art pp-45xypart pp,-45xxpart pp+45xypart pp,5yxpart pp-5yypart pp,-5yxpa
+rt pp+5yypart pp)
+{((xpart pp,ypart pp,xxpart pp,xypart pp,yxpart pp,yypart pp))shifted((1
+,2))}
+{((8,1,5,-5,-5,5))transformed((8,1,5,-5,-5,5))}
+{((xpart pp+1,ypart pp+2,xxpart pp,xypart pp,yxpart pp,yypart pp))transf
+ormed((43,-34,50,-50,-50,50))}
+>> (50xpart pp-50ypart pp-7,-50xpart pp+50ypart pp+16,50xxpart pp-50yxpa
+rt pp,50xypart pp-50yypart pp,-50xxpart pp+50yxpart pp,-50xypart pp+50yy
+part pp)
+{(2)-(1)}
+{(_0)*(1)}
+{(1)+(_0)}
+{-(_0+1)}
+>> -_0-1
+{show}
+{normaldeviate}
+{-(-2048)}
+{uniformdeviate(2048)}
+{angle((-0.41438,761.67789))}
+{cosd(90.03117)}
+{(200)*(-0.00055)}
+{mexp(-0.10986)}
+{sqrt(0.99957)}
+{mlog(0.99979)}
+{sind(-0.05469)}
+{floor(-0.00096)}
+>> -1
+{string}
+{(unknown string s2)=(unknown string s4)}
+{(unknown string s1)=(unknown string s2)}
+{(unknown string s3)=(unknown string s5)}
+{(unknown string s2)=(unknown string s4)}
+! Redundant equation.
+<to be read again>
+ ;
+l.59 ... s1=s2=s4; s3=s5; s1=s2;
+ if s1<=s4<>(s1<>s3):show[[ch...
+I already knew that this equation was true.
+But perhaps no harm has been done; let's continue.
+
+{if}
+{(unknown string s2)<=(unknown string s1)}
+{(unknown string s2)<>(unknown string s5)}
+>> unknown string s2
+>> unknown string s5
+! Unknown relation will be considered false.
+<to be read again>
+ )
+l.59 ...=s2; if s1<=s4<>(s1<>s3)
+ :show[[char34=s2:=s3]]fi;
+The quantities shown above have not been equated.
+
+{(true)<>(false)}
+{true}
+{show}
+{begingroup}
+{char(34)}
+{s2:=unknown string s5}
+{(""")=(unknown string s2)}
+{endgroup}
+{fi}
+>> vacuous
+{(0.1)point(path)}
+{begingroup}
+{pencircle}
+{endgroup}
+{((3.24413,0.64801))penoffset(pen)}
+{((0.09795,-0.49031))rotated(540)}
+{((-0.09795,0.49031))/(0.33333)}
+{-(1.5)}
+! Paths don't touch; `&' will be changed to `..'.
+<to be read again>
+ )
+l.61 ...tcontrol-1.5of(p~&cycle)
+ -precontrol1/2of p~(p~)=s1:=s...
+When you join paths `p&q', the ending point of p
+must be exactly equal to the starting point of q.
+So I'm going to pretend that you said `p..q' instead.
+
+Path at line 61, before choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+ ..cycle
+
+Path at line 61, after choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)..controls (17.52783,8.54388) and (-15.45978,-4.12262)
+ ..cycle
+
+{(-1.5)postcontrol(path)}
+{(0.5)precontrol(path)}
+{((-2.75,-5))-((3.75,-1))}
+! Missing `of' has been inserted for directiontime.
+<to be read again>
+ (
+l.61 ...cle)-precontrol1/2of p~(
+ p~)=s1:=s4:=s4;
+I've got the first argument; will look now for the other.
+
+{((-6.5,-4))directiontime(path)}
+{decimal(0.5)}
+{((-0.29384,1.47095))substring("0.5")}
+{s4:=unknown string s1}
+{s1:=unknown string s4}
+{("0")=(unknown string s1)}
+{path}
+{length(" ")}
+! Missing `,' has been inserted.
+<to be read again>
+ }
+l.62 ...p~[]; p~1=p2{length" "}
+ &cycle; p~1=p2=p~0; p2..contr...
+I've got the x coordinate of a path direction;
+will look for the y coordinate next.
+
+! An expression can't begin with `}'.
+<inserted text>
+ 0
+<to be read again>
+ }
+l.62 ...p~[]; p~1=p2{length" "}
+ &cycle; p~1=p2=p~0; p2..contr...
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+Path at line 62, before choices:
+(5,-5){4096,0}
+ ..{4096,0}cycle
+
+Path at line 62, after choices:
+(5,-5)..controls (5,-5) and (5,-5)
+ ..cycle
+
+{(unknown path p~1)=(path)}
+{((5,-5))=(unknown path p~0)}
+{(path)=(path)}
+! Redundant or inconsistent equation.
+<to be read again>
+ ;
+l.62 ..." "}&cycle; p~1=p2=p~0;
+ p2..controls-p2..cycle=p~2;(p7
+An equation between already-known quantities can't help.
+But don't worry; continue and I'll just ignore it.
+
+{-((5,-5))}
+Path at line 62, before choices:
+(5,-5)..controls (-5,5) and (-5,5)
+ ..cycle
+
+Path at line 62, after choices:
+(5,-5)..controls (-5,5) and (-5,5)
+ ..cycle
+
+{(path)=(unknown path p~2)}
+{length(path)}
+Path at line 63, before choices:
+(3,6)..tension 1.2
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)
+ ..(5,-5)..controls (-5,5) and (-5,5)
+ ..(5,-5){0,4096}..tension 1 and atleast1
+ ..cycle
+
+Path at line 63, after choices:
+(3,6)..controls (-3.01212,4.82085) and (-1.0424,-6.01257)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (-5,5) and (-5,5)
+ ..(5,-5)..controls (5,0.02791) and (4.99951,6.39217)
+ ..cycle
+
+>> x
+! Improper tension has been set to 1.
+<to be read again>
+ ..
+l.64 x..
+ {curl1}-p7{curl hex "IsBad"}..tension.75and.74999..p...
+The expression above should have been a number >=3/4.
+
+{-((3,6))}
+{hex("IsBad")}
+>> "IsBad"
+! String contains illegal digits.
+<to be read again>
+ }
+l.64 ...l1}-p7{curl hex "IsBad"}
+ ..tension.75and.74999..p2{0,1...
+I zeroed out characters that weren't hex digits.
+
+>> 0.74998
+! Improper tension has been set to 1.
+<to be read again>
+ ..
+l.64 ...}..tension.75and.74999..
+ p2{0,1}&p2{_,'}..cycle:=p
+The expression above should have been a number >=3/4.
+
+>> _
+! Undefined x coordinate has been replaced by 0.
+<to be read again>
+ ,
+l.64 ...and.74999..p2{0,1}&p2{_,
+ '}..cycle:=p
+I need a `known' x value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+>> (xpart ',ypart ')
+! Undefined y coordinate has been replaced by 0.
+<to be read again>
+ }
+l.64 ...d.74999..p2{0,1}&p2{_,'}
+ ..cycle:=p
+I need a `known' y value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+Path at line 64, before choices:
+(3,6)..controls (-3.01212,4.82085) and (-1.0424,-6.01257)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (-5,5) and (-5,5)
+ ..(5,-5)..controls (5,0.02791) and (4.99951,6.39217)
+ ..(3,6)
+ ..{curl 1}(-3,-6){curl 2989}..tension 0.75 and 1
+ ..{0,4096}(5,-5){curl 1}
+ ..cycle
+
+Path at line 64, after choices:
+(3,6)..controls (-3.01212,4.82085) and (-1.0424,-6.01257)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (5,-5) and (5,-5)
+ ..(5,-5)..controls (-5,5) and (-5,5)
+ ..(5,-5)..controls (5,0.02791) and (4.99951,6.39217)
+ ..(3,6)..controls (-2.44821,4.93144) and (-5.41408,-1.00029)
+ ..(-3,-6)..controls (-3.70045,-12.19485) and (5,-11.61679)
+ ..(5,-5)..controls (12.45406,-3.75087) and (10.41669,7.45464)
+ ..cycle
+
+>> path
+! Improper `:=' will be changed to `='.
+l.64 ...p2{0,1}&p2{_,'}..cycle:=
+ p
+I didn't find a variable name at the left of the `:=',
+so I'm going to pretend that you said `=' instead.
+
+{(path)=(unknown path p~4)}
+{-(9)}
+{((3.5001,7.00002))subpath(path)}
+{((-9,9))subpath(path)}
+{(path)=(unknown path p~6)}
+{show}
+>> Path at line 66:
+(-2.5,2.5)..controls (-2.49893,2.49893) and (0.00107,-0.00107)
+ ..(5,-5)..controls (5,0.02791) and (4.99951,6.39217)
+ ..(3,6)..controls (-2.44821,4.93144) and (-5.41408,-1.00029)
+ ..(-3,-6)..controls (-3.70045,-12.19485) and (5,-11.61679)
+ ..(5,-5)..controls (5.0001,-4.99998) and (5.00021,-4.99997)
+ ..(5.00032,-4.99995)
+
+{((1,2))directiontime(path)}
+>> 1
+{-(1.00002)}
+{((1,-1.00002))directiontime(path)}
+>> 3.24937
+Path at line 67, before choices:
+(0,0)..controls (1,1) and (0,1)
+ ..(1,0)
+
+Path at line 67, after choices:
+(0,0)..controls (1,1) and (0,1)
+ ..(1,0)
+
+{(unknown path p~3)=(path)}
+{show}
+Path at line 67, before choices:
+(5,-5){-2896.30943,-2896.30934}
+ ..{1831.78674,3663.57385}cycle
+
+Path at line 67, after choices:
+(5,-5)..controls (5,-5) and (5,-5)
+ ..cycle
+
+>> Path at line 67:
+(5,-5)..controls (5,-5) and (5,-5)
+ ..cycle
+
+{((0.31416,1))subpath(path)}
+{((1,1))directiontime(path)}
+{(1)-(0.31416)}
+{(0.27097)*(0.68584)}
+{(0.31416)+(0.18584)}
+>> 0.5
+{((0,0.25))subpath(path)}
+{((0.25,1))subpath(path)}
+Path at line 69, before choices:
+(0,0)..controls (0.25,0.25) and (0.375,0.4375)
+ ..(0.4375,0.5625)..controls (0.625,0.9375) and (0.25,0.75)
+ ..(1,0)
+
+Path at line 69, after choices:
+(0,0)..controls (0.25,0.25) and (0.375,0.4375)
+ ..(0.4375,0.5625)..controls (0.625,0.9375) and (0.25,0.75)
+ ..(1,0)
+
+! Missing `endtext' has been inserted.
+<to be read again>
+ ;
+l.69 ...~3)shifted begintext1,0;
+
+I found no right delimiter to match a left one. So I've
+put one in, behind the scenes; this may fix the problem.
+
+{(path)shifted((1,0))}
+{(unknown path p~5)=(path)}
+{(2/3)*((xpart ',ypart '))}
+{((0.66667xpart ',0.66667ypart '))zscaled((xpart ',ypart '))}
+>> (0,0,xpart ',-ypart ',ypart ',xpart ')
+! Transform components aren't all known.
+<to be read again>
+ {
+l.70 p~3:=2/3'zscaled'{
+ p~3}..controls(2,2/3(3))and penoffset(...
+I'm unable to apply a partially specified transformation
+except to a fully known pair or transform.
+Proceed, and I'll omit the transformation.
+
+>> 0.66667xpart '
+! Undefined x coordinate has been replaced by 0.
+<to be read again>
+ {
+l.70 p~3:=2/3'zscaled'{
+ p~3}..controls(2,2/3(3))and penoffset(...
+I need a `known' x value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+>> 0.66667ypart '
+! Undefined y coordinate has been replaced by 0.
+<to be read again>
+ {
+l.70 p~3:=2/3'zscaled'{
+ p~3}..controls(2,2/3(3))and penoffset(...
+I need a `known' y value for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+>> path
+! Undefined coordinates have been replaced by (0,0).
+<to be read again>
+ }
+l.70 p~3:=2/3'zscaled'{p~3}
+ ..controls(2,2/3(3))and penoffset(...
+I need x and y numbers for this part of the path.
+The value I found (see above) was no good;
+so I'll try to keep going by using zero instead.
+(Chapter 27 of The METAFONTbook explains that
+you might want to type `I ???' now.)
+
+{(2/3)*(3)}
+{(1/2)*(x)}
+{((0.5x,-5))penoffset((0,1))}
+>> (0.5x,-5)
+>> (0,1)
+! Not implemented: penoffset(unknown pair)of(pair).
+<to be read again>
+ (
+l.70 ...enoffset(1/2x,y)of(0,1)(
+ 1,0);
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+! Missing `..' has been inserted.
+<to be read again>
+ (
+l.70 ...enoffset(1/2x,y)of(0,1)(
+ 1,0);
+A path join command should end with two dots.
+
+Path at line 70, before choices:
+(0,0)..controls (2,2) and (0,1)
+ ..(1,0)
+
+Path at line 70, after choices:
+(0,0)..controls (2,2) and (0,1)
+ ..(1,0)
+
+{p~3:=path}
+{show}
+{reverse(path)}
+{(path)intersectiontimes(path)}
+>> (0.17227,0.28339)
+{(0.17227)point(path)}
+>> (0.71329,0.78188)
+{(1)-(0.28339)}
+{(0.71661)point(path)}
+>> (0.7133,0.78189)
+{show}
+{(path)shifted((0.01,0))}
+{(path)intersectiontimes(path)}
+{xpart((1.47693,1.18973))}
+{(1.47693)point(path)}
+{(path)shifted((0.01,0))}
+{(path)intersectiontimes(path)}
+{ypart((1.47693,1.18973))}
+{(1.18973)point(path)}
+{((1.50499,0.71521))-((1.495,0.71521))}
+>> (0.01,0)
+{begingroup}
+{-(1)}
+{-(1.00002)}
+{(-1)+-+(-1.00002)}
+! Pythagorean subtraction 1+-+1.00002 has been replaced by 0.
+l.74 [[ e[-1+-+ -1.00001]
+ =nullpicture; addto e1 also[[
+Since I don't take square roots of negative numbers,
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{nullpicture}
+{(unknown picture e0)=(picture)}
+{addto}
+{begingroup}
+{addto}
+{(path)scaled(3)}
+{(unknown picture e1)=(unknown picture e2)}
+{(picture)=(unknown picture e1)}
+{nullpicture}
+{endgroup}
+{show}
+>> Edge structure at line 76:
+Filled pen stroke :
+(3,0)..controls (3.75,0.75) and (4.125,1.3125)
+ ..(4.3125,1.6875)..controls (4.875,2.8125) and (3.75,2.25)
+ ..(6,0)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+End edges
+
+{-(3)}
+{(picture)shifted((-3,0))}
+>> Edge structure at line 76:
+Filled pen stroke :
+(0,0)..controls (0.75,0.75) and (1.125,1.3125)
+ ..(1.3125,1.6875)..controls (1.875,2.8125) and (0.75,2.25)
+ ..(3,0)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+End edges
+
+{endgroup}
+{addto}
+{-(2)}
+{(picture)shifted((-2,-1))}
+{-(4)}
+{(picture)shifted((-4,-1))}
+{e1:=picture}
+{addto}
+{turningnumber(path)}
+{oct("180")}
+>> "180"
+! String contains illegal digits.
+<to be read again>
+ ++
+l.79 ...en qq xscaled(oct"180"++
+ 1) rotated-angle(64,$) shifte...
+I zeroed out characters that weren't in the range 0..7.
+
+{(64)++(1)}
+{(pen)xscaled(64.00781)}
+{angle((64,-1))}
+{-(-0.89517)}
+{(pen)rotated(0.89517)}
+{(pen)shifted((9,8))}
+{show}
+>> Edge structure at line 80:
+Filled pen stroke :
+(-1,-1)..controls (-0.25,-0.25) and (0.125,0.3125)
+ ..(0.3125,0.6875)..controls (0.875,1.8125) and (-0.25,1.25)
+ ..(2,-1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+Filled pen stroke :
+(-3,-2)..controls (-2.25,-1.25) and (-1.875,-0.6875)
+ ..(-1.6875,-0.3125)..controls (-1.125,0.8125) and (-2.25,0.25)
+ ..(0,-2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+Filled pen stroke colored (0.4,1,0):
+(0,9)
+butt ends, mitered joins limited 1 with pen
+(-150.99219,4.99976)
+ .. (-54.96875,5.00012)
+ .. (9.03906,5.5003)
+ .. (73.03125,7.00037)
+ .. (137.01563,9.00037)
+ .. (168.99219,11.00024)
+ .. (72.96875,10.99988)
+ .. (8.96094,10.4997)
+ .. (-55.03125,8.99963)
+ .. (-119.01563,6.99963)
+ .. cycle
+End edges
+
+{charcode:=5}
+{chardp:=5}
+{-(1.5)}
+{xoffset:=-1.5}
+## xoffset=-1.5
+{shipout}
+[5
+Envelope spec at line 80:
+(0,9) % beginning with offset (-150.99219,4.99976)
+ ..controls (0,9) and (0,9)
+ ..(0,9) % counterclockwise to offset (-150.99219,4.99976)
+ & cycle
+
+]
+Edge structure at line 80 (just shipped out):
+Filled pen stroke :
+(-1,-1)..controls (-0.25,-0.25) and (0.125,0.3125)
+ ..(0.3125,0.6875)..controls (0.875,1.8125) and (-0.25,1.25)
+ ..(2,-1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+Filled pen stroke :
+(-3,-2)..controls (-2.25,-1.25) and (-1.875,-0.6875)
+ ..(-1.6875,-0.3125)..controls (-1.125,0.8125) and (-2.25,0.25)
+ ..(0,-2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+Filled pen stroke colored (0.4,1,0):
+(0,9)
+butt ends, mitered joins limited 1 with pen
+(-150.99219,4.99976)
+ .. (-54.96875,5.00012)
+ .. (9.03906,5.5003)
+ .. (73.03125,7.00037)
+ .. (137.01563,9.00037)
+ .. (168.99219,11.00024)
+ .. (72.96875,10.99988)
+ .. (8.96094,10.4997)
+ .. (-55.03125,8.99963)
+ .. (-119.01563,6.99963)
+ .. cycle
+End edges
+
+{nullpicture}
+{(unknown picture e3)=(picture)}
+{showstats}
+Memory usage 1178&115 (2344 still untouched)
+String usage 22&84 (1244&9177 now untouched)
+{addto}
+Path at line 81, before choices:
+(0.5,0){curl 1}
+ ..{curl 1}(3.5,1.5)
+
+Path at line 81, after choices:
+(0.5,0)..controls (1.5,0.5) and (2.5,1)
+ ..(3.5,1.5)
+
+Path at line 82, before choices:
+(1,1)
+ ..cycle
+
+Path at line 82, after choices:
+(1,1)..controls (1,1) and (1,1)
+ ..cycle
+
+{makepen(path)}
+{(pen)yscaled(1.5)}
+{q:=pen}
+{-(14.5)}
+{charext:=-14.5}
+{chardp:=-14.5}
+{chardx:=-14.5}
+## chardx=-14.5
+{charcode:=6}
+{shipout}
+[6]
+Edge structure at line 83 (just shipped out):
+Filled pen stroke :
+(3,0)..controls (3.75,0.75) and (4.125,1.3125)
+ ..(4.3125,1.6875)..controls (4.875,2.8125) and (3.75,2.25)
+ ..(6,0)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+End edges
+
+Path at line 84, before choices:
+(0,0){curl 1}
+ ..(1,0.5)
+ ..(5,1.5)
+ ..(7,2.5)
+ ..(12,3.5)
+ ..{curl 1}(13,4)
+
+Path at line 84, after choices:
+(0,0)..controls (0.3153,0.20053) and (0.6504,0.36807)
+ ..(1,0.5)..controls (2.29114,0.98723) and (3.72412,0.97192)
+ ..(5,1.5)..controls (5.68967,1.78545) and (6.30771,2.22081)
+ ..(7,2.5)..controls (8.58867,3.1407) and (10.3946,2.90645)
+ ..(12,3.5)..controls (12.3506,3.62962) and (12.68594,3.7973)
+ ..(13,4)
+
+{(unknown path p~9)=(path)}
+{addto}
+{addto}
+! A primary expression can't begin with `doublepath'.
+<inserted text>
+ 0
+<to be read again>
+ doublepath
+l.85 addto doublepath
+ (-4095,0)..tension
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+>> 0
+! Not a suitable variable.
+<to be read again>
+ doublepath
+l.85 addto doublepath
+ (-4095,0)..tension
+At this point I needed to see the name of a picture variable.
+(Or perhaps you have indeed presented me with one; I might
+have missed it, if it wasn't followed by the proper token.)
+So I'll not change anything just now.
+
+! Extra tokens will be flushed.
+<to be read again>
+ doublepath
+l.85 addto doublepath
+ (-4095,0)..tension
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+{show}
+{-(90)}
+{(picture)rotated(-90)}
+>> Edge structure at line 86:
+Filled pen stroke :
+(0,-0.5)..controls (0.5,-1.5) and (1,-2.5)
+ ..(1.5,-3.5)
+dashed (on 3 off 0) shifted 0
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+Filled pen stroke :
+(0,0)..controls (0.20053,-0.3153) and (0.36807,-0.6504)
+ ..(0.5,-1)..controls (0.98723,-2.29114) and (0.97192,-3.72412)
+ ..(1.5,-5)..controls (1.78545,-5.68967) and (2.22081,-6.30771)
+ ..(2.5,-7)..controls (3.1407,-8.58867) and (2.90645,-10.3946)
+ ..(3.5,-12)..controls (3.62962,-12.3506) and (3.7973,-12.68594)
+ ..(4,-13)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+End edges
+
+{if}
+{if}
+{elseif}
+! Missing `:' has been inserted.
+<inserted text>
+ :
+<to be read again>
+ elseif
+l.87 if "a" if "ab">"b" elseif
+ path reverse (3,4): >="aa":foo...
+
+{("ab")>("b")}
+{false}
+{reverse((3,4))}
+{path(path)}
+{true}
+{("a")>=("aa")}
+{false}
+{if}
+{((xpart ',ypart '))-((1,yy))}
+{((xpart '-1,linearform))<((xpart ',ypart '))}
+{true}
+{fi}
+{else}
+! Extra else.
+l.88 ... if '-(1,yy)<': :fi else
+ def dup text t=[[t;save endd...
+I'm ignoring this; it doesn't match any if.
+
+{def}
+{def}
+{def}
+
+||<tertiary>->show.substring(EXPR0)of("a"
+(EXPR0)<-(2,-1)
+{show}
+{("a")&("bc")}
+{((2,-1))substring("abc")}
+>> "ba"
+{tertiarydef}
+{def}
+{show}
+{((23.3,4.5))subpath(path)}
+Path at line 95, before choices:
+(0,0){curl 2}
+ ..(13,4)..controls (12.84297,3.89865) and (12.68063,3.80606)
+ ..(12.51372,3.72261){curl 3}
+ ..{curl 4}(-1,-1){curl 4}
+ ..{curl 2}cycle
+
+Path at line 95, after choices:
+(0,0)..controls (-40.15552,-36.7088) and (58.71173,33.50317)
+ ..(13,4)..controls (12.84297,3.89865) and (12.68063,3.80606)
+ ..(12.51372,3.72261)..controls (8.00914,2.1484) and (3.50458,0.5742)
+ ..(-1,-1)..controls (-0.66667,-0.66667) and (-0.33333,-0.33333)
+ ..cycle
+
+>> Path at line 95:
+(0,0)..controls (-40.15552,-36.7088) and (58.71173,33.50317)
+ ..(13,4)..controls (12.84297,3.89865) and (12.68063,3.80606)
+ ..(12.51372,3.72261)..controls (8.00914,2.1484) and (3.50458,0.5742)
+ ..(-1,-1)..controls (-0.66667,-0.66667) and (-0.33333,-0.33333)
+ ..cycle
+
+{(2)+(3)}
+
+++->[[dup.showtoken(EXPR0);]];def.x.expr.z.of(EXPR1)=z.enddef;texts(x=((
+EXPR1)+0)(EXPR1)+(EXPR1))("xx",foo((EXPR0)))=0]]
+(EXPR0)<-path
+(EXPR1)<-5
+{begingroup}
+
+dup<text>->[[(TEXT0);save
+(TEXT0)<-showtoken(path)
+{begingroup}
+{showtoken}
+> (path)
+{save}
+{restoring ;}
+{endgroup}
+{def}
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+++->...]];def.x.expr.z.of(EXPR1)
+ =z.enddef;texts(x=((EXPR1)+0)...
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+Sorry: You can't redefine a number, string, or expr.
+I've inserted an inaccessible symbol so that your
+definition will be completed without mixing me up too badly.
+
+
+texts(TEXT0)(TEXT1)<expr>->for.n:=,for.n"yy":n,length.if.false:endfor(TE
+XT1),(TEXT0),:if.string.n:forsuffixes.n=foo1,[foo(n)],':show(TEXT0),(TEX
+T1)|(n;exitif.not('<='+((EXPR2),yy))endfor.for.m= :+endfor.for.m=alpha.s
+tep-1.1 3$:+m.endfor.fi.endfor
+(TEXT0)<-x=((5)+0)(5)+(5)
+(TEXT1)<-"xx",foo((path))
+(EXPR2)<-0
+{for}
+{for}
+! Missing `=' has been inserted.
+<to be read again>
+ "yy"
+texts->for.n:=,for.n"yy"
+ :n,length.if.false:endfor(TEXT1),(TEX...
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+The next thing in this loop should have been `=' or `:='.
+But don't worry; I'll pretend that an equals sign
+was present, and I'll look for the values next.
+
+{loop value="yy"}
+{if}
+{false}
+{false}
+! Incomplete if; all text was ignored after line 95.
+<inserted text>
+ fi
+<to be read again>
+ ENDFOR
+<for("yy")> ....if.false: ENDFOR
+
+texts->...length.if.false:endfor
+ (TEXT1),(TEXT0),:if.string.n:...
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+A forbidden `outer' token occurred in skipped text.
+This kind of error happens when you say `if...' and forget
+the matching `fi'. I've inserted a `fi'; this might work.
+
+{[repeat the loop]}
+{length("xx")}
+
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+(TEXT2)<-(path)
+{begingroup}
+{endgroup}
+
+x<expr>of<primary>->(EXPR0)
+{(5)+(0)}
+(EXPR0)<-5
+! Missing `of' has been inserted for x.
+<to be read again>
+ (5)
+<argument> x=((5)+0)(5)
+ +(5)
+texts->...:endfor(TEXT1),(TEXT0)
+ ,:if.string.n:forsuffixes.n=f...
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+I've got the first argument; will look now for the other.
+
+(EXPR1)<-5
+{(5)+(5)}
+{loop value="yy"}
+{if}
+{string("yy")}
+{true}
+{forsuffixes}
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+<for("yy")> ...orsuffixes(EXPR0)
+ =foo1,[foo((EXPR0))],':show.x...
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+Sorry: You can't redefine a number, string, or expr.
+I've inserted an inaccessible symbol so that your
+definition will be completed without mixing me up too badly.
+
+
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+(TEXT2)<-("yy")
+{begingroup}
+{endgroup}
+>> "yy"
+! Improper subscript has been replaced by zero.
+<for("yy")> ...o1,[foo((EXPR0))]
+ ,':show.x=((5)+0)(5)+(5),"xx"...
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+A bracketed subscript must have a known numeric value;
+unfortunately, what I found was the value that appears just
+above this error message. So I'll try a zero subscript.
+
+{loop value=foo1}
+{show}
+
+x<expr>of<primary>->(EXPR0)
+{(5)+(0)}
+(EXPR0)<-5
+! Missing `of' has been inserted for x.
+<to be read again>
+ (5)
+<for(foo1)> show.x=((5)+0)(5)
+ +(5),"xx",foo((path))|(("yy");ex...
+<for("yy")> ...'+((0),yy))endfor
+ .for.m= :+endfor.for.m=alpha....
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+I've got the first argument; will look now for the other.
+
+(EXPR1)<-5
+{(5)+(5)}
+>> 10
+>> "xx"
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+(TEXT2)<-(path)
+{begingroup}
+{endgroup}
+
+|<suffix>->,(SUFFIX0)
+! Missing `)' has been inserted.
+<to be read again>
+ ("yy")
+<for(foo1)> ...o((path))|(("yy")
+ ;exitif.not('<='+((0),yy)) EN...
+<for("yy")> ...'+((0),yy))endfor
+ .for.m= :+endfor.for.m=alpha....
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+I've gotten to the end of the macro parameter list.
+You might want to delete some tokens before continuing.
+
+(SUFFIX0)<-
+>> Path at line 95:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+
+>> "yy"
+{exitif}
+{((xpart ',ypart '))+((0,yy))}
+{((xpart ',ypart '))<=((xpart ',linearform))}
+>> -yy
+! Unknown relation will be considered false.
+<to be read again>
+ )
+<for(foo1)> ...ot('<='+((0),yy))
+ ENDFOR
+<for("yy")> ...'+((0),yy))endfor
+ .for.m= :+endfor.for.m=alpha....
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+Oh dear. I can't decide if the expression above is positive,
+negative, or zero. So this comparison test won't be `true'.
+
+{[repeat the loop]}
+{loop value=0}
+{not(false)}
+{true}
+{for}
+{for}
+>> 0.5p3~
+! Improper initial value has been replaced by 0.
+<to be read again>
+ step
+<for("yy")> ....for.m=alpha.step
+ -1.1 3$:+m.endfor.fi ENDFOR
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+When you say `for x=a step b until c',
+the initial value `a' and the step size `b'
+and the final value `c' must have known numeric values.
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{-(1.1)}
+! Missing `until' has been inserted.
+<to be read again>
+ 3
+<for("yy")> ...=alpha.step-1.1 3
+ $:+m.endfor.fi ENDFOR
+texts->...3$:+m.endfor.fi.endfor
+
+<to be read again>
+ ]]
+<to be read again>
+ ;
+l.95 ...rl4}..cycle;zzz=p~++2+3;
+ [[
+I assume you meant to say `until' after `step'.
+So I'll look for the final value and colon next.
+
+{(3)*(-1)}
+{loop value=0}
+{[repeat the loop]}
+{loop value=-1.1}
+{+(0)}
+{[repeat the loop]}
+{loop value=-2.20001}
+{(0)+(-1.1)}
+{[repeat the loop]}
+{fi}
+{[repeat the loop]}
+{loop value=2}
+{if}
+{string(2)}
+{false}
+{[repeat the loop]}
+{loop value=path}
+{if}
+{string(path)}
+{false}
+{[repeat the loop]}
+{loop value=10}
+{if}
+{string(10)}
+{false}
+{[repeat the loop]}
+{(-1.1)+(-2.20001)}
+{endgroup}
+{(zzz)=(-3.30002)}
+## zzz=-3.30002
+{begingroup}
+{let}
+{save}
+{def}
+{def}
+
+texts->input
+{input}
+(trap.mp
+if->endinput?
+{endinput}
+{if}
+{known(0)}
+{not(true)}
+{false}
+)
+! Incomplete if; all text was ignored after line 2.
+<inserted text>
+ fi
+l.96 ...=input enddef;texts trap
+ ]];
+The file ended while I was skipping conditional text.
+This kind of error happens when you say `if...' and forget
+the matching `fi'. I've inserted a `fi'; this might work.
+
+{restoring \}
+{restoring if}
+{endgroup}
+
+dup<text>->[[(TEXT0);save
+Runaway text?
+[[def.texts.secondary.x=primarydef.y++y=x@y.enddef;showtoken ETC.
+! Forbidden token found while scanning a text argument.
+<inserted text>
+ endgroup
+<to be read again>
+ \
+l.97 ... showtoken++;x enddef]]\
+ ;
+It seems that a right delimiter was left out,
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+(TEXT0)<-[[def.texts.secondary.x=primarydef.y++y=x@y.enddef;showtoken++;
+x.enddef]]
+{begingroup}
+{begingroup}
+{def}
+{endgroup}
+{save}
+! Missing symbolic token inserted.
+<inserted text>
+ INACCESSIBLE
+<to be read again>
+ \
+l.97 ... showtoken++;x enddef]]\
+ ;
+Sorry: You can't redefine my error-recovery tokens.
+I've inserted an inaccessible symbol so that your
+definition will be completed without mixing me up too badly.
+
+{\}
+
+texts<secondary>->primarydef.y++y=(EXPR0)@y.enddef;showtoken++;(EXPR0)
+(EXPR0)<-"a"
+{primarydef}
+{showtoken}
+> ++=primarydef'd macro:
+("a")@(EXPR1)
+{("a")&("b")}
+ab
+texts<secondary>->primarydef.y++y=(EXPR0)@y.enddef;showtoken++;(EXPR0)
+{(1.00002)*(a1)}
+{-(1.00002a1)}
+(EXPR0)<--1.00002a1
+{primarydef}
+{showtoken}
+> ++=primarydef'd macro:
+(-1.00002a1)@(EXPR1)
+{(a2)+(a3)}
+{(linearform)+(a4)}
+{(linearform)+(a5)}
+{(linearform)+(a6)}
+{-(linearform)}
+{(-1.00002a1)=(linearform)}
+## a1=0.99998a6+0.99998a5+0.99998a4+0.99998a3+0.99998a2
+{-((a3,a2))}
+{((-a3,-a2))/(0.99998)}
+{(a4)+(a5)}
+{begingroup}
+{showdependencies}
+a1=0.99998a6+0.99998a5+0.99998a4+0.99998a3+0.99998a2
+alpha=0.5p3~
+{endgroup}
+{(linearform)+(a6)}
+{(a3)+(a4)}
+{(linearform)+(a5)}
+{(linearform)+(a6)}
+{-((linearform,linearform))}
+{((-1.00002a3,-1.00002a2))=((linearform,linearform))}
+## a2=0.99998a6+0.99998a5+0.99998a4+0.99998a3
+## a3=0.99998a6+0.99998a5+0.99998a4
+{restoring INACCESSIBLE}
+{endgroup}
+{(1.00002)*(0.25a4*4)}
+{(0.25a4*4)+(1)}
+{(0.25a5*4)+(0.25a6*4)}
+{(0.25a4*4+1)=(linearform)}
+## a4*4=0.99998a6*4+0.99998a5*4-3.99994
+{(0.9)*(0.5p3~)}
+{(0.45p3~)+(7)}
+{alpha:=0.45p3~+7}
+## alpha=0.45p3~+7
+{showdependencies}
+alpha=0.45p3~+7
+a4=0.25a6*4+0.25a5*4-0.99998
+a3=0.49998a6*4+0.49998a5*4-0.99997
+a2=0.99997a6*4+0.99997a5*4-1.99992
+a1=1.99992a6*4+1.99992a5*4-3.99982
+{(0.66667)-(0.25a6*4)}
+{(0.25a6*4)=(-0.25a6*4+0.66667)}
+## a6*4=1.33334
+{(0.25a5*4)=(0.33333)}
+## a5*4=1.33331
+#### a4=-0.33333
+#### a3=0.33333
+#### a2=0.66664
+#### a1=1.33328
+{chardp:=27}
+{charcode:=27}
+{(3.1)=(aaz)}
+## aaz=3.1
+{show}
+>> 3.1
+{ligtable}
+{show}
+{begingroup}
+{interim}
+{tracingcommands:=0}
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"g"
+(TEXT1)<-=:|
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"h":"i"
+(TEXT1)<-|=:
+! Character h is already in a ligtable.
+<to be read again>
+ :
+<argument> "h":
+ "i"
+lig->...;ligtable(TEXT0):(TEXT0)
+ (TEXT1)0,skipto255;boundarych...
+l.102 ...=:|); lig("h":"i")(|=:)
+ ;
+It's not legal to label a character more than once.
+So I'll not change anything just now.
+
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"j"
+(TEXT1)<-|=:>
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"k"
+(TEXT1)<-=:|>
+
+lig(TEXT0)(TEXT1)->ligtable0::for*=1step1until60:0kern.boundarychar+*,en
+dfor.skipto0;ligtable(TEXT0):(TEXT0)(TEXT1)0,skipto255;boundarychar:=bou
+ndarychar+51.29999
+(TEXT0)<-"l"
+(TEXT1)<-|=:|>
+{restoring tracingcommands=2.1}
+{endgroup}
+>> vacuous
+{begingroup}
+{let}
+{vardef}
+{endgroup}
+! Variable c.a1 has been obliterated.
+<to be read again>
+ ;
+l.104 ...;vardef b=enddef;1]] ];
+ ligtable"m":0=:0,skipto5;
+It seems you did a nasty thing---probably by accident,
+but nevertheless you nearly hornswoggled me...
+While I was evaluating the suffix of this variable,
+something was redefined, and it's no longer a variable!
+In order to get back on my feet, I've inserted `0' instead.
+
+{b1:=0}
+! Variable b1 has been obliterated.
+<to be read again>
+ ;
+l.104 ...;vardef b=enddef;1]] ];
+ ligtable"m":0=:0,skipto5;
+It seems you did a nasty thing---probably by accident,
+but nevertheless you nearly hornswoggled me...
+While I was evaluating the right-hand side of this
+command, something happened, and the left-hand side
+is no longer a variable! So I won't change anything.
+
+{ligtable}
+! A statement can't begin with `skipto'.
+<to be read again>
+ !!
+l.105 !!
+ ; errhelp 0; errmessage "Be like Jane";
+I was looking for the beginning of a new statement.
+If you just proceed without changing anything, I'll ignore
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+! Extra tokens will be flushed.
+<to be read again>
+ !!
+l.105 !!
+ ; errhelp 0; errmessage "Be like Jane";
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+{errhelp}
+>> 0
+! Not a string.
+<to be read again>
+ ;
+l.105 !!; errhelp 0;
+ errmessage "Be like Jane";
+A message should be a known string expression.
+
+{errmessage}
+! Be like Jane.
+<to be read again>
+ ;
+l.105 ...message "Be like Jane";
+
+This error message was generated by an `errmessage'
+command, so I can't give any explicit help.
+Pretend that you're Miss Marple: Examine all clues,
+and deduce the truth by inspired guesses.
+
+{errhelp}
+{errmessage}
+! .
+<to be read again>
+ ;
+l.106 ...e%%%lp%"; errmessage"";
+ errhelp ""; errmessage "Anot...
+He%
+lp
+
+
+{errhelp}
+{errmessage}
+! Another.
+<to be read again>
+ ;
+l.106 ...; errmessage "Another";
+
+(That was another `errmessage'.)
+
+{headerbyte}
+>> 0
+! Improper location.
+<to be read again>
+ ;
+l.107 headerbyte 0;
+ headerbyte(48.5)substring(-9,9)of"long"; ...
+I was looking for a known, positive number.
+For safety's sake I'll ignore the present command.
+
+{headerbyte}
+! Missing `:' has been inserted.
+<to be read again>
+ substring
+l.107 ...aderbyte(48.5)substring
+ (-9,9)of"long"; for\=0:\
+A colon should follow a headerbyte or fontinfo location.
+
+{-(9)}
+{((-9,9))substring("long")}
+>> "long"
+! Invalid code has been replaced by 0.
+<to be read again>
+ ;
+l.107 ...ubstring(-9,9)of"long";
+ for\=0:\
+I was looking for a number between 0 and 255, or for a
+string of length 1. Didn't find it; will use 0 instead.
+
+{for}
+Runaway loop?
+! Forbidden token found while scanning the text of a for loop.
+<inserted text>
+ endfor
+<to be read again>
+ \
+l.107 ...-9,9)of"long"; for\=0:\
+
+I suspect you have forgotten an `endfor',
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{loop value=0}
+{[repeat the loop]}
+{\}
+{headerbyte}
+{(2)*(0.33333)}
+{fontdimen}
+{(2)*(0.33333)}
+>> "q"
+! Improper font parameter.
+<to be read again>
+ ;
+l.108 ..."; fontdimen 9:2a6,"q";
+ fontdimen 1:2048;
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{fontdimen}
+{fontmaking:=1}
+{extensible}
+! Missing `:' has been inserted.
+<to be read again>
+ 5
+l.109 ...king:=1; extensible 5 5
+ ,"c"255.5,"d"; charlist 0:5:"...
+I'm processing `extensible c: t,m,b,r'.
+
+! Missing `,' has been inserted.
+<to be read again>
+ 255.5
+l.109 ...extensible 5 5,"c"255.5
+ ,"d"; charlist 0:5:"a":"d";
+I'm processing `extensible c: t,m,b,r'.
+
+>> 255.5
+! Invalid code has been replaced by 0.
+<to be read again>
+ ,
+l.109 ...xtensible 5 5,"c"255.5,
+ "d"; charlist 0:5:"a":"d";
+I was looking for a number between 0 and 255, or for a
+string of length 1. Didn't find it; will use 0 instead.
+
+{charlist}
+! Character code 5 is already extensible.
+<to be read again>
+ :
+l.109 ...,"d"; charlist 0:5:"a":
+ "d";
+It's not legal to label a character more than once.
+So I'll not change anything just now.
+
+{ligtable}
+! Too far to skip.
+l.110 ligtable255:255::
+ "a"=:"b","d" kern -2048,"c":0:99.5:"e"...
+At most 127 lig/kern steps can separate skipto1 from 1::.
+
+{-(2048)}
+! Character code 0 is already in a charlist.
+<to be read again>
+ :
+l.110 ...","d" kern -2048,"c":0:
+ 99.5:"e"|=:|"f",0kern';
+It's not legal to label a character more than once.
+So I'll not change anything just now.
+
+>> (xpart ',ypart ')
+! Improper kern.
+<to be read again>
+ ;
+l.110 ...99.5:"e"|=:|"f",0kern';
+
+The amount of kern should be a known numeric value.
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{ligtable}
+! Character code 5 is already extensible.
+<to be read again>
+ :
+l.111 ligtable 5:
+ 0; def clear(text x)=interim x:=$ enddef; cl...
+It's not legal to label a character more than once.
+So I'll not change anything just now.
+
+! Illegal ligtable step.
+<to be read again>
+ ;
+l.111 ligtable 5:0;
+ def clear(text x)=interim x:=$ enddef; cl...
+I was looking for `=:' or `kern' here.
+
+{def}
+
+clear(TEXT0)->interim(TEXT0):=$
+(TEXT0)<-hppp
+{interim}
+! The token `hppp' isn't an internal quantity.
+<to be read again>
+ hppp
+clear->interim(TEXT0)
+ :=$
+l.111 ...:=$ enddef; clear(hppp)
+ ; vppp=0;
+Something like `tracingonline' should follow `interim'.
+
+{hppp:=-1}
+## hppp=-1
+{(vppp)=(0)}
+## vppp=0
+{begingroup}
+
+clear(TEXT0)->interim(TEXT0):=$
+(TEXT0)<-tracingmacros
+{interim}
+{tracingmacros:=-1}
+{interim}
+{tracingcommands:=-1}
+Runaway text?
+tracingoutput
+! Forbidden token found while scanning a text argument.
+<inserted text>
+ )
+<to be read again>
+ \
+l.112 ...); clear(tracingoutput\
+ ;
+It seems that a right delimiter was left out,
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+[95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107]
+## chardy=6
+[108] [109]
+{restoring tracingoutput=1}
+{restoring tracingcommands=2.1}
+{restoring tracingmacros=1}
+{endgroup}
+{def}
+{def}
+{addto}
+Path at line 122, before choices:
+(0,0){4096,0}
+ ..{4096,0}(1,0){0,-4096}
+ ..{0,4096}cycle
+
+Path at line 122, after choices:
+(0,0)..controls (0.33333,0) and (0.66667,0)
+ ..(1,0)..controls (1,-0.66667) and (0,-0.66667)
+ ..cycle
+
+
+f(SUFFIX0)(EXPR1)(EXPR2)(TEXT3)->numeric.w;show(EXPR1);addto(SUFFIX0)con
+tour(0,0)..(2,0)..(1,$)..(1,1)..cycle.withpen.qq;addto(SUFFIX0)doublepat
+h(0,0){1,1}..{2,1}(2,1)withpen.qq;addto(SUFFIX0)doublepath(($,$){1,0}..(
+1,1){1,0})scaled0.5withpen.nullpen;
+! Missing `]' has been inserted.
+<to be read again>
+ ,
+l.123 f(e[3,
+ w); g(e3,transformed p,penoffset-(1,1.3)of(pencir...
+I've seen a `[' and a subscript value, in a suffix,
+so a right bracket should have come next.
+I shall pretend that one was there.
+
+(SUFFIX0)<-e3
+(EXPR1)<-unknown path w
+! Missing argument to f.
+<to be read again>
+ ;
+l.123 f(e[3,w);
+ g(e3,transformed p,penoffset-(1,1.3)of(pencir...
+That macro has more parameters than you thought.
+I'll continue by pretending that each missing argument
+is either zero or null.
+
+(EXPR2)<-0
+! Missing argument to f.
+<to be read again>
+ ;
+l.123 f(e[3,w);
+ g(e3,transformed p,penoffset-(1,1.3)of(pencir...
+That macro has more parameters than you thought.
+I'll continue by pretending that each missing argument
+is either zero or null.
+
+(TEXT3)<-
+{numeric}
+{show}
+>> unknown path %CAPSULE1695
+{addto}
+Path at line 123, before choices:
+(0,0)
+ ..(2,0)
+ ..(1,-1)
+ ..(1,1)
+ ..cycle
+
+Path at line 123, after choices:
+(0,0)..controls (0.56189,-0.5286) and (1.43811,0.5286)
+ ..(2,0)..controls (2.70831,-0.66634) and (1.66634,-1.70831)
+ ..(1,-1)..controls (0.4714,-0.43811) and (1.5286,0.43811)
+ ..(1,1)..controls (0.33366,1.70831) and (-0.70831,0.66634)
+ ..cycle
+
+{addto}
+Path at line 123, before choices:
+(0,0){2896.30943,2896.30934}
+ ..{3663.57385,1831.78674}(2,1)
+
+Path at line 123, after choices:
+(0,0)..controls (0.53566,0.53566) and (1.32689,0.66344)
+ ..(2,1)
+
+{addto}
+Path at line 123, before choices:
+(-1,-1){4096,0}
+ ..{4096,0}(1,1)
+
+Path at line 123, after choices:
+(-1,-1)..controls (0.10457,-1) and (-0.10457,1)
+ ..(1,1)
+
+{(path)scaled(0.5)}
+{nullpen}
+
+g(SUFFIX0)->show(SUFFIX0)
+(SUFFIX0)<-e3
+! Too many arguments to g;
+ Missing `)' has been inserted.
+l.123 f(e[3,w); g(e3,
+ transformed p,penoffset-(1,1.3)of(pencir...
+I'm going to assume that the comma I just read was a
+right delimiter, and then I'll begin expanding the macro.
+You might want to delete some tokens before continuing.
+
+{show}
+{(picture)transformed((8,1,5,-5,-5,5))}
+>> Edge structure at line 123:
+Filled pen stroke :
+(10.5,-1.5)..controls (13,-4) and (15.5,-6.5)
+ ..(18,-9)
+dashed (on 3 off 0) shifted 0
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+Filled pen stroke :
+(8,1)..controls (8.57388,0.42612) and (9.41167,-0.41167)
+ ..(10.5,-1.5)..controls (14.51955,-5.51955) and (21.76099,-12.76099)
+ ..(25.5,-16.5)..controls (27.5211,-18.5211) and (28.4345,-19.4345)
+ ..(30.5,-21.5)..controls (35.23984,-26.23984) and (45.4408,-36.4408)
+ ..(50.5,-41.5)..controls (51.60489,-42.60489) and (52.4432,-43.4432)
+ ..(53,-44)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+Filled contour :
+(8,1)..controls (13.45242,-4.45242) and (12.54758,-3.54758)
+ ..(18,-9)..controls (24.87325,-15.87325) and (24.87325,-15.87325)
+ ..(18,-9)..controls (12.54758,-3.54758) and (13.45242,-4.45242)
+ ..(8,1)..controls (1.12675,7.87325) and (1.12675,7.87325)
+ ..cycle
+mitered joins limited 1 with pen
+(-10,10)
+ .. (5,-5)
+ .. (12.5,-12.5)
+ .. (15,-15)
+ .. (15,-15)
+ .. (10,-10)
+ .. (-5,5)
+ .. (-12.5,12.5)
+ .. (-15,15)
+ .. (-15,15)
+ .. cycle
+Filled pen stroke :
+(8,1)..controls (8,1) and (11.31726,-2.31726)
+ ..(13,-4)
+butt ends, mitered joins limited 1 with pen
+(-10,10)
+ .. (5,-5)
+ .. (12.5,-12.5)
+ .. (15,-15)
+ .. (15,-15)
+ .. (10,-10)
+ .. (-5,5)
+ .. (-12.5,12.5)
+ .. (-15,15)
+ .. (-15,15)
+ .. cycle
+Filled pen stroke :
+(8,1)..controls (10.76146,-1.76146) and (5.23854,3.76146)
+ ..(8,1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+End edges
+
+{-((1,1.3))}
+{pencircle}
+{(pen)scaled(20)}
+{-(0.5)}
+{(pen)yscaled(-0.5)}
+{((-1,-1.3))penoffset(pen)}
+>> (-9.33345,1.79489)
+Path at line 124, before choices:
+(0,0)..controls (1,1) and (-1,1)
+ ..(3,0)
+
+Path at line 124, after choices:
+(0,0)..controls (1,1) and (-1,1)
+ ..(3,0)
+
+{((0,1))directiontime(path)}
+>> 0.33333
+{(3.14159)point(path)}
+{((3.14159,4))subpath(path)}
+{((7.68668,2.72437))intersectiontimes(path)}
+>> (0,0)
+Path at line 126, before choices:
+(-1,1.1){curl 1}
+ ..{curl 1}(1,-1)
+
+Path at line 126, after choices:
+(-1,1.1)..controls (-0.33333,0.40001) and (0.33333,-0.3)
+ ..(1,-1)
+
+{(-1)precontrol((0,0))}
+{(path)intersectiontimes((0,0))}
+>> (-1,-1)
+{addto}
+{-(4094.99998)}
+{-(0.00002)}
+Path at line 127, before choices:
+(-4094.99998,0){curl 1}
+ ..{curl 1}(4094.99998,-0.00002)
+
+Path at line 127, after choices:
+(-4094.99998,0)..controls (-1365,0) and (1365,-0.00002)
+ ..(4094.99998,-0.00002)
+
+{pencircle}
+{(0)penoffset(pen)}
+>> 0
+>> pen
+! Not implemented: penoffset(known numeric)of(pen).
+<to be read again>
+ ;
+l.128 pencircle;
+ addto e3 also e3 shifted (0,257); ,"flushed ...
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+{addto}
+{(picture)shifted((0,257))}
+! A statement can't begin with `,'.
+<to be read again>
+ ,
+l.128 ...o e3 shifted (0,257); ,
+ "flushed with pride"; numeric...
+I was looking for the beginning of a new statement.
+If you just proceed without changing anything, I'll ignore
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+! Extra tokens will be flushed.
+<to be read again>
+ ,
+l.128 ...o e3 shifted (0,257); ,
+ "flushed with pride"; numeric...
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+{numeric}
+{def}
+
+f(EXPR0)(EXPR1)(EXPR2)->showdependencies;tracingcapsules:=1;showdependen
+cies;show1/3(3,6)*(((EXPR0)+(EXPR1))+((EXPR1)-(EXPR0))),(1,1)/sqrt2zscal
+ed((EXPR0)+1,(EXPR0)+2)-((EXPR0)+1,(EXPR0)+2)rotated45,(0,1)zscaled(1,(E
+XPR1)+2)-(1,(EXPR1)+2)rotated90
+{(xx)+(1)}
+{(xx+1)/(0.3)}
+(EXPR0)<-3.3333xx+3.3333
+{(yy)-(1)}
+{(yy-1)/(0.5)}
+(EXPR1)<-2yy-2
+(EXPR2)<-(xx,0)
+{showdependencies}
+alpha=0.45p3~+7
+{tracingcapsules:=1}
+{showdependencies}
+xpart %CAPSULE2512=xx
+%CAPSULE2520=2yy-2
+%CAPSULE2528 = 3.3333xx+3.3333
+alpha=0.45p3~+7
+{show}
+{(1/3)*((3,6))}
+{(3.3333xx+3.3333)+(2yy-2)}
+{(2yy-2)-(3.3333xx+3.3333)}
+{(linearform)+(linearform)}
+{((1,2))*(4yy-4)}
+>> (4yy-4,8yy-8)
+{sqrt(2)}
+{((1,1))/(1.41422)}
+{(3.3333xx+3.3333)+(1)}
+{(3.3333xx+3.3333)+(2)}
+{((0.7071,0.7071))zscaled((3.3333xx+4.3333,3.3333xx+5.3333))}
+{(3.3333xx+3.3333)+(1)}
+{(3.3333xx+3.3333)+(2)}
+{((3.3333xx+4.3333,3.3333xx+5.3333))rotated(45)}
+{((-0.7071,4.71399xx+6.83531))-((-0.7071,4.71399xx+6.83531))}
+>> (0,0)
+{(2yy-2)+(2)}
+{((0,1))zscaled((1,2yy))}
+{(2yy-2)+(2)}
+{((1,2yy))rotated(90)}
+{((-2yy,1))-((-2yy,1))}
+>> (0,0)
+{(1000)*(o3)}
+{(o1)-(o2)}
+{(4000)*(linearform)}
+{(1000o3)-(linearform)}
+{(4000)*(o2)}
+{(linearform)+(4000o2)}
+{(linearform)+(9)}
+{(0.01)*(o3)}
+{-(0.01o3)}
+{(3)*(ooo)}
+{(-0.01o3)+(3ooo)}
+{begingroup}
+{(o2)+(o4)}
+{(linearform)+(o5)}
+{(linearform)-(20)}
+{(9/10)*(linearform)}
+{(oo)=(linearform)}
+## oo=0.9o5+0.9o4+0.9o2-18
+{(0.5)*(o2)}
+{(o1)+(0.5o2)}
+{(8/9)*(linearform)}
+{(o5)=(linearform)}
+## o5=0.44444o2+0.88889o1
+{(o4)=(linearform)}
+## o4=0.44444o2+0.88889o1
+{(0.0001)*(o2)}
+{-(0.0001o2)}
+{(o6)=(-0.0001o2)}
+## o6=-0.0001o2
+{showdependencies}
+o6=-0.0001o2
+o4=0.44444o2+0.88889o1
+o5=0.44444o2+0.88889o1
+oo=1.7o2+1.6o1-18
+%CAPSULE2440 = 3ooo-0.01o3
+%CAPSULE2460 = 8000o2-4000o1+1000o3+9
+xpart %CAPSULE2536=xpart '
+ypart %CAPSULE2536=ypart '
+alpha=0.45p3~+7
+{numeric}
+### 4000o1 = -%CAPSULE2460+8000o2+1000o3+9
+### -4.87383o2 = -oo-0.0004%CAPSULE2460+0.39673o3-17.99643
+#### o6=-0.00027
+### -0.04366o3 = -o4+0.46689oo+8.40439
+### -o4 = -o5
+### 0.22894o5 = -%CAPSULE2440+0.10689oo+3ooo+1.92412
+{begingroup}
+{pair}
+### -alfa=-%CAPSULE2428
+{endgroup}
+### -%CAPSULE2428=-xpart %CAPSULE2426
+{xpart((xpart %CAPSULE2426,0))}
+### -xpart %CAPSULE9=-%CAPSULE2416
+{endgroup}
+{(%CAPSULE2440)+(%CAPSULE2416)}
+### -%CAPSULE2440=-%CAPSULE2404+%CAPSULE2416
+### -%CAPSULE2404=-ypart %CAPSULE2402
+### -%CAPSULE2460=-xpart %CAPSULE2402
+{begingroup}
+{save}
+{(1)-(p$)}
+{restoring p}
+### p$=-ypart %CAPSULE2368+1
+{endgroup}
+{(2/3)*((-ypart %CAPSULE2368+1,ypart %CAPSULE2368))}
+### ypart %CAPSULE2368=-xpart %CAPSULE2368+1
+### -0.66667xpart %CAPSULE2368=-xpart %CAPSULE2360
+{-((xpart %CAPSULE2360,-xpart %CAPSULE2360+0.66667))}
+### xpart %CAPSULE2360=-xpart %CAPSULE2340
+{((xpart %CAPSULE2402,ypart %CAPSULE2402))=((xpart %CAPSULE2340,-xpart %
+CAPSULE2340-0.66667))}
+## xpart %CAPSULE2340=-ypart %CAPSULE2402-0.66667
+## xpart %CAPSULE2402=-ypart %CAPSULE2402-0.66667
+### ypart %CAPSULE2402=-xpart %CAPSULE2402-0.66667
+### -xpart %CAPSULE2402=-xpart %CAPSULE2340
+{((xpart ',ypart '))=((xpart %CAPSULE2340,-xpart %CAPSULE2340-0.66667))}
+## xpart %CAPSULE2340=-ypart '-0.66667
+## xpart '=-ypart '-0.66667
+{begingroup}
+{(0.5)*(ooo)}
+{begingroup}
+{numeric}
+### -ooo=-%CAPSULE2302
+{endgroup}
+{(%CAPSULE2302)+(1)}
+### -%CAPSULE2302=-%CAPSULE2290+1
+{(1/2)*(%CAPSULE2290)}
+### -0.5%CAPSULE2290=-%CAPSULE2282
+{-(%CAPSULE2282)}
+### %CAPSULE2282=-%CAPSULE2274
+{(2)*(%CAPSULE2274)}
+### -2%CAPSULE2274=-%CAPSULE2266
+{(-0.5%CAPSULE2266-0.5)=(%CAPSULE2266)}
+## %CAPSULE2266=-0.33333
+{(oo)=(-0.33333)}
+## oo=-0.33333
+{endgroup}
+{(4000)*(-0.33333)}
+{yoffset:=-1333.31299}
+## yoffset=-1333.31299
+{xoffset:=-1333.31299}
+## xoffset=-1333.31299
+{addto}
+
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+! Missing argument to foo.
+<to be read again>
+ contour
+l.136 addto foo contour
+ begingroup vardef foo=enddef; (0,0).....
+That macro has more parameters than you thought.
+I'll continue by pretending that each missing argument
+is either zero or null.
+
+(TEXT2)<-
+{begingroup}
+{endgroup}
+>> vacuous
+! Not a suitable variable.
+<to be read again>
+ contour
+l.136 addto foo contour
+ begingroup vardef foo=enddef; (0,0).....
+At this point I needed to see the name of a picture variable.
+(Or perhaps you have indeed presented me with one; I might
+have missed it, if it wasn't followed by the proper token.)
+So I'll not change anything just now.
+
+! Extra tokens will be flushed.
+<to be read again>
+ contour
+l.136 addto foo contour
+ begingroup vardef foo=enddef; (0,0).....
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+Path at line 136, before choices:
+(0,0)
+ ..cycle
+
+Path at line 136, after choices:
+(0,0)..controls (0,0) and (0,0)
+ ..cycle
+
+! Extra `endgroup'.
+l.136 ...; (0,0)..cycle endgroup
+ ;
+I'm not currently working on a `begingroup',
+so I had better not try to end anything.
+
+{(unknown path p~7)=(unknown path p~8)}
+{-(1)}
+Path at line 137, before choices:
+(0,0){-2896.30943,2896.30934}
+ ..{curl 1}(30,0)
+
+Path at line 137, after choices:
+(0,0)..controls (-48.28429,48.28426) and (78.28429,48.28426)
+ ..(30,0)
+
+{p~8:=path}
+{show}
+>> Path at line 137:
+(0,0)..controls (-48.28429,48.28426) and (78.28429,48.28426)
+ ..(30,0)
+
+{-(1)}
+{((0,-1))directiontime(path)}
+>> 0.83456
+{show}
+{((1,0))directiontime(path)}
+>> -1
+{-(1)}
+{-(1)}
+! Missing `}' has been inserted.
+<to be read again>
+ )
+l.139 ...(0,0){1,0}..(0,0){0,-1)
+ ..cycle);
+I've scanned a direction spec for part of a path,
+so a right brace should have come next.
+I shall pretend that one was there.
+
+Path at line 139, before choices:
+(0,0){4096,0}
+ ..{0,-4096}(0,0)
+
+Path at line 139, after choices:
+(0,0)..controls (0,0) and (0,0)
+ ..(0,0)
+
+{((1,-1))directiontime(path)}
+>> 0
+! Extra tokens will be flushed.
+<to be read again>
+ ..
+l.139 ...,0){1,0}..(0,0){0,-1)..
+ cycle);
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+{nullpicture}
+{(unknown picture e4)=(picture)}
+{(unknown picture e9)=(picture)}
+{addto}
+{addto}
+! Picture is too complicated to use as a dash pattern.
+<to be read again>
+ ;
+l.141 ...ublepath p~8 dashed e4;
+ e9:=nullpicture;
+When you say `dashed p', every path in p should be monotone
+in x and there must be no overlapping. This failed
+so I'll just make it a solid line instead.
+
+{nullpicture}
+{e9:=picture}
+{nullpicture}
+{e4:=picture}
+{addto}
+Path at line 142, before choices:
+(1,1){curl 1}
+ ..{curl 1}(4,1)
+
+Path at line 142, after choices:
+(1,1)..controls (2,1) and (3,1)
+ ..(4,1)
+
+{addto}
+{nullpicture}
+{e9:=picture}
+{addto}
+{pencircle}
+{makepath(pen)}
+{-(2)}
+{(picture)scaled(-2)}
+{show}
+>> Edge structure at line 144:
+Filled pen stroke :
+(1,1)..controls (2,1) and (3,1)
+ ..(4,1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+Filled pen stroke :
+(0.5,0)..controls (0.5,0.13261) and (0.44731,0.25978)
+ ..(0.35355,0.35355)..controls (0.25978,0.44731) and (0.13261,0.5)
+ ..(0,0.5)..controls (-0.13261,0.5) and (-0.25978,0.44731)
+ ..(-0.35355,0.35355)..controls (-0.44731,0.25978) and (-0.5,0.13261)
+ ..(-0.5,0)..controls (-0.5,-0.13261) and (-0.44731,-0.25978)
+ ..(-0.35355,-0.35355)..controls (-0.25978,-0.44731) and (-0.13261,-0.5)
+ ..(0,-0.5)..controls (0.13261,-0.5) and (0.25978,-0.44731)
+ ..(0.35355,-0.35355)..controls (0.44731,-0.25978) and (0.5,-0.13261)
+ ..cycle
+dashed (on 6 off 0) shifted -2
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,0)
+End edges
+
+{nullpicture}
+{(unknown picture e5)=(picture)}
+{e4:=picture}
+{addto}
+{-(4)}
+{-(3)}
+{-(2)}
+{-(2.7)}
+Path at line 145, before choices:
+(-4,-3){curl 1}..tension 2
+ ..{curl 1}(-2,-2.7)
+
+Path at line 145, after choices:
+(-4,-3)..controls (-3.66667,-2.95) and (-2.33333,-2.75)
+ ..(-2,-2.7)
+
+{addto}
+{(path)shifted((0,4))}
+{(path)scaled(3)}
+{show}
+{llcorner(picture)}
+>> (0.5,9.5)
+{nullpicture}
+{e6:=picture}
+{addto}
+Path at line 149, before choices:
+(0,0){curl 1}
+ ..{curl 1}(30,0)
+
+Path at line 149, after choices:
+(0,0)..controls (10,0) and (20,0)
+ ..(30,0)
+
+{pencircle}
+{makepath(pen)}
+>> path
+! Improper type.
+<to be read again>
+ dashed
+l.150 dashed
+ e5 withpen pencircle scaled2 dashed e5shifted(0,...
+Next time say `dashed <known picture expression>';
+I'll ignore the bad `with' clause and look for another.
+
+{pencircle}
+{(pen)scaled(2)}
+{-(11)}
+{(picture)shifted((0,-11))}
+{pencircle}
+{show}
+>> Edge structure at line 151:
+Filled pen stroke :
+(0,0)..controls (10,0) and (20,0)
+ ..(30,0)
+dashed (on 2 off 1) shifted -1
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+End edges
+
+{def}
+{(path)rotated(90)}
+{-(1)}
+{(path)xscaled(-1)}
+Path at line 152, before choices:
+(0,0)..controls (48.28426,-48.28429) and (48.28426,78.28429)
+ ..(0,30)
+ ..cycle
+
+Path at line 152, after choices:
+(0,0)..controls (48.28426,-48.28429) and (48.28426,78.28429)
+ ..(0,30)..controls (-8.28427,21.71573) and (-8.28427,8.28427)
+ ..cycle
+
+{p~7:=path}
+{linecap:=2}
+{linejoin:=1}
+{nullpicture}
+{(picture)=(picture)}
+! Redundant or inconsistent equation.
+<to be read again>
+ ;
+l.153 e6=nullpicture;
+ addto e6 doublepath p~8 dashed e5 withp...
+An equation between already-known quantities can't help.
+But don't worry; continue and I'll just ignore it.
+
+{addto}
+{pencircle}
+{clip}
+{addto}
+{begingroup}
+{save}
+{picture}
+{nullpicture}
+{(unknown picture _p)=(picture)}
+{string}
+{vardef}
+{(unknown string _n0)=("trapf")}
+
+_s(EXPR2)(EXPR3)(EXPR4)(EXPR5)(EXPR6)->begingroup.addto._p.also(EXPR2)in
+font(EXPR3)scaled(EXPR4)shifted((EXPR5),(EXPR6));endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-_s
+(EXPR2)<-"Aqua"
+(EXPR3)<-"trapf"
+(EXPR4)<-1
+(EXPR5)<-0
+(EXPR6)<-0
+{begingroup}
+{addto}
+{("Aqua")infont("trapf")}
+{(picture)scaled(1)}
+{(picture)shifted((0,0))}
+{endgroup}
+{interim}
+{linecap:=0}
+{vardef}
+
+_r(EXPR2)(EXPR3)->begingroup.addto._p.doublepath(EXPR2)withpen.pencircle
+.scaled(EXPR3)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-_r
+{-(3.9851)}
+Path at line 11, before choices:
+(8.1693,-3.9851){curl 1}
+ ..{curl 1}(8.1693,15.9402)
+
+Path at line 11, after choices:
+(8.1693,-3.9851)..controls (8.1693,2.65666) and (8.1693,9.29843)
+ ..(8.1693,15.9402)
+
+(EXPR2)<-path
+(EXPR3)<-0.3985
+{begingroup}
+{addto}
+{pencircle}
+{(pen)scaled(0.3985)}
+{endgroup}
+{(unknown string _n1)=("trapf")}
+
+_s(EXPR2)(EXPR3)(EXPR4)(EXPR5)(EXPR6)->begingroup.addto._p.also(EXPR2)in
+font(EXPR3)scaled(EXPR4)shifted((EXPR5),(EXPR6));endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-_s
+(EXPR2)<-"Brass"
+(EXPR3)<-"trapf"
+(EXPR4)<-2
+(EXPR5)<-8.3686
+(EXPR6)<-0
+{begingroup}
+{addto}
+{("Brass")infont("trapf")}
+{(picture)scaled(2)}
+{(picture)shifted((8.3686,0))}
+{endgroup}
+{setbounds}
+{-(3.9851)}
+
+--->{curl1}..{curl1}
+{-(3.9851)}
+
+--->{curl1}..{curl1}
+
+--->{curl1}..{curl1}
+
+--->{curl1}..{curl1}
+Path at line 15, before choices:
+(0,-3.9851){curl 1}
+ ..{curl 1}(18.3313,-3.9851){curl 1}
+ ..{curl 1}(18.3313,15.9402){curl 1}
+ ..{curl 1}(0,15.9402){curl 1}
+ ..{curl 1}cycle
+
+Path at line 15, after choices:
+(0,-3.9851)..controls (6.11043,-3.9851) and (12.22087,-3.9851)
+ ..(18.3313,-3.9851)..controls (18.3313,2.65666) and (18.3313,9.29843)
+ ..(18.3313,15.9402)..controls (12.22087,15.9402) and (6.11043,15.9402)
+ ..(0,15.9402)..controls (0,9.29843) and (0,2.65666)
+ ..cycle
+
+{restoring linecap=2}
+{restoring _n}
+{restoring _s}
+{restoring _r}
+{restoring _p}
+{endgroup}
+{-(2)}
+{(picture)shifted((0,-2))}
+{addto}
+Path at line 155, before choices:
+(1,0){curl 1}
+ ..{curl 1}(2,1)
+
+Path at line 155, after choices:
+(1,0)..controls (1.33333,0.33333) and (1.66667,0.66667)
+ ..(2,1)
+
+{addto}
+{(0.5)*((1,1,1))}
+{pencircle}
+{(pen)xscaled(2)}
+{(pen)rotated(45)}
+{addto}
+{begingroup}
+{save}
+{picture}
+{nullpicture}
+{(unknown picture _p)=(picture)}
+{string}
+{vardef}
+{(unknown string _n0)=("trapf")}
+
+_s(EXPR2)(EXPR3)(EXPR4)(EXPR5)(EXPR6)->begingroup.addto._p.also(EXPR2)in
+font(EXPR3)scaled(EXPR4)shifted((EXPR5),(EXPR6));endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-_s
+(EXPR2)<-"ast"
+(EXPR3)<-"trapf"
+(EXPR4)<-1
+(EXPR5)<-0
+(EXPR6)<-0
+{begingroup}
+{addto}
+{("ast")infont("trapf")}
+{(picture)scaled(1)}
+{(picture)shifted((0,0))}
+{endgroup}
+{setbounds}
+{-(0.9963)}
+
+--->{curl1}..{curl1}
+{-(0.9963)}
+
+--->{curl1}..{curl1}
+
+--->{curl1}..{curl1}
+
+--->{curl1}..{curl1}
+Path at line 25, before choices:
+(0,-0.9963){curl 1}
+ ..{curl 1}(1.9925,-0.9963){curl 1}
+ ..{curl 1}(1.9925,6.9738){curl 1}
+ ..{curl 1}(0,6.9738){curl 1}
+ ..{curl 1}cycle
+
+Path at line 25, after choices:
+(0,-0.9963)..controls (0.66417,-0.9963) and (1.32832,-0.9963)
+ ..(1.9925,-0.9963)..controls (1.9925,1.6604) and (1.9925,4.3171)
+ ..(1.9925,6.9738)..controls (1.32832,6.9738) and (0.66417,6.9738)
+ ..(0,6.9738)..controls (0,4.3171) and (0,1.6604)
+ ..cycle
+
+{restoring _n}
+{restoring _s}
+{restoring _r}
+{restoring _p}
+{endgroup}
+{(picture)shifted((0,10))}
+{show}
+>> Edge structure at line 158:
+clipping path:
+(0,0)..controls (48.28426,-48.28429) and (48.28426,78.28429)
+ ..(0,30)..controls (-8.28427,21.71573) and (-8.28427,8.28427)
+ ..cycle
+Filled pen stroke :
+(0,0)..controls (10,0) and (20,0)
+ ..(30,0)
+dashed (on 2 off 1) shifted -1
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+Filled pen stroke :
+(0,0)..controls (-48.28429,48.28426) and (78.28429,48.28426)
+ ..(30,0)
+dashed (on 1 off 1 on 1 off 9) shifted -9
+square ends, round joins with pen
+pencircle transformed (0,0,1,0,0,1)
+stop clipping
+setbounds path:
+(0,-5.9851)..controls (6.11043,-5.9851) and (12.22087,-5.9851)
+ ..(18.3313,-5.9851)..controls (18.3313,0.65666) and (18.3313,7.29843)
+ ..(18.3313,13.9402)..controls (12.22087,13.9402) and (6.11043,13.9402)
+ ..(0,13.9402)..controls (0,7.29843) and (0,0.65666)
+ ..cycle
+"Aqua" infont "trapf"
+transformed (0,-2,1,0,0,1)
+Filled pen stroke :
+(8.1693,-5.9851)..controls (8.1693,0.65666) and (8.1693,7.29843)
+ ..(8.1693,13.9402)
+butt ends, round joins with pen
+pencircle transformed (0,0,0.3985,0,0,0.3985)
+"Brass" infont "trapf"
+transformed (8.3686,-2,2,0,0,2)
+end of setbounds
+Filled pen stroke :
+(1,0)..controls (1.33333,0.33333) and (1.66667,0.66667)
+ ..(2,1)
+square ends, round joins with pen
+pencircle transformed (0,0,0,0,0,0)
+End edges
+
+{lrcorner(picture)}
+>> (36.21318,-5.9851)
+{ulcorner(picture)}
+>> (-6.2132,37.00375)
+{charcode:=200}
+{shipout}
+[200
+Envelope spec at line 158:
+(3,12) % beginning with offset (2,-1)
+ ..controls (3.75,12.75) and (4.125,13.3125)
+ ..(4.3125,13.6875)
+ ..controls (4.375,13.8125) and (4.41667,13.91667)
+ ..(4.44444,14) % counterclockwise to offset (2.5,0.5)
+ ..controls (4.5,14.16667) and (4.5,14.25)
+ ..(4.5,14.25) % clockwise to offset (-2.5,-0.5)
+ ..controls (4.5,14.25) and (4.5,13.5)
+ ..(6,12) % counterclockwise to offset (2.5,0.5)
+ ..controls (4.5,13.5) and (4.5,14.25)
+ ..(4.5,14.25) % counterclockwise to offset (-2.5,-0.5)
+ ..controls (4.5,14.25) and (4.5,14.16667)
+ ..(4.44444,14) % clockwise to offset (-2,1)
+ ..controls (4.41667,13.91667) and (4.375,13.8125)
+ ..(4.3125,13.6875)
+ ..controls (4.125,13.3125) and (3.75,12.75)
+ ..(3,12) % counterclockwise to offset (2,-1)
+ & cycle
+
+]
+Edge structure at line 158 (just shipped out):
+Filled pen stroke :
+(3,12)..controls (3.75,12.75) and (4.125,13.3125)
+ ..(4.3125,13.6875)..controls (4.875,14.8125) and (3.75,14.25)
+ ..(6,12)
+dashed (on 2 off 1) shifted -1 (this will be ignored)
+butt ends, mitered joins limited 1 with pen
+(-2.5,-0.5)
+ .. (-1,-2)
+ .. (0,-2.5)
+ .. (1,-2)
+ .. (2,-1)
+ .. (2.5,0.5)
+ .. (1,2)
+ .. (0,2.5)
+ .. (-1,2)
+ .. (-2,1)
+ .. cycle
+clipping path:
+(0,0)..controls (48.28426,-48.28429) and (48.28426,78.28429)
+ ..(0,30)..controls (-8.28427,21.71573) and (-8.28427,8.28427)
+ ..cycle
+Filled pen stroke colored (0.5,0.5,0.5):
+(0,0)..controls (10,0) and (20,0)
+ ..(30,0)
+dashed (on 2 off 1) shifted -1
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1.41422,-0.7071,1.41422,0.7071)
+Filled pen stroke colored (0.5,0.5,0.5):
+(0,0)..controls (-48.28429,48.28426) and (78.28429,48.28426)
+ ..(30,0)
+dashed (on 2 off 1) shifted -1
+square ends, round joins with pen
+pencircle transformed (0,0,1.41422,-0.7071,1.41422,0.7071)
+stop clipping
+setbounds path:
+(0,-5.9851)..controls (6.11043,-5.9851) and (12.22087,-5.9851)
+ ..(18.3313,-5.9851)..controls (18.3313,0.65666) and (18.3313,7.29843)
+ ..(18.3313,13.9402)..controls (12.22087,13.9402) and (6.11043,13.9402)
+ ..(0,13.9402)..controls (0,7.29843) and (0,0.65666)
+ ..cycle
+"Aqua" infont "trapf"
+colored (0.5,0.5,0.5)transformed (0,-2,1,0,0,1)
+Filled pen stroke colored (0.5,0.5,0.5):
+(8.1693,-5.9851)..controls (8.1693,0.65666) and (8.1693,7.29843)
+ ..(8.1693,13.9402)
+dashed (on 2 off 1) shifted -1
+butt ends, round joins with pen
+pencircle transformed (0,0,1.41422,-0.7071,1.41422,0.7071)
+"Brass" infont "trapf"
+colored (0.5,0.5,0.5)transformed (8.3686,-2,2,0,0,2)
+end of setbounds
+Filled pen stroke colored (0.5,0.5,0.5):
+(1,0)..controls (1.33333,0.33333) and (1.66667,0.66667)
+ ..(2,1)
+dashed (on 2 off 1) shifted -1
+square ends, round joins with pen
+pencircle transformed (0,0,1.41422,-0.7071,1.41422,0.7071)
+setbounds path:
+(0,9.0037)..controls (0.66417,9.0037) and (1.32832,9.0037)
+ ..(1.9925,9.0037)..controls (1.9925,11.6604) and (1.9925,14.3171)
+ ..(1.9925,16.9738)..controls (1.32832,16.9738) and (0.66417,16.9738)
+ ..(0,16.9738)..controls (0,14.3171) and (0,11.6604)
+ ..cycle
+"ast" infont "trapf"
+transformed (0,10,1,0,0,1)
+end of setbounds
+End edges
+
+{showstats}
+Memory usage 3017&264 (273 still untouched)
+String usage 68&249 (1155&8794 now untouched)
+{("curb")infont("trapf")}
+Missing character: There is no c in font trapf!
+{-(0.5)}
+{(picture)slanted(-0.5)}
+{-(1)}
+{(picture)scaled(-1)}
+{e6:=picture}
+{e5:=picture}
+{showstats}
+Memory usage 2267&264 (273 still untouched)
+String usage 66&241 (1154&8790 now untouched)
+{show}
+{pencircle}
+{((0,0))penoffset(pen)}
+>> (0,0)
+{llcorner(picture)}
+>> (-3.98508,-7.97011)
+{urcorner(picture)}
+>> (3.98506,1.99254)
+{(picture)rotated(90)}
+{(picture)shifted("oops")}
+>> "oops"
+! Improper transformation argument.
+<to be read again>
+ ;
+l.161 ...ated 90 shifted "oops";
+ show llcorner e5, urcorner e5;
+The expression shown above has the wrong type,
+so I can't transform anything using it.
+Proceed, and I'll omit the transformation.
+
+{e5:=picture}
+{show}
+{llcorner(picture)}
+>> (-1.99254,-3.98508)
+{urcorner(picture)}
+>> (7.97011,3.98506)
+{show}
+{char(220)}
+{("^^dc")infont("trapf")}
+Missing character: There is no ^^dc in font trapf!
+{urcorner(picture)}
+>> (0,0)
+{makepath(pen)}
+>> Path at line 162:
+(-2.5,-0.5)..controls (-2.5,-0.5) and (-1,-2)
+ ..(-1,-2)..controls (-1,-2) and (0,-2.5)
+ ..(0,-2.5)..controls (0,-2.5) and (1,-2)
+ ..(1,-2)..controls (1,-2) and (2,-1)
+ ..(2,-1)..controls (2,-1) and (2.5,0.5)
+ ..(2.5,0.5)..controls (2.5,0.5) and (1,2)
+ ..(1,2)..controls (1,2) and (0,2.5)
+ ..(0,2.5)..controls (0,2.5) and (-1,2)
+ ..(-1,2)..controls (-1,2) and (-2,1)
+ ..(-2,1)..controls (-2,1) and (-2.5,-0.5)
+ ..cycle
+
+{show}
+{-(2)}
+{-(1)}
+{((-2,-1))subpath(path)}
+>> Path at line 163:
+(0,0)
+
+{pencircle}
+{makepath(pen)}
+{((9,10))subpath(path)}
+>> Path at line 163:
+(0.35355,0.35355)..controls (0.25978,0.44731) and (0.13261,0.5)
+ ..(0,0.5)
+
+{("hi")infont("qw99z")}
+! Font qw99z not usable: TFM file not found.
+l.164 "hi" infont "qw99z";
+ special "ij"="ij"; show substring(...
+I wasn't able to read the size data for this font so this
+`infont' operation won't produce anything. If the font name
+is right, you might ask an expert to make a TFM file
+
+Missing character: There is no h in font !
+Missing character: There is no i in font !
+>> picture
+! Isolated expression.
+<to be read again>
+ ;
+l.164 "hi" infont "qw99z";
+ special "ij"="ij"; show substring(...
+I couldn't find an `=' or `:=' after the
+expression that is shown above this error message,
+so I guess I'll just ignore it and carry on.
+
+{special}
+{("ij")=("ij")}
+>> true
+! Unsuitable expression.
+<to be read again>
+ ;
+l.164 ...9z"; special "ij"="ij";
+ show substring(-2,-1)of"abc";
+Only known strings are allowed for output as specials.
+
+{show}
+{-(2)}
+{-(1)}
+{((-2,-1))substring("abc")}
+>> ""
+{addto}
+{begingroup}
+{endgroup}
+>> vacuous
+! Improper `addto'.
+<to be read again>
+ ;
+l.165 addto e5 contour [[ ]];
+ addto e5 contour true; pausing:...
+This expression should have specified a known path.
+So I'll not change anything just now.
+
+{addto}
+{true}
+>> true
+! Improper `addto'.
+<to be read again>
+ ;
+l.165 ... addto e5 contour true;
+ pausing:=0;prologues:=1;
+This expression should have specified a known path.
+So I'll not change anything just now.
+
+{pausing:=0}
+{prologues:=1}
+{charcode:=197}
+{shipout}
+[197]
+Edge structure at line 166 (just shipped out):
+"curb" infont "trapf"
+transformed (0,0,0,1,-1,0.5)
+End edges
+
+{-(1)}
+{-(1)}
+Path at line 167, before choices:
+(0,0){2881.87209,2910.67511}..tension atleast1
+ ..{4096,0}(1,1){-2896.30943,2896.30934}
+ ..{2896.30943,-2896.30934}(2,0)
+
+Path at line 167, after choices:
+(0,0)..controls (0.3493,0.3528) and (0.99011,1)
+ ..(1,1)..controls (0.12732,1.87268) and (1.46066,0.53934)
+ ..(2,0)
+
+{(unknown path p~10)=(path)}
+{prologues:=0}
+{for}
+{-(1)}
+{-(1)}
+{loop value=(-1,1)}
+{show}
+{((-1,1))directiontime(path)}
+>> 1
+{[repeat the loop]}
+{loop value=(1,-1)}
+{show}
+{((1,-1))directiontime(path)}
+>> 1.2355
+{[repeat the loop]}
+{loop value=(0,0)}
+{show}
+{((0,0))directiontime(path)}
+>> 0
+{[repeat the loop]}
+{linecap:=1}
+{linejoin:=1}
+{nullpicture}
+{e5:=picture}
+{addto}
+{pencircle}
+{(pen)scaled(10)}
+{makepath(pen)}
+{pencircle}
+{(pen)shifted((2,0))}
+{addto}
+Path at line 171, before choices:
+(0,0){curl 1}
+ ..{curl 1}(12,0)
+
+Path at line 171, after choices:
+(0,0)..controls (4,0) and (8,0)
+ ..(12,0)
+
+{pencircle}
+{(pen)yscaled(3)}
+{charcode:=148}
+{shipout}
+[148]
+Edge structure at line 171 (just shipped out):
+Filled contour :
+(5,0)..controls (5,1.32608) and (4.47322,2.59785)
+ ..(3.53554,3.53554)..controls (2.59785,4.47322) and (1.32608,5)
+ ..(0,5)..controls (-1.32608,5) and (-2.59785,4.47322)
+ ..(-3.53554,3.53554)..controls (-4.47322,2.59785) and (-5,1.32608)
+ ..(-5,0)..controls (-5,-1.32608) and (-4.47322,-2.59785)
+ ..(-3.53554,-3.53554)..controls (-2.59785,-4.47322) and (-1.32608,-5)
+ ..(0,-5)..controls (1.32608,-5) and (2.59785,-4.47322)
+ ..(3.53554,-3.53554)..controls (4.47322,-2.59785) and (5,-1.32608)
+ ..cycle
+round joins with pen
+pencircle transformed (2,0,1,0,0,1)
+Filled pen stroke :
+(0,0)..controls (4,0) and (8,0)
+ ..(12,0)
+round ends, round joins with pen
+pencircle transformed (0,0,1,0,0,3)
+End edges
+
+{nullpicture}
+{e5:=picture}
+{clip}
+! An expression can't begin with `;'.
+<inserted text>
+ 0
+<to be read again>
+ ;
+l.172 ...llpicture; clip p~8 to;
+ clip e5 to e4; clip e5 to p~...
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+! Variable p~8 is the wrong type (path).
+<to be read again>
+ ;
+l.172 ...llpicture; clip p~8 to;
+ clip e5 to e4; clip e5 to p~...
+I was looking for a "known" picture variable.
+So I'll not change anything just now.
+
+{clip}
+>> picture
+! Improper `clip'.
+<to be read again>
+ ;
+l.172 ... p~8 to; clip e5 to e4;
+ clip e5 to p~8; clip e5 to p~7;
+This expression should have specified a known path.
+So I'll not change anything just now.
+
+{clip}
+! Not a cycle.
+<to be read again>
+ ;
+l.172 ... to e4; clip e5 to p~8;
+ clip e5 to p~7;
+That contour should have ended with `..cycle' or `&cycle'.
+So I'll not change anything just now.
+
+{clip}
+{addto}
+{pencircle}
+{(pen)scaled(50)}
+{makepath(pen)}
+{addto}
+{pencircle}
+{(pen)xscaled(2)}
+{addto}
+{pencircle}
+{addto}
+{(path)shifted((10,0))}
+{(picture)scaled(1)}
+{pencircle}
+{charcode:=149}
+{shipout}
+[149
+Envelope spec at line 177:
+(25,0) % beginning with offset (2.5,0.5)
+ ..controls (25,6.63042) and (22.36609,12.98926)
+ ..(17.67767,17.67767) % counterclockwise to offset (1,2)
+ ..controls (15.7597,19.59564) and (13.56218,21.16978)
+ ..(11.18088,22.36044) % counterclockwise to offset (0,2.5)
+ ..controls (7.74117,24.08029) and (3.918,25)
+ ..(0,25)
+ ..controls (-3.918,25) and (-7.74117,24.08029)
+ ..(-11.18088,22.36044) % counterclockwise to offset (-1,2)
+ ..controls (-13.56218,21.16978) and (-15.7597,19.59564)
+ ..(-17.67767,17.67767) % counterclockwise to offset (-2,1)
+ ..controls (-20.44812,14.90723) and (-22.50117,11.55353)
+ ..(-23.71729,7.90517) % counterclockwise to offset (-2.5,-0.5)
+ ..controls (-24.5592,5.37941) and (-25,2.71243)
+ ..(-25,0)
+ ..controls (-25,-6.63042) and (-22.36609,-12.98926)
+ ..(-17.67767,-17.67767) % counterclockwise to offset (-1,-2)
+ ..controls (-15.7597,-19.59564) and (-13.56218,-21.16978)
+ ..(-11.18088,-22.36044) % counterclockwise to offset (0,-2.5)
+ ..controls (-7.74117,-24.08029) and (-3.918,-25)
+ ..(0,-25)
+ ..controls (3.918,-25) and (7.74117,-24.08029)
+ ..(11.18088,-22.36044) % counterclockwise to offset (1,-2)
+ ..controls (13.56218,-21.16978) and (15.7597,-19.59564)
+ ..(17.67767,-17.67767) % counterclockwise to offset (2,-1)
+ ..controls (20.44812,-14.90723) and (22.50117,-11.55353)
+ ..(23.71729,-7.90517) % counterclockwise to offset (2.5,0.5)
+ ..controls (24.5592,-5.37941) and (25,-2.71243)
+ ..(25,0) % counterclockwise to offset (-2.5,-0.5)
+ ..controls (25,-2.71243) and (24.5592,-5.37941)
+ ..(23.71729,-7.90517) % clockwise to offset (-2,1)
+ ..controls (22.50117,-11.55353) and (20.44812,-14.90723)
+ ..(17.67767,-17.67767) % clockwise to offset (-1,2)
+ ..controls (15.7597,-19.59564) and (13.56218,-21.16978)
+ ..(11.18088,-22.36044) % clockwise to offset (0,2.5)
+ ..controls (7.74117,-24.08029) and (3.918,-25)
+ ..(0,-25)
+ ..controls (-3.918,-25) and (-7.74117,-24.08029)
+ ..(-11.18088,-22.36044) % clockwise to offset (1,2)
+ ..controls (-13.56218,-21.16978) and (-15.7597,-19.59564)
+ ..(-17.67767,-17.67767) % clockwise to offset (2.5,0.5)
+ ..controls (-22.36609,-12.98926) and (-25,-6.63042)
+ ..(-25,0)
+ ..controls (-25,2.71243) and (-24.5592,5.37941)
+ ..(-23.71729,7.90517) % clockwise to offset (2,-1)
+ ..controls (-22.50117,11.55353) and (-20.44812,14.90723)
+ ..(-17.67767,17.67767) % clockwise to offset (1,-2)
+ ..controls (-15.7597,19.59564) and (-13.56218,21.16978)
+ ..(-11.18088,22.36044) % clockwise to offset (0,-2.5)
+ ..controls (-7.74117,24.08029) and (-3.918,25)
+ ..(0,25)
+ ..controls (3.918,25) and (7.74117,24.08029)
+ ..(11.18088,22.36044) % clockwise to offset (-1,-2)
+ ..controls (13.56218,21.16978) and (15.7597,19.59564)
+ ..(17.67767,17.67767) % clockwise to offset (-2.5,-0.5)
+ ..controls (22.36609,12.98926) and (25,6.63042)
+ ..(25,0) % counterclockwise to offset (2.5,0.5)
+ & cycle
+
+]
+Edge structure at line 177 (just shipped out):
+clipping path:
+(0,0)..controls (48.28426,-48.28429) and (48.28426,78.28429)
+ ..(0,30)..controls (-8.28427,21.71573) and (-8.28427,8.28427)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(25,0)..controls (25,6.63042) and (22.36609,12.98926)
+ ..(17.67767,17.67767)..controls (12.98926,22.36609) and (6.63042,25)
+ ..(0,25)..controls (-6.63042,25) and (-12.98926,22.36609)
+ ..(-17.67767,17.67767)..controls (-22.36609,12.98926) and (-25,6.63042)
+ ..(-25,0)..controls (-25,-6.63042) and (-22.36609,-12.98926)
+ ..(-17.67767,-17.67767)..controls (-12.98926,-22.36609) and (-6.63042,-
+25)
+ ..(0,-25)..controls (6.63042,-25) and (12.98926,-22.36609)
+ ..(17.67767,-17.67767)..controls (22.36609,-12.98926) and (25,-6.63042)
+ ..cycle
+round ends, round joins with pen
+(-2.5,-0.5)
+ .. (-1,-2)
+ .. (0,-2.5)
+ .. (1,-2)
+ .. (2,-1)
+ .. (2.5,0.5)
+ .. (1,2)
+ .. (0,2.5)
+ .. (-1,2)
+ .. (-2,1)
+ .. cycle
+Filled pen stroke :
+(0,0)..controls (-48.28429,48.28426) and (78.28429,48.28426)
+ ..(30,0)
+dashed (on 2 off 1) shifted -1
+round ends, round joins with pen
+pencircle transformed (0,0,2,0,0,1)
+Filled pen stroke :
+(0,0)..controls (-48.28429,48.28426) and (78.28429,48.28426)
+ ..(30,0)
+dashed (on 2 off 1) shifted -1
+round ends, round joins with pen
+pencircle transformed (0,0,1,0,0,1)
+Filled pen stroke :
+(10,0)..controls (-38.28429,48.28426) and (88.28429,48.28426)
+ ..(40,0)
+dashed (on 2 off 1) shifted -1
+round ends, round joins with pen
+pencircle transformed (0,0,1,0,0,1)
+End edges
+
+{addto}
+>> 3
+! Not a suitable variable.
+<to be read again>
+ ;
+l.177 ...; shipout e5; addto 3;
+ addto p~8 contour p~7;
+At this point I needed to see the name of a picture variable.
+(Or perhaps you have indeed presented me with one; I might
+have missed it, if it wasn't followed by the proper token.)
+So I'll not change anything just now.
+
+{addto}
+! Variable p~8 is the wrong type (path).
+<to be read again>
+ ;
+l.177 ... addto p~8 contour p~7;
+
+I was looking for a "known" picture variable.
+So I'll not change anything just now.
+
+{nullpicture}
+{e5:=picture}
+{linecap:=2}
+{linejoin:=0}
+{miterlimit:=10}
+{addto}
+Path at line 179, before choices:
+(10,5)
+ ..cycle
+
+Path at line 179, after choices:
+(10,5)..controls (10,5) and (10,5)
+ ..cycle
+
+{addto}
+Path at line 180, before choices:
+(5,10){curl 1}
+ ..{curl 1}(5,15)
+
+Path at line 180, after choices:
+(5,10)..controls (5,11.66667) and (5,13.33333)
+ ..(5,15)
+
+{addto}
+Path at line 182, before choices:
+(0,0)..controls (10,10) and (10,10)
+ ..(10,10)
+ ..{curl 1}(0,20){curl 1}
+ ..{curl 1}(30,10)
+
+Path at line 182, after choices:
+(0,0)..controls (10,10) and (10,10)
+ ..(10,10)..controls (6.66667,13.33333) and (3.33333,16.66667)
+ ..(0,20)..controls (10,16.66667) and (20,13.33333)
+ ..(30,10)
+
+{-(5)}
+Path at line 182, before choices:
+(0,-5)
+ ..(0,5)
+ ..cycle
+
+Path at line 182, after choices:
+(0,-5)..controls (6.66667,-5) and (6.66667,5)
+ ..(0,5)..controls (-6.66667,5) and (-6.66667,-5)
+ ..cycle
+
+{makepen(path)}
+{charcode:=150}
+{prologues:=1}
+{shipout}
+[150
+Envelope spec at line 182:
+(10,5) % beginning with offset (-2.5,-0.5)
+ ..controls (10,5) and (10,5)
+ ..(10,5) % counterclockwise to offset (-2.5,-0.5)
+ & cycle
+
+Envelope spec at line 182:
+(10,5) % beginning with offset (-2.5,-0.5)
+ ..controls (10,5) and (10,5)
+ ..(10,5) % counterclockwise to offset (-2.5,-0.5)
+ & cycle
+
+Envelope spec at line 182:
+(5,10) % beginning with offset (2.5,0.5)
+ ..controls (5,11.66667) and (5,13.33333)
+ ..(5,15) % counterclockwise to offset (-2.5,-0.5)
+ ..controls (5,13.33333) and (5,11.66667)
+ ..(5,10) % counterclockwise to offset (2.5,0.5)
+ & cycle
+
+Envelope spec at line 182:
+(0,0) % beginning with offset (0,-5)
+ ..controls (10,10) and (10,10)
+ ..(10,10) % counterclockwise to offset (0,5)
+ ..controls (6.66667,13.33333) and (3.33333,16.66667)
+ ..(0,20) % clockwise to offset (0,-5)
+ ..controls (10,16.66667) and (20,13.33333)
+ ..(30,10) % counterclockwise to offset (0,5)
+ ..controls (20,13.33333) and (10,16.66667)
+ ..(0,20) % counterclockwise to offset (0,-5)
+ ..controls (3.33333,16.66667) and (6.66667,13.33333)
+ ..(10,10) % clockwise to offset (0,5)
+ ..controls (10,10) and (10,10)
+ ..(0,0) % counterclockwise to offset (0,-5)
+ & cycle
+
+]
+Edge structure at line 182 (just shipped out):
+Filled contour :
+(10,5)..controls (10,5) and (10,5)
+ ..cycle
+mitered joins limited 10 with pen
+(-2.5,-0.5)
+ .. (-1,-2)
+ .. (0,-2.5)
+ .. (1,-2)
+ .. (2,-1)
+ .. (2.5,0.5)
+ .. (1,2)
+ .. (0,2.5)
+ .. (-1,2)
+ .. (-2,1)
+ .. cycle
+Filled pen stroke :
+(5,10)..controls (5,11.66667) and (5,13.33333)
+ ..(5,15)
+square ends, mitered joins limited 10 with pen
+(-2.5,-0.5)
+ .. (-1,-2)
+ .. (0,-2.5)
+ .. (1,-2)
+ .. (2,-1)
+ .. (2.5,0.5)
+ .. (1,2)
+ .. (0,2.5)
+ .. (-1,2)
+ .. (-2,1)
+ .. cycle
+Filled pen stroke :
+(0,0)..controls (10,10) and (10,10)
+ ..(10,10)..controls (6.66667,13.33333) and (3.33333,16.66667)
+ ..(0,20)..controls (10,16.66667) and (20,13.33333)
+ ..(30,10)
+square ends, mitered joins limited 10 with pen
+(0,-5)
+ .. (0,5)
+ .. cycle
+End edges
+
+{for}
+{sqrt(-1)}
+! Square root of -1 has been replaced by 0.
+l.183 for @=angle(sqrt$,
+ mlog$):charext:=uniformdeviate$;charh...
+Since I don't take square roots of negative numbers,
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{mlog(-1)}
+! Logarithm of -1 has been replaced by 0.
+l.183 for @=angle(sqrt$,mlog$)
+ :charext:=uniformdeviate$;charh...
+Since I don't take logs of non-positive numbers,
+I'm zeroing this one. Proceed, with fingers crossed.
+
+{angle((0,0))}
+! angle(0,0) is taken as zero.
+l.183 for @=angle(sqrt$,mlog$):
+ charext:=uniformdeviate$;charh...
+The `angle' between two identical points is undefined.
+I'm zeroing this one. Proceed, with fingers crossed.
+
+Runaway loop?
+charext:=uniformdeviate$;charht:=2048;addto.e3contour( ETC.
+! Forbidden token found while scanning the text of a for loop.
+<inserted text>
+ endfor
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+I suspect you have forgotten an `endfor',
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{loop value=0}
+{uniformdeviate(-1)}
+{charext:=-0.00507}
+{charht:=2048}
+{addto}
+{-(100)}
+{-(99)}
+Path at line 206, before choices:
+(0,-100)..tension 500
+ ..(100,-99)..tension 3000
+ ..cycle
+
+Path at line 206, after choices:
+(0,-100)..controls (-36.92659,-103.51175) and (136.98943,-101.7726)
+ ..(100,-99)..controls (99.9889,-98.99916) and (0.01108,-99.99895)
+ ..cycle
+
+{tracingoutput:=0}
+{special}
+{charcode:=151}
+{shipout}
+! Enormous charht has been reduced.
+<to be read again>
+ ;
+<for(0)> ...ode:=151;shipout.e3;
+ interim.char99="c";true=false...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+Font metric dimensions must be less than 2048pt.
+
+[151
+Envelope spec at line 206:
+(0,0) % beginning with offset (-1,-2)
+ ..controls (0.04324,-0.04068) and (0.08835,-0.07198)
+ ..(0.13504,-0.09532) % counterclockwise to offset (0,-2.5)
+ ..controls (0.64822,-0.3519) and (1.35178,0.35191)
+ ..(1.86496,0.09532) % clockwise to offset (-1,-2)
+ ..controls (1.91165,0.07198) and (1.95676,0.04068)
+ ..(2,0)
+ ..controls (2.00706,-0.00664) and (2.01395,-0.01332)
+ ..(2.02066,-0.02003) % clockwise to offset (-2.5,-0.5)
+ ..controls (2.2398,-0.23918) and (2.27596,-0.49583)
+ ..(2.2023,-0.71681) % clockwise to offset (-2,1)
+ ..controls (2.16501,-0.82869) and (2.09958,-0.93141)
+ ..(2.01549,-1.0155) % clockwise to offset (-1,2)
+ ..controls (1.95589,-1.0751) and (1.88692,-1.12534)
+ ..(1.81195,-1.16281) % clockwise to offset (0,2.5)
+ ..controls (1.63397,-1.2518) and (1.42226,-1.26889)
+ ..(1.22209,-1.16881) % clockwise to offset (1,2)
+ ..controls (1.15273,-1.13412) and (1.08475,-1.08539)
+ ..(1.02003,-1.02068) % clockwise to offset (2.5,0.5)
+ ..controls (1.01332,-1.01396) and (1.00664,-1.00706)
+ ..(1,-1)
+ ..controls (0.78389,-0.77028) and (0.83284,-0.488)
+ ..(0.93013,-0.19617) % clockwise to offset (2,-1)
+ ..controls (0.97351,-0.06602) and (1.0265,0.06602)
+ ..(1.06989,0.19617) % counterclockwise to offset (2.5,0.5)
+ ..controls (1.16716,0.488) and (1.21611,0.77028)
+ ..(1,1)
+ ..controls (0.99336,1.00706) and (0.98668,1.01395)
+ ..(0.97997,1.02066) % counterclockwise to offset (1,2)
+ ..controls (0.91525,1.08537) and (0.84727,1.13412)
+ ..(0.77791,1.16881) % counterclockwise to offset (0,2.5)
+ ..controls (0.57773,1.26889) and (0.36601,1.2518)
+ ..(0.18803,1.16281) % counterclockwise to offset (-1,2)
+ ..controls (0.11307,1.12534) and (0.0441,1.0751)
+ ..(-0.0155,1.0155) % counterclockwise to offset (-2,1)
+ ..controls (-0.09958,0.93141) and (-0.16502,0.82869)
+ ..(-0.20232,0.71681) % counterclockwise to offset (-2.5,-0.5)
+ ..controls (-0.27597,0.49583) and (-0.2398,0.2392)
+ ..(-0.02066,0.02003) % counterclockwise to offset (-1,-2)
+ ..controls (-0.01395,0.01332) and (-0.00706,0.00664)
+ ..(0,0)
+ & cycle
+
+Envelope spec at line 206:
+(0,0) % beginning with offset (1,2)
+ ..controls (-0.00706,0.00664) and (-0.01395,0.01332)
+ ..(-0.02066,0.02003) % clockwise to offset (2.5,0.5)
+ ..controls (-0.2398,0.23918) and (-0.27596,0.49583)
+ ..(-0.2023,0.71681) % clockwise to offset (2,-1)
+ ..controls (-0.16501,0.82869) and (-0.09958,0.93141)
+ ..(-0.01549,1.0155) % clockwise to offset (1,-2)
+ ..controls (0.04411,1.0751) and (0.11308,1.12534)
+ ..(0.18805,1.16281) % clockwise to offset (0,-2.5)
+ ..controls (0.36603,1.2518) and (0.57774,1.26889)
+ ..(0.77791,1.16881) % clockwise to offset (-1,-2)
+ ..controls (0.84727,1.13412) and (0.91525,1.08539)
+ ..(0.97997,1.02068) % clockwise to offset (-2.5,-0.5)
+ ..controls (0.98668,1.01396) and (0.99336,1.00706)
+ ..(1,1)
+ ..controls (1.21611,0.77028) and (1.16716,0.488)
+ ..(1.06987,0.19617) % clockwise to offset (-2,1)
+ ..controls (1.02649,0.06602) and (0.9735,-0.06602)
+ ..(0.93011,-0.19617) % counterclockwise to offset (-2.5,-0.5)
+ ..controls (0.83284,-0.488) and (0.78389,-0.77028)
+ ..(1,-1)
+ ..controls (1.00664,-1.00706) and (1.01332,-1.01395)
+ ..(1.02003,-1.02066) % counterclockwise to offset (-1,-2)
+ ..controls (1.08475,-1.08537) and (1.15273,-1.13412)
+ ..(1.22209,-1.16881) % counterclockwise to offset (0,-2.5)
+ ..controls (1.42227,-1.26889) and (1.63399,-1.2518)
+ ..(1.81197,-1.16281) % counterclockwise to offset (1,-2)
+ ..controls (1.88693,-1.12534) and (1.9559,-1.0751)
+ ..(2.0155,-1.0155) % counterclockwise to offset (2,-1)
+ ..controls (2.09958,-0.93141) and (2.16502,-0.82869)
+ ..(2.20232,-0.71681) % counterclockwise to offset (2.5,0.5)
+ ..controls (2.27597,-0.49583) and (2.2398,-0.2392)
+ ..(2.02066,-0.02003) % counterclockwise to offset (1,2)
+ ..controls (2.01395,-0.01332) and (2.00706,-0.00664)
+ ..(2,0)
+ ..controls (1.95676,0.04068) and (1.91165,0.07198)
+ ..(1.86496,0.09532) % counterclockwise to offset (0,2.5)
+ ..controls (1.35178,0.3519) and (0.64822,-0.35191)
+ ..(0.13504,-0.09532) % clockwise to offset (1,2)
+ ..controls (0.08835,-0.07198) and (0.04324,-0.04068)
+ ..(0,0)
+ & cycle
+
+Envelope spec at line 206:
+(0,0) % beginning with offset (1,-2)
+ ..controls (0.17854,0.17854) and (0.38548,0.31178)
+ ..(0.60698,0.42253) % clockwise to offset (0,-2.5)
+ ..controls (1.04999,0.64404) and (1.55122,0.77562)
+ ..(1.99995,1) % counterclockwise to offset (1,-2)
+ ..controls (1.99997,1) and (1.99998,1)
+ ..(2,1) % counterclockwise to offset (-1,2)
+ ..controls (1.99998,1) and (1.99997,1)
+ ..(1.99995,1) % clockwise to offset (0,2.5)
+ ..controls (1.55122,0.77562) and (1.05,0.64404)
+ ..(0.607,0.42253) % counterclockwise to offset (-1,2)
+ ..controls (0.3855,0.31178) and (0.17856,0.17856)
+ ..(0,0) % counterclockwise to offset (1,-2)
+ & cycle
+
+Envelope spec at line 206:
+(0,257) % beginning with offset (-1,-2)
+ ..controls (0.04324,256.95932) and (0.08835,256.92802)
+ ..(0.13504,256.90468) % counterclockwise to offset (0,-2.5)
+ ..controls (0.64822,256.6481) and (1.35178,257.35191)
+ ..(1.86496,257.09532) % clockwise to offset (-1,-2)
+ ..controls (1.91165,257.07198) and (1.95676,257.04068)
+ ..(2,257)
+ ..controls (2.00706,256.99336) and (2.01395,256.98668)
+ ..(2.02066,256.97997) % clockwise to offset (-2.5,-0.5)
+ ..controls (2.2398,256.76082) and (2.27596,256.50417)
+ ..(2.2023,256.28319) % clockwise to offset (-2,1)
+ ..controls (2.16501,256.17131) and (2.09958,256.06859)
+ ..(2.01549,255.9845) % clockwise to offset (-1,2)
+ ..controls (1.95589,255.9249) and (1.88692,255.87466)
+ ..(1.81195,255.83719) % clockwise to offset (0,2.5)
+ ..controls (1.63397,255.7482) and (1.42226,255.73111)
+ ..(1.22209,255.83119) % clockwise to offset (1,2)
+ ..controls (1.15273,255.86588) and (1.08475,255.91461)
+ ..(1.02003,255.97932) % clockwise to offset (2.5,0.5)
+ ..controls (1.01332,255.98604) and (1.00664,255.99294)
+ ..(1,256)
+ ..controls (0.78389,256.22972) and (0.83284,256.512)
+ ..(0.93013,256.80383) % clockwise to offset (2,-1)
+ ..controls (0.97351,256.93398) and (1.0265,257.06602)
+ ..(1.06989,257.19617) % counterclockwise to offset (2.5,0.5)
+ ..controls (1.16716,257.488) and (1.21611,257.77028)
+ ..(1,258)
+ ..controls (0.99336,258.00706) and (0.98668,258.01395)
+ ..(0.97997,258.02066) % counterclockwise to offset (1,2)
+ ..controls (0.91525,258.08537) and (0.84727,258.13412)
+ ..(0.77791,258.16881) % counterclockwise to offset (0,2.5)
+ ..controls (0.57773,258.26889) and (0.36601,258.2518)
+ ..(0.18803,258.16281) % counterclockwise to offset (-1,2)
+ ..controls (0.11307,258.12534) and (0.0441,258.0751)
+ ..(-0.0155,258.0155) % counterclockwise to offset (-2,1)
+ ..controls (-0.09958,257.93141) and (-0.16502,257.82869)
+ ..(-0.20232,257.71681) % counterclockwise to offset (-2.5,-0.5)
+ ..controls (-0.27597,257.49583) and (-0.2398,257.2392)
+ ..(-0.02066,257.02003) % counterclockwise to offset (-1,-2)
+ ..controls (-0.01395,257.01332) and (-0.00706,257.00664)
+ ..(0,257)
+ & cycle
+
+Envelope spec at line 206:
+(0,257) % beginning with offset (1,2)
+ ..controls (-0.00706,257.00664) and (-0.01395,257.01332)
+ ..(-0.02066,257.02003) % clockwise to offset (2.5,0.5)
+ ..controls (-0.2398,257.23918) and (-0.27596,257.49583)
+ ..(-0.2023,257.71681) % clockwise to offset (2,-1)
+ ..controls (-0.16501,257.82869) and (-0.09958,257.93141)
+ ..(-0.01549,258.0155) % clockwise to offset (1,-2)
+ ..controls (0.04411,258.0751) and (0.11308,258.12534)
+ ..(0.18805,258.16281) % clockwise to offset (0,-2.5)
+ ..controls (0.36603,258.2518) and (0.57774,258.26889)
+ ..(0.77791,258.16881) % clockwise to offset (-1,-2)
+ ..controls (0.84727,258.13412) and (0.91525,258.08539)
+ ..(0.97997,258.02068) % clockwise to offset (-2.5,-0.5)
+ ..controls (0.98668,258.01396) and (0.99336,258.00706)
+ ..(1,258)
+ ..controls (1.21611,257.77028) and (1.16716,257.488)
+ ..(1.06987,257.19617) % clockwise to offset (-2,1)
+ ..controls (1.02649,257.06602) and (0.9735,256.93398)
+ ..(0.93011,256.80383) % counterclockwise to offset (-2.5,-0.5)
+ ..controls (0.83284,256.512) and (0.78389,256.22972)
+ ..(1,256)
+ ..controls (1.00664,255.99294) and (1.01332,255.98605)
+ ..(1.02003,255.97934) % counterclockwise to offset (-1,-2)
+ ..controls (1.08475,255.91463) and (1.15273,255.86588)
+ ..(1.22209,255.83119) % counterclockwise to offset (0,-2.5)
+ ..controls (1.42227,255.73111) and (1.63399,255.7482)
+ ..(1.81197,255.83719) % counterclockwise to offset (1,-2)
+ ..controls (1.88693,255.87466) and (1.9559,255.9249)
+ ..(2.0155,255.9845) % counterclockwise to offset (2,-1)
+ ..controls (2.09958,256.06859) and (2.16502,256.17131)
+ ..(2.20232,256.28319) % counterclockwise to offset (2.5,0.5)
+ ..controls (2.27597,256.50417) and (2.2398,256.7608)
+ ..(2.02066,256.97997) % counterclockwise to offset (1,2)
+ ..controls (2.01395,256.98668) and (2.00706,256.99336)
+ ..(2,257)
+ ..controls (1.95676,257.04068) and (1.91165,257.07198)
+ ..(1.86496,257.09532) % counterclockwise to offset (0,2.5)
+ ..controls (1.35178,257.3519) and (0.64822,256.64809)
+ ..(0.13504,256.90468) % clockwise to offset (1,2)
+ ..controls (0.08835,256.92802) and (0.04324,256.95932)
+ ..(0,257)
+ & cycle
+
+Envelope spec at line 206:
+(0,257) % beginning with offset (1,-2)
+ ..controls (0.17854,257.17854) and (0.38548,257.31178)
+ ..(0.60698,257.42253) % clockwise to offset (0,-2.5)
+ ..controls (1.04999,257.64404) and (1.55122,257.77562)
+ ..(1.99995,258) % counterclockwise to offset (1,-2)
+ ..controls (1.99997,258) and (1.99998,258)
+ ..(2,258) % counterclockwise to offset (-1,2)
+ ..controls (1.99998,258) and (1.99997,258)
+ ..(1.99995,258) % clockwise to offset (0,2.5)
+ ..controls (1.55122,257.77562) and (1.05,257.64404)
+ ..(0.607,257.42253) % counterclockwise to offset (-1,2)
+ ..controls (0.3855,257.31178) and (0.17856,257.17856)
+ ..(0,257) % counterclockwise to offset (1,-2)
+ & cycle
+
+]
+{interim}
+! The token `char' isn't an internal quantity.
+<to be read again>
+ char
+<for(0)> ...pout.e3;interim.char
+ 99="c";true=false;show.penoff...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+Something like `tracingonline' should follow `interim'.
+
+{char(99)}
+{("c")=("c")}
+! Redundant equation.
+<to be read again>
+ ;
+<for(0)> ...;interim.char99="c";
+ true=false;show.penoffset(2,1...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+I already knew that this equation was true.
+But perhaps no harm has been done; let's continue.
+
+{true}
+{false}
+{(true)=(false)}
+! Inconsistent equation.
+<to be read again>
+ ;
+<for(0)> ...ar99="c";true=false;
+ show.penoffset(2,1)of.qq;show...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+The equation I just read contradicts what was said before.
+But don't worry; continue and I'll just ignore it.
+
+{show}
+{((2,1))penoffset(pen)}
+>> (0,-2.5)
+{showstats}
+Memory usage 2744&607 (39 still untouched)
+String usage 73&279 (1138&8717 now untouched)
+{let}
+{showtoken}
+> f=tag
+{showstats}
+Memory usage 2704&536 (39 still untouched)
+String usage 73&279 (1138&8717 now untouched)
+{nullpicture}
+{(unknown picture e17)=(picture)}
+{addto}
+{-(4)}
+{-(5)}
+Path at line 206, before choices:
+(-4,-5){curl 1}
+ ..{curl 1}(6,5)
+
+Path at line 206, after choices:
+(-4,-5)..controls (-0.66667,-1.66667) and (2.66667,1.66667)
+ ..(6,5)
+
+{setbounds}
+{pencircle}
+{(pen)scaled(9)}
+{makepath(pen)}
+{show}
+{llcorner(picture)}
+>> (-4.5,-4.5)
+{urcorner(picture)}
+>> (4.5,4.5)
+{addto}
+{-(5)}
+{-(5)}
+{(picture)shifted((-5,-5))}
+{show}
+{llcorner(picture)}
+>> (-9.5,-9.5)
+{truecorners:=2}
+{show}
+{llcorner(picture)}
+>> (-9,-10)
+{-(1)}
+{truecorners:=-1}
+{setbounds}
+{pencircle}
+{(pen)xscaled(19)}
+{makepath(pen)}
+{addto}
+{-(5)}
+{-(10)}
+{(picture)shifted((-5,-10))}
+{show}
+{llcorner(picture)}
+>> (-14.5,-10.5)
+>> Edge structure at line 206:
+Filled contour :
+(10,5)..controls (10,5) and (10,5)
+ ..cycle
+mitered joins limited 10 with pen
+(-2.5,-0.5)
+ .. (-1,-2)
+ .. (0,-2.5)
+ .. (1,-2)
+ .. (2,-1)
+ .. (2.5,0.5)
+ .. (1,2)
+ .. (0,2.5)
+ .. (-1,2)
+ .. (-2,1)
+ .. cycle
+Filled pen stroke :
+(5,10)..controls (5,11.66667) and (5,13.33333)
+ ..(5,15)
+square ends, mitered joins limited 10 with pen
+(-2.5,-0.5)
+ .. (-1,-2)
+ .. (0,-2.5)
+ .. (1,-2)
+ .. (2,-1)
+ .. (2.5,0.5)
+ .. (1,2)
+ .. (0,2.5)
+ .. (-1,2)
+ .. (-2,1)
+ .. cycle
+Filled pen stroke :
+(0,0)..controls (10,10) and (10,10)
+ ..(10,10)..controls (6.66667,13.33333) and (3.33333,16.66667)
+ ..(0,20)..controls (10,16.66667) and (20,13.33333)
+ ..(30,10)
+square ends, mitered joins limited 10 with pen
+(0,-5)
+ .. (0,5)
+ .. cycle
+setbounds path:
+(-0.5,-5)..controls (-0.5,-3.80652) and (-0.9741,-2.66194)
+ ..(-1.81802,-1.81802)..controls (-2.66194,-0.9741) and (-3.80652,-0.5)
+ ..(-5,-0.5)..controls (-6.19348,-0.5) and (-7.33806,-0.9741)
+ ..(-8.18198,-1.81802)..controls (-9.0259,-2.66194) and (-9.5,-3.80652)
+ ..(-9.5,-5)..controls (-9.5,-6.19348) and (-9.0259,-7.33806)
+ ..(-8.18198,-8.18198)..controls (-7.33806,-9.0259) and (-6.19348,-9.5)
+ ..(-5,-9.5)..controls (-3.80652,-9.5) and (-2.66194,-9.0259)
+ ..(-1.81802,-8.18198)..controls (-0.9741,-7.33806) and (-0.5,-6.19348)
+ ..cycle
+Filled pen stroke :
+(-9,-10)..controls (-5.66667,-6.66667) and (-2.33333,-3.33333)
+ ..(1,0)
+square ends, mitered joins limited 10 with pen
+pencircle transformed (0,0,0,0,0,0)
+end of setbounds
+setbounds path:
+(4.5,-10)..controls (4.5,-9.86739) and (3.49911,-9.74022)
+ ..(1.71751,-9.64645)..controls (-0.06409,-9.55269) and (-2.48044,-9.5)
+ ..(-5,-9.5)..controls (-7.51956,-9.5) and (-9.93591,-9.55269)
+ ..(-11.71751,-9.64645)..controls (-13.49911,-9.74022) and (-14.5,-9.867
+39)
+ ..(-14.5,-10)..controls (-14.5,-10.13261) and (-13.49911,-10.25978)
+ ..(-11.71751,-10.35355)..controls (-9.93591,-10.44731) and (-7.51956,-1
+0.5)
+ ..(-5,-10.5)..controls (-2.48044,-10.5) and (-0.06409,-10.44731)
+ ..(1.71751,-10.35355)..controls (3.49911,-10.25978) and (4.5,-10.13261)
+ ..cycle
+setbounds path:
+(-0.5,-10)..controls (-0.5,-8.80652) and (-0.9741,-7.66194)
+ ..(-1.81802,-6.81802)..controls (-2.66194,-5.9741) and (-3.80652,-5.5)
+ ..(-5,-5.5)..controls (-6.19348,-5.5) and (-7.33806,-5.9741)
+ ..(-8.18198,-6.81802)..controls (-9.0259,-7.66194) and (-9.5,-8.80652)
+ ..(-9.5,-10)..controls (-9.5,-11.19348) and (-9.0259,-12.33806)
+ ..(-8.18198,-13.18198)..controls (-7.33806,-14.0259) and (-6.19348,-14.
+5)
+ ..(-5,-14.5)..controls (-3.80652,-14.5) and (-2.66194,-14.0259)
+ ..(-1.81802,-13.18198)..controls (-0.9741,-12.33806) and (-0.5,-11.1934
+8)
+ ..cycle
+Filled pen stroke :
+(-9,-15)..controls (-5.66667,-11.66667) and (-2.33333,-8.33333)
+ ..(1,-5)
+square ends, mitered joins limited 10 with pen
+pencircle transformed (0,0,0,0,0,0)
+end of setbounds
+end of setbounds
+End edges
+
+{pencircle}
+{urcorner(pen)}
+>> (0.5,0.5)
+{nullpicture}
+{e5:=picture}
+{path}
+{pencircle}
+{(pen)scaled(100)}
+{makepath(pen)}
+{(unknown path ap1)=(path)}
+{-(14)}
+{-(7)}
+Path at line 206, before choices:
+(2,-14)..controls (14,-7) and (14,7)
+ ..(2,14)
+
+Path at line 206, after choices:
+(2,-14)..controls (14,-7) and (14,7)
+ ..(2,14)
+
+{(unknown path ap2)=(path)}
+{-(50)}
+{-(50)}
+Path at line 206, before choices:
+(-50,0)..controls (-50,0) and (-50,0)
+ ..(50,0)
+
+Path at line 206, after choices:
+(-50,0)..controls (-50,0) and (-50,0)
+ ..(50,0)
+
+{(unknown path ap3)=(path)}
+{show}
+{(path)scaled(1000)}
+{arclength(path)}
+! Arithmetic overflow.
+<for(0)> ...ngth(ap2scaled1000),
+ arclength(ap3scaled200);show....
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+{(path)scaled(200)}
+{arclength(path)}
+! Arithmetic overflow.
+<for(0)> ...ength(ap3scaled200);
+ show.arclength.ap1,arclength....
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+{show}
+{arclength(path)}
+>> 314.15979
+{arclength(path)}
+>> 34.88
+{show}
+{(6.4)arctime(path)}
+>> 0.4
+{(37)arctime(path)}
+{((0,0.7179))subpath(path)}
+{arclength(path)}
+>> 36.99847
+{show}
+{-(1000)}
+{(-1000)arctime(path)}
+>> -25.46454
+{-(3)}
+{(-3)arctime(path)}
+>> 0
+{(path)scaled(0.00002)}
+{(314)arctime(path)}
+! Arithmetic overflow.
+<for(0)> ...f(ap1scaled0.00002);
+ [[clear(tracingcommands);char...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+{begingroup}
+
+clear(TEXT0)->interim(TEXT0):=$
+(TEXT0)<-tracingcommands
+{interim}
+{tracingcommands:=-1}
+! Enormous charht has been reduced.
+<to be read again>
+ ;
+<for(0)> ...shipout.nullpicture;
+ "careful"for.for=(EXPR0)step2...
+<inserted text> endfor
+
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+Font metric dimensions must be less than 2048pt.
+
+[0]
+careful METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT M
+ETAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT M
+ETAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT M
+ETAFONT METAFONT METAFONT METAFONT
+{restoring tracingcommands=2.1}
+{endgroup}
+{scrollmode}
+
+{char(31)}
+{("hello again")&("^^_")}
+hello again^^_
+{save}
+### -0.45p3~=-alpha+7
+{def}
+{begingroup}
+{tracingonline:=1}
+
+{tracingonline:=1}
+
+f<expr>->let)=];let[=(;show._
+(EXPR0)<-xx
+{let}
+{let}
+{show}
+>> _1
+{showdependencies}
+xpart '=-ypart '-0.66667
+{qq:=pen}
+{showstats}
+Memory usage 2147&536 (39 still untouched)
+String usage 73&277 (1110&5373 now untouched)
+{[repeat the loop]}
+>> bye
+! Isolated expression.
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+I couldn't find an `=' or `:=' after the
+expression that is shown above this error message,
+so I guess I'll just ignore it and carry on.
+
+! Extra tokens will be flushed.
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+! Forbidden token found while scanning to the end of the statement.
+<inserted text>
+ ;
+<to be read again>
+ endtext
+l.206 ... showstats; bye endtext
+
+A previous error seems to have propagated,
+causing me to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+{show}
+)
+*end
+! An expression can't begin with `end'.
+<inserted text>
+ 0
+<to be read again>
+ end
+<*> end
+
+I'm afraid I need some sort of value in order to continue,
+so I've tentatively inserted `0'. You may want to
+delete this zero and insert something else;
+see Chapter 27 of The METAFONTbook for an example.
+
+>> 0
+! A group begun on line 206 never ended.
+<to be read again>
+ end
+<*> end
+
+I saw a `begingroup' back there that hasn't been matched
+by `endgroup'. So I've inserted `endgroup' now.
+
+{endgroup}
+(end occurred when else on line 88 was incomplete)
+(end occurred when if on line 37 was incomplete)
+(end occurred when elseif on line 22 was incomplete)
+Here is how much of MetaPost's memory you used:
+ 75 strings out of 1277
+ 768 string characters out of 9330
+ 4462 words of memory out of 4501
+ 337 symbolic tokens out of 2100
+ 8i,35n,8p,167b stack positions out of 30i,100n,150p,500b
+ 0 string compactions (moved 0 characters, 0 strings)
+
+(illegal design size has been changed to 128pt)
+(some chardp values had to be adjusted by as much as 0.5pt)
+(local label 0:: was missing)
+(local label 5:: was missing)
+(4 font metric dimensions had to be decreased)
+(You used 3w,2h,16d,2i,312l,301k,1e,10p metric file positions
+ out of 256w,16h,16d,64i,5000l,500k,256e,50p)
+
+Font metrics written on trap.tfm.
+25 output files written: trap.ps .. trap.200
diff --git a/Build/source/texk/web2c/triptrap/mptrap.pl b/Build/source/texk/web2c/triptrap/mptrap.pl
new file mode 100644
index 00000000000..9664eb98128
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mptrap.pl
@@ -0,0 +1,520 @@
+(CODINGSCHEME Q)
+(DESIGNSIZE R 128.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 3745422316)
+(FONTDIMEN
+ (SLANT R 2047.999999)
+ (SPACE R 0.0)
+ (STRETCH R 0.0)
+ (SHRINK R 0.0)
+ (XHEIGHT R 0.0)
+ (QUAD R 0.0)
+ (EXTRASPACE R 0.0)
+ (PARAMETER D 8 R 0.0)
+ (PARAMETER D 9 R 0.005208)
+ (PARAMETER D 10 R 0.0)
+ )
+(BOUNDARYCHAR O 377)
+(LIGTABLE
+ (COMMENT THIS PART OF THE PROGRAM IS NEVER USED!
+ )
+ (LABEL BOUNDARYCHAR)
+ (/LIG/>> O 377 O 0)
+ (KRN O 0 R 0.0)
+ (KRN O 0 R 0.0078125)
+ (KRN O 0 R 0.015625)
+ (KRN O 0 R 0.0234375)
+ (KRN O 0 R 0.03125)
+ (KRN O 0 R 0.0390625)
+ (KRN O 0 R 0.046875)
+ (KRN O 0 R 0.0546875)
+ (KRN O 0 R 0.0625)
+ (KRN O 0 R 0.0703125)
+ (KRN O 0 R 0.078125)
+ (KRN O 0 R 0.0859375)
+ (KRN O 0 R 0.09375)
+ (KRN O 0 R 0.1015625)
+ (KRN O 0 R 0.109375)
+ (KRN O 0 R 0.1171875)
+ (KRN O 0 R 0.125)
+ (KRN O 0 R 0.1328125)
+ (KRN O 0 R 0.140625)
+ (KRN O 0 R 0.1484375)
+ (KRN O 0 R 0.15625)
+ (KRN O 0 R 0.1640625)
+ (KRN O 0 R 0.171875)
+ (KRN O 0 R 0.1796875)
+ (KRN O 0 R 0.1875)
+ (KRN O 0 R 0.1953125)
+ (KRN O 0 R 0.203125)
+ (KRN O 0 R 0.2109375)
+ (KRN O 0 R 0.21875)
+ (KRN O 0 R 0.2265625)
+ (KRN O 0 R 0.234375)
+ (KRN O 0 R 0.2421875)
+ (KRN O 0 R 0.25)
+ (KRN O 0 R 0.2578125)
+ (KRN O 0 R 0.265625)
+ (KRN O 0 R 0.2734375)
+ (KRN O 0 R 0.28125)
+ (KRN O 0 R 0.2890625)
+ (KRN O 0 R 0.296875)
+ (KRN O 0 R 0.3046875)
+ (KRN O 0 R 0.3125)
+ (KRN O 0 R 0.3203125)
+ (KRN O 0 R 0.328125)
+ (KRN O 0 R 0.3359375)
+ (KRN O 0 R 0.34375)
+ (KRN O 0 R 0.3515625)
+ (KRN O 0 R 0.359375)
+ (KRN O 0 R 0.3671875)
+ (KRN O 0 R 0.375)
+ (KRN O 0 R 0.3828125)
+ (KRN O 0 R 0.390625)
+ (KRN O 0 R 0.3984375)
+ (KRN O 0 R 0.40625)
+ (KRN O 0 R 0.4140625)
+ (KRN O 0 R 0.421875)
+ (KRN O 0 R 0.4296875)
+ (KRN O 0 R 0.4375)
+ (KRN O 0 R 0.4453125)
+ (KRN O 0 R 0.453125)
+ (KRN O 0 R 0.4609375)
+ (SKIP D 1)
+ (LABEL C g)
+ (LIG/ C g O 0)
+ (STOP)
+ (KRN O 0 R 0.400782)
+ (KRN O 0 R 0.408594)
+ (KRN O 0 R 0.416407)
+ (KRN O 0 R 0.424219)
+ (KRN O 0 R 0.432032)
+ (KRN O 0 R 0.439844)
+ (KRN O 0 R 0.447657)
+ (KRN O 0 R 0.455469)
+ (KRN O 0 R 0.463282)
+ (KRN O 0 R 0.471094)
+ (KRN O 0 R 0.478907)
+ (KRN O 0 R 0.486719)
+ (KRN O 0 R 0.494532)
+ (KRN O 0 R 0.502344)
+ (KRN O 0 R 0.510157)
+ (KRN O 0 R 0.517969)
+ (KRN O 0 R 0.525782)
+ (KRN O 0 R 0.533594)
+ (KRN O 0 R 0.541407)
+ (KRN O 0 R 0.549219)
+ (KRN O 0 R 0.557032)
+ (KRN O 0 R 0.564844)
+ (KRN O 0 R 0.572657)
+ (KRN O 0 R 0.580469)
+ (KRN O 0 R 0.588282)
+ (KRN O 0 R 0.596094)
+ (KRN O 0 R 0.603907)
+ (KRN O 0 R 0.611719)
+ (KRN O 0 R 0.619532)
+ (KRN O 0 R 0.627344)
+ (KRN O 0 R 0.635157)
+ (KRN O 0 R 0.642969)
+ (KRN O 0 R 0.650782)
+ (KRN O 0 R 0.658594)
+ (KRN O 0 R 0.666407)
+ (KRN O 0 R 0.674219)
+ (KRN O 0 R 0.682032)
+ (KRN O 0 R 0.689844)
+ (KRN O 0 R 0.697657)
+ (KRN O 0 R 0.705469)
+ (KRN O 0 R 0.713282)
+ (KRN O 0 R 0.721094)
+ (KRN O 0 R 0.728907)
+ (KRN O 0 R 0.736719)
+ (KRN O 0 R 0.744532)
+ (KRN O 0 R 0.752344)
+ (KRN O 0 R 0.760157)
+ (KRN O 0 R 0.767969)
+ (KRN O 0 R 0.775782)
+ (KRN O 0 R 0.783594)
+ (KRN O 0 R 0.791407)
+ (KRN O 0 R 0.799219)
+ (KRN O 0 R 0.807032)
+ (KRN O 0 R 0.814844)
+ (KRN O 0 R 0.822657)
+ (KRN O 0 R 0.830469)
+ (KRN O 0 R 0.838282)
+ (KRN O 0 R 0.846094)
+ (KRN O 0 R 0.853907)
+ (KRN O 0 R 0.861719)
+ (SKIP D 1)
+ (LABEL C h)
+ (LABEL C i)
+ (/LIG C i O 0)
+ (STOP)
+ (KRN O 0 R 0.801562)
+ (KRN O 0 R 0.809375)
+ (KRN O 0 R 0.817187)
+ (KRN O 0 R 0.825)
+ (KRN O 0 R 0.832812)
+ (KRN O 0 R 0.840625)
+ (KRN O 0 R 0.848437)
+ (KRN O 0 R 0.85625)
+ (KRN O 0 R 0.864062)
+ (KRN O 0 R 0.871875)
+ (KRN O 0 R 0.879687)
+ (KRN O 0 R 0.8875)
+ (KRN O 0 R 0.895312)
+ (KRN O 0 R 0.903125)
+ (KRN O 0 R 0.910937)
+ (KRN O 0 R 0.91875)
+ (KRN O 0 R 0.926562)
+ (KRN O 0 R 0.934375)
+ (KRN O 0 R 0.942187)
+ (KRN O 0 R 0.95)
+ (KRN O 0 R 0.957812)
+ (KRN O 0 R 0.965625)
+ (KRN O 0 R 0.973437)
+ (KRN O 0 R 0.98125)
+ (KRN O 0 R 0.989062)
+ (KRN O 0 R 0.996875)
+ (KRN O 0 R 1.004687)
+ (KRN O 0 R 1.0125)
+ (KRN O 0 R 1.020312)
+ (KRN O 0 R 1.028125)
+ (KRN O 0 R 1.035937)
+ (KRN O 0 R 1.04375)
+ (KRN O 0 R 1.051562)
+ (KRN O 0 R 1.059375)
+ (KRN O 0 R 1.067187)
+ (KRN O 0 R 1.075)
+ (KRN O 0 R 1.082812)
+ (KRN O 0 R 1.090625)
+ (KRN O 0 R 1.098437)
+ (KRN O 0 R 1.10625)
+ (KRN O 0 R 1.114062)
+ (KRN O 0 R 1.121875)
+ (KRN O 0 R 1.129687)
+ (KRN O 0 R 1.1375)
+ (KRN O 0 R 1.145312)
+ (KRN O 0 R 1.153125)
+ (KRN O 0 R 1.160937)
+ (KRN O 0 R 1.16875)
+ (KRN O 0 R 1.176562)
+ (KRN O 0 R 1.184375)
+ (KRN O 0 R 1.192187)
+ (KRN O 0 R 1.2)
+ (KRN O 0 R 1.207812)
+ (KRN O 0 R 1.215625)
+ (KRN O 0 R 1.223437)
+ (KRN O 0 R 1.23125)
+ (KRN O 0 R 1.239062)
+ (KRN O 0 R 1.246875)
+ (KRN O 0 R 1.254687)
+ (KRN O 0 R 1.2625)
+ (SKIP D 1)
+ (LABEL C j)
+ (/LIG> C j O 0)
+ (SKIP D 123)
+ (KRN O 0 R 1.202344)
+ (KRN O 0 R 1.210156)
+ (KRN O 0 R 1.217969)
+ (KRN O 0 R 1.225781)
+ (KRN O 0 R 1.233594)
+ (KRN O 0 R 1.241406)
+ (KRN O 0 R 1.249219)
+ (KRN O 0 R 1.257031)
+ (KRN O 0 R 1.264844)
+ (KRN O 0 R 1.272656)
+ (KRN O 0 R 1.280469)
+ (KRN O 0 R 1.288281)
+ (KRN O 0 R 1.296094)
+ (KRN O 0 R 1.303906)
+ (KRN O 0 R 1.311719)
+ (KRN O 0 R 1.319531)
+ (KRN O 0 R 1.327344)
+ (KRN O 0 R 1.335156)
+ (KRN O 0 R 1.342969)
+ (KRN O 0 R 1.350781)
+ (KRN O 0 R 1.358594)
+ (KRN O 0 R 1.366406)
+ (KRN O 0 R 1.374219)
+ (KRN O 0 R 1.382031)
+ (KRN O 0 R 1.389844)
+ (KRN O 0 R 1.397656)
+ (KRN O 0 R 1.405469)
+ (KRN O 0 R 1.413281)
+ (KRN O 0 R 1.421094)
+ (KRN O 0 R 1.428906)
+ (KRN O 0 R 1.436719)
+ (KRN O 0 R 1.444531)
+ (KRN O 0 R 1.452344)
+ (KRN O 0 R 1.460156)
+ (KRN O 0 R 1.467969)
+ (KRN O 0 R 1.475781)
+ (KRN O 0 R 1.483594)
+ (KRN O 0 R 1.491406)
+ (KRN O 0 R 1.499219)
+ (KRN O 0 R 1.507031)
+ (KRN O 0 R 1.514844)
+ (KRN O 0 R 1.522656)
+ (KRN O 0 R 1.530469)
+ (KRN O 0 R 1.538281)
+ (KRN O 0 R 1.546094)
+ (KRN O 0 R 1.553906)
+ (KRN O 0 R 1.561719)
+ (KRN O 0 R 1.569531)
+ (KRN O 0 R 1.577344)
+ (KRN O 0 R 1.585156)
+ (KRN O 0 R 1.592969)
+ (KRN O 0 R 1.600781)
+ (KRN O 0 R 1.608594)
+ (KRN O 0 R 1.616406)
+ (KRN O 0 R 1.624219)
+ (KRN O 0 R 1.632031)
+ (KRN O 0 R 1.639844)
+ (KRN O 0 R 1.647656)
+ (KRN O 0 R 1.655469)
+ (KRN O 0 R 1.663281)
+ (SKIP D 1)
+ (LABEL C k)
+ (LIG/> C k O 0)
+ (SKIP D 62)
+ (KRN O 0 R 1.603125)
+ (KRN O 0 R 1.610937)
+ (KRN O 0 R 1.61875)
+ (KRN O 0 R 1.626562)
+ (KRN O 0 R 1.634375)
+ (KRN O 0 R 1.642187)
+ (KRN O 0 R 1.65)
+ (KRN O 0 R 1.657812)
+ (KRN O 0 R 1.665625)
+ (KRN O 0 R 1.673437)
+ (KRN O 0 R 1.68125)
+ (KRN O 0 R 1.689062)
+ (KRN O 0 R 1.696875)
+ (KRN O 0 R 1.704687)
+ (KRN O 0 R 1.7125)
+ (KRN O 0 R 1.720312)
+ (KRN O 0 R 1.728125)
+ (KRN O 0 R 1.735937)
+ (KRN O 0 R 1.74375)
+ (KRN O 0 R 1.751562)
+ (KRN O 0 R 1.759375)
+ (KRN O 0 R 1.767187)
+ (KRN O 0 R 1.775)
+ (KRN O 0 R 1.782812)
+ (KRN O 0 R 1.790625)
+ (KRN O 0 R 1.798437)
+ (KRN O 0 R 1.80625)
+ (KRN O 0 R 1.814062)
+ (KRN O 0 R 1.821875)
+ (KRN O 0 R 1.829687)
+ (KRN O 0 R 1.8375)
+ (KRN O 0 R 1.845312)
+ (KRN O 0 R 1.853125)
+ (KRN O 0 R 1.860937)
+ (KRN O 0 R 1.86875)
+ (KRN O 0 R 1.876562)
+ (KRN O 0 R 1.884375)
+ (KRN O 0 R 1.892187)
+ (KRN O 0 R 1.9)
+ (KRN O 0 R 1.907812)
+ (KRN O 0 R 1.915625)
+ (KRN O 0 R 1.923437)
+ (KRN O 0 R 1.93125)
+ (KRN O 0 R 1.939062)
+ (KRN O 0 R 1.946875)
+ (KRN O 0 R 1.954687)
+ (KRN O 0 R 1.9625)
+ (KRN O 0 R 1.970312)
+ (KRN O 0 R 1.978125)
+ (KRN O 0 R 1.985937)
+ (KRN O 0 R 1.99375)
+ (KRN O 0 R 2.001562)
+ (KRN O 0 R 2.009375)
+ (KRN O 0 R 2.017187)
+ (KRN O 0 R 2.025)
+ (KRN O 0 R 2.032812)
+ (KRN O 0 R 2.040625)
+ (KRN O 0 R 2.048437)
+ (KRN O 0 R 2.05625)
+ (KRN O 0 R 2.064062)
+ (STOP)
+ (LABEL C l)
+ (/LIG/> C l O 0)
+ (SKIP D 1)
+ (LABEL C m)
+ (LIG O 0 O 0)
+ (STOP)
+ (LIG C a C b)
+ (KRN C d R -15.999999)
+ (LABEL C c)
+ (LABEL C d)
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ (STOP)
+ (COMMENT THIS PART OF THE PROGRAM IS NEVER USED!
+ )
+ )
+(CHARACTER O 0
+ (CHARWD R 2.0)
+ (CHARHT R 15.999999)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ (NEXTLARGER O 5)
+ )
+(CHARACTER O 5
+ (CHARWD R 0.0)
+ (CHARDP R 0.0390625)
+ (VARCHAR
+ (TOP O 5)
+ (MID C c)
+ (REP C d)
+ )
+ )
+(CHARACTER O 6
+ (CHARWD R 0.0)
+ (CHARDP R -0.113281)
+ )
+(CHARACTER O 137
+ (CHARWD R 0.0)
+ (CHARDP R 0.1015625)
+ )
+(CHARACTER O 140
+ (CHARWD R 0.0)
+ (CHARDP R 0.089844)
+ )
+(CHARACTER C a
+ (CHARWD R 0.0)
+ (NEXTLARGER C d)
+ )
+(CHARACTER C b
+ (CHARWD R 0.0)
+ (CHARDP R 0.1640625)
+ )
+(CHARACTER C c
+ (CHARWD R 0.0)
+ (CHARDP R -0.011719)
+ (COMMENT
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C d
+ (CHARWD R 0.0)
+ (CHARDP R 0.1328125)
+ (COMMENT
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C e
+ (CHARWD R 0.0)
+ (CHARDP R 0.089844)
+ )
+(CHARACTER C f
+ (CHARWD R 0.0)
+ (CHARDP R 0.0234375)
+ )
+(CHARACTER C g
+ (CHARWD R 0.0)
+ (CHARDP R -0.011719)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (LIG/ C g O 0)
+ )
+ )
+(CHARACTER C h
+ (CHARWD R 0.0)
+ (CHARDP R 0.1953125)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (/LIG C i O 0)
+ )
+ )
+(CHARACTER C i
+ (CHARWD R 0.0)
+ (CHARDP R 0.2421875)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (/LIG C i O 0)
+ )
+ )
+(CHARACTER C j
+ (CHARWD R 0.0)
+ (CHARDP R 0.1484375)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (/LIG> C j O 0)
+ (LIG C a C b)
+ (KRN C d R -15.999999)
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C k
+ (CHARWD R 0.0)
+ (CHARDP R 0.0546875)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (LIG/> C k O 0)
+ (LIG C a C b)
+ (KRN C d R -15.999999)
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C l
+ (CHARWD R 2.0)
+ (CHARDP R 0.1796875)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (/LIG/> C l O 0)
+ (LIG C a C b)
+ (KRN C d R -15.999999)
+ (/LIG/ C e C f)
+ (KRN O 0 R 0.0)
+ )
+ )
+(CHARACTER C m
+ (CHARWD R 2.0)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ (COMMENT
+ (LIG O 0 O 0)
+ )
+ )
+(CHARACTER O 224
+ (CHARWD R 2.0)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ )
+(CHARACTER O 225
+ (CHARWD R 2.0)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ )
+(CHARACTER O 226
+ (CHARWD R 2.0)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ )
+(CHARACTER O 227
+ (CHARWD R 2.0)
+ (CHARHT R 15.999999)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ )
+(CHARACTER O 305
+ (CHARWD R 2.0)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ )
+(CHARACTER O 310
+ (CHARWD R 2.0)
+ (CHARDP R 0.234375)
+ (CHARIC R -7.8125)
+ )
+(CHARACTER O 354
+ (CHARWD R 0.0)
+ (CHARDP R -15.999999)
+ )
diff --git a/Build/source/texk/web2c/triptrap/mptrap.readme b/Build/source/texk/web2c/triptrap/mptrap.readme
new file mode 100644
index 00000000000..c616da724f0
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mptrap.readme
@@ -0,0 +1,50 @@
+The `trap' test for MetaPost is analogous to the similarly named test for
+METAFONT. It requires a special version of inimp with the following constant
+settings:
+ mem_max = 4500+mem_min
+ error_line = 64
+ half_error_line = 32
+ max_print_line = 72
+ mem_top = 4500+mem_min
+The other parameters max_internal, buf_size, etc. are not very important but
+should be left at the values given in mp.web if possible.
+
+The trap test uses mtrap.mp trap.mp, trap.mpx, and trapf.tfm. These four files
+should be in the current directory when running the trap test; the other files in
+this directory should be saved for comparison purposes. Be sure that trap.mpx
+is written more recently than trap.mp so that MetaPost does not try to
+regenerate trap.mpx.
+
+Run the special inimp on mtrap.mp. It should generate mtrap.log, mtrap.0,
+mtrap.1, writeo, and writeo.2. They should almost match the corresponding files
+in this directory except that mtrap.log can have the `allowable differences'
+listed below. (The other output files can only differ in their `%%CreationDate'
+lines.)
+
+Run the special inimp and give it the contents of trap1.in as terminal input.
+This should produce lots of error messages and write a binary file `trap.mem'.
+The resulting trap.log should almost match the trapin.log in this directory.
+
+Now run the special inimp again and give it the contents of trap2.in as terminal
+input. The terminal output should almost match trap.fot and the other files
+written should almost match the versions in this directory. Run the binary
+output file trap.tfm through tftopl and compare the resulting trap.pl with the
+one in this directory.
+
+ Allowable differences
+1. trap.log, trap.ps, and the output files with numeric extensions all contain
+ lines that give the time and date.
+
+2. The capacity values printed out at the end depend on the parameters buf_size,
+ stack_size, etc.
+
+3. The strings `now untouched' statistics may differ due to changes in the
+ number of characters in the date on the first line of the log file. All the
+ string statistics will change if you alter ../mp.ch in a way that changes the
+ string pool.
+
+4. If integer division with negative numbers does not truncate toward zero in
+ your implementation, numeric results will be rounded differently.
+
+5. If for some reason you alter the storage allocation code ../mp.web or ../mp.ch
+ this will change the memory usage statistics and the capsule numbers.
diff --git a/Build/source/texk/web2c/triptrap/mptrap1.in b/Build/source/texk/web2c/triptrap/mptrap1.in
new file mode 100644
index 00000000000..6ecd06836dc
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mptrap1.in
@@ -0,0 +1,3 @@
+
+\input trap
+dump
diff --git a/Build/source/texk/web2c/triptrap/mptrap2.in b/Build/source/texk/web2c/triptrap/mptrap2.in
new file mode 100644
index 00000000000..07f5d4fa469
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mptrap2.in
@@ -0,0 +1,2 @@
+ &trap trap
+end
diff --git a/Build/source/texk/web2c/triptrap/mptrapin.log b/Build/source/texk/web2c/triptrap/mptrapin.log
new file mode 100644
index 00000000000..7642b4ffa0c
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mptrapin.log
@@ -0,0 +1,198 @@
+This is MetaPost, C Version 0.632 (INIMP) 24 JAN 1997 11:13
+**\input trap
+(trap.mp
+>> << == >> ::: ||`` ''--!! ??## && @@ $$[[]]{{ }}((5.5 0.5))
+>> ".."
+! Not implemented: (unknown numeric)++(string).
+<to be read again>
+ ;
+l.4 ...}} . (( 5.5.5 )) ++ "..";
+
+I'm afraid I don't know how to apply that operation to that
+combination of types. Continue, and I'll return the second
+argument (see above) as the result of the operation.
+
+..
+! Missing `=' has been inserted.
+<to be read again>
+ ,
+l.5 begingroup save =; let=,
+ ; save,; newinternal $=,; let )...
+You should have said `let symbol = something'.
+But don't worry; I'll pretend that an equals sign
+was present. The next token I read will be `something'.
+
+> errorstopmode=errorstopmode
+> readstring=readstring
+> 2
+> "2"
+> ,=,
+> (=tag
+> )=,
+<< == >> ::: ||`` ''--!! ??## && @@ $$[[]]{{ }}(([][]))=numeric
+<< == >> ::: ||`` ''--!! ??## && @@ $$[[]]{{ }}((5.5 0.5))=<< == >> :::
+||`` ''--!! ??## && @@ $$[[]]{{ }}((5.5 0.5))
+> year=month
+! OK.
+l.6 ...ring,2,"2",,,(,),<<,year;
+
+
+! Missing `:' has been inserted.
+<to be read again>
+ ;
+l.8 ...not cycle "":1.1 forever;
+ fi;
+The next thing in this loop should have been a `:'.
+So I'll pretend that a colon was present;
+everything from here to `endfor' will be iterated.
+
+{fi}
+{exitif}
+{[repeat the loop]}
+{false}
+{fi}
+{exitif}
+{[repeat the loop]}
+{(2.1)>(2)}
+{true}
+{tracingcommands:=2.1}
+{showtoken}
+> |=:|>=|=:|>
+! OK.
+l.9 ... endfor; showtoken |=:|>;
+
+
+! Arithmetic overflow.
+l.10 ...acinglostchars:=1/.00001
+ ; tracingequations:=$+1; p~=t...
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+{tracinglostchars:=32767.99998}
+{(0)+(1)}
+{tracingequations:=1}
+{(32767.99998)+(0.00002)}
+! Arithmetic overflow.
+l.10 ...tracinglostchars+.00001;
+
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+{(p~)=(32767.99998)}
+## p~=32767.99998
+{interim}
+{tracingmacros:=1}
+{tracingoutput:=1}
+{warningcheck:=1}
+{tracingstats:=1}
+{tracingchoices:=1}
+{tracingspecs:=1}
+{ASCII("")}
+{$:=-1}
+{$:=x}
+>> x
+! Internal quantity `$' must receive a known value.
+<to be read again>
+ ;
+l.12 ...os:=1; $:=ASCII""; $:=x;
+ p~:=p~;
+I can't set an internal quantity to anything but a known
+numeric value, so I'll have to ignore this assignment.
+
+{p~:=32767.99998}
+## p~=32767.99998
+! Value is too large (32767.99998).
+l.12 ...:=ASCII""; $:=x; p~:=p~;
+
+The equation I just processed has given some variable
+a value of 4096 or more. Continue and I'll try to cope
+with that big value; but it might be dangerous.
+(Set warningcheck:=0 to suppress this message.)
+
+{delimiters}
+{delimiters}
+{vardef}
+{def}
+
+foo(TEXT2)->begingroup(TEXT2)endgroup
+(SUFFIX0)<-
+(SUFFIX1)<-foo
+(TEXT2)<-interim.tracinglostchars:=(0.5;show.urcorner("flubo"infont"trap
+f"),2+2
+{begingroup}
+{interim}
+! Missing `)' has been inserted.
+<to be read again>
+ ;
+<argument> ...nglostchars:=(0.5;
+ show.urcorner("flubo"infont"t...
+foo->begingroup(TEXT2)
+ endgroup
+l.17 ),2+2endtext
+ ; for n=tracingspecs step 1 until $:fi end...
+I found no right delimiter to match a left one. So I've
+put one in, behind the scenes; this may fix the problem.
+
+{tracinglostchars:=0.5}
+{show}
+{("flubo")infont("trapf")}
+Missing character: There is no f in font trapf!
+Missing character: There is no l in font trapf!
+Missing character: There is no o in font trapf!
+{urcorner(picture)}
+>> (2.9888,7.97011)
+{(2)+(2)}
+
+>> 4
+! OK.
+<to be read again>
+ endgroup
+l.17 ),2+2endtext
+ ; for n=tracingspecs step 1 until $:fi end...
+
+{restoring tracinglostchars=32767.99998}
+{endgroup}
+{for}
+{showstats}
+Memory usage 292&42 (3418 still untouched)
+String usage 28&93 (1282&9362 now untouched)
+! OK.
+l.17 ...l $:fi endfor showstats;
+
+
+{let}
+{path}
+{-(15)}
+{-(12)}
+Path at line 18, before choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+
+Path at line 18, after choices:
+(0,0)..controls (15,4) and (-15,-12)
+ ..(4,0)
+
+{(unknown path p~)=(path)}
+{everyjob}
+{vardef}
+{let}
+{vardef}
+{def}
+{begingroup}
+{errorstopmode}
+
+{endgroup}
+{elseif}
+{endinput}
+{\}
+)
+*dump
+Beginning to dump on file trap.mem
+ (preloaded mem=trap 97.1.24)
+at most 1226 strings of total length 22670
+398 memory locations dumped; current usage is 318&68
+279 symbolic tokens
diff --git a/Build/source/texk/web2c/triptrap/mtrap.0 b/Build/source/texk/web2c/triptrap/mtrap.0
new file mode 100644
index 00000000000..dacbb18fd9b
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mtrap.0
@@ -0,0 +1,35 @@
+%!PS
+%%BoundingBox: -36 -24 84 84
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%*Font: trapf 9.9628 9.96265 35:c008
+%%EndProlog
+%%Page: 1 1
+gsave newpath 50 0 moveto
+50 13.26082 44.73216 25.97853 35.35535 35.35535 curveto
+25.97853 44.73216 13.26082 50 0 50 curveto
+-13.26082 50 -25.97853 44.73216 -35.35535 35.35535 curveto
+-44.73216 25.97853 -50 13.26082 -50 0 curveto
+-50 -13.26082 -44.73216 -25.97853 -35.35535 -35.35535 curveto
+-25.97853 -44.73216 -13.26082 -50 0 -50 curveto
+13.26082 -50 25.97853 -44.73216 35.35535 -35.35535 curveto
+44.73216 -25.97853 50 -13.26082 50 0 curveto closepath clip
+grestore
+ 0 setgray 0 1 dtransform truncate idtransform setlinewidth pop
+ [] 0 setdash 0 setlinecap 0 setlinejoin 1 setmiterlimit
+newpath 1 1 moveto
+3 2 lineto stroke
+ 0.4 setgray
+newpath -36 -24 moveto
+84 -24 lineto
+0 84 lineto
+ closepath fill
+ 0 setgray
+gsave [0.86601 0.5 -0.5 0.86601 2 3 ] concat 0 0 moveto
+(A56) trapf 9.9628 fshow grestore
+gsave newpath 4 5 moveto
+8 1 lineto
+0.00064 1 scale stroke grestore
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/mtrap.1 b/Build/source/texk/web2c/triptrap/mtrap.1
new file mode 100644
index 00000000000..27b3253f355
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mtrap.1
@@ -0,0 +1,39 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%BoundingBox: -84 -36 24 84
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%%DocumentFonts: trapf
+ /trapf /trapf def
+/fshow {exch findfont exch scalefont setfont show}bind def
+%%EndProlog
+%%Page: 1 1
+gsave newpath 0 50 moveto
+-13.26082 50 -25.97853 44.73216 -35.35535 35.35535 curveto
+-44.73216 25.97853 -50 13.26082 -50 0 curveto
+-50 -13.26082 -44.73216 -25.97853 -35.35535 -35.35535 curveto
+-25.97853 -44.73216 -13.26082 -50 0 -50 curveto
+13.26082 -50 25.97853 -44.73216 35.35535 -35.35535 curveto
+44.73216 -25.97853 50 -13.26082 50 0 curveto
+50 13.26082 44.73216 25.97853 35.35535 35.35535 curveto
+25.97853 44.73216 13.26082 50 0 50 curveto closepath clip
+grestore
+ 0 setgray 1
+ 0 dtransform exch truncate exch idtransform pop setlinewidth
+ [] 0 setdash 0 setlinecap 0 setlinejoin 1 setmiterlimit
+gsave newpath -1 1 moveto
+-2 3 lineto
+[0 1 -1 0 0 0] concat stroke grestore
+ 0.4 setgray
+newpath 24 -36 moveto
+24 84 lineto
+-84 0 lineto
+ closepath fill
+ 0 setgray
+gsave [-0.5 0.86601 -0.86601 -0.5 -3 2 ] concat 0 0 moveto
+(A56) trapf 9.9628 fshow grestore
+gsave newpath -5 4 moveto
+-1 8 lineto
+[0 -0.00064 -1 0 0 0] concat stroke grestore
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/mtrap.log b/Build/source/texk/web2c/triptrap/mtrap.log
new file mode 100644
index 00000000000..171792f0bc8
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mtrap.log
@@ -0,0 +1,1108 @@
+This is MetaPost, C Version 0.64 (INIMP) 28 JAN 1998 11:18
+**mtrap
+(mtrap.mp
+Memory usage 28&13 (3463 still untouched)
+String usage 4&24 (1306&9877 now untouched)
+>> 7629.39453
+>> -7629.39453
+>> 166.74463
+>> -166.74463
+>> -166.74463
+>> 166.74463
+>> 3584.5974
+>> 1
+>> -1
+>> -1
+>> 1
+>> 7629.39455
+>> -7629.39455
+>> 7629.39455
+>> -7629.39455
+>> 7629.39455
+>> -7629.39455
+>> 7629.39453
+>> -7629.39453
+! Arithmetic overflow.
+TS->...roup.show(EXPR2)*(EXPR3),
+ (-(EXPR2))*(EXPR3),(EXPR2)*(-...
+l.24 TS(13107.20000)(2.50000)
+ ; % p*q=2^47-2^15 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(-(EXPR2))*(EXPR3),
+ (EXPR2)*(-(EXPR3)),(-(EXPR2))...
+l.24 TS(13107.20000)(2.50000)
+ ; % p*q=2^47-2^15 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(EXPR2)*(-(EXPR3)),
+ (-(EXPR2))*(-(EXPR3))endgroup
+l.24 TS(13107.20000)(2.50000)
+ ; % p*q=2^47-2^15 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR2))*(-(EXPR3))endgroup
+
+l.24 TS(13107.20000)(2.50000)
+ ; % p*q=2^47-2^15 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+! Arithmetic overflow.
+TS->...roup.show(EXPR2)*(EXPR3),
+ (-(EXPR2))*(EXPR3),(EXPR2)*(-...
+l.25 TS(124.77580)(262.61502)
+ ; % p*q=2^47-2^15+6 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(-(EXPR2))*(EXPR3),
+ (EXPR2)*(-(EXPR3)),(-(EXPR2))...
+l.25 TS(124.77580)(262.61502)
+ ; % p*q=2^47-2^15+6 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(EXPR2)*(-(EXPR3)),
+ (-(EXPR2))*(-(EXPR3))endgroup
+l.25 TS(124.77580)(262.61502)
+ ; % p*q=2^47-2^15+6 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR2))*(-(EXPR3))endgroup
+
+l.25 TS(124.77580)(262.61502)
+ ; % p*q=2^47-2^15+6 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+>> 32767.99998
+>> -32767.99998
+>> -32767.99998
+>> 32767.99998
+! Arithmetic overflow.
+TS->...roup.show(EXPR2)*(EXPR3),
+ (-(EXPR2))*(EXPR3),(EXPR2)*(-...
+l.27 TS(64.03127)(511.75000)
+ ; % p*q=2^47-2^14 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(-(EXPR2))*(EXPR3),
+ (EXPR2)*(-(EXPR3)),(-(EXPR2))...
+l.27 TS(64.03127)(511.75000)
+ ; % p*q=2^47-2^14 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(EXPR2)*(-(EXPR3)),
+ (-(EXPR2))*(-(EXPR3))endgroup
+l.27 TS(64.03127)(511.75000)
+ ; % p*q=2^47-2^14 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR2))*(-(EXPR3))endgroup
+
+l.27 TS(64.03127)(511.75000)
+ ; % p*q=2^47-2^14 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+! Arithmetic overflow.
+TS->...roup.show(EXPR2)*(EXPR3),
+ (-(EXPR2))*(EXPR3),(EXPR2)*(-...
+l.28 TS(39.46178)(830.37315)
+ ; % p*q=2^47-2^14+1 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(-(EXPR2))*(EXPR3),
+ (EXPR2)*(-(EXPR3)),(-(EXPR2))...
+l.28 TS(39.46178)(830.37315)
+ ; % p*q=2^47-2^14+1 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(EXPR2)*(-(EXPR3)),
+ (-(EXPR2))*(-(EXPR3))endgroup
+l.28 TS(39.46178)(830.37315)
+ ; % p*q=2^47-2^14+1 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR2))*(-(EXPR3))endgroup
+
+l.28 TS(39.46178)(830.37315)
+ ; % p*q=2^47-2^14+1 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+! Arithmetic overflow.
+TS->...roup.show(EXPR2)*(EXPR3),
+ (-(EXPR2))*(EXPR3),(EXPR2)*(-...
+l.29 TS(1207.05434)(27.14708)
+ ; % p*q=2^47-2^14-1 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(-(EXPR2))*(EXPR3),
+ (EXPR2)*(-(EXPR3)),(-(EXPR2))...
+l.29 TS(1207.05434)(27.14708)
+ ; % p*q=2^47-2^14-1 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR3),(EXPR2)*(-(EXPR3)),
+ (-(EXPR2))*(-(EXPR3))endgroup
+l.29 TS(1207.05434)(27.14708)
+ ; % p*q=2^47-2^14-1 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> -32767.99998
+! Arithmetic overflow.
+TS->...XPR2))*(-(EXPR3))endgroup
+
+l.29 TS(1207.05434)(27.14708)
+ ; % p*q=2^47-2^14-1 => *
+Uh, oh. A little while ago one of the quantities that I was
+computing got too large, so I'm afraid your answers will be
+somewhat askew. You'll probably have to adopt different
+tactics next time. But I shall try to carry on anyway.
+
+>> 32767.99998
+>> 32767.99998
+>> -32767.99998
+>> -32767.99998
+>> 32767.99998
+>> 32767.99998
+>> -32767.99998
+>> -32767.99998
+>> 32767.99998
+>> 32767.99998
+>> -32767.99998
+>> -32767.99998
+>> 32767.99998
+>> 7629.39455
+>> -7629.39455
+>> -7629.39455
+>> 7629.39455
+>> 7629.39455
+>> -7629.39455
+>> -7629.39455
+>> 7629.39455
+>> 7629.39453
+>> -7629.39453
+>> -7629.39453
+>> 7629.39453
+>> 8
+>> -8
+>> 1.86264
+>> -1.86264
+>> 3814.69728
+>> 2500.19531
+>> 3041.84044
+>> 2052.74315
+>> 7629.39455
+>> -7629.39455
+>> -7629.39455
+>> 7629.39455
+>> 91.60707
+>> -91.60707
+>> -91.60707
+>> 91.60707
+>> 38.63344
+>> -38.63344
+>> -38.63344
+>> 38.63344
+>> 360.31036
+>> -360.31036
+>> -360.31036
+>> 360.31036
+>> 32767
+>> 16394
+Memory usage 28&13 (3358 still untouched)
+String usage 8&32 (1302&9869 now untouched)
+Memory usage 109&13 (3358 still untouched)
+String usage 10&42 (1300&9859 now untouched)
+Memory usage 116&13 (3358 still untouched)
+String usage 11&45 (1299&9856 now untouched)
+Memory usage 139&56 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> Edge structure at line 71:
+End edges
+
+>> false
+>> false
+>> false
+>> false
+>> false
+>> 0
+Memory usage 152&59 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> Edge structure at line 73:
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+End edges
+
+>> false
+>> false
+>> false
+>> true
+>> false
+>> 0
+Memory usage 220&59 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> Edge structure at line 75:
+setbounds path:
+(-3,-2)..controls (0.33333,-2) and (3.66667,-2)
+ ..(7,-2)..controls (4.66667,1) and (2.33333,4)
+ ..(0,7)..controls (-1,4) and (-2,1)
+ ..cycle
+end of setbounds
+End edges
+
+>> false
+>> false
+>> false
+>> false
+>> true
+>> 0
+Memory usage 245&59 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> Edge structure at line 76:
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+End edges
+
+>> true
+>> false
+>> false
+>> false
+>> false
+>> 1
+Memory usage 293&72 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> Edge structure at line 78:
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+End edges
+
+>> false
+>> false
+>> false
+>> true
+>> false
+>> 2
+Memory usage 314&59 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> (0.5,2.5)
+>> (3.5,0.5)
+>> Edge structure at line 81:
+setbounds path:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+end of setbounds
+End edges
+
+>> false
+>> false
+>> false
+>> false
+>> true
+>> 2
+Memory usage 339&59 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> (-7,-3)
+>> (2,7)
+>> Edge structure at line 82:
+setbounds path:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+end of setbounds
+End edges
+
+>> false
+>> false
+>> false
+>> false
+>> true
+>> 2
+Memory usage 339&59 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> Edge structure at line 83:
+Filled contour colored (0.4,0.4,0.4):
+(-36,-24)..controls (3.99994,-24) and (44.00006,-24)
+ ..(84,-24)..controls (56.00006,12) and (27.99994,48)
+ ..(0,84)..controls (-12,48) and (-24,12)
+ ..cycle
+End edges
+
+>> false
+>> true
+>> false
+>> false
+>> false
+>> 1
+Memory usage 345&70 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> Edge structure at line 85:
+setbounds path:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+end of setbounds
+Filled contour colored (0.4,0.4,0.4):
+(-36,-24)..controls (3.99994,-24) and (44.00006,-24)
+ ..(84,-24)..controls (56.00006,12) and (27.99994,48)
+ ..(0,84)..controls (-12,48) and (-24,12)
+ ..cycle
+End edges
+
+>> false
+>> false
+>> false
+>> false
+>> true
+>> 2
+Memory usage 364&59 (3358 still untouched)
+String usage 14&51 (1296&9850 now untouched)
+>> Edge structure at line 86:
+"A56" infont "trapf"
+transformed (0,0,1,0,0,1)
+End edges
+
+>> false
+>> false
+>> true
+>> false
+>> false
+>> 1
+Memory usage 355&64 (3358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> Edge structure at line 88:
+setbounds path:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+end of setbounds
+Filled contour colored (0.4,0.4,0.4):
+(-36,-24)..controls (3.99994,-24) and (44.00006,-24)
+ ..(84,-24)..controls (56.00006,12) and (27.99994,48)
+ ..(0,84)..controls (-12,48) and (-24,12)
+ ..cycle
+
+"A56" infont "trapf"
+transformed (2,3,0.86603,-0.5,0.5,0.86603)
+End edges
+
+>> false
+>> false
+>> false
+>> false
+>> true
+>> 3
+Memory usage 365&59 (3358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> Edge structure at line 89:
+Filled pen stroke :
+(4,5)..controls (5.33333,3.66667) and (6.66667,2.33333)
+ ..(8,1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,1)
+End edges
+
+>> true
+>> false
+>> false
+>> false
+>> false
+>> 1
+Memory usage 390&73 (3358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> Edge structure at line 91:
+setbounds path:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+end of setbounds
+Filled contour colored (0.4,0.4,0.4):
+(-36,-24)..controls (3.99994,-24) and (44.00006,-24)
+ ..(84,-24)..controls (56.00006,12) and (27.99994,48)
+ ..(0,84)..controls (-12,48) and (-24,12)
+ ..cycle
+
+"A56" infont "trapf"
+transformed (2,3,0.86603,-0.5,0.5,0.86603)
+Filled pen stroke :
+(4,5)..controls (5.33333,3.66667) and (6.66667,2.33333)
+ ..(8,1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,1)
+End edges
+
+>> false
+>> false
+>> false
+>> false
+>> true
+>> 4
+Memory usage 409&59 (3358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> "non-picture"
+>> false
+>> false
+>> false
+>> false
+>> false
+>> 11
+Memory usage 409&59 (3358 still untouched)
+String usage 18&75 (1292&9826 now untouched)
+Memory usage 308&13 (3358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> Edge structure at line 96:
+setbounds path:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+end of setbounds
+End edges
+
+>> Edge structure at line 96:
+Filled contour colored (0.4,0.4,0.4):
+(-36,-24)..controls (3.99994,-24) and (44.00006,-24)
+ ..(84,-24)..controls (56.00006,12) and (27.99994,48)
+ ..(0,84)..controls (-12,48) and (-24,12)
+ ..cycle
+End edges
+
+>> Edge structure at line 96:
+"A56" infont "trapf"
+transformed (2,3,0.86603,-0.5,0.5,0.86603)
+End edges
+
+>> Edge structure at line 96:
+Filled pen stroke :
+(4,5)..controls (5.33333,3.66667) and (6.66667,2.33333)
+ ..(8,1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,1)
+End edges
+
+Memory usage 308&13 (3358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> 4
+Memory usage 563&13 (3358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> Edge structure at line 104:
+clipping path:
+(5,5)..controls (5,6.32608) and (4.47322,7.59785)
+ ..(3.53554,8.53554)..controls (2.59785,9.47322) and (1.32608,10)
+ ..(0,10)..controls (-1.32608,10) and (-2.59785,9.47322)
+ ..(-3.53554,8.53554)..controls (-4.47322,7.59785) and (-5,6.32608)
+ ..(-5,5)..controls (-5,3.67392) and (-4.47322,2.40215)
+ ..(-3.53554,1.46446)..controls (-2.59785,0.52678) and (-1.32608,0)
+ ..(0,0)..controls (1.32608,0) and (2.59785,0.52678)
+ ..(3.53554,1.46446)..controls (4.47322,2.40215) and (5,3.67392)
+ ..cycle
+setbounds path:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+end of setbounds
+Filled contour colored (0.4,0.4,0.4):
+(-36,-24)..controls (3.99994,-24) and (44.00006,-24)
+ ..(84,-24)..controls (56.00006,12) and (27.99994,48)
+ ..(0,84)..controls (-12,48) and (-24,12)
+ ..cycle
+
+"A56" infont "trapf"
+transformed (2,3,0.86603,-0.5,0.5,0.86603)
+Filled pen stroke :
+(4,5)..controls (5.33333,3.66667) and (6.66667,2.33333)
+ ..(8,1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,1)
+stop clipping
+setbounds path:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+clipping path:
+(50,0)..controls (50,13.26082) and (44.73216,25.97853)
+ ..(35.35535,35.35535)..controls (25.97853,44.73216) and (13.26082,50)
+ ..(0,50)..controls (-13.26082,50) and (-25.97853,44.73216)
+ ..(-35.35535,35.35535)..controls (-44.73216,25.97853) and (-50,13.26082
+)
+ ..(-50,0)..controls (-50,-13.26082) and (-44.73216,-25.97853)
+ ..(-35.35535,-35.35535)..controls (-25.97853,-44.73216) and (-13.26082,
+-50)
+ ..(0,-50)..controls (13.26082,-50) and (25.97853,-44.73216)
+ ..(35.35535,-35.35535)..controls (44.73216,-25.97853) and (50,-13.26082
+)
+ ..cycle
+stop clipping
+Filled pen stroke :
+(1,1)..controls (1.66667,1.33333) and (2.33333,1.66667)
+ ..(3,2)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,1,0,0,1)
+end of setbounds
+Filled contour colored (0.4,0.4,0.4):
+(-36,-24)..controls (3.99994,-24) and (44.00006,-24)
+ ..(84,-24)..controls (56.00006,12) and (27.99994,48)
+ ..(0,84)..controls (-12,48) and (-24,12)
+ ..cycle
+
+"A56" infont "trapf"
+transformed (2,3,0.86603,-0.5,0.5,0.86603)
+Filled pen stroke :
+(4,5)..controls (5.33333,3.66667) and (6.66667,2.33333)
+ ..(8,1)
+butt ends, mitered joins limited 1 with pen
+pencircle transformed (0,0,0,0,0,1)
+End edges
+
+>> 5
+Memory usage 747&13 (3358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> false
+>> false
+>> false
+>> true
+>> false
+>> Path at line 112:
+(5,5)..controls (5,6.32608) and (4.47322,7.59785)
+ ..(3.53554,8.53554)..controls (2.59785,9.47322) and (1.32608,10)
+ ..(0,10)..controls (-1.32608,10) and (-2.59785,9.47322)
+ ..(-3.53554,8.53554)..controls (-4.47322,7.59785) and (-5,6.32608)
+ ..(-5,5)..controls (-5,3.67392) and (-4.47322,2.40215)
+ ..(-3.53554,1.46446)..controls (-2.59785,0.52678) and (-1.32608,0)
+ ..(0,0)..controls (1.32608,0) and (2.59785,0.52678)
+ ..(3.53554,1.46446)..controls (4.47322,2.40215) and (5,3.67392)
+ ..cycle
+
+>> Pen at line 112:
+pencircle transformed (0,0,0,0,0,0)
+
+>> Edge structure at line 112:
+End edges
+
+>> ""
+>> ""
+>> (0,0,0)
+>> (0,0)
+>> (0,0)
+>> (0,0)
+Memory usage 1003&85 (2358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> false
+>> false
+>> false
+>> false
+>> true
+>> Path at line 112:
+(2,-3)..controls (2,0.33333) and (2,3.66667)
+ ..(2,7)..controls (-1,4.66667) and (-4,2.33333)
+ ..(-7,0)..controls (-4,-1) and (-1,-2)
+ ..cycle
+
+>> Pen at line 112:
+pencircle transformed (0,0,0,0,0,0)
+
+>> Edge structure at line 112:
+End edges
+
+>> ""
+>> ""
+>> (0,0,0)
+>> (0,0)
+>> (0,0)
+>> (0,0)
+Memory usage 873&85 (2358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> false
+>> true
+>> false
+>> false
+>> false
+>> Path at line 112:
+(-36,-24)..controls (3.99994,-24) and (44.00006,-24)
+ ..(84,-24)..controls (56.00006,12) and (27.99994,48)
+ ..(0,84)..controls (-12,48) and (-24,12)
+ ..cycle
+
+>> Pen at line 112:
+pencircle transformed (0,0,0,0,0,0)
+
+>> Edge structure at line 112:
+End edges
+
+>> ""
+>> ""
+>> (0.4,0.4,0.4)
+>> (0,0)
+>> (0,0)
+>> (0,0)
+Memory usage 786&85 (2358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> false
+>> false
+>> true
+>> false
+>> false
+>> Path at line 112:
+(0,0)
+
+>> Pen at line 112:
+pencircle transformed (0,0,0,0,0,0)
+
+>> Edge structure at line 112:
+End edges
+
+>> "trapf"
+>> "A56"
+>> (0,0,0)
+>> (2,3)
+>> (0.86603,0.5)
+>> (-0.5,0.86603)
+Memory usage 773&85 (2358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> true
+>> false
+>> false
+>> false
+>> false
+>> Path at line 112:
+(4,5)..controls (5.33333,3.66667) and (6.66667,2.33333)
+ ..(8,1)
+
+>> Pen at line 112:
+pencircle transformed (0,0,0,0,0,1)
+
+>> Edge structure at line 112:
+End edges
+
+>> ""
+>> ""
+>> (0,0,0)
+>> (0,0)
+>> (0,0)
+>> (0,0)
+Memory usage 788&85 (2358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+>> Edge structure at line 116:
+"B34" infont "trapf"
+transformed (0,0,1,0,0,1)
+End edges
+
+Memory usage 319&13 (2358 still untouched)
+String usage 17&64 (1293&9837 now untouched)
+[0] [1]
+Memory usage 325&13 (2358 still untouched)
+String usage 20&78 (1287&9809 now untouched)
+>> "%!PS"
+>> "%%BoundingBox: -36 -24 84 84"
+>> "%%Creator: MetaPost"
+>> "%%Pages: 1"
+>> "%*Font: trapf 9.9628 9.96265 35:c008"
+>> "%%EndProlog"
+>> "%%Page: 1 1"
+>> "gsave newpath 50 0 moveto"
+>> "50 13.26082 44.73216 25.97853 35.35535 35.35535 curveto"
+>> "25.97853 44.73216 13.26082 50 0 50 curveto"
+>> "-13.26082 50 -25.97853 44.73216 -35.35535 35.35535 curveto"
+>> "-44.73216 25.97853 -50 13.26082 -50 0 curveto"
+>> "-50 -13.26082 -44.73216 -25.97853 -35.35535 -35.35535 curveto"
+>> "-25.97853 -44.73216 -13.26082 -50 0 -50 curveto"
+>> "13.26082 -50 25.97853 -44.73216 35.35535 -35.35535 curveto"
+>> "44.73216 -25.97853 50 -13.26082 50 0 curveto closepath clip"
+>> "grestore"
+>> " 0 setgray 0 1 dtransform truncate idtransform setlinewidth pop"
+>> " [] 0 setdash 0 setlinecap 0 setlinejoin 1 setmiterlimit"
+>> "newpath 1 1 moveto"
+>> "3 2 lineto stroke"
+>> " 0.4 setgray"
+>> "newpath -36 -24 moveto"
+>> "84 -24 lineto"
+>> "0 84 lineto"
+>> " closepath fill"
+>> " 0 setgray"
+>> "gsave [0.86601 0.5 -0.5 0.86601 2 3 ] concat 0 0 moveto"
+>> "(A56) trapf 9.9628 fshow grestore"
+>> "gsave newpath 4 5 moveto"
+>> "8 1 lineto"
+>> "0.00064 1 scale stroke grestore"
+>> "showpage"
+>> "%%EOF"
+Memory usage 325&13 (2358 still untouched)
+String usage 22&84 (1247&8769 now untouched)
+>> "%!PS-Adobe-3.0 EPSF-3.0"
+>> "%%BoundingBox: -84 -36 24 84"
+>> 40
+Memory usage 325&13 (2358 still untouched)
+String usage 22&84 (1206&7603 now untouched)
+>> "^^@"
+>> "%!PS"
+>> "%%BoundingBox: -36 -24 84 84"
+>> "%%Creator: MetaPost"
+Memory usage 325&13 (2358 still untouched)
+String usage 24&110 (1197&7522 now untouched)
+Memory usage 325&13 (2358 still untouched)
+String usage 26&125 (1148&7358 now untouched)
+>> "1 1"
+>> "%%Pages: 1"
+>> "2 4"
+>> "%*Font: trapf 9.9628 9.96265 35:c008"
+>> "3 9"
+>> "%%EndProlog"
+Memory usage 325&13 (2358 still untouched)
+String usage 25&135 (1144&7308 now untouched)
+{randomseed:=4.34294}
+>> "bbbbbbbbadadbbbbbbbbadadbbbbbbbbadadbbbbbbbbadadbbbbbbbbadad"
+Memory usage 325&13 (2358 still untouched)
+String usage 26&141 (1195&1840 now untouched)
+! Number is too large (12000).
+l.185 n = 12000
+ ; show n;
+It is at least 4096. Continue and I'll try to cope
+with that big value; but it might be dangerous.
+(Set warningcheck:=0 to suppress this message.)
+
+! Value is too large (12000).
+l.185 n = 12000;
+ show n;
+The equation I just processed has given some variable
+a value of 4096 or more. Continue and I'll try to cope
+with that big value; but it might be dangerous.
+(Set warningcheck:=0 to suppress this message.)
+
+>> 12000
+! Enormous number has been reduced.
+l.187 n:= 40000
+ ; show n;
+I can't handle numbers bigger than 32767.99998;
+so I've changed your constant to that maximum amount.
+
+>> 32767.99998
+Memory usage 325&13 (2358 still untouched)
+String usage 26&141 (1195&1840 now untouched)
+>> triangle
+! Improper iteration spec has been replaced by nullpicture.
+<to be read again>
+ :
+l.191 for x within triangle:
+ show x; endfor
+When you say `for x in p', p must be a known picture.
+
+Memory usage 327&13 (2358 still untouched)
+String usage 27&149 (1194&1832 now untouched)
+>> path
+! Not a string.
+<to be read again>
+ to
+l.193 write triang to
+ "writeo";
+The text to be written should be a known string expression
+
+! Extra tokens will be flushed.
+<to be read again>
+ to
+l.193 write triang to
+ "writeo";
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+! Missing `to' clause.
+<to be read again>
+ "writeo"
+l.194 write "triangle" "writeo"
+ ;
+A write command should end with `to <filename>'
+
+! Extra tokens will be flushed.
+<to be read again>
+ "writeo"
+l.194 write "triangle" "writeo"
+ ;
+I've just read as much of that statement as I could fathom,
+so a semicolon should have been next. It's very puzzling...
+but I'll try to get myself back together, by ignoring
+everything up to the next `;'. Please insert a semicolon
+now in front of anything that you don't want me to delete.
+(See Chapter 27 of The METAFONTbook for an example.)
+
+>> path
+! Not a string.
+<to be read again>
+ ;
+l.195 ...e "triangle" to triang;
+
+I can't write to that file name. It isn't a known string
+
+Memory usage 327&13 (2358 still untouched)
+String usage 27&149 (1193&1824 now untouched)
+>> "%%BoundingBox: -36 -24 84 84" )
+Here is how much of MetaPost's memory you used:
+ 32 strings out of 1310
+ 561 string characters out of 9901
+ 2143 words of memory out of 4501
+ 237 symbolic tokens out of 2100
+ 5i,33n,6p,100b stack positions out of 30i,100n,150p,500b
+ 3 string compactions (moved 1368 characters, 89 strings)
+
+2 output files written: mtrap.0 .. mtrap.1
diff --git a/Build/source/texk/web2c/triptrap/mtrap.mp b/Build/source/texk/web2c/triptrap/mtrap.mp
new file mode 100644
index 00000000000..617a68cc2f5
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/mtrap.mp
@@ -0,0 +1,202 @@
+batchmode;
+delimiters ();
+def -- = {curl 1}..{curl 1} enddef;
+showstats;
+
+begingroup
+save MF, TF, MS, TS;
+interim warningcheck:=0;
+
+vardef MF(text p)(text q) = show p/q (4096) enddef;
+vardef TF(text p)(text q) = show p/4096 (q), p/4096 (-q) enddef;
+vardef MS(expr p, q) = show p/q, (-p)/q, p/(-q), (-p)/(-q) enddef;
+vardef TS(expr p, q) = show p*q, (-p)*q, p*(-q), (-p)*(-q) enddef;
+
+% Hard cases for arithmetic routines (taken from mp/mathtest.c)
+TF(1618.00821)(19313.86989); % p*q=(10^9+1)*2^27-6 => 7629.39453
+TS(12.91296)(12.91296); % => 166.74463
+MF(4793.68996)(5477.58977); % => 3584.59740
+MS(12.91296)(12.91296); % => 1.00000
+TF(2048.00000)(15258.78908); % p*q=(10^9+1)*2^27 => 7629.39455
+TF(2644.17595)(11818.42685); % p*q=(10^9+1)*2^27+2 => 7629.39455
+TF(1164.89432)(26826.46791); % p*q=(10^9+1)*2^27+2^14+2 => 7629.39455
+TF(3310.94371)(9438.39665); % p*q=(10^9+1)*2^27-2^14-3 => 7629.39453
+TS(13107.20000)(2.50000); % p*q=2^47-2^15 => *
+TS(124.77580)(262.61502); % p*q=2^47-2^15+6 => *
+TS(1038.61232)(31.54979); % p*q=2^47-2^15-1 => 32767.99998
+TS(64.03127)(511.75000); % p*q=2^47-2^14 => *
+TS(39.46178)(830.37315); % p*q=2^47-2^14+1 => *
+TS(1207.05434)(27.14708); % p*q=2^47-2^14-1 => *
+TS(7.25000)(4519.72414); % p*q=2^47-3*2^14 => 32767.99998
+TS(215.31056)(152.18947); % p*q=2^47-3*2^14+1 => 32767.99998
+TS(14833.24916)(2.20909); % p*q=2^47-3*2^14-1 => 32767.99998
+TS(339.62500)(22.46417); % p*q=(10^9+1)*2^15 => 7629.39455
+TS(47.62218)(160.20676); % p*q=(10^9+1)*2^15+2 => 7629.39455
+TS(74.64186)(102.21335); % p*q=(10^9+1)*2^15-2 => 7629.39453
+TF(2.50000)(13107.20000); % p*q=2^47-2^15 => 8.00000
+TF(47.62218)(160.20676); % p*q=(10^9+1)*2^15+2 => 1.86264
+MF(7629.39455)(8192.00000); % 2^29*p+q=2q*(5*10^8+1)+0 => 3814.69728
+MF(15258.78906)(24998.04695); % 2^29*p+q=2q*(163852801)-5 => 2500.19531
+MF(15258.78906)(20546.77141); % 2^29*p+q=2q*(199350055)+1 => 3041.84044
+MF(15258.78906)(30447.06313); % 2^29*p+q=2q*(134528575)+2^14-5 => 2052.74315
+MS(15258.78908)(2.00000); % 2^17*p+q=2q*(5*10^8+1)+0 => 7629.39455
+MS(15258.78906)(166.56779); % 2^17*p+q=2q*(6003562)-1 => 91.60707
+MS(15258.78906)(394.96335); % 2^17*p+q=2q*(2531881)+2 => 38.63344
+MS(15258.78906)(42.34901); % 2^17*p+q=2q*(23613301)-2^14-1 => 360.31036
+show oct "77777", hex "400a";
+endgroup;
+
+showstats;
+path triang, circ;
+triang = (-3,-2)--(7,-2)--(0,7)--cycle;
+circ = makepath(pencircle shifted (0,.5) scaled 10);
+showstats;
+
+picture pic, pic[];
+showstats;
+begingroup
+save sh, dr;
+vardef sh expr p =
+ show p, stroked p, filled p, textual p, clipped p, bounded p, length p;
+ showstats;
+enddef;
+vardef dr text t =
+ pp3:=nullpicture;
+ addto pp3 t;
+ sh pp3;
+enddef;
+save pp; picture pp[];
+showstats;
+pic = pp2 = nullpicture;
+sh pic;
+clip pic to makepath(pencircle scaled 100);
+sh pic; % clipped
+setbounds pp2 to triang;
+sh pp2; % bounded()
+dr doublepath (1,1)--(3,2) withpen pencircle; % stroked
+addto pic also pp3;
+sh pic; % clipped(), stroked
+show ulcorner pic, lrcorner pic;
+setbounds pic to triang rotated 90;
+sh pic; show llcorner pic, urcorner pic;
+sh pic; % bounded(clipped(), stroked)
+dr contour triang scaled 12 withcolor (.4,.4,.4); % filled
+addto pic also pp3;
+sh pic; % bounded(clipped(), stroked), filled
+dr also "A56" infont "trapf"; % text
+addto pic also pp3 rotated 30 shifted (2,3);
+sh pic; % bounded(clipped(), stroked), filled, textual
+dr doublepath (4,5)--(8,1) withpen pencircle xscaled 0;
+addto pic also pp3;
+sh pic; % bounded(clipped(), stroked), filled, textual, stroked
+sh "non-picture";
+endgroup;
+
+showstats;
+for p within pic: show p; endfor
+
+showstats;
+pic1 := pic;
+clip pic1 to circ;
+show length pic1;
+showstats;
+addto pic1 also pic dashed nullpicture;
+show pic1, length pic1;
+showstats;
+for p within pic1:
+ show stroked p, filled p, textual p, clipped p, bounded p;
+ show pathpart p, penpart p, dashpart p, fontpart p, textpart p;
+ show (redpart p, greenpart p, bluepart p);
+ show (xpart p, ypart p), (xxpart p, yxpart p), (xypart p, yypart p);
+ showstats;
+endfor
+pic1 := nullpicture;
+
+for p within nullpicture: show p; endfor
+for p within "B34" infont "trapf": show p; endfor
+showstats;
+
+shipout pic;
+charcode:=1;
+prologues:=1;
+shipout pic rotated 90;
+
+
+string s,EOF;
+EOF=char 0;
+numeric n;
+n = 0;
+showstats;
+forever: n:=n+1;
+ s:= readfrom "mtrap.0";
+ exitif (s=EOF) or (n>300);
+ if substring (0,14) of s<>"%%CreationDate": show s; fi
+endfor
+
+numeric n;
+n = 0;
+showstats;
+forever: n:=n+1;
+ s := readfrom "mtrap.1";
+ if n<=2: show s; fi
+ exitif (s=EOF) or (n>300);
+endfor
+show n;
+
+showstats;
+show readfrom "mtrap.17";
+for n=1 step 1 until 3:
+ s := readfrom "mtrap.0"; show s;
+endfor
+
+showstats;
+for i=1 step 1 until 10:
+ write decimal i & " " & decimal(i*i) to "writeo";
+ write substring(0,i) of " " & "*" to "writeo.2";
+endfor
+showstats;
+
+write EOF to "writeo";
+s:=readfrom "mtrap.0"; % Ignore creation date
+for i=1 step 1 until 3:
+ show readfrom "writeo", readfrom "mtrap.0";
+endfor
+showstats;
+
+write "Clobbered." to "writeo";
+
+tracingstats:=1;
+begingroup % Force string pool compaction
+save s; string s[];
+s0="a"; s1="b"; s2="c"; s3="d";
+randomseed:=4.34294;
+for i=1 step 1 until 200:
+ s[floor uniformdeviate 4] := substring (0,60) of
+ (s[floor uniformdeviate 4] & s[floor uniformdeviate 4]);
+endfor
+show s1;
+endgroup;
+showstats;
+
+
+begingroup
+numeric n;
+interim warningcheck:=1;
+n = 12000; show n;
+interim warningcheck:=0;
+n:= 40000; show n;
+endgroup;
+
+showstats;
+for x within triangle: show x; endfor
+showstats;
+write triang to "writeo";
+write "triangle" "writeo";
+write "triangle" to triang;
+showstats;
+
+closefrom "mtrap.0";
+string s; s=readfrom "mtrap.0";
+show readfrom "mtrap.0"; % should be 2nd line, not 5th line
+
+end
diff --git a/Build/source/texk/web2c/triptrap/texmf.cnf b/Build/source/texk/web2c/triptrap/texmf.cnf
new file mode 100644
index 00000000000..5682426c764
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/texmf.cnf
@@ -0,0 +1,91 @@
+% triptrap/texmf.cnf -- configuration for the trip and trap tests.
+
+% These values apply to all the programs, and they are necessary for any
+% kind of reasonable diff.
+error_line = 64
+half_error_line = 32
+max_print_line = 72
+
+% TeX, Metafont, and MetaPost.
+mem_bot.tex = 1
+main_memory.tex = 3000
+main_memory.mf = 3001
+main_memory.mpost = 4501
+
+% In case you happen to run an ini* link by hand.
+mem_bot.initex = 1
+main_memory.initex = 3000
+main_memory.inimf = 3001
+main_memory.inimpost = 4501
+
+% Actually, Metafont currently ignores the settings for max_strings,
+% string_vacancies and pool_size specified here, but it doesn't hurt
+% to supply the correct values, just in case this changes one day.
+
+max_strings.tex = 3000
+max_strings.mf = 2000
+max_strings.mpost = 2500
+
+% In case you happen to run an ini* link by hand.
+max_strings.initex = 3000
+max_strings.inimf = 2000
+max_strings.inimpost = 2500
+
+string_vacancies = 8000
+pool_size = 40000
+
+% TeX only.
+font_mem_size = 20000
+font_max = 75
+stack_size = 200
+nest_size = 40
+buf_size = 500
+save_size = 600
+dvi_buf_size = 800
+% Although hyph_size is settable, it can't be <hyph_prime, which is 607,
+% and the original trip setting is 307, so no point in changing the default.
+
+% Metafont only.
+gf_buf_size = 8 % trapman.tex says to use this.
+MFTERM = trap % get the right screen output
+% trapman.tex says these values will help reduce the diffs, but it
+% actually only gives us one extra hunk (a BLANKRECTANGLE), so they
+% don't seem worth dynamicizing.
+%screen_width = 100
+%screen_depth = 200
+
+% MetaPost only. Turn off callmakempx, i.e., makempx,
+% since we can only test tex and dvitomp, and we'll test those in other
+% places anyway. (mpto fails because of the unending string constant
+% check in trap.mp.)
+MPXCOMMAND = 0
+
+% Avoid running any MakeTeX* program.
+MAKETEXTFM = 0
+MAKETEXTEX = 0
+MAKETEXMF = 0
+
+% Avoid reading any texfonts.map:
+TEXFONTMAPS = triptrap
+
+% Search paths.
+% trip.tex:
+TEXINPUTS = .
+% trap.mf:
+MFINPUTS = .
+% trap.mp, mtrap.mp:
+MPINPUTS = .
+% trip.tfm, trap.tfm, trapf.tfm:
+TFMFONTS = .
+% trip.fmt:
+TEXFORMATS = .
+% trap.base:
+MFBASES = .
+% trap.mem:
+MPMEMS = .
+% tex.pool:
+TEXPOOL = .
+% mf.pool:
+MFPOOL = .
+% mp.pool:
+MPPOOL = .
diff --git a/Build/source/texk/web2c/triptrap/trap.148 b/Build/source/texk/web2c/triptrap/trap.148
new file mode 100644
index 00000000000..50091a53692
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.148
@@ -0,0 +1,25 @@
+%!PS
+%%BoundingBox: -5 -5 13 5
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%%EndProlog
+%%Page: 1 1
+ 0 1 dtransform truncate idtransform setlinewidth pop [] 0 setdash
+ 1 setlinejoin 1 setmiterlimit
+gsave 2 0 translate newpath 5 0 moveto
+5 1.32608 4.47322 2.59785 3.53554 3.53554 curveto
+2.59785 4.47322 1.32608 5 0 5 curveto
+-1.32608 5 -2.59785 4.47322 -3.53554 3.53554 curveto
+-4.47322 2.59785 -5 1.32608 -5 0 curveto
+-5 -1.32608 -4.47322 -2.59785 -3.53554 -3.53554 curveto
+-2.59785 -4.47322 -1.32608 -5 0 -5 curveto
+1.32608 -5 2.59785 -4.47322 3.53554 -3.53554 curveto
+4.47322 -2.59785 5 -1.32608 5 0 curveto closepath
+gsave fill grestore stroke grestore
+ 0 3 dtransform truncate idtransform setlinewidth pop 1 setlinecap
+gsave newpath 0 0 moveto
+12 0 lineto
+0.33333 1 scale stroke grestore
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/trap.149 b/Build/source/texk/web2c/triptrap/trap.149
new file mode 100644
index 00000000000..10665caedd8
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.149
@@ -0,0 +1,85 @@
+%!PS
+%%BoundingBox: -28 -28 52 37
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%%EndProlog
+%%Page: 1 1
+gsave newpath 0 0 moveto
+48.28426 -48.28429 48.28426 78.28429 0 30 curveto
+-8.28427 21.71573 -8.28427 8.28427 0 0 curveto closepath clip
+grestore
+ 0 setgray
+newpath 22.5 -0.5 moveto
+24 -2 lineto
+25 -2.5 lineto
+26 -2 lineto
+27 -1 lineto
+27.5 0.5 lineto
+27.5 7.13042 24.86609 13.48926 20.17767 18.17767 curveto
+18.67767 19.67767 lineto
+16.7597 21.59564 14.56218 23.16978 12.18088 24.36044 curveto
+11.18088 24.86044 lineto
+7.74117 26.58029 3.918 27.5 0 27.5 curveto
+-3.918 27.5 -7.74117 26.58029 -11.18088 24.86044 curveto
+-12.18088 24.36044 lineto
+-14.56218 23.16978 -16.7597 21.59564 -18.67767 19.67767 curveto
+-19.67767 18.67767 lineto
+-22.44812 15.90723 -24.50117 12.55353 -25.71729 8.90517 curveto
+-26.21729 7.40517 lineto
+-27.0592 4.87941 -27.5 2.21243 -27.5 -0.5 curveto
+-27.5 -7.13042 -24.86609 -13.48926 -20.17767 -18.17767 curveto
+-18.67767 -19.67767 lineto
+-16.7597 -21.59564 -14.56218 -23.16978 -12.18088 -24.36044 curveto
+-11.18088 -24.86044 lineto
+-7.74117 -26.58029 -3.918 -27.5 0 -27.5 curveto
+3.918 -27.5 7.74117 -26.58029 11.18088 -24.86044 curveto
+12.18088 -24.36044 lineto
+14.56218 -23.16978 16.7597 -21.59564 18.67767 -19.67767 curveto
+19.67767 -18.67767 lineto
+22.44812 -15.90723 24.50117 -12.55353 25.71729 -8.90517 curveto
+26.21729 -7.40517 lineto
+27.0592 -4.87941 27.5 -2.21243 27.5 0.5 curveto
+26 2 lineto
+25 2.5 lineto
+24 2 lineto
+23 1 lineto
+22.5 -0.5 lineto
+22.5 -3.21243 22.0592 -5.87941 21.21729 -8.40517 curveto
+21.71729 -6.90517 lineto
+20.50117 -10.55353 18.44812 -13.90723 15.67767 -16.67767 curveto
+16.67767 -15.67767 lineto
+14.7597 -17.59564 12.56218 -19.16978 10.18088 -20.36044 curveto
+11.18088 -19.86044 lineto
+7.74117 -21.58029 3.918 -22.5 0 -22.5 curveto
+-3.918 -22.5 -7.74117 -21.58029 -11.18088 -19.86044 curveto
+-10.18088 -20.36044 lineto
+-12.56218 -19.16978 -14.7597 -17.59564 -16.67767 -15.67767 curveto
+-15.17767 -17.17767 lineto
+-19.86609 -12.48926 -22.5 -6.13042 -22.5 0.5 curveto
+-22.5 3.21243 -22.0592 5.87941 -21.21729 8.40517 curveto
+-21.71729 6.90517 lineto
+-20.50117 10.55353 -18.44812 13.90723 -15.67767 16.67767 curveto
+-16.67767 15.67767 lineto
+-14.7597 17.59564 -12.56218 19.16978 -10.18088 20.36044 curveto
+-11.18088 19.86044 lineto
+-7.74117 21.58029 -3.918 22.5 0 22.5 curveto
+3.918 22.5 7.74117 21.58029 11.18088 19.86044 curveto
+10.18088 20.36044 lineto
+12.56218 19.16978 14.7597 17.59564 16.67767 15.67767 curveto
+15.17767 17.17767 lineto
+19.86609 12.48926 22.5 6.13042 22.5 -0.5 curveto closepath fill
+ 2 0 dtransform exch truncate exch idtransform pop setlinewidth
+ [2.82843 1.41422 ] 1.41422 setdash 1 setlinecap 1 setlinejoin
+ 1 setmiterlimit
+gsave newpath 0 0 moveto
+-48.28429 48.28426 78.28429 48.28426 30 0 curveto
+1 0.5 scale stroke grestore
+ 0 1 dtransform truncate idtransform setlinewidth pop
+ [2 1 ] 1 setdash
+newpath 0 0 moveto
+-48.28429 48.28426 78.28429 48.28426 30 0 curveto stroke
+newpath 10 0 moveto
+-38.28429 48.28426 88.28429 48.28426 40 0 curveto stroke
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/trap.150 b/Build/source/texk/web2c/triptrap/trap.150
new file mode 100644
index 00000000000..14487408340
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.150
@@ -0,0 +1,43 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%BoundingBox: -5 -5 33 25
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%%EndProlog
+%%Page: 1 1
+newpath 7.5 4.5 moveto
+7.5 4.5 lineto
+ closepath fill
+newpath 7.5 4.5 moveto
+7.5 4.5 lineto
+ closepath fill
+newpath 2.5 9.5 moveto
+2.5 7 lineto
+7.5 8 lineto
+7.5 10.5 lineto
+7.5 15.5 lineto
+7.5 18 lineto
+2.5 17 lineto
+2.5 14.5 lineto
+ closepath fill
+newpath 0 5 moveto
+0 5 lineto
+0 -5 lineto
+0 -5 lineto
+10 5 10 5 10 5 curveto
+15 10 lineto
+10 15 lineto
+0 25 lineto
+0 15 lineto
+30 5 lineto
+30 5 lineto
+30 15 lineto
+30 15 lineto
+0 25 lineto
+-15 30 lineto
+0 15 lineto
+10 5 lineto
+10 15 lineto
+10 15 10 15 0 5 curveto closepath fill
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/trap.151 b/Build/source/texk/web2c/triptrap/trap.151
new file mode 100644
index 00000000000..2fa5a522e98
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.151
@@ -0,0 +1,219 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%BoundingBox: -4096 -102 4096 261
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%%EndProlog
+%%Page: 1 1
+bye
+ 0 0 dtransform truncate idtransform setlinewidth pop
+ [3 0 ] 0 setdash 0 setlinecap 0 setlinejoin 1 setmiterlimit
+newpath 0.5 0 moveto
+3.5 1.5 lineto stroke
+ [] 0 setdash
+newpath 0 0 moveto
+0.3153 0.20053 0.6504 0.36807 1 0.5 curveto
+2.29114 0.98723 3.72412 0.97192 5 1.5 curveto
+5.68967 1.78545 6.30771 2.22081 7 2.5 curveto
+8.58867 3.1407 10.3946 2.90645 12 3.5 curveto
+12.3506 3.62962 12.68594 3.7973 13 4 curveto stroke
+newpath -1 -2 moveto
+-0.95676 -2.04068 -0.91165 -2.07198 -0.86496 -2.09532 curveto
+0.13504 -2.59532 lineto
+0.64822 -2.8519 1.35178 -2.14809 1.86496 -2.40468 curveto
+0.86496 -1.90468 lineto
+0.91165 -1.92802 0.95676 -1.95932 1 -2 curveto
+1.02066 -2.02003 lineto
+-0.47934 -0.52003 lineto
+-0.2602 -0.73918 -0.22404 -0.99583 -0.2977 -1.21681 curveto
+0.2023 0.28319 lineto
+0.16501 0.17131 0.09958 0.06859 0.01549 -0.0155 curveto
+1.01549 0.9845 lineto
+0.95589 0.9249 0.88692 0.87466 0.81195 0.83719 curveto
+1.81195 1.33719 lineto
+1.63397 1.2482 1.42226 1.23111 1.22209 1.33119 curveto
+2.22209 0.83119 lineto
+2.15273 0.86588 2.08475 0.91461 2.02003 0.97932 curveto
+3.52003 -0.52068 lineto
+3.5 -0.5 lineto
+3.28389 -0.27028 3.33284 0.012 3.43013 0.30383 curveto
+2.93013 -1.19617 lineto
+2.97351 -1.06602 3.0265 -0.93398 3.06989 -0.80383 curveto
+3.56989 0.69617 lineto
+3.66716 0.988 3.71611 1.27028 3.5 1.5 curveto
+3.47997 1.52066 lineto
+1.97997 3.02066 lineto
+1.91525 3.08537 1.84727 3.13412 1.77791 3.16881 curveto
+0.77791 3.66881 lineto
+0.57773 3.76889 0.36601 3.7518 0.18803 3.66281 curveto
+-0.81197 3.16281 lineto
+-0.88693 3.12534 -0.9559 3.0751 -1.0155 3.0155 curveto
+-2.0155 2.0155 lineto
+-2.09958 1.93141 -2.16502 1.82869 -2.20232 1.71681 curveto
+-2.70232 0.21681 lineto
+-2.77597 -0.00417 -2.7398 -0.2608 -2.52066 -0.47997 curveto
+-1.02066 -1.97997 lineto
+ closepath fill
+newpath 1 2 moveto
+0.97934 2.02003 lineto
+2.47934 0.52003 lineto
+2.2602 0.73918 2.22404 0.99583 2.2977 1.21681 curveto
+1.7977 -0.28319 lineto
+1.83499 -0.17131 1.90042 -0.06859 1.98451 0.0155 curveto
+0.98451 -0.9845 lineto
+1.04411 -0.9249 1.11308 -0.87466 1.18805 -0.83719 curveto
+0.18805 -1.33719 lineto
+0.36603 -1.2482 0.57774 -1.23111 0.77791 -1.33119 curveto
+-0.22209 -0.83119 lineto
+-0.15273 -0.86588 -0.08475 -0.91461 -0.02003 -0.97932 curveto
+-1.52003 0.52068 lineto
+-1.5 0.5 lineto
+-1.28389 0.27028 -1.33284 -0.012 -1.43013 -0.30383 curveto
+-0.93013 1.19617 lineto
+-0.97351 1.06602 -1.0265 0.93398 -1.06989 0.80383 curveto
+-1.56989 -0.69617 lineto
+-1.66716 -0.988 -1.71611 -1.27028 -1.5 -1.5 curveto
+-1.47997 -1.52066 lineto
+0.02003 -3.02066 lineto
+0.08475 -3.08537 0.15273 -3.13412 0.22209 -3.16881 curveto
+1.22209 -3.66881 lineto
+1.42227 -3.76889 1.63399 -3.7518 1.81197 -3.66281 curveto
+2.81197 -3.16281 lineto
+2.88693 -3.12534 2.9559 -3.0751 3.0155 -3.0155 curveto
+4.0155 -2.0155 lineto
+4.09958 -1.93141 4.16502 -1.82869 4.20232 -1.71681 curveto
+4.70232 -0.21681 lineto
+4.77597 0.00417 4.7398 0.2608 4.52066 0.47997 curveto
+3.02066 1.97997 lineto
+3 2 lineto
+2.95676 2.04068 2.91165 2.07198 2.86496 2.09532 curveto
+1.86496 2.59532 lineto
+1.35178 2.8519 0.64822 2.14809 0.13504 2.40468 curveto
+1.13504 1.90468 lineto
+1.08835 1.92802 1.04324 1.95932 1 2 curveto closepath fill
+newpath -1 2 moveto
+1 -2 lineto
+1.17854 -1.82146 1.38548 -1.68822 1.60698 -1.57747 curveto
+0.60698 -2.07747 lineto
+1.04999 -1.85596 1.55122 -1.72438 1.99995 -1.5 curveto
+2.99995 -1 lineto
+3 -1 lineto
+1 3 lineto
+0.99995 3 lineto
+1.99995 3.5 lineto
+1.55122 3.27562 1.05 3.14404 0.607 2.92253 curveto
+-0.393 2.42253 lineto
+-0.6145 2.31178 -0.82144 2.17856 -1 2 curveto closepath fill
+newpath -0.5 -0.5 moveto
+0.05229 -0.5 -0.05229 0.5 0.5 0.5 curveto stroke
+ 0 1 dtransform truncate idtransform setlinewidth pop
+newpath -4094.99998 0 moveto
+4094.99998 -0.00002 lineto stroke
+ 0 0 dtransform truncate idtransform setlinewidth pop
+ [3 0 ] 0 setdash
+newpath 0.5 257 moveto
+3.5 258.5 lineto stroke
+ [] 0 setdash
+newpath 0 257 moveto
+0.3153 257.20053 0.6504 257.36807 1 257.5 curveto
+2.29114 257.98723 3.72412 257.97192 5 258.5 curveto
+5.68967 258.78545 6.30771 259.22081 7 259.5 curveto
+8.58867 260.1407 10.3946 259.90645 12 260.5 curveto
+12.3506 260.62962 12.68594 260.7973 13 261 curveto stroke
+newpath -1 255 moveto
+-0.95676 254.95932 -0.91165 254.92802 -0.86496 254.90468 curveto
+0.13504 254.40468 lineto
+0.64822 254.1481 1.35178 254.85191 1.86496 254.59532 curveto
+0.86496 255.09532 lineto
+0.91165 255.07198 0.95676 255.04068 1 255 curveto
+1.02066 254.97997 lineto
+-0.47934 256.47997 lineto
+-0.2602 256.26082 -0.22404 256.00417 -0.2977 255.78319 curveto
+0.2023 257.28319 lineto
+0.16501 257.17131 0.09958 257.06859 0.01549 256.9845 curveto
+1.01549 257.9845 lineto
+0.95589 257.9249 0.88692 257.87466 0.81195 257.83719 curveto
+1.81195 258.33719 lineto
+1.63397 258.2482 1.42226 258.23111 1.22209 258.33119 curveto
+2.22209 257.83119 lineto
+2.15273 257.86588 2.08475 257.91461 2.02003 257.97932 curveto
+3.52003 256.47932 lineto
+3.5 256.5 lineto
+3.28389 256.72972 3.33284 257.012 3.43013 257.30383 curveto
+2.93013 255.80383 lineto
+2.97351 255.93398 3.0265 256.06602 3.06989 256.19617 curveto
+3.56989 257.69617 lineto
+3.66716 257.988 3.71611 258.27028 3.5 258.5 curveto
+3.47997 258.52066 lineto
+1.97997 260.02066 lineto
+1.91525 260.08537 1.84727 260.13412 1.77791 260.16881 curveto
+0.77791 260.66881 lineto
+0.57773 260.76889 0.36601 260.7518 0.18803 260.66281 curveto
+-0.81197 260.16281 lineto
+-0.88693 260.12534 -0.9559 260.0751 -1.0155 260.0155 curveto
+-2.0155 259.0155 lineto
+-2.09958 258.93141 -2.16502 258.82869 -2.20232 258.71681 curveto
+-2.70232 257.21681 lineto
+-2.77597 256.99583 -2.7398 256.7392 -2.52066 256.52003 curveto
+-1.02066 255.02003 lineto
+ closepath fill
+newpath 1 259 moveto
+0.97934 259.02003 lineto
+2.47934 257.52003 lineto
+2.2602 257.73918 2.22404 257.99583 2.2977 258.21681 curveto
+1.7977 256.71681 lineto
+1.83499 256.82869 1.90042 256.93141 1.98451 257.0155 curveto
+0.98451 256.0155 lineto
+1.04411 256.0751 1.11308 256.12534 1.18805 256.16281 curveto
+0.18805 255.66281 lineto
+0.36603 255.7518 0.57774 255.76889 0.77791 255.66881 curveto
+-0.22209 256.16881 lineto
+-0.15273 256.13412 -0.08475 256.08539 -0.02003 256.02068 curveto
+-1.52003 257.52068 lineto
+-1.5 257.5 lineto
+-1.28389 257.27028 -1.33284 256.988 -1.43013 256.69617 curveto
+-0.93013 258.19617 lineto
+-0.97351 258.06602 -1.0265 257.93398 -1.06989 257.80383 curveto
+-1.56989 256.30383 lineto
+-1.66716 256.012 -1.71611 255.72972 -1.5 255.5 curveto
+-1.47997 255.47934 lineto
+0.02003 253.97934 lineto
+0.08475 253.91463 0.15273 253.86588 0.22209 253.83119 curveto
+1.22209 253.33119 lineto
+1.42227 253.23111 1.63399 253.2482 1.81197 253.33719 curveto
+2.81197 253.83719 lineto
+2.88693 253.87466 2.9559 253.9249 3.0155 253.9845 curveto
+4.0155 254.9845 lineto
+4.09958 255.06859 4.16502 255.17131 4.20232 255.28319 curveto
+4.70232 256.78319 lineto
+4.77597 257.00417 4.7398 257.2608 4.52066 257.47997 curveto
+3.02066 258.97997 lineto
+3 259 lineto
+2.95676 259.04068 2.91165 259.07198 2.86496 259.09532 curveto
+1.86496 259.59532 lineto
+1.35178 259.8519 0.64822 259.14809 0.13504 259.40468 curveto
+1.13504 258.90468 lineto
+1.08835 258.92802 1.04324 258.95932 1 259 curveto closepath fill
+newpath -1 259 moveto
+1 255 lineto
+1.17854 255.17854 1.38548 255.31178 1.60698 255.42253 curveto
+0.60698 254.92253 lineto
+1.04999 255.14404 1.55122 255.27562 1.99995 255.5 curveto
+2.99995 256 lineto
+3 256 lineto
+1 260 lineto
+0.99995 260 lineto
+1.99995 260.5 lineto
+1.55122 260.27562 1.05 260.14404 0.607 259.92253 curveto
+-0.393 259.42253 lineto
+-0.6145 259.31178 -0.82144 259.17856 -1 259 curveto closepath fill
+newpath -0.5 256.5 moveto
+0.05229 256.5 -0.05229 257.5 0.5 257.5 curveto stroke
+ 0 1 dtransform truncate idtransform setlinewidth pop
+newpath -4094.99998 257 moveto
+4094.99998 256.99998 lineto stroke
+newpath 0 -100 moveto
+-36.92659 -103.51175 136.98943 -101.7726 100 -99 curveto
+99.9889 -98.99916 0.01108 -99.99895 0 -100 curveto closepath fill
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/trap.197 b/Build/source/texk/web2c/triptrap/trap.197
new file mode 100644
index 00000000000..438b63467fb
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.197
@@ -0,0 +1,14 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%BoundingBox: -2 -4 8 4
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%%DocumentFonts: trapf
+ /trapf /trapf def
+/fshow {exch findfont exch scalefont setfont show}bind def
+%%EndProlog
+%%Page: 1 1
+gsave [0 -0.9428 0.9428 0.4714 0 0 ] concat 0 0 moveto
+(curb) trapf 10.56706 fshow grestore
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/trap.200 b/Build/source/texk/web2c/triptrap/trap.200
new file mode 100644
index 00000000000..e8143846e83
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.200
@@ -0,0 +1,58 @@
+%!PS
+%%BoundingBox: -7 -6 37 38
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%*Font: trapf 9.96265 9.96265 41:800000008000b8
+%*Font: trapf 19.9253 9.96265 42:800000010000c
+%%EndProlog
+%%Page: 1 1
+newpath 1 13 moveto
+5 11 lineto
+5.75 11.75 6.125 12.3125 6.3125 12.6875 curveto
+6.375 12.8125 6.41667 12.91667 6.44444 13 curveto
+6.94444 14.5 lineto
+7 14.66667 7 14.75 7 14.75 curveto
+2 13.75 lineto
+2 13.75 2 13 3.5 11.5 curveto
+8.5 12.5 lineto
+7 14 7 14.75 7 14.75 curveto
+2 13.75 lineto
+2 13.75 2 13.66667 1.94444 13.5 curveto
+2.44444 15 lineto
+2.41667 14.91667 2.375 14.8125 2.3125 14.6875 curveto
+2.125 14.3125 1.75 13.75 1 13 curveto closepath fill
+gsave newpath 0 0 moveto
+48.28426 -48.28429 48.28426 78.28429 0 30 curveto
+-8.28427 21.71573 -8.28427 8.28427 0 0 curveto closepath clip
+ 0.5 setgray 0 1.58115 dtransform truncate idtransform setlinewidth pop
+ [2.23608 1.11804 ] 1.11804 setdash 0 setlinecap 0 setlinejoin
+ 1 setmiterlimit
+gsave newpath 0 0 moveto
+30 0 lineto
+[0.89442 0.89442 -0.4472 0.4472 0 0] concat stroke grestore
+ 2 setlinecap 1 setlinejoin
+gsave newpath 0 0 moveto
+-48.28429 48.28426 78.28429 48.28426 30 0 curveto
+[0.89442 0.89442 -0.4472 0.4472 0 0] concat stroke grestore
+grestore
+ 0.5 setgray
+0 -2 moveto
+(Aqua) trapf 9.96265 fshow
+ 1.58115 0 dtransform exch truncate exch idtransform pop setlinewidth
+ [2.23608 1.11804 ] 1.11804 setdash 0 setlinecap 1 setlinejoin
+ 1 setmiterlimit
+gsave newpath 8.1693 -5.9851 moveto
+8.1693 13.9402 lineto
+[0.89442 0.89442 -0.4472 0.4472 0 0] concat stroke grestore
+8.3686 -2 moveto
+(Brass) trapf 19.9253 fshow
+ 0 1.58115 dtransform truncate idtransform setlinewidth pop 2 setlinecap
+gsave newpath 1 0 moveto
+2 1 lineto
+[0.89442 0.89442 -0.4472 0.4472 0 0] concat stroke grestore
+ 0 setgray
+0 10 moveto
+(ast) trapf 9.96265 fshow
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/trap.5 b/Build/source/texk/web2c/triptrap/trap.5
new file mode 100644
index 00000000000..749eaf76c69
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.5
@@ -0,0 +1,21 @@
+%!PS
+%%BoundingBox: -151 -2 169 21
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%%EndProlog
+%%Page: 1 1
+ 0 0 dtransform truncate idtransform setlinewidth pop [] 0 setdash
+ 0 setlinecap 0 setlinejoin 1 setmiterlimit
+newpath -1 -1 moveto
+-0.25 -0.25 0.125 0.3125 0.3125 0.6875 curveto
+0.875 1.8125 -0.25 1.25 2 -1 curveto stroke
+newpath -3 -2 moveto
+-2.25 -1.25 -1.875 -0.6875 -1.6875 -0.3125 curveto
+-1.125 0.8125 -2.25 0.25 0 -2 curveto stroke
+ 0.4 1 0 setrgbcolor
+newpath -150.99219 13.99976 moveto
+-150.99219 13.99976 lineto
+ closepath fill
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/trap.6 b/Build/source/texk/web2c/triptrap/trap.6
new file mode 100644
index 00000000000..569f2d0936d
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.6
@@ -0,0 +1,14 @@
+%!PS
+%%BoundingBox: 3 0 6 3
+%%Creator: MetaPost
+%%CreationDate: 1998.01.28:1118
+%%Pages: 1
+%%EndProlog
+%%Page: 1 1
+ 0 0 dtransform truncate idtransform setlinewidth pop [] 0 setdash
+ 0 setlinecap 0 setlinejoin 1 setmiterlimit
+newpath 3 0 moveto
+3.75 0.75 4.125 1.3125 4.3125 1.6875 curveto
+4.875 2.8125 3.75 2.25 6 0 curveto stroke
+showpage
+%%EOF
diff --git a/Build/source/texk/web2c/triptrap/trap.mf b/Build/source/texk/web2c/triptrap/trap.mf
new file mode 100644
index 00000000000..adf4d7bd48b
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.mf
@@ -0,0 +1,170 @@
+% This is a diabolical test file for MF84. Don't get stuck.
+if not known inimf: .inimf.=.0. % next lines are skipped if format loaded
+ inimf; nonstopmode; tracingtitles:=day; showstopping:=year; hppp:=1000;
+ << == >> ::: || `` '' -- !! ?? ## && @@ $$ [[ ]] {{ }} . (( 5.5.5 )) ++ "..";
+ begingroup save =; let=,; save,; newinternal $=,; let ):=, endgroup;
+ let year=month; showvariable errorstopmode,readstring,2,"2",,,(,),<<,year;
+ tracingrestores:=tracingcommands:=.00000762939453125; % that's 2^(-17)
+ if tracingcommands>0:tracingcommands:=if not cycle "":1.1 forever;fi;
+ tracingcommands:=2.1 exitif tracingcommands>2 endfor; showtoken |=:|>;
+ tracingedges:=1/.00001; tracingequations:=$+1; p~=tracingedges+.00001;
+ interim tracingspecs:=tracingpens:=tracingchoices:=tracingstats:=
+ warningcheck:=tracingoutput:=tracingmacros:=1; $:=ASCII""; $:=x; p~:=p~;
+ delimiters (); delimiters begintext endtext; vardef foo(text t)=t enddef;
+ def lig(text t,|)=ligtable0::for *=1step1until60:0kern boundarychar+*,endfor
+ skipto0;ligtable t:t|0,skipto255;boundarychar:=boundarychar+51.29999enddef;
+ foo begintext interim proofing:=(-.5; shipout nullpicture; special"3" endtext;
+ for n=tracingpens step 1 until proofing:fi endfor showstats; let!!=skipto;
+ path p~; p~=(0,0)..controls (15,4) and (-15,-12)..(4,0); everyjob /*\;;
+ vardef /*\`'@#=message @ & str#@ &jobname&char ASCII'`&str@#!enddef;
+ let next=dump; vardef `'='` enddef; def '`="\*/" enddef;
+elseif known"": `'pass[2.]; outer\; let next=\; delimiters ^~7! fi
+next\; % the second pass will now compute silently; the first pass will halt
+batchmode; ^~7,endgroup pausing:=1; exitif p exitif boolean pen pencircle endfor
+scantokens begingroup message char0&"watch this"; "pair p[],';"&char-1endgroup
+path p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(turningnumber',2.5);
+numeric p[][]; p[[ [$] ]]=10000000000000000; "this string constant is incomplete
+string foo[]p,p~if true:[]; p~000=char34&char200&char34;
+boolean p[]~,boolean fi.boolean; showvariable boolean; def\\= =end enddef;
+picture e[]e[], e[], p~[]~[][]; show length scantokens p~0;
+pen p~[]~,q["a",qq; p~1~=q=pencircle scaled mexp(-3016.57654);
+transform p,pp0; if p=p:qq=makepen((1,0)..cycle) xscaled hex "1000";fi
+qq:=makepen((0,0)..(1,0)..(0,1)..(0,0)..(1,0)..(0,1)..cycle);
+vardef p[][]p~ begintext suffix a,b endtext())suffix@=show #@; p.a.b() enddef;
+expandafter let\endtext\\; outer endtext,\,;;qq:=pencircle scaled 4.5 yscaled 2;
+(6,12)-p7=(0,1)transformed p=(2/(x-x),3/0)transformed p;
+p1\2p=p007=begintext if string p~[$]: p.1.2-p.1.199999,1 endtext transformed p;
+showstopping:=0;showvariable p; p=p; let [[=begingroup; let ]]=endgroup;
+(xxpart p+.002,yxpart p)=1[p1,p2]=(5,y+.00001)=(5,y)=(yypart p,xypart p);
+reverse(p~..cycle) transformed p=p2. 3.p;
+p[000000000001]2p~(,[2]3p~,-)=p~1~2[pausing];
+vardef p~[]@# tertiary t:=if p@ @=@ @p fi; vardef p[][]p~[]=BAD; inner ;;
+show p~[-2]~[3000,x]++4000>path p3; showvariable p,P;
+numeric p[]~; p3~=2alpha; p[1/$]~=3beta;
+begingroup save p; showvariable p; 3beta=1]]; showvariable p;
+def//expr;=enddef;def!primary!false):!fi enddef;
+def _aa__ secondary _a_=if(true enddef; qq:=makepen(qw..(qw scaled$)..cycle);
+primarydef _**__=[[show _*__]] enddef;
+secondarydef _***__=expandafter __ scantokens"**oct"_ enddef;
+// //pencircle slanted length p~**makepen reverse subpath p7-p2 of
+ (p7{p2}..controls _aa__ not odd.1(15) and known p or !p2and-p2..{1,1}(-p2
+ {curl- +1)..tension atleast1..cycle sqrt2++sqrt2***[[]];
+[[interim proofing:=charcode:=-20.5;chardp:=-2048;shipout nullpicture]];
+if charexists -275.50002>known p0 0p=known p~: randomseed charcode; fi
+randomseed:="goof"; a[($,18++1+-+18),(2,3)]=b[(3,2),(1,$);
+show (^+1,~+2) slanted-1 yscaled-2 zscaled-(3,4), p transformed(pp xscaled 9),
+ pp shifted (1,2) transformed(p transformed p), -_[0][1,2]; show
+floor sind mlog sqrt mexp200cosd angle(normaldeviate,uniformdeviate-chardp);
+string s[]; s1=s2=s4; s3=s5; s1=s2; if s1<=s4<>(s1<>s3):show[[char34=s2:=s3]]fi;
+substring penoffset point.1of.p~of[[pencircle]]rotated1080/2/1/3of decimal
+ directiontime postcontrol-1.5of(p~&cycle)-precontrol1/2of p~(p~)=s1:=s4:=s4;
+path p~[]; p~1=p2{length" "}&cycle; p~1=p2=p~0; p2..controls-p2..cycle=p~2;(p7
+..tension1.2..p~[length p~2]..p~2&{0,1}p2..tension1and atleast1..cycle)..tension
+ x..{curl1}-p7{curl hex "IsBad"}..tension.75and.74999..p2{0,1}&p2{_,'}..cycle:=p
+ ~4; subpath(-9,9)of subpath(3.5001,7.00001)of p~4=p~6;
+show p~6, directiontime(1,2) of p~6, directiontime(1,-1.00001) of p~6;
+p~3=(0,0)..controls (1,1) and (0,1)..(1,0); show p2..p2{p7}&{$,$}cycle,
+ (directiontime(1,1) of subpath(.314159,1) of p~3)[.314159,1];
+p~5=(subpath(0,.25)of p~3&subpath(.25,1)of p~3)shifted begintext1,0;
+p~3:=2/3'zscaled'{p~3}..controls(2,2/3(3))and penoffset(1/2x,y)of(0,1)(1,0);
+show p~3 intersectiontimes reverse p~3, point.17227 of p~3, point1-.28339of p~3;
+show point xpart(p~5 intersectiontimes p~5 shifted (.01,0))of p~5-
+ point ypart(p~5 intersectiontimes p~5 shifted (.01,0))of p~5;
+[[interim tracingedges:=1; e[-1+-+ -1.00001]=nullpicture; addto e1 also[[
+addto e0 doublepath p~5 scaled 3 withpen q; e0=e1=e2; cull e1 dropping (0,.1);
+nullpicture]];show e1 shifted(4089,-4095), e2 shifted(-4095,4092)shifted (-3,0),
+e2 shifted(4089,-4095)]];addto e1 also e2 shifted(-2,$); e1:=e1 shifted(-4,$);
+addto e0 also e1rotated89.999+e1scaled$; show e0 xscaled-10 yscaled2 xscaled82
+yscaled683;addto e1 doublepath (0,9) withweight-3 withweight turningnumber p~6
+ withpen pencircle xscaled(oct"180"++1) rotated-angle(64,$) shifted (9,8)
+ withpen makepen(($,$)..(1,0)..(1,1)..($,0)..($,$)&cycle)xscaled4095.49999;
+show e1, totalweight e1; chardp:=charcode:=5; xoffset:=-1.5; shipout e1;
+showstats; addto e2doublepath p~ yscaled1/60; e3:=e2 yscaled 0;
+autorounding:=2; addto e3doublepath(.5,0)..(3.5,1.5)withweight2;
+tracingspecs:=0; q:=makepen((1,1)..cycle) yscaled 1.5;
+p~8=(($,yy)rotated p{0,1}..{0,$}(1,0){0,$}..cycle)scaled2shifted(1000.49,9);
+turningcheck:=1;addto e2doublepath p~8 withpen q withweight p withpen cycle p;
+[[interim autorounding:=xx=.1; addto e2 contour p~8 withpen q withweight2]];
+chardx:=chardp:=charext:=-14.5;shipout-(-e0-e2)+e2shifted(0,6turningnumber p~8);
+p~9=(0,0)..(1,.5)..(5,1.5)..(7,2.5)..(12,3.5)..(13,4);addto e3 doublepath p~9;
+smoothing:=1; addto e3 doublepath p~9; addto e3 doublepath (-4095,0)..tension
+3/4 and 999..(0,2); show e3 rotated-90, (e0+e0) rotated90$ rotated90;
+if "a" if "ab">"b" elseif path reverse (3,4): >="aa":foo elseif fi "bar"
+else if '-(1,yy)<': :fi else def dup text t=[[t;save enddef;def|suffix$=,$
+enddef; def||tertiary p=show substring p of("a" enddef;||(2,$)&"bc");
+tertiarydef x++y=[[dup showtoken x;]];def quote x expr z of y=z enddef;
+ texts(quote x=(y+0)y+y)("xx",foo(x))=0]] enddef; def texts(text t,tt)expr?=
+ for n:=,for n"yy":n,length if false:endfor tt,t,:if string n:forsuffixes n=
+ foo1,[foo(n)],':show t,tt|(n;exitif not('<='+(?,yy)) endfor for m= :+endfor
+ for m=alpha step-1.1 3$: +m endfor fi endfor enddef; show (0,0){curl2}..
+ subpath(23.3,4.5)of p~9{curl3}..($,$){curl4}..cycle;numspecial p~++2+3;[[
+let?=if;save if,\;def if=endinput?enddef;def texts=input enddef;texts trap ]];
+dup[[def texts secondary x=primarydef y++y=x@y enddef; showtoken++;x enddef]]\;
+proofing:=1;texts:="a"&"b";% strings "yy" and "ab" no longer appear in memory
+texts-1.00001a1=-(a2+a3+a4+a5+a6);-(a3,a2)/.99999=-(a4+a5+[[showdependencies;
+a6]],a3+a4+a5+a6)]]; 1.00001a4+1=a5+a6; alpha:=.9alpha+7; showdependencies;
+a5=a6=2/3-a6; cull e1 dropping($,4a5)withweight1.5; charcode:=chardp:=27;
+openwindow 3 from (0,0) to (0,0) at "whoops"; addto p; shipout p; cull p;
+openwindow -.5 from ($,$) to ($,$) at (0,0); special p; numspecial "p";
+openwindow 15.49999 from (0,32*1024) to (1,31*1057) at (0,0); shipout e1;
+openwindow 5 from (0,length((0,0){0,0})) to (4,2) at ($,1);
+openwindow 6 from (length($,0),1) to (3,10) at (-5,2);
+display nullpicture; display p inwindow 3; display p inwindow 6;
+display e1 inwindow 6; cull e0 dropping (0.1,4095.999999) withweight 3.5
+withweight-3.5; display e0 inwindow 5.5; addto e0 also p; addto e0 contour 0;
+display e0 inwindow 5.49999; addto e0 contour p~9;
+display e1 inwindow 3+3; display e0e0 inwindow[[vardef e[]e=enddef;6]];
+addto e0 also e1; display e0 inwindow 5; ligtable||:255|=:|>>0,skipto0;
+display e1 inwindow 15; display e1 inwindow 6;
+show [[interim tracingcommands:=0; lig("g")(=:|); lig("h":"i")(|=:);
+lig("j")(|=:>);lig("k")(=:|>); lig("l")(|=:|>)]];
+b1:=c.a[ [[let c=++;vardef b=enddef;1]] ]; ligtable"m":0=:0,skipto5;
+!!; errhelp 0; errmessage "Be like Jane";
+errhelp "He%%%lp%"; errmessage""; errhelp ""; errmessage "Another";
+headerbyte 0; headerbyte(48.5)substring(-9,9)of"long"; for\=0:\
+headerbyte 9:2a6,"q"; fontdimen 9:2a6,"q"; fontdimen 1:2048;
+fontmaking:=1; extensible 5 5,"c"255.5,"d"; charlist 0:5:"a":"d";
+ligtable255:255::"a"=:"b","d" kern -2048,"c":0:99.5:"e"|=:|"f",0kern';
+ligtable 5:0; def clear(text x)=interim x:=$ enddef; clear(hppp); vppp=0;
+[[clear(tracingmacros); clear(tracingcommands); clear(tracingoutput\;
+ clear(proofing);designsize:=.99999;charcode:=ASCII char-418.5;vppp:=designsize;
+ def dp expr d = charcode:=charcode+1; chardp:=d; shipout nullpicture enddef;
+ dp 13; dp 12; dp 0; dp 21; dp -2; dp 17; dp 11; dp 3; charic:=-1000; dp -1;
+ dp 25; dp 31; dp 19; dp 7; charwd:=256; chardy:=6; dp 23; dp 30]];
+def f(suffix@@)(expr a,b)(text t)=numeric w; show a; % wipes out the old w
+addto @@ contour (0,0)..(2,0)..(1,$)..(1,1)..cycle withpen qq; % strange path
+addto @@ doublepath (0,0){1,1}..{2,1}(2,1) withpen qq; % carefully chosen
+addto @@ doublepath(($,$){1,0}..(1,1){1,0})scaled.5 withpen nullpen;
+cull @@ keeping (4,4) withweight1.5; enddef; def g(suffix$)=show $ enddef;
+addto e0 contour (0,0){1,0}..{1,0}(1,0){0,$}..{0,1}cycle withpen qq;
+f(e[3,w); g(e3,transformed p,penoffset-(1,1.3)of(pencircle scaled20 yscaled-.5),
+ directiontime (0,1) of ((0,0)..controls(1,1)and($,1)..(3,0)),
+ point 3.14159 of p~9 intersectiontimes subpath (3.14159,4) of p~9,
+ (($,1.1)..(1,$)) intersectiontimes precontrol$ of (0,0);
+addto e3 doublepath(-4094.99998,0)..(4094.99998,-.00001) withpen penoffset 0 of
+pencircle; addto e3 also e3 shifted (0,257); ,"flushed with pride"; numeric xx;
+def f(expr x,y,z)=showdependencies;tracingcapsules:=1;showdependencies;show
+ 1/3(3,6)*((x+y)+(y-x)), (1,1)/sqrt2 zscaled (x+1,x+2) - (x+1,x+2) rotated 45,
+ (0,1) zscaled (1,y+2)-(1,y+2) rotated 90 enddef; f((xx+1)/.3,(yy-1)/.5,(xx,0));
+'=(1000o3-4000(o1-o2)+4000o2+9,-.01o3+3ooo+
+ [[oo=9/10(o2+o4+o5-20);o4=o5=8/9(o1+.5o2); o6=-.0001o2;showdependencies;
+ numeric o[];xpart(alfa,[[pair alfa;0]])]])=-2/3[[save p;(p$,1-p$)]];
+xoffset:=yoffset:=4000[[oo=.5ooo=2*-1/2(ooo+[[numeric ooo;1]]);oo]];
+for @=angle(sqrt$,mlog$):charext:=uniformdeviate$;charht:=2048;granularity:=-8;
+addto e3 contour (0,-100)..tension 500..(100,-99)..tension 3000..cycle;
+tracingoutput:=@; shipout e3; special "bye"; interim char 99 = "c"; true=false;
+[[clear(tracingcommands); charcode:=ASCII char 269-13; shipout+nullpicture;
+"careful" quote for for = @ step 200 until 2*2600: &" METAFONT" endfor;]];
+scrollmode; "hello again"&char31; save p; fillin:=-.043;
+def f expr x=let )=]; let [=(; show _ enddef; begingroup tracingspecs:=1;
+show nullpen, makepath.qq, makepath(q rotated1), makepath pencircle rotated $;
+addto e0 doublepath (0,2){0,$}..{0,$}(0,1)..{1,0}(3,0)..(4,0){1,0}..cycle
+ withpen makepen((0,0)..(5,2.9)..(4,3)..cycle); tracingonline:=1; f xx[1);
+showdependencies; qq:=q; showstats; bye endtext
+% things not tested:
+% interaction (error insertion/deletion, interrupts, \pausing, files not there)
+% date, time; initialization of random number generator without randomseed
+% system-dependent parsing of file names, areas, extensions
+% certain error messages, especially fatal ones
+% things that can't happen in INIMF
+% unusual cases of fixed-point arithmetic
diff --git a/Build/source/texk/web2c/triptrap/trap.mp b/Build/source/texk/web2c/triptrap/trap.mp
new file mode 100644
index 00000000000..92e1a55c05e
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.mp
@@ -0,0 +1,215 @@
+% This is a test file for MetaPost analogous to trap.mf
+if not known inimp: .inimp.=.0. % next lines are skipped if format loaded
+ inimp; nonstopmode; tracingtitles:=day; showstopping:=year;
+ << == >> ::: || `` '' -- !! ?? ## && @@ $$ [[ ]] {{ }} . (( 5.5.5 )) ++ "..";
+ begingroup save =; let=,; save,; newinternal $=,; let ):=, endgroup;
+ let year=month; showvariable errorstopmode,readstring,2,"2",,,(,),<<,year;
+ tracingrestores:=tracingcommands:=.00000762939453125; % that's 2^(-17)
+ if tracingcommands>0:tracingcommands:=if not cycle "":1.1 forever;fi;
+ tracingcommands:=2.1 exitif tracingcommands>2 endfor; showtoken |=:|>;
+ tracinglostchars:=1/.00001; tracingequations:=$+1; p~=tracinglostchars+.00001;
+ interim tracingspecs:=tracingchoices:=tracingstats:=
+ warningcheck:=tracingoutput:=tracingmacros:=1; $:=ASCII""; $:=x; p~:=p~;
+ delimiters (); delimiters begintext endtext; vardef foo(text t)=t enddef;
+ def lig(text t,|)=ligtable0::for *=1step1until60:0kern boundarychar+*,endfor
+ skipto0;ligtable t:t|0,skipto255;boundarychar:=boundarychar+51.29999enddef;
+ foo begintext interim tracinglostchars:=(.5;show urcorner("flubo"infont"trapf"
+ ),2+2endtext; for n=tracingspecs step 1 until $:fi endfor showstats;
+ let!!=skipto; path p~; p~=(0,0)..controls (15,4) and (-15,-12)..(4,0);
+ everyjob /*\;; vardef /*\`'@#=message @ & str#@ &jobname&char ASCII'`&str@#!
+ enddef;let next=endinput;vardef `'='` enddef;def '`="\*/"enddef;
+ begingroup errorstopmode; endgroup;
+elseif known"": `'pass[2.]; nonstopmode; outer\; let next=\; delimiters ^~7! fi
+next\; % the second pass will now compute silently; the first pass will halt
+batchmode; ^~7,endgroup pausing:=1; exitif p exitif boolean pen pencircle endfor
+scantokens begingroup message char0&"watch this"; "pair p[],';"&char-1endgroup
+path p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(turningnumber',2.5);
+numeric p[][]; p[[ [$] ]]=10000000000000000; "this string constant is incomplete
+string foo[]p,p~if true:[];
+boolean p[]~,boolean fi.boolean; showvariable boolean;
+inner \; def\\= =show enddef; outer \; picture e[]e[], e[], p~[]~[][];
+pen p~[]~,q["a",qq; p~1~=q=pencircle scaled mexp(-3016.57654);
+transform p,pp0; if p=p:qq=makepen((7,0)..cycle) xscaled hex "1000";show qq;fi
+qq:=makepen((4,1)..(1,2)..(5,3)..(3,2)..(1,1)..(0,1)..(1,0)..cycle);show qq;
+vardef p[][]p~ begintext suffix a,b endtext())suffix@=show #@; p.a.b() enddef;
+expandafter let\endtext\\; outer endtext,\,;;
+(6,12)-p7=(0,1)transformed p=(2/(x-x),3/0)transformed p;
+p1\2p=p007=begintext if string p~[$]: p.1.2-p.1.199999,1 endtext transformed p;
+showstopping:=0;showvariable p; p=p; let [[=begingroup; let ]]=endgroup;
+(xxpart p+.002,yxpart p)=1[p1,p2]=(5,y+.00001)=(5,y)=(yypart p,xypart p);
+reverse(p~..cycle) transformed p=p2. 3.p;
+p[000000000001]2p~(,[2]3p~,-)=p~1~2[pausing];
+vardef p~[]@# tertiary t:=if p@ @=@ @p fi; vardef p[][]p~[]=BAD; inner ;;
+show p~[-2]~[3000,x]++4000>path p3; showvariable p,P;
+numeric p[]~; p3~=2alpha; p[1/$]~=3beta;
+begingroup save p; showvariable p; 3beta=1]]; showvariable p;
+def//expr;=enddef;def!primary!false):!fi enddef;
+def _aa__ secondary _a_=if(true enddef; qq:=makepen(qw..(qw scaled$)..cycle);
+show qq; primarydef _**__=[[show _*__]] enddef;
+secondarydef _***__=expandafter __ scantokens"**oct"_ enddef;
+// //pencircle slanted length p~**makepen reverse subpath p7-p2 of
+ (p7{p2}..controls _aa__ not odd.1(15) and known p or !p2and-p2..{1,1}(-p2
+ {curl- +1)..tension atleast1..cycle sqrt2++sqrt2***[[]];
+charcode:=-20.5;chardp:=-2048;shipout nullpicture;
+if charexists -275.50002>known p0 0p=known p~: randomseed charcode; fi
+randomseed:="goof"; a[($,18++1+-+18),(2,3)]=b[(3,2),(1,$);
+show (^+1,~+2) slanted-1 yscaled-2 zscaled-(3,4), p transformed(pp xscaled 9),
+ pp shifted (1,2) transformed(p transformed p), -_[0][1,2]; show
+floor sind mlog sqrt mexp200cosd angle(normaldeviate,uniformdeviate-chardp);
+string s[]; s1=s2=s4; s3=s5; s1=s2; if s1<=s4<>(s1<>s3):show[[char34=s2:=s3]]fi;
+substring penoffset point.1of.p~of[[pencircle]]rotated1080/2/1/3of decimal
+ directiontime postcontrol-1.5of(p~&cycle)-precontrol1/2of p~(p~)=s1:=s4:=s4;
+path p~[]; p~1=p2{length" "}&cycle; p~1=p2=p~0; p2..controls-p2..cycle=p~2;(p7
+..tension1.2..p~[length p~2]..p~2&{0,1}p2..tension1and atleast1..cycle)..tension
+ x..{curl1}-p7{curl hex "IsBad"}..tension.75and.74999..p2{0,1}&p2{_,'}..cycle:=p
+ ~4; subpath(-9,9)of subpath(3.5001,7.00001)of p~4=p~6;
+show p~6, directiontime(1,2) of p~6, directiontime(1,-1.00001) of p~6;
+p~3=(0,0)..controls (1,1) and (0,1)..(1,0); show p2..p2{p7}&{$,$}cycle,
+ (directiontime(1,1) of subpath(.314159,1) of p~3)[.314159,1];
+p~5=(subpath(0,.25)of p~3&subpath(.25,1)of p~3)shifted begintext1,0;
+p~3:=2/3'zscaled'{p~3}..controls(2,2/3(3))and penoffset(1/2x,y)of(0,1)(1,0);
+show p~3 intersectiontimes reverse p~3, point.17227 of p~3, point1-.28339of p~3;
+show point xpart(p~5 intersectiontimes p~5 shifted (.01,0))of p~5-
+ point ypart(p~5 intersectiontimes p~5 shifted (.01,0))of p~5;
+[[ e[-1+-+ -1.00001]=nullpicture; addto e1 also[[
+addto e0 doublepath p~5 scaled 3 withpen q; e0=e1=e2;
+nullpicture]];show e1, e2 shifted (-3,0) ]];
+addto e1 also e2 shifted(-2,$); e1:=e1 shifted(-4,$);
+addto e1 doublepath (0,9) withcolor(.4,turningnumber p~4,0)
+ withpen qq xscaled(oct"180"++1) rotated-angle(64,$) shifted (9,8);
+show e1; chardp:=charcode:=5; xoffset:=-1.5; shipout e1; e3=nullpicture;
+showstats; addto e3doublepath(.5,0)..(3.5,1.5)dashed e0;
+ q:=makepen((1,1)..cycle) yscaled 1.5;
+chardx:=chardp:=charext:=-14.5;charcode:=6;shipout e2;
+p~9=(0,0)..(1,.5)..(5,1.5)..(7,2.5)..(12,3.5)..(13,4);addto e3 doublepath p~9;
+addto doublepath (-4095,0)..tension
+3/4 and 999..(0,2); show e3 rotated-90;
+if "a" if "ab">"b" elseif path reverse (3,4): >="aa":foo elseif fi "bar"
+else if '-(1,yy)<': :fi else def dup text t=[[t;save enddef;def|suffix$=,$
+enddef; def||tertiary p=show substring p of("a" enddef;||(2,$)&"bc");
+tertiarydef x++y=[[dup showtoken x;]];def quote x expr z of y=z enddef;
+ texts(quote x=(y+0)y+y)("xx",foo(x))=0]] enddef; def texts(text t,tt)expr?=
+ for n:=,for n"yy":n,length if false:endfor tt,t,:if string n:forsuffixes n=
+ foo1,[foo(n)],':show t,tt|(n;exitif not('<='+(?,yy)) endfor for m= :+endfor
+ for m=alpha step-1.1 3$: +m endfor fi endfor enddef; show (0,0){curl2}..
+ subpath(23.3,4.5)of p~9{curl3}..($,$){curl4}..cycle;zzz=p~++2+3;[[
+let?=if;save if,\;def if=endinput?enddef;def texts=input enddef;texts trap ]];
+dup[[def texts secondary x=primarydef y++y=x@y enddef; showtoken++;x enddef]]\;
+texts:="a"&"b";% strings "yy" and "ab" no longer appear in memory
+texts-1.00001a1=-(a2+a3+a4+a5+a6);-(a3,a2)/.99999=-(a4+a5+[[showdependencies;
+a6]],a3+a4+a5+a6)]]; 1.00001a4+1=a5+a6; alpha:=.9alpha+7; showdependencies;
+a5=a6=2/3-a6; charcode:=chardp:=27; 3.1=aaz; show aaz; ligtable||:255|=:|>>0,
+skipto0; show [[interim tracingcommands:=0; lig("g")(=:|); lig("h":"i")(|=:);
+lig("j")(|=:>);lig("k")(=:|>); lig("l")(|=:|>)]];
+b1:=c.a[ [[let c=++;vardef b=enddef;1]] ]; ligtable"m":0=:0,skipto5;
+!!; errhelp 0; errmessage "Be like Jane";
+errhelp "He%%%lp%"; errmessage""; errhelp ""; errmessage "Another";
+headerbyte 0; headerbyte(48.5)substring(-9,9)of"long"; for\=0:\
+headerbyte 9:2a6,"q"; fontdimen 9:2a6,"q"; fontdimen 1:2048;
+fontmaking:=1; extensible 5 5,"c"255.5,"d"; charlist 0:5:"a":"d";
+ligtable255:255::"a"=:"b","d" kern -2048,"c":0:99.5:"e"|=:|"f",0kern';
+ligtable 5:0; def clear(text x)=interim x:=$ enddef; clear(hppp); vppp=0;
+[[clear(tracingmacros); clear(tracingcommands); clear(tracingoutput\;
+ designsize:=.99999;charcode:=ASCII char-418.5;
+ def dp expr d = charcode:=charcode+1; chardp:=d; shipout nullpicture enddef;
+ dp 13; dp 12; dp 0; dp 21; dp -2; dp 17; dp 11; dp 3; charic:=-1000; dp -1;
+ dp 25; dp 31; dp 19; dp 7; charwd:=256; chardy:=6; dp 23; dp 30]];
+def f(suffix@@)(expr a,b)(text t)=numeric w; show a; % wipes out the old w
+addto @@ contour (0,0)..(2,0)..(1,$)..(1,1)..cycle withpen qq; % strange path
+addto @@ doublepath (0,0){1,1}..{2,1}(2,1) withpen qq; % carefully chosen
+addto @@ doublepath(($,$){1,0}..(1,1){1,0})scaled.5 withpen nullpen;
+enddef; def g(suffix$)=show $ enddef;
+addto e0 contour (0,0){1,0}..{1,0}(1,0){0,$}..{0,1}cycle withpen qq;
+f(e[3,w); g(e3,transformed p,penoffset-(1,1.3)of(pencircle scaled20 yscaled-.5),
+ directiontime (0,1) of ((0,0)..controls(1,1)and($,1)..(3,0)),
+ point 3.14159 of p~9 intersectiontimes subpath (3.14159,4) of p~9,
+ (($,1.1)..(1,$)) intersectiontimes precontrol$ of (0,0);
+addto e3 doublepath(-4094.99998,0)..(4094.99998,-.00001) withpen penoffset 0 of
+pencircle; addto e3 also e3 shifted (0,257); ,"flushed with pride"; numeric xx;
+def f(expr x,y,z)=showdependencies;tracingcapsules:=1;showdependencies;show
+ 1/3(3,6)*((x+y)+(y-x)), (1,1)/sqrt2 zscaled (x+1,x+2) - (x+1,x+2) rotated 45,
+ (0,1) zscaled (1,y+2)-(1,y+2) rotated 90 enddef; f((xx+1)/.3,(yy-1)/.5,(xx,0));
+'=(1000o3-4000(o1-o2)+4000o2+9,-.01o3+3ooo+
+ [[oo=9/10(o2+o4+o5-20);o4=o5=8/9(o1+.5o2); o6=-.0001o2;showdependencies;
+ numeric o[];xpart(alfa,[[pair alfa;0]])]])=-2/3[[save p;(p$,1-p$)]];
+xoffset:=yoffset:=4000[[oo=.5ooo=2*-1/2(ooo+[[numeric ooo;1]]);oo]];
+addto foo contour begingroup vardef foo=enddef; (0,0)..cycle endgroup;
+p~7=p~8; p~8:=(0,0){-1,1}..(30,0); show p~8, directiontime (0,-1)of p~8;
+show directiontime (1,0) of p~9, directiontime(1,-1)
+of ((0,0){1,0}..(0,0){0,-1)..cycle);
+e9=e4=nullpicture; addto e4 doublepath p~8;
+addto e9 doublepath p~8 dashed e4; e9:=nullpicture;
+e4:=nullpicture; addto e4 doublepath(1,1)..(4,1);
+addto e9 doublepath p~8 dashed e4; e9:=nullpicture;
+addto e4 doublepath makepath pencircle dashed e4 scaled -2; show e4;
+e4:=e5=nullpicture; addto e4 doublepath (-4,-3)..tension 2..(-2,-2.7);
+addto e5 doublepath p~5 shifted (0,4) scaled 3 dashed e4 withpen qq;
+show llcorner e5; verbatimtex \font\tra=trapf at 10pt
+ \font\trb=trapf at 20pt % TeX comment only!" etex
+e6:=nullpicture; addto e6 doublepath (0,0)..(30,0) dashed makepath pencircle
+dashed e5 withpen pencircle scaled2 dashed e5shifted(0,-11)
+withpen pencircle; show e6; def -- = {curl1}..{curl1}enddef;
+p~7 := p~8 rotated 90 xscaled -1 .. cycle; linecap:=2; linejoin:=1;
+e6=nullpicture; addto e6 doublepath p~8 dashed e5 withpen pencircle;
+clip e6 to p~7; addto e6 also btex \tra Aqua \vrule\trb Brass etex
+ shifted(0,-2); addto e6 doublepath (1,0)..(2,1); addto e5 also
+ e6 withcolor .5*(1,1,1) dashed e4 withpen pencircle xscaled 2 rotated 45;
+addto e5 also btex \tra mast etex shifted(0,10);
+show e6, lrcorner e5, ulcorner e5; charcode:=200; shipout e5;
+showstats; e5:=e6:="curb"infont"trapf" slanted-.5 scaled-1; showstats;
+show penoffset(0,0)of pencircle, llcorner e5, urcorner e5;
+e5:=e5 rotated 90 shifted "oops"; show llcorner e5, urcorner e5;
+show urcorner (char220 infont "trapf"), makepath qq;
+show subpath(-2,-1)of p~8, subpath(9,10)of makepath pencircle;
+"hi" infont "qw99z"; special "ij"="ij"; show substring(-2,-1)of"abc";
+addto e5 contour [[ ]]; addto e5 contour true; pausing:=0;prologues:=1;
+charcode:=197; shipout e5; p~10=(0,0){1,1.01}..tension atleast 1..{1,0}
+(1,1){-1,1}..(2,0){1,-1}; prologues:=0; for d=(-1,1),(1,-1),(0,0):
+show directiontime d of p~10; endfor linejoin:=linecap:=1;
+e5:=nullpicture; addto e5 contour makepath(pencircle scaled 10)
+withpen pencircle shifted(2,0); addto e5 doublepath (0,0)..(12,0)
+withpen pencircle yscaled 3; charcode:=148; shipout e5;
+e5:=nullpicture; clip p~8 to; clip e5 to e4; clip e5 to p~8; clip e5 to p~7;
+addto e5 doublepath makepath(pencircle scaled 50) withpen qq;
+addto e5 doublepath p~8 withpen pencircle xscaled 2 dashed e4;
+addto e5 doublepath p~8 withpen pencircle dashed e4;
+addto e5 doublepath p~8 shifted (10,0) dashed e4 scaled 1 withpen pencircle;
+charcode:=149; shipout e5; addto 3; addto p~8 contour p~7;
+e5:=nullpicture; linecap:=2; linejoin:=0; miterlimit:=10;
+addto e5 contour (10,5)..cycle withpen qq;
+addto e5 doublepath (5,10)..(5,15) withpen qq;
+addto e5 doublepath (0,0)..controls(10,10)..(10,10)..(0,20){curl1}..(30,10)
+withpen makepen((0,-5)..(0,5)..cycle); charcode:=150; prologues:=1; shipout e5;
+for @=angle(sqrt$,mlog$):charext:=uniformdeviate$;charht:=2048;
+addto e3 contour (0,-100)..tension 500..(100,-99)..tension 3000..cycle;
+tracingoutput:=@; special "bye"; charcode:=151; shipout e3;
+interim char 99 = "c"; true=false; show penoffset (2,1) of qq;
+showstats; let f=faz; showtoken f; showstats;
+e17=nullpicture; addto e17 doublepath (-4,-5)..(6,5);
+setbounds e17 to makepath(pencircle scaled 9); show llcorner e17, urcorner e17;
+addto e5 also e17 shifted (-5,-5); show llcorner e5; truecorners:=2;
+show llcorner e5; truecorners:=-1;
+setbounds e17 to makepath(pencircle xscaled 19);
+addto e5 also e17 shifted(-5,-10); show llcorner e5, e5, urcorner pencircle;
+e5:=nullpicture; path ap[];
+ap1=makepath(pencircle scaled 100);
+ap2=(2,-14)..controls (14,-7) and (14,7)..(2,14);
+ap3=(-50,0)..controls (-50,0) .. (50,0);
+show arclength (ap2 scaled 1000), arclength(ap3 scaled 200);
+show arclength ap1, arclength ap2;
+show arctime 6.4 of ap3, arclength subpath(0,arctime 37 of ap3) of ap3;
+show arctime -1000 of ap1, arctime -3 of ap2, arctime314 of (ap1 scaled .00001);
+[[clear(tracingcommands); charcode:=ASCII char 269-13; shipout nullpicture;
+"careful" quote for for = @ step 200 until 2*2600: &" METAFONT" endfor;]];
+scrollmode; "hello again"&char31; save p;
+def f expr x=let )=]; let [=(; show _ enddef; begingroup tracingonline:=1;
+tracingonline:=1; f xx[1); showdependencies; qq:=q; showstats; bye endtext
+% things not tested:
+% interaction (error insertion/deletion, interrupts, \pausing, files not there)
+% date, time; initialization of random number generator without randomseed
+% system-dependent parsing of file names, areas, extensions
+% certain error messages, especially fatal ones
+% things that can't happen in INIMP
+% unusual cases of fixed-point arithmetic
+% certain other unusual cases, especially when something similar is tested
+% most events that trigger string pool compaction
diff --git a/Build/source/texk/web2c/triptrap/trap.mpx b/Build/source/texk/web2c/triptrap/trap.mpx
new file mode 100644
index 00000000000..1529948d569
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.mpx
@@ -0,0 +1,27 @@
+% Written by DVItoMP, C Version 0.60
+begingroup save _p,_r,_s,_n; picture _p; _p=nullpicture;
+string _n[];
+vardef _s(expr _t,_f,_m,_x,_y)=
+ addto _p also _t infont _f scaled _m shifted (_x,_y); enddef;
+_n0="trapf";
+_s("Aqua",_n0,1.00000,0.0000,0.0000);
+interim linecap:=0;
+vardef _r(expr _a,_w) =
+ addto _p doublepath _a withpen pencircle scaled _w enddef;
+_r((8.1693,-3.9851)..(8.1693,15.9402), 0.3985);
+_n1="trapf";
+_s("Brass",_n1,2.00000,8.3686,0.0000);
+setbounds _p to (0,-3.9851)--(18.3313,-3.9851)--
+ (18.3313,15.9402)--(0,15.9402)--cycle;
+_p endgroup
+mpxbreak
+begingroup save _p,_r,_s,_n; picture _p; _p=nullpicture;
+string _n[];
+vardef _s(expr _t,_f,_m,_x,_y)=
+ addto _p also _t infont _f scaled _m shifted (_x,_y); enddef;
+_n0="trapf";
+_s("ast",_n0,1.00000,0.0000,0.0000);
+setbounds _p to (0,-0.9963)--(1.9925,-0.9963)--
+ (1.9925,6.9738)--(0,6.9738)--cycle;
+_p endgroup
+mpxbreak
diff --git a/Build/source/texk/web2c/triptrap/trap.typ b/Build/source/texk/web2c/triptrap/trap.typ
new file mode 100644
index 00000000000..134766ec4f1
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trap.typ
@@ -0,0 +1,210 @@
+This is GFtype, Version 3.1
+Options selected: Mnemonic output = true; pixel output = true.
+' METAFONT output 2002.12.23:1157'
+
+35: beginning of char 5: -4096<=m<=4094 -2<=n<=1
+(initially n=1) paint (4095)1
+64: skip0 0 (n=0) paint (4093)1
+69: skip0 0 (n=-1) paint (4096)1
+74: skip0 0 (n=-2) paint (4092)1(1)1
+81: eoc
+(The character is too large to be displayed in full.)
+.<--This pixel's lower left corner is at (-4096,2) in METAFONT coordinates
+
+
+
+
+.<--This pixel's upper left corner is at (-4096,-2) in METAFONT coordinates
+
+82: beginning of char 5 with extension -14: -4<=m<=1002 -6<=n<=11
+(previous character with the same code started at byte 35)
+(initially n=11) paint (1002)4
+111: skip0 0 (n=10) paint (1002)4
+116: skip0 0 (n=9) paint (1002)4
+121: skip1 3 (n=5) paint (1002)4
+127: skip0 0 (n=4) paint (1002)4
+132: skip0 0 (n=3) paint (1002)4
+137: newrow 7 (n=2) paint 1
+139: newrow 3 (n=1) paint 1(1)1(1)1
+145: newrow 1 (n=0) paint 1(1)2(1)1(1)1
+153: newrow 1 (n=-1) paint 2(1)1
+157: newrow 0 (n=-2) paint 1(1)1
+161: skip1 1 (n=-4) paint (7)1
+165: newrow 7 (n=-5) paint 1
+167: newrow 6 (n=-6) paint 1(1)1
+171: eoc
+(The character is too large to be displayed in full.)
+.<--This pixel's lower left corner is at (-4,12) in METAFONT coordinates
+
+
+
+
+
+
+
+
+
+ *
+ * * *
+ * ** * *
+ ** *
+* *
+
+ *
+ *
+ * *
+.<--This pixel's upper left corner is at (-4,-6) in METAFONT coordinates
+
+172: yyy -216270 (-3.30002)
+177: xxx 'title ab'
+187: xxx 'xoffset'
+196: yyy -65536 (-1)
+201: beginning of char 27 with extension -14: -4096<=m<=4094 -1<=n<=0
+(initially n=0) paint (4093)1(1)4095
+234: newrow 0 (n=-1) paint 4093(1)1
+240: eoc
+(The character is too large to be displayed in full.)
+.<--This pixel's lower left corner is at (-4096,1) in METAFONT coordinates
+
+********************************************************************************
+.<--This pixel's upper left corner is at (-4096,-1) in METAFONT coordinates
+
+241: xxx 'xoffset'
+250: yyy -87359488 (-1333)
+255: xxx 'yoffset'
+264: yyy -87359488 (-1333)
+269: beginning of char 109: -5428<=m<=2762 -1435<=n<=-1077
+(initially n=-1077) paint (0)8190
+298: skip2 256 (n=-1334) paint (0)8190
+305: skip1 98 (n=-1433) paint (4143)55
+311: skip0 0 (n=-1434) paint (4088)106
+317: skip0 0 (n=-1435) paint (4092)74
+323: eoc
+(The character is too large to be displayed in full.)
+.<--This pixel's lower left corner is at (-5428,-1076) in METAFONT coordinates
+********************************************************************************
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+.<--This pixel's upper left corner is at (-5428,-1156) in METAFONT coordinates
+
+324: xxx 'bye'
+329: xxx 'xoffset'
+338: yyy -87359488 (-1333)
+343: xxx 'yoffset'
+352: yyy -87359488 (-1333)
+357: beginning of char 0: 0<=m<=0 0<=n<=0
+(initially n=0)
+363: eoc
+(The character is entirely blank.)
+
+364: xxx 'title careful METAFONT METAFONT METAFONT METAFONT METAFONT METAF
+ONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT ME
+TAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT METAFONT
+ METAFONT METAFONT METAFONT METAFONT'
+624: xxx 'title hello again?'
+624: ! non-ASCII character in xxx command!
+
+Postamble starts at byte 644, after special info at byte 364.
+design size = 134217728 (128pt)
+check sum = 765094058
+hppp = -65536 (-1)
+vppp = 65535 (0.99998)
+min m = -5428, max m = 4094
+min n = -1435, max n = 11
+Character 0: dx -950272 (-14.5), dy 393216 (6), width 2097152 (-256), loc 324
+Character 5: dx -950272 (-14.5), width 0 (0), loc 82
+Character 27: dx -950272 (-14.5), width 0 (0), loc 172
+Character 95: dx -950272 (-14.5), width 0 (0), loc -1
+Character 96: dx -950272 (-14.5), width 0 (0), loc -1
+Character 97: dx -950272 (-14.5), width 0 (0), loc -1
+Character 98: dx -950272 (-14.5), width 0 (0), loc -1
+Character 99: dx -950272 (-14.5), width 0 (0), loc -1
+Character 100: dx -950272 (-14.5), width 0 (0), loc -1
+Character 101: dx -950272 (-14.5), width 0 (0), loc -1
+Character 102: dx -950272 (-14.5), width 0 (0), loc -1
+Character 103: dx -950272 (-14.5), width 0 (0), loc -1
+Character 104: dx -950272 (-14.5), width 0 (0), loc -1
+Character 105: dx -950272 (-14.5), width 0 (0), loc -1
+Character 106: dx -950272 (-14.5), width 0 (0), loc -1
+Character 107: dx -950272 (-14.5), width 0 (0), loc -1
+Character 108: dx -950272 (-14.5), dy 393216 (6), width 2097152 (-256), loc -1
+Character 109: dx -950272 (-14.5), dy 393216 (6), width 2097152 (-256), loc 241
+Character 236: dx 0 (0), width 0 (0), loc -1
+The file had 5 characters altogether.
diff --git a/Build/source/texk/web2c/triptrap/trapf.pl b/Build/source/texk/web2c/triptrap/trapf.pl
new file mode 100644
index 00000000000..6c7c9a2a43d
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trapf.pl
@@ -0,0 +1,105 @@
+(FAMILY UNSPECIFIED)
+(FACE F MRR)
+(CODINGSCHEME MP TEST: NOT A REAL FONT)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 0)
+(FONTDIMEN
+ (SLANT R -2.0)
+ (SPACE R 0.400001)
+ (STRETCH R 0.200001)
+ (SHRINK R 0.1)
+ (XHEIGHT R 0.45)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.200001)
+ )
+(CHARACTER O 0
+ (CHARWD R 0.700001)
+ (CHARHT R -0.1)
+ (CHARDP R 0.200001)
+ )
+(CHARACTER O 55
+ (CHARWD R -0.5)
+ )
+(CHARACTER O 57
+ (CHARWD R 0.1)
+ )
+(CHARACTER C 1
+ (CHARWD R 0.0)
+ )
+(CHARACTER C 2
+ (CHARWD R 0.0)
+ )
+(CHARACTER C 3
+ (CHARWD R 0.0)
+ )
+(CHARACTER C 4
+ (CHARWD R 0.0)
+ )
+(CHARACTER C 5
+ (CHARWD R 0.0)
+ )
+(CHARACTER C 6
+ (CHARWD R 0.0)
+ )
+(CHARACTER C 7
+ (CHARWD R 0.0)
+ )
+(CHARACTER C A
+ (CHARWD R 0.200001)
+ (CHARHT R 0.700001)
+ (CHARDP R 0.1)
+ (CHARIC R 0.1)
+ )
+(CHARACTER C B
+ (CHARWD R 0.3)
+ (CHARHT R 0.8)
+ (CHARDP R 0.200001)
+ )
+(CHARACTER C C
+ (CHARWD R 0.400001)
+ )
+(CHARACTER C M
+ (CHARWD R 0.6)
+ (CHARIC R 0.200001)
+ (VARCHAR
+ (MID C A)
+ (BOT C B)
+ (REP O 0)
+ )
+ )
+(CHARACTER C a
+ (CHARWD R 0.200001)
+ (CHARHT R 0.700001)
+ (CHARDP R 0.1)
+ (CHARIC R 0.1)
+ (NEXTLARGER O 202)
+ )
+(CHARACTER C b
+ (CHARWD R 0.3)
+ (CHARHT R 0.8)
+ (CHARDP R 0.200001)
+ (NEXTLARGER C M)
+ )
+(CHARACTER C p
+ (CHARWD R 0.0)
+ )
+(CHARACTER C q
+ (CHARWD R 0.0)
+ )
+(CHARACTER C r
+ (CHARWD R 0.0)
+ )
+(CHARACTER C s
+ (CHARWD R 0.0)
+ )
+(CHARACTER C t
+ (CHARWD R 0.0)
+ )
+(CHARACTER C u
+ (CHARWD R 0.0)
+ )
+(CHARACTER O 202
+ (CHARWD R 0.400001)
+ )
diff --git a/Build/source/texk/web2c/triptrap/trapman.tex b/Build/source/texk/web2c/triptrap/trapman.tex
new file mode 100644
index 00000000000..7968c6e44ea
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trapman.tex
@@ -0,0 +1,400 @@
+% The TRAP manual: How to validate MF --- last updated by D E Knuth on 4 Dec 89
+\font\eighttt= cmtt8
+\font\eightrm= cmr8
+\font\titlefont=cmssdc10 at 40pt
+\let\mc=\eightrm
+\font\logo=manfnt % font used for the METAFONT logo
+\def\MF{{\logo META}\-{\logo FONT}}
+\rm
+\let\mainfont=\tenrm
+
+\def\.#1{\hbox{\tt#1}}
+\def\\#1{\hbox{\it#1\/\hskip.05em}} % italic type for identifiers
+
+\parskip 2pt plus 1pt
+\baselineskip 12pt plus .25pt
+
+\def\verbatim#1{\begingroup \frenchspacing
+ \def\do##1{\catcode`##1=12 } \dospecials
+ \parskip 0pt \parindent 0pt
+ \catcode`\ =\active \catcode`\^^M=\active
+ \tt \def\par{\ \endgraf} \obeylines \obeyspaces
+ \input #1 \endgroup}
+% a blank line will be typeset at the end of the file;
+% if you're unlucky it will appear on a page by itself!
+{\obeyspaces\global\let =\ }
+
+\output{\shipout\box255\global\advance\pageno by 1} % for the title page only
+\null
+\vfill
+\centerline{\titlefont A Torture Test}
+\vskip8pt
+\centerline{\titlefont for \logo ()*+,-.*}
+\vskip 24pt
+\centerline{by Donald E. Knuth}
+\centerline{Stanford University}
+\vskip 6pt
+\centerline{({\sl Version 2, January 1990\/})}
+\vfill
+\centerline{\vbox{\hsize 4in
+\noindent Programs that claim to be implementations of \MF84 are
+supposed to be able to process the test routine contained in this
+report, producing the outputs contained in this report.}}
+\vskip 24pt
+{\baselineskip 9pt
+\eightrm\noindent
+The preparation of this report was supported in part by the National Science
+Foundation under grants IST-8201926 and MCS-8300984,
+and by the System Development Foundation.
+{\logo opqrstuq} is a trademark of Addison-Wesley Publishing Company.
+
+
+}\pageno=0\eject
+
+\output{\shipout\vbox{ % for subsequent pages
+ \baselineskip0pt\lineskip0pt
+ \hbox to\hsize{\strut
+ \ifodd\pageno \hfil\eightrm\firstmark\hfil
+ \mainfont\the\pageno
+ \else\mainfont\the\pageno\hfil
+ \eightrm\firstmark\hfil\fi}
+ \vskip 10pt
+ \box255}
+ \global\advance\pageno by 1}
+\let\runninghead=\mark
+\outer\def\section#1.{\noindent{\bf#1.}\quad
+ \runninghead{\uppercase{#1} }\ignorespaces}
+
+\section Introduction.
+People often think that their programs are ``debugged'' when large applications
+have been run successfully. But system programmers know that a typical large
+application tends to use at most about 50 per cent of the instructions
+in a typical compiler. Although the other half of the code---which tends
+to be the ``harder half''---might be riddled with errors, the system seems
+to be working quite impressively until an unusual case shows up on the
+next day. And on the following day another error manifests itself, and so on;
+months or years go by before certain parts of the compiler are even
+activated, much less tested in combination with other portions of the system,
+if user applications provide the only tests.
+
+How then shall we go about testing a compiler? Ideally we would like to
+have a formal proof of correctness, certified by a computer.
+This would give us a lot of confidence,
+although of course the formal verification program might itself be incorrect.
+A more serious drawback of automatic verification is that the formal
+specifications of the compiler are likely to be wrong, since they aren't
+much easier to write than the compiler itself. Alternatively, we can
+substitute an informal proof of correctness: The programmer writes his or
+her code in a structured manner and checks that appropriate relations
+remain invariant, etc. This helps greatly to reduce errors, but it cannot
+be expected to remove them completely; the task of checking a large
+system is sufficiently formidable that human beings cannot do it without
+making at least a few slips here and there.
+
+Thus, we have seen that test programs are unsatisfactory if they are simply
+large user applications; yet some sort of test program is needed because
+proofs of correctness aren't adequate either. People have proposed schemes
+for constructing test data automatically from a program text, but such
+approaches run the risk of circularity, since they cannot assume that a
+given program has the right structure.
+
+I have been having good luck with a somewhat different approach,
+first used in 1960 to debug an {\mc ALGOL} compiler. The idea is to
+construct a test file that is about as different from a typical user
+application as could be imagined. Instead of testing things that people
+normally want to do, the file tests complicated things that people would
+never dare to think of, and it embeds these complexities in still
+more arcane constructions. Instead of trying to make the compiler do the
+right thing, the goal is to make it fail (until the bugs have all been found).
+
+To write such a fiendish test routine, one simply gets into a nasty frame
+of mind and tries to do everything in the unexpected way. Parameters
+that are normally positive are set negative or zero; borderline cases
+are pushed to the limit; deliberate errors are made in hopes that the
+compiler will not be able to recover properly from them.
+
+A user's application tends to exercise 50\%\ of a compiler's logic,
+but my first fiendish tests tend to improve this to about 90\%. As the
+next step I generally make use of frequency-counting software to identify
+the instructions that have still not been called upon. Then I add ever more
+fiendishness to the test routine, until more than 99\%\ of the code
+has been used at least once. (The remaining bits are things that
+can occur only if the source program is really huge, or if certain
+fatal errors are detected; or they are cases so similar to other well-tested
+things that there can be little doubt of their validity.)
+
+Of course, this is not guaranteed to work. But my experience in 1960 was
+that only two bugs were ever found in that {\mc ALGOL} compiler after it
+correctly translated that original fiendish test. And one of those bugs
+was actually present in the results of the test; I simply had failed to
+notice that the output was incorrect. Similar experiences occurred later
+during the 60s and 70s, with respect to a few assemblers, compilers,
+and simulators that I wrote.
+
+This method of debugging, combined with the methodology of structured
+programming and informal proofs (otherwise known as careful desk checking),
+leads to greater reliability of production software than any other
+method I know. Therefore I have used it in developing \MF84, and the
+main bulk of this report is simply a presentation of the test program
+that was used to get the bugs out of \MF.
+
+Such a test file is useful also after a program has been debugged, since
+it can be used to give some assurance that subsequent modifications don't
+mess things up.
+
+The test file is called \.{TRAP.MF}, because of my warped sense of humor:
+\MF's companion system, \TeX, has a similar test file called \.{TRIP}, and I
+couldn't help thinking about Billy Goat Gruff and the story of ``trip,
+trap, trip, trap.''
+
+The contents of this test file are so remote from what people actually
+do with \MF, I feel apologetic if I have to explain the correct
+translation of \.{TRAP.MF}; nobody really cares about most of the
+nitty-gritty rules that are involved. Yet I believe \.{TRAP} exemplifies
+the sort of test program that has outstanding diagnostic ability, as
+explained above.
+
+If somebody claims to have a correct implementation of \MF, I will not
+believe it until I see that \.{TRAP.MF} is translated properly.
+I propose, in fact, that a program must meet two criteria before it
+can justifiably be called \MF: (1)~The person who wrote it must be
+happy with the way it works at his or her installation; and (2)~the
+program must produce the correct results from \.{TRAP.MF}.
+
+\MF\ is in the public domain, and its algorithms are published;
+I've done this since I do not want to discourage its use by placing
+proprietary restrictions on the software. However, I don't want
+faulty imitations to masquerade as \MF\ processors, since users
+want \MF\ to produce identical results on different machines.
+Hence I am planning to do whatever I can to suppress any systems that
+call themselves \MF\ without meeting conditions (1) and~(2).
+I have copyrighted the programs so that I have some chance to forbid
+unauthorized copies; I explicitly authorize copying of correct
+\MF\ implementations, and not of incorrect ones!
+
+The remainder of this report consists of appendices, whose contents ought
+to be described briefly here:
+
+Appendix A explains in detail how to carry out a test of \MF, given
+a tape that contains copies of the other appendices.
+
+Appendix B is \.{TRAP.MF}, the fiendish test file that has already
+been mentioned. People who think that they understand \MF\ are challenged
+to see if they know what \MF\ is supposed to do with this file.
+People who know only a little about \MF\ might still find it
+interesting to study Appendix~B, just to get some insights into the
+methodology advocated here.
+
+Appendix C is \.{TRAPIN.LOG}, a correct transcript file \.{TRAP.LOG}
+that results if \.{INIMF} is applied to \.{TRAP.MF}. (\.{INIMF} is
+the name of a version of \MF\ that does certain initializations;
+this run of \.{INIMF} also creates a binary base file called \.{TRAP.BASE}.)
+
+Appendix D is a correct transcript file \.{TRAP.LOG} that results if
+\.{INIMF} or any other version of \MF\ is applied to \.{TRAP.MF}
+with base file \.{TRAP.BASE}.
+
+Appendix E is \.{TRAP.TYP}, the symbolic version of a correct output
+file \.{TRAP.72270GF} that was produced at the same time as the \.{TRAP.LOG}
+file of Appendix~D.
+
+Appendix F is \.{TRAP.PL}, the symbolic version of a correct output
+file \.{TRAP.TFM} that was produced at the same time as the \.{TRAP.LOG}
+file of Appendix~D.
+
+Appendix G is \.{TRAP.FOT}, an abbreviated version of Appendix D that
+appears on the user's terminal during the run that produces \.{TRAP.LOG},
+\.{TRAP.72270GF}, and \.{TRAP.TFM}.
+
+The debugging of \MF\ and the testing of the adequacy of \.{TRAP.MF}
+could not have been done nearly as well as reported here except for
+the magnificent software support provided by my colleague David R. Fuchs.
+In particular, he extended our local Pascal compiler so that
+frequency counting and a number of other important features were added
+to its online debugging abilities.
+
+The method of testing advocated here has one chief difficulty that deserves
+comment: I had to verify by hand that \MF\ did the right things
+to \.{TRAP.MF}. This took many hours, and perhaps I have missed
+something (as I did in 1960); I must confess that I have not checked
+every single number in Appendices D, E, and~F. However, I'm willing to pay
+$\$$81.92 to the first finder of any remaining bug in \MF, and I will
+be surprised if that bug doesn't show up also in one of these appendices.
+
+\vfill\eject
+
+\section Appendix A: How to test \MF.
+
+\item{0.} Let's assume that you have a tape containing \.{TRAP.MF},
+\.{TRAPIN.LOG}, \.{TRAP.LOG}, \.{TRAP.TYP}, \.{TRAP.PL}, and \.{TRAP.FOT},
+as in Appendices B, C, D, E, F, and~G. Furthermore, let's suppose that you
+have a working \.{WEB} system, and that you have working programs
+\.{TFtoPL} and \.{GFtype}, as described in the \TeX ware and \MF ware reports.
+
+\item{1.} Prepare a version of \.{INIMF}. (This means that your \.{WEB}
+change file should have {\bf init} and {\bf tini} defined to be null.)
+The {\bf debug} and {\bf gubed} macros should be null, in order to
+activate special printouts that occur when $\\{tracingedges}>1.0$.
+The {\bf stat} and {\bf tats} macros should also be null, so that
+statistics are kept. Set \\{mem\_top} and \\{mem\_max} to 3000
+(or to \\{mem\_min} plus 3000, if \\{mem\_min} isn't zero),
+for purposes of this test version.
+Also set $\\{error\_line}=64$, $\\{half\_error\_line}=32$,
+$\\{max\_print\_line}=72$, $\\{screen\_width}=100$, and
+$\\{screen\_depth}=200$; these parameters affect many of the lines of
+the test output, so your job will be much easier if you use the same
+settings that were used to produce Appendix~E. Also (if possible) set
+$\\{gf\_buf\_size}=8$, since this tests more parts of the program.
+You probably should also use the ``normal'' settings of other parameters
+found in \.{MF.WEB} (e.g., $\\{max\_internal}=100$, $\\{buf\_size}=500$,
+etc.), since these show up in a few lines of the test output. Finally,
+change \MF's screen-display routines by putting the following simple lines
+in the change file:
+$$\vbox{\halign{\tt#\hfil\cr
+\char`\@x Screen routines:\cr
+begin init\char`\_screen:=false;\cr
+\char`\@y\cr
+begin init\char`\_screen:=true;
+ \char`\{screen instructions will be logged\char`\}\cr
+\char`\@z\cr}}$$
+None of the other screen routines (\\{update\_screen}, \\{blank\_rectangle},
+\\{paint\_row}) should be changed in any way; the effect will be to have
+\MF's actions recorded in the transcript files instead of on the screen,
+in a machine-independent way.
+
+\item{2.} Run the \.{INIMF} prepared in step 1. In response to the first
+`\.{**}' prompt, type carriage return (thus getting another `\.{**}').
+Then type `\.{\char`\\input trap}'. You should get an output that matches
+the file \.{TRAPIN.LOG} (Appendix~C). Don't be alarmed by the error
+messages that you see, unless they are different from those in Appendix~C.
+
+\def\sp{{\char'40}}
+\item{3.} Run \.{INIMF} again. This time type `\.{\sp\&trap\sp\sp trap\sp}'.
+(The spaces in this input help to check certain parts of \MF\ that
+aren't otherwise used.) You should get outputs \.{TRAP.LOG}, \.{TRAP.72270GF},
+and \.{TRAP.TFM}.
+Furthermore, your terminal should receive output that matches \.{TRAP.FOT}
+(Appendix~G). During the middle part of this test, however, the terminal
+will not be getting output, because \.{batchmode} is being
+tested; don't worry if nothing seems to be happening for a while---nothing
+is supposed to.
+
+\item{4.} Compare the \.{TRAP.LOG} file from step 3 with the ``master''
+\.{TRAP.LOG} file of step~0. (Let's hope you put that master file in a
+safe place so that it wouldn't be clobbered.) There should be perfect
+agreement between these files except in the following respects:
+
+\itemitem{a)} The dates and possibly the file names will
+naturally be different.
+
+\itemitem{b)} If you had different values for \\{stack\_size}, \\{buf\_size},
+etc., the corresponding capacity values will be different when they
+are printed out at the end.
+
+\itemitem{c)} Help messages may be different; indeed, the author encourages
+non-English help messages in versions of \MF\ for people who don't
+understand English as well as some other language.
+
+\itemitem{d)} The total number and length of strings at the end and/or
+``still untouched'' may well be different.
+
+\itemitem{e)} If your \MF\ uses a different memory allocation or
+packing scheme, the memory usage statistics may change.
+
+\itemitem{f)} If you use a different storage allocation scheme, the
+capsule numbers will probably be different, but the order of variables
+should be unchanged when dependent variables are shown. \MF\ should also
+choose the same variables to be dependent.
+
+\itemitem{g)} If your computer handles integer division of negative operands
+in a nonstandard way, you may get results that are rounded differently.
+Although \TeX\ is careful to be machine-independent in this regard,
+\MF\ is not, because integer divisions are present in so many places.
+
+\item{5.} Use \.{GFtype} to convert your file \.{TRAP.72270GF} to a file
+\.{TRAP.TYP}. (Both of \.{GFtype}'s options, i.e., mnemonic output and image
+output, should be enabled so that you get the maximum amount of output.)
+The resulting file should agree with the master \.{TRAP.TYP} file of step~0,
+assuming that your \.{GFtype} has the ``normal'' values of compile-time
+constants ($\\{top\_pixel}=69$, etc.).
+
+\item{6.} Use \.{TFtoPL} to convert your file \.{TRAP.TFM} to a file
+\.{TRAP.PL}. The resulting file should agree with the master \.{TRAP.PL}
+file of step~0.
+
+\item{7.} You might also wish to test \.{TRAP} with other versions of
+\MF\ (i.e., \.{VIRMF} or a production version with another base file
+preloaded). It should work unless \MF's primitives have been redefined in
+the base file. However, this step isn't essential, since all the code of
+\.{VIRMF} appears in \.{INIMF}; you probably won't catch any more errors
+this way, unless they would already become obvious from normal use of
+the~system.
+
+\vfill\eject
+
+\section Appendix B: The \.{TRAP.MF} file.
+The contents of the test routine are prefixed here with line numbers, for
+ease in comparing this file with the error messages printed later; the
+line numbers aren't actually present.
+\runninghead{APPENDIX B: \.{TRAP.MF} (CONTINUED)}
+
+\vskip 8pt
+\begingroup\count255=0
+\everypar{\global\advance\count255 by 1
+ \hbox to 20pt{\sevenrm\hfil\the\count255\ \ }}
+\verbatim{trap.mf}
+\endgroup
+\vfill\eject
+
+\section Appendix C: The \.{TRAPIN.LOG} file.
+When \.{INIMF} makes the \.{TRAP.BASE} file, it also creates a file called
+\.{TRAP.LOG} that looks like this.
+\runninghead{APPENDIX C: \.{TRAPIN.LOG} (CONTINUED)}
+
+\vskip8pt
+\verbatim{trapin.log}
+\vfill\eject
+
+\section Appendix D: The \.{TRAP.LOG} file.
+Here is the major output of the \.{TRAP} test; it is generated by running
+\.{INIMF} and loading \.{TRAP.BASE}, then reading \.{TRAP.MF}.
+\runninghead{APPENDIX D: \.{TRAP.LOG} (CONTINUED)}
+
+{\let\tt=\eighttt\leftskip 1in\baselineskip 9pt plus .1pt minus .1pt
+\vskip8pt
+\verbatim{trap.log}
+}
+\vfill\eject
+
+\section Appendix E: The \.{TRAP.TYP} file.
+Here is another major component of the test. It shows the output of \.{GFtype}
+applied to the file \.{TRAP.72270GF} that is created at the same time
+Appendix D was produced.
+\runninghead{APPENDIX E: \.{TRAP.TYP} (CONTINUED)}
+
+{\let\tt=\eighttt\leftskip 1in\baselineskip 9pt plus .1pt minus .1pt
+\vskip8pt
+\verbatim{trap.typ}
+}
+\vfill\eject
+
+\section Appendix F: The \.{TRAP.PL} file.
+In this case we have the output of \.{TFtoPL}
+applied to the file \.{TRAP.TFM} that is created at the same time
+Appendix D was produced.
+\runninghead{APPENDIX F: \.{TRAP.PL} (CONTINUED)}
+
+{\let\tt=\eighttt\leftskip 1in\baselineskip 9pt plus .1pt minus .1pt
+\vskip8pt
+\verbatim{trap.pl}
+}
+\vfill\eject
+
+\section Appendix G: The \.{TRAP.FOT} file.
+This shows what appeared on the terminal while Appendix D was being produced.
+\runninghead{APPENDIX G: \.{TRAP.FOT} (CONTINUED)}
+
+\vskip8pt
+\verbatim{trap.fot}
+
+\vfill\end
diff --git a/Build/source/texk/web2c/triptrap/trip.diffs b/Build/source/texk/web2c/triptrap/trip.diffs
new file mode 100644
index 00000000000..1bfd68deec3
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trip.diffs
@@ -0,0 +1,147 @@
+make[1]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c'
+cd lib && make -w CC='gcc' CFLAGS='-g ' LDFLAGS=''
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/lib'
+make[2]: Nothing to be done for `default'.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/lib'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' fixwrites
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `fixwrites' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' splitup
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `splitup' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+cd web2c && make -w CC='gcc' CFLAGS='-g ' LDFLAGS='' web2c
+make[2]: Entering directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+make[2]: `web2c' is up to date.
+make[2]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c/web2c'
+rm -f trip.tfm trip.pl trip.tex trip.fmt tripin.fot tripin.log
+rm -f trip.fot trip.log trip.dvi trip.typ tripos.tex 8terminal.tex
+rm -rf tfm
+./pltotf ./triptrap/trip.pl trip.tfm
+./tftopl ./trip.tfm trip.pl
+diff ./triptrap/trip.pl trip.pl
+ln -s ./triptrap/trip.tex . # get same filename in log
+/bin/sh -c 'TEXMFCNF=./triptrap ./tex --progname=initex --ini <./triptrap/trip1.in >tripin.fot'
+mv trip.log tripin.log
+diff ./triptrap/tripin.log tripin.log
+1c1
+< This is TeX, Version 3.141592 (INITEX) 20 DEC 2002 20:24
+---
+> This is TeX, Version 3.141592 (Web2C 7.5.5) (INITEX) 3 AUG 2005 10:46
+3c3
+< (trip.tex
+---
+> (./trip.tex
+450,451c450,451
+< (preloaded format=trip 2002.12.20)
+< 1320 strings of total length 23539
+---
+> (format=trip 2005.8.3)
+> 1364 strings of total length 24385
+461c461
+< Hyphenation trie of length 273 has 9 ops out of 500
+---
+> Hyphenation trie of length 273 has 9 ops out of 35111
+/bin/sh -c 'TEXMFCNF=./triptrap ./tex --progname=tex <./triptrap/trip2.in >trip.fot'
+diff ./triptrap/trip.fot trip.fot
+1,3c1,2
+< This is TeX, Version 3.141592 (INITEX)
+< ** &trip trip
+< (trip.tex ##
+---
+> This is TeX, Version 3.141592 (Web2C 7.5.5)
+> **(./trip.tex ##
+diff ./triptrap/trip.log trip.log
+1c1
+< This is TeX, Version 3.141592 (preloaded format=trip 2002.12.20) 20 DEC 2002 21:28
+---
+> This is TeX, Version 3.141592 (Web2C 7.5.5) (format=trip 2005.8.3) 3 AUG 2005 10:46
+3c3
+< (trip.tex ##
+---
+> (./trip.tex ##
+58a59,62
+> \openout0 = `8terminal.tex'.
+>
+> \openout10 = `tripos.tex'.
+>
+1405c1409
+< \vbox(16383.99998+0.0)x1000.0, glue set 16342.0fil
+---
+> \vbox(16383.99998+0.0)x1000.0, glue set 16341.99998fil
+1954c1958
+< (tripos.tex
+---
+> (./tripos.tex
+2018c2022
+< \vbox(16383.99998+1.0)x100.0, glue set 16239.0fil
+---
+> \vbox(16383.99998+1.0)x100.0, glue set 16238.99998fil
+2533c2537
+< \vbox(16383.99998+0.0)x20.0, glue set 16331.0fil
+---
+> \vbox(16383.99998+0.0)x20.0, glue set 16330.99998fil
+3326c3330
+< \vbox(10000.0+2.0)x28.0, glue set 9737.58789fil
+---
+> \vbox(10000.0+2.0)x28.0, glue set 9737.58742fil
+3864c3868
+< \vbox(16383.99998+2.0)x100.0, glue set 16318.0fil
+---
+> \vbox(16383.99998+2.0)x100.0, glue set 16317.99997fil
+4034c4038
+< \vbox(16383.99998+0.0)x8236.0, glue set 16344.0fil
+---
+> \vbox(16383.99998+0.0)x8236.0, glue set 16343.99998fil
+4420c4424
+< \vbox(16383.99998+0.0)x100.0, glue set 16332.0fil
+---
+> \vbox(16383.99998+0.0)x100.0, glue set 16331.99998fil
+4742c4746
+< \vbox(16383.99998+0.0)x205.12613, glue set 16344.0fil
+---
+> \vbox(16383.99998+0.0)x205.12613, glue set 16343.99998fil
+6370c6374
+< (tripos.tex
+---
+> (./tripos.tex
+7287,7288c7291,7292
+< 47 strings out of 1674
+< 251 string characters out of 8353
+---
+> 44 strings out of 1636
+> 261 string characters out of 15615
+7290c7294
+< 372 multiletter control sequences out of 2100
+---
+> 372 multiletter control sequences out of 10000+0
+7292,7293c7296,7297
+< 2 hyphenation exceptions out of 307
+< 5i,7n,9p,113b,38s stack positions out of 200i,40n,60p,500b,600s
+---
+> 1 hyphenation exception out of 659
+> 7i,7n,9p,113b,38s stack positions out of 200i,40n,60p,500b,600s
+/bin/sh -c 'TEXMFCNF=./triptrap ./dvitype -output-level=2 -dpi=72.27 -page-start='*.*.*.*.*.*.*.*.*.*' trip.dvi >trip.typ'
+diff ./triptrap/trip.typ trip.typ
+1c1
+< This is DVItype, Version 3.6
+---
+> This is DVItype, Version 3.6 (Web2C 7.5.5)
+9c9
+< ' TeX output 2002.12.20:2128'
+---
+> ' TeX output 2005.08.03:1046'
+419c419
+< 1121: down4 639342208
+---
+> 1121: down4 639342177
+1087,1088c1087,1088
+< 2535: y4 203921760
+< 2540: y0 203921760
+---
+> 2535: y4 203921756
+> 2540: y0 203921756
+1215d1214
+<
+make[1]: Leaving directory `/home/olaf/web2c/src/texk/texk/web2c'
diff --git a/Build/source/texk/web2c/triptrap/trip.fot b/Build/source/texk/web2c/triptrap/trip.fot
new file mode 100644
index 00000000000..6a2fcb3753a
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trip.fot
@@ -0,0 +1,83 @@
+This is TeX, Version 3.141592 (INITEX)
+** &trip trip
+(trip.tex ##
+! Bad number (-7).
+<to be read again>
+ 8
+l.94 \openout-'78
+ terminal \openout10=tr\romannumeral1 \gobble...
+
+Completed box being shipped out [0.0.0.0.11]
+! Missing number, treated as zero.
+<to be read again>
+ {
+...
+l.106 \penalty-10000
+ % now we'll compute silently for awhile,...
+Memory usage before: 159&313; after: 102&278; still untouched: 1613
+
+! OK (see the transcript file).
+l.441 ...se unbal}\fi}\showlists
+ \tracingonline1%
+{|escapechar}
+{^^?global}
+{^^?global}
+{end}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+{end-group character }}
+{retaining escapechar=256}
+> 3.
+<output> {showthe deadcycles
+ global advance countz by1global ...
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+! You can't use `end' in internal vertical mode.
+<recently read> end
+
+<output> ...cal {}unvbox 255end
+ rb }
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+! Unbalanced output routine.
+<output> ... {}unvbox 255end rb
+ }
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+! Output loop---3 consecutive dead cycles.
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+
+Completed box being shipped out [-1.2.-1118806.0.11.196608.327680.157286
+4.1073741823]
+! Unbalanced write command.
+<write> if 01{else unbal}fi
+
+<inserted text>
+ }endwrite
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+Memory usage before: 334&431; after: 292&418; still untouched: 175
+ )
+(end occurred inside a group at level 1)
+(end occurred when if on line 442 was incomplete)
+(end occurred when ifcase on line 419 was incomplete)
+(end occurred when iftrue on line 413 was incomplete)
+(see the transcript file for additional information)
+Output written on trip.dvi (16 pages, 2920 bytes).
+Transcript written on trip.log.
diff --git a/Build/source/texk/web2c/triptrap/trip.log b/Build/source/texk/web2c/triptrap/trip.log
new file mode 100644
index 00000000000..ad152dd13ab
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trip.log
@@ -0,0 +1,7295 @@
+This is TeX, Version 3.141592 (preloaded format=trip 2002.12.20) 20 DEC 2002 21:28
+** &trip trip
+(trip.tex ##
+{vertical mode: \tracingrestores}
+{\write}
+{blank space }
+{\openout}
+
+! Bad number (-7).
+<to be read again>
+ 8
+l.94 \openout-'78
+ terminal \openout10=tr\romannumeral1 \gobble...
+Since I expected to read a number between 0 and 15,
+I changed this one to zero.
+
+{\openout}
+{\romannumeral}
+{\write}
+{blank space }
+{\write}
+{blank space }
+{\write}
+{blank space }
+{\vsize}
+{\vbadness}
+{\topskip}
+{\penalty}
+{\maxdepth}
+{\tracingoutput}
+{\moveleft}
+%% goal height=2000.0, max depth=2.0
+% t=0.0 g=2000.0 b=10000 p=0 c=100000#
+{\moveright}
+{restricted horizontal mode: \vrule}
+{end-group character }}
+% t=20.0 plus 1.0fil g=2000.0 b=0 p=0 c=0#
+{vertical mode: blank space }
+{\penalty}
+% t=48.0 plus 41.0 plus 1.0fil g=2000.0 b=0 p=-10000 c=-10000#
+
+Completed box being shipped out [0.0.0.0.11]
+\vbox(2000.0+2.0)x21.0, glue set 1952.0fil
+.\write-{log file only\the \prevgraf }
+.\openout0=8terminal
+.\openout10=tripos
+.\write10{}
+.\write10{\uppercase {\number {\outputpenalty }}}
+.\write10{[\uppercase {\romannumeral -\the \outputpenalty }[}
+.\glue(\topskip) 9.6 plus 1.0fil
+.\vbox(10.4+0.0)x-2.0, shifted -20.0
+..\rule(0.4+0.0)x*
+..\glue 10.0 plus 5.0filll
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+20.0)x1.0, shifted 20.0
+..\rule(-19.0+20.0)x1.0
+
+log file only0
+{no mode: \number}
+
+! Missing number, treated as zero.
+<to be read again>
+ {
+...
+l.106 \penalty-10000
+ % now we'll compute silently for awhile,...
+A number should have been here; I inserted `0'.
+(If you can't figure out why I needed to see a number,
+look up `weird error' in the index to The TeXbook.)
+
+{\romannumeral}
+{\the}
+Memory usage before: 159&313; after: 102&278; still untouched: 1613
+{vertical mode: \batchmode}
+
+{\output}
+{blank space }
+{\setbox}
+{internal vertical mode: end-group character }}
+{vertical mode: blank space }
+{\dimen}
+{begin-group character {}
+{\output}
+{blank space }
+{\insert}
+{internal vertical mode: \def}
+{blank space }
+{\vskip}
+{\baselineskip}
+{\lineskip}
+{\vbox}
+{end-group character }}
+{\penalty}
+{\vbox}
+{end-group character }}
+{\penalty}
+{\vbox}
+{end-group character }}
+{\penalty}
+{end-group character }}
+{restoring \lineskip=0.0pt plus 40.0pt}
+{restoring \baselineskip=10.0pt plus 41.0pt}
+{restoring \box=\box}
+%% goal height=2000.0, max depth=2.0
+! Insertions can only be added to a vbox.
+l.125 }
+ % since \dimen100=803pt<3*267.7pt, the insertion ...
+Tut tut: You're trying to \insert into a
+\box register that now contains an \hbox.
+Proceed, and I'll discard its present contents.
+
+The following box has been deleted:
+\hbox(7.0+1.0)x2.0
+.\rip A
+
+! Infinite glue shrinkage inserted from \skip100.
+l.125 }
+ % since \dimen100=803pt<3*267.7pt, the insertion ...
+The correction glue for page breaking with insertions
+must have finite shrinkability. But you may proceed,
+since the offensive shrinkability has been made finite.
+
+% split100 to 803.0,267.7 p=-101
+{vertical mode: blank space }
+{\topskip}
+{\vbox}
+{internal vertical mode: end-group character }}
+% t=0.0 plus 3.0filll minus 9.0 g=1470.63013 b=0 p=0 c=-101#
+{vertical mode: blank space }
+{\insertpenalties}
+{\penalty}
+{\cleaders}
+{restricted horizontal mode: \lower}
+{internal vertical mode: end-group character }}
+{restricted horizontal mode: blank space }
+{\leaders}
+{\cleaders}
+{the letter A}
+{end-group character }}
+{\leaders}
+{the letter A}
+{end-group character }}
+{\xleaders}
+{the letter A}
+{end-group character }}
+{\write}
+{blank space }
+{end-group character }}
+{vertical mode: \mark}
+{blank space }
+{the letter A}
+% t=1050.0 plus 44.0 plus 3.0filll minus 19.0 g=1470.63013 b=0 p=0 c=-50
+{horizontal mode: the letter A}
+{\insert}
+{internal vertical mode: \baselineskip}
+{\splittopskip}
+{\hbox}
+{restricted horizontal mode: \vadjust}
+{internal vertical mode: \penalty}
+{end-group character }}
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: \hbox}
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: end-group character }}
+{restoring \splittopskip=1.0pt plus 43.0pt}
+{restoring \baselineskip=10.0pt plus 41.0pt}
+{horizontal mode: \showthe}
+> 1050.0pt.
+<everypar> ...howthe \pagetotal
+ \showthe \pagegoal \advance \...
+...
+l.140 A
+ AA\everypar=\errhelp % because of previous \everypar...
+
+{\showthe}
+> 1470.63013pt.
+<everypar> ...showthe \pagegoal
+ \advance \count 15by1\mark {\...
+...
+l.140 A
+ AA\everypar=\errhelp % because of previous \everypar...
+
+{\advance}
+{\mark}
+{\splitmaxdepth}
+{\par}
+@firstpass
+@secondpass
+[]\rip A[][]
+@\par via @@0 b=* p=-10000 d=*
+@@1: line 1.3- t=0 -> @@0
+
+
+Overfull \hbox (2.0pt too wide) in paragraph at lines 140--140
+[]\rip A|
+
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+
+{vertical mode: the letter A}
+% t=1060.0 plus 127.0 plus 8.0filll minus 27.0 g=1255.43756 b=0 p=0 c=-5
+0
+{horizontal mode: the letter A}
+{\insert}
+{internal vertical mode: \baselineskip}
+{\splittopskip}
+{\hbox}
+{restricted horizontal mode: \vadjust}
+{internal vertical mode: \penalty}
+{end-group character }}
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: \hbox}
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: end-group character }}
+{restoring \splittopskip=1.0pt plus 43.0pt}
+{restoring \baselineskip=10.0pt plus 41.0pt}
+{horizontal mode: \showthe}
+> 1061.0pt.
+<everypar> ...howthe \pagetotal
+ \showthe \pagegoal \advance \...
+...
+l.140 AA
+ A\everypar=\errhelp % because of previous \everypar...
+
+{\showthe}
+> 1255.43756pt.
+<everypar> ...showthe \pagegoal
+ \advance \count 15by1\mark {\...
+...
+l.140 AA
+ A\everypar=\errhelp % because of previous \everypar...
+
+{\advance}
+{\mark}
+{\splitmaxdepth}
+{\par}
+@firstpass
+@secondpass
+[]\rip A[][]
+@\par via @@0 b=* p=-10000 d=*
+@@1: line 1.3- t=0 -> @@0
+
+
+Overfull \hbox (2.0pt too wide) in paragraph at lines 140--140
+[]\rip A|
+
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+
+{vertical mode: the letter A}
+% t=1070.0 plus 210.0 plus 8.0filll minus 35.0 g=1055.44061 b=7 p=0 c=-4
+3
+{horizontal mode: the letter A}
+{\insert}
+{internal vertical mode: \baselineskip}
+{\splittopskip}
+{\hbox}
+{restricted horizontal mode: \vadjust}
+{internal vertical mode: \penalty}
+{end-group character }}
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: \hbox}
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: end-group character }}
+{restoring \splittopskip=1.0pt plus 43.0pt}
+{restoring \baselineskip=10.0pt plus 41.0pt}
+{horizontal mode: \showthe}
+> 1071.0pt.
+<everypar> ...howthe \pagetotal
+ \showthe \pagegoal \advance \...
+...
+l.140 AAA
+ \everypar=\errhelp % because of previous \everypar...
+
+{\showthe}
+> 1055.44061pt.
+<everypar> ...showthe \pagegoal
+ \advance \count 15by1\mark {\...
+...
+l.140 AAA
+ \everypar=\errhelp % because of previous \everypar...
+
+{\advance}
+{\mark}
+{\splitmaxdepth}
+{\par}
+@firstpass
+@secondpass
+[]\rip A[][]
+@\par via @@0 b=* p=-10000 d=*
+@@1: line 1.3- t=0 -> @@0
+
+
+Overfull \hbox (2.0pt too wide) in paragraph at lines 140--140
+[]\rip A|
+
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+
+% split200 to -51.11694,0.0 p=999
+{vertical mode: \everypar}
+{\kern}
+{the letter A}
+% t=1080.0 plus 293.0 plus 8.0filll minus 43.0 g=1055.44061 b=18 p=0 c=9
+67
+{horizontal mode: the letter A}
+{\hfill}
+{\vadjust}
+{internal vertical mode: \newlinechar}
+{\special}
+{\penalty}
+{end-group character }}
+{restoring \newlinechar=0}
+{horizontal mode: \penalty}
+{the letter A}
+{\par}
+@firstpass
+@secondpass
+[]\rip A
+@ via @@0 b=* p=0 d=*
+@@1: line 1.3 t=0 -> @@0
+[]
+@\penalty via @@1 b=0 p=-10000 d=*
+@@2: line 2.2 t=0 -> @@1
+A
+@\par via @@2 b=* p=-10000 d=*
+@@3: line 3.3- t=0 -> @@2
+
+
+Overfull \hbox (2.0pt too wide) in paragraph at lines 145--148
+[]\rip A|
+
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+
+
+Overfull \hbox (2.0pt too wide) in paragraph at lines 145--148
+\rip A|
+
+\hbox(7.0+1.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+
+% t=1040.0 plus 376.0 plus 8.0filll minus 51.0 g=1055.44061 b=0 p=0 c=94
+9
+% t=1050.0 plus 417.0 plus 8.0filll minus 51.0 g=1055.44061 b=0 p=-5000
+c=-4051#
+{vertical mode: \insert}
+{internal vertical mode: \vskip}
+{\floatingpenalty}
+{end-group character }}
+{restoring \floatingpenalty=100}
+{vertical mode: \pagefilstretch}
+{\showthe}
+> 952.
+l.149 ...showthe\insertpenalties
+ \penalty99999999\showlists
+
+{\penalty}
+{\showlists}
+
+### vertical mode entered at line 0
+### current page:
+\insert100, natural size 803.09999; split(1.0 plus 43.0,-2.0); float cos
+t 100
+.\glue 0.0 plus 1.0fil
+.\vbox(267.7+0.0)x0.0
+.\penalty -101
+.\glue(\lineskip) 0.0 minus 0.4
+.\vbox(267.7+0.0)x0.0
+.\penalty -100
+.\glue(\lineskip) 0.0 minus 0.4
+.\vbox(267.7+0.0)x0.0
+.\penalty -1000
+\glue(\topskip) 0.0 plus 44.0
+\vbox(1000.0+0.0)x0.0
+\penalty 12345
+\cleaders 50.0 minus 10.0
+.\hbox(15.0+2.0)x45.0
+..\vbox(17.0+0.0)x0.0, shifted 2.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\leaders 10.0
+...\rule(0.4+0.0)x*
+..\cleaders 9.0
+...\hbox(7.0+1.0)x2.0
+....\rip A
+..\leaders 9.0
+...\hbox(7.0+1.0)x2.0
+....\rip A
+..\xleaders 9.0
+...\hbox(7.0+1.0)x2.0
+....\rip A
+..\write*{\help }
+..\glue 4.0 plus 2.0 minus 1.0
+\mark{alpha}
+\glue(\parskip) 0.0 plus 42.0 minus 8.0
+\glue(\baselineskip) 3.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\insert200, natural size 400.0; split(0.0,-2.0); float cost 100
+.\hbox(0.0+0.0)x0.0
+.\penalty 999
+.\glue(\baselineskip) 400.0
+.\hbox(0.0+0.0)x-10.0
+\mark{1}
+\glue(\parskip) 0.0 plus 42.0 minus 8.0
+\glue(\baselineskip) 2.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\insert200, natural size 400.0; split(1.0,-1.0); float cost 100
+.\hbox(0.0+0.0)x0.0
+.\penalty 999
+.\glue(\baselineskip) 400.0
+.\hbox(0.0+0.0)x-10.0
+\mark{2}
+\glue(\parskip) 0.0 plus 42.0 minus 8.0
+\glue(\baselineskip) 2.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\insert200, natural size 400.0; split(2.0,-1.0); float cost 100
+.\hbox(0.0+0.0)x0.0
+.\penalty 999
+.\glue(\baselineskip) 400.0
+.\hbox(0.0+0.0)x-10.0
+\mark{3}
+\kern -50.0
+\glue(\parskip) 0.0 plus 42.0 minus 8.0
+\glue(\baselineskip) 2.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\glue(\baselineskip) 9.0 plus 41.0
+\hbox(0.0+0.0)x0.0
+.\penalty -1000000000
+.\glue(\rightskip) 0.0
+\special{^^80-1000.0pt}
+\penalty -5000
+\glue(\baselineskip) 3.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\insert200, natural size 10000.0; split(1.0 plus 43.0,-1.0); float cost
+3
+.\glue 10000.0
+\penalty 99999999
+total height 1060.0 plus 458.0 plus -1.0fil plus 8.0filll minus 51.0
+ goal height 1055.44061
+\insert100 adds 535.36987, #1 might split
+\insert200 adds 405.19714, #3 might split
+prevdepth 1.0, prevgraf 3 lines
+
+! OK.
+<recently read> \showlists
+
+l.149 ...nalty99999999\showlists
+
+
+{\showthe}
+> 8.0pt.
+l.150 ...howthe\pagefilllstretch
+ \vskip 1000pt\penalty-333\hbo...
+
+{\vskip}
+{\penalty}
+% t=2061.0 plus 458.0 plus -1.0fil plus 8.0filll minus 51.0 g=1055.44061
+ b=* p=-333 c=*
+! \box255 is not void.
+<to be read again>
+ \hbox
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+You shouldn't use \box255 except in \output routines.
+Proceed, and I'll discard its present contents.
+
+The following box has been deleted:
+\vbox(0.0+0.0)x0.0
+
+{internal vertical mode: \dimen}
+{\count}
+{\global}
+{\ifnum}
+{true}
+{\global}
+{\unvbox}
+{\penalty}
+{\else}
+{\message}
+{\topmark}
+{\firstmark}
+{\botmark}
+{\splitfirstmark}
+{\splitbotmark}
+:alpha:3::
+{end-group character }}
+{restoring \count5=0}
+{restoring \dimen9=0.0pt}
+%% goal height=2000.0, max depth=2.0
+! Infinite glue shrinkage inserted from \skip100.
+<to be read again>
+ \hbox
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+The correction glue for page breaking with insertions
+must have finite shrinkability. But you may proceed,
+since the offensive shrinkability has been made finite.
+
+% split100 to 803.0,267.7 p=-101
+% t=0.0 plus 3.0filll minus 9.0 g=1470.63013 b=0 p=0 c=-101#
+% t=1050.0 plus 44.0 plus 3.0filll minus 19.0 g=1470.63013 b=0 p=0 c=-10
+1#
+% t=1060.0 plus 127.0 plus 8.0filll minus 27.0 g=1255.43756 b=0 p=0 c=-1
+01#
+% t=1070.0 plus 210.0 plus 8.0filll minus 35.0 g=1055.44061 b=7 p=0 c=-9
+4
+% split200 to -51.11694,0.0 p=999
+% t=1080.0 plus 293.0 plus 8.0filll minus 43.0 g=1055.44061 b=18 p=0 c=9
+16
+% t=1040.0 plus 376.0 plus 8.0filll minus 51.0 g=1055.44061 b=0 p=0 c=89
+8
+% t=1050.0 plus 417.0 plus 8.0filll minus 51.0 g=1055.44061 b=0 p=-5000
+c=-4102#
+% t=2061.0 plus 458.0 plus 8.0filll minus 51.0 g=1055.44061 b=* p=-333 c
+=*
+{\dimen}
+{\count}
+{\global}
+{\ifnum}
+{false}
+{\setbox}
+{\shipout}
+{restricted horizontal mode: \box}
+{\box}
+{\vsplit}
+
+Overfull \vbox (986.0pt too high) has occurred while \output is active
+\vbox(55.0+-1.0)x45.0, glue set - 1.0
+.\glue(\topskip) 0.0 plus 44.0
+.\vbox(1000.0+0.0)x0.0
+.\penalty 12345
+.\cleaders 50.0 minus 10.0
+..\hbox(15.0+2.0)x45.0
+...\vbox(17.0+0.0)x0.0, shifted 2.0
+...\glue 4.0 plus 2.0 minus 1.0
+...\leaders 10.0
+....\rule(0.4+0.0)x*
+...\cleaders 9.0
+....\hbox(7.0+1.0)x2.0
+.....\rip A
+...\leaders 9.0
+....\hbox(7.0+1.0)x2.0
+.....\rip A
+...\xleaders 9.0
+....\hbox(7.0+1.0)x2.0
+.....\rip A
+...\write*{\help }
+...\glue 4.0 plus 2.0 minus 1.0
+.\mark{alpha}
+
+{end-group character }}
+
+Completed box being shipped out [-5000.0.0.0.11.53110374]
+\hbox(810.4+0.0)x45.0
+.\vbox(267.7+0.0)x0.0
+..\glue 0.0 plus 1.0fil
+..\vbox(267.7+0.0)x0.0
+.\vbox(810.4+0.0)x0.0
+..\rule(0.4+0.0)x*
+..\glue 10.0 plus 5.0filll
+..\hbox(0.0+0.0)x0.0
+..\penalty 999
+..\glue(\baselineskip) 400.0
+..\hbox(0.0+0.0)x-10.0
+..\hbox(0.0+0.0)x0.0
+..\penalty 999
+..\glue(\baselineskip) 400.0
+..\hbox(0.0+0.0)x-10.0
+..\hbox(0.0+0.0)x0.0
+.\vbox(55.0+-1.0)x45.0, glue set - 1.0
+..\glue(\topskip) 0.0 plus 44.0
+..\vbox(1000.0+0.0)x0.0
+..\penalty 12345
+..\cleaders 50.0 minus 10.0
+...\hbox(15.0+2.0)x45.0
+....\vbox(17.0+0.0)x0.0, shifted 2.0
+....\glue 4.0 plus 2.0 minus 1.0
+....\leaders 10.0
+.....\rule(0.4+0.0)x*
+....\cleaders 9.0
+.....\hbox(7.0+1.0)x2.0
+......\rip A
+....\leaders 9.0
+.....\hbox(7.0+1.0)x2.0
+......\rip A
+....\xleaders 9.0
+.....\hbox(7.0+1.0)x2.0
+......\rip A
+....\write*{\help }
+....\glue 4.0 plus 2.0 minus 1.0
+..\mark{alpha}
+
+Memory usage before: 747&484; after: 581&481; still untouched: 1492
+{internal vertical mode: blank space }
+{\unvcopy}
+{\showlists}
+
+### internal vertical mode entered at line 150 (\output routine)
+\glue(\splittopskip) 0.0 plus 43.0
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\mark{1}
+\glue(\parskip) 0.0 plus 42.0 minus 8.0
+\glue(\baselineskip) 2.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\mark{2}
+\glue(\parskip) 0.0 plus 42.0 minus 8.0
+\glue(\baselineskip) 2.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\mark{3}
+\kern -50.0
+\glue(\parskip) 0.0 plus 42.0 minus 8.0
+\glue(\baselineskip) 2.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\hbox(0.0+0.0)x0.0
+.\rip A
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\glue(\baselineskip) 9.0 plus 41.0
+\hbox(0.0+0.0)x0.0
+.\penalty -1000000000
+.\glue(\rightskip) 0.0
+\special{^^80-1000.0pt}
+prevdepth ignored
+### vertical mode entered at line 0
+### current page: (held over for next output)
+\insert100, natural size 535.4; split(1.0 plus 43.0,-2.0); float cost 10
+0
+.\glue(\splittopskip) 0.0 plus 43.0
+.\vbox(267.7+0.0)x0.0
+.\penalty -100
+.\glue(\lineskip) 0.0 minus 0.4
+.\vbox(267.7+0.0)x0.0
+.\penalty -1000
+\insert200, natural size 2.0; split(2.0,-1.0); float cost 100
+.\glue(\splittopskip) 2.0
+.\hbox(0.0+0.0)x-10.0
+### recent contributions:
+\penalty 10000
+\penalty 10000
+\glue(\baselineskip) 3.0 plus 41.0
+\hbox(7.0+1.0)x0.0
+.\rip A
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0
+.\rule(*+*)x5.0
+\insert200, natural size 10000.0; split(1.0 plus 43.0,-1.0); float cost
+3
+.\glue 10000.0
+\penalty 99999999
+\glue 1000.0
+\penalty -333
+prevdepth 1.0, prevgraf 3 lines
+
+! OK.
+<recently read> \showlists
+
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\showthe}
+> 2.
+<output> ...he \insertpenalties
+ \showthe \pageshrink \globald...
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\showthe}
+> 51.0pt.
+<output> ...showthe \pageshrink
+ \globaldefs 1\halign {##\tabs...
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\globaldefs}
+{\halign}
+{blank space }
+{\showboxdepth}
+{\showboxbreadth}
+{\fi}
+{\message}
+{\topmark}
+{\firstmark}
+{\botmark}
+{\splitfirstmark}
+{\splitbotmark}
+3:alpha:3:alpha:alpha
+{end-group character }}
+{restoring \globaldefs=0}
+{restoring \box255=
+\vbox(1055.44061+0.0)x45.0, glue set 0.01305 []}
+{restoring \count5=0}
+{restoring \dimen9=0.0pt}
+! Output routine didn't use all of \box255.
+<to be read again>
+ \hbox
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+Your \output commands should empty \box255,
+e.g., by saying `\shipout\box255'.
+Proceed; I'll discard its present contents.
+
+The following box has been deleted:
+\vbox(1055.44061+0.0)x45.0, glue set 0.01305
+.\glue(\topskip) 0.0 plus 44.0
+.\vbox(1000.0+0.0)x0.0
+.etc.
+
+%% goal height=2000.0, max depth=2.0
+! Infinite glue shrinkage inserted from \skip100.
+<to be read again>
+ \hbox
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+The correction glue for page breaking with insertions
+must have finite shrinkability. But you may proceed,
+since the offensive shrinkability has been made finite.
+
+% t=0.0 plus 8.0filll minus 9.0 g=924.23029 b=0 p=0 c=0#
+% t=7.0 plus 44.0 plus 8.0filll minus 9.0 g=924.23029 b=0 p=0 c=0#
+% t=17.0 plus 127.0 plus 8.0filll minus 17.0 g=924.23029 b=0 p=0 c=0#
+% t=27.0 plus 210.0 plus 8.0filll minus 25.0 g=924.23029 b=0 p=0 c=0#
+% t=-13.0 plus 293.0 plus 8.0filll minus 33.0 g=924.23029 b=0 p=0 c=0#
+% split200 to 1832.4585,10000.0 p=-10000
+% t=1008.0 plus 375.0 plus 8.0filll minus 33.0 g=-4075.76971 b=* p=-333
+c=*
+{\dimen}
+{\count}
+{\global}
+{\ifnum}
+{false}
+{\setbox}
+{\shipout}
+{restricted horizontal mode: \box}
+{\box}
+{\vsplit}
+{end-group character }}
+
+Completed box being shipped out [10000.0.0.0.11.131072]
+\hbox(535.4+0.0)x0.0
+.\vbox(535.4+0.0)x0.0 []
+.\vbox(2.0+0.0)x0.0 []
+.etc.
+
+Memory usage before: 475&470; after: 290&466; still untouched: 1473
+{internal vertical mode: blank space }
+{\unvcopy}
+{\showlists}
+
+### internal vertical mode entered at line 150 (\output routine)
+prevdepth ignored
+### vertical mode entered at line 0
+### recent contributions:
+\glue(\baselineskip) 9.0 plus 41.0
+\hbox(0.0+0.0)x0.0
+.\penalty -1000000000
+.\glue(\rightskip) 0.0
+etc.
+prevdepth 1.0, prevgraf 3 lines
+
+! OK.
+<recently read> \showlists
+
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\showthe}
+> 0.
+<output> ...he \insertpenalties
+ \showthe \pageshrink \globald...
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\showthe}
+> 33.0pt.
+<output> ...showthe \pageshrink
+ \globaldefs 1\halign {##\tabs...
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\globaldefs}
+{\halign}
+{blank space }
+{\showboxdepth}
+{\showboxbreadth}
+{\fi}
+{\message}
+{\topmark}
+{\firstmark}
+{\botmark}
+{\splitfirstmark}
+{\splitbotmark}
+3:1:3:1:3
+{end-group character }}
+{restoring \globaldefs=0}
+{restoring \box255=
+\vbox(924.23029+1.0)x0.0, glue set 3.19875 []}
+{restoring \count5=0}
+{restoring \dimen9=0.0pt}
+! Output routine didn't use all of \box255.
+<to be read again>
+ \hbox
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+Your \output commands should empty \box255,
+e.g., by saying `\shipout\box255'.
+Proceed; I'll discard its present contents.
+
+The following box has been deleted:
+\vbox(924.23029+1.0)x0.0, glue set 3.19875
+.\glue(\topskip) 0.0 plus 44.0
+.\hbox(7.0+1.0)x0.0 []
+.etc.
+
+%% goal height=2000.0, max depth=2.0
+% split200 to 3955.99365,10000.0 p=-10000
+% t=1012.0 plus 85.0 plus 5.0filll g=-3010.0 b=* p=-333 c=*#
+{\dimen}
+{\count}
+{\global}
+{\ifnum}
+{false}
+{\setbox}
+{\shipout}
+{restricted horizontal mode: \box}
+{\box}
+{\vsplit}
+
+Overfull \vbox (958.0pt too high) has occurred while \output is active
+\vbox(55.0+-1.0)x0.0
+.\glue(\topskip) 1.0 plus 44.0
+.\hbox(0.0+0.0)x0.0 []
+.etc.
+
+{end-group character }}
+
+Completed box being shipped out [-333.0.0.0.11.655360000]
+\hbox(10000.0+0.0)x0.0
+.\vbox(10000.0+0.0)x0.0 []
+.\vbox(55.0+-1.0)x0.0 []
+
+Memory usage before: 218&459; after: 149&458; still untouched: 1473
+{internal vertical mode: blank space }
+{\unvcopy}
+{\showlists}
+
+### internal vertical mode entered at line 150 (\output routine)
+prevdepth ignored
+### vertical mode entered at line 0
+### recent contributions:
+\penalty 10000
+prevdepth 1.0, prevgraf 3 lines
+
+! OK.
+<recently read> \showlists
+
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\showthe}
+> 0.
+<output> ...he \insertpenalties
+ \showthe \pageshrink \globald...
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\showthe}
+> 0.0pt.
+<output> ...showthe \pageshrink
+ \globaldefs 1\halign {##\tabs...
+...
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+
+{\globaldefs}
+{\halign}
+{blank space }
+{\showboxdepth}
+{\showboxbreadth}
+{\fi}
+{\message}
+{\topmark}
+{\firstmark}
+{\botmark}
+{\splitfirstmark}
+{\splitbotmark}
+3:3:3::
+{end-group character }}
+{restoring \globaldefs=0}
+{restoring \box255=
+\vbox(-3010.0+0.0)x0.0 []}
+{restoring \count5=0}
+{restoring \dimen9=0.0pt}
+! Output routine didn't use all of \box255.
+<to be read again>
+ \hbox
+l.150 ...1000pt\penalty-333\hbox
+ to 23pt{} % output now
+Your \output commands should empty \box255,
+e.g., by saying `\shipout\box255'.
+Proceed; I'll discard its present contents.
+
+The following box has been deleted:
+\vbox(-3010.0+0.0)x0.0
+.\glue(\topskip) 1.0 plus 44.0
+.\hbox(0.0+0.0)x0.0 []
+.etc.
+
+{vertical mode: \hbox}
+{restricted horizontal mode: end-group character }}
+%% goal height=2000.0, max depth=2.0
+{vertical mode: blank space }
+{\vsize}
+{\global}
+! Dimension too large.
+l.151 ...83.99999237060546875pt
+ % page size \approx infinity
+I can't work with sizes bigger than about 19 feet.
+Continue and I'll use the largest value I can.
+
+{end-group character }}
+{retaining \vsize=16383.99998pt}
+{restoring \everypar=A\insert 200{\baselineskip 400pt\ETC.}
+{restoring \splitmaxdepth=-2.0pt}
+{restoring \count15=0}
+{restoring \topskip=20.0pt plus 1.0fil}
+{restoring \output={\tracingcommands 0\showthe \outputpenalty \ETC.}
+{blank space }
+{begin-group character {}
+{\tracingoutput}
+{\tracingstats}
+{\shipout}
+{restricted horizontal mode: \closeout}
+{\closeout}
+{end-group character }}
+[-333.0.0.0.11]
+{vertical mode: end-group character }}
+{restoring \tracingstats=4}
+{restoring \tracingoutput=1}
+{blank space }
+{\showthe}
+> A\insert 200{\baselineskip 400pt\splittopskip \count 15pt\hbox {\vadju
+st {\penalty 999}}\hbox to -10pt{}}\showthe \pagetotal \showthe \pagegoa
+l \advance \count 15by1\mark {\the \count 15}\splitmaxdepth -1pt \paR \g
+obble .
+l.154 \showthe\everypar
+
+
+{\everypar}
+{\showthe}
+> .
+l.155 ...ypar{}\showthe\everypar
+
+
+{\def}
+{blank space }
+{\tracingmacros}
+{\def}
+{blank space }
+{\let}
+{\dimendef}
+{\dimen222}
+{\ifdim}
+{true}
+{\fi}
+{\ifdim}
+
+\t 12#101001{->-.#1pt{
+#1<-01001010
+{true}
+{begin-group character {}
+{\relax}
+{end-group character }}
+{\else}
+{\count0}
+{\ifodd}
+{true}
+{\advance}
+{\fi}
+{\penalty}
+% t=1.0 plus 44.0 g=2000.0 b=10000 p=-12345 c=-12345#
+{internal vertical mode: \tracingcommands}
+> -12345.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+l.164 \penalty -12345
+ % output the remaining stuff
+
+
+Completed box being shipped out [-2.0.0.0.11]
+\vbox(2000.0+0.0)x23.0, glue set 45.43182
+.\glue(\topskip) 1.0 plus 44.0
+.\hbox(0.0+0.0)x23.0
+
+Memory usage before: 118&328; after: 102&328; still untouched: 1473
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{vertical mode: \tracingmacros}
+{\adjdemerits}
+{\linepenalty}
+{\def}
+{blank space }
+{\valign}
+{horizontal mode: \valign}
+{restricted horizontal mode: \spacefactor}
+{\global}
+{end-group character }}
+{blank space }
+{\vrule}
+{begin-group character {}
+{blank space }
+{end-group character }}
+{end-group character }}
+{internal vertical mode: \baselineskip}
+{\global}
+{\global}
+{\rightskip}
+{\global}
+{\setbox}
+
+\1#1->\hbox to#1pt{}
+#1<-2
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: blank space }
+{\noindent}
+{horizontal mode: \copy}
+{\hskip}
+{\copy}
+{\hskip}
+{\lower}
+
+\1#1->\hbox to#1pt{}
+#1<-1
+{restricted horizontal mode: end-group character }}
+{horizontal mode: \hskip}
+{\copy}
+{\hskip}
+{\box}
+{end of alignment template}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+[]
+@ via @@0 b=51 p=0 d=2704
+@ via @@1 b=10000 p=0 d=100000000
+@@2: line 1.1 t=2704 -> @@0
+[]
+@ via @@0 b=30 p=0 d=961
+@ via @@1 b=10000 p=0 d=100000000
+@ via @@2 b=10000 p=0 d=100000000
+@@3: line 1.3 t=961 -> @@0
+[]
+@ via @@2 b=10000 p=0 d=100000000
+@ via @@3 b=10000 p=0 d=100000782
+@@4: line 2.0 t=100001743 -> @@3
+[]
+@\par via @@2 b=0 p=-10000 d=1
+@\par via @@3 b=30 p=-10000 d=1743
+@\par via @@4 b=10000 p=-10000 d=100000000
+@@5: line 2.1- t=2704 -> @@3
+@@6: line 2.2- t=2705 -> @@2
+
+
+Tight \hbox (badness 30) in paragraph at lines 183--183
+ [] [] []
+
+\hbox(0.0+2.0)x13.0, glue set - 0.66667
+.\glue(\leftskip) 4.0
+.\hbox(0.0+0.0)x2.0
+.etc.
+
+
+Loose \hbox (badness 30) in paragraph at lines 183--183
+ [] []
+
+\hbox(0.0+0.0)x13.0, glue set 0.66667
+.\glue(\leftskip) 4.0
+.\hbox(0.0+0.0)x2.0
+.etc.
+
+{restoring \box2=void}
+{restoring \rightskip=0.0pt}
+{restoring \baselineskip=10.0pt plus 41.0pt}
+{internal vertical mode: \baselineskip}
+{\global}
+{\global}
+{\rightskip}
+{\global}
+{\setbox}
+
+\1#1->\hbox to#1pt{}
+#1<-2
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: blank space }
+{\noindent}
+{horizontal mode: \copy}
+{\hskip}
+{\copy}
+{\hskip}
+{\lower}
+
+\1#1->\hbox to#1pt{}
+#1<-1
+{restricted horizontal mode: end-group character }}
+{horizontal mode: \hskip}
+{\copy}
+{\hskip}
+{\box}
+{\adjdemerits}
+{end of alignment template}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000784
+@@1: line 1.0 t=100000784 -> @@0
+[]
+@ via @@0 b=51 p=0 d=2704
+@ via @@1 b=10000 p=0 d=100000000
+@@2: line 1.1 t=2704 -> @@0
+[]
+@ via @@0 b=30 p=0 d=961
+@ via @@1 b=10000 p=0 d=100000000
+@ via @@2 b=10000 p=0 d=100000000
+@@3: line 1.3 t=961 -> @@0
+[]
+@ via @@2 b=10000 p=0 d=100000000
+@ via @@3 b=10000 p=0 d=100000784
+@@4: line 2.0 t=100001745 -> @@3
+[]
+@\par via @@2 b=0 p=-10000 d=1
+@\par via @@3 b=30 p=-10000 d=1745
+@\par via @@4 b=10000 p=-10000 d=100000000
+@@5: line 2.1- t=2706 -> @@3
+@@6: line 2.2- t=2705 -> @@2
+
+
+Loose \hbox (badness 51) in paragraph at lines 184--184
+ [] []
+
+\hbox(0.0+0.0)x13.0, glue set 0.8
+.\glue(\leftskip) 4.0
+.\hbox(0.0+0.0)x2.0
+.etc.
+
+{restoring \adjdemerits=782}
+{restoring \box2=void}
+{restoring \rightskip=0.0pt}
+{restoring \baselineskip=10.0pt plus 41.0pt}
+{internal vertical mode: \baselineskip}
+{\global}
+{\global}
+{\rightskip}
+{\global}
+{\setbox}
+
+\1#1->\hbox to#1pt{}
+#1<-2
+{restricted horizontal mode: end-group character }}
+{internal vertical mode: blank space }
+{\noindent}
+{horizontal mode: \copy}
+{\hskip}
+{\copy}
+{\hskip}
+{\lower}
+
+\1#1->\hbox to#1pt{}
+#1<-1
+{restricted horizontal mode: end-group character }}
+{horizontal mode: \hskip}
+{\copy}
+{\hskip}
+{\box}
+{\linepenalty}
+{\hbadness}
+{end of alignment template}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+[]
+@ via @@0 b=51 p=0 d=2809
+@ via @@1 b=10000 p=0 d=100000000
+@@2: line 1.1 t=2809 -> @@0
+[]
+@ via @@0 b=30 p=0 d=1024
+@ via @@1 b=10000 p=0 d=100000000
+@ via @@2 b=10000 p=0 d=100000000
+@@3: line 1.3 t=1024 -> @@0
+[]
+@ via @@2 b=10000 p=0 d=100000000
+@ via @@3 b=10000 p=0 d=100000782
+@@4: line 2.0 t=100001806 -> @@3
+[]
+@\par via @@2 b=0 p=-10000 d=4
+@\par via @@3 b=30 p=-10000 d=1806
+@\par via @@4 b=10000 p=-10000 d=100000000
+@@5: line 2.1- t=2830 -> @@3
+@@6: line 2.2- t=2813 -> @@2
+
+{restoring \hbadness=0}
+{restoring \linepenalty=1}
+{restoring \box2=void}
+{restoring \rightskip=0.0pt}
+{restoring \baselineskip=10.0pt plus 41.0pt}
+{restricted horizontal mode: blank space }
+{\spacefactor}
+{end-group character }}
+{horizontal mode: \message}
+1
+{blank space }
+{begin-group character {}
+{\hsize}
+{\par}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+|
+@ via @@0 b=10000 p=0 d=100000782
+@ via @@1 b=10000 p=0 d=100000000
+@@2: line 1.0 t=100000782 -> @@0
+[][][]
+@ via @@0 b=10000 p=0 d=100000782
+@ via @@1 b=10000 p=0 d=100000000
+@ via @@2 b=10000 p=0 d=100000000
+@@3: line 1.0 t=100000782 -> @@0
+@\par via @@0 b=10000 p=-10000 d=100000782
+@\par via @@1 b=10000 p=-10000 d=100000000
+@\par via @@2 b=10000 p=-10000 d=100000000
+@\par via @@3 b=10000 p=-10000 d=100000000
+@@4: line 1.0- t=100000782 -> @@0
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 171--187
+ [] | [][][]
+
+\hbox(22.0+0.0)x1000.0, glue set 237.5
+.\glue(\leftskip) 4.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+%% goal height=16383.99998, max depth=2.0
+{vertical mode: \parindent}
+{\indent}
+% t=22.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{horizontal mode: end-group character }}
+{restoring \parindent=0.0pt}
+{restoring \hsize=13.0pt}
+{\leftskip}
+{\def}
+{\noindent}
+{\indent}
+{\hbox}
+{restricted horizontal mode: \hskip}
+{end-group character }}
+
+Underfull \hbox (badness 10000) detected at line 188
+
+
+\hbox(0.0+0.0)x2.0, glue set -1.99255
+.\glue 0.0 plus -1.00374
+
+{horizontal mode: \discretionary}
+
+\?->\vrule width-2pt \hbox spread2pt{}
+{restricted horizontal mode: \vrule}
+{\hbox}
+{end-group character }}
+{the letter A}
+{end-group character }}
+
+\?->\vrule width-2pt \hbox spread2pt{}
+{\vrule}
+{\hbox}
+{end-group character }}
+{the letter B}
+{end-group character }}
+
+\?->\vrule width-2pt \hbox spread2pt{}
+{\vrule}
+{\hbox}
+{end-group character }}
+{the character /}
+{\kern}
+{end-group character }}
+{horizontal mode: \unkern}
+{\showthe}
+> 2.0pt.
+l.190 \showthe\lastkern
+ \vbox{\hrule width 6pt} \par % should ...
+
+{\vbox}
+{internal vertical mode: \hrule}
+{end-group character }}
+{horizontal mode: blank space }
+{\par}
+@firstpass
+[][][]|[]\rip AAAB|[]B-
+@\discretionary via @@0 b=0 p=88 d=7745
+@@1: line 1.2- t=7745 -> @@0
+[]
+@\par via @@1 b=0 p=-10000 d=100001
+@@2: line 2.2- t=107746 -> @@1
+
+% t=32.0 plus 83.0 plus 1.0fil minus 8.0 g=16383.99998 b=0 p=162 c=162
+{vertical mode: \penalty}
+% t=42.0 plus 124.0 plus 1.0fil minus 8.0 g=16383.99998 b=0 p=-22222 c=-
+22222#
+\output->{\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999
+ \showboxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2
+\ifhbox 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \
+fi }
+{internal vertical mode: \tracingcommands}
+> -22222.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+l.191 \penalty-22222
+ % end of demerits test, hyphenation is next
+
+
+Completed box being shipped out [-2.0.0.0.11]
+\vbox(16383.99998+0.0)x1000.0, glue set 16342.0fil
+.\glue(\topskip) 0.0 plus 1.0fil
+.\hbox(22.0+0.0)x1000.0, glue set 237.5
+..\glue(\leftskip) 4.0
+..\hbox(0.0+0.0)x0.0
+..\glue(\xspaceskip) -1.0
+..\rule(22.0+0.0)x0.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\vbox(22.0+0.0)x13.0
+...\glue(\tabskip) 0.0 plus 40.0
+...\vbox(22.0+0.0)x13.0, glue set 2.0
+....\hbox(0.0+2.0)x13.0, glue set - 0.66667
+.....\glue(\leftskip) 4.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue 2.0 plus 5.0 minus 1.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue 5.0 minus 2.0
+.....\hbox(0.0+0.0)x1.0, shifted 2.0
+.....\glue(\rightskip) -1.0
+....\penalty 125
+....\glue(\baselineskip) 18.0 plus 1.0
+....\hbox(0.0+0.0)x13.0, glue set 0.66667
+.....\glue(\leftskip) 4.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue 2.0 plus 6.0
+.....\hbox(0.0+0.0)x2.0
+.....\penalty 10000
+.....\glue(\parfillskip) 0.0
+.....\glue(\rightskip) -1.0
+...\glue(\tabskip) 0.0 plus 40.0
+..\vbox(22.0+0.0)x13.0
+...\glue(\tabskip) 0.0 plus 40.0
+...\vbox(22.0+0.0)x13.0
+....\hbox(0.0+0.0)x13.0, glue set 0.8
+.....\glue(\leftskip) 4.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue 2.0 plus 5.0 minus 1.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue(\rightskip) -1.0
+....\penalty 125
+....\glue(\baselineskip) 20.0 plus 1.0
+....\hbox(0.0+2.0)x13.0
+.....\glue(\leftskip) 4.0
+.....\hbox(0.0+0.0)x1.0, shifted 2.0
+.....\glue 3.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue 2.0 plus 6.0
+.....\hbox(0.0+0.0)x2.0
+.....\penalty 10000
+.....\glue(\parfillskip) 0.0
+.....\glue(\rightskip) -1.0
+...\glue(\tabskip) 0.0 plus 40.0
+..\vbox(22.0+0.0)x13.0
+...\glue(\tabskip) 0.0 plus 40.0
+...\vbox(22.0+0.0)x13.0
+....\hbox(0.0+0.0)x13.0, glue set 0.8
+.....\glue(\leftskip) 4.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue 2.0 plus 5.0 minus 1.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue(\rightskip) -1.0
+....\penalty 125
+....\glue(\baselineskip) 20.0 plus 1.0
+....\hbox(0.0+2.0)x13.0
+.....\glue(\leftskip) 4.0
+.....\hbox(0.0+0.0)x1.0, shifted 2.0
+.....\glue 3.0
+.....\hbox(0.0+0.0)x2.0
+.....\glue 2.0 plus 6.0
+.....\hbox(0.0+0.0)x2.0
+.....\penalty 10000
+.....\glue(\parfillskip) 0.0
+.....\glue(\rightskip) -1.0
+...\glue(\tabskip) 0.0 plus 40.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+.\glue(\parskip) 0.0 plus 42.0 minus 8.0
+.\glue(\baselineskip) 2.0 plus 41.0
+.\hbox(8.0+2.0)x13.0
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x1.0
+..\hbox(0.0+0.0)x0.0
+..\hbox(0.0+0.0)x2.0, glue set -1.99255
+...\glue 0.0 plus -1.00374
+..\discretionary
+..\rule(*+*)x-2.0
+..\hbox(0.0+0.0)x2.0
+..\rip A (ligature AAA)
+..\kern2.0
+..\rip B
+..\glue(\rightskip) 0.0
+.\penalty 162
+.\glue(\baselineskip) 7.6 plus 41.0
+.\hbox(0.4+0.0)x13.0
+..\glue(\leftskip) 3.0
+..\rule(*+*)x-2.0
+..\hbox(0.0+0.0)x2.0
+..\rip C (ligature B-)
+..\vbox(0.4+0.0)x6.0
+...\rule(0.4+0.0)x6.0
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+
+Memory usage before: 990&376; after: 584&370; still untouched: 735
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{vertical mode: \looseness}
+{\uchyph}
+{\hsize}
+{the letter A}
+{horizontal mode: the letter A}
+{blank space }
+{the character /}
+{\vadjust}
+{internal vertical mode: \uchyph}
+{\ }
+{horizontal mode: \ }
+{the letter B}
+{end-group character }}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+\rip BBBBBB
+@\par via @@0 b=10000 p=-10000 d=100000782
+@\par via @@1 b=10000 p=-10000 d=100000000
+@@2: line 1.0- t=100000782 -> @@0
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 200--200
+ [] \rip BBBBBB
+
+\hbox(7.0+1.0)x100.0, glue set 41.5
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{restoring \uchyph=1}
+{restoring \looseness=-10}
+{\vadjust}
+{internal vertical mode: \ }
+{horizontal mode: \ }
+{\closeout}
+{the letter B}
+{end-group character }}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+[]\rip BB-
+@\discretionary via @@0 b=10000 p=88 d=100008526
+@\discretionary via @@1 b=10000 p=88 d=100007744
+@@2: line 1.0- t=100008526 -> @@0
+B-BBB
+@\discretionary via @@0 b=10000 p=88 d=100008526
+@\discretionary via @@1 b=10000 p=88 d=100007744
+@\discretionary via @@2 b=10000 p=88 d=100008744
+@@3: line 1.0- t=100008526 -> @@0
+@\par via @@0 b=10000 p=-10000 d=100000782
+@\par via @@1 b=10000 p=-10000 d=100000000
+@\par via @@2 b=10000 p=-10000 d=100100000
+@\par via @@3 b=10000 p=-10000 d=100100000
+@@4: line 1.0- t=100000782 -> @@0
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 201--201
+ [] []\rip BB-B-BBB
+
+\hbox(7.0+1.0)x100.0, glue set 41.5
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{restoring \looseness=-10}
+{begin-group character {}
+{\hyphenchar}
+{end-group character }}
+{\hyphenation}
+{\vadjust}
+{internal vertical mode: \ }
+{horizontal mode: \ }
+{the letter B}
+{\kern}
+{the letter B}
+{end-group character }}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+\rip BBBCBBB
+@\discretionary via @@0 b=10000 p=88 d=100008526
+@\discretionary via @@1 b=10000 p=88 d=100007744
+@@2: line 1.0- t=100008526 -> @@0
+B
+@\par via @@0 b=10000 p=-10000 d=100000782
+@\par via @@1 b=10000 p=-10000 d=100000000
+@\par via @@2 b=10000 p=-10000 d=100100000
+@@3: line 1.0- t=100000782 -> @@0
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 202--202
+ [] \rip BBBCBBBB
+
+\hbox(8.0+2.0)x100.0, glue set 40.0
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{restoring \looseness=-10}
+{\hyphenchar}
+{\vadjust}
+{internal vertical mode: \def}
+{\ }
+{horizontal mode: \ }
+{\pretolerance}
+{the letter B}
+
+\B ->B
+{end-group character }}
+@firstpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+\rip BBBBBB
+@\par via @@0 b=10000 p=-10000 d=100000782
+@\par via @@1 b=10000 p=-10000 d=100000000
+@@2: line 1.0- t=100000782 -> @@0
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 203--203
+ [] \rip BBBBBB
+
+\hbox(7.0+1.0)x100.0, glue set 41.5
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{restoring \pretolerance=0}
+{restoring \B=undefined}
+{restoring \looseness=-10}
+{blank space }
+{\par}
+@firstpass
+@secondpass
+[]\rip A
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+/AA-
+@\discretionary via @@0 b=10000 p=88 d=100008526
+@@2: line 1.0- t=100008526 -> @@0
+@\discretionary via @@1 b=10000 p=88 d=100007744
+@@3: line 2.0- t=200008526 -> @@1
+B-BBB
+@\discretionary via @@0 b=10000 p=88 d=100008526
+@@4: line 1.0- t=100008526 -> @@0
+@\discretionary via @@2 b=10000 p=88 d=100008744
+@\discretionary via @@1 b=10000 p=88 d=100007744
+@@5: line 2.0- t=200008526 -> @@1
+@\discretionary via @@3 b=10000 p=88 d=100008744
+@@6: line 3.0- t=300017270 -> @@3
+-
+@\discretionary via @@0 b=10000 p=88 d=100008526
+@@7: line 1.0- t=100008526 -> @@0
+@\discretionary via @@4 b=10000 p=88 d=100008744
+@\discretionary via @@2 b=10000 p=88 d=100008744
+@\discretionary via @@1 b=10000 p=88 d=100007744
+@@8: line 2.0- t=200008526 -> @@1
+@\discretionary via @@5 b=10000 p=88 d=100008744
+@\discretionary via @@3 b=10000 p=88 d=100008744
+@@9: line 3.0- t=300017270 -> @@3
+@\discretionary via @@6 b=10000 p=88 d=100008744
+@@10: line 4.0- t=400026014 -> @@6
+C-A
+@\discretionary via @@0 b=10000 p=88 d=100008526
+@@11: line 1.0- t=100008526 -> @@0
+@\discretionary via @@7 b=10000 p=88 d=100008744
+@\discretionary via @@4 b=10000 p=88 d=100008744
+@\discretionary via @@2 b=10000 p=88 d=100008744
+@\discretionary via @@1 b=10000 p=88 d=100007744
+@@12: line 2.0- t=200008526 -> @@1
+@\discretionary via @@8 b=10000 p=88 d=100008744
+@\discretionary via @@5 b=10000 p=88 d=100008744
+@\discretionary via @@3 b=10000 p=88 d=100008744
+@@13: line 3.0- t=300017270 -> @@3
+@\discretionary via @@9 b=10000 p=88 d=100008744
+@\discretionary via @@6 b=10000 p=88 d=100008744
+@@14: line 4.0- t=400026014 -> @@6
+@\discretionary via @@10 b=10000 p=88 d=100008744
+@@15: line 5.0- t=500034758 -> @@10
+CAC//[][][][]
+@\par via @@0 b=10000 p=-10000 d=100000782
+@@16: line 1.0- t=100000782 -> @@0
+@\par via @@11 b=10000 p=-10000 d=100100000
+@\par via @@7 b=10000 p=-10000 d=100100000
+@\par via @@4 b=10000 p=-10000 d=100100000
+@\par via @@2 b=10000 p=-10000 d=100100000
+@\par via @@1 b=10000 p=-10000 d=100000000
+@@17: line 2.0- t=200000782 -> @@1
+@\par via @@12 b=10000 p=-10000 d=100100000
+@\par via @@8 b=10000 p=-10000 d=100100000
+@\par via @@5 b=10000 p=-10000 d=100100000
+@\par via @@3 b=10000 p=-10000 d=100100000
+@@18: line 3.0- t=300108526 -> @@3
+@\par via @@13 b=10000 p=-10000 d=100100000
+@\par via @@9 b=10000 p=-10000 d=100100000
+@\par via @@6 b=10000 p=-10000 d=100100000
+@@19: line 4.0- t=400117270 -> @@6
+@\par via @@14 b=10000 p=-10000 d=100100000
+@\par via @@10 b=10000 p=-10000 d=100100000
+@@20: line 5.0- t=500126014 -> @@10
+@\par via @@15 b=10000 p=-10000 d=100100000
+@@21: line 6.0- t=600134758 -> @@15
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 195--204
+ []\rip A /AA-B-BBB-C-ACAC//
+
+\hbox(8.0+2.0)x100.0, glue set 33.53377
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+%% goal height=16383.99998, max depth=2.0
+{vertical mode: \hbox}
+{restricted horizontal mode: \sfcode}
+{the letter A}
+{blank space }
+{the letter a}
+{blank space }
+{end-group character }}
+{restoring \sfcode66=999}
+% t=55.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{vertical mode: \noindent}
+% t=64.0 plus 41.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{horizontal mode: \scriptscriptfont}
+{math shift character $}
+{display math mode: \eqno}
+{math mode: superscript character ^}
+{end-group character }}
+{math shift character $}
+! Math formula deleted: Insufficient extension fonts.
+l.206 $$\eqno^{}$
+ \scriptfont3=\rip\fontdimen2\smalltrip=0pt
+Sorry, but I can't typeset math unless \textfont 3
+and \scriptfont 3 and \scriptscriptfont 3 have all
+the \fontdimen values needed in math extension fonts.
+
+! Display math should end with $$.
+<to be read again>
+ \scriptfont
+l.206 $$\eqno^{}$\scriptfont
+ 3=\rip\fontdimen2\smalltrip=0pt
+The `$' that I just saw supposedly matches a previous `$$'.
+So I shall assume that you typed `$$' both times.
+
+{restoring \fam=-1}
+! Math formula deleted: Insufficient extension fonts.
+<to be read again>
+ \scriptfont
+l.206 $$\eqno^{}$\scriptfont
+ 3=\rip\fontdimen2\smalltrip=0pt
+Sorry, but I can't typeset math unless \textfont 3
+and \scriptfont 3 and \scriptscriptfont 3 have all
+the \fontdimen values needed in math extension fonts.
+
+{restoring \displayindent=0.0pt}
+{restoring \displaywidth=0.0pt}
+{restoring \predisplaysize=0.0pt}
+{restoring \fam=0}
+% t=66.0 plus 83.0 plus 1.0fil minus 8.0 g=16383.99998 b=0 p=0 c=0#
+% t=85.0 plus 210.0 plus 1.0fil minus 811.0 g=16383.99998 b=0 p=0 c=0#
+{horizontal mode: \scriptfont}
+{\fontdimen}
+{begin-group character {}
+{\rightskip}
+{\looseness}
+{\spaceskip}
+{the letter A}
+{\spacefactor}
+{\discretionary}
+{restricted horizontal mode: end-group character }}
+{\kern}
+{the character -}
+{end-group character }}
+{the letter B}
+{\kern}
+{end-group character }}
+{horizontal mode: blank space }
+{the letter C}
+{math shift character $}
+{math mode: blank space }
+{\scriptfont}
+{\mathsurround}
+{math shift character $}
+! Math formula deleted: Insufficient symbol fonts.
+<recently read> $
+
+l.210 \mathsurround143pt$
+ C $\mathsurround40pt$$\mathsurrou...
+Sorry, but I can't typeset math unless \textfont 2
+and \scriptfont 2 and \scriptscriptfont 2 have all
+the \fontdimen values needed in math symbol fonts.
+
+{restoring \mathsurround=0.0pt}
+{restoring \scriptfont2=\smalltrip}
+{restoring \fam=0}
+{horizontal mode: blank space }
+{the letter C}
+{blank space }
+{math shift character $}
+{math mode: \mathsurround}
+{math shift character $}
+{restoring \mathsurround=0.0pt}
+{restoring \fam=0}
+{horizontal mode: math shift character $}
+{math mode: \mathsurround}
+{\hbox}
+{restricted horizontal mode: math shift character $}
+{math mode: math shift character $}
+{restoring \fam=-1}
+{restricted horizontal mode: end-group character }}
+{math mode: math shift character $}
+{restoring \mathsurround=0.0pt}
+{restoring \fam=0}
+{horizontal mode: \par}
+! Infinite glue shrinkage found in a paragraph.
+l.210 ...round60pt\hbox{$$}$\par
+ }
+The paragraph just ended includes some glue that has
+infinite shrinkability, e.g., `\hskip 0pt minus 1fil'.
+Such glue doesn't belong there---it allows a paragraph
+of any length to fit on one line. But it's safe to proceed,
+since the offensive shrinkability has been made finite.
+
+@firstpass
+@secondpass
+\rip A-
+@\discretionary via @@0 b=76 p=89 d=13850
+@@1: line 4.1- t=13850 -> @@0
+
+@ via @@0 b=65 p=0 d=4356
+@@2: line 4.1 t=4356 -> @@0
+@ via @@1 b=91 p=0 d=8464
+@@3: line 5.1 t=22314 -> @@1
+C$$
+@\math via @@0 b=17 p=0 d=324
+@@4: line 4.3 t=324 -> @@0
+@\math via @@2 b=12 p=0 d=169
+@\math via @@1 b=9 p=0 d=100
+@@5: line 5.2 t=4525 -> @@2
+@\math via @@3 b=12 p=0 d=169
+@@6: line 6.2 t=22483 -> @@3
+ C
+@ via @@4 b=71 p=0 d=5966
+@@7: line 5.1 t=6290 -> @@4
+@ via @@5 b=71 p=0 d=5184
+@@8: line 6.1 t=9709 -> @@5
+@ via @@6 b=71 p=0 d=5184
+@@9: line 7.1 t=27667 -> @@6
+$$$[]$
+@\par via @@7 b=57 p=-10000 d=4146
+@@10: line 6.3- t=10436 -> @@7
+@\par via @@8 b=57 p=-10000 d=4146
+@@11: line 7.3- t=13855 -> @@8
+@\par via @@9 b=57 p=-10000 d=4146
+@@12: line 8.3- t=31813 -> @@9
+
+
+Loose \hbox (badness 76) in paragraph at lines 206--210
+ \rip A
+
+\hbox(7.0+1.0)x100.0, glue set 0.91347
+.\glue(\leftskip) 3.0
+.\rip A
+.etc.
+
+
+Loose \hbox (badness 91) in paragraph at lines 206--210
+ \rip -
+
+\hbox(0.0+0.0)x100.0, glue set 0.97116
+.\glue(\leftskip) 3.0
+.\kern 2.0
+.etc.
+
+
+Tight \hbox (badness 12) in paragraph at lines 206--210
+ \rip C$$
+
+\hbox(0.0+0.0)x100.0, glue set - 0.5
+.\glue(\leftskip) 3.0
+.\rip C
+.etc.
+
+
+Loose \hbox (badness 71) in paragraph at lines 206--210
+ \rip C
+
+\hbox(0.0+0.0)x100.0, glue set 0.89423
+.\glue(\leftskip) 3.0
+.\rip C
+.etc.
+
+
+Tight \hbox (badness 57) in paragraph at lines 206--210
+ []$
+
+\hbox(0.0+0.0)x100.0, glue set - 0.83
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x120.0 []
+.etc.
+
+% t=95.0 plus 251.0 plus 1.0fil minus 811.0 g=16383.99998 b=0 p=37 c=37
+% t=105.0 plus 292.0 plus 1.0fil minus 811.0 g=16383.99998 b=0 p=-125 c=
+-125#
+% t=115.0 plus 333.0 plus 1.0fil minus 811.0 g=16383.99998 b=0 p=-125 c=
+-125#
+% t=125.0 plus 374.0 plus 1.0fil minus 811.0 g=16383.99998 b=0 p=0 c=0
+{vertical mode: end-group character }}
+{restoring \spaceskip=0.0pt}
+{restoring \looseness=0}
+{restoring \rightskip=0.0pt}
+{blank space }
+{\uccode}
+{\font}
+{\input}
+! Font \mumble=mumble not loadable: Metric (TFM) file not found.
+<to be read again>
+ \relax
+...
+l.211 ...ont\mumble=mumble\input
+ tripos % "AAAAAAAAAA"+errors
+I wasn't able to read the size data for this font,
+so I will ignore the font specification.
+[Wizards can fix TFM files using TFtoPL/PLtoTF.]
+You might try inserting a different font spec;
+e.g., type `I\font<same font id>=<substitute font name>'.
+
+{\relax}
+{\input}
+(tripos.tex
+{\par}
+{\uppercase}
+{the character 0}
+% t=135.0 plus 415.0 plus 1.0fil minus 811.0 g=16383.99998 b=0 p=0 c=0
+{horizontal mode: the character 0}
+Missing character: There is no 0 in font trip!
+{begin-group character {}
+{\outputpenalty}
+! Missing number, treated as zero.
+<to be read again>
+ }
+l.2 ...case {0{\outputpenalty }}
+
+A number should have been here; I inserted `0'.
+(If you can't figure out why I needed to see a number,
+look up `weird error' in the index to The TeXbook.)
+
+{end-group character }}
+{restoring \outputpenalty=-22222}
+{blank space }
+{the character [}
+Missing character: There is no [ in font trip!
+{\uppercase}
+{the letter A}
+Missing character: There is no [ in font trip!
+{blank space }
+)
+{\par}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+\rip AAAAAAAAAA
+@\par via @@0 b=10000 p=-10000 d=100000782
+@\par via @@1 b=10000 p=-10000 d=100000000
+@@2: line 1.0- t=100000782 -> @@0
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 2--212
+ [] \rip AAAAAAAAAA
+
+\hbox(7.0+1.0)x100.0, glue set 45.5
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{vertical mode: \penalty}
+% t=145.0 plus 498.0 plus 1.0fil minus 819.0 g=16383.99998 b=0 p=-33333
+c=-33333#
+\output->{\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999
+ \showboxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2
+\ifhbox 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \
+fi }
+{internal vertical mode: \tracingcommands}
+> -33333.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+l.212 \par\penalty-33333
+ % end hyphenation, math is next
+
+
+Completed box being shipped out [-2.0.0.0.11]
+\vbox(16383.99998+1.0)x100.0, glue set 16239.0fil
+.\glue(\topskip) 12.0 plus 1.0fil
+.\hbox(8.0+2.0)x100.0, glue set 33.53377
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\rip A
+..\glue 4.0 plus 1.99799 minus 1.00099
+..\rip /
+..\kern1.0
+..\discretionary replacing 2
+...\rip A (ligature AA)
+...\kern3.0
+...\rip -
+..\rip A (ligature AA)
+..\kern2.0
+..\discretionary replacing 3
+...\rip C (ligature B-)
+..|\rip A (ligature BB)
+..|\kern2.0
+..|\rip B
+..|\kern4.0
+..\rip A (ligature BB)
+..\kern2.0
+..\rip A (ligature BB)
+..\discretionary
+...\rip -
+..\discretionary replacing 1
+...\rip C
+...\rip -
+..|\rip A
+..\rip ^^82 (ligature CA)
+..\rip ^^82 (ligature CA)
+..\rip B (ligature C/)
+..\rip /
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+.\hbox(7.0+1.0)x100.0, glue set 41.5
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\rip A (ligature BB)
+..\kern2.0
+..\rip A (ligature BB)
+..\kern2.0
+..\rip A (ligature BB)
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+.\hbox(7.0+1.0)x100.0, glue set 41.5
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\closeout1
+..\discretionary replacing 2
+...\rip A (ligature BB)
+...\kern3.0
+...\rip -
+..\rip A (ligature BB)
+..\kern2.0
+..\discretionary replacing 3
+...\rip C (ligature B-)
+..|\rip A (ligature BB)
+..|\kern2.0
+..|\rip B
+..\rip A (ligature BB)
+..\kern2.0
+..\rip A (ligature BB)
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+.\hbox(8.0+2.0)x100.0, glue set 40.0
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\rip A (ligature BB)
+..\kern2.0
+..\discretionary replacing 3
+...\rip B
+...\kern4.0
+...\rip C
+..|\rip A (ligature BB)
+..|\kern2.0
+..|\rip B
+..\rip A (ligature BB)
+..\kern2.0
+..\rip A (ligature BB)
+..\kern 0.0
+..\rip B
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+.\hbox(7.0+1.0)x100.0, glue set 41.5
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\rip A (ligature BB)
+..\kern2.0
+..\rip A (ligature BB)
+..\kern2.0
+..\rip A (ligature BB)
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+.\glue(\baselineskip) 0.0 plus 41.0
+.\hbox(8.0+2.0)x20.0
+..\rip A
+..\kern2.0
+..\rip B
+..\glue 4.0 plus 2.0 minus 1.0
+..\rip a
+..\rip B
+..\glue 4.0 plus 2.46799 minus 0.81036
+.\glue(\parskip) 0.0 plus 42.0 minus 8.0
+.\penalty 0
+.\glue(\abovedisplayshortskip) 1.0 plus 45.0 minus 803.0
+.\glue(\baselineskip) 8.0 plus 41.0
+.\hbox(0.0+0.0)x0.0, shifted 50.0
+.\penalty 10000
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+0.0)x0.0, shifted 100.0
+.\penalty 0
+.\glue(\baselineskip) 3.0 plus 41.0
+.\hbox(7.0+1.0)x100.0, glue set 0.91347
+..\glue(\leftskip) 3.0
+..\rip A
+..\discretionary
+..\glue(\rightskip) 0.0 plus 104.0 minus 100.0
+.\penalty 37
+.\glue(\baselineskip) 9.0 plus 41.0
+.\hbox(0.0+0.0)x100.0, glue set 0.97116
+..\glue(\leftskip) 3.0
+..\kern 2.0
+..\kern-1.00002
+..\rip -
+..\glue(\rightskip) 0.0 plus 104.0 minus 100.0
+.\penalty -125
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+0.0)x100.0, glue set - 0.5
+..\glue(\leftskip) 3.0
+..\rip C
+..\mathon, surrounded 143.0
+..\mathoff
+..\glue(\rightskip) 0.0 plus 104.0 minus 100.0
+.\penalty -125
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+0.0)x100.0, glue set 0.89423
+..\glue(\leftskip) 3.0
+..\rip C
+..\glue(\rightskip) 0.0 plus 104.0 minus 100.0
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+0.0)x100.0, glue set - 0.83
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x120.0
+...\mathon, surrounded 60.0
+...\mathoff, surrounded 60.0
+..\mathoff, surrounded 60.0
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0 plus 104.0 minus 100.0
+.\glue(\parskip) 0.0 plus 42.0 minus 8.0
+.\glue(\baselineskip) 3.0 plus 41.0
+.\hbox(7.0+1.0)x100.0, glue set 45.5
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\rip A (ligature AAAAAAAAAA)
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+
+Memory usage before: 950&531; after: 546&448; still untouched: 706
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{vertical mode: begin-group character {}
+{\catcode}
+{\font}
+! Improper `at' size (0.0pt), replaced by 10pt.
+<to be read again>
+ \font
+l.213 ... \font?xyzzy at0pt\font
+ ? xyzzy scaled1?} % nonexistent
+I can only handle fonts at positive sizes that are
+less than 2048pt, so I've changed what you said to 10pt.
+
+! Font ?=xyzzy at 10.0pt not loadable: Metric (TFM) file not found.
+<to be read again>
+ \font
+l.213 ... \font?xyzzy at0pt\font
+ ? xyzzy scaled1?} % nonexistent
+I wasn't able to read the size data for this font,
+so I will ignore the font specification.
+[Wizards can fix TFM files using TFtoPL/PLtoTF.]
+You might try inserting a different font spec;
+e.g., type `I\font<same font id>=<substitute font name>'.
+
+{\font}
+! Font ?=xyzzy scaled 1 not loadable: Metric (TFM) file not found.
+<to be read again>
+ ?
+l.213 ...t\font ? xyzzy scaled1?
+ } % nonexistent
+I wasn't able to read the size data for this font,
+so I will ignore the font specification.
+[Wizards can fix TFM files using TFtoPL/PLtoTF.]
+You might try inserting a different font spec;
+e.g., type `I\font<same font id>=<substitute font name>'.
+
+{select font nullfont}
+{end-group character }}
+{restoring current font=\rip}
+{restoring ?=undefined}
+{restoring \catcode63=12}
+{blank space }
+{\font}
+{\font}
+! Improper `at' size (-10.0pt), replaced by 10pt.
+l.215 \font\ip trip at -10pt
+ % through the looking glass
+I can only handle fonts at positive sizes that are
+less than 2048pt, so I've changed what you said to 10pt.
+
+{\showthe}
+! You can't use `math shift character $' after \the.
+l.216 \showthe$
+
+I'm forgetting what you said and using zero instead.
+
+> 0.
+l.216 \showthe$
+
+
+{blank space }
+{\showthe}
+> \ip .
+<recently read> \font
+
+l.217 \showthe\font
+
+
+{\message}
+{\fontname}
+trip
+{blank space }
+{select font trip}
+{\textfont}
+{\scriptfont}
+{\scriptscriptfont}
+{\def}
+{blank space }
+{begin-group character {}
+{\tracingmacros}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{\global}
+{end-group character }}
+{restoring \tracingmacros=4}
+{blank space }
+{\mathcode}
+{\mathcode}
+{\delcode}
+{\catcode}
+{\catcode}
+{\mathcode}
+{\mathcode}
+{\def}
+{begin-group character {}
+{\catcode}
+{\global}
+{end-group character }}
+{restoring \catcode122=11}
+{blank space }
+{\parshape}
+
+\a ->1pt 11.0pt2pt 12.0pt3pt 13.0pt4pt 14.0pt5pt 15.0pt6pt 16.0pt7pt 17.
+0pt8pt 18.0pt9pt 19.0pt10pt 20.0pt
+{\chardef}
+{\hangindent}
+{\hangafter}
+{\begingroup}
+{\looseness}
+{\rightskip}
+{\-}
+{horizontal mode: \-}
+{the character -}
+{\-}
+{the character -}
+{\-}
+{blank space }
+{math shift character $}
+@firstpass
+[]\ip -
+@\discretionary via @@0 b=0 p=88 d=7745
+@@1: line 1.2- t=7745 -> @@0
+-
+@\discretionary via @@0 b=0 p=89 d=7922
+@@2: line 1.2- t=7922 -> @@0
+@\discretionary via @@1 b=0 p=89 d=8922
+@@3: line 2.2- t=16667 -> @@1
+-
+@\discretionary via @@0 b=0 p=88 d=7745
+@@4: line 1.2- t=7745 -> @@0
+@\discretionary via @@2 b=0 p=88 d=8745
+@\discretionary via @@1 b=0 p=88 d=8745
+@@5: line 2.2- t=16490 -> @@1
+@\discretionary via @@3 b=0 p=88 d=8745
+@@6: line 3.2- t=25412 -> @@3
+-
+-
+@\discretionary via @@0 b=0 p=89 d=7922
+@@7: line 1.2- t=7922 -> @@0
+@\discretionary via @@4 b=0 p=89 d=8922
+@\discretionary via @@2 b=0 p=89 d=8922
+@\discretionary via @@1 b=0 p=89 d=8922
+@@8: line 2.2- t=16667 -> @@1
+@\discretionary via @@5 b=0 p=89 d=8922
+@\discretionary via @@3 b=0 p=89 d=8922
+@@9: line 3.2- t=25412 -> @@5
+@\discretionary via @@6 b=0 p=89 d=8922
+@@10: line 4.2- t=34334 -> @@6
+A-
+@\discretionary via @@0 b=0 p=88 d=7745
+@@11: line 1.2- t=7745 -> @@0
+@\discretionary via @@7 b=0 p=88 d=8745
+@\discretionary via @@4 b=0 p=88 d=8745
+@\discretionary via @@2 b=0 p=88 d=8745
+@\discretionary via @@1 b=0 p=88 d=8745
+@@12: line 2.2- t=16490 -> @@1
+@\discretionary via @@8 b=0 p=88 d=8745
+@\discretionary via @@5 b=0 p=88 d=8745
+@\discretionary via @@3 b=0 p=88 d=8745
+@@13: line 3.2- t=25235 -> @@5
+@\discretionary via @@9 b=0 p=88 d=8745
+@\discretionary via @@6 b=0 p=88 d=8745
+@@14: line 4.2- t=34157 -> @@6
+@\discretionary via @@10 b=0 p=88 d=8745
+@@15: line 5.2- t=43079 -> @@10
+@\par via @@0 b=0 p=-10000 d=1
+@@16: line 1.2- t=1 -> @@0
+@\par via @@11 b=0 p=-10000 d=100001
+@\par via @@7 b=0 p=-10000 d=100001
+@\par via @@4 b=0 p=-10000 d=100001
+@\par via @@2 b=0 p=-10000 d=100001
+@\par via @@1 b=0 p=-10000 d=100001
+@@17: line 2.2- t=107746 -> @@1
+@\par via @@12 b=0 p=-10000 d=100001
+@\par via @@8 b=0 p=-10000 d=100001
+@\par via @@5 b=0 p=-10000 d=100001
+@\par via @@3 b=0 p=-10000 d=100001
+@@18: line 3.2- t=116491 -> @@5
+@\par via @@13 b=0 p=-10000 d=100001
+@\par via @@9 b=0 p=-10000 d=100001
+@\par via @@6 b=0 p=-10000 d=100001
+@@19: line 4.2- t=125236 -> @@13
+@\par via @@14 b=0 p=-10000 d=100001
+@\par via @@10 b=0 p=-10000 d=100001
+@@20: line 5.2- t=134158 -> @@14
+@\par via @@15 b=0 p=-10000 d=100001
+@@21: line 6.2- t=143080 -> @@15
+
+%% goal height=16383.99998, max depth=2.0
+% t=20.0 plus 1.0fil g=16383.99998 b=0 p=37 c=37#
+% t=30.0 plus 41.0 plus 1.0fil g=16383.99998 b=0 p=-213 c=-213#
+{display math mode: \number}
+{\the}
+! Improper alphabetic constant.
+<to be read again>
+ \relax
+l.249 ...mber\the\delcode`\relax
+ \over{{{}}}}\pagestretch=-1\p...
+A one-character control sequence belongs after a ` mark.
+So I'm essentially inserting \0 here.
+
+{the character -}
+{the character 1}
+{\relax}
+{\over}
+{begin-group character {}
+{math mode: begin-group character {}
+{begin-group character {}
+{end-group character }}
+{end-group character }}
+{end-group character }}
+{display math mode: end-group character }}
+! Extra }, or forgotten $.
+l.249 ...code`\relax\over{{{}}}}
+ \pagestretch=-1\pagetotal\sho...
+I've deleted a group-closing symbol because it seems to be
+spurious, as in `$x}$'. But perhaps the } is legitimate and
+you forgot something else, as in `\hbox{$x}'. In such cases
+the way to recover is to insert both the forgotten and the
+deleted material, e.g., by typing `I$}'.
+
+{\pagestretch}
+{\showlists}
+
+### display math mode entered at line 249
+\mathord
+.{}
+this will be denominator of:
+\fraction, thickness = default
+\\mathord []
+\\mathord []
+### vertical mode entered at line 0
+### current page:
+\glue(\topskip) 20.0 plus 1.0fil
+\hbox(0.0+0.0)x11.0, glue set 1.3fil, shifted 1.0
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+etc.
+total height 40.0 plus -40.0 plus 1.0fil
+ goal height 16383.99998
+prevdepth 1.0, prevgraf 3 lines
+
+! OK.
+l.249 ...=-1\pagetotal\showlists
+
+
+{\begingroup}
+{\halign}
+! Missing \endgroup inserted.
+<inserted text>
+ \endgroup
+...
+l.250 \begingroup\halign
+ to\the\displaywidth{#&#\crcr\crcr\cr...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{\endgroup}
+{\halign}
+! Improper \halign inside $$'s.
+<recently read> \halign
+
+l.250 \begingroup\halign
+ to\the\displaywidth{#&#\crcr\crcr\cr...
+Displays can use special alignments (like \eqalignno)
+only if nothing but the alignment itself is between $$'s.
+So I've deleted the formulas that preceded this alignment.
+
+{internal vertical mode: \the}
+{restricted horizontal mode: end of alignment template}
+
+Loose \hbox (badness 1) in alignment at lines 250--250
+ [] []
+
+\hbox(0.0+0.0)x15.0, glue set 0.1875
+.\glue(\tabskip) 0.0 plus 40.0
+.\unsetbox(0.0+0.0)x0.0
+.etc.
+
+! Missing number, treated as zero.
+<to be read again>
+ =
+l.253 ...aysize* \global\setbox=
+
+A number should have been here; I inserted `0'.
+(If you can't figure out why I needed to see a number,
+look up `weird error' in the index to The TeXbook.)
+
+! Improper \setbox.
+<recently read> =
+
+l.253 ...aysize* \global\setbox=
+
+Sorry, \setbox is not allowed after \halign in a display,
+or between \accent and an accented character.
+
+! Missing $$ inserted.
+<to be read again>
+ \eqno
+l.254 \eqno
+ % another error (actually causes two error messag...
+Displays can use special alignments (like \eqalignno)
+only if nothing but the alignment itself is between $$'s.
+
+{restoring \predisplaypenalty=0}
+{restoring \displayindent=0.0pt}
+{restoring \displaywidth=0.0pt}
+{restoring \predisplaysize=0.0pt}
+{restoring \fam=0}
+% t=40.0 plus -40.0 plus 1.0fil g=16383.99998 b=0 p=101 c=101
+% t=53.0 plus 1.0 plus 1.0fil g=16383.99998 b=0 p=-1179647 c=-1179647#
+\output->{\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999
+ \showboxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2
+\ifhbox 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \
+fi }
+{internal vertical mode: \tracingcommands}
+> -1179647.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+...
+l.254 \eqno
+ % another error (actually causes two error messag...
+
+
+Completed box being shipped out [-2.0.0.0.11.0.327680]
+\vbox(16383.99998+0.0)x20.0, glue set 16331.0fil
+.\glue(\topskip) 20.0 plus 1.0fil
+.\hbox(0.0+0.0)x11.0, glue set 1.3fil, shifted 1.0
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\discretionary
+..\ip -
+..\glue(\rightskip) 0.0 plus 10.0fil minus 0.00002
+.\penalty 37
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+0.0)x12.0, glue set 2.0fil, shifted 2.0
+..\glue(\leftskip) 3.0
+..\kern-1.00002
+..\ip -
+..\discretionary
+..\discretionary
+..\ip -
+..\glue(\rightskip) 0.0 plus 10.0fil minus 0.00002
+.\penalty -213
+.\glue(\baselineskip) 3.0 plus 41.0
+.\hbox(7.0+1.0)x13.0, glue set 1.8fil, shifted 3.0
+..\glue(\leftskip) 3.0
+..\kern-1.00002
+..\ip - (ligature -
+)
+..\ip -
+..\discretionary
+..\kern1.0
+..\ip A
+..\discretionary
+...\ip -
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0 plus 10.0fil minus 0.00002
+.\penalty 101
+.\glue(\abovedisplayskip) 3.0
+.\glue(\baselineskip) 9.0 plus 41.0
+.\hbox(0.0+0.0)x15.0, glue set 0.1875, shifted 5.0
+..\glue(\tabskip) 0.0 plus 40.0
+..\hbox(0.0+0.0)x0.0
+..\glue(\tabskip) 0.0 plus 40.0
+
+Memory usage before: 339&413; after: 236&405; still untouched: 706
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{restoring \parshape=10}
+{restoring \hangafter=-12}
+{restoring \hangindent=-10.0pt}
+{restoring \looseness=2}
+{horizontal mode: \eqno}
+! You can't use `\eqno' in horizontal mode.
+<recently read> \eqno
+
+l.254 \eqno
+ % another error (actually causes two error messag...
+Sorry, but I'm not programmed to handle this case;
+I'll just pretend that you didn't ask for it.
+If you're in the wrong mode, you might be able to
+return to the right one by typing `I}' or `I$' or `I\par'.
+
+{\looseness}
+{math shift character $}
+{math mode: \right}
+! Missing delimiter (. inserted).
+<to be read again>
+ \mathchardef
+l.256 $\right\relax\mathchardef
+ \minus="322D % locally \minus ...
+I was expecting to see something like `(' or `\{' or
+`\}' here. If you typed, e.g., `{' instead of `\{', you
+should probably delete the `{' by typing `1' now, so that
+braces don't get unbalanced. Otherwise just proceed.
+Acceptable delimiters are characters whose \delcode is
+nonnegative, or you can use `\delimiter <delimiter code>'.
+
+! Extra \right.
+<to be read again>
+ \mathchardef
+l.256 $\right\relax\mathchardef
+ \minus="322D % locally \minus ...
+I'm ignoring a \right that had no matching \left.
+
+{\mathchardef}
+{\left}
+{the letter A}
+{\over}
+{the letter A}
+{\abovewithdelims}
+! Missing delimiter (. inserted).
+<to be read again>
+ ?
+l.257 ...ver A\abovewithdelims.?
+ \right(+\mskip1A\minus=A+\pen...
+I was expecting to see something like `(' or `\{' or
+`\}' here. If you typed, e.g., `{' instead of `\{', you
+should probably delete the `{' by typing `1' now, so that
+braces don't get unbalanced. Otherwise just proceed.
+Acceptable delimiters are characters whose \delcode is
+nonnegative, or you can use `\delimiter <delimiter code>'.
+
+! Missing number, treated as zero.
+<to be read again>
+ ?
+l.257 ...ver A\abovewithdelims.?
+ \right(+\mskip1A\minus=A+\pen...
+A number should have been here; I inserted `0'.
+(If you can't figure out why I needed to see a number,
+look up `weird error' in the index to The TeXbook.)
+
+! Illegal unit of measure (pt inserted).
+<to be read again>
+ ?
+l.257 ...ver A\abovewithdelims.?
+ \right(+\mskip1A\minus=A+\pen...
+Dimensions can be in units of em, ex, in, pt, pc,
+cm, mm, dd, cc, bp, or sp; but yours is a new one!
+I'll assume that you meant to say pt, for printer's points.
+To recover gracefully from this error, it's best to
+delete the erroneous units; e.g., type `2' to delete
+two letters. (See Chapter 27 of The TeXbook.)
+
+! Ambiguous; you need another { and }.
+<to be read again>
+ ?
+l.257 ...ver A\abovewithdelims.?
+ \right(+\mskip1A\minus=A+\pen...
+I'm ignoring this fraction specification, since I don't
+know whether a construction like `x \over y \over z'
+means `{x \over y} \over z' or `x \over {y \over z}'.
+
+{the character ?}
+{\right}
+
+(->\delimiter "4162362
+{the character +}
+{\mskip}
+! Illegal unit of measure (mu inserted).
+<to be read again>
+ A
+l.257 ...elims.?\right(+\mskip1A
+ \minus=A+\penalty+1000A
+The unit of measurement in math glue must be mu.
+To recover gracefully from this error, it's best to
+delete the erroneous units; e.g., type `2' to delete
+two letters. (See Chapter 27 of The TeXbook.)
+
+{the letter A}
+{\mathchar"322D}
+{the character =}
+{the letter A}
+{the character +}
+{\penalty}
+{the letter A}
+{blank space }
+{\relpenalty}
+{\binoppenalty}
+{\mathsurround}
+{math shift character $}
+! \scriptfont 0 is undefined (character ?).
+<recently read> $
+
+l.260 \mathsurround.11em$
+ \x % this formula goes on line 7
+Somewhere in the math formula just ended, you used the
+stated character from an undefined font family. For example,
+plain TeX doesn't allow \it or \sl in subscripts. Proceed,
+and I'll try to forget that I needed that character.
+
+{restoring \mathsurround=0.0pt}
+{restoring \binoppenalty=0}
+{restoring \relpenalty=0}
+{restoring \minus=\mathchar"232D}
+{restoring \fam=0}
+{horizontal mode: \char"C8}
+Missing character: There is no ^^c8 in font trip!
+{math shift character $}
+@firstpass
+$[] \ip /
+@\penalty via @@0 b=0 p=-3333 d=-11108888
+@@1: line 7.2 t=-11108888 -> @@0
+ A \smalltrip --
+@\penalty via @@0 b=0 p=-2222 d=-4937283
+@@2: line 7.2 t=-4937283 -> @@0
+@\penalty via @@1 b=0 p=-2222 d=-4937283
+@@3: line 8.2 t=-16046171 -> @@1
+ \ip A /
+@\penalty via @@0 b=0 p=1000 d=1000001
+@@4: line 7.2 t=1000001 -> @@0
+@\penalty via @@2 b=0 p=1000 d=1000001
+@\penalty via @@1 b=0 p=1000 d=1000001
+@@5: line 8.2 t=-10108887 -> @@1
+@\penalty via @@3 b=0 p=1000 d=1000001
+@@6: line 9.2 t=-15046170 -> @@3
+ A$
+@\par via @@0 b=0 p=-10000 d=1
+@@7: line 7.2- t=1 -> @@0
+@\par via @@4 b=0 p=-10000 d=1
+@\par via @@2 b=0 p=-10000 d=1
+@\par via @@1 b=0 p=-10000 d=1
+@@8: line 8.2- t=-11108887 -> @@1
+@\par via @@5 b=0 p=-10000 d=1
+@\par via @@3 b=0 p=-10000 d=1
+@@9: line 9.2- t=-16046170 -> @@3
+@\par via @@6 b=0 p=-10000 d=1
+@@10: line 10.2- t=-15046169 -> @@6
+
+%% goal height=16383.99998, max depth=2.0
+{display math mode: blank space }
+{\vadjust}
+{internal vertical mode: \penalty}
+{end-group character }}
+{restoring \parshape=10}
+{restoring \hangafter=-12}
+{restoring \hangindent=-10.0pt}
+{restoring \looseness=-2}
+{display math mode: \mkern}
+{\the}
+{the character 7}
+{\prevgraf}
+{\insert}
+! You can't \insert255.
+<to be read again>
+ {
+l.262 ...\prevgraf=8 \insert255{
+ \penalty999}
+I'm changing to \insert0; box 255 is special.
+
+{internal vertical mode: \penalty}
+{end-group character }}
+{restoring \parshape=10}
+{restoring \hangafter=-12}
+{restoring \hangindent=-10.0pt}
+{restoring \looseness=-2}
+{display math mode: blank space }
+{\char"C8}
+{\vcenter}
+{internal vertical mode: end-group character }}
+{restoring \parshape=10}
+{restoring \hangafter=-12}
+{restoring \hangindent=-10.0pt}
+{restoring \looseness=-2}
+{display math mode: blank space }
+{begin-group character {}
+{math mode: \mathaccent}
+{the letter A}
+{end-group character }}
+{end-group character }}
+{display math mode: subscript character |}
+{blank space }
+{superscript character ^}
+{math mode: \raise}
+{restricted horizontal mode: the letter a}
+{end-group character }}
+{math mode: \displaystyle}
+{\char}
+{\textstyle}
+{end-group character }}
+{display math mode: blank space }
+{\overline}
+{math mode: superscript character ^}
+{blank space }
+{the letter A}
+{subscript character |}
+{\mathinner}
+{end-group character }}
+{superscript character ^}
+{the letter A}
+{blank space }
+{\mathchar}
+{\char}
+{subscript character ^^A}
+{\mathaccent}
+{\mathop}
+{blank space }
+{\mathbin}
+{blank space }
+{\mathopen}
+{blank space }
+{\mathpunct}
+{\mathclose}
+{blank space }
+{\mathrel}
+{blank space }
+{\global}
+{\mathaccent}
+{\fam}
+{the letter A}
+{the character 9}
+{\the}
+! Bad number (-1).
+<to be read again>
+ }
+l.269 ...the\scriptscriptfont-1}
+ }}}}
+Since I expected to read a number between 0 and 15,
+I changed this one to zero.
+
+{select font trip}
+{end-group character }}
+{restoring current font=\ip}
+{restoring \fam=-1}
+{end-group character }}
+{end-group character }}
+{end-group character }}
+{end-group character }}
+{display math mode: blank space }
+{\mathop}
+{superscript character ^}
+{\mathop}
+{\nolimits}
+{\limits}
+{subscript character |}
+{blank space }
+{\mathord}
+! Missing { inserted.
+<to be read again>
+ \radical
+l.272 \mathord \radical
+ "161 % missing { will be inserted
+A left brace was mandatory here, so I've put one in.
+You might want to delete and/or insert some corrections
+so that I will find a matching right brace soon.
+(If you're confused by all this, try typing `I}' now.)
+
+{math mode: \radical}
+{\textstyle}
+{\radical}
+{\left}
+
+(->\delimiter "4162362
+{\scriptscriptstyle}
+{\mathop}
+{\underline}
+{blank space }
+{the letter A}
+{\atop}
+{\displaystyle}
+{the letter A}
+{subscript character |}
+{the letter A}
+{\hfil}
+{\over}
+{the letter B}
+{\nonscript}
+{\kern}
+{end-group character }}
+{superscript character ^}
+{end-group character }}
+{end-group character }}
+{blank space }
+{\nolimits}
+{subscript character |}
+{\mathop}
+{\nonscript}
+{\textstyle}
+{\nonscript}
+{\mskip}
+{\showthe}
+> 9.0mu minus 1.0fil.
+l.276 \showthe\lastskip
+ B\abovewithdelims(.2pt\displa...
+
+{the letter B}
+{\abovewithdelims}
+
+(->\delimiter "4162362
+{\displaylimits}
+! Limit controls must follow a math operator.
+<recently read> \displaylimits
+
+l.276 ...lims(.2pt\displaylimits
+ }^z
+I'm ignoring this misplaced \limits or \nolimits command.
+
+{end-group character }}
+{superscript character ^}
+
+z->\delimiter "4162362
+{blank space }
+{\discretionary}
+{restricted horizontal mode: \showthe}
+> 1000.
+l.277 ...ry{\showthe\spacefactor
+ -}{\smalltrip A\hss}{\smalltr...
+
+{the character -}
+{end-group character }}
+{select font trip at 5.0pt}
+{the letter A}
+{\hss}
+{end-group character }}
+{restoring current font=\ip}
+! Improper discretionary list.
+l.277 ...tor-}{\smalltrip A\hss}
+ {\smalltrip A}
+Discretionary lists must contain only boxes and kerns.
+
+The following discretionary sublist has been deleted:
+\glue 0.0 plus 1.0fil minus 1.0fil
+
+{select font trip at 5.0pt}
+{the letter A}
+{end-group character }}
+{restoring current font=\ip}
+! Illegal math \discretionary.
+l.277 ...ip A\hss}{\smalltrip A}
+
+Sorry: The third part of a discretionary break must be
+empty, in math formulas. I had to delete your third part.
+
+{math mode: blank space }
+{\right}
+{the letter A}
+{end-group character }}
+{end-group character }}
+{end-group character }}
+{display math mode: blank space }
+{\let}
+{\aftergroup}
+{\eqno}
+{math mode: \aftergroup}
+{\scriptstyle}
+{\mathchar"232D}
+
+(->\delimiter "4162362
+{\delimiter}
+{\mathpunct}
+{the letter A}
+{the letter A}
+{end-group character }}
+{blank space }
+{subscript character |}
+{the letter B}
+{\fam}
+{the character -}
+{end-group character }}
+{restoring \fam=-1}
+{superscript character ^}
+{\hbox}
+{restricted horizontal mode: the letter A}
+{end-group character }}
+{math mode: end-group character }}
+{begin-group character {}
+{\above}
+{begin-group character {}
+{the letter v}
+{\overwithdelims}
+{blank space }
+{\displaystyle}
+{begin-group character {}
+{the letter p}
+{the letter q}
+{\atopwithdelims}
+
+(->\delimiter "4162362
+
+(->\delimiter "4162362
+{\vrule}
+{end-group character }}
+{end-group character }}
+{blank space }
+{\show}
+> \penalty=\mathchar"232D.
+l.284 \show\penalty
+ \showlonglists
+
+
+\showlonglists ->{\tracingcommands 0\pagefillstretch -1\dimen 100 \showb
+oxbreadth 9999 \showboxdepth 9999 \showlists \pagegoal =10000pt}
+{begin-group character {}
+{\tracingcommands}
+
+### math mode entered at line 284
+### math mode entered at line 282
+\mathord
+.\fraction, thickness = default
+.\\mathord
+.\.\fam1 v
+./\displaystyle
+./\mathord
+./.\fraction, thickness 0.0, left-delimiter "162362, right-delimiter "16
+2362
+./.\\mathord
+./.\.\fam1 p
+./.\\mathrel
+./.\.\fam1 q
+././\rule(9.0+*)x0.4
+\mathord
+this will be denominator of:
+\fraction, thickness 9.0
+\{}
+### math mode entered at line 280
+\scriptstyle
+\mathbin
+.\fam3 -
+\mathopen
+.\fam1 b
+\mathpunct
+.\mathord
+..\fam1 A
+.\mathord
+..\fam1 A
+^\hbox(7.0+1.0)x2.0
+^.\ip A
+_\mathord
+_.\fam1 B
+_\mathord
+_.\fam0 -
+\mathord
+### display math mode entered at line 261
+\vadjust
+.\penalty 7
+\mkern-9.0mu
+\mathord
+.\fam0 7
+\insert0, natural size 0.0; split(1.0 plus 43.0,-2.0); float cost 100
+.\penalty 999
+\mathord
+.\fam0 ^^c8
+\vcenter
+.\vbox(-2.0+0.0)x0.0
+\accent\fam3 -
+.\fam1 A
+^\mathord
+^.\hbox(7.0+1.0)x2.0, shifted -2.0
+^..\ip a
+^\displaystyle
+^\mathbin
+^.\fam1 /
+^\textstyle
+_\fam0 -
+\overline
+.\mathord
+.^\fam1 A
+.\mathord
+..\fam1 A
+._\fam3 -
+.\mathinner
+..{}
+.^\mathord
+.^.\fam1 A
+.^\mathord
+.^.\fam1 A
+.^\mathord
+.^.\fam1 B
+.^_\accent\fam1 a
+.^_.\mathop
+.^_..\fam1 A
+.^_.\mathbin
+.^_..\fam1 A
+.^_.\mathopen
+.^_..\fam1 A
+.^_.\mathpunct
+.^_..\fam1 A
+.^_.\mathclose
+.^_..\fam1 A
+.^_.\mathrel
+.^_..\fam1 A
+.^_.\accent\fam1 a
+.^_..\mathord
+.^_...\fam13 A
+.^_..\mathord
+.^_...\fam13 9
+\mathop
+.\fam1 B
+^\fam1 C
+\mathop\limits
+.\fam1 b
+_\fam1 C
+\mathord
+.\radical"161
+..\textstyle
+..\radical"282382
+...\mathinner
+....\left"162362
+....\scriptscriptstyle
+....\mathop\nolimits
+.....\underline
+......\fraction, thickness 0.0
+......\\mathord
+......\.\fam1 A
+....../\displaystyle
+....../\mathord
+....../.\fam1 A
+....../^\fam2 -
+....../_\fraction, thickness = default
+....../_\\mathord
+....../_\.\fam1 A
+....../_\\glue 0.0 plus 1.0fil
+....../_/\mathord
+....../_/.\fam1 B
+....../_/\glue(\nonscript)
+....../_/\kern 1.0
+....^\fam1 b
+...._\fraction, thickness 2.0, left-delimiter "162362
+...._\\mathop
+...._\.\fam3
+...._\\glue(\nonscript)
+...._\\textstyle
+...._\\glue(\nonscript)
+...._\\glue(\mskip) 9.0mu minus 1.0fil
+...._\\mathord
+...._\.\fam1 B
+...._/{}
+....\discretionary
+.....\kern-1.00002
+.....\ip -
+....|\smalltrip A
+....\right"161361
+...\mathord
+....\fam1 A
+### vertical mode entered at line 0
+### current page:
+\glue(\topskip) 7.3 plus 1.0fil
+\hbox(12.7+3.7)x17.0, glue set 0.17223fil, shifted 7.0
+.\glue(\leftskip) 3.0
+.\mathon, surrounded 1.1
+.\hbox(12.7+3.7)x4.80002
+..\hbox(0.0+0.0)x0.1, shifted -7.0
+..\hbox(12.7+3.7)x1.70001
+...\hbox(0.0+0.0)x0.1, shifted -7.0
+...\vbox(12.7+3.7)x1.5
+....\hbox(3.5+0.5)x1.5
+.....\smalltrip A
+....\kern1.2
+....\rule(1.0+0.0)x*
+....\kern6.2
+....\hbox(3.5+0.5)x1.5
+.....\smalltrip A
+...\hbox(0.0+0.0)x0.1, shifted -7.0
+..\hbox(8.0+2.0)x3.0, shifted -4.0
+...\ip b
+.\glue(\medmuskip) 0.55554 minus 0.83331
+.\ip /
+.\penalty -3333
+.\glue 0.27777
+.\glue(\medmuskip) 0.55554 minus 0.83331
+.\ip A
+.\kern1.0
+.\glue(\thickmuskip) -1.11108
+.\smalltrip -
+.\smalltrip -
+.\penalty -2222
+.\glue(\thickmuskip) -1.11108
+.\ip A
+.\glue(\medmuskip) 0.55554 minus 0.83331
+.\ip /
+.\penalty 1000
+.\glue(\medmuskip) 0.55554 minus 0.83331
+.\ip A
+.\kern1.0
+.\mathoff, surrounded 1.1
+.\penalty 10000
+.\glue(\parfillskip) 0.0
+.\glue(\rightskip) 0.0 plus 10.0fil minus 0.00002
+total height 21.7 plus 1.0fil plus -803.0fill
+ goal height 16383.99998
+prevdepth 3.7, prevgraf 8 lines
+
+! OK.
+\showlonglists ...99 \showlists
+ \pagegoal =10000pt}
+l.284 ...\penalty \showlonglists
+
+
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{math shift character $}
+! Missing } inserted.
+<inserted text>
+ }
+...
+l.285 $
+ \expandafter$\csname!\endcsname % end of hairy displ...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+{math shift character $}
+{display math mode: \expandafter}
+{\csname}
+Missing character: There is no v in font trip!
+{restoring \!=undefined}
+{restoring \fam=-1}
+! \textfont 0 is undefined (character 7).
+<to be read again>
+ \relax
+...
+l.285 ...fter$\csname!\endcsname
+ % end of hairy display, miss...
+Somewhere in the math formula just ended, you used the
+stated character from an undefined font family. For example,
+plain TeX doesn't allow \it or \sl in subscripts. Proceed,
+and I'll try to forget that I needed that character.
+
+! \textfont 0 is undefined (character ^^c8).
+<to be read again>
+ \relax
+...
+l.285 ...fter$\csname!\endcsname
+ % end of hairy display, miss...
+Somewhere in the math formula just ended, you used the
+stated character from an undefined font family. For example,
+plain TeX doesn't allow \it or \sl in subscripts. Proceed,
+and I'll try to forget that I needed that character.
+
+! \scriptfont 0 is undefined (character -).
+<to be read again>
+ \relax
+...
+l.285 ...fter$\csname!\endcsname
+ % end of hairy display, miss...
+Somewhere in the math formula just ended, you used the
+stated character from an undefined font family. For example,
+plain TeX doesn't allow \it or \sl in subscripts. Proceed,
+and I'll try to forget that I needed that character.
+
+! \scriptscriptfont 13 is undefined (character A).
+<to be read again>
+ \relax
+...
+l.285 ...fter$\csname!\endcsname
+ % end of hairy display, miss...
+Somewhere in the math formula just ended, you used the
+stated character from an undefined font family. For example,
+plain TeX doesn't allow \it or \sl in subscripts. Proceed,
+and I'll try to forget that I needed that character.
+
+! \scriptscriptfont 13 is undefined (character 9).
+<to be read again>
+ \relax
+...
+l.285 ...fter$\csname!\endcsname
+ % end of hairy display, miss...
+Somewhere in the math formula just ended, you used the
+stated character from an undefined font family. For example,
+plain TeX doesn't allow \it or \sl in subscripts. Proceed,
+and I'll try to forget that I needed that character.
+
+Missing character: There is no in font trip!
+
+Overfull \hbox (48.4746pt too wide) detected at line 285
+[][][] [] [] []|
+
+\hbox(68.26251+98.15005)x19.0, glue set - 1.0
+.\kern -2.49994
+.\vbox(6.0+-8.0)x0.0
+.etc.
+
+{restoring \penalty=\penalty}
+{restoring \displayindent=0.0pt}
+{restoring \displaywidth=0.0pt}
+{restoring \predisplaysize=0.0pt}
+{restoring \fam=0}
+{horizontal mode: \expandafter}
+{undefined}
+! Undefined control sequence.
+<recently read> \!
+
+l.285 ...fter$\csname!\endcsname
+ % end of hairy display, miss...
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+% t=21.7 plus 1.0fil plus -803.0fill g=10000.0 b=0 p=0 c=0#
+% t=262.41258 plus 80.0 plus 1.0fil plus -803.0fill g=10000.0 b=0 p=7 c=
+7
+% t=262.41258 plus 80.0 plus 1.0fil plus -803.0fill g=10000.0 b=0 p=-117
+9647 c=-1179647#
+\output->{\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999
+ \showboxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2
+\ifhbox 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \
+fi }
+{internal vertical mode: \tracingcommands}
+> -1179647.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+...
+l.285 ...fter$\csname!\endcsname
+ % end of hairy display, miss...
+
+
+Completed box being shipped out [-2.0.0.0.11.0.327680]
+\vbox(10000.0+2.0)x28.0, glue set 9737.58789fil
+.\glue(\topskip) 7.3 plus 1.0fil
+.\hbox(12.7+3.7)x17.0, glue set 0.17223fil, shifted 7.0
+..\glue(\leftskip) 3.0
+..\mathon, surrounded 1.1
+..\hbox(12.7+3.7)x4.80002
+...\hbox(0.0+0.0)x0.1, shifted -7.0
+...\hbox(12.7+3.7)x1.70001
+....\hbox(0.0+0.0)x0.1, shifted -7.0
+....\vbox(12.7+3.7)x1.5
+.....\hbox(3.5+0.5)x1.5
+......\smalltrip A
+.....\kern1.2
+.....\rule(1.0+0.0)x*
+.....\kern6.2
+.....\hbox(3.5+0.5)x1.5
+......\smalltrip A
+....\hbox(0.0+0.0)x0.1, shifted -7.0
+...\hbox(8.0+2.0)x3.0, shifted -4.0
+....\ip b
+..\glue(\medmuskip) 0.55554 minus 0.83331
+..\ip /
+..\penalty -3333
+..\glue 0.27777
+..\glue(\medmuskip) 0.55554 minus 0.83331
+..\ip A
+..\kern1.0
+..\glue(\thickmuskip) -1.11108
+..\smalltrip -
+..\smalltrip -
+..\penalty -2222
+..\glue(\thickmuskip) -1.11108
+..\ip A
+..\glue(\medmuskip) 0.55554 minus 0.83331
+..\ip /
+..\penalty 1000
+..\glue(\medmuskip) 0.55554 minus 0.83331
+..\ip A
+..\kern1.0
+..\mathoff, surrounded 1.1
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0 plus 10.0fil minus 0.00002
+.\penalty 0
+.\glue(\abovedisplayskip) 3.0
+.\glue(\lineskip) 0.0 plus 40.0
+.\hbox(68.26251+98.15005)x19.0, glue set - 1.0, shifted 9.0
+..\kern -2.49994
+..\vbox(6.0+-8.0)x0.0
+..\vbox(17.1+4.2)x5.99
+...\kern17.1
+...\hbox(0.0+0.0)x0.0, shifted 8.5
+....\bigtr
+p -
+...\kern-17.1
+...\hbox(17.1+4.2)x5.99
+....\ip A
+....\vbox(21.3+0.0)x3.99, shifted 4.2
+.....\hbox(9.0+0.0)x2.99, shifted 1.0
+......\hbox(7.0+1.0)x2.0, shifted -2.0
+.......\ip a
+......\ip /
+.....\kern12.3
+.....\hbox(0.0+0.0)x-0.01
+..\vbox(25.76251+4.1)x15.0156
+...\kern1.0
+...\rule(1.0+0.0)x*
+...\kern3.0
+...\hbox(20.76251+4.1)x15.0156
+....\hbox(3.5+0.5)x1.49, shifted -8.3
+.....\smalltrip A
+....\ip A
+....\hbox(0.0+0.0)x-5.01, shifted 4.1
+.....\ip -
+....\glue(\thinmuskip) 0.27777 plus 2.0fill minus 0.83331
+....\hbox(0.0+0.0)x0.0
+....\hbox(4.0+16.20003)x16.25781, shifted -16.76251
+.....\smalltrip A
+.....\kern0.5
+.....\kern1.0
+.....\smalltrip B
+.....\vbox(16.00002+2.0)x12.2678, shifted 14.20003
+......\kern8.99998
+......\hbox(0.0+0.0)x0.0, shifted 2.1389
+.......\bigtr
+p ^^82
+......\kern-8.99998
+......\hbox(16.00002+2.0)x12.2778
+.......\hbox(14.00002+2.0)x6.00002, shifted -0.99998
+........\bigtr
+p A
+.......\glue(\thinmuskip) 0.27777 plus 2.0fill minus 0.83331
+.......\bigtr
+p A
+.......\kern2.0
+.......\vbox(16.00002+0.0)x0.0
+........\hbox(14.00002+2.0)x0.0, shifted -3.0
+.........\bigtr
+p a
+........\kern0.0
+........\hbox(0.0+0.0)x0.0
+..\glue(\thinmuskip) 0.27777 plus 2.0fill minus 0.83331
+..\vbox(28.0+0.0)x3.0
+...\kern10.0
+...\hbox(0.0+0.0)x3.0, glue set 0.5fil
+....\glue 0.0 plus 1.0fil minus 1.0fil
+....\smalltrip C
+....\glue 0.0 plus 1.0fil minus 1.0fil
+...\kern6.0
+...\hbox(12.0+0.0)x3.0
+....\hbox(8.0+2.0)x3.0, shifted -4.0
+.....\ip B
+..\glue(\thinmuskip) 0.27777 plus 2.0fill minus 0.83331
+..\vbox(7.0+18.0)x8.0
+...\hbox(7.0+0.0)x8.0
+....\hbox(0.0+0.0)x8.0, shifted -7.0
+.....\ip M
+...\kern8.0
+...\hbox(0.0+0.0)x8.0, glue set 3.0fil, shifted -1.0
+....\glue 0.0 plus 1.0fil minus 1.0fil
+....\smalltrip C
+....\glue 0.0 plus 1.0fil minus 1.0fil
+...\kern10.0
+..\glue(\thinmuskip) 0.27777 plus 2.0fill minus 0.83331
+..\hbox(68.26251+98.15005)x39.63556
+...\hbox(68.26251+98.15005)x39.63556
+....\hbox(7.0+1.0)x3.0, shifted -54.26251
+.....\ip a
+....\vbox(68.26251+98.15005)x36.63556
+.....\kern7.0
+.....\rule(7.0+0.0)x*
+.....\kern1.56248
+.....\hbox(52.70003+98.15005)x36.63556
+......\hbox(0.0+0.0)x0.1, shifted -52.70003
+......\vbox(52.70003+98.15005)x36.53555
+.......\kern0.0
+.......\rule(0.0+0.0)x*
+.......\kern1.25
+.......\hbox(51.45003+98.15005)x36.53555
+........\hbox(51.45003+98.15005)x33.25778
+.........\vbox(-1.00002+22.99995)x7.0, shifted -18.99998
+..........\hbox(-1.00002+2.0)x7.0
+...........\ip
+
+..........\hbox(-1.00002+2.0)x7.0
+...........\ip
+
+..........\hbox(7.0+1.0)x3.0
+...........\ip A
+..........\hbox(-1.00002+2.0)x7.0
+...........\ip
+
+..........\hbox(-1.00002+2.0)x7.0
+...........\ip
+
+..........\hbox(8.0+2.0)x3.0
+...........\ip B
+.........\hbox(35.75003+94.55006)x8.39005
+..........\vbox(35.75003+94.55006)x8.39005
+...........\hbox(35.75003+49.05003)x8.39005
+............\hbox(0.0+0.0)x0.1, shifted -7.0
+............\vbox(35.75003+49.05003)x8.19003
+.............\hbox(14.00002+2.0)x8.19003, glue set 1.09502fil
+..............\glue 0.0 plus 1.0fil minus 1.0fil
+..............\bigtr
+p A
+..............\kern2.0
+..............\glue 0.0 plus 1.0fil minus 1.0fil
+.............\kern27.30002
+.............\hbox(8.1+33.40002)x8.19003
+..............\ip A
+..............\vbox(27.75002+13.75002)x6.19003, shifted 19.65001
+...............\hbox(0.0+0.0)x-2.51, shifted 1.0
+................\smalltrip -
+...............\kern4.0
+...............\hbox(23.75002+13.75002)x6.19003
+................\hbox(0.0+0.0)x0.1, shifted -7.0
+................\vbox(23.75002+13.75002)x6.00002
+.................\hbox(14.00002+2.0)x6.00002
+..................\bigtr
+p A
+..................\kern2.0
+..................\glue 0.0 plus 1.0fil
+.................\kern0.5
+.................\rule(0.5+0.0)x*
+.................\kern0.5
+.................\hbox(16.0+4.00002)x6.00002, glue set 0.00002fil
+..................\glue 0.0 plus 1.0fil minus 1.0fil
+..................\bigtr
+p B
+..................\glue(\nonscript)
+..................\glue 0.0 plus 1.0fil minus 1.0fil
+................\hbox(0.0+0.0)x0.1, shifted -7.0
+............\hbox(0.0+0.0)x0.1, shifted -7.0
+...........\kern27.30002
+...........\rule(9.1+0.0)x*
+.........\vbox(146.40009+3.2)x11.86772, shifted 94.95006
+..........\hbox(16.0+4.00002)x5.99
+...........\bigtr
+p b
+..........\kern106.40007
+..........\hbox(20.0+3.2)x11.86772
+...........\hbox(16.0+4.00002)x6.0, shifted -1.0
+............\bigtr
+p b
+...........\vbox(20.0+3.2)x5.77771
+............\hbox(8.0+2.0)x5.77771
+.............\hbox(0.0+0.0)x0.0, shifted -7.0
+.............\glue(\nonscript)
+.............\glue(\nonscript)
+.............\glue 2.49994 minus 1.0fil
+.............\glue(\thinmuskip) 0.27777 plus 2.0fill minus 0.83331
+.............\ip B
+............\kern2.0
+............\rule(2.0+0.0)x*
+............\kern9.2
+............\hbox(0.0+0.0)x5.77771
+...........\hbox(0.0+0.0)x0.1, shifted -7.0
+.........\discretionary
+..........\kern-1.00002
+..........\ip -
+.........|\smalltrip A
+.........\hbox(14.00002+2.0)x6.00002, shifted -0.99998
+..........\bigtr
+p a
+........\glue(\thinmuskip) 0.27777 plus 2.0fill minus 0.83331
+........\ip A
+........\kern1.0
+..\rule(*+*)x5.0
+.\penalty 10000
+.\glue(\lineskip) 0.0 plus 40.0
+.\hbox(20.5+50.80002)x8.27895, shifted 19.72105
+..\ip -
+..\smalltrip b
+..\hbox(3.5+0.5)x1.5
+...\smalltrip A
+...\kern0.5
+..\vbox(26.0+4.00002)x1.99, shifted 10.8
+...\hbox(7.0+1.0)x1.99
+....\ip A
+...\kern2.0
+...\hbox(16.0+4.00002)x0.99
+....\bigtr
+p B
+....\ip -
+..\hbox(20.5+50.80002)x8.28894
+...\hbox(20.5+50.80002)x8.28894
+....\hbox(0.0+0.0)x0.1, shifted -7.0
+....\vbox(20.5+50.80002)x8.08893
+.....\hbox(0.0+0.0)x8.08893
+.....\kern9.0
+.....\rule(9.0+0.0)x*
+.....\kern9.0
+.....\hbox(20.65001+23.65001)x8.08893
+......\hbox(20.65001+23.65001)x8.08893
+.......\hbox(20.65001+23.65001)x8.08893
+........\hbox(0.0+0.0)x0.1, shifted -7.0
+........\vbox(20.65001+23.65001)x7.88892
+.........\hbox(0.0+0.0)x7.88892
+.........\kern9.1
+.........\rule(9.1+0.0)x*
+.........\kern9.1
+.........\hbox(12.0+5.0)x7.88892
+..........\hbox(12.0+5.0)x7.88892
+...........\hbox(8.0+2.0)x3.0, shifted -4.0
+............\ip b
+...........\vbox(11.0+5.0)x1.88892
+............\hbox(0.0+0.0)x1.88892
+.............\ip p
+.............\ip t
+.............\ip s
+.............\ip q
+.............\ip t
+.............\kern3.0
+.............\ip q
+.............\ip p
+.............\glue(\thickmuskip) -1.11108
+.............\ip u
+............\kern7.0
+............\hbox(9.0+0.0)x1.88892, glue set 0.74446fil
+.............\glue 0.0 plus 1.0fil minus 1.0fil
+.............\rule(9.0+*)x0.4
+.............\glue 0.0 plus 1.0fil minus 1.0fil
+...........\hbox(8.0+2.0)x3.0, shifted -4.0
+............\ip b
+........\hbox(0.0+0.0)x0.1, shifted -7.0
+......\hbox(0.0+0.0)x0.0
+....\hbox(0.0+0.0)x0.1, shifted -7.0
+.\penalty 7
+
+Memory usage before: 2170&521; after: 1181&459; still untouched: 175
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{restoring \parshape=10}
+{restoring \hangafter=-12}
+{restoring \hangindent=-10.0pt}
+{restoring \looseness=-2}
+{horizontal mode: \relax}
+{\parshape}
+{\leftskip}
+{\spacefactor}
+{\raise}
+{restricted horizontal mode: \special}
+{blank space }
+{end-group character }}
+{horizontal mode: blank space }
+{\penalty}
+{\showbox}
+> \box0=
+\vbox(0.0+0.0)x0.0
+.\penalty 999
+
+! OK.
+<to be read again>
+ \spacefactor
+l.289 \showbox0\spacefactor
+ =0
+
+{\spacefactor}
+! Bad space factor (0).
+l.289 \showbox0\spacefactor=0
+
+I allow only values in the range 1..32767 here.
+
+{\write}
+{\par}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 12.0 t=100000782 -> @@0
+@\penalty via @@0 b=10000 p=-10000 d=100000782
+@@2: line 12.0 t=100000782 -> @@0
+@\penalty via @@1 b=10000 p=-10000 d=100000000
+@@3: line 13.0 t=200000782 -> @@1
+[]
+@\par via @@2 b=10000 p=-10000 d=100000000
+@@4: line 13.0- t=200000782 -> @@2
+@\par via @@3 b=10000 p=-10000 d=100000000
+@@5: line 14.0- t=300000782 -> @@3
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 285--290
+ []
+
+\hbox(1.0+0.0)x90.0, glue set 41.0
+.\glue(\leftskip) 0.0 plus -10.0fil
+.\hbox(0.0+0.0)x4.0, shifted -1.0 []
+.etc.
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 285--290
+ []
+
+\hbox(0.0+0.0)x100.0
+.\glue(\leftskip) 0.0 plus -10.0fil
+.\write10{\the \spacefactor }
+.etc.
+
+%% goal height=16383.99998, max depth=2.0
+% t=20.0 plus 1.0fil g=16383.99998 b=0 p=125 c=125#
+{vertical mode: end-group character }}
+! Extra }, or forgotten \endgroup.
+l.291 }
+ % this fails to match \begingroup
+I've deleted a group-closing symbol because it seems to be
+spurious, as in `$x}$'. But perhaps the } is legitimate and
+you forgot something else, as in `\hbox{$x}'. In such cases
+the way to recover is to insert both the forgotten and the
+deleted material, e.g., by typing `I$}'.
+
+{blank space }
+{\aftergroup}
+{\aftergroup}
+{\endgroup}
+{restoring \hangafter=-12}
+{restoring \hangindent=-10.0pt}
+{restoring \leftskip=3.0pt}
+{restoring \parshape=10}
+{restoring \rightskip=0.0pt}
+{restoring \looseness=0}
+{\lccode}
+{\mark}
+! Improper \spacefactor.
+l.293 \mark{\the\spacefactor
+ } % \spacefactor: not in vertical...
+You can refer to \spacefactor only in horizontal mode;
+you can refer to \prevdepth only in vertical mode; and
+neither of these is meaningful inside \write. So
+I'm forgetting what you said and using zero instead.
+
+{blank space }
+{math shift character $}
+% t=30.0 plus 41.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{horizontal mode: math shift character $}
+@firstpass
+@secondpass
+[]
+@\par via @@0 b=10000 p=-10000 d=*
+@@1: line 1.0- t=0 -> @@0
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 294--294
+ []
+
+\hbox(0.0+0.0)x11.0
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{display math mode: \global}
+{\mskip}
+{\catcode}
+{\catcode}
+{\the}
+{\def}
+{blank space }
+{\vtop}
+{internal vertical mode: \everydisplay}
+{\vbox}
+{end-group character }}
+{\noindent}
+{horizontal mode: math shift character $}
+\everydisplay->\global
+{display math mode: \global}
+{\lowercase}
+{the letter a}
+{the letter a}
+
+j->\relax
+{\relax}
+{math shift character $}
+{internal vertical mode: \ifvmode}
+{true}
+{restoring \displayindent=3.0pt}
+{restoring \displaywidth=13.0pt}
+{restoring \predisplaysize=24.0pt}
+{restoring \fam=-1}
+{horizontal mode: \fi}
+{end-group character }}
+{restoring \everydisplay=}
+{restoring \parshape=10}
+{restoring \hangafter=-12}
+{restoring \hangindent=-10.0pt}
+{display math mode: \hss}
+{\leqno}
+{math mode: \mathchardef}
+! Missing control sequence inserted.
+<inserted text>
+ \inaccessible
+...
+l.298 \leqno\mathchardef A
+ \/\left(\over\left(\global\errorcon...
+Please don't say `\def cs{...}', say `\def\cs{...}'.
+I've inserted an inaccessible control sequence so that your
+definition will be completed without mixing me up too badly.
+You can recover graciously from this error, if you're
+careful; see exercise 27.2 in The TeXbook.
+
+! Missing number, treated as zero.
+<to be read again>
+ A
+l.298 \leqno\mathchardef A
+ \/\left(\over\left(\global\errorcon...
+A number should have been here; I inserted `0'.
+(If you can't figure out why I needed to see a number,
+look up `weird error' in the index to The TeXbook.)
+
+{the letter A}
+{\/}
+{\left}
+
+(->\delimiter "4162362
+{\over}
+{\left}
+
+(->\delimiter "4162362
+{\global}
+{math shift character $}
+! Missing \right. inserted.
+<inserted text>
+ \right .
+<to be read again>
+ $
+l.298 ...bal\errorcontextlines5$
+ $
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{\right}
+{math shift character $}
+! Missing \right. inserted.
+<inserted text>
+ \right .
+<to be read again>
+ $
+l.298 ...bal\errorcontextlines5$
+ $
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{\right}
+{math shift character $}
+{restoring \inaccessible=undefined}
+{restoring \fam=-1}
+{restoring j=undefined}
+{restoring \catcode106=11}
+{restoring \catcode74=11}
+{restoring \displayindent=0.0pt}
+{restoring \displaywidth=0.0pt}
+{restoring \predisplaysize=0.0pt}
+{restoring \fam=0}
+% t=40.0 plus 124.0 plus 1.0fil minus 8.0 g=16383.99998 b=0 p=0 c=0#
+% t=66.00002 plus 164.0 plus 1.0fil minus 8.0 g=16383.99998 b=0 p=-11796
+47 c=-1179647#
+\output->{\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999
+ \showboxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2
+\ifhbox 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \
+fi }
+{internal vertical mode: \tracingcommands}
+> -1179647.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+l.298 ...al\errorcontextlines5$$
+
+
+
+Completed box being shipped out [-2.0.0.0.11.0.327680.1572864.0.-1073741
+823]
+\vbox(16383.99998+2.0)x100.0, glue set 16318.0fil
+.\glue(\topskip) 19.0 plus 1.0fil
+.\hbox(1.0+0.0)x90.0, glue set 41.0
+..\glue(\leftskip) 0.0 plus -10.0fil
+..\hbox(0.0+0.0)x4.0, shifted -1.0
+...\special{-12}
+...\glue 4.0 plus 2.0 minus 1.0
+..\glue 4.0 plus 2.0 minus 1.0
+..\penalty -10000
+..\glue(\rightskip) 0.0 plus 10.0fil minus 0.00002
+.\penalty 125
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+0.0)x100.0
+..\glue(\leftskip) 0.0 plus -10.0fil
+..\write10{\the \spacefactor }
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0 plus 10.0fil minus 0.00002
+.\mark{0}
+.\glue(\parskip) 0.0 plus 42.0 minus 8.0
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+0.0)x11.0, shifted 1.0
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\penalty 10000
+..\glue(\parfillskip) 0.0
+..\glue(\rightskip) 0.0
+.\penalty 0
+.\glue(\abovedisplayskip) 3.0
+.\glue(\lineskip) 0.0 plus 40.0
+.\hbox(12.0+13.00002)x13.0, shifted 3.0
+..\hbox(12.0+4.0)x8.1778
+...\ip A
+...\kern1.0
+...\kern0.0
+...\glue(\thinmuskip) 0.27777 plus 2.0fill minus 0.83331
+...\hbox(12.0+4.0)x4.90002
+....\hbox(8.0+2.0)x3.0, shifted -4.0
+.....\ip b
+....\hbox(9.2+4.0)x1.80002
+.....\hbox(0.0+0.0)x0.1, shifted -7.0
+.....\vbox(9.2+4.0)x1.6
+......\hbox(0.0+0.0)x1.6
+......\kern1.7
+......\rule(1.0+0.0)x*
+......\kern1.0
+......\hbox(9.5+0.0)x1.6
+.......\hbox(4.0+1.0)x1.5, shifted -5.5
+........\smalltrip b
+.......\hbox(0.0+0.0)x0.1, shifted -7.0
+.....\hbox(0.0+0.0)x0.1, shifted -7.0
+....\hbox(0.0+0.0)x0.1, shifted -7.0
+..\kern5.0
+..\hbox(0.0+13.00002)x-0.1778, glue set - 57.67767fil
+...\glue 4.99988 minus 4.99988
+...\vbox(-0.00002+13.00002)x52.5, glue set - 0.00247
+....\vbox(-0.00002+0.0)x0.0
+....\glue(\parskip) 0.0 plus 42.0 minus 8.0
+....\penalty 0
+....\glue(\abovedisplayshortskip) 1.0 plus 45.0 minus 803.0
+....\glue(\baselineskip) 3.0 plus 41.0
+....\hbox(7.0+1.0)x5.0, shifted 47.5
+.....\ip a
+.....\ip a
+.....\kern1.0
+....\penalty -1179647
+....\glue(\belowdisplayshortskip) 3.0 plus 46.0
+...\glue 0.0 plus 1.0fil minus 1.0fil
+
+\write->\the \spacefactor
+! Improper \spacefactor.
+<write> \the \spacefactor
+
+<inserted text>
+ }\endwrite
+<to be read again>
+ }
+<output> ...\fi 54\copy 25\fi 4}
+ \ifvoid 254\relax \else \err...
+l.298 ...al\errorcontextlines5$$
+
+You can refer to \spacefactor only in horizontal mode;
+you can refer to \prevdepth only in vertical mode; and
+neither of these is meaningful inside \write. So
+I'm forgetting what you said and using zero instead.
+
+0
+Memory usage before: 640&415; after: 397&410; still untouched: 175
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{restoring \parshape=10}
+{restoring \hangafter=-12}
+{restoring \hangindent=-10.0pt}
+{horizontal mode: \par}
+{vertical mode: \hangindent}
+{\par}
+{\showthe}
+> 0.0pt.
+l.300 ...\par\showthe\hangindent
+ \hangindent 254cm
+
+{\hangindent}
+{\parfillskip}
+{\fontdimen}
+{\the}
+{\the}
+{the character 0}
+{horizontal mode: the character 0}
+Missing character: There is no 0 in font trip!
+{the letter A}
+{blank space }
+{\char}
+{math shift character $}
+@firstpass
+@secondpass
+[]\ip A
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+^^82
+@\par via @@0 b=62 p=-10000 d=3969
+@@2: line 1.1- t=3969 -> @@0
+
+
+Loose \hbox (badness 62) in paragraph at lines 302--303
+ []\ip A ^^82
+
+\hbox(7.0+1.0)x100.0, glue set 0.85295
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+%% goal height=16383.99998, max depth=2.0
+{display math mode: \global}
+{\leqno}
+{math mode: \kern}
+{math shift character $}
+! Display math should end with $$.
+<to be read again>
+ \par
+l.303 ...e\leqno\kern1009pt$\par
+
+The `$' that I just saw supposedly matches a previous `$$'.
+So I shall assume that you typed `$$' both times.
+
+{restoring \fam=-1}
+{restoring \displayindent=0.0pt}
+{restoring \displaywidth=0.0pt}
+{restoring \predisplaysize=0.0pt}
+{restoring \fam=0}
+% t=20.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+% t=40.0 plus 82.0 plus 1.0fil g=16383.99998 b=0 p=-1179647 c=-1179647#
+\output->{\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999
+ \showboxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2
+\ifhbox 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \
+fi }
+{internal vertical mode: \tracingcommands}
+> -1179647.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+<to be read again>
+ \par
+l.303 ...e\leqno\kern1009pt$\par
+
+
+
+Completed box being shipped out [-2.0.0.0.11.0.327680.1572864.1073741823
+.-1073741823]
+\vbox(16383.99998+0.0)x8236.0, glue set 16344.0fil
+.\glue(\topskip) 13.0 plus 1.0fil
+.\hbox(7.0+1.0)x100.0, glue set 0.85295
+..\glue(\leftskip) 3.0
+..\hbox(0.0+0.0)x0.0
+..\ip A
+..\glue 4.0 plus 1.99799 minus 1.00099
+..\ip ^^82
+..\penalty 10000
+..\glue(\parfillskip) 0.0 plus 100.0
+..\glue(\rightskip) 0.0
+.\penalty 0
+.\glue(\baselineskip) 9.0 plus 41.0
+.\hbox(0.0+0.0)x1009.0, shifted 7227.0
+..\kern 1009.0
+.\penalty 10000
+.\glue(\baselineskip) 10.0 plus 41.0
+.\hbox(0.0+0.0)x-7127.0, shifted 7227.0
+
+Memory usage before: 235&401; after: 178&399; still untouched: 175
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{restoring \hangindent=7227.0pt}
+{horizontal mode: \par}
+{vertical mode: \showlists}
+
+### vertical mode entered at line 0
+prevdepth 0.0, prevgraf 4 lines
+
+! OK.
+l.304 \showlists
+ {\catcode`!13\global\everyhbox{\def!{}}}
+
+{begin-group character {}
+{\catcode}
+{\global}
+{end-group character }}
+{restoring \catcode33=12}
+{blank space }
+{\count}
+{\baselineskip}
+{begin-group character {}
+{\sfcode}
+{\vfuzz}
+{\everyvbox}
+{\vbox}
+\everyvbox->
+{internal vertical mode: blank space }
+{\hsize}
+{\tolerance}
+{the letter A}
+{horizontal mode: the letter A}
+{blank space }
+{the letter A}
+{blank space }
+{the letter A}
+{blank space }
+{the letter A}
+{blank space }
+{the letter A}
+{\clubpenalty}
+{\par}
+@firstpass
+@secondpass
+[]\ip A A A
+@ via @@0 b=* p=0 d=*
+@@1: line 1.3 t=0 -> @@0
+A A
+@\par via @@1 b=12 p=-10000 d=*
+@@2: line 2.2- t=0 -> @@1
+
+
+Overfull \hbox (3.0pt too wide) in paragraph at lines 308--308
+ []\ip A A A|
+
+\hbox(7.0+1.0)x10.0, glue set - 1.0
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+
+Tight \hbox (badness 12) in paragraph at lines 308--308
+ \ip A A
+
+\hbox(7.0+1.0)x10.0, glue set - 0.5
+.\glue(\leftskip) 3.0
+.\ip A
+.etc.
+
+{internal vertical mode: \hbadness}
+{\hfuzz}
+{the letter A}
+{horizontal mode: the letter A}
+{blank space }
+{the letter A}
+{blank space }
+{the letter A}
+{blank space }
+{the letter A}
+{blank space }
+{the letter A}
+{\leaders}
+{\par}
+@firstpass
+@secondpass
+[]\ip A A A
+@ via @@0 b=* p=0 d=*
+@@1: line 1.3 t=0 -> @@0
+A A
+@\par via @@1 b=12 p=-10000 d=*
+@@2: line 2.2- t=0 -> @@1
+
+{internal vertical mode: end-group character }}
+{restoring \hfuzz=0.0pt}
+{restoring \hbadness=0}
+{restoring \clubpenalty=125}
+{restoring \tolerance=10000}
+{restoring \hsize=100.0pt}
+
+Overfull \vbox (18.0pt too high) detected at line 309
+
+\vbox(11.0+1.0)x10.0, glue set - 1.0
+.\hbox(7.0+1.0)x10.0, glue set - 1.0 []
+.\penalty 10000
+.etc.
+
+%% goal height=16383.99998, max depth=2.0
+{vertical mode: blank space }
+{\message}
+1000000
+{end-group character }}
+{restoring \everyvbox=}
+{restoring \vfuzz=0.0pt}
+{restoring \sfcode65=999}
+{blank space }
+{\vbox}
+{internal vertical mode: \hbadness}
+{\hfuzz}
+{\hbox}
+\everyhbox->\def !{}
+{restricted horizontal mode: \def}
+{\hskip}
+{end-group character }}
+{restoring !=undefined}
+
+Overfull \hbox (1.0pt too wide) detected at line 311
+
+
+\hbox(0.0+0.0)x0.0, glue set - 1.0
+.\glue 10.0 minus 9.0
+
+{internal vertical mode: blank space }
+{\hbadness}
+{\hbox}
+\everyhbox->\def !{}
+{restricted horizontal mode: \def}
+{\hskip}
+{end-group character }}
+{restoring !=undefined}
+
+Underfull \hbox (badness 101) detected at line 312
+
+
+\hbox(0.0+0.0)x10.03749, glue set 1.00375
+.\glue 0.0 plus 10.0
+
+{internal vertical mode: \tracingcommands}
+{\message}
+101
+{end-group character }}
+{restoring \tracingcommands=2}
+{restoring \hfuzz=0.0pt}
+{restoring \hbadness=0}
+% t=20.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{vertical mode: \lineskiplimit}
+{\everyhbox}
+{blank space }
+{\def}
+{blank space }
+{\dimendef}
+{\dimen}
+{\vbox}
+{internal vertical mode: \tracinglostchars}
+{the letter A}
+{horizontal mode: the letter A}
+{\/}
+
+\space ->
+{blank space }
+
+\space ->
+{blank space }
+{\ignorespaces}
+
+\space ->
+
+\space ->
+{the letter J}
+{blank space }
+{\vskip}
+{\par}
+@firstpass
+@secondpass
+[]\ip A
+@\kern via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+
+@\par via @@0 b=56 p=-10000 d=3249
+@\par via @@1 b=10000 p=-10000 d=100000000
+@@2: line 1.1- t=3249 -> @@0
+
+
+Loose \hbox (badness 56) in paragraph at lines 315--316
+ []\ip A
+
+\hbox(7.0+1.0)x100.0, glue set 0.82695
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{internal vertical mode: \vskip}
+{\moveleft}
+{\boxmaxdepth}
+{\mark}
+{end-group character }}
+{restoring \boxmaxdepth=1000.0pt}
+
+Underfull \vbox (badness 10000) detected at line 316
+
+\vbox(10.0+-1.0)x0.0
+.\mark{vii}
+
+{\vskip}
+{\unskip}
+{\setbox}
+{\showthe}
+> -1.0pt.
+l.317 ...astbox\showthe\lastskip
+ % \lastskip=-1pt (\baselines...
+
+{\unskip}
+{\vskip}
+{\kern}
+{\penalty}
+{\showbox}
+> \box22=
+\vbox(10.0+-1.0)x0.0
+.\mark{vii}
+
+! OK.
+<to be read again>
+ }
+l.318 ...lty\lastkern\showbox22}
+
+
+{end-group character }}
+{restoring \box22=void}
+{restoring \tracinglostchars=2}
+
+Underfull \vbox (badness 10000) detected at line 318
+
+\vbox(11.0+0.0)x100.0
+.\hbox(7.0+1.0)x100.0, glue set 0.82695 []
+.\glue 2.0
+.etc.
+
+% t=31.0 plus 40.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{vertical mode: blank space }
+{\showbox}
+> \box22=void
+
+! OK.
+<to be read again>
+ \kern
+l.319 \showbox22\kern
+ 3pt\message{\the\lastkern}\unkern
+
+{\kern}
+{\message}
+3.0pt
+{\unkern}
+{\show}
+> \botmark=\botmark:
+0.
+l.320 \show\botmark
+ \catcode`;13\def;{\setbox`; }
+
+{\catcode}
+{\def}
+{blank space }
+{\lineskiplimit}
+
+\space ->
+
+\space ->
+{blank space }
+{\count}
+{\vbox}
+
+\space ->
+{internal vertical mode: \accent}
+{horizontal mode: \accent}
+Missing character: There is no ^^c8 in font trip!
+
+\space ->
+{blank space }
+{\accent}
+
+\space ->
+
+;->\setbox `;
+! Improper \setbox.
+<to be read again>
+ \char
+l.322 ...2 \def\^^M{\ } ; \char
+ '101
+Sorry, \setbox is not allowed after \halign in a display,
+or between \accent and an accented character.
+
+{the letter A}
+{\ }
+{\fontdimen}
+{\ }
+{\spaceskip}
+
+\^^M->\
+{\ }
+{\vskip}
+{\par}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+[]\ip AA
+@ via @@0 b=10000 p=0 d=100000782
+@ via @@1 b=10000 p=0 d=100000000
+@@2: line 1.0 t=100000782 -> @@0
+
+@\par via @@0 b=44 p=-10000 d=2025
+@\par via @@1 b=54 p=-10000 d=3025
+@\par via @@2 b=10000 p=-10000 d=100000000
+@@3: line 1.1- t=2025 -> @@0
+
+
+Loose \hbox (badness 44) in paragraph at lines 322--324
+ [] []\ip AA
+
+\hbox(10.50002+1.0)x100.0, glue set 0.76414
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{internal vertical mode: \vskip}
+{end-group character }}
+{restoring \spaceskip=0.0pt}
+{restoring \^^M=undefined}
+
+Overfull \vbox (0.50002pt too high) detected at line 324
+
+\vbox(11.0+0.0)x100.0, glue set - 1.0
+.\hbox(10.50002+1.0)x100.0, glue set 0.76414 []
+.\glue 10.0 minus 10.0
+
+% t=41.0 plus 40.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{vertical mode: blank space }
+{\penalty}
+% t=52.0 plus 80.0 plus 1.0fil g=16383.99998 b=0 p=-2147483647 c=-214748
+3647#
+\output->{\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999
+ \showboxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2
+\ifhbox 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \
+fi }
+{internal vertical mode: \tracingcommands}
+> -2147483647.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+l.325 \penalty-2147483647
+ % that's the largest value TeX will...
+
+
+Completed box being shipped out [-2.0.0.0.11.196608.327680.1572864.10737
+41823]
+\vbox(16383.99998+0.0)x100.0, glue set 16332.0fil
+.\glue(\topskip) 9.0 plus 1.0fil
+.\vbox(11.0+1.0)x10.0, glue set - 1.0
+..\hbox(7.0+1.0)x10.0, glue set - 1.0
+...\glue(\leftskip) 3.0
+...\hbox(0.0+0.0)x0.0
+...\ip A
+...\glue 4.0 plus 1.0 minus 2.0
+...\ip A
+...\glue 4.0 plus 1.0 minus 2.0
+...\ip A
+...\glue(\rightskip) 0.0
+...\rule(*+*)x5.0
+..\penalty 10000
+..\glue(\baselineskip) 2.0
+..\hbox(7.0+1.0)x10.0, glue set - 0.5
+...\glue(\leftskip) 3.0
+...\ip A
+...\glue 4.0 plus 1.0 minus 2.0
+...\ip A
+...\penalty 10000
+...\glue(\parfillskip) 0.0 plus 100.0
+...\glue(\rightskip) 0.0
+..\glue(\parskip) 0.0 plus 42.0 minus 8.0
+..\glue(\baselineskip) 2.0
+..\hbox(7.0+1.0)x10.0, glue set - 1.0
+...\glue(\leftskip) 3.0
+...\hbox(0.0+0.0)x0.0
+...\ip A
+...\glue 4.0 plus 1.0 minus 2.0
+...\ip A
+...\glue 4.0 plus 1.0 minus 2.0
+...\ip A
+...\glue(\rightskip) 0.0
+..\penalty 10000
+..\glue(\baselineskip) 2.0
+..\hbox(7.0+1.0)x10.0, glue set - 0.5
+...\glue(\leftskip) 3.0
+...\ip A
+...\glue 4.0 plus 1.0 minus 2.0
+...\ip A
+...\penalty 10000
+...\glue(\parfillskip) 0.0 plus 100.0
+...\glue(\rightskip) 0.0
+.\glue(\lineskip) 0.0 plus 40.0
+.\vbox(10.0+0.0)x10.03749
+..\hbox(0.0+0.0)x0.0, glue set - 1.0
+...\glue 10.0 minus 9.0
+..\glue(\baselineskip) 10.0
+..\hbox(0.0+0.0)x10.03749, glue set 1.00375
+...\glue 0.0 plus 10.0
+.\glue(\baselineskip) -1.0
+.\vbox(11.0+0.0)x100.0
+..\hbox(7.0+1.0)x100.0, glue set 0.82695
+...\glue(\leftskip) 3.0
+...\hbox(0.0+0.0)x0.0
+...\ip A
+...\kern 1.0
+...\glue 4.0 plus 1.99799 minus 1.00099
+...\glue 4.0 plus 1.99799 minus 1.00099
+...\penalty 10000
+...\glue(\parfillskip) 0.0 plus 100.0
+...\glue(\rightskip) 0.0
+..\glue 2.0
+..\glue -2.0
+..\kern 0.0
+..\penalty 0
+.\glue(\lineskip) 0.0 plus 40.0
+.\vbox(11.0+0.0)x100.0, glue set - 1.0
+..\hbox(10.50002+1.0)x100.0, glue set 0.76414
+...\glue(\leftskip) 3.0
+...\hbox(0.0+0.0)x0.0
+...\glue 4.0 plus 2.0 minus 1.0
+...\kern -5.50003 (for accent)
+...\hbox(8.0+2.0)x3.0, shifted -2.50002
+....\ip B
+...\kern 2.50003 (for accent)
+...\ip A
+...\ip A
+...\glue 4.0 plus 2.0 minus 1.0
+...\glue 4.0 plus 2.0 minus 88.0
+...\penalty 10000
+...\glue(\parfillskip) 0.0 plus 100.0
+...\glue(\rightskip) 0.0
+..\glue 10.0 minus 10.0
+
+Memory usage before: 651&432; after: 417&418; still untouched: 175
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{vertical mode: \penalty}
+! Number too big.
+l.326 \penalty-2147483648
+ % see?
+I can only go up to 2147483647='17777777777="7FFFFFFF,
+so I'm using that number instead of yours.
+
+{\tabskip}
+{\let}
+{\count}
+{begin-group character {}
+{\errhelp}
+{\errmessage}
+! .
+l.328 ...l is lost}\errmessage{}
+ }
+all is lost
+
+{end-group character }}
+{restoring \errhelp=}
+{blank space }
+{\def}
+{blank space }
+{\looseness}
+{\setbox}
+{internal vertical mode: \vskip}
+{end-group character }}
+{restoring \looseness=-1}
+{vertical mode: blank space }
+{\halign}
+{internal vertical mode: \iftrue}
+{true}
+{\else}
+
+\d #1\d ->#1#1
+#1<-##
+! Only one # is allowed per tab.
+<argument> ##
+
+\d #1\d ->#1#1
+
+l.333 ...7200bp minus 4\wd4\d#\d
+ \cr % \d#\d becomes (erroneou...
+There should be exactly one # between &'s, when an
+\halign or \valign is being set up. In this case you had
+more than one, so I'm ignoring all but the first.
+
+{restricted horizontal mode: \global}
+{\spaceskip}
+{\def}
+{\def}
+{\expandafter}
+
+\A ->B
+
+\xx ->\global \gdef \A {\global \count \count 1=####\cr \omit \cr \tabsk
+ip }
+{\global}
+{the letter B}
+{end of alignment template}
+{\vbox}
+{internal vertical mode: \halign}
+
+\A ->\global \count \count 1=##\cr \omit \cr \tabskip
+{restricted horizontal mode: end of alignment template}
+{\global}
+{end of alignment template}
+{restoring \tabskip=4.49998pt plus 7227.0pt}
+{internal vertical mode: the letter A}
+{horizontal mode: the letter A}
+{end-group character }}
+@firstpass
+@secondpass
+[]\ip AA
+@\par via @@0 b=86 p=-10000 d=*
+@@1: line 1.1- t=0 -> @@0
+
+
+Loose \hbox (badness 86) in paragraph at lines 337--337
+ []\ip AA
+
+\hbox(7.0+1.0)x100.0, glue set 0.95
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{restoring \looseness=-1}
+{restricted horizontal mode: blank space }
+{end of alignment template}
+{restoring \xx=undefined}
+{retaining \A=macro:->\global \count \count 1=##\cr \ETC.}
+{restoring \spaceskip=0.0pt}
+{\valign}
+{internal vertical mode: the letter A}
+{horizontal mode: the letter A}
+Missing character: There is no } in font trip!
+{end of alignment template}
+@firstpass
+@secondpass
+[]\ip A
+@\par via @@0 b=86 p=-10000 d=*
+@@1: line 1.1- t=0 -> @@0
+
+
+Loose \hbox (badness 86) in paragraph at lines 337--337
+ []\ip A
+
+\hbox(7.0+1.0)x100.0, glue set 0.95
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{internal vertical mode: end of alignment template}
+{restoring \looseness=-1}
+{begin-group character {}
+{blank space }
+{end-group character }}
+{end of alignment template}
+{end of alignment template}
+{restoring \looseness=-1}
+
+Overfull \vbox (21.99997pt too high) in alignment at lines 337--337
+
+\vbox(-5.0+0.0)x0.0
+.\glue(\tabskip) 4.49998 plus 7227.0
+.\unsetbox(0.0+0.0)x0.0
+.etc.
+
+{restricted horizontal mode: end of alignment template}
+{\global}
+{\fontname}
+{\romannumeral}
+{blank space }
+{\lccode}
+
+\A ->\uppercase { \message {trip at 5.0pt\ip mix}\lowercase {vq}}
+{\uppercase}
+{blank space }
+{\message}
+TRIP AT 5.0PT\ip AIX
+{\lowercase}
+{the letter v}
+Missing character: There is no v in font trip!
+{the letter b}
+{blank space }
+{end of alignment template}
+{math shift character $}
+{math mode: math shift character $}
+{restoring \fam=0}
+{restricted horizontal mode: end of alignment template}
+
+\A ->\uppercase { \message {trip at 5.0pt\ip mix}\lowercase {vq}}
+{\hss}
+{\uppercase}
+{blank space }
+{\message}
+TRIP AT 5.0PT\ip AIX
+{\lowercase}
+{the letter v}
+Missing character: There is no v in font trip!
+{the letter b}
+{blank space }
+{end of alignment template}
+{restoring \lccode81=113}
+{\show}
+> \A=macro:
+->\uppercase { \message {trip at 5.0pt\ip mix}\lowercase {vq}} .
+<template> \A
+ \endtemplate
+l.340 ...\omit$$\span\A&\show\cr
+ \omit\cr
+
+{end of alignment template}
+{end of alignment template}
+{internal vertical mode: \global}
+{\errmessage}
+! \count 2=-1118806.
+<recently read> }
+
+l.341 ...ge{\count2=\the\count2}
+ }
+This error message was generated by an \errmessage
+command, so I can't give any explicit help.
+Pretend that you're Hercule Poirot: Examine all clues,
+and deduce the truth by order and method.
+
+{end-group character }}
+{restoring \looseness=-1}
+{restricted horizontal mode: \mark}
+{end of alignment template}
+{\mark}
+{end of alignment template}
+{restoring \tabskip=0.0154pt minus 3.21002pt}
+
+Tight \hbox (badness 12) in alignment at lines 331--342
+ [] [] [] []
+
+\hbox(0.0+0.0)x205.12613, glue set - 0.5
+.\glue(\tabskip) 0.0154 minus 3.21002
+.\unsetbox(0.0+0.0)x0.0
+.etc.
+
+%% goal height=16383.99998, max depth=2.0
+% t=20.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+% t=30.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+% t=40.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{vertical mode: blank space }
+{\errmessage}
+! \prevdepth =0.0pt.
+l.343 ...evdepth=\the\prevdepth}
+
+(That was another \errmessage.)
+
+{blank space }
+{\penalty}
+% t=40.0 plus 40.0 plus 1.0fil g=16383.99998 b=0 p=-88888 c=-88888#
+\output->{\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999
+ \showboxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2
+\ifhbox 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \
+fi }
+{internal vertical mode: \tracingcommands}
+> -88888.
+<output> ...wthe \outputpenalty
+ \showboxbreadth 9999 \showbox...
+l.344 \penalty-88888
+ % end alignment test, now miscellaneous ...
+
+
+Completed box being shipped out [-2.2.-1118806.0.11.196608.327680.157286
+4.1073741823]
+\vbox(16383.99998+0.0)x205.12613, glue set 16344.0fil
+.\glue(\topskip) 0.0 plus 1.0fil
+.\hbox(20.0+2.0)x205.12613, glue set - 0.5
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(20.0+2.0)x0.0, glue set - 1.0
+...\ip B
+...\vbox(20.0+1.0)x100.0
+....\hbox(0.0+0.0)x0.0, glue set 0.00174
+.....\glue(\tabskip) 4.49998 plus 7227.0
+.....\hbox(0.0+0.0)x0.0
+.....\glue(\tabskip) -17.07162
+....\glue(\baselineskip) 10.0
+....\hbox(0.0+0.0)x0.0, glue set 0.00174
+.....\glue(\tabskip) 4.49998 plus 7227.0
+.....\hbox(0.0+0.0)x0.0
+.....\glue(\tabskip) -17.07162
+....\glue(\parskip) 0.0 plus 42.0 minus 8.0
+....\glue(\baselineskip) 3.0
+....\hbox(7.0+1.0)x100.0, glue set 0.95
+.....\glue(\leftskip) 3.0
+.....\hbox(0.0+0.0)x0.0
+.....\ip A (ligature AA)
+.....\penalty 10000
+.....\glue(\parfillskip) 0.0 plus 100.0
+.....\glue(\rightskip) 0.0
+...\glue(\spaceskip) 4.0 minus 0.00002
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(0.0+0.0)x106.9846
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(20.0+2.0)x100.0
+...\vbox(-5.0+0.0)x100.0
+....\glue(\tabskip) 4.49998 plus 7227.0
+....\vbox(0.0+0.0)x100.0
+.....\hbox(7.0+1.0)x100.0, glue set 0.95
+......\glue(\leftskip) 3.0
+......\hbox(0.0+0.0)x0.0
+......\ip A
+......\penalty 10000
+......\glue(\parfillskip) 0.0 plus 100.0
+......\glue(\rightskip) 0.0
+....\glue(\tabskip) 0.0
+....\vbox(8.0+0.0)x0.0
+....\glue(\tabskip) 4.49998 plus 7227.0
+...\vbox(-5.0+0.0)x0.0
+....\glue(\tabskip) 4.49998 plus 7227.0
+....\vbox(0.0+0.0)x0.0
+....\glue(\tabskip) 0.0
+....\vbox(8.0+0.0)x0.0
+....\glue(\tabskip) 4.49998 plus 7227.0
+..\glue(\tabskip) 4.49998 plus 7227.0
+.\glue(\baselineskip) 0.0
+.\hbox(8.0+2.0)x205.12613, glue set - 0.5
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(8.0+2.0)x0.0, glue set 177.80537fil
+...\glue 4.0 plus 2.0 minus 88.0
+...\glue 4.0 plus 2.0 minus 88.0
+...\ip b
+...\glue 4.0 plus 2.0 minus 88.0
+...\mathon
+...\mathoff
+...\glue 0.0 plus 1.0fil minus 1.0fil
+...\glue 4.0 plus 2.0 minus 88.0
+...\ip b
+...\glue 4.0 plus 2.0 minus 88.0
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(0.0+0.0)x106.9846
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(0.0+0.0)x100.0
+..\glue(\tabskip) 4.49998 plus 7227.0
+..\hbox(8.0+2.0)x0.0
+..\glue(\tabskip) 0.0154 minus 3.21002
+.\glue(\baselineskip) 8.0
+.\hbox(0.0+0.0)x205.12613, glue set - 0.5
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(0.0+0.0)x0.0
+..\glue(\tabskip) 0.0154 minus 3.21002
+.\glue(\lineskip) 0.0 plus 40.0
+.\hbox(0.0+0.0)x205.12613, glue set - 0.5
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(0.0+0.0)x0.0
+..\glue(\tabskip) 0.0154 minus 3.21002
+..\hbox(0.0+0.0)x106.9846
+..\glue(\tabskip) 0.0154 minus 3.21002
+.\mark{a}
+.\mark{b}
+
+Memory usage before: 776&458; after: 464&452; still untouched: 175
+{restoring \box254=void}
+{restoring \hoffset=0.0pt}
+{restoring \showboxdepth=1}
+{restoring \showboxbreadth=2}
+{restoring \tracingcommands=2}
+{restoring \looseness=-1}
+{vertical mode: \newlinechar}
+{\global}
+!
+ou can't use a prefix with `\unskip'.
+<to be read again>
+ \unskip
+l.345 ...inechar`
+\global\unskip
+ \show^^
+\newlinechar\lastpena...
+I'll pretend you didn't say \long or \outer or \global.
+
+{\unskip}
+{\show}
+> the character ^^Y.
+l.345 ...
+\global\unskip\show^^
+
+ \newlinechar\lastpenalty\unpe...
+
+{\newlinechar}
+{\unpenalty}
+! You can't use `\unpenalty' in vertical mode.
+l.345 ...r\lastpenalty\unpenalty
+ \unkern
+Sorry...I usually can't take things from the current page.
+Perhaps you can make the output routine do it.
+
+{\unkern}
+! You can't use `\unkern' in vertical mode.
+l.345 ...enalty\unpenalty\unkern
+
+Sorry...I usually can't take things from the current page.
+Try `I\kern-\lastkern' instead.
+
+{\lastbox}
+! You can't use `\lastbox' in vertical mode.
+l.346 \lastbox
+ \penalty5\message{\the\lastpenalty\the\newlinec...
+Sorry...I usually can't take things from the current page.
+This \lastbox will therefore be void.
+
+{\penalty}
+{\message}
+510000
+{\textfont}
+! Bad number (16).
+<to be read again>
+ =
+l.346 ...ewlinechar}\textfont16=
+ \relax
+Since I expected to read a number between 0 and 15,
+I changed this one to zero.
+
+! Missing font identifier.
+<to be read again>
+ \relax
+l.346 ...char}\textfont16=\relax
+
+I was looking for a control sequence whose
+current meaning has been defined by \font.
+
+{\relax}
+{\outer}
+! Missing control sequence inserted.
+<inserted text>
+ \inaccessible
+<to be read again>
+ {
+l.347 \outer\def{
+ }?
+Please don't say `\def cs{...}', say `\def\cs{...}'.
+I've inserted an inaccessible control sequence so that your
+definition will be completed without mixing me up too badly.
+You can recover graciously from this error, if you're
+careful; see exercise 27.2 in The TeXbook.
+
+{the character ?}
+{horizontal mode: the character ?}
+Missing character: There is no ? in font trip!
+{blank space }
+{\dimen}
+{\showthe}
+> -16383.99998pt.
+l.348 ...77777sp\showthe\dimen5
+ % this should be OK
+
+{\dimen}
+! Dimension too large.
+<to be read again>
+ \showthe
+l.349 \dimen6=-'40000pt\showthe
+ \dimen6 % this should overflow
+I can't work with sizes bigger than about 19 feet.
+Continue and I'll use the largest value I can.
+
+{\showthe}
+> -16383.99998pt.
+l.349 ...40000pt\showthe\dimen6
+ % this should overflow
+
+{\dimen}
+{\showthe}
+> -8355.74998pt.
+l.350 ...\dimen5\showthe\dimen7
+ \multiply\dimen7 2\showthe\di...
+
+{\multiply}
+! Arithmetic overflow.
+<to be read again>
+ \showthe
+l.350 ...ltiply\dimen7 2\showthe
+ \dimen7
+I can't carry out that multiplication or division,
+since the result is out of range.
+
+{\showthe}
+> -8355.74998pt.
+l.350 ...dimen7 2\showthe\dimen7
+
+
+{undefined}
+! Undefined control sequence.
+l.351 \a^^@^^@a
+ @ % an undefined control sequence followed by ...
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+! Text line contains an invalid character.
+l.351 \a^^@^^@a@
+ % an undefined control sequence followed by ...
+A funny symbol that I can't read has just been input.
+Continue, and I'll forget that it ever happened.
+
+{begin-group character {}
+{\aftergroup}
+{\aftergroup}
+{\gdef}
+{blank space }
+{\def}
+{blank space }
+
+\b ->\c
+
+\c ->
+{end-group character }}
+{restoring \c=undefined}
+
+\gobble #1->
+#1<-\c
+{blank space }
+{\def}
+{blank space }
+{\outer}
+{\toks0}
+Runaway text?
+! Forbidden control sequence found while scanning text of \tokens.
+<inserted text>
+ }
+<to be read again>
+ \a^^@^^@a
+l.354 ...ar#2{}\tokens{\a^^@^^@a
+ \par!
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+
+\a^^@^^@a #1\par #2->
+#1<-
+#2<-!
+{blank space }
+{\long}
+{blank space }
+{\outer}
+! Parameters must be numbered consecutively.
+<to be read again>
+ 8
+l.356 ...ef\lo#1#2U3#4#5#6#7#8#8
+ #9#{\relax}
+I've inserted the digit you should have used after the #.
+Type `1' to delete what you did use.
+
+! You already have nine parameters.
+l.356 ...\lo#1#2U3#4#5#6#7#8#8#9
+ #{\relax}
+I'm going to ignore the # sign you just used.
+
+{blank space }
+{\ifcase}
+{case 1}
+
+\l #1->
+#1<-\par
+
+\b #1\par ->
+Runaway argument?
+{
+! Paragraph ended before \b was complete.
+<to be read again>
+ \par
+l.357 ...defined\or\l\par\b{\par
+ % occurrence of \par aborts \b
+I suspect you've forgotten a `}', causing me to apply this
+control sequence to too much text. How can we recover?
+My plan is to forget the whole thing and hope for the best.
+
+{\par}
+@firstpass
+@secondpass
+[]
+@ via @@0 b=10000 p=0 d=100000782
+@@1: line 1.0 t=100000782 -> @@0
+
+@\par via @@0 b=22 p=-10000 d=529
+@@2: line 1.1- t=529 -> @@0
+@\par via @@1 b=10000 p=-10000 d=100000000
+@@3: line 2.0- t=200000782 -> @@1
+
+
+Loose \hbox (badness 22) in paragraph at lines 347--357
+ []
+
+\hbox(0.0+0.0)x100.0, glue set 0.60527
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+%% goal height=16383.99998, max depth=2.0
+
+\b #1\par ->
+#1<-\l \undefined
+{vertical mode: \else}
+{\ifcase}
+{\iftrue}
+{true}
+{case -1}
+{\ifcase}
+{\fi}
+{case 5}
+{\fi}
+{\catcode}
+{\let}
+{\def}
+{blank space }
+{\halign}
+{internal vertical mode: \ifcase}
+{case 3}
+! Incomplete \ifcase; all text was ignored after line 363.
+<inserted text>
+ \fi
+<to be read again>
+ \lo
+l.363 \^^C{{\span\ifcase3 \lo
+ #\cr............89{}\cr} % runaw...
+A forbidden control sequence occurred in skipped text.
+This kind of error happens when you say `\if...' and forget
+the matching `\fi'. I've inserted a `\fi'; this might work.
+
+Runaway preamble?
+{
+! Forbidden control sequence found while scanning preamble of \^^C.
+<inserted text>
+ \cr }
+<to be read again>
+ \lo
+l.363 \^^C{{\span\ifcase3 \lo
+ #\cr............89{}\cr} % runaw...
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+! Missing # inserted in alignment preamble.
+<to be read again>
+ \cr
+<inserted text> \cr
+ }
+<to be read again>
+ \lo
+l.363 \^^C{{\span\ifcase3 \lo
+ #\cr............89{}\cr} % runaw...
+There should be exactly one # between &'s, when an
+\halign or \valign is being set up. In this case you had
+none, so I've put one in; maybe that will work.
+
+
+\lo #1#2U3#4#5#6#7#8#989{->\relax {
+#1<-##
+#2<-\cr
+U3<-.
+#4<-.
+#5<-.
+#6<-.
+#7<-.
+#8<-.
+#9<-......
+{vertical mode: \relax}
+{begin-group character {}
+{end-group character }}
+{\cr}
+! Misplaced \cr.
+l.363 ...#\cr............89{}\cr
+ } % runaway preamble?
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+{end-group character }}
+! Too many }'s.
+l.363 ...\cr............89{}\cr}
+ % runaway preamble?
+You've closed more groups than you opened.
+Such booboos are generally harmless, so keep going.
+
+{blank space }
+{\def}
+! Illegal parameter number in definition of \a.
+<to be read again>
+ 2
+l.364 \def\a^^C1{\d#1\d\l{#2
+ }\l#1\par\a^^@^^@a#1\par# % runaw...
+You meant to type ## instead of #, right?
+Or maybe a } was forgotten somewhere earlier, and things
+are all screwed up? I'm going to assume that you meant ##.
+
+Runaway definition?
+^^C1->\d ^^C1\d \l {##2}\l ^^C1\par
+! Forbidden control sequence found while scanning definition of \a.
+<inserted text>
+ }
+<to be read again>
+ \a^^@^^@a
+l.364 ...\l{#2}\l#1\par\a^^@^^@a
+ #1\par# % runaway in definiti...
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+
+\a^^@^^@a #1\par #2->
+#1<-##1
+#2<-##
+{blank space }
+{\xdef}
+
+\d #1\d ->#1#1
+#1<-##1
+
+\l #1->
+#1<-##2
+
+\l #1->
+#1<-##
+Runaway definition?
+^^C1->^^C1^^C11\par
+! Forbidden control sequence found while scanning definition of \a.
+<inserted text>
+ }
+<to be read again>
+ \a^^@^^@a
+l.365 ...\l{#2}\l#1\par\a^^@^^@a
+ #1\par# % runaway in definiti...
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+
+\a^^@^^@a #1\par #2->
+#1<-##1
+#2<-##
+{blank space }
+
+\T 12#101001{->-.#1pt{
+Runaway argument?
+! Forbidden control sequence found while scanning use of \T.
+<inserted text>
+ \par
+<to be read again>
+ \a^^@^^@a
+l.366 \T^^?a^^@^^@a
+ \par{\lo\par % runaway in use
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+! Use of \T doesn't match its definition.
+<inserted text>
+ \par
+<to be read again>
+ \a^^@^^@a
+l.366 \T^^?a^^@^^@a
+ \par{\lo\par % runaway in use
+If you say, e.g., `\def\a1{...}', then you must always
+put `1' after `\a', since control sequence names are
+made up of letters only. The macro here has not been
+followed by the required stuff, so I'm ignoring it.
+
+{\par}
+
+\a^^@^^@a #1\par #2->
+#1<-
+Runaway argument?
+{
+! Forbidden control sequence found while scanning use of \a^^@^^@a.
+<inserted text>
+ \par
+<to be read again>
+ \lo
+l.366 \T^^?a^^@^^@a\par{\lo
+ \par % runaway in use
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+
+\lo #1#2U3#4#5#6#7#8#989{->\relax {
+#1<-\par
+Runaway argument?
+! Forbidden control sequence found while scanning use of \lo.
+<inserted text>
+ \par
+<to be read again>
+ \lo
+l.367 \lo
+ \par\par\par P \par\par\par\par\par\par89{} \muski...
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+
+\lo #1#2U3#4#5#6#7#8#989{->\relax {
+#1<-\par
+#2<-\par
+U3<-\par
+#4<-P
+#5<-\par
+#6<-\par
+#7<-\par
+#8<-\par
+#9<-\par \par
+{\relax}
+{begin-group character {}
+{end-group character }}
+{blank space }
+{\muskip}
+{\muskipdef}
+{\muskip3}
+{\showthe}
+> 5.0mu plus 4.0mu minus 2.0mu.
+l.368 ....5\shmip \showthe\shmip
+
+
+{begin-group character {}
+{\advance}
+! Incompatible glue units.
+l.369 {\advance\shmip by \shkip
+ \endlinechar-1
+I'm going to assume that 1mu=1pt when they're mixed.
+
+{\endlinechar}
+{\divide}
+{\endlinechar}
+{\global}
+{\showthe}
+> 0.0mu minus -0.00003fil.
+l.372 \showthe\shmip
+
+
+{end-group character }}
+{restoring \endlinechar=13}
+{retaining \muskip3=0.0mu minus -0.00003fil}
+{\divide}
+! Arithmetic overflow.
+l.374 By ^^p
+ \toks1={\a\test}
+I can't carry out that multiplication or division,
+since the result is out of range.
+
+{\toks}
+{blank space }
+{superscript character ^}
+! Missing $ inserted.
+<inserted text>
+ $
+<to be read again>
+ ^
+l.375 ^
+ \leaders\vrule\mskip\shmip M\leaders\hrule\nonscript\h...
+I've inserted a begin-math/end-math symbol since I think
+you left one out. Proceed, with fingers crossed.
+
+{math shift character $}
+% t=20.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{horizontal mode: math shift character $}
+{math mode: superscript character ^}
+! Missing { inserted.
+<to be read again>
+ \leaders
+l.375 ^\leaders
+ \vrule\mskip\shmip M\leaders\hrule\nonscript\h...
+A left brace was mandatory here, so I've put one in.
+You might want to delete and/or insert some corrections
+so that I will find a matching right brace soon.
+(If you're confused by all this, try typing `I}' now.)
+
+{\leaders}
+{the letter M}
+{\leaders}
+! Leaders not followed by proper glue.
+<to be read again>
+ \nonscript
+l.375 ...leaders\hrule\nonscript
+ \hskip\thinmuskip
+You should say `\leaders <box or rule><hskip or vskip>'.
+I found the <box or rule>, but there's no suitable
+<hskip or vskip>, so I'm ignoring these leaders.
+
+{\nonscript}
+{\hskip}
+! Incompatible glue units.
+l.375 ...script\hskip\thinmuskip
+
+I'm going to assume that 1mu=1pt when they're mixed.
+
+{\par}
+! Missing $ inserted.
+<inserted text>
+ $
+<to be read again>
+ \par
+l.376
+
+I've inserted a begin-math/end-math symbol since I think
+you left one out. Proceed, with fingers crossed.
+
+{math shift character $}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ $
+<to be read again>
+ \par
+l.376
+
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+{math shift character $}
+{restoring \fam=0}
+{horizontal mode: \par}
+@firstpass
+@secondpass
+[]$[]$
+@\par via @@0 b=80 p=-10000 d=*
+@@1: line 1.1- t=0 -> @@0
+
+
+Loose \hbox (badness 80) in paragraph at lines 375--376
+ []$[]$
+
+\hbox(8.2+0.0)x100.0, glue set 0.9301
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{vertical mode: begin-group character {}
+{\setbox}
+{restricted horizontal mode: \vfill}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ \vfill
+l.377 {\setbox3\hbox{\vfill
+ \vsplit 3 0pt}
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+{vertical mode: \vfill}
+{\vsplit}
+! Missing `to' inserted.
+<to be read again>
+ 0
+l.377 ...\hbox{\vfill\vsplit 3 0
+ pt}
+I'm working on `\vsplit<box number> to <dimen>';
+will look for the <dimen> next.
+
+! \vsplit needs a \vbox.
+<to be read again>
+ }
+l.377 ...ox{\vfill\vsplit 3 0pt}
+
+The box you are trying to split is an \hbox.
+I can't split such a box, so I'll leave it alone.
+
+{end-group character }}
+{restoring \box3=
+\vbox(0.0+-8.53581)x0.0 []}
+{blank space }
+{\def}
+! Parameters must be numbered consecutively.
+<to be read again>
+ 2
+l.378 \def\a#2
+ {}
+I've inserted the digit you should have used after the #.
+Type `1' to delete what you did use.
+
+{blank space }
+{\show}
+> the letter A.
+l.379 \show A
+
+
+{blank space }
+{\show}
+> \a^^@^^@a=\outer macro:
+#1\par #2->.
+l.380 \show\a^^@^^@a
+
+
+{\show}
+> (=macro:
+->\delimiter "4162362 .
+l.381 \show (
+
+
+{blank space }
+{\message}
+{\meaning}
+{\noexpand}
+\long\outer macro:#1#2U3#4#5#6#7#8#989{->\relax {\lo
+{blank space }
+{\show}
+> \^^C=\halign.
+l.383 \show\^^C
+
+
+{blank space }
+{\show}
+> \batchmode=\batchmode.
+l.384 \show\batchmode
+
+
+{\show}
+> \error=undefined.
+l.385 \show\error
+
+
+{\showthe}
+> {\tracingcommands 0\showthe \outputpenalty \showboxbreadth 9999 \showb
+oxdepth 9999 \hoffset 1sp {\setbox 254=\box 255\shipout \ifvbox 2\ifhbox
+ 254 \error \fi 54\copy 25\fi 4} \ifvoid 254\relax \else \error \fi }.
+l.386 \showthe\output
+
+
+{\showthe}
+> 1.0mu plus 2.0fill minus 3.0mu.
+l.387 \showthe\thinmuskip
+
+
+{\showthe}
+> -2.0pt.
+<recently read> \enorm
+
+l.388 \showthe\fontdimen1\enorm
+
+
+{\ifx}
+{false}
+{\par}
+% t=30.0 plus 42.0 plus 1.0fil minus 8.0 g=16383.99998 b=0 p=0 c=0#
+{\if}
+{\else}
+{true}
+{\else}
+{\fi}
+{\ifdim}
+{\iftrue}
+{true}
+! Missing = inserted for \ifdim.
+<to be read again>
+ 1
+l.390 \ifdim72p\iftrue t1
+ i\fi n\fi\fi \message{\jobname\ifx\l...
+I was expecting to see `<', `=', or `>'. Didn't.
+
+{\fi}
+{\fi}
+{false}
+{\fi}
+! Extra \fi.
+l.390 ...p\iftrue t1i\fi n\fi\fi
+ \message{\jobname\ifx\lo\lo ...
+I'm ignoring this; it doesn't match any \if.
+
+{\message}
+{\jobname}
+{\ifx}
+{true}
+tripOK
+{\fi}
+{\hangindent}
+{begin-group character {}
+{\if}
+{true}
+{blank space }
+{\prevgraf}
+{\if}
+{false}
+! Bad \prevgraf (-1).
+<to be read again>
+ \relax
+l.392 ...f 0123\error\else\relax
+ \fi\else\error\fi
+I allow only nonnegative values here.
+
+{\relax}
+{\fi}
+{\else}
+{\prevgraf}
+{\global}
+{end-group character }}
+{\showthe}
+> 2.
+l.393 ...er=2}\showthe\hangafter
+ \showthe\prevgraf
+
+{\showthe}
+> 1.
+l.393 ...gafter\showthe\prevgraf
+
+
+{\char}
+{horizontal mode: \char}
+Missing character: There is no ^^83 in font trip!
+{\showthe}
+> 0.
+l.394 \char'203\showthe\prevgraf
+ $\indent\mark{twain}
+
+{math shift character $}
+{math mode: \indent}
+{\mark}
+{blank space }
+{\setbox}
+{restricted horizontal mode: \vrule}
+{end-group character }}
+{math mode: alignment tab character &}
+! Misplaced alignment tab character &.
+l.395 \setbox3\hbox{\vrule}&
+ \moveleft\lastbox % can't do that...
+I can't figure out why you would want to use a tab mark
+here. If you just want an ampersand, the remedy is
+simple: Just type `I\&' now. But if some right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+{\moveleft}
+! You can't use `\moveleft' in math mode.
+l.395 ...\hbox{\vrule}&\moveleft
+ \lastbox % can't do that in m...
+Sorry, but I'm not programmed to handle this case;
+I'll just pretend that you didn't ask for it.
+If you're in the wrong mode, you might be able to
+return to the right one by typing `I}' or `I$' or `I\par'.
+
+{\lastbox}
+! You can't use `\lastbox' in math mode.
+l.395 ...rule}&\moveleft\lastbox
+ % can't do that in math mode
+Sorry; this \lastbox will be void.
+
+{\unhbox}
+{\unhcopy}
+! Incompatible list can't be unboxed.
+<to be read again>
+ \accent
+l.396 \unhbox234\unhcopy3\accent
+ \x\vfill\vfil\vfilneg\vss % \...
+Sorry, Pandora. (You sneaky devil.)
+I refuse to unbox an \hbox in vertical mode or vice versa.
+And I can't open any boxes in math mode.
+
+{\accent}
+! Please use \mathaccent for accents in math mode.
+<recently read> \accent
+
+l.396 \unhbox234\unhcopy3\accent
+ \x\vfill\vfil\vfilneg\vss % \...
+I'm changing \accent to \mathaccent here; wish me luck.
+(Accents are not the same in formulas as they are in text.)
+
+! Missing { inserted.
+<to be read again>
+ \vfill
+l.396 ...unhcopy3\accent\x\vfill
+ \vfil\vfilneg\vss % \vfill ex...
+A left brace was mandatory here, so I've put one in.
+You might want to delete and/or insert some corrections
+so that I will find a matching right brace soon.
+(If you're confused by all this, try typing `I}' now.)
+
+{\vfill}
+! Missing $ inserted.
+<inserted text>
+ $
+<to be read again>
+ \vfill
+l.396 ...unhcopy3\accent\x\vfill
+ \vfil\vfilneg\vss % \vfill ex...
+I've inserted a begin-math/end-math symbol since I think
+you left one out. Proceed, with fingers crossed.
+
+{math shift character $}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ $
+<to be read again>
+ \vfill
+l.396 ...unhcopy3\accent\x\vfill
+ \vfil\vfilneg\vss % \vfill ex...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+{math shift character $}
+! \textfont 0 is undefined (character ^^c8).
+<recently read> $
+
+<to be read again>
+ \vfill
+l.396 ...unhcopy3\accent\x\vfill
+ \vfil\vfilneg\vss % \vfill ex...
+Somewhere in the math formula just ended, you used the
+stated character from an undefined font family. For example,
+plain TeX doesn't allow \it or \sl in subscripts. Proceed,
+and I'll try to forget that I needed that character.
+
+{restoring \box3=
+\vbox(0.0+-8.53581)x0.0 []}
+{restoring \fam=0}
+{horizontal mode: \vfill}
+{\par}
+@firstpass
+@secondpass
+[]$[][][]$
+@\par via @@0 b=91 p=-10000 d=*
+@@1: line 1.1- t=0 -> @@0
+
+
+Loose \hbox (badness 91) in paragraph at lines 394--396
+ []$[][]$
+
+\hbox(0.0+0.0)x100.0, glue set 0.97
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{vertical mode: \vfill}
+{\vfil}
+{\vfilneg}
+{\vss}
+{\def}
+! Missing { inserted.
+l.397 \def\a}
+ {\let\a\xyzzy\csname a\endcsname}
+Where was the left brace? You said something like `\def\a}',
+which I'm going to interpret as `\def\a{}'.
+
+{begin-group character {}
+{\let}
+{\csname}
+{\relax}
+{end-group character }}
+{restoring \a=macro:->}
+{blank space }
+{\def}
+{\def}
+{\let}
+{\def}
+{blank space }
+{\ifx}
+{false}
+{\expandafter}
+
+\b ->\a \c
+{\ifx}
+{true}
+{\ifinner}
+{false}
+{\relax}
+{\fi}
+{\else}
+{\fi}
+{\ifvmode}
+{true}
+{math shift character $}
+% t=40.0 plus 84.0 plus 1.0fil plus 1.0fill minus 16.0 g=16383.99998 b=0
+ p=0 c=0#
+! Infinite glue shrinkage found on current page.
+<to be read again>
+ $
+l.402 \ifvmode$
+ \ifmmode\hbox tt\ifhmode\hfilneg\else\error\fi...
+The page about to be output contains some infinitely
+shrinkable glue, e.g., `\vss' or `\vskip 0pt minus 1fil'.
+Such glue doesn't belong there; but you can safely proceed,
+since the offensive shrinkability has been made finite.
+
+{horizontal mode: math shift character $}
+{math mode: \ifmmode}
+{true}
+{\hbox}
+! Missing { inserted.
+<to be read again>
+ t
+<to be read again>
+ t
+l.402 \ifvmode$\ifmmode\hbox tt
+ \ifhmode\hfilneg\else\error\fi...
+A left brace was mandatory here, so I've put one in.
+You might want to delete and/or insert some corrections
+so that I will find a matching right brace soon.
+(If you're confused by all this, try typing `I}' now.)
+
+{restricted horizontal mode: the letter t}
+{\ifhmode}
+{true}
+{\hfilneg}
+{\else}
+{end-group character }}
+{math mode: math shift character $}
+{restoring \fam=0}
+{horizontal mode: \fi}
+{\fi}
+{\noalign}
+! Misplaced \noalign.
+l.403 \noalign
+ \omit\endcsname % these are extra
+I expect to see \noalign only after the \cr of
+an alignment. Proceed, and I'll ignore this case.
+
+{\omit}
+! Misplaced \omit.
+l.403 \noalign\omit
+ \endcsname % these are extra
+I expect to see \omit only after tab marks or the \cr of
+an alignment. Proceed, and I'll ignore this case.
+
+{\endcsname}
+! Extra \endcsname.
+l.403 \noalign\omit\endcsname
+ % these are extra
+I'm ignoring this, since I wasn't doing a \csname.
+
+{\fontdimen}
+! Missing font identifier.
+<to be read again>
+ =
+l.404 \fontdimen 1000=
+ 20\varunit\showthe\fontdimen1000\trip\l...
+I was looking for a control sequence whose
+current meaning has been defined by \font.
+
+! Font \FONT? has only 12 fontdimen parameters.
+<to be read again>
+ =
+l.404 \fontdimen 1000=
+ 20\varunit\showthe\fontdimen1000\trip\l...
+To increase the number of font parameters, you must
+use \fontdimen immediately after the \font is loaded.
+
+{\showthe}
+! Font \ip has only 13 fontdimen parameters.
+<recently read> \trip
+
+l.404 ...wthe\fontdimen1000\trip
+ \let\PAR=\par
+To increase the number of font parameters, you must
+use \fontdimen immediately after the \font is loaded.
+
+> 0.0pt.
+<recently read> \trip
+
+l.404 ...wthe\fontdimen1000\trip
+ \let\PAR=\par
+
+{\let}
+{\gdef}
+{\expandafter}
+{\csname}
+{\ifx}
+{true}
+{\mag}
+
+\par ->\relax \PAR
+{\relax}
+{\par}
+@firstpass
+@secondpass
+[]$[]$
+@\par via @@0 b=91 p=-10000 d=*
+@@1: line 1.1- t=0 -> @@0
+
+
+Loose \hbox (badness 91) in paragraph at lines 402--406
+ []$[]$
+
+\hbox(0.0+0.0)x100.0, glue set 0.97
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{vertical mode: \fi}
+{\noindent}
+% t=50.0 plus 126.0 plus 2.0fil plus 2.0fill minus 25.0 g=16383.99998 b=
+0 p=0 c=0#
+{horizontal mode: begin-group character {}
+{\halign}
+
+\par ->\relax \PAR
+{\relax}
+{\par}
+{vertical mode: \halign}
+! Incompatible magnification (1999);
+ the previous value will be retained (2000).
+l.407 ...indent{\halign to 1true
+ mm\expandafter{\csname#\endcs...
+I can handle only one magnification ratio per job. So I've
+reverted to the magnification you used earlier on this run.
+
+{internal vertical mode: \expandafter}
+{\csname}
+{restricted horizontal mode: \relax}
+{\global}
+{undefined}
+! Undefined control sequence.
+<recently read> \foo
+
+<to be read again>
+ \endtemplate
+<template> \endtemplate
+
+l.408 ...bal\futurelet\endt\foo&
+ \show\endt&$&&&.}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+{end of alignment template}
+{\show}
+> \endt=\outer endtemplate:
+.
+l.408 ...let\endt\foo&\show\endt
+ &$&&&.}
+
+{end of alignment template}
+
+\l #1->
+#1<-$
+{end of alignment template}
+! Extra alignment tab has been changed to \cr.
+<template> }\endtemplate
+
+l.408 ...\endt\foo&\show\endt&$&
+ &&.}
+You have given more \span or & marks than there were
+in the preamble to the \halign or \valign now in progress.
+So I'll assume that you meant to type \cr instead.
+
+{\relax}
+{end of alignment template}
+{end of alignment template}
+
+\l #1->
+#1<-.
+{blank space }
+
+\par ->\relax \PAR
+{\relax}
+{\par}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ \PAR
+l.409
+
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+! Missing \cr inserted.
+<inserted text>
+ \cr
+<to be read again>
+ }
+<to be read again>
+ \PAR
+l.409
+
+I'm guessing that you meant to end an alignment here.
+
+{\cr}
+! Missing { inserted.
+<inserted text>
+ {
+<to be read again>
+ \cr
+<to be read again>
+ }
+<to be read again>
+ \PAR
+l.409
+
+I've put in what seems to be necessary to fix
+the current column of the current alignment.
+Try to go on, since this might almost work.
+
+{begin-group character {}
+{end-group character }}
+{end of alignment template}
+
+Tight \hbox (badness 1) in alignment at lines 407--409
+ [] [] []
+
+\hbox(0.0+0.0)x1.42262, glue set - 0.20552
+.\glue(\tabskip) 0.0154 minus 3.21002
+.\unsetbox(0.0+0.0)x0.0
+.etc.
+
+% t=60.0 plus 168.0 plus 2.0fil plus 2.0fill minus 33.0 g=16383.99998 b=
+0 p=0 c=0#
+{vertical mode: \par}
+{\hbox}
+{restricted horizontal mode: \/}
+{\hrule}
+! You can't use `\hrule' here except with leaders.
+l.410 \hbox{\/\hrule
+ \textfont3=\enorm\prevdepth\advance\xspac...
+To put a horizontal rule in an hbox or an alignment,
+you should use \leaders or \hrulefill (see The TeXbook).
+
+{\textfont}
+{\prevdepth}
+! You can't use `\prevdepth' in restricted horizontal mode.
+l.410 ...tfont3=\enorm\prevdepth
+ \advance\xspaceskip by-\xspac...
+Sorry, but I'm not programmed to handle this case;
+I'll just pretend that you didn't ask for it.
+If you're in the wrong mode, you might be able to
+return to the right one by typing `I}' or `I$' or `I\par'.
+
+{\advance}
+{\spacefactor}
+{begin-group character {}
+{blank space }
+{end-group character }}
+{\everymath}
+{\fontdimen}
+{math shift character $}
+\everymath->\radical "3
+{math mode: \radical}
+{end-group character }}
+{\delimiterfactor}
+{\left}
+
+(->\delimiter "4162362
+{the letter A}
+{the letter a}
+{\right}
+{math shift character $}
+{restoring \delimiterfactor=10}
+{restoring \fam=0}
+{restricted horizontal mode: the letter A}
+{\/}
+{end-group character }}
+{restoring \everymath=}
+{restoring \xspaceskip=-1.0pt}
+{restoring \textfont3=\bigtr^^@p}
+% t=70.0 plus 168.0 plus 2.0fil plus 2.0fill minus 33.0 g=16383.99998 b=
+0 p=0 c=0#
+{vertical mode: blank space }
+{\openin}
+{\closein}
+{\iftrue}
+{true}
+{begin-group character {}
+{\ifeof}
+{true}
+{\openin}
+! Bad number (100).
+l.413 ...e{\ifeof 15\openin 100
+ tripos
+Since I expected to read a number between 0 and 15,
+I changed this one to zero.
+
+{\def}
+{blank space }
+{\catcode}
+{\catcode}
+{\outer}
+
+\loop ->\ifeof 0\let \loop =\relax \else {\global \read 0to \a }\show \a
+ \fi \loop
+{\ifeof}
+{false}
+{begin-group character {}
+{\global}
+{end-group character }}
+{\show}
+> \a=macro:
+->\par .
+\loop ...\read 0to \a }\show \a
+ \fi \loop
+l.415 ...er\def\uppercase{}\loop
+ }\else\fi
+
+{\fi}
+
+\loop ->\ifeof 0\let \loop =\relax \else {\global \read 0to \a }\show \a
+ \fi \loop
+{\ifeof}
+{false}
+{begin-group character {}
+{\global}
+Runaway definition?
+->
+! Forbidden control sequence found while scanning definition of \a.
+<inserted text>
+ }
+<read 0> \uppercase
+ {0{\outputpenalty }}
+\loop ... {\global \read 0to \a
+ }\show \a \fi \loop
+l.415 ...er\def\uppercase{}\loop
+ }\else\fi
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+! Text line contains an invalid character.
+<read 0> \uppercase {0
+ {\outputpenalty }}
+\loop ... {\global \read 0to \a
+ }\show \a \fi \loop
+l.415 ...er\def\uppercase{}\loop
+ }\else\fi
+A funny symbol that I can't read has just been input.
+Continue, and I'll forget that it ever happened.
+
+{end-group character }}
+{\show}
+> \a=macro:
+-> .
+\loop ...\read 0to \a }\show \a
+ \fi \loop
+l.415 ...er\def\uppercase{}\loop
+ }\else\fi
+
+{\fi}
+
+\loop ->\ifeof 0\let \loop =\relax \else {\global \read 0to \a }\show \a
+ \fi \loop
+{\ifeof}
+{false}
+{begin-group character {}
+{\global}
+Runaway definition?
+->[
+! Forbidden control sequence found while scanning definition of \a.
+<inserted text>
+ }
+<read 0> [\uppercase
+ {mmmmmmmmmm}[
+\loop ... {\global \read 0to \a
+ }\show \a \fi \loop
+l.415 ...er\def\uppercase{}\loop
+ }\else\fi
+I suspect you have forgotten a `}', causing me
+to read past where you wanted me to stop.
+I'll try to recover; but if the error is serious,
+you'd better type `E' or `X' now and fix your file.
+
+Runaway definition?
+->[ }{mmmmmmmmmm}[
+! File ended within \read.
+<read 0>
+
+\loop ... {\global \read 0to \a
+ }\show \a \fi \loop
+l.415 ...er\def\uppercase{}\loop
+ }\else\fi
+This \read has unbalanced braces.
+
+{end-group character }}
+{\show}
+> \a=macro:
+->[ }{mmmmmmmmmm}[ \par .
+\loop ...\read 0to \a }\show \a
+ \fi \loop
+l.415 ...er\def\uppercase{}\loop
+ }\else\fi
+
+{\fi}
+
+\loop ->\ifeof 0\let \loop =\relax \else {\global \read 0to \a }\show \a
+ \fi \loop
+{\ifeof}
+{true}
+{\let}
+{\else}
+{\relax}
+{end-group character }}
+{restoring \uppercase=\uppercase}
+{restoring \catcode91=12}
+{restoring \catcode48=12}
+{restoring \loop=undefined}
+{\else}
+{end-group character }}
+{restoring \#=undefined}
+{\def}
+
+\test #1->\let \test =
+#1<-.
+{\let}
+{\show}
+> \test=blank space .
+l.416 ...est= }\test. \show\test
+
+
+{\def}
+{blank space }
+{\pretolerance}
+{\toks0}
+{\unhbox}
+% t=3754.40189 plus 208.0 plus 2.0fil plus 2.0fill minus 33.0 g=16383.99
+998 b=0 p=0 c=0#
+{horizontal mode: \unhbox}
+
+\par ->\relax \PAR
+{\relax}
+{\par}
+[]
+@\par via @@0 b=91 p=-10000 d=*
+@@1: line 1.1- t=0 -> @@0
+
+
+Loose \hbox (badness 91) in paragraph at lines 418--418
+ []
+
+\hbox(0.0+0.0)x100.0, glue set 0.97
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{vertical mode: \everycr}
+{blank space }
+{\the}
+
+\a #1->\ifcat #1 \message \ifx #1 {\iffalse \fi \the \tokens \fi \fi }
+#1<-\test
+{\ifcat}
+{true}
+{\message}
+{\ifx}
+{true}
+{\iffalse}
+{false}
+{\fi}
+{\fi}
+\a \test
+{\ifcase}
+{\or}
+{case 1}
+{\ifeof}
+{\fi}
+! Missing number, treated as zero.
+<to be read again>
+ \relax
+<to be read again>
+ \fi
+l.419 ...ens\ifcase1\or\ifeof\fi
+ \def\stopinput{\error\let\inp...
+A number should have been here; I inserted `0'.
+(If you can't figure out why I needed to see a number,
+look up `weird error' in the index to The TeXbook.)
+
+{true}
+{\relax}
+{\fi}
+{\def}
+{blank space }
+{\let}
+{\let}
+{\halign}
+{internal vertical mode: \iffalse}
+{false}
+\everycr->\noalign {\penalty 97}
+{\penalty}
+{end-group character }}
+{restricted horizontal mode: \cr}
+! Misplaced \cr.
+<template> \cr
+
+<to be read again>
+ \cr
+l.420 ...cr#&\ifnum0=`{\fi\cr\cr
+ }
+I can't figure out why you would want to use a tab mark
+or \cr or \span just now. If something like a right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+{alignment tab character &}
+! Misplaced alignment tab character &.
+<template> &
+ \ifnum 0=`{\fi \endtemplate
+l.420 ...cr#&\ifnum0=`{\fi\cr\cr
+ }
+I can't figure out why you would want to use a tab mark
+here. If you just want an ampersand, the remedy is
+simple: Just type `I\&' now. But if some right brace
+up above has ended a previous alignment prematurely,
+you're probably due for more error messages, and you
+might try typing `S' now just to see what is salvageable.
+
+{\ifnum}
+{\fi}
+{false}
+{end of alignment template}
+\everycr->\noalign {\penalty 97}
+{internal vertical mode: \penalty}
+{end-group character }}
+% t=3756.40189 plus 290.0 plus 2.0fil plus 2.0fill minus 41.0 g=16383.99
+998 b=0 p=97 c=97
+% t=3766.40189 plus 290.0 plus 2.0fil plus 2.0fill minus 41.0 g=16383.99
+998 b=0 p=97 c=97
+{vertical mode: blank space }
+{\let}
+{\def}
+{\def}
+
+\unbalanced ->\halign \lb
+{\halign}
+\everycr->\noalign {\penalty 97}
+{internal vertical mode: \penalty}
+{end-group character }}
+{restricted horizontal mode: \relax}
+{\expandafter}
+{\expandafter}
+{\expandafter}
+{\expandafter}
+{\expandafter}
+{\expandafter}
+{\expandafter}
+
+\trap #1->
+#1<-\endtemplate
+{undefined}
+! Undefined control sequence.
+<recently read> \err
+
+<to be read again>
+ \endt
+<template> \endtemplate
+
+l.422 ...rr\e\e\e\endt\e\trap\cr
+ \noexpand\cr}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+{end of alignment template}
+\everycr->\noalign {\penalty 97}
+{internal vertical mode: \penalty}
+{end-group character }}
+{\noexpand}
+{restricted horizontal mode: end of alignment template}
+\everycr->\noalign {\penalty 97}
+{internal vertical mode: \penalty}
+{end-group character }}
+% t=3766.40189 plus 290.0 plus 2.0fil plus 2.0fill minus 41.0 g=16383.99
+998 b=0 p=97 c=97
+% t=3776.40189 plus 290.0 plus 2.0fil plus 2.0fill minus 41.0 g=16383.99
+998 b=0 p=97 c=97
+% t=3786.40189 plus 290.0 plus 2.0fil plus 2.0fill minus 41.0 g=16383.99
+998 b=0 p=97 c=97
+{vertical mode: blank space }
+
+\par ->\relax \PAR
+{\relax}
+{\par}
+{\expandafter}
+{\input}
+{\endinput}
+{\input}
+(tripos.tex
+\stopinput ->\error \let \input \die
+{undefined}
+! Undefined control sequence.
+\stopinput ->\error
+ \let \input \die
+l.1
+
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+{\let}
+
+\par ->\relax \PAR
+{\relax}
+{\par}
+)
+{\relax}
+{undefined}
+! Undefined control sequence.
+<recently read> \input
+
+l.424 ...t tripos\endinput\input
+ % one line of tripos
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+{\setbox}
+{internal vertical mode: \hbox}
+{restricted horizontal mode: \hbox}
+{\vadjust}
+{internal vertical mode: the letter A}
+{horizontal mode: the letter A}
+{end-group character }}
+[]\ip A
+@\par via @@0 b=86 p=-10000 d=*
+@@1: line 1.1- t=0 -> @@0
+
+
+Loose \hbox (badness 86) in paragraph at lines 425--425
+ []\ip A
+
+\hbox(7.0+1.0)x100.0, glue set 0.95
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{restricted horizontal mode: end-group character }}
+{end-group character }}
+{internal vertical mode: end-group character }}
+
+Underfull \vbox (badness 10000) detected at line 425
+
+\vbox(8192.0+0.0)x0.0
+.\hbox(0.0+0.0)x0.0 []
+
+{vertical mode: \vrule}
+{horizontal mode: \vrule}
+{\unhbox}
+! Incompatible list can't be unboxed.
+<to be read again>
+ \hrule
+l.425 ...}}\vrule\unhbox10\hrule
+
+Sorry, Pandora. (You sneaky devil.)
+I refuse to unbox an \hbox in vertical mode or vice versa.
+And I can't open any boxes in math mode.
+
+{\hrule}
+
+\par ->\relax \PAR
+{\relax}
+{\par}
+[]|
+@\par via @@0 b=89 p=-10000 d=*
+@@1: line 1.1- t=0 -> @@0
+
+
+Loose \hbox (badness 89) in paragraph at lines 425--425
+ []|
+
+\hbox(0.0+0.0)x100.0, glue set 0.966
+.\glue(\leftskip) 3.0
+.\hbox(0.0+0.0)x0.0
+.etc.
+
+{vertical mode: \hrule}
+{\output}
+{\futurelet}
+{\maxdeadcycles}
+{\show}
+> \dump=the character =.
+l.427 ...xdeadcycles=3\show\dump
+
+
+{\catcode}
+{\catcode}
+{\expandafter}
+{\csname}
+{\let}
+{\relax}
+
+\csname\endcsname{->{
+! Use of \csname\endcsname doesn't match its definition.
+l.429 \relax
+ \catcode`\qq1qM=13 \defqqM{\relax}#\begingroup{\s...
+If you say, e.g., `\def\a1{...}', then you must always
+put `1' after `\a', since control sequence names are
+made up of letters only. The macro here has not been
+followed by the required stuff, so I'm ignoring it.
+
+{\catcode}
+{\def}
+{macro parameter character #}
+! You can't use `macro parameter character #' in vertical mode.
+l.429 ...^^M=13 \def^^M{\relax}#
+ \begingroup{\showboxdepth=4\s...
+Sorry, but I'm not programmed to handle this case;
+I'll just pretend that you didn't ask for it.
+If you're in the wrong mode, you might be able to
+return to the right one by typing `I}' or `I$' or `I\par'.
+
+{\begingroup}
+{begin-group character {}
+{\showboxdepth}
+{\showbox}
+> \box10=
+\vbox(8192.0+0.0)x0.0
+.\hbox(0.0+0.0)x0.0
+..\hbox(0.0+0.0)x0.0
+...\vadjust
+....\hbox(7.0+1.0)x100.0, glue set 0.95 []
+
+! OK.
+<to be read again>
+ }
+l.429 ...owboxdepth=4\showbox10}
+
+
+{end-group character }}
+{restoring \showboxdepth=1}
+
+^^M->\relax
+{\relax}
+
+^^M->\relax
+{\relax}
+{\long}
+{\immediate}
+\write->\string \caution \l
+{no mode: \string}
+
+\l #1\l ->#1
+! Argument of \l has an extra }.
+<inserted text>
+ \par
+<to be read again>
+ }
+<inserted text> }
+ \endwrite
+l.431 ...e10{\string\caution \l}
+ % living dangerously
+I've run across a `}' that doesn't seem to match anything.
+For example, `\def\a#1{...}' and `\a}' would produce
+this error. If you simply proceed now, the `\par' that
+I've just inserted will cause me to report a runaway
+argument that might be the root of the problem. But if
+your `}' was spurious, just type `2' and it will go away.
+
+Runaway argument?
+! Paragraph ended before \l was complete.
+<to be read again>
+ \par
+<to be read again>
+ }
+<inserted text> }
+ \endwrite
+l.431 ...e10{\string\caution \l}
+ % living dangerously
+I suspect you've forgotten a `}', causing me to apply this
+control sequence to too much text. How can we recover?
+My plan is to forget the whole thing and hope for the best.
+
+
+\par ->\relax \PAR
+\caution\relax \PAR
+{vertical mode: blank space }
+{\escapechar}
+{|tracingoutput}
+{|shipout}
+{internal vertical mode: |copy}
+{|box}
+{end-group character }}
+[-2.2.-1118806.0.11.196608.327680.1572864.1073741823
+! Huge page cannot be shipped out.
+<recently read> }
+
+l.432 ...ox{\copy10qq5e^5cbox10}
+
+The page just created is more than 18 feet tall or
+more than 18 feet wide, so I suspect something went wrong.
+
+The following box has been deleted:
+|vbox(16384.0+0.0)x0.0
+.|vbox(8192.0+0.0)x0.0 []
+.|glue(|lineskip) 0.0 plus 40.0
+.etc.
+
+]
+Memory usage before: 819&428; after: 720&426; still untouched: 175
+
+^^M->|relax
+{vertical mode: |relax}
+{|setbox}
+{restricted horizontal mode: |fontdimen}
+{|afterassignment}
+{|advance}
+! You can't use `|prevdepth' after |advance.
+l.434 ...relax\advance\prevdepth
+ \afterassignment\relax\future...
+I'm forgetting what you said and not changing anything.
+
+{|relax}
+{|afterassignment}
+{|futurelet}
+{|relax}
+
+^^M->|relax
+{|relax}
+{|message}
+{|noexpand}
+{|meaning}
+|l |long macro:#1|l ->#166
+{|vbox}
+{internal vertical mode: |hyphenchar}
+{|-}
+{horizontal mode: |-}
+{| }
+{the letter B}
+
+|par ->|relax |PAR
+{|relax}
+{|par}
+[]
+@|discretionary via @@0 b=10000 p=89 d=100008703
+@@1: line 1.0- t=100008703 -> @@0
+
+@ via @@0 b=10000 p=0 d=100000782
+@ via @@1 b=10000 p=0 d=100000000
+@@2: line 1.0 t=100000782 -> @@0
+|ip BBBBBB
+@|par via @@0 b=62 p=-10000 d=3969
+@|par via @@1 b=66 p=-10000 d=104489
+@|par via @@2 b=66 p=-10000 d=4489
+@@3: line 1.1- t=3969 -> @@0
+
+
+Loose \hbox (badness 62) in paragraph at lines 436--436
+ [] |ip BBBBBB
+
+|hbox(7.0+1.0)x100.0, glue set 0.85294
+.|glue(|leftskip) 3.0
+.|hbox(0.0+0.0)x0.0
+.etc.
+
+{internal vertical mode: |hyphenchar}
+{|-}
+{horizontal mode: |-}
+Missing character: There is no ? in font trip!
+{| }
+{the letter B}
+{end-group character }}
+[]
+@|discretionary via @@0 b=10000 p=89 d=100008703
+@@1: line 1.0- t=100008703 -> @@0
+
+@ via @@0 b=10000 p=0 d=100000782
+@ via @@1 b=10000 p=0 d=100000000
+@@2: line 1.0 t=100000782 -> @@0
+Missing character: There is no ? in font trip!
+|ip BBBBBB
+@|discretionary via @@0 b=10000 p=88 d=100008526
+@|discretionary via @@1 b=10000 p=88 d=100008744
+@|discretionary via @@2 b=10000 p=88 d=100007744
+@@3: line 1.0- t=100008526 -> @@0
+
+@|par via @@0 b=62 p=-10000 d=3969
+@|par via @@1 b=66 p=-10000 d=104489
+@|par via @@2 b=66 p=-10000 d=4489
+@|par via @@3 b=73 p=-10000 d=105476
+@@4: line 1.1- t=3969 -> @@0
+
+
+Loose \hbox (badness 62) in paragraph at lines 436--436
+ [] |ip BBBBBB
+
+|hbox(7.0+1.0)x100.0, glue set 0.85294
+.|glue(|leftskip) 3.0
+.|hbox(0.0+0.0)x0.0
+.etc.
+
+{restricted horizontal mode: |if}
+{|expandafter}
+
+|dol ->$
+{|noexpand}
+{true}
+{|fi}
+{|expandafter}
+{|noexpand}
+{|expandafter}
+{|noexpand}
+{undefined}
+! Undefined control sequence.
+<recently read> |undefined
+
+<to be read again>
+ |notexpanded: |expandafter
+l.437 ...ed\noexpand\expandafter
+ %
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+{|relax}
+{math shift character $}
+{math mode: |begingroup}
+{|mathop}
+{|vbox}
+{internal vertical mode: |vss}
+{end-group character }}
+{math mode: end-group character }}
+{|limits}
+{superscript character ^}
+! Missing { inserted.
+<to be read again>
+ |mathchoice
+l.438 ...ss}}\limits^\mathchoice
+ {}a}{A|{}}{\mathchoice}
+A left brace was mandatory here, so I've put one in.
+You might want to delete and/or insert some corrections
+so that I will find a matching right brace soon.
+(If you're confused by all this, try typing `I}' now.)
+
+{|mathchoice}
+{end-group character }}
+! Missing { inserted.
+<to be read again>
+ a
+l.438 ...}\limits^\mathchoice{}a
+ }{A|{}}{\mathchoice}
+A left brace was mandatory here, so I've put one in.
+You might want to delete and/or insert some corrections
+so that I will find a matching right brace soon.
+(If you're confused by all this, try typing `I}' now.)
+
+{the letter a}
+{end-group character }}
+{the letter A}
+{subscript character |}
+{end-group character }}
+{end-group character }}
+{|mathchoice}
+! Missing { inserted.
+<to be read again>
+ }
+l.438 ...{}a}{A|{}}{\mathchoice}
+
+A left brace was mandatory here, so I've put one in.
+You might want to delete and/or insert some corrections
+so that I will find a matching right brace soon.
+(If you're confused by all this, try typing `I}' now.)
+
+{end-group character }}
+
+^^M->|relax
+{end-group character }}
+{|relax}
+{begin-group character {}
+{end-group character }}
+{begin-group character {}
+{the letter B}
+{|over}
+{end-group character }}
+{|endgroup}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ |endgroup
+l.439 ...elax{}{B\over}\endgroup
+ \showlonglists$}\showboxbread...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+! Missing { inserted.
+<to be read again>
+ |endgroup
+l.439 ...elax{}{B\over}\endgroup
+ \showlonglists$}\showboxbread...
+A left brace was mandatory here, so I've put one in.
+You might want to delete and/or insert some corrections
+so that I will find a matching right brace soon.
+(If you're confused by all this, try typing `I}' now.)
+
+{|endgroup}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ |endgroup
+l.439 ...elax{}{B\over}\endgroup
+ \showlonglists$}\showboxbread...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+{|endgroup}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ |endgroup
+l.439 ...elax{}{B\over}\endgroup
+ \showlonglists$}\showboxbread...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+{|endgroup}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ |endgroup
+l.439 ...elax{}{B\over}\endgroup
+ \showlonglists$}\showboxbread...
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+{|endgroup}
+
+|showlonglists ->{|tracingcommands 0|pagefillstretch -1|dimen 100 |showb
+oxbreadth 9999 |showboxdepth 9999 |showlists |pagegoal =10000pt}
+{begin-group character {}
+{|tracingcommands}
+
+### math mode entered at line 439
+### math mode entered at line 438
+|mathop|limits
+.|vbox(0.0+0.0)x0.0
+..|glue 0.0 plus 1.0fil minus 1.0fil
+^|mathchoice
+^T|mathord
+^T.|fam1 a
+^S|mathord
+^S.|fam1 A
+^S_{}
+^s|mathchoice
+^sS|mathord
+^sS.{}
+^sS|mathord
+^sS.|fraction, thickness = default
+^sS.\|mathord
+^sS.\.|fam1 B
+^sS./{}
+|mathord
+### restricted horizontal mode entered at line 433
+|vbox(17.0+1.0)x100.0
+.|hbox(7.0+1.0)x100.0, glue set 0.85294
+..|glue(|leftskip) 3.0
+..|hbox(0.0+0.0)x0.0
+..|discretionary
+..|glue 0.0 plus 2.0 minus 88.0
+..|ip A (ligature BB)
+..|kern2.0
+..|ip A (ligature BB)
+..|kern2.0
+..|ip A (ligature BB)
+..|penalty 10000
+..|glue(|parfillskip) 0.0 plus 100.0
+..|glue(|rightskip) 0.0
+.|glue(|parskip) 0.0 plus 42.0 minus 8.0
+.|glue(|baselineskip) 2.0
+.|hbox(7.0+1.0)x100.0, glue set 0.85294
+..|glue(|leftskip) 3.0
+..|hbox(0.0+0.0)x0.0
+..|discretionary
+..|glue 0.0 plus 2.0 minus 88.0
+..|ip A (ligature BB)
+..|kern2.0
+..|discretionary replacing 3
+...|ip B
+..||ip A (ligature BB)
+..||kern2.0
+..||ip B
+..|ip A (ligature BB)
+..|kern2.0
+..|ip A (ligature BB)
+..|penalty 10000
+..|glue(|parfillskip) 0.0 plus 100.0
+..|glue(|rightskip) 0.0
+spacefactor 1000
+### vertical mode entered at line 0
+### current page:
+|glue(|topskip) 20.0 plus 1.0fil
+|hbox(0.0+0.0)x100.0, glue set 0.60527
+.|glue(|leftskip) 3.0
+.|hbox(0.0+0.0)x0.0
+.|glue 4.0 plus 2.0 minus 88.0
+.|glue 4.0 plus 2.0 minus 88.0
+.|glue 4.0 plus 2.0 minus 88.0
+.|glue 4.0 plus 2.0 minus 88.0
+.|glue 4.0 plus 2.0 minus 88.0
+.|glue 4.0 plus 2.0 minus 88.0
+.|glue 4.0 plus 2.0 minus 88.0
+.|penalty 10000
+.|glue(|parfillskip) 0.0 plus 100.0
+.|glue(|rightskip) 0.0
+|glue(|parskip) 0.0 plus 42.0 minus 8.0
+|glue(|baselineskip) 1.8
+|hbox(8.2+0.0)x100.0, glue set 0.9301
+.|glue(|leftskip) 3.0
+.|hbox(0.0+0.0)x0.0
+.|mathon
+.|hbox(0.0+0.0)x3.99, shifted -8.2
+..|leaders 0.0 minus -0.00003fil
+...|rule(*+*)x0.4
+..|smalltrip M
+..|kern1.0
+..|glue(|nonscript)
+.|mathoff
+.|penalty 10000
+.|glue(|parfillskip) 0.0 plus 100.0
+.|glue(|rightskip) 0.0
+|glue 0.0 plus 1.0fill
+|glue(|parskip) 0.0 plus 42.0 minus 8.0
+|glue(|baselineskip) 10.0
+|hbox(0.0+0.0)x100.0, glue set 0.97
+.|glue(|leftskip) 3.0
+.|hbox(0.0+0.0)x0.0
+.|mathon
+.|hbox(0.0+0.0)x0.0
+.|hbox(0.0+0.0)x0.0
+.|mathoff
+.|penalty 10000
+.|glue(|parfillskip) 0.0 plus 100.0
+.|glue(|rightskip) 0.0
+|mark{twain}
+|glue 0.0 plus 1.0fill
+|glue 0.0 plus 1.0fil
+|glue 0.0 plus -1.0fil
+|glue 0.0 plus 1.0fil minus 1.0
+|glue(|parskip) 0.0 plus 42.0 minus 8.0
+|glue(|baselineskip) 10.0
+|hbox(0.0+0.0)x100.0, glue set 0.97
+.|glue(|leftskip) 3.0
+.|hbox(0.0+0.0)x0.0
+.|mathon
+.|hbox(0.0+0.0)x0.0
+..|ip t
+..|ip t
+..|glue 0.0 plus -1.0fil
+.|mathoff
+.|penalty 10000
+.|glue(|parfillskip) 0.0 plus 100.0
+.|glue(|rightskip) 0.0
+|glue(|parskip) 0.0 plus 42.0 minus 8.0
+|glue(|baselineskip) 10.0
+|hbox(0.0+0.0)x1.42262, glue set - 0.20552
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x0.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x0.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x4.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+|glue(|baselineskip) 10.0
+|hbox(0.0+0.0)x1.42262, glue set - 0.20552
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x0.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x0.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x4.0
+..|glue 4.0 plus 2.0 minus 88.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+|glue(|lineskip) 0.0 plus 40.0
+|hbox(3545.60136+140.80052)x2070.00168
+.|glue 6.0 plus 4.0 minus 44.0
+.|mathon
+.|hbox(3545.60136+140.80052)x614.40031
+..|hbox(1638.40019+409.6015)x614.40031, shifted -268.80098
+...|enorm b
+..|vbox(3545.60136+0.0)x0.0
+...|kern1638.40019
+...|rule(1638.40019+0.0)x*
+...|kern268.80098
+...|hbox(0.0+0.0)x0.0
+.|glue(|thinmuskip) -0.00002 plus 2.0fill minus -0.00005
+.|hbox(109.40036+95.40038)x1446.60138
+..|vbox(-1.00002+26.9999)x7.0, shifted -20.99995
+...|hbox(-1.00002+2.0)x7.0
+....|ip ^^@
+...|hbox(-1.00002+2.0)x7.0
+....|ip ^^@
+...|hbox(-1.00002+2.0)x7.0
+....|ip ^^@
+...|hbox(-1.00002+2.0)x7.0
+....|ip ^^@
+...|hbox(7.0+1.0)x3.0
+....|ip A
+...|hbox(-1.00002+2.0)x7.0
+....|ip ^^@
+...|hbox(-1.00002+2.0)x7.0
+....|ip ^^@
+...|hbox(-1.00002+2.0)x7.0
+....|ip ^^@
+...|hbox(-1.00002+2.0)x7.0
+....|ip ^^@
+...|hbox(8.0+2.0)x3.0
+....|ip B
+..|ip A
+..|kern1.0
+..|ip a
+..|kern1.0
+..|hbox(-204.80077+409.6015)x1433.60138, shifted -314.20113
+...|enorm ^^@
+.|mathoff
+.|ip A (ligature AA)
+.|kern 1.0
+|glue(|parskip) 0.0 plus 42.0 minus 8.0
+|glue(|lineskip) 0.0 plus 40.0
+|hbox(0.0+0.0)x100.0, glue set 0.97
+.|glue(|leftskip) 3.0
+.|hbox(0.0+0.0)x0.0
+.|penalty 10000
+.|glue(|parfillskip) 0.0 plus 100.0
+.|glue(|rightskip) 0.0
+|penalty 97
+|glue(|baselineskip) 10.0
+|hbox(0.0+0.0)x0.03079
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x0.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+|penalty 97
+|penalty 97
+|glue(|baselineskip) 10.0
+|hbox(0.0+0.0)x0.03079
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x0.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+|penalty 97
+|glue(|baselineskip) 10.0
+|hbox(0.0+0.0)x0.03079
+.|glue(|tabskip) 0.0154 minus 3.21002
+.|hbox(0.0+0.0)x0.0
+.|glue(|tabskip) 0.0154 minus 3.21002
+|penalty 97
+|glue(|parskip) 0.0 plus 42.0 minus 8.0
+|glue(|baselineskip) 10.0
+|hbox(0.0+0.0)x100.0, glue set 0.966
+.|glue(|leftskip) 3.0
+.|hbox(0.0+0.0)x0.0
+.|rule(*+*)x0.4
+.|penalty 10000
+.|glue(|parfillskip) 0.0 plus 100.0
+.|glue(|rightskip) 0.0
+total height 3796.40189 plus 332.0 plus 2.0fil plus -803.0fill minus 49.
+0
+ goal height 16383.99998
+### recent contributions:
+|rule(0.4+0.0)x*
+prevdepth ignored, prevgraf 1 line
+
+! OK.
+|showlonglists ...99 |showlists
+ |pagegoal =10000pt}
+l.439 ...\endgroup\showlonglists
+ $}\showboxbreadth9\showboxdepth9
+
+{restoring |showboxdepth=1}
+{restoring |showboxbreadth=2}
+{restoring |tracingcommands=2}
+{math shift character $}
+{restoring |fam=0}
+{restricted horizontal mode: end-group character }}
+{restoring |x=|char"C8}
+{vertical mode: |showboxbreadth}
+{|showboxdepth}
+
+^^M->|relax
+{|relax}
+{|showbox}
+> \box9=
+|hbox(19.6+1.0)x100.98999
+.|vbox(17.0+1.0)x100.0
+..|hbox(7.0+1.0)x100.0, glue set 0.85294
+...|glue(|leftskip) 3.0
+...|hbox(0.0+0.0)x0.0
+...|discretionary
+...|glue 0.0 plus 2.0 minus 88.0
+...|ip A (ligature BB)
+...|kern2.0
+...|ip A (ligature BB)
+...|kern2.0
+...|ip A (ligature BB)
+...etc.
+..|glue(|parskip) 0.0 plus 42.0 minus 8.0
+..|glue(|baselineskip) 2.0
+..|hbox(7.0+1.0)x100.0, glue set 0.85294
+...|glue(|leftskip) 3.0
+...|hbox(0.0+0.0)x0.0
+...|discretionary
+...|glue 0.0 plus 2.0 minus 88.0
+...|ip A (ligature BB)
+...|kern2.0
+...|discretionary replacing 3
+....|ip B
+...||ip A (ligature BB)
+...||kern2.0
+...||ip B
+...|ip A (ligature BB)
+...|kern2.0
+...etc.
+.|mathon
+.|vbox(19.6+0.0)x0.99
+..|kern10.0
+..|hbox(3.5+4.1)x0.99
+...|smalltrip A
+...|hbox(0.0+0.0)x-0.01, shifted 4.1
+..|kern2.0
+..|hbox(0.0+0.0)x0.99, glue set 0.49501fil
+...|glue 0.0 plus 1.0fil minus 1.0fil
+...|vbox(0.0+0.0)x0.0
+....|glue 0.0 plus 1.0fil minus 1.0fil
+...|glue 0.0 plus 1.0fil minus 1.0fil
+.|glue(|thinmuskip) -0.00002 plus 2.0fill minus -0.00005
+.|hbox(0.0+0.0)x0.0
+.|mathoff
+
+! OK.
+<to be read again>
+ |PAR
+l.440 \showbox9\PAR
+ {\output{}\penalty-10001\deadcycles=2}\scr...
+
+{|par}
+{begin-group character {}
+{|output}
+{|penalty}
+% t=3796.80188 plus 332.0 plus 2.0fil plus -803.0fill minus 49.0 g=10000
+.0 b=0 p=-10001 c=-10001#
+[-2.2.-1118806.0.11.196608.327680.1572864.1073741823]
+Memory usage before: 895&439; after: 290&420; still untouched: 175
+{|deadcycles}
+{end-group character }}
+{restoring |output={|showthe |deadcycles |global |advance |ETC.}
+{|scrollmode}
+
+{|hbox}
+{restricted horizontal mode: |write}
+{|showlists}
+
+### restricted horizontal mode entered at line 441
+|write-{|if 01{|else unbal}|fi }
+spacefactor 1000
+### vertical mode entered at line 0
+prevdepth ignored, prevgraf 1 line
+
+! OK.
+l.441 ...se unbal}\fi}\showlists
+ \tracingonline1%
+
+{|tracingonline}
+{|escapechar}
+{^^?global}
+{^^?global}
+{end}
+! Missing } inserted.
+<inserted text>
+ }
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+I've inserted something that you may have forgotten.
+(See the <inserted text> above.)
+With luck, this will get me unwedged. But if you
+really didn't forget anything, try typing `2' now; then
+my insertion and my current dilemma will both disappear.
+
+{end-group character }}
+{retaining escapechar=256}
+{restoring tracingonline=0}
+%% goal height=16383.99998, max depth=2.0
+{vertical mode: end}
+% t=20.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+% t=20.0 plus 1.0fil plus 1.0fill g=16383.99998 b=0 p=-1073741824 c=-107
+3741824#
+output->{showthe deadcycles global advance countz by1global globaldefs -
+1 gdef local {}unvbox 255end rb }
+{internal vertical mode: showthe}
+> 3.
+<output> {showthe deadcycles
+ global advance countz by1global ...
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+
+{global}
+{global}
+{gdef}
+{unvbox}
+{end}
+! You can't use `end' in internal vertical mode.
+<recently read> end
+
+<output> ...cal {}unvbox 255end
+ rb }
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+Sorry, but I'm not programmed to handle this case;
+I'll just pretend that you didn't ask for it.
+If you're in the wrong mode, you might be able to
+return to the right one by typing `I}' or `I$' or `I\par'.
+
+{end-group character }}
+! Unbalanced output routine.
+<output> ... {}unvbox 255end rb
+ }
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+Your sneaky output routine has problematic {'s and/or }'s.
+I can't handle that very well; good luck.
+
+{restoring local=undefined}
+%% goal height=16383.99998, max depth=2.0
+% t=20.0 plus 1.0fil g=16383.99998 b=0 p=0 c=0#
+{vertical mode: end}
+% t=20.0 plus 1.0fil plus 1.0fill g=16383.99998 b=0 p=0 c=0#
+% t=20.0 plus 1.0fil plus 2.0fill g=16383.99998 b=0 p=-1073741824 c=-107
+3741824#
+! Output loop---3 consecutive dead cycles.
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+I've concluded that your \output is awry; it never does a
+\shipout, so I'm shipping \box255 out myself. Next time
+increase \maxdeadcycles if you want me to be more patient!
+
+
+Completed box being shipped out [-1.2.-1118806.0.11.196608.327680.157286
+4.1073741823]
+vbox(16383.99998+0.0)x100.0, glue set 8182.0fill
+.glue(topskip) 20.0 plus 1.0fil
+.hbox(0.0+0.0)x0.0
+..write-{if 01{else unbal}fi }
+.hbox(0.0+0.0)x100.0
+.glue 0.0 plus 1.0fill
+.penalty 10000
+.hbox(0.0+0.0)x100.0
+.glue 0.0 plus 1.0fill
+
+write->if 01{else unbal}fi
+{no mode: if}
+{false}
+
+! Unbalanced write command.
+<write> if 01{else unbal}fi
+
+<inserted text>
+ }endwrite
+<to be read again>
+ end
+l.442 ...lobal\escapechar256\end
+
+On this page there's a \write with fewer real {'s than }'s.
+I can't handle that very well; good luck.
+
+unbal
+Memory usage before: 334&431; after: 292&418; still untouched: 175
+{vertical mode: end}
+ )
+(end occurred inside a group at level 1)
+(end occurred when if on line 442 was incomplete)
+(end occurred when ifcase on line 419 was incomplete)
+(end occurred when iftrue on line 413 was incomplete)
+Here is how much of TeX's memory you used:
+ 47 strings out of 1674
+ 251 string characters out of 8353
+ 2825 words of memory out of 3000
+ 372 multiletter control sequences out of 2100
+ 3041 words of font info for 4 fonts, out of 20000 for 75
+ 2 hyphenation exceptions out of 307
+ 5i,7n,9p,113b,38s stack positions out of 200i,40n,60p,500b,600s
+
+Output written on trip.dvi (16 pages, 2920 bytes).
diff --git a/Build/source/texk/web2c/triptrap/trip.pl b/Build/source/texk/web2c/triptrap/trip.pl
new file mode 100644
index 00000000000..6a38a92316b
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trip.pl
@@ -0,0 +1,833 @@
+(FAMILY UNSPECIFIED)
+(FACE F MRR)
+(CODINGSCHEME TEX TEST: NOT A REAL FONT)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 32107654321)
+(FONTDIMEN
+ (SLANT R -2.0)
+ (SPACE R 0.400001)
+ (STRETCH R 0.200001)
+ (SHRINK R 0.1)
+ (XHEIGHT R 0.45)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.200001)
+ (PARAMETER D 8 R 0.05)
+ (PARAMETER D 9 R 0.1)
+ (PARAMETER D 10 R 0.200001)
+ (PARAMETER D 11 R 0.3)
+ (PARAMETER D 12 R 0.400001)
+ (PARAMETER D 13 R 0.5)
+ )
+(BOUNDARYCHAR C Z)
+(LIGTABLE
+ (LABEL C t)
+ (KRN O 0 R -1.0)
+ (KRN O 0 R -0.01)
+ (KRN O 0 R -0.02)
+ (KRN O 0 R -0.03)
+ (KRN O 0 R -0.04)
+ (KRN O 0 R -0.05)
+ (KRN O 0 R -0.06)
+ (KRN O 0 R -0.07)
+ (KRN O 0 R -0.08)
+ (KRN O 0 R -0.09)
+ (KRN O 0 R -0.1)
+ (KRN O 0 R -0.11)
+ (KRN O 0 R -0.12)
+ (KRN O 0 R -0.13)
+ (KRN O 0 R -0.14)
+ (KRN O 0 R -0.15)
+ (KRN O 0 R -0.16)
+ (KRN O 0 R -0.17)
+ (KRN O 0 R -0.18)
+ (KRN O 0 R -0.19)
+ (KRN O 0 R -0.2)
+ (KRN O 0 R -0.21)
+ (KRN O 0 R -0.22)
+ (KRN O 0 R -0.23)
+ (KRN O 0 R -0.24)
+ (KRN O 0 R -0.25)
+ (KRN O 0 R -0.26)
+ (KRN O 0 R -0.27)
+ (KRN O 0 R -0.28)
+ (KRN O 0 R -0.29)
+ (KRN O 0 R -0.3)
+ (KRN O 0 R -0.31)
+ (KRN O 0 R -0.32)
+ (KRN O 0 R -0.33)
+ (KRN O 0 R -0.34)
+ (KRN O 0 R -0.35)
+ (KRN O 0 R -0.36)
+ (KRN O 0 R -0.37)
+ (KRN O 0 R -0.38)
+ (KRN O 0 R -0.39)
+ (KRN O 0 R -0.4)
+ (KRN O 0 R -0.41)
+ (KRN O 0 R -0.42)
+ (KRN O 0 R -0.43)
+ (KRN O 0 R -0.44)
+ (KRN O 0 R -0.45)
+ (KRN O 0 R -0.46)
+ (KRN O 0 R -0.47)
+ (KRN O 0 R -0.48)
+ (KRN O 0 R -0.49)
+ (KRN O 0 R -0.5)
+ (KRN O 0 R -0.51)
+ (KRN O 0 R -0.52)
+ (KRN O 0 R -0.53)
+ (KRN O 0 R -0.54)
+ (KRN O 0 R -0.55)
+ (KRN O 0 R -0.56)
+ (KRN O 0 R -0.57)
+ (KRN O 0 R -0.58)
+ (KRN O 0 R -0.59)
+ (KRN O 0 R -0.6)
+ (KRN O 0 R -0.61)
+ (KRN O 0 R -0.62)
+ (KRN O 0 R -0.63)
+ (KRN O 0 R -0.64)
+ (KRN O 0 R -0.65)
+ (KRN O 0 R -0.66)
+ (KRN O 0 R -0.67)
+ (KRN O 0 R -0.68)
+ (KRN O 0 R -0.69)
+ (KRN O 0 R -0.7)
+ (KRN O 0 R -0.71)
+ (KRN O 0 R -0.72)
+ (KRN O 0 R -0.73)
+ (KRN O 0 R -0.74)
+ (KRN O 0 R -0.75)
+ (KRN O 0 R -0.76)
+ (KRN O 0 R -0.77)
+ (KRN O 0 R -0.78)
+ (KRN O 0 R -0.79)
+ (KRN O 0 R -0.8)
+ (KRN O 0 R -0.81)
+ (KRN O 0 R -0.82)
+ (KRN O 0 R -0.83)
+ (KRN O 0 R -0.84)
+ (KRN O 0 R -0.85)
+ (KRN O 0 R -0.86)
+ (KRN O 0 R -0.87)
+ (KRN O 0 R -0.88)
+ (KRN O 0 R -0.89)
+ (KRN O 0 R -0.9)
+ (KRN O 0 R -0.91)
+ (KRN O 0 R -0.92)
+ (KRN O 0 R -0.93)
+ (KRN O 0 R -0.94)
+ (KRN O 0 R -0.95)
+ (KRN O 0 R -0.96)
+ (KRN O 0 R -0.97)
+ (KRN O 0 R -0.98)
+ (KRN O 0 R -0.99)
+ (KRN O 0 R -1.0)
+ (KRN O 0 R -1.01)
+ (KRN O 0 R -1.02)
+ (KRN O 0 R -1.03)
+ (KRN O 0 R -1.04)
+ (KRN O 0 R -1.05)
+ (KRN O 0 R -1.06)
+ (KRN O 0 R -1.07)
+ (KRN O 0 R -1.08)
+ (KRN O 0 R -1.09)
+ (KRN O 0 R -1.1)
+ (KRN O 0 R -1.11)
+ (KRN O 0 R -1.12)
+ (KRN O 0 R -1.13)
+ (KRN O 0 R -1.14)
+ (KRN O 0 R -1.15)
+ (KRN O 0 R -1.16)
+ (KRN O 0 R -1.17)
+ (KRN O 0 R -1.18)
+ (KRN O 0 R -1.19)
+ (KRN O 0 R -1.2)
+ (KRN O 0 R -1.21)
+ (KRN O 0 R -1.22)
+ (KRN O 0 R -1.23)
+ (KRN O 0 R -1.24)
+ (KRN O 0 R -1.25)
+ (KRN O 0 R -1.26)
+ (KRN O 0 R -1.27)
+ (KRN O 0 R -1.28)
+ (KRN O 0 R -1.29)
+ (KRN O 0 R -1.3)
+ (KRN O 0 R -1.31)
+ (KRN O 0 R -1.32)
+ (KRN O 0 R -1.33)
+ (KRN O 0 R -1.34)
+ (KRN O 0 R -1.35)
+ (KRN O 0 R -1.36)
+ (KRN O 0 R -1.37)
+ (KRN O 0 R -1.38)
+ (KRN O 0 R -1.39)
+ (KRN O 0 R -1.4)
+ (KRN O 0 R -1.41)
+ (KRN O 0 R -1.42)
+ (KRN O 0 R -1.43)
+ (KRN O 0 R -1.44)
+ (KRN O 0 R -1.45)
+ (KRN O 0 R -1.46)
+ (KRN O 0 R -1.47)
+ (KRN O 0 R -1.48)
+ (KRN O 0 R -1.49)
+ (KRN O 0 R -1.5)
+ (KRN O 0 R -1.51)
+ (KRN O 0 R -1.52)
+ (KRN O 0 R -1.53)
+ (KRN O 0 R -1.54)
+ (KRN O 0 R -1.55)
+ (KRN O 0 R -1.56)
+ (KRN O 0 R -1.57)
+ (KRN O 0 R -1.58)
+ (KRN O 0 R -1.59)
+ (KRN O 0 R -1.6)
+ (KRN O 0 R -1.61)
+ (KRN O 0 R -1.62)
+ (KRN O 0 R -1.63)
+ (KRN O 0 R -1.64)
+ (KRN O 0 R -1.65)
+ (KRN O 0 R -1.66)
+ (KRN O 0 R -1.67)
+ (KRN O 0 R -1.68)
+ (KRN O 0 R -1.69)
+ (KRN O 0 R -1.7)
+ (KRN O 0 R -1.71)
+ (KRN O 0 R -1.72)
+ (KRN O 0 R -1.73)
+ (KRN O 0 R -1.74)
+ (KRN O 0 R -1.75)
+ (KRN O 0 R -1.76)
+ (KRN O 0 R -1.77)
+ (KRN O 0 R -1.78)
+ (KRN O 0 R -1.79)
+ (KRN O 0 R -1.8)
+ (KRN O 0 R -1.81)
+ (KRN O 0 R -1.82)
+ (KRN O 0 R -1.83)
+ (KRN O 0 R -1.84)
+ (KRN O 0 R -1.85)
+ (KRN O 0 R -1.86)
+ (KRN O 0 R -1.87)
+ (KRN O 0 R -1.88)
+ (KRN O 0 R -1.89)
+ (KRN O 0 R -1.9)
+ (KRN O 0 R -1.91)
+ (KRN O 0 R -1.92)
+ (KRN O 0 R -1.93)
+ (KRN O 0 R -1.94)
+ (KRN O 0 R -1.95)
+ (KRN O 0 R -1.96)
+ (KRN O 0 R -1.97)
+ (KRN O 0 R -1.98)
+ (KRN O 0 R -1.99)
+ (KRN O 0 R -2.0)
+ (KRN O 0 R -2.01)
+ (KRN O 0 R -2.02)
+ (KRN O 0 R -2.03)
+ (KRN O 0 R -2.04)
+ (KRN O 0 R -2.05)
+ (KRN O 0 R -2.06)
+ (KRN O 0 R -2.07)
+ (KRN O 0 R -2.08)
+ (KRN O 0 R -2.09)
+ (KRN O 0 R -2.1)
+ (KRN O 0 R -2.11)
+ (KRN O 0 R -2.12)
+ (KRN O 0 R -2.13)
+ (KRN O 0 R -2.14)
+ (KRN O 0 R -2.15)
+ (KRN O 0 R -2.16)
+ (KRN O 0 R -2.17)
+ (KRN O 0 R -2.18)
+ (KRN O 0 R -2.19)
+ (KRN O 0 R -2.2)
+ (KRN O 0 R -2.21)
+ (KRN O 0 R -2.22)
+ (KRN O 0 R -2.23)
+ (KRN O 0 R -2.24)
+ (KRN O 0 R -2.25)
+ (KRN O 0 R -2.26)
+ (KRN O 0 R -2.27)
+ (KRN O 0 R -2.28)
+ (KRN O 0 R -2.29)
+ (KRN O 0 R -2.3)
+ (SKIP D 3)
+ (LABEL O 55)
+ (LIG O 0 O 55)
+ (/LIG> C q C p)
+ (LABEL O 57)
+ (KRN C A R 0.1)
+ (STOP)
+ (KRN O 0 R -2.31)
+ (KRN O 0 R -2.32)
+ (KRN O 0 R -2.33)
+ (KRN O 0 R -2.34)
+ (KRN O 0 R -2.35)
+ (KRN O 0 R -2.36)
+ (KRN O 0 R -2.37)
+ (KRN O 0 R -2.38)
+ (KRN O 0 R -2.39)
+ (KRN O 0 R -2.4)
+ (KRN O 0 R -2.41)
+ (KRN O 0 R -2.42)
+ (KRN O 0 R -2.43)
+ (KRN O 0 R -2.44)
+ (KRN O 0 R -2.45)
+ (KRN O 0 R -2.46)
+ (KRN O 0 R -2.47)
+ (KRN O 0 R -2.48)
+ (KRN O 0 R -2.49)
+ (KRN O 0 R -2.5)
+ (KRN O 0 R -2.51)
+ (KRN O 0 R -2.52)
+ (KRN O 0 R -2.53)
+ (KRN O 0 R -2.54)
+ (KRN O 0 R -2.55)
+ (KRN O 0 R -2.56)
+ (KRN O 0 R -2.57)
+ (/LIG/>> C r C s)
+ (SKIP D 9)
+ (LABEL C p)
+ (/LIG/ C q C r)
+ (/LIG/> C r C t)
+ (LIG C t C t)
+ (STOP)
+ (LABEL C q)
+ (/LIG/ C u C p)
+ (/LIG/ C s C r)
+ (KRN C t R 0.1)
+ (/LIG> C r C t)
+ (SKIP D 2)
+ (LABEL C r)
+ (LIG/ C u C q)
+ (/LIG C q C u)
+ (STOP)
+ (/LIG/ C p C s)
+ (KRN C s R 0.3)
+ (STOP)
+ (LABEL C s)
+ (LIG/> C p C q)
+ (KRN C r R 0.1)
+ (STOP)
+ (LABEL C u)
+ (/LIG C Z C p)
+ (LIG C p C r)
+ (STOP)
+ (LABEL BOUNDARYCHAR)
+ (LIG/ C q C q)
+ (/LIG C 1 C 5)
+ (KRN O 55 R -0.1)
+ (STOP)
+ (LABEL C 1)
+ (/LIG/ C 1 C 2)
+ (/LIG/ C 2 C 3)
+ (/LIG> O 55 C 1)
+ (SKIP D 1)
+ (LABEL C 2)
+ (/LIG/ C 1 C 3)
+ (/LIG/ C 3 C 4)
+ (SKIP D 2)
+ (LABEL C 3)
+ (/LIG/ C 1 C 4)
+ (/LIG/ C 2 C 4)
+ (/LIG/ C 4 C 5)
+ (SKIP D 3)
+ (LABEL C 4)
+ (/LIG/ C 1 C 5)
+ (/LIG/ C 2 C 5)
+ (/LIG/ C 3 C 5)
+ (/LIG/ C 5 C 6)
+ (SKIP D 4)
+ (LABEL C 5)
+ (/LIG/ C 1 C 6)
+ (/LIG/ C 2 C 6)
+ (/LIG/ C 3 C 6)
+ (/LIG/ C 4 C 6)
+ (/LIG/ C 6 C 7)
+ (SKIP D 5)
+ (LABEL C 6)
+ (/LIG/ C 1 C 7)
+ (/LIG/ C 2 C 7)
+ (/LIG/ C 3 C 7)
+ (/LIG/ C 4 C 7)
+ (/LIG/ C 5 C 7)
+ (/LIG/>> C Z C 7)
+ (STOP)
+ (LABEL C 7)
+ (KRN C Z R 0.1)
+ (LABEL C A)
+ (LIG C A C A)
+ (KRN C B R 0.200001)
+ (KRN O 55 R 0.3)
+ (KRN C 1 R -0.200001)
+ (STOP)
+ (LABEL C B)
+ (LIG C B C A)
+ (LIG O 55 C C)
+ (KRN C C R 0.400001)
+ (STOP)
+ (LABEL C C)
+ (LIG C A O 202)
+ (LIG O 57 C B)
+ (STOP)
+ )
+(CHARACTER O 0
+ (CHARWD R 0.700001)
+ (CHARHT R -0.1)
+ (CHARDP R 0.200001)
+ )
+(CHARACTER O 55
+ (CHARWD R -0.5)
+ (COMMENT
+ (LIG O 0 O 55)
+ (/LIG> C q C p)
+ (KRN C A R 0.1)
+ )
+ )
+(CHARACTER O 57
+ (CHARWD R 0.1)
+ (COMMENT
+ (KRN C A R 0.1)
+ )
+ )
+(CHARACTER C 1
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG/ C 1 C 2)
+ (/LIG/ C 2 C 3)
+ (/LIG> O 55 C 1)
+ (/LIG/ C 3 C 4)
+ (/LIG/ C 4 C 5)
+ (/LIG/ C 5 C 6)
+ (/LIG/ C 6 C 7)
+ (/LIG/>> C Z C 7)
+ )
+ )
+(CHARACTER C 2
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG/ C 1 C 3)
+ (/LIG/ C 3 C 4)
+ (/LIG/ C 4 C 5)
+ (/LIG/ C 5 C 6)
+ (/LIG/ C 6 C 7)
+ (/LIG/>> C Z C 7)
+ )
+ )
+(CHARACTER C 3
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG/ C 1 C 4)
+ (/LIG/ C 2 C 4)
+ (/LIG/ C 4 C 5)
+ (/LIG/ C 5 C 6)
+ (/LIG/ C 6 C 7)
+ (/LIG/>> C Z C 7)
+ )
+ )
+(CHARACTER C 4
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG/ C 1 C 5)
+ (/LIG/ C 2 C 5)
+ (/LIG/ C 3 C 5)
+ (/LIG/ C 5 C 6)
+ (/LIG/ C 6 C 7)
+ (/LIG/>> C Z C 7)
+ )
+ )
+(CHARACTER C 5
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG/ C 1 C 6)
+ (/LIG/ C 2 C 6)
+ (/LIG/ C 3 C 6)
+ (/LIG/ C 4 C 6)
+ (/LIG/ C 6 C 7)
+ (/LIG/>> C Z C 7)
+ )
+ )
+(CHARACTER C 6
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG/ C 1 C 7)
+ (/LIG/ C 2 C 7)
+ (/LIG/ C 3 C 7)
+ (/LIG/ C 4 C 7)
+ (/LIG/ C 5 C 7)
+ (/LIG/>> C Z C 7)
+ )
+ )
+(CHARACTER C 7
+ (CHARWD R 0.0)
+ (COMMENT
+ (KRN C Z R 0.1)
+ (LIG C A C A)
+ (KRN C B R 0.200001)
+ (KRN O 55 R 0.3)
+ (KRN C 1 R -0.200001)
+ )
+ )
+(CHARACTER C A
+ (CHARWD R 0.200001)
+ (CHARHT R 0.700001)
+ (CHARDP R 0.1)
+ (CHARIC R 0.1)
+ (COMMENT
+ (LIG C A C A)
+ (KRN C B R 0.200001)
+ (KRN O 55 R 0.3)
+ (KRN C 1 R -0.200001)
+ )
+ )
+(CHARACTER C B
+ (CHARWD R 0.3)
+ (CHARHT R 0.8)
+ (CHARDP R 0.200001)
+ (COMMENT
+ (LIG C B C A)
+ (LIG O 55 C C)
+ (KRN C C R 0.400001)
+ )
+ )
+(CHARACTER C C
+ (CHARWD R 0.400001)
+ (COMMENT
+ (LIG C A O 202)
+ (LIG O 57 C B)
+ )
+ )
+(CHARACTER C M
+ (CHARWD R 0.6)
+ (CHARIC R 0.200001)
+ (VARCHAR
+ (MID C A)
+ (BOT C B)
+ (REP O 0)
+ )
+ )
+(CHARACTER C a
+ (CHARWD R 0.200001)
+ (CHARHT R 0.700001)
+ (CHARDP R 0.1)
+ (CHARIC R 0.1)
+ (NEXTLARGER O 202)
+ )
+(CHARACTER C b
+ (CHARWD R 0.3)
+ (CHARHT R 0.8)
+ (CHARDP R 0.200001)
+ (NEXTLARGER C M)
+ )
+(CHARACTER C p
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG/ C q C r)
+ (/LIG/> C r C t)
+ (LIG C t C t)
+ )
+ )
+(CHARACTER C q
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG/ C u C p)
+ (/LIG/ C s C r)
+ (KRN C t R 0.1)
+ (/LIG> C r C t)
+ (/LIG/ C p C s)
+ (KRN C s R 0.3)
+ )
+ )
+(CHARACTER C r
+ (CHARWD R 0.0)
+ (COMMENT
+ (LIG/ C u C q)
+ (/LIG C q C u)
+ )
+ )
+(CHARACTER C s
+ (CHARWD R 0.0)
+ (COMMENT
+ (LIG/> C p C q)
+ (KRN C r R 0.1)
+ )
+ )
+(CHARACTER C t
+ (CHARWD R 0.0)
+ (COMMENT
+ (KRN O 0 R -1.0)
+ (KRN O 0 R -0.01)
+ (KRN O 0 R -0.02)
+ (KRN O 0 R -0.03)
+ (KRN O 0 R -0.04)
+ (KRN O 0 R -0.05)
+ (KRN O 0 R -0.06)
+ (KRN O 0 R -0.07)
+ (KRN O 0 R -0.08)
+ (KRN O 0 R -0.09)
+ (KRN O 0 R -0.1)
+ (KRN O 0 R -0.11)
+ (KRN O 0 R -0.12)
+ (KRN O 0 R -0.13)
+ (KRN O 0 R -0.14)
+ (KRN O 0 R -0.15)
+ (KRN O 0 R -0.16)
+ (KRN O 0 R -0.17)
+ (KRN O 0 R -0.18)
+ (KRN O 0 R -0.19)
+ (KRN O 0 R -0.2)
+ (KRN O 0 R -0.21)
+ (KRN O 0 R -0.22)
+ (KRN O 0 R -0.23)
+ (KRN O 0 R -0.24)
+ (KRN O 0 R -0.25)
+ (KRN O 0 R -0.26)
+ (KRN O 0 R -0.27)
+ (KRN O 0 R -0.28)
+ (KRN O 0 R -0.29)
+ (KRN O 0 R -0.3)
+ (KRN O 0 R -0.31)
+ (KRN O 0 R -0.32)
+ (KRN O 0 R -0.33)
+ (KRN O 0 R -0.34)
+ (KRN O 0 R -0.35)
+ (KRN O 0 R -0.36)
+ (KRN O 0 R -0.37)
+ (KRN O 0 R -0.38)
+ (KRN O 0 R -0.39)
+ (KRN O 0 R -0.4)
+ (KRN O 0 R -0.41)
+ (KRN O 0 R -0.42)
+ (KRN O 0 R -0.43)
+ (KRN O 0 R -0.44)
+ (KRN O 0 R -0.45)
+ (KRN O 0 R -0.46)
+ (KRN O 0 R -0.47)
+ (KRN O 0 R -0.48)
+ (KRN O 0 R -0.49)
+ (KRN O 0 R -0.5)
+ (KRN O 0 R -0.51)
+ (KRN O 0 R -0.52)
+ (KRN O 0 R -0.53)
+ (KRN O 0 R -0.54)
+ (KRN O 0 R -0.55)
+ (KRN O 0 R -0.56)
+ (KRN O 0 R -0.57)
+ (KRN O 0 R -0.58)
+ (KRN O 0 R -0.59)
+ (KRN O 0 R -0.6)
+ (KRN O 0 R -0.61)
+ (KRN O 0 R -0.62)
+ (KRN O 0 R -0.63)
+ (KRN O 0 R -0.64)
+ (KRN O 0 R -0.65)
+ (KRN O 0 R -0.66)
+ (KRN O 0 R -0.67)
+ (KRN O 0 R -0.68)
+ (KRN O 0 R -0.69)
+ (KRN O 0 R -0.7)
+ (KRN O 0 R -0.71)
+ (KRN O 0 R -0.72)
+ (KRN O 0 R -0.73)
+ (KRN O 0 R -0.74)
+ (KRN O 0 R -0.75)
+ (KRN O 0 R -0.76)
+ (KRN O 0 R -0.77)
+ (KRN O 0 R -0.78)
+ (KRN O 0 R -0.79)
+ (KRN O 0 R -0.8)
+ (KRN O 0 R -0.81)
+ (KRN O 0 R -0.82)
+ (KRN O 0 R -0.83)
+ (KRN O 0 R -0.84)
+ (KRN O 0 R -0.85)
+ (KRN O 0 R -0.86)
+ (KRN O 0 R -0.87)
+ (KRN O 0 R -0.88)
+ (KRN O 0 R -0.89)
+ (KRN O 0 R -0.9)
+ (KRN O 0 R -0.91)
+ (KRN O 0 R -0.92)
+ (KRN O 0 R -0.93)
+ (KRN O 0 R -0.94)
+ (KRN O 0 R -0.95)
+ (KRN O 0 R -0.96)
+ (KRN O 0 R -0.97)
+ (KRN O 0 R -0.98)
+ (KRN O 0 R -0.99)
+ (KRN O 0 R -1.0)
+ (KRN O 0 R -1.01)
+ (KRN O 0 R -1.02)
+ (KRN O 0 R -1.03)
+ (KRN O 0 R -1.04)
+ (KRN O 0 R -1.05)
+ (KRN O 0 R -1.06)
+ (KRN O 0 R -1.07)
+ (KRN O 0 R -1.08)
+ (KRN O 0 R -1.09)
+ (KRN O 0 R -1.1)
+ (KRN O 0 R -1.11)
+ (KRN O 0 R -1.12)
+ (KRN O 0 R -1.13)
+ (KRN O 0 R -1.14)
+ (KRN O 0 R -1.15)
+ (KRN O 0 R -1.16)
+ (KRN O 0 R -1.17)
+ (KRN O 0 R -1.18)
+ (KRN O 0 R -1.19)
+ (KRN O 0 R -1.2)
+ (KRN O 0 R -1.21)
+ (KRN O 0 R -1.22)
+ (KRN O 0 R -1.23)
+ (KRN O 0 R -1.24)
+ (KRN O 0 R -1.25)
+ (KRN O 0 R -1.26)
+ (KRN O 0 R -1.27)
+ (KRN O 0 R -1.28)
+ (KRN O 0 R -1.29)
+ (KRN O 0 R -1.3)
+ (KRN O 0 R -1.31)
+ (KRN O 0 R -1.32)
+ (KRN O 0 R -1.33)
+ (KRN O 0 R -1.34)
+ (KRN O 0 R -1.35)
+ (KRN O 0 R -1.36)
+ (KRN O 0 R -1.37)
+ (KRN O 0 R -1.38)
+ (KRN O 0 R -1.39)
+ (KRN O 0 R -1.4)
+ (KRN O 0 R -1.41)
+ (KRN O 0 R -1.42)
+ (KRN O 0 R -1.43)
+ (KRN O 0 R -1.44)
+ (KRN O 0 R -1.45)
+ (KRN O 0 R -1.46)
+ (KRN O 0 R -1.47)
+ (KRN O 0 R -1.48)
+ (KRN O 0 R -1.49)
+ (KRN O 0 R -1.5)
+ (KRN O 0 R -1.51)
+ (KRN O 0 R -1.52)
+ (KRN O 0 R -1.53)
+ (KRN O 0 R -1.54)
+ (KRN O 0 R -1.55)
+ (KRN O 0 R -1.56)
+ (KRN O 0 R -1.57)
+ (KRN O 0 R -1.58)
+ (KRN O 0 R -1.59)
+ (KRN O 0 R -1.6)
+ (KRN O 0 R -1.61)
+ (KRN O 0 R -1.62)
+ (KRN O 0 R -1.63)
+ (KRN O 0 R -1.64)
+ (KRN O 0 R -1.65)
+ (KRN O 0 R -1.66)
+ (KRN O 0 R -1.67)
+ (KRN O 0 R -1.68)
+ (KRN O 0 R -1.69)
+ (KRN O 0 R -1.7)
+ (KRN O 0 R -1.71)
+ (KRN O 0 R -1.72)
+ (KRN O 0 R -1.73)
+ (KRN O 0 R -1.74)
+ (KRN O 0 R -1.75)
+ (KRN O 0 R -1.76)
+ (KRN O 0 R -1.77)
+ (KRN O 0 R -1.78)
+ (KRN O 0 R -1.79)
+ (KRN O 0 R -1.8)
+ (KRN O 0 R -1.81)
+ (KRN O 0 R -1.82)
+ (KRN O 0 R -1.83)
+ (KRN O 0 R -1.84)
+ (KRN O 0 R -1.85)
+ (KRN O 0 R -1.86)
+ (KRN O 0 R -1.87)
+ (KRN O 0 R -1.88)
+ (KRN O 0 R -1.89)
+ (KRN O 0 R -1.9)
+ (KRN O 0 R -1.91)
+ (KRN O 0 R -1.92)
+ (KRN O 0 R -1.93)
+ (KRN O 0 R -1.94)
+ (KRN O 0 R -1.95)
+ (KRN O 0 R -1.96)
+ (KRN O 0 R -1.97)
+ (KRN O 0 R -1.98)
+ (KRN O 0 R -1.99)
+ (KRN O 0 R -2.0)
+ (KRN O 0 R -2.01)
+ (KRN O 0 R -2.02)
+ (KRN O 0 R -2.03)
+ (KRN O 0 R -2.04)
+ (KRN O 0 R -2.05)
+ (KRN O 0 R -2.06)
+ (KRN O 0 R -2.07)
+ (KRN O 0 R -2.08)
+ (KRN O 0 R -2.09)
+ (KRN O 0 R -2.1)
+ (KRN O 0 R -2.11)
+ (KRN O 0 R -2.12)
+ (KRN O 0 R -2.13)
+ (KRN O 0 R -2.14)
+ (KRN O 0 R -2.15)
+ (KRN O 0 R -2.16)
+ (KRN O 0 R -2.17)
+ (KRN O 0 R -2.18)
+ (KRN O 0 R -2.19)
+ (KRN O 0 R -2.2)
+ (KRN O 0 R -2.21)
+ (KRN O 0 R -2.22)
+ (KRN O 0 R -2.23)
+ (KRN O 0 R -2.24)
+ (KRN O 0 R -2.25)
+ (KRN O 0 R -2.26)
+ (KRN O 0 R -2.27)
+ (KRN O 0 R -2.28)
+ (KRN O 0 R -2.29)
+ (KRN O 0 R -2.3)
+ (KRN O 0 R -2.31)
+ (KRN O 0 R -2.32)
+ (KRN O 0 R -2.33)
+ (KRN O 0 R -2.34)
+ (KRN O 0 R -2.35)
+ (KRN O 0 R -2.36)
+ (KRN O 0 R -2.37)
+ (KRN O 0 R -2.38)
+ (KRN O 0 R -2.39)
+ (KRN O 0 R -2.4)
+ (KRN O 0 R -2.41)
+ (KRN O 0 R -2.42)
+ (KRN O 0 R -2.43)
+ (KRN O 0 R -2.44)
+ (KRN O 0 R -2.45)
+ (KRN O 0 R -2.46)
+ (KRN O 0 R -2.47)
+ (KRN O 0 R -2.48)
+ (KRN O 0 R -2.49)
+ (KRN O 0 R -2.5)
+ (KRN O 0 R -2.51)
+ (KRN O 0 R -2.52)
+ (KRN O 0 R -2.53)
+ (KRN O 0 R -2.54)
+ (KRN O 0 R -2.55)
+ (KRN O 0 R -2.56)
+ (KRN O 0 R -2.57)
+ (/LIG/>> C r C s)
+ (/LIG/ C p C s)
+ (KRN C s R 0.3)
+ )
+ )
+(CHARACTER C u
+ (CHARWD R 0.0)
+ (COMMENT
+ (/LIG C Z C p)
+ (LIG C p C r)
+ )
+ )
+(CHARACTER O 202
+ (CHARWD R 0.400001)
+ )
diff --git a/Build/source/texk/web2c/triptrap/trip.tex b/Build/source/texk/web2c/triptrap/trip.tex
new file mode 100644
index 00000000000..a9205e52d5e
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trip.tex
@@ -0,0 +1,448 @@
+% This is a diabolical test file for TeX82. Watch your step.
+\immediate\catcode `{ = 1 \endlinechar=13
+\catcode `} = 2
+\catcode `$ = 3 {\catcode`$13\gdef\dol{$}}
+\catcode `& = 4
+\let\paR=\par
+\let\%=\relax
+\outer\xdef\par{\catcode `\% 14}
+ % this line should change % from type 5 to type 14
+\let\par=\paR \defaulthyphenchar=`- \defaultskewchar=256
+\ifx\initex\undefined \def\initex{} % next lines are skipped if format loaded
+ \catcode `# = 6 \catcode `U=\catcode`# % # for parameters
+ \catcode `^ = 7 \catcode `| = 8 % ^ for superscripts and | for subscripts
+ \catcode `~ = 9 % ~ will be ignored
+ \catcode `* = 10 % * will be like a space
+ \catcode `E = 12 % E is not a letter
+ \catcode`\@ = 15 % @ will be invalid
+ \catcode `^^A = 0008 % this is another way to get a subscript
+ \catcode `\^^@ = 11 % a strange letter will be allowed
+ \catcode `\^^? = \badness % and so will a strange escape delimiter
+ \fontdimen12\nullfont=13pt % give the null font more parameters
+ \font\trip = trip\relax % see TRIP.PL for details of this font
+ ^^?trip \font\smalltrip=trip scaled 500 % this will be our symbols font
+ \global\fontdimen22\smalltrip 7pt % the axis height
+ \textfont2=\smalltrip \scriptfont2 \smalltrip \scriptscriptfont2 \smalltrip
+ \nonstopmode\lccode256-0\mathchardef\a="8000\def\a{ SCALED 3~2769}
+ \font\rip=trip\a % font \rip will be the same as \trip
+ \skewchar\rip=`B \countdef\countz % \countz will be \count0
+ \def\on{1} \toksdef\tokens=256 \show\errorstopmode
+ \showthe\font \showthe\pageshrink \showthe\pagegoal
+ \font\bigtr^^@p=trip at20pt\textfont3=\bigtr^^@p % this will be extension font
+ \skip200 = 10pt plUs5fil\ifdim\hsize<\hsize\fi lllminus 0 fill
+ \setbox200=\vbox{\hrule\vskip\skip200} \wd200-2pt \setbox100=\hbox{A}
+ \skipdef\shkip100\shkip -18pt plus\catcode`\}fil minus 10fil
+ \advance\shkip by \skip200 \dimen33=3pt \count33=-\dimen33
+ \divide\shkip by \count33
+ \multiply\shkip by \count33 % so \skip100=-6pt plus 3filll minus 9fil
+ \count200 -5 \multiply\count200 by -100 % \count200 is 500
+ \count100=1000000 \divide\count100 by \count200 % \count100 is 2000
+ \dimen100=,00152587890625in % (100/65536)in = 7227sp
+ \multiply\dimen100 by 65536 \divide\dimen100 by 9 % \dimen100 is 803pt
+ \lineskip 0pt plus 40pt
+ \baselineskip=10pt plus 41pt
+ \parskip -0pt plus 42pt minus 8pt
+ \splittopskip 1pt plus 43pt
+ \splitmaxdepth -2pt \boxmaxdepth 1000pt
+ \belowdisplayskip 3pt plus 44pt minus\baselineskip \abovedisplayskip3pt
+ \abovedisplayshortskip 1pt plus 45pt minus\dimen100
+ \belowdisplayshortskip -\count33sp plus 46pt
+ \global\mathchardef\minus"232D % mathbin, family 3, character "2D (-)
+ \thinmuskip 1mu plus 2fill minus 3mu
+ \medmuskip 2mu minus 3mu
+ \thickmuskip -4mu
+ \def\gobble#1{} \floatingpenalty 100 \holdinginserts1
+ \everypar{A\insert200{\baselineskip400pt\splittopskip\count15pt\hbox{\vadjust
+ {\penalty999}}\hbox to -10pt{}}\showthe\pagetotal\showthe\pagegoal
+ \advance\count15by1\mark{\the\count15}\splitmaxdepth-1pt
+ \paR\gobble} % this aborts every paragraph abruptly
+ \def\weird#1{\csname\expandafter\gobble\string#1 \string\csname\endcsname}
+ \message{\the\output\weird\one on line \the\inputlineno}
+ \hyphenpenalty 88 \exhyphenpenalty 89 \badness
+ \clubpenalty 125 \widowpenalty 125 \displaywidowpenalty -125
+ \brokenpenalty 37
+ \interlinepenalty -125
+ \doublehyphendemerits 1000
+ \finalhyphendemerits 100000
+ \mag 2000 \righthyphenmin=1000000000
+ \delimiterfactor 10 \delimitershortfall 190pt
+ \showboxbreadth 55 \showboxdepth 9999 \chardef\nul0\def\0{\nul}
+ \tracingstats=4 \tracinglostchars=2 \tracingparagraphs\day \tracingpages\year
+ \chardef\?=`b \lccode`A=1 \let\^^bbb \hyphenchar\trip=1
+ \language-1\hyphenation\relax{b-\?-\char`b -\^^bb-^^62-^^" -t- }\lccode`149
+ {\everypar{\parindent\\\looseness-1}\skipdef\\8\language\?\\.01014pt\patterns
+ {0111}\emergencystretch9pt\language255\patterns{\the\\} % \patterns{.01015pt}
+ {\language256\patterns{0111 \?50AA1b3 *1AcA. bb bb1 0B2B0 b1c}} % *==space
+ \pretolerance-1\setbox0=\hbox{11}\setbox0=\hbox{\hbadness100\valign{#\cr
+ \hskip-9pt7A\righthyphenmin0\setlanguage\?\unhbox0{*\language`b11\noboundary}
+ 1Z1pts\patterns{q9q} -\0qq \showlists{\language\?\noboundary111}%
+ \hyphenchar\rip=`-\cr}}\patterns{toolate}\showbox0}
+ \showboxbreadth 9999\lefthyphenmin=2\righthyphenmin=3
+ \nulldelimiterspace --+.1pt \mathcode`q="3171
+ \scriptspace\if00-0.\fi\ifnum'\ifnum10=10 12="\fi
+ A 01p\ifdim1,0pt<`^^Abpt\fi\fi % this boils down to -0.01pt
+ \overfullrule 5pt \voffset-2pt
+ \def\sh{\ifnum\count4>10\else\dimen5=\count4pt
+ \advance\dimen5 by 10pt
+ \xdef\a{\a\the\count4pt \the\dimen5}
+ \advance\count4 by 1 \sh\fi}
+ \count4=1 \def\a{} \sh % \def\a{1pt 11pt 2pt 12pt ... 10pt 20pt}
+ \let\next=\dump \everyjob{\message{#}}
+\else\let\next=\relax\fi
+\next % if no format was preloaded, this will dump the trip.fmt file and halt
+\tracingcommands2\tracingrestores+2\write-1{log file only\the\prevgraf}
+\openout-'78terminal \openout10=tr\romannumeral1 \gobble\newcs pos
+\write10{} % writing three lines on tripos.tex (the first line is empty)
+\write10{\uppercase{\number{\outputpenalty}}} % 0{\outputpenalty} + error
+\write10{[\uppercase{\romannumeral-\the\outputpenalty}[} % "mmmmmmmmmm" (-10000)
+\vsize 2000pt
+\vbadness=1
+\topskip 20pt plus 1fil
+\penalty -12345 % this will be ignored since the page is still empty
+\maxdepth=2pt
+\tracingoutput\on
+\moveleft20pt\copy200
+\moveright20pt\hbox{\vrule depth20pt height-19pt width1pt}
+\penalty-10000 % now we'll compute silently for awhile, after default output
+\batchmode\output={\tracingcommands0\showthe\outputpenalty
+ \showboxbreadth 9999 \showboxdepth 9999 \hoffset1sp
+ {\setbox 254=\box255\shipout\ifvbox2\ifhbox254 \error\fi54\copy25\fi4}
+ \ifvoid 254\relax\else\error\fi
+ }
+\setbox255\vbox{}
+\dimen200=10000pt
+{\output{\dimen 9=\ht200\count5=\dimen9\global\countz=\outputpenalty
+ \ifnum\holdinginserts>0\global\holdinginserts0\unvbox255\penalty\countz
+ \else\setbox255\copy255 % at end of group, \box255 reverts to former value
+ \shipout\hbox{\box100\box200\vsplit 255 to 55pt}
+ \unvcopy255\showlists\showthe\insertpenalties\showthe\pageshrink
+ \globaldefs1\halign{#\tabskip\lineskip\cr}
+ \showboxdepth1\showboxbreadth2\fi
+ \message{\topmark:\firstmark:\botmark:\splitfirstmark:\splitbotmark}}
+ \insert100{\def\box{\vbox to 267.7pt{}} \vskip0pt plus 1fil
+ \baselineskip 0pt \lineskip 0pt minus .4pt
+ \box \penalty-101 \box \penalty-100 \box \penalty-1000
+ } % since \dimen100=803pt<3*267.7pt, the insertion splits;
+ % and the natural height+depth of the split-off part is 267.7pt;
+ % now since \count100=2000,
+ % this insertion adds about 535.4pt to the current page
+ \topskip1pt plus 44pt
+ \vbox spread 1000pt{} % beginning of new page
+ \insertpenalties=-50\penalty12345
+ \cleaders\hbox{\lower2pt\vbox to 17pt{}
+ \leaders\hrule\hskip10pt
+ \cleaders\hbox{A}\hskip 9pt % the A is 2pt wide
+ \leaders\hbox{A}\hskip 9pt
+ \xleaders\hbox{A}\hskip 9pt
+ \write111{\help} % \write will be ignored in leaders
+ }\vskip50pt minus 10pt
+ \mark{alpha}
+ AAA\everypar=\errhelp % because of previous \everypar, this makes 3 paragraphs
+ % and each paragraph consists of A\insert 200{400pt of stuff}\mark{n}
+ % but \count200=500 so the inserts are rated 200pt each
+ % so the third insertion will be split
+ \kern-50pt
+ A\hfill\vadjust{\newlinechar128\special{^^80\the\prevdepth}\penalty-5000}%
+ \penalty-1000000000 % forces line break in paragraph
+ % this is not the end of paragraph
+ A\par\insert200{\vskip10000pt\floatingpenalty3}% this insert will be held over
+ \pagefilstretch-1pt\showthe\insertpenalties\penalty99999999\showlists
+ \showthe\pagefilllstretch\vskip 1000pt\penalty-333\hbox to 23pt{} % output now
+ \vsize.pt\global\vsize=16383.99999237060546875pt % page size \approx infinity
+ } % now we revert to the former output routine
+{\tracingoutput-2\tracingstats1\shipout\hbox{\closeout10\closeout-10}}
+\showthe\everypar
+\everypar{}\showthe\everypar
+\def\showlonglists{{\tracingcommands0\pagefillstretch-1\dimen100
+ \showboxbreadth 9999 \showboxdepth 9999 \showlists \pagegoal=10000pt}}
+\tracingmacros=1
+\def\t12#101001#{-.#1pt} \let\T=\t
+\dimendef\varunit=222\varunit=+1,001\ifdim.5\mag>0cc0\fi1pt
+\ifdim -0.01001\varunit=\t120100101001001{\relax}\else\error\fi
+\countz=-1
+\ifodd\count0\advance\countz by -1\fi
+\penalty -12345 % output the remaining stuff
+\tracingmacros\tracingstats % the next part tests line-break computations
+% the two competing ways to set the paragraph have respective demerits
+% (30+l)^2+(30+l)^2+a and (51+l)^2+l^2, where a=adjdemerits, l=linepenalty
+\adjdemerits=782
+\linepenalty=1
+\def\1#1{\hbox to#1pt{}}
+\valign{\baselineskip20ptplus1pt\global\parfillskip0pt
+ \global\global\leftskip4pt
+ \rightskip-1pt
+ \global\hsize13pt
+ \setbox2\12
+ \noindent\copy2\hskip2pt plus5pt minus1pt
+ \copy2\hskip5pt minus2pt
+ \lower2pt\11\hskip3pt % this affects depth of the second line
+ \copy2 \hskip2pt plus.5pc
+ \box2#\cr
+ \noalign{\spacefactor=2000\global\xspaceskip=-1pt}
+ \noalign{ \vrule width0pt{ }}
+ \cr % set that paragraph with a=782, l=1 (demerits 2704 vs 2705)
+ \adjdemerits=784 \cr % increase a, so the second alternative is better
+ \linepenalty=2\hbadness=51\cr % increase l by 1, suppress diagnostic typeout
+ \noalign{ \spacefactor=1}}\message{\the\spacefactor}
+{\hsize1000pt\par\parindent1pt\indent}\leftskip3pt\def\?{\vrule width-2pt
+ \hbox spread2pt{}}\noindent\indent\hbox spread2pt{\hskip0pt plus-1bp}%
+\discretionary{\?AAAB}{\?B-}{\?/A\kern2pt}\unkern % the widths are 7pt, 4pt, 6pt
+\showthe\lastkern\vbox{\hrule width 6pt} \par % should set with nothing overfull
+\penalty-22222 % end of demerits test, hyphenation is next
+\looseness-10
+\uchyph=1
+\hsize 100pt
+A /A\char`A BBBBCACAC//% that becomes /k[AA]k[BB]k[BB][CA][CA][C/]/,
+ % where [] means a ligature and k means a kern.
+ % the word "aabbbbcaca" should be hyphenated to "aa1b3b2b2b1c1aca",
+ % which becomes {[AA]k-||[AA]k}{B-|[BB]kBk|[BB][BB]}{-||}{C-|A|[CA]}[CA]
+ % if I use the notation {x|y|z} for \discretionary{x}{y}{z}.
+\vadjust{\uchyph=0\ BBBBBB}% underfull box will show no hyphens
+\vadjust{\ \closeout1BBBBBB}{\hyphenchar\trip`C}% this time we get hyphens
+\hyphenation{BbB-BbB}\vadjust{\ BBBBBB\kern0ptB}% different hyphens
+\hyphenchar\rip`-\vadjust{\def\B{B}\ \pretolerance10000 B\B BBBB} % no hyphens
+
+\hbox{\sfcode`B=1234AB aB }\noindent \scriptscriptfont3 \smalltrip
+$$\eqno^{}$\scriptfont3=\rip\fontdimen2\smalltrip=0pt
+{\rightskip0pt plus 104pt minus 100fil
+ \looseness 5 \spaceskip 4pt plus 2pt minus 1fil
+ A\spacefactor32767\discretionary{}{\kern2pt-}{B\kern2pt} C$ \scriptfont2=\trip
+ \mathsurround143pt$ C $\mathsurround40pt$$\mathsurround60pt\hbox{$$}$\par}
+\uccode`m=`A\font\mumble=mumble\input tripos % "AAAAAAAAAA"+errors
+\par\penalty-33333 % end hyphenation, math is next
+{\catcode`?=13 \font?xyzzy at0pt\font ? xyzzy scaled1?} % nonexistent
+\font\enorm=trip at 2047.999992370605468749999 pt
+\font\ip trip at -10pt % through the looking glass
+\showthe$
+\showthe\font
+\message{\fontname\ip}
+\rip
+\textfont1=\font \scriptfont1=\smalltrip \scriptscriptfont1=\bigtr^^@p % [sick]
+\def\symbolpar #1*#2*#3*{\global\fontdimen#1\smalltrip = #3 pt}
+{\tracingmacros-1
+ \symbolpar8 num1 9.1
+ \symbolpar9 num2 9.2
+ \symbolpar10 num3 9.3
+ \symbolpar11 denom1 3.1
+ \symbolpar12 denom2 3.2
+ \symbolpar13 sup1 8.1
+ \symbolpar"E sup2 8.2
+ \symbolpar15 sup3 8.3
+ \symbolpar16 sub1 4.1
+ \symbolpar17 sub2 4.2
+ \symbolpar18 supdrop 0.3
+ \symbolpar19 subdrop 0.4
+ \symbolpar20 delim1 10
+ \symbolpar21 delim2 20
+ }
+\mathcode`+='20457 % mathbin, family 1, character '57 (/)
+\mathcode`=="322D % mathrel, family 2, character "2D (-)
+\delcode`["161361 % small (family 1, character "61 (a)), large (3,"61)
+\catcode`(=13 \catcode`(=13 \mathcode`y"7320\mathcode`z"8000
+\def({\delimiter"4162362 }{\catcode`z=13\global\let z=(}
+\parshape 10 \a \chardef\x200
+\hangindent- \parshape pt\hangafter-12% \parshape will take precedence
+\begingroup
+\looseness 2
+\rightskip 0pt plus 10fil minus 1sp
+\--\--\char-0-A\- % this makes lines 1 to 3
+$$\number\the\delcode`\relax\over{{{}}}}\pagestretch=-1\pagetotal\showlists
+\begingroup\halign to\the\displaywidth{#&#\crcr\crcr\cr} % makes lines 4--6
+\global\count6=\displayindent
+\predisplaypenalty=101
+\global\postdisplaypenalty-\predisplaysize* \global\setbox=
+\eqno % another error (actually causes two error messages and inserts $$)
+\looseness-2
+$\right\relax\mathchardef\minus="322D % locally \minus is the same as =
+\left.A\over A\abovewithdelims.?\right(+\mskip1A\minus=A+\penalty+1000A
+\relpenalty-2222
+\binoppenalty-3333
+\mathsurround.11em$\x % this formula goes on line 7
+$$ % here we begin a hairy display that covers lines 8 to 10
+\vadjust{\penalty7}\mkern-9mu\the\prevgraf \prevgraf=8 \insert255{\penalty999}
+\x\vcenter spread-2pt{} {\mathaccent"32D {A}}|-
+^{\raise 2pt\hbox{a}\displaystyle\char`+\textstyle}
+\overline{^A A|\minus\mathinner{}^
+ {A \mathchar"141 \char`B^^A{\mathaccent"7161
+ {\mathop A \mathbin A \mathopen A \mathpunct A\mathclose A \mathrel A
+ \global\scriptscriptfont0=\trip
+ \mathaccent"161 {\fam13A9\the\scriptscriptfont-1}}}}}
+\mathop\char`B^\mathchar"143
+\mathop b\nolimits\limits|C
+\mathord \radical"161 % missing { will be inserted
+ {\textstyle\radical"282382{\left(\scriptscriptstyle\mathop{\underline{
+ A\atop\displaystyle A|{A\hfil\over B\nonscript\kern1pt}^=}}
+ \nolimits|{\mathop y\nonscript\textstyle\nonscript\mskip9mu minus1fil
+ \showthe\lastskip B\abovewithdelims(.2pt\displaylimits}^z
+ \discretionary{\showthe\spacefactor-}{\smalltrip A\hss}{\smalltrip A}
+ \right[A}}}
+\let\penalty=\minus \aftergroup\expandafter
+\eqno\aftergroup\relax\scriptstyle\penalty % reader, be alert
+(\mathpunct{AA}
+|{B\fam1-}^{\hbox{A}}{\above9pt{v\overwithdelims..
+ \displaystyle{pq\atopwithdelims((\vrule height 9pt}}
+ \show\penalty \showlonglists
+ $\expandafter$\csname!\endcsname % end of hairy display, missing } inserted
+\parshape=-1 % now the hanging indentation is relevant
+\leftskip \parshape pt plus -10fil
+\spacefactor1\raise1pt\hbox{\special{\the\hangafter} } \penalty-10000
+\showbox0\spacefactor=0
+\write10{\the\spacefactor}\par % it's illegal to \write the space factor
+} % this fails to match \begingroup
+\aftergroup\lccode\aftergroup`\endgroup A`a % this restores \parshape
+\mark{\the\spacefactor} % \spacefactor: not in vertical mode
+$$\global\count7=\predisplaysize
+\mskip18mu minus 18mu \catcode`J=13 \catcode`j=\the\catcode`J \def j{\relax}
+\vtop to\displaywidth{\everydisplay{\global}\vbox to -1sp{}\noindent$$
+ \count9=\predisplaysize\lowercase{AaJ}$\ifvmode$\fi}\hss
+\leqno\mathchardef A\/\left(\over\left(\global\errorcontextlines5$$
+
+\hangindent1pt\par\showthe\hangindent\hangindent 254cm
+\parfillskip 0pt plus 100pt \fontdimen6\the\scriptfont2=-19sp
+\the\fam % begins a paragraph, but there's no 0 in the font
+A \char'202$$\global\count8=\predisplaysize\leqno\kern1009pt$\par
+\showlists {\catcode`!13\global\everyhbox{\def!{}}}
+\count5=\lastskip % \lastskip=3pt (\belowdisplayskip)
+\baselineskip 10pt
+{\sfcode`A=500\vfuzz18pt\everyvbox{ }% overfull \vbox won't be shown: 37-8=11+18
+ \vbox to 11pt{\hsize 10pt\tolerance 1 A A A A A\clubpenalty10000\par
+ \hbadness100\hfuzz 3pt A A A A A\leaders\vrule\hskip5pt\par}
+ \message{\the\badness}}
+\vbox to 10pt{\hbadness 99\hfuzz1pt\hbox to 0pt{\hskip 10pt minus 9pt}
+ \hbadness100\hbox to 10bp{\hskip 0pt plus 10pt}\tracingcommands1
+ \if\the\badness\fi\message{\the\badness}}\lineskiplimit-1pt\everyhbox{}
+\def\space{ } \dimendef\df=188 \dimen188=1pt
+\vbox to 11pt{\tracinglostchars-9 A\/\space\space\ignorespaces\space\space J
+ \vskip2pt\moveleft1pt\vbox to10pt{\boxmaxdepth=-1pt\mark{vii}}\vskip3pt
+ \unskip\setbox22=\lastbox\showthe\lastskip % \lastskip=-1pt (\baselineskip)
+ \unskip\vskip-\lastskip\kern\lastkern\penalty\lastkern\showbox22}
+\showbox22\kern3pt\message{\the\lastkern}\unkern
+\show\botmark \catcode`;13\def;{\setbox`; }
+\lineskiplimit-0.9999 \space\df\space\count9 0
+\vbox\space to 11pt{\accent\x\space\accent\space"42 \def\^^M{\ } ; \char'101
+ A\ \fontdimen 4 \trip = 88 pt\ \spaceskip 2 pt \
+ \vskip 10pt minus 10pt}
+\penalty-2147483647 % that's the largest value TeX will scan
+\penalty-2147483648 % see?
+\tabskip 1009.9sp minus .25cc % and now for alignment tests
+\let\A=\relax\count1=2{\errhelp{all is lost}\errmessage{}}
+\def\d#1\d{#1#1} \looseness-1
+\setbox3=\vtop{\vskip-3mm} % this box has a depth of -3mm
+\halign spread-12.truedd{&#\span\iftrue\A\span\else\span\fi\span&
+ \vbox{\halign to 0pt{\t2\dp3\A\crcr}#A}
+ &\hss\tabskip1ex plus7200bp minus 4\wd4\d#\d\cr % \d#\d becomes (erroneous) ##
+ \global\let\t=\tabskip \spaceskip=4pt minus 1sp
+ \def\A{B}\def\xx{\global\gdef\A{\global\count\count1=####\cr
+ \omit\cr\tabskip}}\expandafter\xx\span % please don't ask what this does
+ A&\omit\valign to -5pt{#&#\cr A\char`}\span\cr{ }\span\cr}\cr
+ \global\edef\A{\uppercase{
+ \message{\fontname\smalltrip\the\font\romannumeral1009}\lowercase{vq}} }
+ \lccode`Q=`b \span\omit$$\span\A&\show\cr\omit\cr
+ \noalign{\global\prevdepth20pt\errmessage{\count2=\the\count2}}
+ \omit\mark{a}&\omit\mark{b}\cr} % \count2 was set to -6mm=-1118806sp
+\errmessage{\prevdepth=\the\prevdepth}
+\penalty-88888 % end alignment test, now miscellaneous error messages
+\newlinechar`Y\global\unskip\show^^Y\newlinechar\lastpenalty\unpenalty\unkern
+\lastbox\penalty5\message{\the\lastpenalty\the\newlinechar}\textfont16=\relax
+\outer\def{}?
+\dimen5=-'7777777777sp\showthe\dimen5 % this should be OK
+\dimen6=-'40000pt\showthe\dimen6 % this should overflow
+\dimen7=.51\dimen5\showthe\dimen7 \multiply\dimen7 2\showthe\dimen7
+\a^^@^^@a@ % an undefined control sequence followed by invalid character
+{\aftergroup\gobble\aftergroup\c\gdef\b{\c} \def\c{} \b} % \c undefined
+\def\b#1\par{}
+\outer\gdef\a^^@^^@a#1\par#2{}\tokens{\a^^@^^@a\par!
+\long\gdef\l#1{}
+\outer\global\long\edef\lo#1#2U3#4#5#6#7#8#8#9#{\relax}
+\ifcase 1 \undefined\or\l\par\b{\par % occurrence of \par aborts \b
+\b{\l\undefined}\par\else\b{\par}\fi % but not there!
+\ifcase\iftrue-1a\else\fi \ifcase0\fi\else\ifcase5\fi\fi
+\catcode`^^C = 6 % another parameter symbol
+\let\^^C=\halign
+\def\^^@^^C{}
+\^^C{{\span\ifcase3 \lo#\cr............89{}\cr} % runaway preamble?
+\def\a^^C1{\d#1\d\l{#2}\l#1\par\a^^@^^@a#1\par# % runaway in definition; #2 bad
+\xdef\a^^C1{\d#1\d\l{#2}\l#1\par\a^^@^^@a#1\par# % runaway in definition; #2 OK!
+\T^^?a^^@^^@a\par{\lo\par % runaway in use
+\lo\par\par\par P \par\par\par\par\par\par89{} \muskip3=-\thickmuskip
+\muskipdef\shmip=3 \shmip=5mu plus \muskip3minus.5\shmip \showthe\shmip
+{\advance\shmip by \shkip\endlinechar-1
+\divide\shmip by \shkip\endlinechar`}
+\global\multiply\shmip by 2
+\showthe\shmip
+\div^^)de\count88
+By ^^p \toks1={\a\test}
+^\leaders\vrule\mskip\shmip M\leaders\hrule\nonscript\hskip\thinmuskip
+
+{\setbox3\hbox{\vfill\vsplit 3 0pt}
+\def\a#2{}
+\show A
+\show\a^^@^^@a
+\show (
+\message{\meaning\lo\noexpand\lo}
+\show\^^C
+\show\batchmode
+\show\error
+\showthe\output
+\showthe\thinmuskip
+\showthe\fontdimen1\enorm
+\ifx T\span\else\par\if\span\else\else\else\fi\fi
+\ifdim72p\iftrue t1i\fi n\fi\fi \message{\jobname\ifx\lo\lo OK}\fi
+\hangindent 2pt
+{\if 11 \prevgraf=-1\if 0123\error\else\relax\fi\else\error\fi
+ \prevgraf1\global\hangafter=2}\showthe\hangafter\showthe\prevgraf
+\char'203\showthe\prevgraf$\indent\mark{twain}
+\setbox3\hbox{\vrule}&\moveleft\lastbox % can't do that in math mode
+\unhbox234\unhcopy3\accent\x\vfill\vfil\vfilneg\vss % \vfill exits, \vss bad
+\def\a}{\let\a\xyzzy\csname a\endcsname}
+\def\a{ab
+
+ \c}\def\b{ab*\par\c}\let\c\b \def\b{\a\c} \ifx\a\ifx \.
+\else\expandafter\ifx\b \ifinner\error\else\relax\fi\else\error\fi\fi
+\ifvmode$\ifmmode\hbox tt\ifhmode\hfilneg\else\error\fi}$\fi\fi % missing {
+\noalign\omit\endcsname % these are extra
+\fontdimen 1000=20\varunit\showthe\fontdimen1000\trip\let\PAR=\par
+\gdef\par{\relax\PAR}\expandafter\ifx\csname xyzzy\endcsname\relax \mag=1999
+
+\fi\noindent{\halign to 1truemm\expandafter{\csname#\endcsname#&#&\l{#}\cr
+ \global\futurelet\endt\foo&\show\endt&$&&&.}
+
+\hbox{\/\hrule\textfont3=\enorm\prevdepth\advance\xspaceskip by-\xspaceskip
+ \spacefactor2000{ }\everymath{\radical"3}\fontdimen2\rip=0pt
+ $62{}\delimiterfactor1600\left(Aa\right\delimiter"300$AA\/}
+\openin 15 tripos\closein 15\iftrue{\ifeof 15\openin 100 tripos
+ \def\loop{\ifeof 0\let\loop=\relax\else{\global\read0to \a}\show\a\fi\loop}
+ \catcode`015\catcode`[1\outer\def\uppercase{}\loop}\else\fi
+}\def\test#1{\let\test= }\test. \show\test
+\def\a#1{\ifcat#1 \message\ifx#1 {\iffalse\fi\the\tokens\fi\fi}}
+\pretolerance-1\tokens\toks1\unhbox16\par\everycr{\noalign{\penalty97}}
+\the\tokens\ifcase1\or\ifeof\fi\def\stopinput{\error\let\input\die}
+\let\lb={\let\rb=}\halign\relax{\span\iffalse}\fi\cr#&\ifnum0=`{\fi\cr\cr}
+\let\e\expandafter\def\trap#1{}\def\unbalanced{\halign\lb}\unbalanced#\cr
+ \relax\e\e\e\err\e\e\e\endt\e\trap\cr\noexpand\cr}
+
+\expandafter\stopinput\input tripos\endinput\input % one line of tripos
+\setbox10=\vbox to8192pt{\hbox{\hbox{\vadjust{A}}}}\vrule\unhbox10\hrule
+\output{\showthe\deadcycles\global\advance\countz by1\global\globaldefs-1
+ \gdef\local{}\unvbox255\end\rb}\futurelet\dump\maxdeadcycles=3\show\dump
+\catcode`q=7 \catcode`\qqM=0 \expandafter\let\csname^^Mendcsname=\^^@\relax
+\relax\catcode`\qq1qM=13 \defqqM{\relax}#\begingroup{\showboxdepth=4\showbox10}
+
+\long\def\l#1\l{#1}\immediate\write10{\string\caution \l} % living dangerously
+\escapechar`|\tracingoutput0\shipout\vbox{\copy10qq5e^5cbox10}
+\setbox9\hbox{\fontdimen8\rip 0pt % \over becomes \atop in \scriptstyle
+ \afterassignment\relax\advance\prevdepth\afterassignment\relax\futurelet\x
+ \message{\noexpand\l\meaning\l\the\skewchar\ip}\vbox{\hyphenchar\ip-1%
+ \-\ BBBBBB\par\hyphenchar\ip`?\-\ BBBBBB}\if$\expandafter\noexpand\dol\fi%
+ \expandafter\expandafter\noexpand\undefined\noexpand\expandafter%
+ $\begingroup\mathop{\vbox{\vss}}\limits^\mathchoice{}a}{A|{}}{\mathchoice}
+ {}{\relax{}{B\over}\endgroup\showlonglists$}\showboxbreadth9\showboxdepth9
+\showbox9\PAR{\output{}\penalty-10001\deadcycles=2}\scrollmode%
+\hbox{\write-100000{\if01{\else unbal}\fi}\showlists\tracingonline1%
+\escapechar127\global\tracingoutput1\global\escapechar256\end
+% things not tested:
+% interaction (error insertion/deletion, interrupts, \pausing, files not there)
+% system-dependent parsing of file names, areas, extensions
+% certain error messages, especially fatal ones
+% things that can't happen in INITEX
+% unusual cases of fixed-point arithmetic
diff --git a/Build/source/texk/web2c/triptrap/trip.typ b/Build/source/texk/web2c/triptrap/trip.typ
new file mode 100644
index 00000000000..dbbc07ded00
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trip.typ
@@ -0,0 +1,1215 @@
+This is DVItype, Version 3.6
+Options selected:
+ Starting page = *.*.*.*.*.*.*.*.*.*
+ Maximum number of pages = 1000000
+ Output level = 2 (mnemonics)
+ Resolution = 72.27000000 pixels per inch
+numerator/denominator=25400000/473628672
+magnification=2000; 0.00003052 pixels per DVI unit
+' TeX output 2002.12.20:2128'
+
+42: beginning of page 0.0.0.0.11.0.0.0.0.0
+87: down4 129105920
+92: down3 655360
+96: push
+97: right3 1310720
+[ ]
+101: down3 1310720
+105: setrule height 65536, width 65536
+114: pop
+115: eop
+
+116: beginning of page -5000.0.0.0.11.53110374.0.0.0.0
+161: push
+162: down4 116090475
+167: push
+168: right3 262144
+[ ]
+172: setrule height 26214, width 655360
+181: right3 32773
+[ ]
+185: push
+186: fntdef1 0: trip---loaded at size 655360 DVI units
+ (this font is magnified 200%)
+206: fntnum0
+207: setchar65
+[A]
+208: pop
+209: w3 131072
+[ ]
+213: push
+214: setchar65
+[A]
+215: pop
+216: w0 131072
+[ ]
+217: push
+218: setchar65
+[A]
+219: pop
+220: w0 131072
+[ ]
+221: push
+222: setchar65
+[A]
+223: pop
+224: right3 229371
+[ ]
+228: push
+229: setchar65
+[A]
+230: pop
+231: w0 131072
+[ ]
+232: push
+233: setchar65
+[A]
+234: pop
+235: w0 131072
+[ ]
+236: push
+237: setchar65
+[A]
+238: pop
+239: w0 131072
+[ ]
+240: push
+241: setchar65
+[A]
+242: pop
+243: w3 144181
+[ ]
+247: push
+248: setchar65
+[A]
+249: pop
+250: w0 144181
+[ ]
+251: push
+252: setchar65
+[A]
+253: pop
+254: w0 144181
+[ ]
+255: push
+256: setchar65
+[A]
+257: pop
+258: w0 144181
+[ ]
+259: push
+260: setchar65
+[A]
+261: pop
+262: pop
+263: down3 1114112
+267: push
+268: right3 262144
+[ ]
+272: setrule height 26214, width 655360
+281: right3 32773
+285: push
+286: setchar65
+[A]
+287: pop
+288: w3 131072
+[ ]
+292: push
+293: setchar65
+[A]
+294: pop
+295: w0 131072
+[ ]
+296: push
+297: setchar65
+[A]
+298: pop
+299: w0 131072
+[ ]
+300: push
+301: setchar65
+[A]
+302: pop
+303: right3 229371
+[ ]
+307: push
+308: setchar65
+[A]
+309: pop
+310: w0 131072
+[ ]
+311: push
+312: setchar65
+[A]
+313: pop
+314: w0 131072
+[ ]
+315: push
+316: setchar65
+[A]
+317: pop
+318: w0 131072
+[ ]
+319: push
+320: setchar65
+[A]
+321: pop
+322: w3 144181
+[ ]
+326: push
+327: setchar65
+[A]
+328: pop
+329: w0 144181
+[ ]
+330: push
+331: setchar65
+[A]
+332: pop
+333: w0 144181
+[ ]
+334: push
+335: setchar65
+[A]
+336: pop
+337: w0 144181
+[ ]
+338: push
+339: setchar65
+[A]
+340: pop
+341: pop
+342: pop
+343: eop
+
+344: beginning of page 10000.0.0.0.11.131072.0.0.0.0
+389: push
+390: down4 32460719
+395: push
+396: fntnum0
+397: setchar65
+[A]
+398: down3 65536
+402: setrule height 524288, width 327680
+411: pop
+412: y3 1880637
+416: push
+417: setchar65
+[A]
+418: down3 65536
+422: setrule height 524288, width 327680
+431: pop
+432: y0 1880637
+433: push
+434: setchar65
+[A]
+435: down3 65536
+439: setrule height 524288, width 327680
+448: pop
+449: down3 -1396163
+453: push
+454: setchar65
+[A]
+455: down3 65536
+459: setrule height 524288, width 327680
+468: pop
+469: pop
+470: eop
+
+471: beginning of page -333.0.0.0.11.655360000.0.0.0.0
+516: push
+517: down4 651689984
+522: xxx '?-1000.0pt' non-ASCII character in xxx command!
+534: down3 655360
+538: push
+539: fntnum0
+540: setchar65
+[A]
+541: down3 65536
+545: setrule height 524288, width 327680
+554: pop
+555: pop
+556: eop
+
+557: beginning of page -333.0.0.0.11.0.0.0.0.0
+602: eop
+
+603: beginning of page -2.0.0.0.11.0.0.0.0.0
+648: eop
+
+649: beginning of page -2.0.0.0.11.0.0.0.0.0
+694: down4 1001310720
+699: push
+700: push
+701: push
+702: down3 -1441792
+706: down3 1441792
+710: pop
+711: pop
+712: push
+713: push
+714: down3 -1441792
+718: down3 1310720
+722: pop
+723: pop
+724: push
+725: push
+726: down3 -1441792
+730: down3 1310720
+734: pop
+735: pop
+736: pop
+737: y3 655360
+741: push
+742: right3 393217
+[ ]
+746: fntnum0
+747: setchar65
+748: right3 131072
+752: setchar66
+[A B]
+753: pop
+754: y0 655360
+755: push
+756: right3 196609
+760: setchar67
+[ C]
+761: push
+762: putrule height 26214, width 393216
+771: pop
+772: pop
+773: eop
+
+774: beginning of page -2.0.0.0.11.0.0.0.0.0
+819: down4 1001179648
+824: push
+825: right3 196609
+[ ]
+829: fntnum0
+830: setchar65
+831: right3 4653056
+835: setchar47
+836: right3 65536
+840: setchar65
+841: w3 131072
+845: setchar65
+846: w0 131072
+847: setchar65
+[A /A A A]
+848: set1 130
+850: set1 130
+852: setchar66
+853: setchar47
+[B/]
+854: pop
+855: y3 589824
+859: push
+860: right3 5898241
+864: setchar65
+865: w3 131072
+869: setchar65
+870: w0 131072
+871: setchar65
+[ A A A]
+872: pop
+873: down3 524288
+877: push
+878: right3 5898241
+882: setchar65
+883: w3 131072
+887: setchar65
+888: w0 131072
+889: setchar65
+[ A A A]
+890: pop
+891: y0 589824
+892: push
+893: right3 5701633
+897: setchar65
+898: w3 131072
+902: setchar65
+903: w0 131072
+904: setchar65
+905: setchar66
+[ A A AB]
+906: pop
+907: y0 589824
+908: push
+909: right3 5898241
+913: setchar65
+914: w3 131072
+918: setchar65
+919: w0 131072
+920: setchar65
+[ A A A]
+921: pop
+922: y0 589824
+923: push
+924: right1 1
+926: setchar65
+927: right3 131072
+931: setchar66
+932: right3 262144
+936: setchar97
+937: setchar66
+[A B aB]
+938: pop
+939: down3 2031616
+943: push
+944: right3 196609
+948: setchar65
+[ A]
+949: pop
+950: y3 655360
+954: push
+955: right3 262144
+959: setchar45
+[ -]
+960: pop
+961: y0 655360
+962: push
+963: right3 196609
+967: setchar67
+[ C]
+968: pop
+969: y0 655360
+970: push
+971: right3 196609
+975: setchar67
+[ C]
+976: pop
+977: y0 655360
+978: y0 655360
+979: push
+980: right3 6422529
+984: setchar65
+[ A]
+985: pop
+986: eop
+
+987: beginning of page -2.0.0.0.11.0.327680.0.0.0
+1032: down4 1001179648
+1037: push
+1038: right3 262145
+[ ]
+1042: fntnum0
+1043: setchar45
+[-]
+1044: pop
+1045: y3 655360
+1049: push
+1050: right3 262144
+1054: setchar45
+1055: setchar45
+[ --]
+1056: pop
+1057: y0 655360
+1058: push
+1059: right3 327680
+1063: setchar45
+1064: setchar45
+1065: right3 65536
+1069: setchar65
+[ --A]
+1070: pop
+1071: down3 851968
+1075: eop
+
+1076: beginning of page -2.0.0.0.11.0.327680.0.0.0
+1121: down4 639342208
+1126: push
+1127: push
+1128: push
+1129: push
+1130: down3 -602931
+1134: push
+1135: right3 740559
+[ ]
+1139: fntdef1 1: trip---loaded at size 327680 DVI units
+1159: fntnum1
+1160: setchar65
+[A]
+1161: pop
+1162: right3 740559
+[ ]
+1166: down3 176947
+1170: putrule height 65536, width 98304
+1179: down3 635699
+1183: push
+1184: setchar65
+[A]
+1185: pop
+1186: pop
+1187: pop
+1188: push
+1189: right3 845417
+[ ]
+1193: down3 -262144
+1197: fntnum0
+1198: setchar98
+[b]
+1199: pop
+1200: pop
+1201: right3 1078433
+1205: setchar47
+1206: right3 54612
+1210: setchar65
+1211: right2 -7280
+[ /A]
+1214: fntnum1
+1215: setchar45
+1216: setchar45
+1217: right3 -72816
+[--]
+1221: fntnum0
+1222: setchar65
+1223: w3 36408
+1227: setchar47
+1228: w0 36408
+1229: setchar65
+[A/A]
+1230: pop
+1231: down3 4912743
+1235: push
+1236: push
+1237: push
+1238: right3 983045
+[ ]
+1242: fntdef1 2: trip---loaded at size 1310720 DVI units
+ (this font is magnified 400%)
+1262: fntnum2
+1263: setchar45
+[-]
+1264: pop
+1265: push
+1266: right3 425989
+[ ]
+1270: fntnum0
+1271: setchar65
+[A]
+1272: push
+1273: down3 -530842
+1277: push
+1278: push
+1279: right3 65536
+1283: down3 -131072
+1287: setchar97
+[a]
+1288: pop
+1289: right3 196608
+1293: setchar47
+[ /]
+1294: pop
+1295: pop
+1296: pop
+1297: pop
+1298: push
+1299: right3 818550
+[ ]
+1303: down3 -1557300
+1307: putrule height 65536, width 984062
+1316: down3 1557300
+1320: push
+1321: push
+1322: down3 -543949
+1326: fntnum1
+1327: setchar65
+[A]
+1328: pop
+1329: right3 97649
+[ ]
+1333: fntnum0
+1334: setchar65
+[A]
+1335: push
+1336: down3 268698
+1340: setchar45
+[-]
+1341: pop
+1342: push
+1343: right3 -310131
+1347: down3 -1098548
+1351: fntnum1
+1352: setchar65
+1353: right3 98304
+1357: setchar66
+[A B]
+1358: push
+1359: down3 471859
+1363: push
+1364: right3 140175
+[ ]
+1368: fntnum2
+1369: set1 130
+1371: pop
+1372: down3 458754
+1376: push
+1377: push
+1378: down3 -65535
+1382: setchar65
+[A]
+1383: pop
+1384: right3 411421
+1388: setchar65
+[ A]
+1389: push
+1390: down3 -131072
+1394: push
+1395: right3 -65536
+1399: setchar97
+[a]
+1400: pop
+1401: pop
+1402: pop
+1403: pop
+1404: pop
+1405: pop
+1406: pop
+1407: push
+1408: down3 -1179648
+1412: push
+1413: right3 1798972
+[ ]
+1417: fntnum1
+1418: setchar67
+[C]
+1419: pop
+1420: down3 1179648
+1424: push
+1425: push
+1426: right3 1766204
+[ ]
+1430: down3 -262144
+1434: fntnum0
+1435: setchar66
+[B]
+1436: pop
+1437: pop
+1438: pop
+1439: push
+1440: push
+1441: push
+1442: right3 1926404
+[ ]
+1446: down3 -458752
+1450: setchar77
+[M]
+1451: pop
+1452: pop
+1453: down3 524288
+1457: push
+1458: right3 2057476
+[ ]
+1462: fntnum1
+1463: setchar67
+[C]
+1464: pop
+1465: pop
+1466: push
+1467: push
+1468: push
+1469: right3 2414284
+[ ]
+1473: down3 -3556148
+1477: fntnum0
+1478: setchar97
+[a]
+1479: pop
+1480: push
+1481: right3 2610892
+[ ]
+1485: down3 -3556148
+1489: putrule height 458752, width 2400948
+1498: down3 3556148
+1502: push
+1503: push
+1504: push
+1505: push
+1506: push
+1507: down3 -1245183
+1511: push
+1512: right2 6554
+1515: setchar0
+1516: pop
+1517: y3 65535
+1521: push
+1522: right2 6554
+1525: setchar0
+1526: pop
+1527: down3 589824
+1531: push
+1532: right2 6554
+1535: setchar65
+[A]
+1536: pop
+1537: down1 -1
+1539: push
+1540: right2 6554
+1543: setchar0
+1544: pop
+1545: y0 65535
+1546: push
+1547: right2 6554
+1550: setchar0
+1551: pop
+1552: down3 655360
+1556: push
+1557: right2 6554
+1560: setchar66
+[B]
+1561: pop
+1562: pop
+1563: push
+1564: push
+1565: push
+1566: push
+1567: down3 -1425409
+1571: push
+1572: right3 543623
+[ ]
+1576: fntnum2
+1577: setchar65
+[A]
+1578: pop
+1579: down3 2451048
+1583: push
+1584: right3 471860
+[ ]
+1588: fntnum0
+1589: setchar65
+[A]
+1590: push
+1591: down3 -530842
+1595: push
+1596: right3 65536
+1600: fntnum1
+1601: setchar45
+[-]
+1602: pop
+1603: down3 1818625
+1607: push
+1608: push
+1609: down3 -638976
+1613: push
+1614: right2 6554
+1617: fntnum2
+1618: setchar65
+[A]
+1619: pop
+1620: right2 6554
+1623: down3 196608
+1627: putrule height 32768, width 393217
+1636: down3 1081344
+1640: push
+1641: right1 1
+1643: setchar66
+[B]
+1644: pop
+1645: pop
+1646: pop
+1647: pop
+1648: pop
+1649: pop
+1650: pop
+1651: right3 465306
+[ ]
+1655: down3 5600055
+1659: putrule height 596378, width 549850
+1668: pop
+1669: pop
+1670: push
+1671: down3 -2323253
+1675: push
+1676: right3 1015156
+1680: setchar98
+[ b]
+1681: pop
+1682: down4 8545900
+1687: push
+1688: push
+1689: right3 1015156
+[ ]
+1693: down3 -65536
+1697: setchar98
+[b]
+1698: pop
+1699: push
+1700: down3 -786432
+1704: push
+1705: right3 1590412
+[ ]
+1709: fntnum0
+1710: setchar66
+[B]
+1711: pop
+1712: right3 1408372
+[ ]
+1716: down3 393216
+1720: putrule height 131072, width 378648
+1729: pop
+1730: pop
+1731: pop
+1732: push
+1733: right3 1792919
+[ ]
+1737: down3 -65535
+1741: fntnum2
+1742: setchar97
+[a]
+1743: pop
+1744: pop
+1745: right3 2204340
+[ ]
+1749: fntnum0
+1750: setchar65
+[A]
+1751: pop
+1752: pop
+1753: pop
+1754: pop
+1755: pop
+1756: pop
+1757: right3 5011840
+[ ]
+1761: down3 6432362
+1765: setrule height 10906014, width 327680
+1774: pop
+1775: down3 7775850
+1779: push
+1780: right3 1292440
+1784: setchar45
+[ -]
+1785: fntnum1
+1786: setchar98
+[b]
+1787: push
+1788: setchar65
+[A]
+1789: pop
+1790: push
+1791: down3 -537395
+1795: push
+1796: right3 98304
+[ ]
+1800: fntnum0
+1801: setchar65
+[A]
+1802: pop
+1803: down3 1245184
+1807: push
+1808: right3 98304
+1812: fntnum2
+1813: setchar66
+[B]
+1814: fntnum0
+1815: setchar45
+[-]
+1816: pop
+1817: pop
+1818: push
+1819: push
+1820: push
+1821: right3 235275
+[ ]
+1825: down3 -163840
+1829: putrule height 589824, width 530116
+1838: down3 1943143
+1842: push
+1843: push
+1844: push
+1845: push
+1846: right2 6554
+1849: down3 -160563
+1853: putrule height 596378, width 517008
+1862: down3 1382810
+1866: push
+1867: push
+1868: push
+1869: down3 -262144
+1873: setchar98
+[b]
+1874: pop
+1875: push
+1876: down3 -720896
+1880: push
+1881: w3 196608
+1885: setchar112
+1886: setchar116
+1887: setchar115
+1888: setchar113
+1889: setchar116
+1890: w0 196608
+1891: setchar113
+1892: setchar112
+1893: right3 -72816
+1897: setchar117
+[ ptsqt qpu]
+1898: pop
+1899: down3 1048576
+1903: push
+1904: right3 245397
+[ ]
+1908: setrule height 589824, width 26214
+1917: pop
+1918: pop
+1919: push
+1920: right3 320400
+[ ]
+1924: down3 -262144
+1928: setchar98
+[b]
+1929: pop
+1930: pop
+1931: pop
+1932: pop
+1933: pop
+1934: pop
+1935: pop
+1936: pop
+1937: pop
+1938: pop
+1939: pop
+1940: eop
+
+1941: beginning of page -2.0.0.0.11.0.327680.1572864.0.-1073741823
+1986: down4 1001179648
+1991: push
+1992: push
+1993: right1 1
+[ ]
+1995: down3 -65536
+1999: xxx '-12'
+2004: pop
+2005: pop
+2006: y3 655360
+2010: y0 655360
+2011: down3 983040
+2015: push
+2016: push
+2017: right3 196609
+[ ]
+2021: fntnum0
+2022: setchar65
+[A]
+2023: push
+2024: push
+2025: right3 83740
+2029: down3 -262144
+2033: setchar98
+[b]
+2034: pop
+2035: push
+2036: push
+2037: right3 286902
+[ ]
+2041: down3 -425984
+2045: putrule height 65536, width 104858
+2054: down3 688128
+2058: push
+2059: push
+2060: down3 -360448
+2064: fntnum1
+2065: setchar98
+[b]
+2066: pop
+2067: pop
+2068: pop
+2069: pop
+2070: pop
+2071: pop
+2072: push
+2073: push
+2074: down3 589825
+2078: push
+2079: right3 4500861
+[ ]
+2083: fntnum0
+2084: setchar97
+2085: setchar97
+[aa]
+2086: pop
+2087: pop
+2088: pop
+2089: pop
+2090: eop
+
+2091: beginning of page -2.0.0.0.11.0.327680.1572864.1073741823.-1073741823
+2136: down4 1001179648
+2141: push
+2142: right3 196609
+[ ]
+2146: fntnum0
+2147: setchar65
+2148: right3 373830
+[A ]
+2152: set1 130
+2154: pop
+2155: down3 655360
+2159: eop
+
+2160: beginning of page -2.0.0.0.11.196608.327680.1572864.1073741823.0
+2205: down4 1001179648
+2210: push
+2211: down3 -262144
+2215: push
+2216: right3 196609
+[ ]
+2220: fntnum0
+2221: setchar65
+2222: w3 131072
+2226: setchar65
+2227: w0 131072
+2228: setchar65
+[A A A]
+2229: down3 65536
+2233: setrule height 524288, width 327680
+2242: pop
+2243: y3 655360
+2247: push
+2248: right3 196609
+2252: setchar65
+2253: right3 196608
+2257: setchar65
+[ A A]
+2258: pop
+2259: down3 131072
+2263: push
+2264: right3 196609
+2268: setchar65
+2269: w3 131072
+2273: setchar65
+2274: w0 131072
+2275: setchar65
+[ A A A]
+2276: pop
+2277: y0 655360
+2278: push
+2279: right3 196609
+2283: setchar65
+2284: right3 196608
+2288: setchar65
+[ A A]
+2289: pop
+2290: pop
+2291: y3 720896
+2295: push
+2296: down3 -655360
+2300: down3 655360
+2304: pop
+2305: down3 655360
+2309: push
+2310: down3 -262144
+2314: push
+2315: right3 196609
+2319: setchar65
+[ A]
+2320: pop
+2321: pop
+2322: y0 720896
+2323: push
+2324: down2 -32767
+2327: push
+2328: push
+2329: right3 198462
+[ ]
+2333: down3 -163841
+2337: setchar66
+[B]
+2338: pop
+2339: right3 558912
+2343: setchar65
+2344: setchar65
+[ AA]
+2345: pop
+2346: pop
+2347: eop
+
+2348: beginning of page -2.2.-1118806.0.11.196608.327680.1572864.1073741823.0
+2393: down4 1001179648
+2398: push
+2399: push
+2400: right3 -104176
+[ ]
+2404: fntnum0
+2405: setchar66
+[B]
+2406: push
+2407: down3 -1310720
+2411: y3 655360
+2415: y0 655360
+2416: push
+2417: right3 196608
+2421: setchar65
+[ A]
+2422: pop
+2423: pop
+2424: pop
+2425: push
+2426: push
+2427: down3 622591
+2431: push
+2432: down3 458752
+2436: push
+2437: right3 6895421
+2441: setchar65
+[ A]
+2442: pop
+2443: pop
+2444: pop
+2445: pop
+2446: pop
+2447: y3 655360
+2451: push
+2452: push
+2453: right3 420112
+2457: setchar98
+2458: right4 12176941
+2463: setchar98
+[ b b]
+2464: pop
+2465: pop
+2466: y0 655360
+2467: eop
+
+2468: beginning of page -2.2.-1118806.0.11.196608.327680.1572864.1073741823.0
+2513: down3 1179648
+2517: z3 655360
+2521: push
+2522: push
+2523: right3 196608
+[ ]
+2527: down3 -537395
+2531: fntnum1
+2532: setchar77
+[M]
+2533: pop
+2534: pop
+2535: y4 203921760
+2540: y0 203921760
+2541: push
+2542: push
+2543: right3 196608
+[ ]
+2547: fntnum0
+2548: setchar116
+2549: setchar116
+[tt]
+2550: pop
+2551: pop
+2552: z0 655360
+2553: z0 655360
+2554: down4 232364531
+2559: push
+2560: push
+2561: push
+2562: right3 393216
+[ ]
+2566: down4 -17616141
+2571: fntdef1 3: trip---loaded at size 134217727 DVI units
+ (this font is magnified 40960%)
+2591: fntnum3
+2592: setchar98
+[b]
+2593: pop
+2594: pop
+2595: push
+2596: push
+2597: down3 -1376253
+2601: push
+2602: right4 40658554
+[ ]
+2607: fntnum0
+2608: setchar0
+2609: pop
+2610: y3 65535
+2614: push
+2615: right4 40658554
+[ ]
+2620: setchar0
+2621: pop
+2622: y0 65535
+2623: push
+2624: right4 40658554
+[ ]
+2629: setchar0
+2630: pop
+2631: y0 65535
+2632: push
+2633: right4 40658554
+[ ]
+2638: setchar0
+2639: pop
+2640: down3 589824
+2644: push
+2645: right4 40658554
+2650: setchar65
+[ A]
+2651: pop
+2652: down1 -1
+2654: push
+2655: right4 40658554
+[ ]
+2660: setchar0
+2661: pop
+2662: y0 65535
+2663: push
+2664: right4 40658554
+[ ]
+2669: setchar0
+2670: pop
+2671: y0 65535
+2672: push
+2673: right4 40658554
+[ ]
+2678: setchar0
+2679: pop
+2680: y0 65535
+2681: push
+2682: right4 40658554
+[ ]
+2687: setchar0
+2688: pop
+2689: z0 655360
+2690: push
+2691: right4 40658554
+2696: setchar66
+[ B]
+2697: pop
+2698: pop
+2699: right4 41117306
+2704: setchar65
+2705: w3 65536
+2709: setchar97
+[ Aa]
+2710: push
+2711: w0 65536
+2712: down4 -20591485
+2717: fntnum3
+2718: setchar0
+2719: pop
+2720: pop
+2721: right4 135463022
+[ ]
+2726: fntnum0
+2727: setchar65
+[A]
+2728: pop
+2729: down4 9227503
+2734: z0 655360
+2735: z0 655360
+2736: z0 655360
+2737: z0 655360
+2738: down2 26214
+2741: putrule height 26214, width 135659630
+2750: eop
+
+2751: beginning of page -1.2.-1118806.0.11.196608.327680.1572864.1073741823.0
+2796: down3 1179648
+2800: eop
+Postamble starts at byte 2801.
+maxv=1073741823, maxh=539754497, maxstackdepth=17, totalpages=16
+Font 3: trip scaled 409600
+Font 2: trip scaled 4000
+Font 1: trip
+Font 0: trip scaled 2000
+
diff --git a/Build/source/texk/web2c/triptrap/trip1.in b/Build/source/texk/web2c/triptrap/trip1.in
new file mode 100644
index 00000000000..a93fd916c04
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trip1.in
@@ -0,0 +1,2 @@
+
+\input trip
diff --git a/Build/source/texk/web2c/triptrap/trip2.in b/Build/source/texk/web2c/triptrap/trip2.in
new file mode 100644
index 00000000000..205d5cd6504
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/trip2.in
@@ -0,0 +1 @@
+ &trip trip
diff --git a/Build/source/texk/web2c/triptrap/tripin.log b/Build/source/texk/web2c/triptrap/tripin.log
new file mode 100644
index 00000000000..0688b4eb919
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/tripin.log
@@ -0,0 +1,465 @@
+This is TeX, Version 3.141592 (INITEX) 20 DEC 2002 20:24
+**\input trip
+(trip.tex
+! Bad character code (256).
+<to be read again>
+ -
+l.26 \nonstopmode\lccode256-
+ 0\mathchardef\a="8000\def\a{ SC...
+A character number must be between 0 and 255.
+I changed this one to zero.
+
+! Bad mathchar (32768).
+<to be read again>
+ \def
+l.26 ...\mathchardef\a="8000\def
+ \a{ SCALED 3~2769}
+A mathchar number must be between 0 and 32767.
+I changed this one to zero.
+
+! Illegal magnification has been changed to 1000 (32769).
+<to be read again>
+ \skewchar
+l.28 \skewchar
+ \rip=`B \countdef\countz % \countz will be \c...
+The magnification ratio must be between 1 and 32768.
+
+! Missing number, treated as zero.
+<to be read again>
+ \def
+l.29 \def
+ \on{1} \toksdef\tokens=256 \show\errorstopmode
+A number should have been here; I inserted `0'.
+(If you can't figure out why I needed to see a number,
+look up `weird error' in the index to The TeXbook.)
+
+! Bad register code (256).
+l.29 ...{1} \toksdef\tokens=256
+ \show\errorstopmode
+A register number must be between 0 and 255.
+I changed this one to zero.
+
+> \errorstopmode=\errorstopmode.
+l.29 ...=256 \show\errorstopmode
+
+
+> \rip .
+<recently read> \font
+
+l.30 \showthe\font
+ \showthe\pageshrink \showthe\pagegoal
+
+> 0.0pt.
+l.30 ...font \showthe\pageshrink
+ \showthe\pagegoal
+
+> 16383.99998pt.
+l.30 ...shrink \showthe\pagegoal
+
+
+! Illegal unit of measure (replaced by filll).
+l.32 ...fdim\hsize<\hsize\fi lll
+ minus 0 fill
+I dddon't go any higher than filll.
+
+\one \csname on line 60
+! You can't use `\badness' in vertical mode.
+l.61 ...yphenpenalty 89 \badness
+
+Sorry, but I'm not programmed to handle this case;
+I'll just pretend that you didn't ask for it.
+If you're in the wrong mode, you might be able to
+return to the right one by typing `I}' or `I$' or `I\par'.
+
+! Bad \patterns.
+l.75 ...uage256\patterns{0111 \?
+ 50AA1b3 *1AcA. bb bb1 0B2B0 b...
+(See Appendix H.)
+
+! Nonletter.
+l.75 ...ge256\patterns{0111 \?50
+ AA1b3 *1AcA. bb bb1 0B2B0 b1c...
+(See Appendix H.)
+
+! Duplicate pattern.
+l.75 ...1b3 *1AcA. bb bb1 0B2B0
+ b1c}} % *==space
+(See Appendix H.)
+
+Missing character: There is no Z in font trip!
+
+### horizontal mode entered at line 77 (language255:hyphenmin1,63)
+\hbox(0.0+0.0)x0.0
+\glue -9.0
+\rip A (ligature 7A)
+\setlanguage98 (hyphenmin 1,1)
+\rip 5 (ligature |1)
+\rip 7 (ligature )
+\rip 6 (ligature )
+\rip 7 (ligature )
+\kern-2.00002
+\rip 1
+\rip 7 (ligature |)
+\glue 4.0 plus 1.99799 minus 1.00099
+\rip 5 (ligature |1)
+\rip 7 (ligature )
+\rip 6 (ligature )
+\rip 7 (ligature )
+\kern-2.00002
+\rip 1
+\glue 4.0 plus 2.0 minus 1.0
+\setlanguage255 (hyphenmin 1,1)
+\rip 5 (ligature |1)
+\rip 5 (ligature |1)
+\rip t (ligature pt)
+\kern3.0
+\rip s
+\glue 4.0 plus 2.0 minus 1.0
+\kern-1.00002
+\rip - (ligature -
+)
+\rip p (ligature q)
+\rip t (ligature )
+\rip s (ligature )
+\rip q (ligature )
+\rip t (ligature )
+\kern3.0
+\rip q (ligature )
+\rip p (ligature )
+\rip r (ligature q|)
+\glue 4.0 plus 2.0 minus 1.0
+spacefactor 1000, current language 255
+### internal vertical mode entered at line 77
+prevdepth ignored
+### internal vertical mode entered at line 77
+\glue(\tabskip) 0.0
+prevdepth 0.0
+### restricted horizontal mode entered at line 76
+spacefactor 1000
+### restricted horizontal mode entered at line 76
+spacefactor 1000
+### vertical mode entered at line 0
+prevdepth ignored
+
+! OK.
+l.78 ...ns{q9q} -\0qq \showlists
+ {\language\?\noboundary111}%
+
+[]
+@ via @@0 b=0 p=0 d=0
+@@1: line 1.2 t=0 -> @@0
+\rip 7A[]1-1
+@\discretionary via @@0 b=10000 p=88 d=100007744
+@@2: line 1.0- t=100007744 -> @@0
+@\discretionary via @@1 b=10000 p=88 d=100007744
+@@3: line 2.0- t=100007744 -> @@1
+
+@ via @@0 b=10000 p=0 d=100000000
+@@4: line 1.0 t=100000000 -> @@0
+@ via @@2 b=0 p=0 d=0
+@ via @@1 b=10000 p=0 d=100000000
+@@5: line 2.0 t=100000000 -> @@1
+@ via @@3 b=0 p=0 d=0
+@@6: line 3.2 t=100007744 -> @@3
+1-1
+@\discretionary via @@0 b=10000 p=88 d=100007744
+@@7: line 1.0- t=100007744 -> @@0
+@\discretionary via @@4 b=10000 p=88 d=100007744
+@\discretionary via @@2 b=12 p=88 d=8888
+@\discretionary via @@1 b=12 p=88 d=7888
+@@8: line 2.2- t=7888 -> @@1
+@\discretionary via @@5 b=10000 p=88 d=100007744
+@\discretionary via @@3 b=12 p=88 d=8888
+@@9: line 3.2- t=100016632 -> @@3
+@\discretionary via @@6 b=10000 p=88 d=100007744
+@@10: line 4.0- t=200015488 -> @@6
+
+@ via @@0 b=4291 p=0 d=18412681
+@@11: line 1.0 t=18412681 -> @@0
+@ via @@7 b=0 p=0 d=0
+@ via @@4 b=10000 p=0 d=100000000
+@@12: line 2.2 t=100007744 -> @@7
+@ via @@8 b=0 p=0 d=0
+@ via @@5 b=10000 p=0 d=100000000
+@@13: line 3.2 t=7888 -> @@8
+@ via @@9 b=0 p=0 d=0
+@ via @@6 b=10000 p=0 d=100000000
+@@14: line 4.2 t=100016632 -> @@9
+@ via @@10 b=0 p=0 d=0
+@@15: line 5.2 t=200015488 -> @@10
+[]11-
+@\discretionary via @@0 b=195 p=88 d=45769
+@@16: line 1.0- t=45769 -> @@0
+@\discretionary via @@11 b=10000 p=88 d=100007744
+@\discretionary via @@4 b=0 p=88 d=7744
+@@17: line 2.2- t=100007744 -> @@4
+@\discretionary via @@12 b=10000 p=88 d=100007744
+@\discretionary via @@5 b=0 p=88 d=7744
+@@18: line 3.2- t=100007744 -> @@5
+@\discretionary via @@13 b=10000 p=88 d=100007744
+@\discretionary via @@6 b=0 p=88 d=7744
+@@19: line 4.2- t=100015488 -> @@6
+@\discretionary via @@14 b=10000 p=88 d=100007744
+@@20: line 5.0- t=200024376 -> @@14
+@\discretionary via @@15 b=10000 p=88 d=100007744
+@@21: line 6.0- t=300023232 -> @@15
+pts
+@ via @@0 b=12 p=0 d=144
+@@22: line 1.2 t=144 -> @@0
+-
+q-q
+@\discretionary via @@0 b=336 p=88 d=120640
+@@23: line 1.0- t=120640 -> @@0
+@\discretionary via @@22 b=10000 p=88 d=100007744
+@@24: line 2.0- t=100007888 -> @@22
+
+@ via @@0 b=0 p=0 d=0
+@@25: line 1.2 t=0 -> @@0
+@ via @@23 b=0 p=0 d=0
+@ via @@22 b=10000 p=0 d=100000000
+@@26: line 2.2 t=120640 -> @@23
+@ via @@24 b=0 p=0 d=0
+@@27: line 3.2 t=100007888 -> @@24
+[]11-1
+@\discretionary via @@0 b=42 p=88 d=9508
+@@28: line 1.1- t=9508 -> @@0
+@\discretionary via @@25 b=10000 p=88 d=100007744
+@\discretionary via @@23 b=1558 p=88 d=2436108
+@\discretionary via @@22 b=6396 p=88 d=40916560
+@@29: line 2.0- t=2556748 -> @@23
+@\discretionary via @@26 b=10000 p=88 d=100007744
+@\discretionary via @@24 b=1558 p=88 d=2436108
+@@30: line 3.0- t=100128384 -> @@26
+@\discretionary via @@27 b=10000 p=88 d=100007744
+@@31: line 4.0- t=200015632 -> @@27
+@\par via @@0 b=0 p=-10000 d=0
+@@32: line 1.2- t=0 -> @@0
+@\par via @@28 b=0 p=-10000 d=100000
+@\par via @@25 b=10000 p=-10000 d=100000000
+@\par via @@23 b=0 p=-10000 d=100000
+@\par via @@22 b=336 p=-10000 d=112896
+@@33: line 2.2- t=109508 -> @@28
+@\par via @@29 b=0 p=-10000 d=100000
+@\par via @@26 b=10000 p=-10000 d=100000000
+@\par via @@24 b=0 p=-10000 d=100000
+@@34: line 3.2- t=2656748 -> @@29
+@\par via @@30 b=0 p=-10000 d=100000
+@\par via @@27 b=10000 p=-10000 d=100000000
+@@35: line 4.2- t=100228384 -> @@30
+@\par via @@31 b=0 p=-10000 d=100000
+@@36: line 5.2- t=200115632 -> @@31
+@emergencypass
+[]
+@ via @@0 b=0 p=0 d=0
+@@1: line 1.2 t=0 -> @@0
+\rip 7A[]1-1
+@\discretionary via @@0 b=237 p=88 d=63913
+@@2: line 1.0- t=63913 -> @@0
+@\discretionary via @@1 b=4 p=88 d=7760
+@@3: line 2.2- t=7760 -> @@1
+
+@ via @@0 b=100 p=0 d=10000
+@@4: line 1.0 t=10000 -> @@0
+@ via @@2 b=0 p=0 d=0
+@ via @@1 b=0 p=0 d=0
+@@5: line 2.2 t=0 -> @@1
+@ via @@3 b=0 p=0 d=0
+@@6: line 3.2 t=7760 -> @@3
+1-1
+@\discretionary via @@0 b=75 p=88 d=13369
+@@7: line 1.1- t=13369 -> @@0
+@\discretionary via @@4 b=17 p=88 d=8033
+@\discretionary via @@2 b=0 p=88 d=8744
+@\discretionary via @@1 b=0 p=88 d=7744
+@@8: line 2.2- t=7744 -> @@1
+@\discretionary via @@5 b=17 p=88 d=8033
+@\discretionary via @@3 b=0 p=88 d=8744
+@@9: line 3.1- t=8033 -> @@5
+@\discretionary via @@6 b=17 p=88 d=8033
+@@10: line 4.1- t=15793 -> @@6
+
+@ via @@0 b=26 p=0 d=676
+@@11: line 1.1 t=676 -> @@0
+@ via @@7 b=0 p=0 d=0
+@ via @@4 b=1 p=0 d=1
+@@12: line 2.2 t=10001 -> @@4
+@ via @@8 b=0 p=0 d=0
+@ via @@5 b=1 p=0 d=1
+@@13: line 3.2 t=1 -> @@5
+@ via @@9 b=0 p=0 d=0
+@ via @@6 b=1 p=0 d=1
+@@14: line 4.2 t=7761 -> @@6
+@ via @@10 b=0 p=0 d=0
+@@15: line 5.2 t=15793 -> @@10
+[]11-
+@\discretionary via @@0 b=6 p=88 d=7780
+@@16: line 1.2- t=7780 -> @@0
+@\discretionary via @@11 b=1 p=88 d=7745
+@\discretionary via @@4 b=0 p=88 d=7744
+@@17: line 2.2- t=8421 -> @@11
+@\discretionary via @@12 b=1 p=88 d=7745
+@\discretionary via @@5 b=0 p=88 d=7744
+@@18: line 3.2- t=7744 -> @@5
+@\discretionary via @@13 b=1 p=88 d=7745
+@\discretionary via @@6 b=0 p=88 d=7744
+@@19: line 4.2- t=7746 -> @@13
+@\discretionary via @@14 b=1 p=88 d=7745
+@@20: line 5.2- t=15506 -> @@14
+@\discretionary via @@15 b=1 p=88 d=7745
+@@21: line 6.2- t=23538 -> @@15
+pts
+@ via @@0 b=0 p=0 d=0
+@@22: line 1.2 t=0 -> @@0
+-
+q-q
+@\discretionary via @@0 b=22 p=88 d=8228
+@@23: line 1.1- t=8228 -> @@0
+@\discretionary via @@22 b=182 p=88 d=40868
+@@24: line 2.0- t=40868 -> @@22
+
+@ via @@0 b=0 p=0 d=0
+@@25: line 1.2 t=0 -> @@0
+@ via @@23 b=0 p=0 d=0
+@ via @@22 b=4 p=0 d=16
+@@26: line 2.2 t=16 -> @@22
+@ via @@24 b=0 p=0 d=0
+@@27: line 3.2 t=40868 -> @@24
+[]11-1
+@\discretionary via @@0 b=4 p=88 d=7760
+@@28: line 1.2- t=7760 -> @@0
+@\discretionary via @@25 b=100 p=88 d=17744
+@\discretionary via @@23 b=9 p=88 d=8825
+@\discretionary via @@22 b=38 p=88 d=9188
+@@29: line 2.1- t=9188 -> @@22
+@\discretionary via @@26 b=100 p=88 d=17744
+@\discretionary via @@24 b=9 p=88 d=8825
+@@30: line 3.0- t=17760 -> @@26
+@\discretionary via @@27 b=100 p=88 d=17744
+@@31: line 4.0- t=58612 -> @@27
+@\par via @@0 b=0 p=-10000 d=0
+@@32: line 1.2- t=0 -> @@0
+@\par via @@28 b=0 p=-10000 d=100000
+@\par via @@25 b=9 p=-10000 d=81
+@\par via @@23 b=0 p=-10000 d=100000
+@\par via @@22 b=2 p=-10000 d=4
+@@33: line 2.2- t=4 -> @@22
+@\par via @@29 b=0 p=-10000 d=100000
+@\par via @@26 b=9 p=-10000 d=81
+@\par via @@24 b=0 p=-10000 d=100000
+@@34: line 3.2- t=97 -> @@26
+@\par via @@30 b=0 p=-10000 d=100000
+@\par via @@27 b=9 p=-10000 d=81
+@@35: line 4.2- t=40949 -> @@27
+@\par via @@31 b=0 p=-10000 d=100000
+@@36: line 5.2- t=158612 -> @@31
+
+! Too late for \patterns.
+l.79 ...har\rip=`-\cr}}\patterns
+ {toolate}\showbox0}
+All patterns must be given before typesetting begins.
+
+> \box0=
+\hbox(8.0+0.0)x0.0
+.\vbox(8.0+0.0)x0.0
+..\glue(\tabskip) 0.0
+..\vbox(8.0+0.0)x0.0
+...\hbox(7.0+1.0)x0.0, glue set 0.12505
+....\hbox(0.0+0.0)x0.0
+....\glue -9.0
+....\rip A (ligature 7A)
+....\setlanguage98 (hyphenmin 1,1)
+....\discretionary replacing 7
+.....\rip 5 (ligature |1)
+.....\rip -
+....|\rip 5 (ligature |1)
+....|\rip 7 (ligature |)
+....\rip 5 (ligature |1)
+....\rip 7 (ligature )
+....\rip 6 (ligature )
+....\rip 7 (ligature )
+....\kern-2.00002
+....\rip 1
+....\rip 7 (ligature |)
+....\glue 4.0 plus 1.99799 minus 1.00099
+....\discretionary replacing 6
+.....\rip 5 (ligature |1)
+.....\rip -
+....|\rip 5 (ligature |1)
+....\rip 5 (ligature |1)
+....\rip 7 (ligature )
+....\rip 6 (ligature )
+....\rip 7 (ligature )
+....\kern-2.00002
+....\rip 1
+....\glue 4.0 plus 2.0 minus 1.0
+....\setlanguage255 (hyphenmin 1,1)
+....\rip 5 (ligature |1)
+....\rip 7 (ligature )
+....\rip 6 (ligature )
+....\rip 7 (ligature )
+....\kern-2.00002
+....\discretionary replacing 1
+.....\rip 1
+.....\rip 1 (ligature -)
+.....\rip 7 (ligature |)
+....\rip 1
+....\rip t (ligature pt)
+....\kern3.0
+....\rip s
+....\glue 4.0 plus 2.0 minus 1.0
+....\kern-1.00002
+....\discretionary replacing 10
+.....\rip - (ligature -
+)
+.....\rip p (ligature q)
+.....\rip -
+....|\rip q (ligature |)
+....|\rip q
+....\rip - (ligature -
+)
+....\rip p (ligature q)
+....\rip t (ligature )
+....\rip s (ligature )
+....\rip q (ligature )
+....\rip t (ligature )
+....\kern3.0
+....\rip q (ligature )
+....\rip p (ligature )
+....\rip r (ligature q|)
+....\glue 4.0 plus 2.0 minus 1.0
+....\setlanguage98 (hyphenmin 1,1)
+....\rip 1
+....\rip 7 (ligature )
+....\rip 6 (ligature )
+....\rip 7 (ligature )
+....\rip 5 (ligature )
+....\rip 7 (ligature )
+....\rip 6 (ligature )
+....\rip 7 (ligature )
+....etc.
+..\glue(\tabskip) 0.0
+
+! OK.
+<to be read again>
+ }
+l.79 ...terns{toolate}\showbox0}
+
+
+ )
+Beginning to dump on file trip.fmt
+ (preloaded format=trip 2002.12.20)
+1320 strings of total length 23539
+471 memory locations dumped; current usage is 96&278
+341 multiletter control sequences
+\font\nullfont=nullfont
+\font\rip=trip
+\font\smalltrip=trip at 5.0pt
+\font\bigtr
+p=trip at 20.0pt
+2279 words of font info for 3 preloaded fonts
+1 hyphenation exception
+Hyphenation trie of length 273 has 9 ops out of 500
+ 2 for language 255
+ 1 for language 98
+ 6 for language 0
+No pages of output.
diff --git a/Build/source/texk/web2c/triptrap/tripman.tex b/Build/source/texk/web2c/triptrap/tripman.tex
new file mode 100644
index 00000000000..7634c8c9e78
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/tripman.tex
@@ -0,0 +1,413 @@
+% The TRIP manual: How to validate TeX --- last updated by D E Knuth on 4 Dec 89
+\font\eighttt= cmtt8
+\font\eightrm= cmr8
+\font\titlefont= cmr7 scaled\magstep5
+\let\mc=\eightrm
+\rm
+\let\mainfont=\tenrm
+
+\def\.#1{\hbox{\tt#1}}
+\def\\#1{\hbox{\it#1\/\hskip.05em}} % italic type for identifiers
+
+\parskip 2pt plus 1pt
+\baselineskip 12pt plus .25pt
+
+\def\verbatim#1{\begingroup \frenchspacing
+ \def\do##1{\catcode`##1=12 } \dospecials
+ \parskip 0pt \parindent 0pt
+ \catcode`\ =\active \catcode`\^^M=\active
+ \tt \def\par{\ \endgraf} \obeylines \obeyspaces
+ \input #1 \endgroup}
+% a blank line will be typeset at the end of the file;
+% if you're unlucky it will appear on a page by itself!
+{\obeyspaces\global\let =\ }
+
+\output{\shipout\box255\global\advance\pageno by 1} % for the title page only
+\null
+\vfill
+\centerline{\titlefont A torture test for \TeX}
+\vskip 18pt
+\centerline{by Donald E. Knuth}
+\centerline{Stanford University}
+\vskip 6pt
+\centerline{({\sl Version 3, January 1990\/})}
+\vfill
+\centerline{\vbox{\hsize 4in
+\noindent Programs that claim to be implementations of \TeX82 are
+supposed to be able to process the test routine contained in this
+report, producing the outputs contained in this report.}}
+\vskip 24pt
+{\baselineskip 9pt
+\eightrm\noindent
+The preparation of this report was supported in part by the National Science
+Foundation under grants IST-8201926 and MCS-8300984,
+and by the System Development Foundation.
+`\TeX' is a trademark of the American Mathematical Society.
+
+}\pageno=0\eject
+
+\output{\shipout\vbox{ % for subsequent pages
+ \baselineskip0pt\lineskip0pt
+ \hbox to\hsize{\strut
+ \ifodd\pageno \hfil\eightrm\firstmark\hfil
+ \mainfont\the\pageno
+ \else\mainfont\the\pageno\hfil
+ \eightrm\firstmark\hfil\fi}
+ \vskip 10pt
+ \box255}
+ \global\advance\pageno by 1}
+\let\runninghead=\mark
+\outer\def\section#1.{\noindent{\bf#1.}\quad
+ \runninghead{\uppercase{#1} }\ignorespaces}
+
+\section Introduction.
+People often think that their programs are ``debugged'' when large applications
+have been run successfully. But system programmers know that a typical large
+application tends to use at most about 50 per cent of the instructions
+in a typical compiler. Although the other half of the code---which tends
+to be the ``harder half''---might be riddled with errors, the system seems
+to be working quite impressively until an unusual case shows up on the
+next day. And on the following day another error manifests itself, and so on;
+months or years go by before certain parts of the compiler are even
+activated, much less tested in combination with other portions of the system,
+if user applications provide the only tests.
+
+How then shall we go about testing a compiler? Ideally we would like to
+have a formal proof of correctness, certified by a computer.
+This would give us a lot of confidence,
+although of course the formal verification program might itself be incorrect.
+A more serious drawback of automatic verification is that the formal
+specifications of the compiler are likely to be wrong, since they aren't
+much easier to write than the compiler itself. Alternatively, we can
+substitute an informal proof of correctness: The programmer writes his or
+her code in a structured manner and checks that appropriate relations
+remain invariant, etc. This helps greatly to reduce errors, but it cannot
+be expected to remove them completely; the task of checking a large
+system is sufficiently formidable that human beings cannot do it without
+making at least a few slips here and there.
+
+Thus, we have seen that test programs are unsatisfactory if they are simply
+large user applications; yet some sort of test program is needed because
+proofs of correctness aren't adequate either. People have proposed schemes
+for constructing test data automatically from a program text, but such
+approaches run the risk of circularity, since they cannot assume that a
+given program has the right structure.
+
+I have been having good luck with a somewhat different approach,
+first used in 1960 to debug an {\mc ALGOL} compiler. The idea is to
+construct a test file that is about as different from a typical user
+application as could be imagined. Instead of testing things that people
+normally want to do, the file tests complicated things that people would
+never dare to think of, and it embeds these complexities in still
+more arcane constructions. Instead of trying to make the compiler do the
+right thing, the goal is to make it fail (until the bugs have all been found).
+
+To write such a fiendish test routine, one simply gets into a nasty frame
+of mind and tries to do everything in the unexpected way. Parameters
+that are normally positive are set negative or zero; borderline cases
+are pushed to the limit; deliberate errors are made in hopes that the
+compiler will not be able to recover properly from them.
+
+A user's application tends to exercise 50\%\ of a compiler's logic,
+but my first fiendish tests tend to improve this to about 90\%. As the
+next step I generally make use of frequency-counting software to identify
+the instructions that have still not been called upon. Then I add ever more
+fiendishness to the test routine, until more than 99\%\ of the code
+has been used at least once. (The remaining bits are things that
+can occur only if the source program is really huge, or if certain
+fatal errors are detected; or they are cases so similar to other well-tested
+things that there can be little doubt of their validity.)
+
+Of course, this is not guaranteed to work. But my experience in 1960 was
+that only two bugs were ever found in that {\mc ALGOL} compiler after it
+correctly translated that original fiendish test. And one of those bugs
+was actually present in the results of the test; I simply had failed to
+notice that the output was incorrect. Similar experiences occurred later
+during the 60s and 70s, with respect to a few assemblers, compilers,
+and simulators that I wrote.
+
+This method of debugging, combined with the methodology of structured
+programming and informal proofs (otherwise known as careful desk checking),
+leads to greater reliability of production software than any other
+method I know. Therefore I have used it in developing \TeX82, and the
+main bulk of this report is simply a presentation of the test program
+that was used to get the bugs out of \TeX.
+
+Such a test file is useful also after a program has been debugged, since
+it can be used to give some assurance that subsequent modifications don't
+mess things up.
+
+The test file is called \.{TRIP.TEX}, because of my warped sense of humor:
+\TeX\ is pronounced ``techhh'', so the name reminded me of a
+triptych (and besides, I wanted to take a trip through the program while
+tripping it up, etc.).
+
+The contents of this test file are so remote from what people actually
+do with \TeX, I feel apologetic if I have to explain the correct
+translation of \.{TRIP.TEX}; nobody really cares about most of the
+nitty-gritty rules that are involved. Yet I believe \.{TRIP} exemplifies
+the sort of test program that has outstanding diagnostic ability, as
+explained above.
+
+If somebody claims to have a correct implementation of \TeX, I will not
+believe it until I see that \.{TRIP.TEX} is translated properly.
+I propose, in fact, that a program must meet two criteria before it
+can justifiably be called \TeX: (1)~The person who wrote it must be
+happy with the way it works at his or her installation; and (2)~the
+program must produce the correct results from \.{TRIP.TEX}.
+
+\TeX\ is in the public domain, and its algorithms are published;
+I've done this since I do not want to discourage its use by placing
+proprietary restrictions on the software. However, I don't want
+faulty imitations to masquerade as \TeX\ processors, since users
+want \TeX\ to produce identical results on different machines.
+Hence I am planning to do whatever I can to suppress any systems that
+call themselves \TeX\ without meeting conditions (1) and~(2).
+I have copyrighted the programs so that I have some chance to forbid
+unauthorized copies; I explicitly authorize copying of correct
+\TeX\ implementations, and not of incorrect ones!
+
+The remainder of this report consists of appendices, whose contents ought
+to be described briefly here:
+
+Appendix A explains in detail how to carry out a test of \TeX, given
+a tape that contains copies of the other appendices.
+
+Appendix B is \.{TRIP.TEX}, the fiendish test file that has already
+been mentioned. People who think that they understand \TeX\ are challenged
+to see if they know what \TeX\ is supposed to do with this file.
+People who know only a little about \TeX\ might still find it
+interesting to study Appendix~B, just to get some insights into the
+methodology advocated here.
+
+Appendix C is \.{TRIP.PL}, the property-list description of a
+special font called \.{trip}. This is the only font used by \.{TRIP.TEX}.
+There are no graphic characters associated with \.{trip} that could
+possibly be printed; indeed, \.{TRIP.PL} describes the properties of a font
+that is as weird as the ``document'' described by \.{TRIP.TEX}.
+
+Appendix D is \.{TRIPIN.LOG}, a correct transcript file \.{TRIP.LOG}
+that results if \.{INITEX} is applied to \.{TRIP.TEX}. (\.{INITEX} is
+the name of a version of \TeX\ that does certain initializations;
+this run of \.{INITEX} also creates a binary format file called \.{TRIP.FMT}.)
+
+Appendix E is a correct transcript file \.{TRIP.LOG} that results if
+\.{INITEX} or any other version of \TeX\ is applied to \.{TRIP.TEX}
+with format \.{TRIP.FMT}.
+
+Appendix F is \.{TRIP.TYP}, the symbolic version of a correct output
+file \.{TRIP.DVI} that was produced at the same time as the \.{TRIP.LOG}
+file of Appendix~E.
+
+Appendix G is \.{TRIPOS.TEX}, a short file written out and read in
+by \TeX\ when it processes \.{TRIP.TEX}.
+
+Appendix H is \.{TRIP.FOT}, an abbreviated version of Appendix E that
+appears on the user's terminal during the run that produces \.{TRIP.LOG}
+and \.{TRIP.DVI}.
+
+The debugging of \TeX\ and the testing of the adequacy of \.{TRIP.TEX}
+could not have been done nearly as well as reported here except for
+the magnificent software support provided by my colleague David R. Fuchs.
+In particular, he extended our local Pascal compiler so that
+frequency counting and a number of other important features were added
+to its online debugging abilities.
+
+The method of testing advocated here has one chief difficulty that deserves
+comment: I had to verify by hand that \TeX\ did the right things
+to \.{TRIP.TEX}. This took many hours, and perhaps I have missed
+something (as I did in 1960); I must confess that I have not checked
+every single number in Appendices E and~F. However, I'm willing to pay
+\$327.68 to the first finder of any remaining bug in \TeX, and I will
+be surprised if that bug doesn't show up also in Appendix~E. (I plan to
+write a technical report about all of the errors ultimately found in \TeX; that
+report will tell whether any bugs are discovered between now and~then!)
+
+\vfill\eject
+
+\section Appendix A: How to test \TeX.
+
+\item{0.} Let's assume that you have a tape containing \.{TRIP.TEX},
+\.{TRIP.PL}, \.{TRIPIN.LOG}, \.{TRIP.LOG}, \.{TRIP.TYP}, and \.{TRIP.FOT},
+as in Appendices B, C, D, E, F, and~G. Furthermore, let's suppose that you
+have a working \.{WEB} system, and that you have working programs \.{TFtoPL},
+\.{PLtoTF}, \.{DVItype}, as described in the \TeX ware report.
+
+\item{1.} Use \.{PLtoTF} to convert \.{TRIP.PL} into \.{TRIP.TFM}.
+Then use \.{TFtoPL} to convert \.{TRIP.TFM} into \.{TMP.PL}. Check that
+\.{TMP.PL} is identical to \.{TRIP.PL} (this is a partial test of \.{PLtoTF}
+and \.{TFtoPL}). Install \.{TRIP.TFM} in the standard file area for
+\TeX\ font metric files.
+
+\item{2.} Prepare a special version of \.{INITEX}. (This means that your \.{WEB}
+change file should have {\bf init} and {\bf tini} defined to be null.)
+The {\bf stat} and {\bf tats} macros should also be null, so that
+statistics are kept and other special features are enabled. Set
+\\{mem\_min} and \\{mem\_bot} equal to~1, and set \\{mem\_top} and
+\\{mem\_max} equal to~3000, for purposes of this test version. Also set
+$\\{error\_line}=64$, $\\{half\_error\_line}=32$, and
+$\\{max\_print\_line}=72$; these parameters affect many of the lines of
+the test output, so your job will be much easier if you use the same
+settings that were used to produce Appendix~E. You probably should also
+use the ``normal'' settings of other parameters found in \.{TEX.WEB}
+(e.g., $\\{stack\_size}=200$, $\\{font\_max}=75$, etc.), since these show
+up in a few lines of the test output. Your test version should not
+change the default definition of unprintable characters (\S49 of the program).
+
+\item{3.} Run the \.{INITEX} prepared in step 2. In response to the first
+`\.{**}' prompt, type carriage return (thus getting another `\.{**}').
+Then type `\.{\char`\\input trip}'. You should get an output that matches
+the file \.{TRIPIN.LOG} (Appendix~D). Don't be alarmed by the error
+messages that you see, unless they are different from those in Appendix~D.
+
+\def\sp{{\char'40}}
+\item{4.} Run \.{INITEX} again. This time type `\.{\sp\&trip\sp\sp trip\sp}'.
+(The spaces in this input help to check certain parts of \TeX\ that
+aren't otherwise used.) You should get outputs \.{TRIP.LOG}, \.{TRIP.DVI},
+and \.{TRIPOS.TEX}; there will also be an empty file \.{8TERMINAL.TEX}.
+Furthermore, your terminal should receive output that matches \.{TRIP.FOT}
+(Appendix~H). During the middle part of this test, however, the terminal
+will not be getting output, because \.{\char'134batchmode} is being
+tested; don't worry if nothing seems to be happening for a while---nothing
+is supposed to.
+
+\item{5.} Compare the \.{TRIP.LOG} file from step 4 with the ``master''
+\.{TRIP.LOG} file of step~0. (Let's hope you put that master file in a
+safe place so that it wouldn't be clobbered.) There should be perfect
+agreement between these files except in the following respects:
+
+\itemitem{a)} The dates and possibly the file names will
+naturally be different.
+
+\itemitem{b)} Glue settings in the displays of \TeX\ boxes are subject
+to system-dependent rounding, so slight deviations are permissible. However,
+such deviations apply only to the `\.{glue set}' values that appear at the
+end of an \.{\char'134hbox} or \.{\char'134vbox} line;
+all other numbers should agree exactly, since they are computed with
+integer arithmetic in a prescribed system-independent manner.
+
+\itemitem{c)} The amount of space in kerns that are marked ``for accent''
+are, similarly, subject to system-dependent rounding.
+
+\itemitem{d)} If you had different values for \\{stack\_size}, \\{buf\_size},
+etc., the corresponding capacity values will be different when they
+are printed out at the end.
+
+\itemitem{e)} Help messages may be different; indeed, the author encourages
+non-English help messages in versions of \TeX\ for people who don't
+understand English as well as some other language.
+
+\itemitem{f)} The total number and length of strings at the end may well
+be different.
+
+\itemitem{g)} If your \TeX\ uses a different memory allocation or
+packing scheme or \.{DVI} output logic, the memory usage statistics may change.
+
+\item{6.} Use \.{DVItype} to convert your file \.{TRIP.DVI} to a file
+\.{TRIP.TYP}. The following options should be set when using \.{DVItype}:
+$$\vbox{\halign{#\hfil&\hfil#\cr
+Output level = 2\cr
+Starting page = \.{*.*.*.*.*.*.*.*.*.*}\hskip-20pt\cr
+Number of pages = 1000000&(this is the default)\cr
+Resolution = 7227/100&(this is one point per pixel)\cr
+New magnification = 0&(this is the default)\cr}}$$
+The resulting file should agree with the master \.{TRIP.TYP} file of step~0,
+except that some of the values might be a little off due to floating-point
+rounding discrepancies. Furthermore there may be differences between
+`\\{right}' and `\\w' and `\\x' commands, and between `\\{down}' and `\\y'
+and `\\z'; the key thing is that all characters and rules and \\{xxx}'s should
+be in almost the same positions as specified in Appendix~F.
+(If your \.{DVI}-writing routines differ substantially from those in
+\.{TEX.WEB}, you may want to write a \.{DVIcompare} program that
+detects any substantive differences between two given \.{DVI} files. Such
+a routine would be of general use besides.
+On the other hand, if you have set \\{dvi\_buf\_size} to 800, then your
+\.{DVI} file should be virtually identical to the one supplied.)
+
+\item{7.} You might also wish to test \.{TRIP} with other versions of
+\TeX\ (i.e., \.{VIRTEX} or a production version with other fonts and
+macros preloaded). It should work unless \TeX's primitives have been
+redefined. However, this step isn't essential, since all the code of
+\.{VIRTEX} appears in \.{INITEX}; you probably won't catch any more errors
+this way, unless they would already become obvious from normal use of
+the~system.
+
+\vfill\eject
+
+\section Appendix B: The \.{TRIP.TEX} file.
+The contents of the test routine are prefixed here with line numbers, for
+ease in comparing this file with the error messages printed later; the
+line numbers aren't actually present.
+\runninghead{APPENDIX B: \.{TRIP.TEX} (CONTINUED)}
+
+\vskip 8pt
+\begingroup\count255=0
+\everypar{\global\advance\count255 by 1
+ \hbox to 20pt{\sevenrm\hfil\the\count255\ \ }}
+\verbatim{trip.tex}
+\endgroup
+\vfill\eject
+
+\section Appendix C: The \.{TRIP.PL} file.
+The ``font'' defined here has only a few characters, but they include all
+the complexities that \TeX\ must deal with: ligatures, kerns,
+lists of characters, and extensible characters. Some of the dimensions
+are negative, just to make things worse yet. (The format of property-list
+files like this is explained in the documentation to \.{PLtoTF}, in
+the \TeX ware report.)
+\runninghead{APPENDIX C: \.{TRIP.PL} (CONTINUED)}
+
+\vskip8pt
+\verbatim{trip.pl}
+\vfill\eject
+
+\section Appendix D: The \.{TRIPIN.LOG} file.
+When \.{INITEX} makes the \.{TRIP.FMT} file, it also creates a file called
+\.{TRIP.LOG} that looks like this.
+\runninghead{APPENDIX D: \.{TRIPIN.LOG} (CONTINUED)}
+
+\vskip8pt
+\verbatim{tripin.log}
+\vfill\eject
+
+\section Appendix E: The \.{TRIP.LOG} file.
+Here is the major output of the \.{TRIP} test; it is generated by running
+\.{INITEX} and loading \.{TRIP.FMT}, then reading \.{TRIP.TEX}.
+\runninghead{APPENDIX E: \.{TRIP.LOG} (CONTINUED)}
+
+{\let\tt=\eighttt\leftskip 1in\baselineskip 9pt plus .1pt minus .1pt
+\vskip8pt
+\verbatim{trip.log}
+}
+\vfill\eject
+
+\section Appendix F: The \.{TRIP.TYP} file.
+Here is another major component of the test. It shows the output of \.{DVItype}
+applied to the file \.{TRIP.DVI} that was created at the same time
+Appendix E was produced.
+\runninghead{APPENDIX F: \.{TRIP.TYP} (CONTINUED)}
+
+{\let\tt=\eighttt\leftskip 1in\baselineskip 9pt plus .1pt minus .1pt
+\vskip8pt
+\verbatim{trip.typ}
+}
+\vfill\eject
+
+\section Appendix G: The \.{TRIPOS.TEX} file.
+This short file was written out once and read in twice, during the time
+Appendix E was being produced. There are only three lines, the first of
+which is blank.
+\runninghead{APPENDIX G: \.{TRIPOS.TEX} (CONTINUED)}
+
+\vskip8pt
+\verbatim{tripos.tex}
+\vfill\eject
+
+\section Appendix H: The \.{TRIP.FOT} file.
+This shows what appeared on the terminal while Appendix E was being produced.
+\runninghead{APPENDIX H: \.{TRIP.FOT} (CONTINUED)}
+
+\vskip8pt
+\verbatim{trip.fot}
+
+\vfill\end
diff --git a/Build/source/texk/web2c/triptrap/tripos.tex b/Build/source/texk/web2c/triptrap/tripos.tex
new file mode 100644
index 00000000000..a0e25a24d8e
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/tripos.tex
@@ -0,0 +1,3 @@
+
+\uppercase {0{\outputpenalty }}
+[\uppercase {mmmmmmmmmm}[
diff --git a/Build/source/texk/web2c/triptrap/writeo b/Build/source/texk/web2c/triptrap/writeo
new file mode 100644
index 00000000000..1e2617f7450
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/writeo
@@ -0,0 +1 @@
+Clobbered.
diff --git a/Build/source/texk/web2c/triptrap/writeo.2 b/Build/source/texk/web2c/triptrap/writeo.2
new file mode 100644
index 00000000000..e38139b2e83
--- /dev/null
+++ b/Build/source/texk/web2c/triptrap/writeo.2
@@ -0,0 +1,10 @@
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *