      SUBROUTINE APNDM0(BUF)
      INTEGER BUF(1)
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER MACNAM(3)
      INTEGER STRTM0,I,MACLOC
      INTEGER FINDM0
      INTEGER AAAAA0(51)
      INTEGER AAAAB0(36)
      DATA AAAAA0/237,225,227,242,239,160,168,170,243,169,160,227,225,23
     *8,238,239,244,160,226,229,160,225,240,240,229,238,228,229,228,172,
     *160,233,244,160,228,239,229,243,160,238,239,244,160,229,248,233,24
     *3,244,170,238,0/
      DATA AAAAB0/238,239,244,160,229,238,239,245,231,232,160,243,240,22
     *5,227,229,160,244,239,160,225,240,240,229,238,228,160,244,239,160,
     *237,225,227,242,239,0/
      CALL GETNAM(BUF,MACNAM)
      MACLOC=FINDM0(MACNAM)
      IF((MACLOC.NE.-3))GOTO 10000
        CALL PRINT(-15,AAAAA0,MACNAM)
        CALL SWT
10000 IF((FIRST0.NE.MACLOC))GOTO 10001
        FIRST0=MACBU0(MACLOC+3)
        MACTO0=MACLOC-2
        STRTM0=MACBU0(MACLOC+5)
        GOTO 10002
10001   IF(((50000-MACTO0).GE.((MACLOC+6)-MACBU0(MACLOC+5))))GOTO 10003
          CALL MACGC
          MACLOC=FINDM0(MACNAM)
          IF(((50000-MACTO0).GE.((MACLOC+6)-MACBU0(MACLOC+5))))GOTO     
     * 10004
            CALL ERROR(AAAAB0)
10004   CONTINUE
10003   STRTM0=MACTO0
        I=MACBU0(MACLOC+5)
        GOTO 10007
10005   I=I+(1)
        MACTO0=MACTO0+(1)
10007   IF((I.GT.MACLOC-3))GOTO 10006
          MACBU0(MACTO0)=MACBU0(I)
        GOTO 10005
10006   CALL MACREL(MACLOC)
10002 CALL MACINP(MACNAM,STRTM0)
      RETURN
      END
      SUBROUTINE DEFMAC(BUF)
      INTEGER BUF(1)
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER MACNAM(3)
      INTEGER STRTM0,MACLOC
      INTEGER FINDM0
      CALL GETNAM(BUF,MACNAM)
      STRTM0=MACTO0
      MACLOC=FINDM0(MACNAM)
      IF((MACLOC.EQ.-3))GOTO 10008
        CALL MACREL(MACLOC)
10008 CALL MACINP(MACNAM,STRTM0)
      RETURN
      END
      INTEGER FUNCTION DOMAC(BUF)
      INTEGER BUF(1)
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER I
      DOMAC=-2
      I=FIRST0
      GOTO 10011
10009 I=MACBU0(I+3)
10011 IF((I.EQ.-3))GOTO 10010
        IF((MACBU0(I).NE.BUF(2)))GOTO 10009
        IF((MACBU0(I+1).NE.BUF(3)))GOTO 10009
          FPTRA0=FPTRA0+(1)
          IF((FPTRA0.LE.100))GOTO 10013
            CALL RESET0
            CALL PUTLIN(BUF,-15)
            CALL ERROR('Too many macros/input files.')
10013     FLIST0(FPTRA0)=MACBU0(I+5)
          FTYPE0(FPTRA0)=0
          CALL EMARGS(BUF)
          RETURN
10010 DOMAC=-3
      RETURN
      END
      SUBROUTINE EMARGS(BUF)
      INTEGER BUF(1)
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER I,J,K
      INTEGER ARGS(134)
      INTEGER AAAAC0(14)
      INTEGER AAAAD0(25)
      INTEGER AAAAE0(28)
      DATA AAAAC0/237,233,243,243,233,238,231,160,241,245,239,244,229,0/
      DATA AAAAD0/212,239,239,160,237,225,238,249,160,237,225,227,242,23
     *9,160,225,242,231,245,237,229,238,244,243,0/
      DATA AAAAE0/212,239,239,160,237,225,238,249,160,238,229,243,244,22
     *9,228,160,237,225,227,242,239,160,227,225,236,236,243,0/
      J=1
      I=2
10014   CONTINUE
10015   IF((BUF(I).NE.160))GOTO 10016
          I=I+(1)
        GOTO 10015
10016   IF((BUF(I).EQ.138))GOTO 10019
        IF((BUF(I).EQ.0))GOTO 10019
        GOTO 10017
10017   CONTINUE
10020     CONTINUE
10021     IF((BUF(I).NE.162))GOTO 10031
            I=I+(1)
            GOTO 10025
10023       I=I+(1)
10025       IF((BUF(I).EQ.162))GOTO 10024
              IF((BUF(I).EQ.138))GOTO 10027
              IF((BUF(I).EQ.0))GOTO 10027
              GOTO 10026
10027           CALL RESET0
                CALL PUTLIN(BUF,-15)
                CALL ERROR(AAAAC0)
10026         ARGS(J)=BUF(I)
              J=J+(1)
            GOTO 10023
10024       I=I+(1)
            IF((BUF(I).NE.162))GOTO 10021
              ARGS(J)=162
              J=J+(1)
10028     GOTO 10021
10029     I=I+(1)
10031     IF((BUF(I).EQ.160))GOTO 10030
          IF((BUF(I).EQ.137))GOTO 10030
          IF((BUF(I).EQ.162))GOTO 10030
          IF((BUF(I).EQ.138))GOTO 10030
          IF((BUF(I).EQ.0))GOTO 10030
            ARGS(J)=BUF(I)
            J=J+(1)
          GOTO 10029
10030   CONTINUE
        IF((BUF(I).EQ.162))GOTO 10020
        ARGS(J)=0
        J=J+(1)
      GOTO 10014
