      INTEGER KEYPO0,KEYLE0,LEVEL0,MAXLE0,COLAA0
      INTEGER ROOTA0
      LOGICAL OPTSA0(18)
      INTEGER PLAAA0
      INTEGER PAREN0(512)
      COMMON /LF$COM/KEYPO0,KEYLE0,LEVEL0,MAXLE0,COLAA0,ROOTA0,OPTSA0,PL
     *AAA0,PAREN0
      INTEGER MEMAA0(32000)
      INTEGER ELLIN0(1),ERLIN0(1)
      INTEGER EFSIZ0(1),EFSJA0(1),EOWNE0(1),EPASS0(1),EECWA0(1),ENAME0(1
     *),EPROT0(1),ENOND0(1),EFILT0(1),EDATM0(1),ETIMM0(1),ELOGT0(1),ETRU
     *N0(1),EDTLS0(1)
      COMMON /DS$MEM/MEMAA0
      INTEGER ARGP,CODE,SAVEA0
      INTEGER GETARG,FOLLOW,TSCAN$,FINFO$,COMPA0,EXPAND,EQUAL,CTOI
      INTEGER ENTRY
      INTEGER DSGET
      INTEGER AAAAA0
      INTEGER AAAAB0
      INTEGER AAAAC0
      INTEGER AAAAD0
      INTEGER AAAAE0
      INTEGER AAAAF0
      INTEGER AAAAG0
      INTEGER AAAAH0
      INTEGER AAAAI0(65)
      INTEGER AAAAJ0(11)
      INTEGER AAAAK0
      INTEGER AAAAL0
      INTEGER AAAAM0,AAAAN0
      INTEGER AAAAO0(65)
      INTEGER AAAAP0(16)
      INTEGER AAAAQ0,AAAAR0
      LOGICAL AAAAS0
      INTEGER AAAAX0(102)
      INTEGER AAAAV0,AAAAW0,AAAAT0
      LOGICAL AAAAU0
      INTEGER AAAAY0(9)
      INTEGER AAAAZ0(4)
      INTEGER AAABA0
      INTEGER AAABB0
      INTEGER AAABC0
      INTEGER AAABD0,AAABE0,AAABF0
      INTEGER AAABG0
      EQUIVALENCE (ELLIN0,MEMAA0(1)),(ERLIN0,MEMAA0(2)),(EFSIZ0,MEMAA0(3
     *)),(EFSJA0,MEMAA0(4)),(EOWNE0,MEMAA0(5)),(EPASS0,MEMAA0(8)),(EECWA
     *0,MEMAA0(11)),(ENAME0,MEMAA0(12)),(EPROT0,MEMAA0(28)),(ENOND0,MEMA
     *A0(29)),(EFILT0,MEMAA0(30)),(EDATM0,MEMAA0(31)),(ETIMM0,MEMAA0(32)
     *),(ELOGT0(1),MEMAA0(33)),(ETRUN0(1),MEMAA0(35)),(EDTLS0(1),MEMAA0(
     *36))
      DATA AAAAJ0/173,173,160,170,243,160,173,173,170,238,0/
      DATA AAAAP0/170,243,186,160,238,239,244,160,230,239,245,238,228,17
     *0,238,0/
      DATA AAAAY0/189,199,225,212,229,227,232,189,0/
      DATA AAAAZ0/249,229,243,0/
      AAAAE0=1
      GOTO 10004
10008 CALL DSINIT(32000)
      ROOTA0=0
      COLAA0=1
      SAVEA0=ARGP
      PLAAA0=GETARG(ARGP,PAREN0,512)
      GOTO 10011
10009 ARGP=ARGP+(1)
      PLAAA0=GETARG(ARGP,PAREN0,512)
10011 IF((PLAAA0.EQ.-1))GOTO 10010
        CALL AT$HOM(CODE)
        IF(OPTSA0(3))GOTO 10013
        IF((FOLLOW(PAREN0,0).EQ.-3))GOTO 10013
        GOTO 10012
