% +AMDG This document was begun on 10 July 11EX, the feast % of St. John Gualbert, A, and it is humbly dedicated to him % and to the Immaculate Heart of Mary for their prayers, and % to the Sacred Heart of Jesus for His mercy. picture paren; picture squarebrack; beginchar(oct"000",1.5pwid#,cap#,dep#); "The open parenthesis, ("; z0 = (w,h+o); z1 = (w,-d-o); z2 = (ss,(h-d)/2); z3 = z2 shifted (thickl,0); fill z1{dir 150}..{up}z3{up}..{dir 30}z0{dir 200}..{down}z2{down}..{dir -20}z1..cycle; paren := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51); endchar; beginchar(oct"001",1.5pwid#,cap#,dep#); "The close parenthesis, )"; currentpicture := paren rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"002",2pwid#,cap#+ss#,dep#); "The open square bracket, ["; z0 = (w-ss,h); z1 = z0 shifted (0,-thickl); z2 = (ss,h); z3 = z2 shifted (thickl,-thickl); z4 = (ss,-d); z5 = z4 shifted (thickl,thickl); z6 = (w-ss,-d); z7 = z6 shifted (0,thickl); z8 = 0.5[z0,z1] shifted (0,0); z9 = 0.5[z7,z6] shifted (0,0); path squarebrack; squarebrack = z0--z2--z4--z6--z7--z5--z3--z1--cycle; fill squarebrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"003",2pwid#,cap#+ss#,dep#); "The close square bracket, ]"; fill squarebrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"004",2pwid#,cap#,dep#); "left floor"; pickup pencircle scaled thickl; top lft z0 = (ss,h+o); bot lft z1 = (ss,-d); bot rt z2 = (w-ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"005",2pwid#,cap#,dep#); "right floor"; pickup pencircle scaled thickl; top rt z0 = (w-ss,h+o); bot rt z1 = (w-ss,-d); bot lft z2 = (ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"006",2pwid#,cap#,dep#); "left ceil"; pickup pencircle scaled thickl; top lft z0 = (ss,h+o); bot lft z1 = (ss,-d); top rt z2 = (w-ss,h+o); draw z1--z0--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"007",2pwid#,cap#,dep#); "right ceil"; pickup pencircle scaled thickl; top rt z0 = (w-ss,h+o); bot rt z1 = (w-ss,-d); top lft z2 = (ss,h+o); draw z2--z0--z1; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"010",1.8pwid#,cap#+ss#,dep#); "The open curly bracket, {"; brackwid = thickl; toth = h+d; pickup pencircle xscaled brackwid yscaled (thinl); top rt z0 = (w-ss,h); bot rt z1 = (w-ss,-d); lft z2 = (ss,h-toth/2); z3 = (3(x0-x2)/4,h-toth/4); z4 = (3(x0-x2)/4,h-3toth/4); path curlybrack; curlybrack = z0{left}..{down}z3..{left}z2{right}..z4{down}..{right}z1; draw curlybrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"011",1.8pwid#,cap#+ss#,dep#); "The close curly bracket, }"; pickup pencircle xscaled brackwid yscaled (thinl); draw curlybrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"012",1.8pwid#,cap#+ss#,dep#); "Open angle bracket"; pickup pencircle scaled 1.5thinl; top rt z0 = (w-ss,h); lft z1 = (ss,(h+d)/2-d); bot rt z2 = (w-ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"013",1.8pwid#,cap#+ss#,dep#); "Close angle bracket"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h); rt z1 = (w-ss,(h+d)/2-d); bot lft z2 = (ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"014",0.9pwid#,ex#,0); "pipe extender"; pickup pencircle scaled thickl; z0 = (w/2,h); z1 = (w/2,0); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"015",0.9pwid#,ex#,0); "pipe extender"; pickup pencircle scaled thickl; z0 = (w/2-thickstroke,h); z1 = (w/2-thickstroke,0); z2 = (w/2+thickstroke,h); z3 = (w/2+thickstroke,0); draw z0--z1; draw z2--z3; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"016",2pwid#,cap#,0); "slash, solidus"; pickup pencircle scaled 1.5thinl; top rt z0 = (w-ss,h+o); bot lft z1 = (ss,0-o); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"017",2pwid#,cap#,0); "backslash"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h+o); bot rt z1 = (w-ss,0-o); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"020",2.5pwid#,2cap#,2dep#); "Bigger open parenthesis, ("; z0 = (w,h+o); z1 = (w,-d-o); z2 = (ss,(h-d)/2); z3 = z2 shifted (thickl,0); fill z1{dir 150}..{up}z3{up}..{dir 30}z0{dir 200}..{down}z2{down}..{dir -20}z1..cycle; picture biggerparen; biggerparen := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51); endchar; beginchar(oct"021",2.5pwid#,2cap#,2dep#); "Bigger close parenthesis, )"; currentpicture := biggerparen rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"022",3pwid#,3cap#,3dep#); "Bigger open parenthesis, ("; z0 = (w,h+o); z1 = (w,-d-o); z2 = (ss,(h-d)/2); z3 = z2 shifted (thickl,0); fill z1{dir 150}..{up}z3{up}..{dir 30}z0{dir 200}..{down}z2{down}..{dir -20}z1..cycle; picture biggererparen; biggererparen := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51); endchar; beginchar(oct"023",3pwid#,3cap#,3dep#); "Bigger close parenthesis, )"; currentpicture := biggererparen rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"040",4pwid#,4cap#,4dep#); "Bigger open parenthesis, ("; z0 = (w,h+o); z1 = (w,-d-o); z2 = (ss,(h-d)/2); z3 = z2 shifted (thickl,0); fill z1{dir 150}..{up}z3{up}..{dir 30}z0{dir 200}..{down}z2{down}..{dir -20}z1..cycle; picture biggestparen; biggestparen := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51); endchar; beginchar(oct"041",4pwid#,4cap#,4dep#); "Bigger close parenthesis, )"; currentpicture := biggestparen rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"024",3pwid#,3cap#+ss#,3dep#); "The open square bracket, ["; z0 = (w-ss,h); z1 = z0 shifted (0,-thickl); z2 = (ss,h); z3 = z2 shifted (thickl,-thickl); z4 = (ss,-d); z5 = z4 shifted (thickl,thickl); z6 = (w-ss,-d); z7 = z6 shifted (0,thickl); z8 = 0.5[z0,z1] shifted (0,0); z9 = 0.5[z7,z6] shifted (0,0); path biggersquarebrack; biggersquarebrack = z0--z2--z4--z6--z7--z5--z3--z1--cycle; fill biggersquarebrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"025",3pwid#,3cap#+ss#,3dep#); "The close square bracket, ]"; fill biggersquarebrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"042",4pwid#,4cap#+ss#,4dep#); "The open square bracket, ["; z0 = (w-ss,h); z1 = z0 shifted (0,-thickl); z2 = (ss,h); z3 = z2 shifted (thickl,-thickl); z4 = (ss,-d); z5 = z4 shifted (thickl,thickl); z6 = (w-ss,-d); z7 = z6 shifted (0,thickl); z8 = 0.5[z0,z1] shifted (0,0); z9 = 0.5[z7,z6] shifted (0,0); path biggestsquarebrack; biggestsquarebrack = z0--z2--z4--z6--z7--z5--z3--z1--cycle; fill biggestsquarebrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"043",4pwid#,4cap#+ss#,4dep#); "The close square bracket, ]"; fill biggestsquarebrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"026",3pwid#,3cap#,3dep#); "left floor"; pickup pencircle scaled thickl; top lft z0 = (ss,h+o); bot lft z1 = (ss,-d); bot rt z2 = (w-ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"027",3pwid#,3cap#,3dep#); "right floor"; pickup pencircle scaled thickl; top rt z0 = (w-ss,h+o); bot rt z1 = (w-ss,-d); bot lft z2 = (ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"044",4pwid#,4cap#,4dep#); "left floor"; pickup pencircle scaled thickl; top lft z0 = (ss,h+o); bot lft z1 = (ss,-d); bot rt z2 = (w-ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"045",4pwid#,4cap#,4dep#); "right floor"; pickup pencircle scaled thickl; top rt z0 = (w-ss,h+o); bot rt z1 = (w-ss,-d); bot lft z2 = (ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"030",3pwid#,3cap#,3dep#); "left ceil"; pickup pencircle scaled thickl; top lft z0 = (ss,h+o); bot lft z1 = (ss,-d); top rt z2 = (w-ss,h+o); draw z1--z0--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"031",3pwid#,3cap#,3dep#); "right ceil"; pickup pencircle scaled thickl; top rt z0 = (w-ss,h+o); bot rt z1 = (w-ss,-d); top lft z2 = (ss,h+o); draw z2--z0--z1; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"046",4pwid#,4cap#,4dep#); "left ceil"; pickup pencircle scaled thickl; top lft z0 = (ss,h+o); bot lft z1 = (ss,-d); top rt z2 = (w-ss,h+o); draw z1--z0--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"047",4pwid#,4cap#,4dep#); "right ceil"; pickup pencircle scaled thickl; top rt z0 = (w-ss,h+o); bot rt z1 = (w-ss,-d); top lft z2 = (ss,h+o); draw z2--z0--z1; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"032",3pwid#,3cap#+ss#,3dep#); "The open curly bracket, {"; biggertoth = h+d; pickup pencircle xscaled brackwid yscaled (thinl); top rt z0 = (w-ss,h); bot rt z1 = (w-ss,-d); lft z2 = (ss,h-biggertoth/2); z3 = (3(x0-x2)/4,h-biggertoth/4); z4 = (3(x0-x2)/4,h-3biggertoth/4); path biggercurlybrack; biggercurlybrack = z0{left}..{down}z3..{left}z2{right}..z4{down}..{right}z1; draw biggercurlybrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"033",3pwid#,3cap#+ss#,3dep#); "The close curly bracket, }"; pickup pencircle xscaled brackwid yscaled (thinl); draw biggercurlybrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"050",4pwid#,4cap#+ss#,4dep#); "The open curly bracket, {"; biggesttoth = h+d; pickup pencircle xscaled brackwid yscaled (thinl); top rt z0 = (w-ss,h); bot rt z1 = (w-ss,-d); lft z2 = (ss,h-biggesttoth/2); z3 = (3(x0-x2)/4,h-biggesttoth/4); z4 = (3(x0-x2)/4,h-3biggesttoth/4); path biggestcurlybrack; biggestcurlybrack = z0{left}..{down}z3..{left}z2{right}..z4{down}..{right}z1; draw biggestcurlybrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"051",4pwid#,4cap#+ss#,4dep#); "The close curly bracket, }"; pickup pencircle xscaled brackwid yscaled (thinl); draw biggestcurlybrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"150",2.5pwid#,2cap#+ss#,2dep#); "The open square bracket, ["; z0 = (w-ss,h); z1 = z0 shifted (0,-thickl); z2 = (ss,h); z3 = z2 shifted (thickl,-thickl); z4 = (ss,-d); z5 = z4 shifted (thickl,thickl); z6 = (w-ss,-d); z7 = z6 shifted (0,thickl); z8 = 0.5[z0,z1] shifted (0,0); z9 = 0.5[z7,z6] shifted (0,0); path squarebrack; squarebrack = z0--z2--z4--z6--z7--z5--z3--z1--cycle; fill squarebrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"151",2.5pwid#,2cap#+ss#,2dep#); "The close square bracket, ]"; fill squarebrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"152",2.5pwid#,2cap#,2dep#); "left floor"; pickup pencircle scaled thickl; top lft z0 = (ss,h+o); bot lft z1 = (ss,-d); bot rt z2 = (w-ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"153",2.5pwid#,2cap#,2dep#); "right floor"; pickup pencircle scaled thickl; top rt z0 = (w-ss,h+o); bot rt z1 = (w-ss,-d); bot lft z2 = (ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"154",2.5pwid#,2cap#,2dep#); "left ceil"; pickup pencircle scaled thickl; top lft z0 = (ss,h+o); bot lft z1 = (ss,-d); top rt z2 = (w-ss,h+o); draw z1--z0--z2; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"155",2.5pwid#,2cap#,2dep#); "right ceil"; pickup pencircle scaled thickl; top rt z0 = (w-ss,h+o); bot rt z1 = (w-ss,-d); top lft z2 = (ss,h+o); draw z2--z0--z1; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"156",2.5pwid#,2cap#+ss#,2dep#); "The open curly bracket, {"; brackwid := 2thinl; tothtwo = h+d; pickup pencircle xscaled brackwid yscaled (thinl); top rt z0 = (w-ss,h); bot rt z1 = (w-ss,-d); lft z2 = (ss,h-tothtwo/2); z3 = (3(x0-x2)/4,h-tothtwo/4); z4 = (3(x0-x2)/4,h-3tothtwo/4); path curlybrack; curlybrack = z0{left}..{down}z3..{left}z2{right}..z4{down}..{right}z1; draw curlybrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"157",2.5pwid#,2cap#+ss#,2dep#); "The close curly bracket, }"; pickup pencircle xscaled brackwid yscaled (thinl); draw curlybrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"104",2.5pwid#,2cap#+ss#,3dep#); "Open angle bracket"; pickup pencircle scaled 1.5thinl; top rt z0 = (w-ss,h); lft z1 = (ss,(h+d)/2-d); bot rt z2 = (w-ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"034",3pwid#,3cap#+ss#,3dep#); "Open angle bracket"; pickup pencircle scaled 1.5thinl; top rt z0 = (w-ss,h); lft z1 = (ss,(h+d)/2-d); bot rt z2 = (w-ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"105",2.5pwid#,2cap#+ss#,3dep#); "Close angle bracket"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h); rt z1 = (w-ss,(h+d)/2-d); bot lft z2 = (ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"035",3pwid#,3cap#+ss#,3dep#); "Close angle bracket"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h); rt z1 = (w-ss,(h+d)/2-d); bot lft z2 = (ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"036",3pwid#,3cap#,0); "slash, solidus"; pickup pencircle scaled 1.5thinl; top rt z0 = (w-ss,h+o); bot lft z1 = (ss,0-o); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"037",3pwid#,3cap#,0); "backslash"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h+o); bot rt z1 = (w-ss,0-o); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"052",4pwid#,4cap#+ss#,4dep#); "Open angle bracket"; pickup pencircle scaled 1.5thinl; top rt z0 = (w-ss,h); lft z1 = (ss,(h+d)/2-d); bot rt z2 = (w-ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"053",4pwid#,4cap#+ss#,4dep#); "Close angle bracket"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h); rt z1 = (w-ss,(h+d)/2-d); bot lft z2 = (ss,-d); draw z0--z1--z2; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"054",4pwid#,4cap#,0); "slash, solidus"; pickup pencircle scaled 1.5thinl; top rt z0 = (w-ss,h+o); bot lft z1 = (ss,0-o); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"055",4pwid#,4cap#,0); "backslash"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h+o); bot rt z1 = (w-ss,0-o); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"056",2.5pwid#,2cap#,0); "slash, solidus"; pickup pencircle scaled 1.5thinl; top rt z0 = (w-ss,h+o); bot lft z1 = (ss,0-o); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"057",2.5pwid#,2cap#,0); "backslash"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h+o); bot rt z1 = (w-ss,0-o); draw z0--z1; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"060",3pwid#,3cap#,3dep#); "The open paren top exten"; z0 = (w,h+o); z1 = (w,-d-o); z2 = (ss,-d); z3 = z2 shifted (thickl,0); fill z3{up}...{dir 30}z0{dir 200}...{down}z2--cycle; picture openparentop; openparentop := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51); endchar; beginchar(oct"061",3pwid#,3cap#,3dep#); "The close paren top exten"; currentpicture := openparentop reflectedabout ((w/2,h),(w/2,(h-d)/2)); endchar; beginchar(oct"062",3pwid#,3cap#+ss#,3dep#); "The top open square bracket exten"; z0 = (w-ss,h); z1 = z0 shifted (0,-thickl); z2 = (ss,h); z3 = z2 shifted (thickl,-thickl); z4 = (ss,-d); z5 = z4 shifted (thickl,0); path topsquarebrack; topsquarebrack = z0--z2--z4--z5--z3--z1--cycle; fill topsquarebrack; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"063",3pwid#,3cap#+ss#,3dep#); "The top close square bracket exten"; fill topsquarebrack reflectedabout ((w/2,h),(w/2,-d)); endchar; beginchar(oct"064",3pwid#,3cap#+ss#,3dep#); "The bottom open square bracket exten"; fill topsquarebrack reflectedabout ((0,(h-d)/2),(w,(h-d)/2)); endchar; beginchar(oct"065",3pwid#,3cap#+ss#,3dep#); "The bottom open square bracket exten"; fill topsquarebrack rotatedaround ((w/2,(h-d)/2),180); endchar; beginchar(oct"066",3pwid#,ex#,dep#); "left square bracket extension piece"; z0 = (ss,h); z1 = z0 shifted (thickl,0); z2 = (ss,-d); z3 = z2 shifted (thickl,0); fill z0--z1--z3--z2--cycle; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"067",3pwid#,ex#,dep#); "right square bracket extension piece"; z0 = (w-ss,h); z1 = z0 shifted (-thickl,0); z2 = (w-ss,-d); z3 = z2 shifted (-thickl,0); fill z0--z1--z3--z2--cycle; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"102",3pwid#,ex#,dep#); "Left paren exten"; z0 = (ss,h); z1 = (ss,-d); z2 = z1 shifted (thickl,0); z3 = z0 shifted (thickl,0); fill z0--z1--z2--z3--cycle; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"103",3pwid#,ex#,dep#); "Right paren exten"; z0 = (w-ss,h); z1 = (w-ss,-d); z2 = z1 shifted (-thickl,0); z3 = z0 shifted (-thickl,0); fill z0--z1--z2--z3--cycle; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"100",3pwid#,3cap#,3dep#); "The open paren bot exten"; currentpicture := openparentop reflectedabout ((0,(h-d)/2),(w,(h-d)/2)); endchar; beginchar(oct"101",3pwid#,3cap#,3dep#); "The close paren bot exten"; currentpicture := openparentop reflectedabout ((0,(h-d)/2),(w,(h-d)/2)) reflectedabout ((w/2,h),(w/2,(h-d)/2)); endchar; beginchar(oct"070",3pwid#,cap#,0); "The open curly top exten"; brackwid := thickl; toth := h+d; pickup pencircle xscaled brackwid yscaled (thinl); top rt z0 = (w-ss,h); z1 = (w/2,0); draw z0{left}..{down}z1; picture curlyopentop; curlyopentop := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,100); endchar; beginchar(oct"071",3pwid#,cap#,0); "The close curly top exten"; currentpicture := curlyopentop reflectedabout ((w/2,h),(w/2,0)); endchar; beginchar(oct"072",3pwid#,cap#,0); "The open curly bot exten"; currentpicture := curlyopentop reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"073",3pwid#,cap#,0); "The close curly bot exten"; currentpicture := curlyopentop reflectedabout ((0,h/2),(w,h/2)) reflectedabout ((w/2,h),(w/2,0)); endchar; beginchar(oct"076",3pwid#,ex#,0); "The open curly brack exten"; pickup pencircle xscaled brackwid yscaled (thinl); draw (w/2,h)--(w/2,0); endchar; beginchar(oct"074",3pwid#,3cap#,0); "The open middle curly brack"; pickup pencircle xscaled brackwid yscaled (thinl); z0 = (w/2,h); z1 = (2w/3,0.6h); z2 = (ss,h/2); z3 = (2w/3,0.4h); z4 = (w/2,0); draw z0{down}..{dir -165}z2; draw z4{up}..{dir -195}z2; picture midcurly; midcurly := currentpicture; endchar; beginchar(oct"075",3pwid#,3cap#,0); "The close middle curly brack"; currentpicture := midcurly reflectedabout ((w/2,h),(w/2,0)); endchar; beginchar(oct"077",ex#,ex#,0); "Vertical arrow extension"; pickup pencircle scaled 1.5thinl; draw (w/2,h)--(w/2,0); endchar; beginchar(oct"170",ex#,cap#,0); "Upward arrow head"; pickup pencircle scaled 1.5thinl; top z0 = (w/2,h); bot z1 = (w/2,0); lft z2 = (0,2h/3); rt z3 = (w,2h/3); draw z0--z1; draw z2--z0--z3; picture uparrow; uparrow := currentpicture; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"171",ex#,cap#,0); "Downward arrow head"; currentpicture := uparrow reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"176",em#,cap#,0); "Double up arrow with head"; pickup pencircle scaled 1.5thinl; top z0 = (w/2,h); lft z1 = (0,2h/3); rt z2 = (w,2h/3); path head; head = z1--z0--z2; draw head; z3 = (w/3,0); z4 = (2w/3,0); z5 = (z3--(x3,h)) intersectionpoint head; z6 = (z4--(x4,h)) intersectionpoint head; draw z3--z5; draw z4--z6; picture doublehead; doublehead := currentpicture; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"177",em#,cap#,0); "Double down arrow with head"; currentpicture := doublehead reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"167",em#,cap#,0); "Double arrow exten"; pickup pencircle scaled 1.5thinl; draw (w/3,0)--(w/3,h); draw (2w/3,0)--(2w/3,h); endchar; beginchar(oct"106",1.5ex#,cap#,0); "small upward square cup"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h+o); top rt z1 = (w-ss,h+o); bot lft z2 = (ss,0-o); bot rt z3 = (w-ss,0-o); path upsquarecup; upsquarecup = z0--z2--z3--z1; draw upsquarecup; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"107",3ex#,2cap#,ex#); "large upward square cup"; pickup pencircle scaled thickl; draw upsquarecup scaled 2 shifted (0,-ex); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"142",ex#,cap#,0); "narrow hat"; z0 = (ss,h-pwid); z1 = (w/2,h+o); z2 = (w-ss,y0); z3 = z1 shifted (0,-thickl); z4 = z0 shifted (0,thinl); z5 = z2 shifted (0,thinl); path hat; hat = z1--z5{dir -45}..z2--z3--z0{dir -225}..z4--cycle; fill hat; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"143",2ex#,cap#,0); "middle hat"; fill hat xscaled 2; endchar; beginchar(oct"144",3ex#,cap#,0); "wide hat"; fill hat xscaled 3; endchar; beginchar(oct"145",ex#,cap#,0); "narrow tilde"; z0 = (ss,h-pwid-o); z1 = (w/3,h-ss); z2 = (2w/3,h-pwid); z3 = (w-ss,h); z4 = z1 shifted (0,-1.5thinl); z5 = z2 shifted (0,1.5thinl); path tildpath; tildpath = z0..{right}z1{right}..{right}z5{right}.. {dir 60}z3{dir -95}..{left}z2{left}..{left}z4{left}.. z0..cycle; fill tildpath; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51); endchar; beginchar(oct"146",2ex#,cap#,0); "middle tilde"; fill tildpath xscaled 2; endchar; beginchar(oct"147",3ex#,cap#,0); "wide tilde"; fill tildpath xscaled 3; endchar; beginchar(oct"122",ex#+2ss#,asch#,dep#); "Integral; moustache"; italcorr(ex#*slant); penpos0(thickl,0); z0 = (w/2,h-curlh); penpos1(thickl,0); z1 = (w/2,-d+curlh); penpos2(thinl,-90); z2 = (3w/4,h+o); penpos3(thinl,-90); z3 = (x1-curlw,-d-o); penpos4(thickl,180); z4 = (x2+curlw,y0); penpos5(thickl,-180); z5 = (x3-curlw,y1); penpos6(thinl,70); z6r = (w/2,ex); penpos7(thinl,70); z7 = (ss,y6); penpos8(thinl,70); z8 = (w-ss,y6); penpos9(thinl,0); z9r = z4r; penpos10(thinl,225); z10r = z9r; penpos11(thinl,0); z11l = z5l; penpos12(thinl,225); z12l = z11l; penstroke (z12e..z11e..z5e..{right}z3e{right}..z1e--- z0e..{right}z2e{right}..z4e..z9e..z10e) slanted (1/6); picture smallint; smallint := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"132",2ex#+2ss#,2asch#,2dep#); "Large integral; moustache"; italcorr(ex#*slant); penpos0(thickl,0); z0 = (w/2,h-curlh); penpos1(thickl,0); z1 = (w/2,-d+curlh); penpos2(thinl,-90); z2 = (3w/4,h+o); penpos3(thinl,-90); z3 = (x1-curlw,-d-o); penpos4(thickl,180); z4 = (x2+curlw,y0); penpos5(thickl,-180); z5 = (x3-curlw,y1); penpos6(thinl,70); z6r = (w/2,ex); penpos7(thinl,70); z7 = (ss,y6); penpos8(thinl,70); z8 = (w-ss,y6); penpos9(thinl,0); z9r = z4r; penpos10(thinl,225); z10r = z9r; penpos11(thinl,0); z11l = z5l; penpos12(thinl,225); z12l = z11l; penstroke (z12e..z11e..z5e..{right}z3e{right}..z1e--- z0e..{right}z2e{right}..z4e..z9e..z10e) slanted (1/6); picture largeint; largeint := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"110",ex#+2ss#,asch#,dep#); "Integral, circled; moustache, circled"; italcorr(ex#*slant); currentpicture := smallint; pickup pencircle scaled 1.5thinl; draw (fullcircle scaled (w/2+3thinl) shifted (w/2,h/3)) slanted (1/6); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"111",2ex#+2ss#,2asch#,2dep#); "Large Integral, circled; Large moustache, circled"; italcorr(ex#*slant); currentpicture := largeint; pickup pencircle scaled 1.5thinl; draw (fullcircle scaled (w/2+3thinl) shifted (w/2,h/3)) slanted (1/6); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"160",3em#/4+2ss#,0.4pt#,cap#); "square root"; z0 = (ss,cap/3); z1 = (w/8,cap/3+thickl); z2 = (w/3,0-o); z3 = (w-ss,cap+0.4pt); z4 = z0 shifted (0,-thinl/2); z5 = z1 shifted (0,-1.5thickl); z6 = z2 shifted (0,1.5thickl); z7 = z3 shifted (0,-0.4pt); z8 = ((z4--z1) intersectionpoint (z5--(0,y1))) shifted (thinl/2,-thinl/2); z9 = z3 shifted (thickl,0); z10 = z7 shifted (thickl,0); fill (z0--z4--z8--z5--z2--z7--z10--z9--z3--z6--z1--cycle) shifted (0,-cap); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"161",3em#/4+2ss#,0.4pt#,2cap#); "second square root"; z0 = (ss,2cap/3); z1 = (w/8,2cap/3+2thickl); z2 = (w/3,0-o); z3 = (w-ss-thinl,2cap+0.4pt); z4 = z0 shifted (0,-thinl); z5 = z1 shifted (0,-3thickl); z6 = z2 shifted (0,3thickl); z7 = z3 shifted (thinl,-0.4pt); z8 = ((z4--z1) intersectionpoint (z5--(0,y1))) shifted (thinl/4,-thinl); z9 = z3 shifted (2thickl,0); z10 = z7 shifted (2thickl,0); fill (z0--z4--z8--z5--z2--z7--z10--z9--z3--z6--z1--cycle) shifted (0,-2cap); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar; beginchar(oct"162",em#+2ss#,0.4pt#,3cap#); "third square root"; z0 = (ss,3cap/3); z1 = (w/8,3cap/3+3thickl); z2 = (w/3,0-o); z3 = (w-ss-2thinl,3cap+0.4pt); z4 = z0 shifted (0,-thinl); z5 = z1 shifted (0,-3thickl); z6 = z2 shifted (0,5thickl); z7 = z3 shifted (2thinl,-0.4pt); z8 = ((z4--z1) intersectionpoint (z5--(0,y1))) shifted (thinl/2,-thinl); z9 = z3 shifted (2thickl,0); z10 = z7 shifted (2thickl,0); fill (z0--z4--z8--z5--z2--z7--z10--z9--z3--z6--z1--cycle) shifted (0,-3cap); endchar; beginchar(oct"163",em#+2ss#,0.4pt#,4cap#); "fourth square root"; z0 = (ss,4cap/3); z1 = (w/8,4cap/3+4thickl); z2 = (w/3,0-o); z3 = (w-ss-2thinl,4cap+0.4pt); z4 = z0 shifted (0,-thinl); z5 = z1 shifted (0,-4thickl); z6 = z2 shifted (0,7thickl); z7 = z3 shifted (2thinl,-0.4pt); z8 = ((z4--z1) intersectionpoint (z5--(0,y1))) shifted (thinl/2,-thinl); z9 = z3 shifted (2thickl,0); z10 = z7 shifted (2thickl,0); fill (z0--z4--z8--z5--z2--z7--z10--z9--z3--z6--z1--cycle) shifted (0,-4cap); endchar; beginchar(oct"164",3em#/4+2ss#,2cap#,0); "radical bot exten"; z0 = (ss,3h/4-2thickl); z1 = (w/8,3h/4+thickl); z2 = (w-ss,0-o); z3 = (w-ss,h+o); z4 = z0 shifted (0,-thinl/2); z5 = z1 shifted (0,-2thickl); z6 = z2 shifted (0,2thickl); z7 = z3 shifted (-thickl,0); z8 = ((z4--z1) intersectionpoint (z5--(0,y1))) shifted (thinl/2,-thinl/2); z9 = 0.19[z6,z1]; z10 = z4 rotatedaround (z0,45); fill z0--z10--z5--z2--z3--z7--z9--z1--cycle; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"165",3em#/4+2ss#,ex#,0); "radical exten"; z0 = (w-ss,h); z1 = z0 shifted (-thickl,0); z2 = (w-ss,0); z3 = z2 shifted (-thickl,0); fill z0--z1--z3--z2--cycle; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"166",3em#/4+2ss#,0.4pt#,ex#); "radical top exten"; z0 = (w-ss,h); z1 = z0 shifted (-thickstroke,0); z2 = (w-ss,-d); z3 = z2 shifted (-thickstroke,0); z4 = z0 shifted (0,-0.4pt); z5 = z4 shifted (thickl,0); z6 = z0 shifted (thickl,0); fill (z3--z1--z6--z5--z4--z2--cycle); penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar; beginchar(oct"112",em#+2ss#,asch#,0); "circle dot"; pickup pencircle scaled 1.5thinl; draw fullcircle scaled (w-2ss-1.5thinl) shifted (w/2,h/2); fill fullcircle scaled (1.5thickl) shifted (w/2,h/2); endchar; beginchar(oct"113",2em#+2ss#,2asch#,0); "large circle dot"; pickup pencircle scaled thickl; draw fullcircle scaled (w-2ss-thickl) shifted (w/2,h/2); fill fullcircle scaled (2thickl) shifted (w/2,h/2); endchar; beginchar(oct"114",em#+2ss#,asch#,0); "circle plus"; pickup pencircle scaled 1.5thinl; draw fullcircle scaled (w-2ss-1.5thinl) shifted (w/2,h/2); lft z0 = (ss,h/2); rt z1 = (w-ss,h/2); top z2 = (w/2,h); bot z3 = (w/2,0); draw z0--z1; draw z2--z3; endchar; beginchar(oct"115",2em#+2ss#,2asch#,0); "large circle plus"; pickup pencircle scaled thickl; draw fullcircle scaled (w-2ss-thickl) shifted (w/2,h/2); lft z0 = (ss,h/2); rt z1 = (w-ss,h/2); top z2 = (w/2,h); bot z3 = (w/2,0); draw z0--z1; draw z2--z3; endchar; beginchar(oct"116",em#+2ss#,asch#,0); "circle x"; pickup pencircle scaled 1.5thinl; draw fullcircle scaled (w-2ss-1.5thinl) shifted (w/2,h/2); lft z0 = (ss,h/2); rt z1 = (w-ss,h/2); top z2 = (w/2,h); bot z3 = (w/2,0); draw (z0--z1) rotatedaround ((w/2,h/2),45); draw (z2--z3) rotatedaround ((w/2,h/2),45); endchar; beginchar(oct"117",2em#+2ss#,2asch#,0); "large circle x"; pickup pencircle scaled thickl; draw fullcircle scaled (w-2ss-thickl) shifted (w/2,h/2); lft z0 = (ss,h/2); rt z1 = (w-ss,h/2); top z2 = (w/2,h); bot z3 = (w/2,0); draw (z0--z1) rotatedaround ((w/2,h/2),45); draw (z2--z3) rotatedaround ((w/2,h/2),45); endchar; beginchar(oct"120",5em#/6+2ss#,cap#,0); "The letter Sigma"; italcorr(ex#*slant); z0 = (w-ss,h); z1 = (w-ss,h-thickstroke-thinstroke); z2 = z1 shifted (-thinstroke,0); z3 = z2 shifted (0,thinstroke); z4 = (ss,h); z5 = (ss,h-thickstroke); z6 = (w/2-1.5thinstroke/2,h/2); z7 = z6 shifted (1.5thinstroke,0); z8 = (ss,0); z9 = z8 shifted (0,thickstroke); z10 = (w-ss,0); z11 = z10 shifted (0,thickstroke+thinstroke); z12 = z11 shifted (-thinstroke,0); z13 = z12 shifted (0,-thinstroke); z14 = z5 shifted (1.5thinstroke,0); z15 = z9 shifted (1.5thinstroke,0); fill z11--z10--z8--z9--z6--z5--z4--z0--z1--z2--z3--z14-- z7--z15--z13--z12--cycle; picture Sigma; Sigma := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18); penlabels(19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34); endchar; beginchar(oct"130",10em#/6+2ss#,2cap#,0); "Large Sigma"; italcorr(ex#*slant); currentpicture := Sigma scaled 2 shifted (-ss,0); endchar; beginchar(oct"121",6em#/6+2ss#,cap#,0); "The letter Pi"; italcorr(ex#*slant); z0 = (ss+lserw,lserh); z1 = z0 shifted (thickstroke,0); z2 = (w-ss-lserw,lserh); z3 = z2 shifted (-thickstroke,0); llserif(0,4,5,6,7)(1); lrserif(1,8,9,10,11)(1); llserif(3,12,13,14,15)(1); lrserif(2,16,17,18,19)(1); z20 = (x0,h-lserh); z21 = (x1,h-thinstroke); z22 = (x3,h-thinstroke); z23 = (x2,h-lserh); ulserif(20,24,25,26,27)(1); urserif(23,28,29,30,31)(1); y26 := y30 := h; y6 := y10 := y14 := y18 := 0; fill z0..z4..z5--z6--z10--z9..z8..z1--z21--z22--z3..z12..z13--z14--z18--z17..z16..z2--z23..z28..z29--z30--z26--z25..z24..z20--cycle; picture pipic; pipic := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18); penlabels(19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34); endchar; beginchar(oct"131",2em#+2ss#,2cap#,0); "Large Pi"; italcorr(ex#*slant); currentpicture := pipic scaled 2 shifted (-ss,0); endchar; beginchar(oct"140",em#+2ss#,cap#,0); "Inverse Pi"; italcorr(ex#*slant); currentpicture := pipic shifted (-ss,0) reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"141",2em#+2ss#,2cap#,0); "Large Inverse Pi"; italcorr(ex#*slant); currentpicture := pipic scaled 2 shifted (-ss,0) reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"123",0.75em#+2ss#,cap#,0); "union"; pickup pencircle scaled 1.5thinl; top lft z0 = (ss,h); bot z1 = (w/2,0); top rt z2 = (w-ss,h); lft z5 = (ss,w/3); rt z6 = (w-ss,y5); draw z0---z5..{right}z1{right}..z6---z2; picture union; union := currentpicture; penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18); endchar; beginchar(oct"133",1.25em#+2ss#,2cap#,0); "big union"; pickup pencircle scaled thickl; top lft z0 = (ss,h); bot z1 = (w/2,0); top rt z2 = (w-ss,h); lft z5 = (ss,w/3); rt z6 = (w-ss,y5); draw z0---z5..{right}z1{right}..z6---z2; picture bigunion; bigunion := currentpicture; endchar; beginchar(oct"124",0.75em#+2ss#,cap#,0); "intersection"; currentpicture := union reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"134",1.25em#+2ss#,2cap#,0); "big intersection"; currentpicture := bigunion reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"125",0.75em#+2ss#,cap#,0); "intersection"; currentpicture := union; pickup pencircle scaled 1.5thinl; z0 = (w/4,h/2); z1 = (3w/4,h/2); z2 = z0 rotatedaround ((w/2,h/2),90); z3 = z0 rotatedaround ((w/2,h/2),-90); draw z0--z1; draw z2--z3; penlabels(0,1,2,3,4,5,6); endchar; beginchar(oct"135",1.25em#+2ss#,2cap#,0); "big intersection"; currentpicture := bigunion; pickup pencircle scaled thickl; z0 = (w/4,h/2); z1 = (3w/4,h/2); z2 = z0 rotatedaround ((w/2,h/2),90); z3 = z0 rotatedaround ((w/2,h/2),-90); draw z0--z1; draw z2--z3; endchar; beginchar(oct"126",0.75em#+2ss#,cap#,0); "upward triangle"; pickup pencircle scaled 1.5thinl; top z0 = (w/2,h); bot lft z1 = (ss,0); bot rt z2 = (w-ss,0); draw z0--z1; draw z0--z2; picture uptri; uptri := currentpicture; endchar; beginchar(oct"136",1.25em#+2ss#,2cap#,0); "big upward triangle"; pickup pencircle scaled thickl; top z0 = (w/2,h); bot lft z1 = (ss,0); bot rt z2 = (w-ss,0); draw z0--z1; draw z0--z2; picture biguptri; biguptri := currentpicture; endchar; beginchar(oct"127",0.75em#+2ss#,cap#,0); "upward triangle"; currentpicture := uptri reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"137",1.25em#+2ss#,2cap#,0); "big upward triangle"; currentpicture := biguptri reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"172",cap#,3pwid#,0); "downbrace left"; currentpicture := curlyopentop reflectedabout ((0,h/2),(w,h/2)) rotatedaround ((w/2,h/2),-90) shifted (pwid/2,0); endchar; beginchar(oct"173",cap#,3pwid#,0); "downbrace right"; currentpicture := curlyopentop reflectedabout ((0,h/2),(w,h/2)) rotatedaround ((w/2,h/2),90) shifted (-pwid/2,0) reflectedabout ((0,h/2),(w,h/2)); endchar; beginchar(oct"174",cap#,3pwid#,0); "upbrace left"; currentpicture := curlyopentop reflectedabout ((0,h/2),(w,h/2)) rotatedaround ((w/2,h/2),90) shifted (-pwid/2,0) reflectedabout ((w/2,0),(w/2,h)); endchar; beginchar(oct"175",cap#,3pwid#,0); "upbrace right"; currentpicture := curlyopentop reflectedabout ((0,h/2),(w,h/2)) rotatedaround ((w/2,h/2),90) shifted (-pwid/2,0); endchar; % open parens charlist oct"000" : oct"020" : oct"022" : oct"040" : oct"060"; extensible oct"060": oct"060",0,oct"100",oct"102"; % close parens charlist oct"001" : oct"021" : oct"023" : oct"041" : oct"061"; extensible oct"061": oct"061",0,oct"101",oct"103"; % open square brackets charlist oct"002" : oct"150" : oct"024" : oct"042" : oct"062"; extensible oct"062" : oct"062",0,oct"064",oct"066"; % close square brackets charlist oct"003" : oct"151" : oct"025" : oct"043" : oct"063"; extensible oct"063" : oct"063",0,oct"065",oct"067"; % open floor charlist oct"004" : oct"152" : oct"026" : oct"044" : oct"064"; extensible oct"064" : 0,0,oct"064",oct"066"; % close floor charlist oct"005" : oct"153" : oct"027" : oct"045" : oct"065"; extensible oct"065" : 0,0,oct"065",oct"067"; % open ceiling charlist oct"006": oct"154": oct"030": oct"046": oct"066"; extensible oct"066": oct"062",0,0,oct"066"; % close ceiling charlist oct"007": oct"155": oct"031": oct"047": oct"067"; extensible oct"067": oct"063",0,0,oct"067"; % open curly charlist oct"010": oct"156": oct"032": oct"050": oct"070"; extensible oct"070": oct"070",oct"074",oct"072",oct"076"; % close curly charlist oct"011": oct"157": oct"033": oct"051": oct"071"; extensible oct"071": oct"071",oct"075",oct"073",oct"076"; % left angle brackets charlist oct"012": oct"104": oct"034": oct"052"; % right angle brackets charlist oct"013": oct"105": oct"035": oct"053"; charlist oct"016": oct"056": oct"036": oct"054"; % slashes charlist oct"017": oct"057": oct"037": oct"055"; % backslashes % single arrow extensions extensible oct"074": 0,0,0,oct"077"; % arrow extension modules only extensible oct"077": oct"170",0,oct"171",oct"077"; % updownarrow extensible oct"170": oct"170",0,0,oct"077"; % uparrow extensible oct"171": 0,0,oct"171",oct"077"; % downarrow % double arrow extensions extensible oct"075": 0,0,0,oct"167"; % double arrow extension modules only extensible oct"167": oct"176",0,oct"177",oct"167"; % double updownarrow extensible oct"176": oct"176",0,0,oct"167"; % double uparrow extensible oct"177": 0,0,oct"177",oct"167"; % double downarrow % radical extensions charlist oct"160": oct"161": oct"162": oct"163": oct"164"; % radical signs extensible oct"164": oct"166",0,oct"164",oct"165"; % radical sign % vertical line extensible oct"014": 0,0,0,oct"014"; % double vertical line extensible oct"015": 0,0,0,oct"015"; % sharp parentheses extensible oct"072": oct"070",0,oct"072",oct"076"; extensible oct"073": oct"071",0,oct"073",oct"076"; % parentheses extension modules only extensible oct"102": 0,0,0,oct"102"; extensible oct"103": 0,0,0,oct"103"; % brace exension modules only extensible oct"076": 0,0,0,oct"076"; % large inegral signs ("moustaches") extensible oct"100": oct"070",0,oct"073",oct"076"; extensible oct"101": oct"071",0,oct"072",oct"076"; % summation signs charlist oct"120" : oct"130"; % product signs charlist oct"121" : oct"131"; % integral signs; moustaches charlist oct"122" : oct"132"; % cups charlist oct"123" : oct"133"; % caps charlist oct"124" : oct"134"; % capplus charlist oct"125" : oct"135"; % wedges charlist oct"126" : oct"136"; % vees charlist oct"127" : oct"137"; % coprods charlist oct"140" : oct"141"; % circle times charlist oct"116" : oct"117"; % circle plus charlist oct"114" : oct"115"; % circle dot charlist oct"112" : oct"113"; % circle integrals charlist oct"110" : oct"111"; % squarecups charlist oct"106" : oct"107";