      INTEGER T1,T2
      INTEGER GETLIN,COMPA0
      INTEGER LINE1(102),LINE2(102)
      INTEGER FD1AA0,FD2AA0,OUTCO0(3)
      COMMON /COMCOM/FD1AA0,FD2AA0,OUTCO0
      INTEGER AAAAA0
      INTEGER AAAAB0
      CALL GETPA0
      T1=GETLIN(LINE1,FD1AA0)
      T2=GETLIN(LINE2,FD2AA0)
10000 IF((T1.NE.-1))GOTO 10002
      IF((T2.NE.-1))GOTO 10002
      GOTO 10001
10002   IF((T1.NE.-1))GOTO 10003
        IF((T2.EQ.-1))GOTO 10003
10004       CALL OUTPUT(LINE2,2)
          IF((GETLIN(LINE2,FD2AA0).NE.-1))GOTO 10004
          GOTO 10001
10003     IF((T1.EQ.-1))GOTO 10005
          IF((T2.NE.-1))GOTO 10005
10006         CALL OUTPUT(LINE1,1)
            IF((GETLIN(LINE1,FD1AA0).NE.-1))GOTO 10006
            GOTO 10001
10005       AAAAA0=COMPA0(LINE1,LINE2)
            GOTO 10007
10008         CALL OUTPUT(LINE1,1)
              T1=GETLIN(LINE1,FD1AA0)
            GOTO 10009
10010         CALL OUTPUT(LINE1,3)
              T1=GETLIN(LINE1,FD1AA0)
              T2=GETLIN(LINE2,FD2AA0)
            GOTO 10009
10011         CALL OUTPUT(LINE2,2)
              T2=GETLIN(LINE2,FD2AA0)
            GOTO 10009
10007       AAAAB0=AAAAA0+2
            GOTO(10008,10010,10011),AAAAB0
10009     CONTINUE
      GOTO 10000
10001 CALL CLOSE(FD1AA0)
      CALL CLOSE(FD2AA0)
      CALL SWT
      END
      INTEGER FUNCTION COMPA0(STR1,STR2)
      INTEGER STR1(1),STR2(1)
      INTEGER I
      I=1
      GOTO 10014
10012 I=I+(1)
10014 IF((STR1(I).NE.STR2(I)))GOTO 10013
        IF((STR1(I).NE.0))GOTO 10015
          COMPA0=0
          RETURN
10015 GOTO 10012
10013 IF((STR1(I).GE.STR2(I)))GOTO 10016
        COMPA0=-1
        GOTO 10017
10016   COMPA0=1
10017 RETURN
      END
      SUBROUTINE GETPA0
      INTEGER FD1AA0,FD2AA0,OUTCO0(3)
      COMMON /COMCOM/FD1AA0,FD2AA0,OUTCO0
      INTEGER GETARG,OPEN
      INTEGER I,J
      INTEGER ARG(102)
      INTEGER AAAAC0
      INTEGER AAAAD0
      I=1
      OUTCO0(1)=1
      OUTCO0(2)=1
      OUTCO0(3)=1
      IF((GETARG(I,ARG,102).NE.-1))GOTO 10018
        FD1AA0=-10
        FD2AA0=-12
        RETURN
10018 IF((ARG(1).NE.173))GOTO 10019
        I=I+(1)
        OUTCO0(1)=0
        OUTCO0(2)=0
        OUTCO0(3)=0
        J=2
        GOTO 10022
10020   J=J+(1)
10022   IF((ARG(J).EQ.0))GOTO 10021
          AAAAC0=ARG(J)
          GOTO 10023
10024       OUTCO0(1)=1
          GOTO 10025
10026       OUTCO0(2)=1
          GOTO 10025
10027       OUTCO0(3)=1
          GOTO 10025
10023     AAAAD0=AAAAC0-176
          GOTO(10024,10026,10027),AAAAD0
10025   GOTO 10020
10021 CONTINUE
10019 IF((GETARG(I,ARG,102).NE.-1))GOTO 10028
        FD1AA0=-10
        FD2AA0=-12
        RETURN
10028 FD1AA0=OPEN(ARG,1)
      IF((FD1AA0.NE.-3))GOTO 10029
        CALL CANT(ARG)
10029 I=I+(1)
      IF((GETARG(I,ARG,102).NE.-1))GOTO 10030
        FD2AA0=-10
        GOTO 10031
10030   FD2AA0=OPEN(ARG,1)
        IF((FD2AA0.NE.-3))GOTO 10032
          CALL CANT(ARG)
10032 CONTINUE
10031 RETURN
      END
      SUBROUTINE OUTPUT(LINE,COL)
      INTEGER LINE(1)
      INTEGER COL
      INTEGER FD1AA0,FD2AA0,OUTCO0(3)
      COMMON /COMCOM/FD1AA0,FD2AA0,OUTCO0
      INTEGER AAAAE0
      INTEGER AAAAF0(4)
      INTEGER AAAAG0(4)
      INTEGER AAAAH0
      DATA AAAAF0/170,163,248,0/
      DATA AAAAG0/170,163,248,0/
      IF((OUTCO0(COL).EQ.0))GOTO 10033
        AAAAE0=COL
        GOTO 10034
10035   GOTO 10036
10037     IF((OUTCO0(2).EQ.0))GOTO 10038
            CALL PRINT(-11,AAAAF0,24)
10038   GOTO 10036
10036     IF((OUTCO0(1).EQ.0))GOTO 10039
            CALL PRINT(-11,AAAAG0,24)
10039   GOTO 10040
10034   AAAAH0=AAAAE0-1
        GOTO(10035,10037),AAAAH0
10040   CALL PUTLIN(LINE,-11)
10033 RETURN
      END
C ---- Long Name Map ----
C Fd1                            fd1aa0
C Fd2                            fd2aa0
C compare                        compa0
C getparams                      getpa0
C Outcol                         outco0