10019 IF((ARGTO0+J.LE.1000))GOTO 10032
        CALL RESET0
        CALL PUTLIN(BUF,-15)
        CALL ERROR(AAAAD0)
10032 MACLV0=MACLV0+(1)
      IF((MACLV0.LE.100))GOTO 10033
        CALL RESET0
        CALL PUTLIN(BUF,-15)
        CALL ERROR(AAAAE0)
10033 ARGVA0(MACLV0)=ARGTO0
      K=1
      GOTO 10036
10034 K=K+(1)
10036 IF((K.GE.J))GOTO 10035
        ARGBU0(ARGTO0)=ARGS(K)
        ARGTO0=ARGTO0+(1)
      GOTO 10034
10035 RETURN
      END
      SUBROUTINE ENDMAC
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      ARGTO0=ARGVA0(MACLV0)
      MACLV0=MACLV0-(1)
      RETURN
      END
      INTEGER FUNCTION EVALF0(FBUF,BUF,MAXBUF)
      INTEGER FBUF(1),BUF(MAXBUF)
      INTEGER MAXBUF
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER NAME(134),STR(1454),FCNBUF(1454)
      INTEGER MAPUP,TEMPS0(1454)
      INTEGER STR1(134),STR2(134),REL(4)
      INTEGER I,J,K,NR,AMOUNT,FNUM,VAL,OPND1,OPND2,R,V,S1,S2
      INTEGER ITOC,CTOI,GCTOI,LOOKUP,CTOC,ITOROM,TRNARG,INDEX
      INTEGER STRLSR,STRCMP
      INTEGER RELX(12)
      INTEGER RELT(52)
      INTEGER UNDERL,BOFACE,ITOLET,ITALIC
      INTEGER VERT(16)
      INTEGER AAAAF0
      INTEGER AAAAG0
      INTEGER AAAAH0
      INTEGER AAAAI0
      INTEGER AAAAJ0
      INTEGER AAAAK0
      INTEGER AAAAL0
      INTEGER AAAAM0
      INTEGER AAAAN0
      INTEGER AAAAO0
      INTEGER AAAAP0(37)
      INTEGER AAAAQ0
      INTEGER AAAAR0
      INTEGER AAAAS0
      INTEGER AAAAT0
      INTEGER AAAAU0(26)
      DATA RELT/1,2,188,189,0,1,2,189,188,0,1,0,188,0,2,0,189,189,0,2,0,
     *189,0,1,3,254,189,0,1,3,188,190,0,1,3,190,188,0,2,3,190,189,0,2,3,
     *189,190,0,3,0,190,0/
      DATA RELX/11,1,6,11,15,20,24,29,34,39,44,49/
      DATA VERT/16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31/
      DATA AAAAP0/230,237,244,160,229,242,242,239,242,186,160,160,233,23
     *6,236,229,231,225,236,160,246,229,242,244,233,227,236,229,160,243,
     *240,225,227,233,238,231,0/
      DATA AAAAU0/233,238,160,229,246,225,236,223,230,227,238,186,160,22
     *7,225,238,167,244,160,232,225,240,240,229,238,0/
      CALL MASSIN(FBUF,FCNBUF,1454)
      I=1
10037 IF((FCNBUF(I).NE.160))GOTO 10038
        I=I+(1)
      GOTO 10037
10038 J=1
      GOTO 10041
10039 J=J+(1)
      I=I+(1)
10041 IF((FCNBUF(I).EQ.0))GOTO 10040
      IF((FCNBUF(I).EQ.160))GOTO 10040
        NAME(J)=FCNBUF(I)
      GOTO 10039
10040 NAME(J)=0
      J=1
      NR=CTOI(NAME,J)
      IF((NAME(J).NE.0))GOTO 10042
      IF((MACLV0.LE.1))GOTO 10042
        EVALF0=TRNARG(NR,BUF,MAXBUF)
        RETURN
10042 CONTINUE
10043 IF((FCNBUF(I).NE.160))GOTO 10044
        I=I+(1)
      GOTO 10043
10044 IF((LOOKUP(NAME,FNUM,FNTAB0).NE.0))GOTO 10045
        IF((LOOKUP(NAME,FNUM,SPCHA0).NE.1))GOTO 10046
          J=CTOI(FCNBUF,I)
          J=MIN0(MAX0(1,J),MAXBUF-1)
          DO 10047 K=1,J
            BUF(K)=FNUM
10047     CONTINUE
10048     BUF(J+1)=0
          EVALF0=J
          RETURN
10046     BUF(1)=219
          J=CTOC(FCNBUF,BUF(2),MAXBUF-2)+2
          BUF(J)=221
          BUF(J+1)=0
          EVALF0=J
          RETURN
10045   AAAAF0=FNUM
        GOTO 10049
10050     VAL=NOSPA0
        GOTO 10051
10052     VAL=PLVAL0
        GOTO 10051
10053     VAL=CURPA0
        GOTO 10051
10054     VAL=LINEN0
        GOTO 10051
10055     VAL=POVAL0
        GOTO 10051
10056     VAL=LSVAL0
        GOTO 10051
10057     VAL=INVAL0
        GOTO 10051
10058     VAL=RMVAL0
        GOTO 10051
10059     VAL=TIVAL0
        GOTO 10051
10060     VAL=LMVAL0
        GOTO 10051
10061     VAL=MACLV0
        GOTO 10051
10062     VAL=M1VAL0
        GOTO 10051
10063     VAL=M2VAL0
        GOTO 10051
10064     VAL=M3VAL0
        GOTO 10051
10065     VAL=M4VAL0
        GOTO 10051
10066     VAL=TIWID0
        GOTO 10051
10067     OPND1=GCTOI(FCNBUF,I,10)
          OPND2=GCTOI(FCNBUF,I,10)
          VAL=OPND1+OPND2
        GOTO 10051