10013     AAAAB0=1
          GOTO 10001
10014     GOTO 10015
10012     AAAAA0=1
          GOTO 10000
10016   CONTINUE
10015 GOTO 10009
10010 IF((ARGP.NE.SAVEA0))GOTO 10017
        PAREN0(1)=0
        PLAAA0=0
        AAAAA0=2
        GOTO 10000
10018 CONTINUE
10017 GOTO 10019
10000 IF((.NOT.OPTSA0(7)))GOTO 10020
        CALL PRINT(-11,AAAAJ0,PAREN0)
10020 LEVEL0=0
10021   ENTRY=DSGET(42)
        AAAAK0=TSCAN$(PAREN0,EECWA0(ENTRY),LEVEL0,MAXLE0,2)
        GOTO 10022
10023     CALL DSFREE(ENTRY)
          GOTO 10024
10025     IF(OPTSA0(1))GOTO 10026
          IF((RS(ENAME0(ENTRY),8).NE.174))GOTO 10026
            CALL DSFREE(ENTRY)
            GOTO 10027
10026     IF((.NOT.OPTSA0(17)))GOTO 10028
            AAAAG0=1
            GOTO 10006
10029     CONTINUE
10028     IF(OPTSA0(10))GOTO 10031
          IF(OPTSA0(18))GOTO 10031
          GOTO 10030
10031       AAAAF0=1
            GOTO 10005
10032     CONTINUE
10030     IF(OPTSA0(15))GOTO 10034
          IF(OPTSA0(9))GOTO 10034
          GOTO 10033
10034       IF((.NOT.OPTSA0(6)))GOTO 10035
              CALL PUTEN0(ENTRY,PAREN0)
              GOTO 10036
10035         CALL UPKFN$(ENAME0(ENTRY),32,AAAAI0,65)
              CALL PUTEN0(ENTRY,AAAAI0)
10036       CALL DSFREE(ENTRY)
            GOTO 10037
10033       AAAAD0=1
            GOTO 10003
10038     CONTINUE
10037   GOTO 10039
10022   AAAAL0=AAAAK0+3
        GOTO(10025,10023),AAAAL0
          CALL DSFREE(ENTRY)
10039 CONTINUE
10027 GOTO 10021
10024 IF(OPTSA0(15))GOTO 10040
        IF(OPTSA0(9))GOTO 10041
          AAAAH0=1
          GOTO 10007
10042   CONTINUE
10041   AAAAC0=1
        GOTO 10002
10043 CONTINUE
10040 GOTO 10044
10019 GOTO 10045
10001 ENTRY=DSGET(42)
      IF((FINFO$(PAREN0,EECWA0(ENTRY),AAAAM0).NE.-2))GOTO 10046
        IF((.NOT.OPTSA0(17)))GOTO 10047
          AAAAG0=2
          GOTO 10006
10048   CONTINUE
10047   IF((.NOT.OPTSA0(10)))GOTO 10049
          AAAAF0=2
          GOTO 10005
10050   CONTINUE
10049   IF((.NOT.OPTSA0(6)))GOTO 10051
          CALL PUTEN0(ENTRY,PAREN0)
          GOTO 10052
10051     CALL UPKFN$(ENAME0(ENTRY),32,AAAAO0,65)
          CALL PUTEN0(ENTRY,AAAAO0)
10052   AAAAC0=2
        GOTO 10002
10053   IF((AAAAM0.EQ.0))GOTO 10054
          CALL AT$HOM(AAAAN0)
10054   GOTO 10055
10046   CALL PRINT(-15,AAAAP0,PAREN0)
10055 CALL DSFREE(ENTRY)
      GOTO 10056
10045 GOTO 10057
10002 IF((COLAA0.LE.1))GOTO 10058
        CALL PUTCH(138,-11)
        COLAA0=1
