SUBROUTINE  OSCAN (MATCH, LOW, HIGH) 
      INTEGER     MATCH, LOW, HIGH 
 
      INTEGER     ADDR,   ADRFLG, CUROP,  NEXTOP, CFLAG 
      INTEGER     PI,     XBBL,   XA,     XF,     XZERO,  DPVFLG 
      INTEGER     LC,     LCI,    LODLCI, LODLCV, LDLCVO, MAXLCV 
      INTEGER     NEXT,   NUMBER, I,      IOTYPE 
      INTEGER     J,      K,      L,      LABNLX, M,      N 
      INTEGER     PSYMB,  SYMBOL, TOP,    VALFLG, QVALUE 
      INTEGER     OPTOPX, OPNXTX, TOPX,   NEXTX 
      INTEGER     DUMMY,  OVCHN,  PEEKS 
      INTEGER     LO,     CI,     CO,     LOGICF, LOCSUP 
      INTEGER     VAREF,  INPUTJ, LCTS,   CRUCNT, FLTCNT 
      INTEGER ICLP05 
      LOGICAL     ENDOK,CONEND 
      COMMON   /LOGOS/  ADDR,   ADRFLG, CUROP,  NEXTOP, CFLAG 
      COMMON   /LOGOS/  PI,     XBBL,   XA,     XF,     XZERO,  DPVFLG 
      COMMON   /LOGOS/  LC,     LCI,    LODLCI, LODLCV, LDLCVO, MAXLCV 
      COMMON   /LOGOS/  NEXT,   NUMBER, I,      IOTYPE 
      COMMON   /LOGOS/  J,      K,      L,      LABNLX, M,      N 
      COMMON   /LOGOS/  PSYMB,  SYMBOL, TOP,    VALFLG, QVALUE 
      COMMON   /LOGOS/  OPTOPX, OPNXTX, TOPX,   NEXTX 
      COMMON   /LOGOS/  DUMMY,  OVCHN,  PEEKS 
      COMMON   /LOGOS/  LO,     CI,     CO,     LOGICF, LOCSUP 
      COMMON   /LOGOS/  VAREF,  INPUTJ, LCTS,   CRUCNT, FLTCNT 
      COMMON   /LOGOS/  ICLP05 
      COMMON   /LOGOS/  ENDOK,CONEND 
 
      INTEGER  NINE 
      INTEGER  COMMA, SEMIC, PERIOD, COLON, FOR, DOOP, WHILE 
      INTEGER  RBRACE, LBRACE, RETOP, CRUTCH 
      INTEGER  LPAREN, RPAREN, LBK, RBK 
      INTEGER  EQUAL, NEQUAL, GTR, GEQ, LESS, LESSEQ, ARROW 
      INTEGER  PLUS, MINUS, MULT, DIVIDE, MODOP 
      INTEGER  OROP, ANDOP, AOROP, XOROP, AANDOP 
      INTEGER  LSHIFT, RSHIFT, LCYCLE, RCYCLE, ALSHFT, ARSHFT 
      INTEGER  NEG, UPARO, DNARO, COM 
      INTEGER  LOC, GIZZY, QUOTE, ZRL, TEMPL 
      INTEGER  SP, DP, ST, HEX 
      INTEGER  ATSIGN 
      INTEGER  ICLP06 
      COMMON /OPERS/     NINE 
      COMMON /OPERS/     COMMA, SEMIC, PERIOD, COLON, FOR, DOOP, WHILE 
      COMMON /OPERS/     RBRACE, LBRACE, RETOP, CRUTCH 
      COMMON /OPERS/     LPAREN, RPAREN, LBK, RBK 
      COMMON /OPERS/     EQUAL, NEQUAL, GTR, GEQ, LESS, LESSEQ, ARROW 
      COMMON /OPERS/     PLUS, MINUS, MULT, DIVIDE, MODOP 
      COMMON /OPERS/     OROP, ANDOP, AOROP, XOROP, AANDOP 
      COMMON /OPERS/     LSHIFT, RSHIFT, LCYCLE, RCYCLE, ALSHFT, ARSHFT 
      COMMON /OPERS/     NEG, UPARO, DNARO, COM 
      COMMON /OPERS/     LOC, GIZZY, QUOTE, ZRL, TEMPL 
      COMMON /OPERS/     SP, DP, ST, HEX 
      COMMON /OPERS/    ATSIGN 
      COMMON /OPERS/    ICLP06 
 
      INTEGER  FCHRTS 
      INTEGER  SCFLAG 
      INTEGER  QMODE 
      INTEGER  LBIAS 
      INTEGER  SCOUNT 
      INTEGER  QINDEX 
      LOGICAL  NOTINQ 
      COMMON   /SRCEX/  FCHRTS 
      COMMON   /SRCEX/  SCFLAG 
      COMMON   /SRCEX/  QMODE 
      COMMON   /SRCEX/  LBIAS 
      COMMON   /SRCEX/  SCOUNT 
      COMMON   /SRCEX/  QINDEX 
      COMMON   /SRCEX/  NOTINQ 
      SCFLAG = 1 
      CONTINUE 
13004 CONTINUE 
 
      IF (.NOT. (PSYMB .EQ. PERIOD))GO TO 13006 
 
      CALL PEEK 
      IF (PEEKS .EQ. PERIOD) CALL FATAL (81) 
13006 CONTINUE 
 
      IF (.NOT. ( (PSYMB .EQ. MATCH) .OR. (LOW .LT. PSYMB .AND. PSYMB .L
     1T. HIGH)))GO TO 13008 
 
      SCFLAG = 0 
      CUROP  = COMMA 
      NEXTOP = PSYMB 
      GO TO 13005 
 
13008 CONTINUE 
 
      IF (.NOT. (PSYMB .EQ. QUOTE))GO TO 13010 
 
      CONTINUE 
13012 CONTINUE 
 
      CALL FNZS 
      IF (.NOT.(PSYMB .NE. QUOTE))GO TO 13013 
 
      GO TO 13012 
13013 CONTINUE 
 
13010 CONTINUE 
 
      CALL FNZS 
      GO TO 13004 
13005 CONTINUE 
 
      RETURN 
      END