10068     OPND1=GCTOI(FCNBUF,I,10)
          OPND2=GCTOI(FCNBUF,I,10)
          VAL=OPND1-OPND2
        GOTO 10051
10069     VAL=BOTTO0
        GOTO 10051
10070     VAL=M1VAL0+M2VAL0+1
        GOTO 10051
10071     AAAAG0=FCNBUF(I)
          GOTO 10072
10073       AMOUNT=+1
          GOTO 10074
10075       AMOUNT=-1
          GOTO 10074
10074       I=I+(1)
          GOTO 10076
10072     AAAAH0=AAAAG0-170
          GOTO(10073,10077,10075),AAAAH0
10077       AMOUNT=0
10076     NR=CTOI(FCNBUF,I)
          IF((NR.LT.1))GOTO 10078
          IF((NR.GT.200))GOTO 10078
            NUMRE0(NR)=NUMRE0(NR)+(AMOUNT)
            VAL=NUMRE0(NR)
            AAAAI0=FCNBUF(I)
            GOTO 10079
10080         NUMRE0(NR)=NUMRE0(NR)+(1)
            GOTO 10051
10082         NUMRE0(NR)=NUMRE0(NR)-(1)
            GOTO 10051
10079       AAAAJ0=AAAAI0-170
            GOTO(10080,10083,10082),AAAAJ0
10083       CONTINUE
10081       GOTO 10051
10078       VAL=0
10084   GOTO 10051
10051     K=ITOC(VAL,STR,32)
          IF((K.GE.4))GOTO 10085
          IF((FNUM.NE.19))GOTO 10085
            J=5
            GOTO 10088
10086       J=J-(1)
            K=K-(1)
10088       IF((J.LE.0))GOTO 10087
              IF((K.LT.0))GOTO 10089
                STR(J)=STR(K+1)
                GOTO 10086
10089           STR(J)=32
10090       GOTO 10086
10087     CONTINUE
10085     EVALF0=CTOC(STR,BUF,MAXBUF)
        GOTO 10091
10049   AAAAK0=AAAAF0-5
        GOTO(10057,10092,10060,10054,10056,10061,10071,10052,10053,10055
     *,10058,10092,10092,10053,10059,10092,10092,10092,10092,10092,10092
     *,10092,10092,10092,10092,10092,10092,10062,10063,10064,10065,10092
     *,10092,10092,10092,10067,10068,10092,10092,10092,10092,10092,10092
     *,10092,10069,10070,10066,10092,10050),AAAAK0
10092     AAAAL0=FNUM
          GOTO 10093
10094       STR(1)=CMDCH0
          GOTO 10095
10096       STR(1)=NBCCH0
          GOTO 10095
10097       STR(1)=TABCH0
          GOTO 10095
10098       VAL=CTOI(FCNBUF,I)
            IF((AND(VAL,1).NE.0))GOTO 10099
              STR(1)=177
              GOTO 10095
10099         STR(1)=176
10100     GOTO 10095
10101       VAL=CTOI(FCNBUF,I)
            IF((AND(VAL,1).NE.0))GOTO 10102
              STR(1)=176
              GOTO 10095
10102         STR(1)=177
10103     GOTO 10095
10104       J=1
            GOTO 10107
10105       I=I+(1)
            J=J+(1)
10107       IF((FCNBUF(I).EQ.160))GOTO 10106
              STR1(J)=FCNBUF(I)
            GOTO 10105
10106       STR1(J)=0
10108       IF((FCNBUF(I).NE.160))GOTO 10109
              I=I+(1)
            GOTO 10108
10109       J=1
            GOTO 10112
10110       I=I+(1)
            J=J+(1)
10112       IF((FCNBUF(I).EQ.160))GOTO 10111
              REL(J)=FCNBUF(I)
            GOTO 10110
10111       REL(J)=0
10113       IF((FCNBUF(I).NE.160))GOTO 10114
              I=I+(1)
            GOTO 10113
10114       J=1
            GOTO 10117
10115       I=I+(1)
            J=J+(1)
10117       IF((FCNBUF(I).EQ.160))GOTO 10116
            IF((FCNBUF(I).EQ.0))GOTO 10116
              STR2(J)=FCNBUF(I)
            GOTO 10115
10116       STR2(J)=0
            R=STRLSR(RELX,RELT,2,REL)
            IF((R.NE.-1))GOTO 10118
              CALL ERROR('cmp: bad relational operator.')
10118       V=STRCMP(STR1,STR2)
            IF((RELT(RELX(R)).EQ.V))GOTO 10120
            IF((RELT(RELX(R)+1).EQ.V))GOTO 10120
            GOTO 10119
10120         STR(1)=177
              GOTO 10095
10119         STR(1)=176
10121     GOTO 10095
10122       S1=GCTOI(FCNBUF,I,10)
10123       IF((FCNBUF(I).NE.160))GOTO 10124
              I=I+(1)
            GOTO 10123
10124       J=1
            GOTO 10127
10125       I=I+(1)
            J=J+(1)
10127       IF((FCNBUF(I).EQ.160))GOTO 10126
              REL(J)=FCNBUF(I)
            GOTO 10125
10126       REL(J)=0
            S2=GCTOI(FCNBUF,I,10)
            R=STRLSR(RELX,RELT,2,REL)
            IF((R.NE.-1))GOTO 10128
              CALL ERROR('icmp: bad relational operator.')
10128       AAAAM0=R-1
            GOTO 10129
10130         IF((S1.GT.S2))GOTO 10131
                STR(1)=177
                GOTO 10095
10131           STR(1)=176
10132       GOTO 10095
10134         IF((S1.GE.S2))GOTO 10135
                STR(1)=177
                GOTO 10095