10058 GOTO 10059
10057 GOTO 10060
10003 ELLIN0(ENTRY)=0
      ERLIN0(ENTRY)=0
      IF((ROOTA0.NE.0))GOTO 10061
        ROOTA0=ENTRY
        GOTO 10062
10061   AAAAQ0=ROOTA0
        GOTO 10065
10063   CONTINUE
10065   IF((AAAAQ0.EQ.0))GOTO 10064
          AAAAR0=AAAAQ0
          AAAAS0=(COMPA0(MEMAA0(ENTRY+KEYPO0),MEMAA0(AAAAQ0+KEYPO0),KEYL
     *E0).LT.0)
          IF((.NOT.OPTSA0(12)))GOTO 10066
            AAAAS0=.NOT.AAAAS0
10066     IF((.NOT.AAAAS0))GOTO 10067
            AAAAQ0=ELLIN0(AAAAQ0)
            GOTO 10068
10067       AAAAQ0=ERLIN0(AAAAQ0)
10068   GOTO 10063
10064   IF((.NOT.AAAAS0))GOTO 10069
          ELLIN0(AAAAR0)=ENTRY
          GOTO 10070
10069     ERLIN0(AAAAR0)=ENTRY
10070 CONTINUE
10062 GOTO 10071
10060 GOTO 10072
10004 OPTSA0(1)=.FALSE.
      OPTSA0(2)=.FALSE.
      OPTSA0(3)=.FALSE.
      OPTSA0(4)=.FALSE.
      OPTSA0(5)=.FALSE.
      OPTSA0(6)=.FALSE.
      OPTSA0(7)=.FALSE.
      OPTSA0(8)=.FALSE.
      OPTSA0(10)=.FALSE.
      OPTSA0(18)=.FALSE.
      OPTSA0(11)=.FALSE.
      OPTSA0(12)=.FALSE.
      OPTSA0(15)=.FALSE.
      OPTSA0(16)=.FALSE.
      OPTSA0(17)=.FALSE.
      OPTSA0(9)=.FALSE.
      IF((EXPAND(AAAAY0,AAAAX0,102).EQ.-3))GOTO 10074
      IF((EQUAL(AAAAX0,AAAAZ0).EQ.0))GOTO 10074
      GOTO 10073
10074   OPTSA0(13)=.FALSE.
        GOTO 10075
10073   OPTSA0(13)=.TRUE.
10075 MAXLE0=1
      KEYPO0=11
      KEYLE0=16
      ARGP=1
      GOTO 10078
10076 ARGP=ARGP+(1)
10078 IF((GETARG(ARGP,AAAAX0,102).EQ.-1))GOTO 10077
        IF((AAAAX0(1).EQ.173))GOTO 10079
          GOTO 10077
10079   AAAAT0=2
        GOTO 10082
10080   AAAAT0=AAAAT0+(1)
10082   IF((AAAAX0(AAAAT0).EQ.0))GOTO 10081
          IF((AAAAX0(AAAAT0).EQ.175))GOTO 10084
          IF((AAAAX0(AAAAT0).EQ.220))GOTO 10084
          GOTO 10083
10084       IF((AAAAX0(AAAAT0+1).EQ.0))GOTO 10085
              OPTSA0(12)=(AAAAX0(AAAAT0).EQ.220)
              AAAAT0=AAAAT0+(1)
              AAAAU0=.TRUE.
              GOTO 10086
10085         GOTO 10081
10086       GOTO 10087
10083       AAAAU0=.FALSE.
10087     AAAAV0=11
          AAAAW0=16
          AAABA0=AAAAX0(AAAAT0)
          GOTO 10088
10089       OPTSA0(1)=.TRUE.
          GOTO 10090
10091       OPTSA0(2)=.TRUE.
          GOTO 10090
10092       OPTSA0(3)=.TRUE.
          GOTO 10090
10093       OPTSA0(6)=.TRUE.
          GOTO 10090
10094       OPTSA0(8)=.TRUE.
          GOTO 10090
