BEGIN BIOPTB FOR(PLUS) PUT(ADDFN) GOTO(TBLKTB) FOR(MINUS) PUT(SUBFN) GOTO(TBLKTB) FOR(DOT) PUT(NAMFN) GOTO(TBLKTB) FOR(DOLLAR) PUT(DOLFN) GOTO(TBLKTB) FOR(STAR) PUT(MPYFN) GOTO(STARTB) FOR(SLASH) PUT(DIVFN) GOTO(TBLKTB) FOR(AT) PUT(BIATFN) GOTO(TBLKTB) FOR(POUND) PUT(BIPDFN) GOTO(TBLKTB) FOR(PERCENT) PUT(BIPRFN) GOTO(TBLKTB) FOR(RAISE) PUT(EXPFN) GOTO(TBLKTB) FOR(ORSYM) PUT(ORFN) GOTO(TBLKTB) FOR(KEYSYM) PUT(BIAMFN) GOTO(TBLKTB) FOR(NOTSYM) PUT(BINGFN) GOTO(TBLKTB) FOR(QUESYM) PUT(BIQSFN) GOTO(TBLKTB) ELSE ERROR END BIOPTB BEGIN CARDTB FOR(CMT) PUT(CMTTYP) STOPSH FOR(CTL) PUT(CTLTYP) STOPSH FOR(CNT) PUT(CNTTYP) STOPSH ELSE PUT(NEWTYP) STOPSH END CARDTB BEGIN DQLITB FOR(DQUOTE) STOP ELSE CONTIN END DQLITB BEGIN ELEMTB FOR(NUMBER) PUT(ILITYP) GOTO(INTGTB) FOR(LETTER) PUT(VARTYP) GOTO(VARTB) FOR(SQUOTE) PUT(QLITYP) GOTO(SQLITB) FOR(DQUOTE) PUT(QLITYP) GOTO(DQLITB) FOR(LEFTPAREN) PUT(NSTTYP) STOP ELSE ERROR END ELEMTB BEGIN EOSTB FOR(EOS) STOP ELSE CONTIN END EOSTB BEGIN FLITB FOR(NUMBER) CONTIN FOR(TERMINATOR) STOPSH ELSE ERROR END FLITB BEGIN FRWDTB FOR(BLANK) CONTIN FOR(EQUAL) PUT(EQTYP) STOP FOR(RIGHTPAREN) PUT(RPTYP) STOP FOR(RIGHTBR) PUT(RBTYP) STOP FOR(COMMA) PUT(CMATYP) STOP FOR(COLON) PUT(CLNTYP) STOP FOR(EOS) PUT(EOSTYP) STOP ELSE PUT(NBTYP) STOPSH END FRWDTB BEGIN GOTFTB FOR(LEFTPAREN) PUT(FGOTYP) STOP FOR(LEFTBR) PUT(FTOTYP) STOP ELSE ERROR END GOTFTB BEGIN GOTOTB FOR(SGOSYM) GOTO(GOTSTB) FOR(FGOSYM) GOTO(GOTFTB) FOR(LEFTPAREN) PUT(UGOTYP) STOP FOR(LEFTBR) PUT(UTOTYP) STOP ELSE ERROR END GOTOTB BEGIN GOTSTB FOR(LEFTPAREN) PUT(SGOTYP) STOP FOR(LEFTBR) PUT(STOTYP) STOP ELSE ERROR END GOTSTB BEGIN IBLKTB FOR(BLANK) GOTO(FRWDTB) FOR(EOS) PUT(EOSTYP) STOP ELSE ERROR END IBLKTB BEGIN INTGTB FOR(NUMBER) CONTIN FOR(TERMINATOR) PUT(ILITYP) STOPSH FOR(DOT) PUT(FLITYP) GOTO(FLITB) ELSE ERROR END INTGTB BEGIN LBLTB FOR(ALPHANUMERIC) GOTO(LBLXTB) FOR(BLANK,EOS) STOPSH ELSE ERROR END LBLTB BEGIN LBLXTB FOR(BLANK,EOS) STOPSH ELSE CONTIN END LBLXTB BEGIN NBLKTB FOR(TERMINATOR) ERROR ELSE STOPSH END NBLKTB BEGIN NUMBTB FOR(NUMBER) GOTO(NUMCTB) FOR(PLUS,MINUS) GOTO(NUMCTB) FOR(COMMA) PUT(CMATYP) STOPSH FOR(COLON) PUT(DIMTYP) STOPSH ELSE ERROR END NUMBTB BEGIN NUMCTB FOR(NUMBER) CONTIN FOR(COMMA) PUT(CMATYP) STOPSH FOR(COLON) PUT(DIMTYP) STOPSH ELSE ERROR END NUMCTB BEGIN SNABTB FOR(FGOSYM) STOP FOR(SGOSYM) STOPSH ELSE ERROR END SNABTB BEGIN SQLITB FOR(SQUOTE) STOP ELSE CONTIN END SQLITB BEGIN STARTB FOR(BLANK) STOP FOR(STAR) PUT(EXPFN) GOTO(TBLKTB) ELSE ERROR END STARTB BEGIN TBLKTB FOR(BLANK) STOP ELSE ERROR END TBLKTB BEGIN UNOPTB FOR(PLUS) PUT(PLSFN) GOTO(NBLKTB) FOR(MINUS) PUT(MNSFN) GOTO(NBLKTB) FOR(DOT) PUT(DOTFN) GOTO(NBLKTB) FOR(DOLLAR) PUT(INDFN) GOTO(NBLKTB) FOR(STAR) PUT(STRFN) GOTO(NBLKTB) FOR(SLASH) PUT(SLHFN) GOTO(NBLKTB) FOR(PERCENT) PUT(PRFN) GOTO(NBLKTB) FOR(AT) PUT(ATFN) GOTO(NBLKTB) FOR(POUND) PUT(PDFN) GOTO(NBLKTB) FOR(KEYSYM) PUT(KEYFN) GOTO(NBLKTB) FOR(NOTSYM) PUT(NEGFN) GOTO(NBLKTB) FOR(ORSYM) PUT(BARFN) GOTO(NBLKTB) FOR(QUESYM) PUT(QUESFN) GOTO(NBLKTB) FOR(RAISE) PUT(AROWFN) GOTO(NBLKTB) ELSE ERROR END UNOPTB BEGIN VARATB FOR(LETTER) GOTO(VARBTB) FOR(COMMA) PUT(CMATYP) STOPSH FOR(RIGHTPAREN) PUT(RPTYP) STOPSH ELSE ERROR END VARATB BEGIN VARBTB FOR(ALPHANUMERIC,BREAK) CONTIN FOR(LEFTPAREN) PUT(LPTYP) STOPSH FOR(COMMA) PUT(CMATYP) STOPSH FOR(RIGHTPAREN) PUT(RPTYP) STOPSH ELSE ERROR END VARBTB BEGIN VARTB FOR(ALPHANUMERIC,BREAK) CONTIN FOR(TERMINATOR) PUT(VARTYP) STOPSH FOR(LEFTPAREN) PUT(FNCTYP) STOP FOR(LEFTBR) PUT(ARYTYP) STOP ELSE ERROR END VARTB