10135           STR(1)=176
10136       GOTO 10095
10137         IF((S1.NE.S2))GOTO 10138
                STR(1)=177
                GOTO 10095
10138           STR(1)=176
10139       GOTO 10095
10140         IF((S1.EQ.S2))GOTO 10141
                STR(1)=177
                GOTO 10095
10141           STR(1)=176
10142       GOTO 10095
10143         IF((S1.LT.S2))GOTO 10144
                STR(1)=177
                GOTO 10095
10144           STR(1)=176
10145       GOTO 10095
10146         IF((S1.LE.S2))GOTO 10147
                STR(1)=177
                GOTO 10095
10147           STR(1)=176
10148       GOTO 10095
10129       GOTO(10130,10130,10134,10137,10137,10140,10140,10140,10143, 
     *    10143,10146),AAAAM0
10133     GOTO 10095
10095       STR(2)=0
            EVALF0=CTOC(STR,BUF,MAXBUF)
          GOTO 10149
10093     AAAAN0=AAAAL0-1
          GOTO(10096,10094),AAAAN0
          IF(AAAAL0.EQ.18)GOTO 10097
          AAAAN0=AAAAL0-36
          GOTO(10098,10101,10150,10150,10150,10150,10150,10150,10150,   
     *  10150,10150,10150,10104,10150,10150,10150,10122),AAAAN0
10150       AAAAO0=FNUM
            GOTO 10151
10152         CALL DATE(5,STR)
              STR(1)=MAPUP(STR(1))
            GOTO 10153
10154         CALL DATE(1,STR)
            GOTO 10153
10155         CALL DATE(2,STR)
            GOTO 10153
10156         CALL DATE(7,STR)
              CALL SDROP(STR,STR,INDEX(STR,160))
            GOTO 10153
10157         VAL=CTOI(FCNBUF,I)
              CALL ITOROM(VAL,STR,32)
              IF((FNUM.NE.23))GOTO 10153
                CALL MAPSTR(STR,2)
10158       GOTO 10153
10159         VAL=CTOI(FCNBUF,I)
              CALL ITOLET(VAL,STR)
              IF((FNUM.NE.30))GOTO 10153
                CALL MAPSTR(STR,2)
10160       GOTO 10153
10161         VAL=CTOI(FCNBUF,I)
              IF((VAL.LT.1))GOTO 10163
              IF((VAL.GT.16))GOTO 10163
              GOTO 10162
10163           CALL ERROR(AAAAP0)
10162         STR(1)=VERT(VAL)
              STR(2)=0
            GOTO 10153
10164         VAL=CTOI(FCNBUF,I)
              IF((AND(VAL,1).NE.0))GOTO 10165
                STR(1)=177
                GOTO 10166
10165           STR(1)=176
10166         STR(2)=0
            GOTO 10153
10167         VAL=CTOI(FCNBUF,I)
              IF((AND(VAL,1).NE.0))GOTO 10168
                STR(1)=176
                GOTO 10169
10168           STR(1)=177
10169         STR(2)=0
            GOTO 10153
10170         IF((AND(CURPA0,1).NE.0))GOTO 10171
                CALL MASSIN(EVENH0,TEMPS0,1454)
                GOTO 10172
10171           CALL MASSIN(ODDHE0,TEMPS0,1454)
10172         CALL MKTL(TEMPS0,CURPA0,STR,1454)
            GOTO 10153
10173         CALL MASSIN(EVENH0,TEMPS0,1454)
              CALL MKTL(TEMPS0,CURPA0,STR,1454)
            GOTO 10153
10174         CALL MASSIN(ODDHE0,TEMPS0,1454)
              CALL MKTL(TEMPS0,CURPA0,STR,1454)
            GOTO 10153
10175         IF((AND(CURPA0,1).NE.0))GOTO 10176
                CALL MASSIN(EVENF0,TEMPS0,1454)
                GOTO 10177
10176           CALL MASSIN(ODDFO0,TEMPS0,1454)
10177         CALL MKTL(TEMPS0,CURPA0,STR,1454)
            GOTO 10153
10178         CALL MASSIN(EVENF0,TEMPS0,1454)
              CALL MKTL(TEMPS0,CURPA0,STR,1454)
            GOTO 10153
10179         CALL MASSIN(ODDFO0,TEMPS0,1454)
              CALL MKTL(TEMPS0,CURPA0,STR,1454)
            GOTO 10153
10153         EVALF0=CTOC(STR,BUF,MAXBUF)
            GOTO 10180
10151       AAAAQ0=AAAAO0-3
            GOTO(10154,10152,10181,10156,10181,10181,10181,10181,10181, 
     *    10181,10181,10181,10181,10181,10181,10181,10181,10155,10157,  
     *   10157,10181,10181,10181,10181,10181,10159,10159,10161,10181,   
     *  10181,10181,10181,10181,10164,10167,10181,10181,10181,10181,    
     * 10170,10173,10174,10175,10178,10179),AAAAQ0
10181         AAAAR0=FNUM
              GOTO 10182
10183           EVALF0=BOFACE(FCNBUF(I),BUF,MAXBUF)
              GOTO 10184
10185           EVALF0=ITALIC(FCNBUF(I),BUF,MAXBUF)
              GOTO 10184
10186           EVALF0=UNDERL(FCNBUF(I),BUF,MAXBUF,0)
              GOTO 10184
10187           EVALF0=UNDERL(FCNBUF(I),BUF,MAXBUF,1)
              GOTO 10184
10188           BUF(1)=10
                EVALF0=CTOC(FCNBUF(I),BUF(2),MAXBUF-2)+2
                BUF(EVALF0)=11
                BUF(EVALF0+1)=0
              GOTO 10184
10189           BUF(1)=11
                EVALF0=CTOC(FCNBUF(I),BUF(2),MAXBUF-2)+2
                BUF(EVALF0)=10
                BUF(EVALF0+1)=0
              GOTO 10184