10095       OPTSA0(5)=.TRUE.
            OPTSA0(11)=.TRUE.
            OPTSA0(16)=.TRUE.
            OPTSA0(8)=.TRUE.
            OPTSA0(4)=.TRUE.
            OPTSA0(17)=.TRUE.
            OPTSA0(10)=.TRUE.
          GOTO 10090
10096       OPTSA0(16)=.TRUE.
            AAAAV0=30
            AAAAW0=2
          GOTO 10090
10097       OPTSA0(9)=.TRUE.
          GOTO 10090
10098       OPTSA0(10)=.TRUE.
            AAAAV0=4
            AAAAW0=3
          GOTO 10090
10099       OPTSA0(11)=.TRUE.
            AAAAV0=27
            AAAAW0=1
          GOTO 10090
10100       OPTSA0(18)=.TRUE.
          GOTO 10090
10101       OPTSA0(12)=.TRUE.
          GOTO 10090
10102       OPTSA0(15)=.TRUE.
            AAAAT0=AAAAT0+(1)
            MAXLE0=CTOI(AAAAX0,AAAAT0)
            AAAAT0=AAAAT0-(1)
          GOTO 10090
10103       OPTSA0(5)=.TRUE.
          GOTO 10090
10104       OPTSA0(4)=.TRUE.
          GOTO 10090
10105       OPTSA0(7)=.TRUE.
          GOTO 10090
10106       OPTSA0(17)=.TRUE.
            AAAAV0=2
            AAAAW0=2
          GOTO 10090
10088     AAABB0=AAABA0-224
          GOTO(10089,10107,10091,10092,10107,10093,10107,10107,10107,101
     *07,10094,10095,10096,10097,10098,10099,10100,10101,10102,10103,101
     *04,10105,10106),AAABB0
10107     CONTINUE
10090     IF((.NOT.AAAAU0))GOTO 10108
            KEYPO0=AAAAV0
            KEYLE0=AAAAW0
10108   GOTO 10080
10081 GOTO 10076
10077 IF((MAXLE0.GT.0))GOTO 10109
        MAXLE0=:77777
10109 GOTO 10110
10072 GOTO 10111
10005 IF((AND(EFILT0(ENTRY),7).NE.4))GOTO 10112
        CALL GPAS$$(ENAME0(ENTRY),32,EOWNE0(ENTRY),EPASS0(ENTRY),CODE)
        IF((CODE.EQ.0))GOTO 10113
          DO 10114 AAABC0=0,2
            EOWNE0(ENTRY+AAABC0)='  '
            EPASS0(ENTRY+AAABC0)='  '
10114     CONTINUE
10115   CONTINUE
10113   GOTO 10116
10112   DO 10117 AAABC0=0,2
          EOWNE0(ENTRY+AAABC0)='  '
          EPASS0(ENTRY+AAABC0)='  '
10117   CONTINUE
10118 CONTINUE
10116 GOTO 10119
10111 GOTO 10120
10006 CALL SRCH$$(:1+:40000,ENAME0(ENTRY),32,AAABD0,AAABE0,AAABF0)
      IF((AAABF0.NE.0))GOTO 10121
        CALL FSIZE(AAABD0,AND(AAABE0,7),EFSIZ0(ENTRY))
        CALL SRCH$$(:4,0,0,AAABD0,AAABE0,AAABF0)
        GOTO 10122
10121   EFSIZ0(ENTRY)=0
        EFSJA0(ENTRY)=0
10122 GOTO 10123
10120 GOTO 10124
10007 IF((ROOTA0.EQ.0))GOTO 10125
        IF((.NOT.OPTSA0(6)))GOTO 10126
          AAABG0=PLAAA0+1
          IF((PLAAA0.LE.0))GOTO 10127
          IF((PAREN0(PLAAA0).EQ.220))GOTO 10127
            PAREN0(AAABG0)=175
            AAABG0=AAABG0+(1)
