SUBROUTINE MAIN LOGICAL*1 LIN(402), BUF(200), OBUF(500) INTEGER BP, OBP, I, J, JUNK, NFILES, LEN, FD(12) INTEGER OPEN, GETARG, GETLIN, ESC, ADDSET LOGICAL*1 ST001Z(33) LOGICAL*1 ST002Z(19) LOGICAL*1 ST003Z(17) LOGICAL*1 ST004Z(23) LOGICAL*1 ST005Z(23) DATA ST001Z(1)/117/,ST001Z(2)/115/,ST001Z(3)/97/,ST001Z(4)/103/,ST *001Z(5)/101/,ST001Z(6)/58/,ST001Z(7)/32/,ST001Z(8)/32/,ST001Z(9)/1 *08/,ST001Z(10)/97/,ST001Z(11)/109/,ST001Z(12)/32/,ST001Z(13)/123/, *ST001Z(14)/45/,ST001Z(15)/115/,ST001Z(16)/116/,ST001Z(17)/114/,ST0 *01Z(18)/105/,ST001Z(19)/110/,ST001Z(20)/103/,ST001Z(21)/32/,ST001Z *(22)/124/,ST001Z(23)/32/,ST001Z(24)/102/,ST001Z(25)/105/,ST001Z(26 *)/108/,ST001Z(27)/101/,ST001Z(28)/125/,ST001Z(29)/32/,ST001Z(30)/4 *6/,ST001Z(31)/46/,ST001Z(32)/46/,ST001Z(33)/0/ DATA ST002Z(1)/116/,ST002Z(2)/111/,ST002Z(3)/111/,ST002Z(4)/32/,ST *002Z(5)/109/,ST002Z(6)/97/,ST002Z(7)/110/,ST002Z(8)/121/,ST002Z(9) */32/,ST002Z(10)/97/,ST002Z(11)/114/,ST002Z(12)/103/,ST002Z(13)/117 */,ST002Z(14)/109/,ST002Z(15)/101/,ST002Z(16)/110/,ST002Z(17)/116/, *ST002Z(18)/115/,ST002Z(19)/0/ DATA ST003Z(1)/116/,ST003Z(2)/111/,ST003Z(3)/111/,ST003Z(4)/32/,ST *003Z(5)/109/,ST003Z(6)/97/,ST003Z(7)/110/,ST003Z(8)/121/,ST003Z(9) */32/,ST003Z(10)/115/,ST003Z(11)/116/,ST003Z(12)/114/,ST003Z(13)/10 *5/,ST003Z(14)/110/,ST003Z(15)/103/,ST003Z(16)/115/,ST003Z(17)/0/ DATA ST004Z(1)/111/,ST004Z(2)/117/,ST004Z(3)/116/,ST004Z(4)/112/,S *T004Z(5)/117/,ST004Z(6)/116/,ST004Z(7)/32/,ST004Z(8)/98/,ST004Z(9) */117/,ST004Z(10)/102/,ST004Z(11)/102/,ST004Z(12)/101/,ST004Z(13)/1 *14/,ST004Z(14)/32/,ST004Z(15)/101/,ST004Z(16)/120/,ST004Z(17)/99/, *ST004Z(18)/101/,ST004Z(19)/101/,ST004Z(20)/100/,ST004Z(21)/101/,ST *004Z(22)/100/,ST004Z(23)/0/ DATA ST005Z(1)/111/,ST005Z(2)/117/,ST005Z(3)/116/,ST005Z(4)/112/,S *T005Z(5)/117/,ST005Z(6)/116/,ST005Z(7)/32/,ST005Z(8)/98/,ST005Z(9) */117/,ST005Z(10)/102/,ST005Z(11)/102/,ST005Z(12)/101/,ST005Z(13)/1 *14/,ST005Z(14)/32/,ST005Z(15)/101/,ST005Z(16)/120/,ST005Z(17)/99/, *ST005Z(18)/101/,ST005Z(19)/101/,ST005Z(20)/100/,ST005Z(21)/101/,ST *005Z(22)/100/,ST005Z(23)/0/ CALL QUERY(ST001Z) BP = 1 NFILES = 0 I = 1 23000 IF (.NOT.(GETARG(I, LIN, 402) .NE. -1))GOTO 23002 IF (.NOT.(I .GT. 12))GOTO 23003 CALL ERROR(ST002Z) 23003 CONTINUE IF (.NOT.(LIN(1) .EQ. 45 .AND. LIN(2) .NE. 0))GOTO 23005 FD(I) = -BP J = 2 23007 IF (.NOT.(LIN(J) .NE. 0))GOTO 23009 JUNK = ADDSET(ESC(LIN, J), BUF, BP, 200) 23008 J = J + 1 GOTO 23007 23009 CONTINUE IF (.NOT.(ADDSET(0, BUF, BP, 200) .EQ. 0))GOTO 23010 CALL ERROR(ST003Z) 23010 CONTINUE GOTO 23006 23005 CONTINUE NFILES = NFILES + 1 IF (.NOT.(LIN(1) .EQ. 45))GOTO 23012 FD(I) = 1 GOTO 23013 23012 CONTINUE FD(I) = OPEN(LIN, 1) 23013 CONTINUE IF (.NOT.(FD(I) .EQ. -3))GOTO 23014 CALL CANT(LIN) 23014 CONTINUE 23006 CONTINUE 23001 I = I + 1 GOTO 23000 23002 CONTINUE IF (.NOT.(NFILES .EQ. 0))GOTO 23016 NFILES = 1 FD(I) = 1 GOTO 23017 23016 CONTINUE I = I - 1 23017 CONTINUE N = I OBP = 1 23018 IF (.NOT.(NFILES .GT. 0))GOTO 23020 I = 1 23021 IF (.NOT.(I .LE. N))GOTO 23023 IF (.NOT.(FD(I) .LT. 0 ))GOTO 23024 J = -FD(I) 23026 IF (.NOT.(BUF(J) .NE. 0))GOTO 23028 IF (.NOT.( ADDSET(BUF(J), OBUF, OBP, 500) .EQ. 0))GOTO 23029 CALL ERROR (ST004Z) 23029 CONTINUE 23027 J = J + 1 GOTO 23026 23028 CONTINUE GOTO 23025 23024 CONTINUE IF (.NOT.(FD(I) .NE. -1))GOTO 23031 LEN = GETLIN(LIN, FD(I)) IF (.NOT.(LEN .EQ. -1))GOTO 23033 NFILES = NFILES - 1 IF (.NOT.(FD(I) .NE. 1))GOTO 23035 CALL CLOSE(FD(I)) 23035 CONTINUE FD(I) = -1 GOTO 23034 23033 CONTINUE J = 1 23037 IF (.NOT.(J .LT. LEN))GOTO 23039 IF (.NOT.( ADDSET(LIN(J), OBUF, OBP, 500) .EQ. 0))GOTO 23040 CALL ERROR (ST005Z) 23040 CONTINUE 23038 J = J + 1 GOTO 23037 23039 CONTINUE 23034 CONTINUE 23031 CONTINUE 23025 CONTINUE 23022 I = I + 1 GOTO 23021 23023 CONTINUE IF (.NOT.(NFILES .GT. 0))GOTO 23042 J = 1 23044 IF (.NOT.(J .LT. OBP))GOTO 23046 CALL PUTCH(OBUF(J), 2) 23045 J = J + 1 GOTO 23044 23046 CONTINUE CALL PUTCH(10, 2) 23042 CONTINUE 23019 OBP = 1 GOTO 23018 23020 CONTINUE RETURN END