10190           CALL MAPSTR(FCNBUF(I),2)
                EVALF0=CTOC(FCNBUF(I),BUF,MAXBUF)
              GOTO 10184
10191           CALL MAPSTR(FCNBUF(I),1)
                EVALF0=CTOC(FCNBUF(I),BUF,MAXBUF)
              GOTO 10184
10182         AAAAS0=AAAAR0-23
              GOTO(10183,10186,10187,10188,10189,10192,10192,10192,10192
     *,10192,10192,10192,10192,10192,10192,10190,10191,10192,10192,10192
     *,10192,10192,10192,10192,10192,10192,10192,10192,10192,10192,10192
     *,10185),AAAAS0
10192           AAAAT0=FNUM
                GOTO 10193
10194             NR=CTOI(FCNBUF,I)
                  VAL=GCTOI(FCNBUF,I,10)
                  IF((1.GT.NR))GOTO 10198
                  IF((NR.GT.200))GOTO 10198
                    IF((FNUM.NE.17))GOTO 10196
                      NUMRE0(NR)=VAL
                      GOTO 10197
10196                 NUMRE0(NR)=NUMRE0(NR)+(VAL)
10197             CONTINUE
10195           GOTO 10198
10198             BUF(1)=0
                  EVALF0=0
                GOTO 10199
10193           IF(AAAAT0.EQ.1)GOTO 10194
                IF(AAAAT0.EQ.17)GOTO 10194
                  BUF(1)=0
                  EVALF0=0
                  CALL REMARK(AAAAU0)
10199         CONTINUE
10184       CONTINUE
10180     CONTINUE
10149   CONTINUE
10091 CONTINUE
      RETURN
      END
      INTEGER FUNCTION EXTRA0(BUF,INDEX,FCNBUF,SIZE)
      INTEGER INDEX,SIZE
      INTEGER BUF(1),FCNBUF(SIZE)
      INTEGER I,J,LEVEL
      INTEGER AAAAV0
      INTEGER AAAAW0
      J=1
      LEVEL=1
      I=INDEX+1
      GOTO 10202
10200 I=I+(1)
10202 IF((BUF(I).EQ.0))GOTO 10201
      IF((BUF(I).EQ.138))GOTO 10201
        AAAAV0=BUF(I)
        GOTO 10203
10204     IF((BUF(I+1).EQ.0))GOTO 10206
          IF((BUF(I+1).EQ.138))GOTO 10206
            I=I+(1)
10205   GOTO 10206
10207     LEVEL=LEVEL+(1)
        GOTO 10206
10208     LEVEL=LEVEL-(1)
          IF((LEVEL.GT.0))GOTO 10206
            GOTO 10201
10203   IF(AAAAV0.EQ.192)GOTO 10204
        AAAAW0=AAAAV0-218
        GOTO(10207,10210,10208),AAAAW0
10210   CONTINUE
10206   IF((J.GE.SIZE))GOTO 10201
          FCNBUF(J)=BUF(I)
          J=J+(1)
          GOTO 10200
10201 FCNBUF(J)=0
      IF((LEVEL.NE.0))GOTO 10213
        INDEX=I
        EXTRA0=-2
        GOTO 10214
10213   EXTRA0=-3
10214 RETURN
      END
      INTEGER FUNCTION FINDM0(MACNAM)
      INTEGER MACNAM(3)
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER I
      FINDM0=-3
      I=FIRST0
      GOTO 10217
10215 I=MACBU0(I+3)
10217 IF((I.EQ.-3))GOTO 10216
        IF((MACBU0(I).NE.MACNAM(1)))GOTO 10215
        IF((MACBU0(I+1).NE.MACNAM(2)))GOTO 10215
          FINDM0=I
          GOTO 10216
10216 RETURN
      END
      SUBROUTINE GETNAM(BUF,NAME)
      INTEGER BUF(1),NAME(3)
      INTEGER I,J
      I=1
10219 IF((BUF(I).EQ.160))GOTO 10220
      IF((BUF(I).EQ.137))GOTO 10220
      IF((BUF(I).EQ.138))GOTO 10220
      IF((BUF(I).EQ.0))GOTO 10220
        I=I+(1)
      GOTO 10219
10220 CONTINUE
10221 IF((BUF(I).NE.160))GOTO 10222
        I=I+(1)
      GOTO 10221
10222 J=1
      GOTO 10225
10223 J=J+(1)
10225 IF((J.GT.2))GOTO 10228
      IF((BUF(I).EQ.160))GOTO 10228
      IF((BUF(I).EQ.137))GOTO 10228
      IF((BUF(I).EQ.138))GOTO 10228
        NAME(J)=BUF(I)
        I=I+(1)
      GOTO 10223
10226 J=J+(1)
10228 IF((J.GT.2))GOTO 10227
        NAME(J)=160
      GOTO 10226
10227 NAME(3)=0
      RETURN
      END
      SUBROUTINE ITOLET(NUM,LET)
      INTEGER NUM
      INTEGER LET(1)
      IF((NUM.LT.1))GOTO 10230
      IF((NUM.GT.26))GOTO 10230
      GOTO 10229
10230   LET(1)=191
        GOTO 10231
10229   LET(1)=225+NUM-1
10231 LET(2)=0
      RETURN
      END
      INTEGER FUNCTION ITOROM(VAL,STR,SIZE)
      INTEGER VAL,SIZE
      INTEGER STR(SIZE)
      INTEGER INT,OUT
      OUT=1
      INT=IABS(VAL)
      IF((VAL.GE.0))GOTO 10232
        IF((OUT.GE.SIZE))GOTO 10233
          STR(OUT)=173
          OUT=OUT+(1)