10127     GOTO 10128
10126     AAABG0=1
10128   CALL PRINU0(ROOTA0,PAREN0,AAABG0)
10125 GOTO 10129
10124 CALL SWT
10119 GOTO(10032,10050),AAAAF0
      GOTO 10119
10044 GOTO(10016,10018),AAAAA0
      GOTO 10044
10110 GOTO 10008
10056 GOTO 10014
10071 GOTO 10038
10123 GOTO(10029,10048),AAAAG0
      GOTO 10123
10129 GOTO 10042
10059 GOTO(10043,10053),AAAAC0
      GOTO 10059
      END
      INTEGER FUNCTION COMPA0(S1,S2,LEN)
      INTEGER S1(1),S2(1),LEN
      INTEGER I
      COMPA0=0
      DO 10130 I=1,LEN
        COMPA0=RT(INTL(S1(I)),16)-RT(INTL(S2(I)),16)
        IF((COMPA0.EQ.0))GOTO 10132
          GOTO 10131
10132   CONTINUE
10130 CONTINUE
10131 RETURN
      END
      SUBROUTINE FSIZE(FD,TYP,SIZE)
      INTEGER FD,TYP
      INTEGER * 4 SIZE
      INTEGER RC,ENTRYA,ENTRYB
      SIZE=0
      IF((TYP.EQ.2))GOTO 10134
      IF((TYP.EQ.3))GOTO 10134
      GOTO 10133
10134   CALL SGDR$$(:2,FD,ENTRYA,ENTRYB,RC)
        IF((RC.NE.0))GOTO 10135
          SIZE=ENTRYB*2
10135   GOTO 10136
10133   IF((TYP.NE.4))GOTO 10137
10138       CALL RDEN$$(:4,FD,LOC(0),0,0,100000,0,RC)
          IF((RC.EQ.0))GOTO 10138
          GOTO 10139
10137     CONTINUE
10140       CALL PRWF$$(:3,FD,LOC(0),0,100000,0,RC)
          IF((RC.EQ.0))GOTO 10140
10139   IF((RC.EQ.1))GOTO 10141
          RETURN
10141   IF((TYP.NE.4))GOTO 10142
          CALL RDEN$$(:3,FD,LOC(0),0,0,SIZE,0,RC)
          SIZE=SIZE+(1)
          GOTO 10143
10142     CALL PRWF$$(:5,FD,LOC(0),0,SIZE,0,RC)
10143 CONTINUE
10136 RETURN
      END
      SUBROUTINE PRINU0(PTR,PREFIX,I)
      INTEGER PTR
      INTEGER PREFIX(1)
      INTEGER I
      INTEGER KEYPO0,KEYLE0,LEVEL0,MAXLE0,COLAA0
      INTEGER ROOTA0
      LOGICAL OPTSA0(18)
      INTEGER PLAAA0
      INTEGER PAREN0(512)
      COMMON /LF$COM/KEYPO0,KEYLE0,LEVEL0,MAXLE0,COLAA0,ROOTA0,OPTSA0,PL
     *AAA0,PAREN0
      INTEGER MEMAA0(32000)
      INTEGER ELLIN0(1),ERLIN0(1)
      INTEGER EFSIZ0(1),EFSJA0(1),EOWNE0(1),EPASS0(1),EECWA0(1),ENAME0(1
     *),EPROT0(1),ENOND0(1),EFILT0(1),EDATM0(1),ETIMM0(1),ELOGT0(1),ETRU
     *N0(1),EDTLS0(1)
      COMMON /DS$MEM/MEMAA0
      EQUIVALENCE (ELLIN0,MEMAA0(1)),(ERLIN0,MEMAA0(2)),(EFSIZ0,MEMAA0(3
     *)),(EFSJA0,MEMAA0(4)),(EOWNE0,MEMAA0(5)),(EPASS0,MEMAA0(8)),(EECWA
     *0,MEMAA0(11)),(ENAME0,MEMAA0(12)),(EPROT0,MEMAA0(28)),(ENOND0,MEMA
     *A0(29)),(EFILT0,MEMAA0(30)),(EDATM0,MEMAA0(31)),(ETIMM0,MEMAA0(32)
     *),(ELOGT0(1),MEMAA0(33)),(ETRUN0(1),MEMAA0(35)),(EDTLS0(1),MEMAA0(
     *36))
      IF((ELLIN0(PTR).EQ.0))GOTO 10144
        CALL PRINU0(ELLIN0(PTR),PREFIX,I)