10233 CONTINUE
10232 CONTINUE
10234 IF((INT.LT.1000))GOTO 10235
        IF((OUT.GE.SIZE))GOTO 10236
          STR(OUT)=237
          OUT=OUT+(1)
10236   INT=INT-(1000)
      GOTO 10234
10235 IF((INT.LT.900))GOTO 10237
        IF((OUT.GE.SIZE))GOTO 10238
          STR(OUT)=227
          OUT=OUT+(1)
10238   IF((OUT.GE.SIZE))GOTO 10239
          STR(OUT)=237
          OUT=OUT+(1)
10239   INT=INT-(900)
        GOTO 10240
10237   IF((INT.LT.500))GOTO 10241
          IF((OUT.GE.SIZE))GOTO 10242
            STR(OUT)=228
            OUT=OUT+(1)
10242     INT=INT-(500)
10241 CONTINUE
10240 IF((INT.LT.400))GOTO 10243
        IF((OUT.GE.SIZE))GOTO 10244
          STR(OUT)=227
          OUT=OUT+(1)
10244   IF((OUT.GE.SIZE))GOTO 10245
          STR(OUT)=228
          OUT=OUT+(1)
10245   INT=INT-(400)
        GOTO 10246
10243   CONTINUE
10247   IF((INT.LT.100))GOTO 10248
          IF((OUT.GE.SIZE))GOTO 10249
            STR(OUT)=227
            OUT=OUT+(1)
10249     INT=INT-(100)
        GOTO 10247
10248 CONTINUE
10246 IF((INT.LT.90))GOTO 10250
        IF((OUT.GE.SIZE))GOTO 10251
          STR(OUT)=248
          OUT=OUT+(1)
10251   IF((OUT.GE.SIZE))GOTO 10252
          STR(OUT)=227
          OUT=OUT+(1)
10252   INT=INT-(90)
        GOTO 10253
10250   IF((INT.LT.50))GOTO 10254
          IF((OUT.GE.SIZE))GOTO 10255
            STR(OUT)=236
            OUT=OUT+(1)
10255     INT=INT-(50)
10254 CONTINUE
10253 IF((INT.LT.40))GOTO 10256
        IF((OUT.GE.SIZE))GOTO 10257
          STR(OUT)=248
          OUT=OUT+(1)
10257   IF((OUT.GE.SIZE))GOTO 10258
          STR(OUT)=236
          OUT=OUT+(1)
10258   INT=INT-(40)
        GOTO 10259
10256   CONTINUE
10260   IF((INT.LT.10))GOTO 10261
          IF((OUT.GE.SIZE))GOTO 10262
            STR(OUT)=248
            OUT=OUT+(1)
10262     INT=INT-(10)
        GOTO 10260
10261 CONTINUE
10259 IF((INT.LT.9))GOTO 10263
        IF((OUT.GE.SIZE))GOTO 10264
          STR(OUT)=233
          OUT=OUT+(1)
10264   IF((OUT.GE.SIZE))GOTO 10265
          STR(OUT)=248
          OUT=OUT+(1)
10265   INT=INT-(9)
        GOTO 10266
10263   IF((INT.LT.5))GOTO 10267
          IF((OUT.GE.SIZE))GOTO 10268
            STR(OUT)=246
            OUT=OUT+(1)
10268     INT=INT-(5)
10267 CONTINUE
10266 IF((INT.LT.4))GOTO 10269
        IF((OUT.GE.SIZE))GOTO 10270
          STR(OUT)=233
          OUT=OUT+(1)
10270   IF((OUT.GE.SIZE))GOTO 10271
          STR(OUT)=246
          OUT=OUT+(1)
10271   INT=INT-(4)
        GOTO 10272
10269   CONTINUE
10273   IF((INT.LT.1))GOTO 10274
          IF((OUT.GE.SIZE))GOTO 10275
            STR(OUT)=233
            OUT=OUT+(1)
10275     INT=INT-(1)
        GOTO 10273
10274 CONTINUE
10272 STR(OUT)=0
      ITOROM=OUT-1
      RETURN
      END
      SUBROUTINE MACINP(MACNAM,STRTM0)
      INTEGER MACNAM(3)
      INTEGER STRTM0
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER ENNAM(3),LINE(1454)
      INTEGER LEN
      INTEGER READLN,SCOPY
      INTEGER AAAAX0(28)
      DATA AAAAX0/186,160,237,233,243,243,233,238,231,160,229,238,228,16
     *0,239,230,160,228,229,230,233,238,233,244,233,239,238,0/
10276   LEN=READLN(LINE,1454)
        IF((LEN.NE.-1))GOTO 10277
          CALL RESET0
          CALL PUTLIN(MACNAM,-15)
          CALL ERROR(AAAAX0)
10277   IF((LINE(1).EQ.CMDCH0))GOTO 10279
        IF((LINE(1).EQ.NBCCH0))GOTO 10279
        GOTO 10278
10279   IF((LINE(2).NE.229))GOTO 10278
        IF((LINE(3).NE.238))GOTO 10278
          CALL GETNAM(LINE,ENNAM)
          IF((MACNAM(1).NE.ENNAM(1)))GOTO 10280
          IF((MACNAM(2).NE.ENNAM(2)))GOTO 10280
            GOTO 10281
10280   CONTINUE
10278   IF((MACTO0+LEN.LE.50000))GOTO 10282
          CALL MACGC
10282   MACTO0=MACTO0+(SCOPY(LINE,1,MACBU0,MACTO0)+1)
      GOTO 10276
10281 IF((MACTO0+8.LE.50000))GOTO 10283
        CALL MACGC
10283 MACBU0(MACTO0)=-1
      MACBU0(MACTO0+1)=0
      MACBU0(MACTO0+2)=MACNAM(1)
      MACBU0(MACTO0+3)=MACNAM(2)
      MACBU0(MACTO0+4)=0
      MACBU0(MACTO0+5)=FIRST0
      MACBU0(MACTO0+6)=-3
      MACBU0(MACTO0+7)=STRTM0
      IF((MACBU0(MACTO0+2+3).EQ.-3))GOTO 10284
        MACBU0(MACBU0(MACTO0+2+3)+4)=MACTO0+2