10144 CALL UPKFN$(ENAME0(PTR),32,PREFIX(I),512-I+1)
      CALL PUTEN0(PTR,PREFIX)
      IF((ERLIN0(PTR).EQ.0))GOTO 10145
        CALL PRINU0(ERLIN0(PTR),PREFIX,I)
10145 CALL DSFREE(PTR)
      PTR=0
      RETURN
      END
      SUBROUTINE PUTEN0(ENTRY,NAME)
      INTEGER ENTRY
      INTEGER NAME(1)
      INTEGER KEYPO0,KEYLE0,LEVEL0,MAXLE0,COLAA0
      INTEGER ROOTA0
      LOGICAL OPTSA0(18)
      INTEGER PLAAA0
      INTEGER PAREN0(512)
      COMMON /LF$COM/KEYPO0,KEYLE0,LEVEL0,MAXLE0,COLAA0,ROOTA0,OPTSA0,PL
     *AAA0,PAREN0
      INTEGER MEMAA0(32000)
      INTEGER ELLIN0(1),ERLIN0(1)
      INTEGER EFSIZ0(1),EFSJA0(1),EOWNE0(1),EPASS0(1),EECWA0(1),ENAME0(1
     *),EPROT0(1),ENOND0(1),EFILT0(1),EDATM0(1),ETIMM0(1),ELOGT0(1),ETRU
     *N0(1),EDTLS0(1)
      COMMON /DS$MEM/MEMAA0
      INTEGER I,J,K,TMP,TMP2
      INTEGER SCOPY,ENCODE,LENGTH
      INTEGER BUF(102)
      INTEGER AAABH0(5)
      INTEGER AAABI0
      INTEGER AAABJ0(5)
      INTEGER AAABK0(5)
      INTEGER AAABL0(5)
      INTEGER AAABM0(5)
      INTEGER AAABN0(5)
      INTEGER AAABO0(5)
      INTEGER AAABP0
      INTEGER AAABQ0(5)
      INTEGER AAABR0(8)
      INTEGER AAABS0(25)
      INTEGER AAABT0(6)
      INTEGER AAABU0(6)
      INTEGER AAABV0(5)
      INTEGER AAABW0
      INTEGER AAABX0(5)
      INTEGER AAABY0(5)
      INTEGER AAABZ0(5)
      INTEGER AAACA0(5)
      INTEGER AAACB0(4)
      EQUIVALENCE (ELLIN0,MEMAA0(1)),(ERLIN0,MEMAA0(2)),(EFSIZ0,MEMAA0(3
     *)),(EFSJA0,MEMAA0(4)),(EOWNE0,MEMAA0(5)),(EPASS0,MEMAA0(8)),(EECWA
     *0,MEMAA0(11)),(ENAME0,MEMAA0(12)),(EPROT0,MEMAA0(28)),(ENOND0,MEMA
     *A0(29)),(EFILT0,MEMAA0(30)),(EDATM0,MEMAA0(31)),(ETIMM0,MEMAA0(32)
     *),(ELOGT0(1),MEMAA0(33)),(ETRUN0(1),MEMAA0(35)),(EDTLS0(1),MEMAA0(
     *36))
      DATA AAABH0/243,240,227,160,0/
      DATA AAABJ0/243,225,237,160,0/
      DATA AAABK0/228,225,237,160,0/
      DATA AAABL0/243,231,243,160,0/
      DATA AAABM0/243,231,228,160,0/
      DATA AAABN0/245,230,228,160,0/
      DATA AAABO0/225,227,244,160,0/
      DATA AAABQ0/191,191,191,160,0/
      DATA AAABR0/160,160,160,175,160,160,160,0/
      DATA AAABS0/170,178,172,172,176,245,170,233,175,170,233,175,170,23
     *3,160,170,233,186,170,233,186,170,233,160,0/
      DATA AAABT0/170,183,172,182,232,0/
      DATA AAABU0/170,183,172,182,232,0/
      DATA AAABV0/170,184,236,160,0/
      DATA AAABX0/243,249,243,160,0/
      DATA AAABY0/238,173,177,160,0/
      DATA AAABZ0/238,171,177,160,0/
      DATA AAACA0/238,171,238,160,0/
      DATA AAACB0/252,160,160,0/
      K=1
      IF((.NOT.OPTSA0(5)))GOTO 10146
        IF((AND(EFILT0(ENTRY),4096).EQ.0))GOTO 10147
          CALL SCOPY(AAABH0,1,BUF,K)
          GOTO 10148