10284 FIRST0=MACTO0+2
      MACTO0=MACTO0+(8)
      RETURN
      END
      SUBROUTINE MACGC
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER SGARB,EGARB,SMAC,EMAC,I,J,K
      INTEGER AAAAY0(27)
      INTEGER AAAAZ0(20)
      DATA AAAAY0/243,240,225,227,229,160,230,239,242,160,237,225,227,24
     *2,239,243,160,229,248,232,225,245,243,244,229,228,0/
      DATA AAAAZ0/237,225,227,242,239,160,225,242,229,225,160,229,248,22
     *7,229,229,228,229,228,0/
      SGARB=1
      GOTO 10287
10285 SGARB=SGARB+(1)
10287 IF((SGARB.GT.50000))GOTO 10286
      IF((MACBU0(SGARB).EQ.0))GOTO 10286
      GOTO 10285
10286 IF((SGARB.NE.50000))GOTO 10288
        CALL ERROR(AAAAY0)
10288 EGARB=SGARB+1
      GOTO 10291
10289 EGARB=EGARB+(1)
10291 IF((MACBU0(EGARB).EQ.0))GOTO 10290
      GOTO 10289
10290 SMAC=EGARB+1
10292   EMAC=SMAC
        GOTO 10295
10293   EMAC=EMAC+(1)
10295   IF((EMAC.GT.50000))GOTO 10294
        IF((MACBU0(EMAC).EQ.-1))GOTO 10294
        GOTO 10293
10294   IF((MACBU0(EMAC).NE.-1))GOTO 10296
          EMAC=EMAC+(7)
          GOTO 10297
10296     EMAC=MACTO0-1
10297   I=SGARB
        J=SMAC
        GOTO 10300
10298   I=I+(1)
        J=J+(1)
10300   IF((J.GT.EMAC))GOTO 10299
          MACBU0(I)=MACBU0(J)
        GOTO 10298
10299   K=SGARB
        SGARB=I
        IF((EMAC.GE.50000))GOTO 10301
        IF((MACBU0(EMAC+1).NE.0))GOTO 10301
          EGARB=EMAC+2
          GOTO 10304
10302     EGARB=EGARB+(1)
10304     IF((MACBU0(EGARB).EQ.0))GOTO 10305
          GOTO 10302
10301     EGARB=EMAC
10305   IF((EMAC.NE.MACTO0-1))GOTO 10306
        IF((FIRST0.EQ.EMAC-5))GOTO 10306
          GOTO 10307
10306   J=J-(5)
        IF((EMAC.EQ.MACTO0-1))GOTO 10308
          FIRST0=J
10308   MACBU0(J+5)=K
        IF((MACBU0(J+3).EQ.-3))GOTO 10309
          MACBU0(MACBU0(J+3)+4)=J
10309   IF((MACBU0(J+4).EQ.-3))GOTO 10310
          MACBU0(MACBU0(J+4)+3)=J
10310   SMAC=J
10307 IF((EMAC.NE.MACTO0-1))GOTO 10292
      IF((MACTO0+10.LE.50000))GOTO 10311
        CALL ERROR(AAAAZ0)
10311 MACTO0=SGARB
      RETURN
      END
      SUBROUTINE MACREL(MACLOC)
      INTEGER MACLOC
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER I,PRV,NXT
      NXT=MACBU0(MACLOC+3)
      PRV=MACBU0(MACLOC+4)
      IF((NXT.EQ.-3))GOTO 10312
        MACBU0(NXT+4)=PRV
10312 IF((PRV.EQ.-3))GOTO 10313
        MACBU0(PRV+3)=NXT
10313 I=MACBU0(MACLOC+5)
      IF((I.EQ.1))GOTO 10314
      IF((MACBU0(I-1).NE.0))GOTO 10314
        MACBU0(I-1)=160
        GOTO 10315
10314   MACBU0(I)=0
10315 I=MACLOC+6
      IF((I.GE.50000))GOTO 10316
      IF((MACBU0(I).NE.0))GOTO 10316
        MACBU0(I)=160
        GOTO 10317
10316   MACBU0(MACLOC+5)=0
10317 RETURN
      END
      INTEGER FUNCTION MASSIN(BUF,OBUF,SIZE)
      INTEGER SIZE
      INTEGER BUF(1),OBUF(SIZE)
      INTEGER I,J
      INTEGER EXTRA0,EVALF0
      INTEGER FCNBUF(134)
      J=1
      I=1
      GOTO 10320
10318 I=I+(1)
10320 IF((BUF(I).EQ.0))GOTO 10319
        IF((BUF(I).NE.219))GOTO 10321
        IF((EXTRA0(BUF,I,FCNBUF,134).NE.-2))GOTO 10321
          J=J+(EVALF0(FCNBUF,OBUF(J),SIZE-J+1))
          GOTO 10318
10321     IF((BUF(I).NE.192))GOTO 10323
          IF((BUF(I+1).EQ.192))GOTO 10324
          IF((BUF(I+1).EQ.219))GOTO 10324
          GOTO 10323
10324       I=I+(1)
10323     IF((J.GE.SIZE))GOTO 10325
            OBUF(J)=BUF(I)
            J=J+(1)
10325   CONTINUE
10322 GOTO 10318
10319 OBUF(J)=0
      MASSIN=J-1
      RETURN
      END
      INTEGER FUNCTION RDMAC(BUF,I,SIZE)
      INTEGER I,SIZE
      INTEGER BUF(SIZE)
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER CTOC
      RDMAC=CTOC(MACBU0(I),BUF,SIZE)
      I=I+(RDMAC+1)
      IF((BUF(1).NE.-1))GOTO 10326
        RDMAC=-1