10147     AAABI0=AND(EFILT0(ENTRY),7)
          GOTO 10149
10150       CALL SCOPY(AAABJ0,1,BUF,K)
          GOTO 10151
10152       CALL SCOPY(AAABK0,1,BUF,K)
          GOTO 10151
10153       CALL SCOPY(AAABL0,1,BUF,K)
          GOTO 10151
10154       CALL SCOPY(AAABM0,1,BUF,K)
          GOTO 10151
10155       CALL SCOPY(AAABN0,1,BUF,K)
          GOTO 10151
10156       CALL SCOPY(AAABO0,1,BUF,K)
          GOTO 10151
10149     AAABP0=AAABI0+1
          GOTO(10150,10152,10153,10154,10155,10157,10156),AAABP0
10157       CALL SCOPY(AAABQ0,1,BUF,K)
10151   CONTINUE
10148   K=K+(4)
10146 IF((.NOT.OPTSA0(11)))GOTO 10158
        CALL SCOPY(AAABR0,1,BUF,K)
        TMP=EPROT0(ENTRY)
        I=K+2
        IF((AND(TMP,1792).NE.1792))GOTO 10159
          BUF(I)=225
          GOTO 10160
10159     IF((AND(TMP,256).EQ.0))GOTO 10161
            BUF(I)=242
            I=I-(1)
10161     IF((AND(TMP,512).EQ.0))GOTO 10162
            BUF(I)=247
            I=I-(1)
10162     IF((AND(TMP,1024).EQ.0))GOTO 10163
            BUF(I)=244
10163   CONTINUE
10160   I=K+4
        IF((AND(TMP,7).NE.7))GOTO 10164
          BUF(I)=225
          GOTO 10165
10164     IF((AND(TMP,4).EQ.0))GOTO 10166
            BUF(I)=244
            I=I+(1)
10166     IF((AND(TMP,2).EQ.0))GOTO 10167
            BUF(I)=247
            I=I+(1)
10167     IF((AND(TMP,1).EQ.0))GOTO 10168
            BUF(I)=242
10168   CONTINUE
10165   BUF(K+7)=160
        K=K+(8)
10158 IF((.NOT.OPTSA0(16)))GOTO 10169
        TMP=EDATM0(ENTRY)
        TMP2=ETIMM0(ENTRY)
        K=K+(ENCODE(BUF(K),19,AAABS0,AND(RS(TMP,5),15),AND(TMP,31),RS(TM
     *P,9),TMP2/900,MOD(TMP2/15,60),MOD(TMP2,15)*4))
10169 IF((.NOT.OPTSA0(10)))GOTO 10170
        K=K+(ENCODE(BUF(K),8,AAABT0,EOWNE0(ENTRY)))
10170 IF((.NOT.OPTSA0(18)))GOTO 10171
        K=K+(ENCODE(BUF(K),8,AAABU0,EPASS0(ENTRY)))
10171 IF((.NOT.OPTSA0(17)))GOTO 10172
        K=K+(ENCODE(BUF(K),10,AAABV0,EFSIZ0(ENTRY)))
10172 IF((.NOT.OPTSA0(8)))GOTO 10173
        AAABW0=AND(EFILT0(ENTRY),3072)
        GOTO 10174
10175     CALL SCOPY(AAABX0,1,BUF,K)
        GOTO 10176
10177     CALL SCOPY(AAABY0,1,BUF,K)
        GOTO 10176
10178     CALL SCOPY(AAABZ0,1,BUF,K)
        GOTO 10176
10174   IF(AAABW0.EQ.0)GOTO 10175
        IF(AAABW0.EQ.1024)GOTO 10177
        IF(AAABW0.EQ.2048)GOTO 10178
          CALL SCOPY(AAACA0,1,BUF,K)
10176   K=K+(4)
10173 IF((.NOT.OPTSA0(4)))GOTO 10179
        IF((AND(EFILT0(ENTRY),16384).EQ.0))GOTO 10180
          BUF(K)=228
          GOTO 10181
10180     BUF(K)=160
10181   IF((AND(EFILT0(ENTRY),8192).EQ.0))GOTO 10182
          BUF(K+1)=237
          GOTO 10183
10182     BUF(K+1)=160
10183   BUF(K+2)=160
        K=K+(3)
10179 BUF(K)=0
      K=K+(LENGTH(NAME))
      IF(OPTSA0(2))GOTO 10184
        IF((.NOT.OPTSA0(15)))GOTO 10185
          I=1
          GOTO 10188
10186     I=I+(1)
10188     IF((I.GE.LEVEL0))GOTO 10187
            CALL PUTLIN(AAACB0,-11)
          GOTO 10186
10187     CALL PUTLIN(BUF,-11)
          CALL PUTLIN(NAME,-11)
          CALL PUTCH(138,-11)
          GOTO 10189
10185     IF((COLAA0.LE.1))GOTO 10190
            J=COLAA0+1+13-1
            J=J-(MOD(J,13)-1)
            IF((J+K-1.GT.78))GOTO 10191
10192         IF((COLAA0.GE.J))GOTO 10193
                CALL PUTCH(160,-11)
                COLAA0=COLAA0+(1)
              GOTO 10192
10193         GOTO 10194
10191         CALL PUTCH(138,-11)
              COLAA0=1
10194     CONTINUE
10190     CALL PUTLIN(BUF,-11)
          CALL PUTLIN(NAME,-11)
          COLAA0=COLAA0+(K-1)
10189   GOTO 10195
10184   CALL PUTLIN(BUF,-11)
        CALL PUTLIN(NAME,-11)
        CALL PUTCH(138,-11)
10195 RETURN
      END
C ---- Long Name Map ----
C Elogtyp                        elogt0
C Maxlevel                       maxle0
C Erlink                         erlin0
C compare                        compa0
C Efsize                         efsiz0
C Edatmod                        edatm0
C getowner                       getow0
C Keylen                         keyle0
C Ename                          ename0
C Parent                         paren0
C Efsize1                        efsja0
C Pl                             plaaa0
C getoptions                     getop0
C Eowner                         eowne0
C Etrunc                         etrun0
C printsubtree                   prinu0
C enterentry                     enter0
C useleft                        usele0
C Etimmod                        etimm0
C Col                            colaa0
C getsize                        getsi0
C Level                          level0
C Mem                            memaa0
C Keypos                         keypo0
C Eprotec                        eprot0
C Enondefprot                    enond0
C Edtlsav                        edtls0
C Root                           roota0
C Opts                           optsa0
C Epasswd                        epass0
C saveargp                       savea0
C printtree                      print0
C Efiltyp                        efilt0
C putentry                       puten0
C Eecw                           eecwa0
C endline                        endli0
C Ellink                         ellin0