10326 RETURN
      END
      INTEGER FUNCTION TRNARG(ARGNO,BUF,MAXBUF)
      INTEGER ARGNO,MAXBUF
      INTEGER BUF(1)
      COMMON /COUT/OUTPA0,OUTWA0,OUTWD0,OUTBU0(1454)
      INTEGER OUTPA0,OUTWA0,OUTWD0
      INTEGER OUTBU0
      COMMON /CPAGE/START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2V
     *AL0,M3VAL0,M4VAL0,BOTTO0,EVENH0(1454),ODDHE0(1454),EVENF0(1454),OD
     *DFO0(1454)
      INTEGER START0,ENDPA0,CURPA0,NEWPA0,LINEN0,PLVAL0,M1VAL0,M2VAL0,M3
     *VAL0,M4VAL0,BOTTO0
      INTEGER EVENH0,ODDHE0,EVENF0,ODDFO0
      COMMON /CPARAM/FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,IN
     *VAL0,TIVAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL
     *0,ITVAL0
      INTEGER FILLA0,NOSPA0,ADJUS0,DVFLA0,TIWID0,POVAL0,MOVAL0,INVAL0,TI
     *VAL0,LMVAL0,RMVAL0,BFVAL0,CEVAL0,ULVAL0,LSVAL0,OOVAL0,EOVAL0,ITVAL
     *0
      COMMON /CMISC/HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0(100),FTYPE
     *0(100),OLIST0(100),OUTFI0,NEXTA0,TABSA0(134),NUMRE0(200),MCOUT0,MC
     *CHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0(180)
      INTEGER HYPHE0,EXTRB0,NOBRE0,WORDL0,FPTRA0,FLIST0,FTYPE0,OLIST0,OU
     *TFI0,NEXTA0,TABSA0,NUMRE0,MCOUT0
      INTEGER MCCHA0,TMCCH0,CMDCH0,NBCCH0,REPLC0,TABCH0,FILEN0
      COMMON /CMACRO/MACLV0,ARGVA0(100),ARGTO0,FIRST0,MACTO0,MACBU0(5000
     *0),ARGBU0(1000)
      INTEGER MACLV0,ARGVA0,ARGTO0,FIRST0,MACTO0
      INTEGER MACBU0,ARGBU0
      COMMON /COPTS/STOPM0
      INTEGER STOPM0
      COMMON /TABCOM/COMTA0,FNTAB0,SPCHA0
      INTEGER COMTA0,FNTAB0,SPCHA0
      COMMON /DS$MEM/MEMAA0(4090)
      INTEGER MEMAA0
      INTEGER J,K
      INTEGER CTOC
      TRNARG=0
      IF((ARGNO.LT.0))GOTO 10327
        J=ARGNO
        K=ARGVA0(MACLV0)
        GOTO 10330
10328   J=J-(1)
10330   IF((K.GE.ARGTO0))GOTO 10329
        IF((J.LE.0))GOTO 10329
10331     IF((ARGBU0(K).EQ.0))GOTO 10332
            K=K+(1)
          GOTO 10331
10332     K=K+(1)
        GOTO 10328
10329   IF((K.GE.ARGTO0))GOTO 10333
          TRNARG=CTOC(ARGBU0(K),BUF,MAXBUF)
10333 CONTINUE
10327 RETURN
      END
C ---- Long Name Map ----
C Fill                           filla0
C Nbcch                          nbcch0
C Spchartable                    spcha0
C Cmdch                          cmdch0
C Curpag                         curpa0
C Newpag                         newpa0
C Olist                          olist0
C tempstr                        temps0
C Tabs                           tabsa0
C Tabch                          tabch0
C Mactop                         macto0
C Lineno                         linen0
C Fntable                        fntab0
C Firstmacro                     first0
C Argv                           argva0
C chktrap                        chktr0
C Evenfooter                     evenf0
C Adjust                         adjus0
C Nobreak                        nobre0
C Bfval                          bfval0
C Ceval                          ceval0
C Argtop                         argto0
C M1val                          m1val0
C Numreg                         numre0
C M2val                          m2val0
C M3val                          m3val0
C Evenheader                     evenh0
C M4val                          m4val0
C Tmcch                          tmcch0
C Nospace                        nospa0
C Stopmode                       stopm0
C processline                    proce0
C Filename                       filen0
C Outbuf                         outbu0
C Bottom                         botto0
C Fptr                           fptra0
C Oddfooter                      oddfo0
C Wordlast                       wordl0
C Extrablankmode                 extrb0
C Eoval                          eoval0
C Macbuf                         macbu0
C Comtable                       comta0
C Mem                            memaa0
C findmac                        findm0
C Startpage                      start0
C Oddheader                      oddhe0
C Inval                          inval0
C strtmac                        strtm0
C apndmac                        apndm0
C Lmval                          lmval0
C Hyphenation                    hyphe0
C Dvflag                         dvfla0
C Mcch                           mccha0
C extractfcn                     extra0
C initialize                     initi0
C Outp                           outpa0
C Plval                          plval0
C Moval                          moval0
C Outfile                        outfi0
C Tival                          tival0
C Itval                          itval0
C Nextarg                        nexta0
C Argbuf                         argbu0
C Ooval                          ooval0
C resetfiles                     reset0
C Poval                          poval0
C Rmval                          rmval0
C Lsval                          lsval0
C Flist                          flist0
C Outwds                         outwd0
C Tiwidth                        tiwid0
C Ulval                          ulval0
C evalfcn                        evalf0
C Outw                           outwa0
C Endpage                        endpa0
C Replch                         replc0
C options                        optio0
C Ftype                          ftype0
C Mcout                          mcout0
C Maclvl                         maclv0
