/******************************************************************
 * File: ps20_scanner.cpp
 *
 * This file was automatically generated by CppCC Version 0.0.5
 * DO NOT EDIT MANUALLY
 ******************************************************************/



#include "ps20_scanner.hpp"

const int swShader::ps20_scanner::START = 0;
const int swShader::ps20_scanner::LONG_COMMENT = 1;

void swShader::ps20_scanner::_brefill () throw (ScanException)
{
  if (!*inputStream) {
    ScanException __ex(ePos, "Input error.");
    if (!onIOError(__ex))
      throw __ex;
  }
  for (struct t_laCell *p = _laBegin; p != _laEnd; p = p->next)
    p->token->_cacheImg();
  if (_start != _ch) {
    if (_start <= _buffer + _pbsz) {
      int nbsz = _pbsz;
      do { nbsz *= 2; } while (nbsz <= _bsz + _pbsz);
      _bsz = nbsz;
      char *newBuf = new char[_bsz + _pbsz + 1];
      memcpy(newBuf + _pbsz, _start, _ch - _start);
      _ch += newBuf - _buffer;
      _start = newBuf + _pbsz;
      delete[] _buffer;
      _buffer = newBuf;
    } else {
      memmove(_buffer + _pbsz, _start, _ch - _start);
      _ch = _buffer + _pbsz + (_ch - _start);
      _start = _buffer + _pbsz;
    }
  } else {
    _start = _ch = _buffer + _pbsz;
  }
  inputStream->read(_ch, _bsz - (_ch - (_buffer + _pbsz)));
  _eob = _ch + inputStream->gcount();
  *_eob++  = '\0';
  _eof = inputStream->eof();
  _lta = false;
}

void swShader::ps20_scanner::_binit () throw (ScanException)
{
  if (_buffer == NULL) _buffer = new char[_bsz + _pbsz + 1];
  _start = _ch = _eob = _buffer + _pbsz;
  *_eob++  = '\0';
  _eof = inputStream == NULL;
}
void swShader::ps20_scanner::unGetChars (const char *c, int n)
{
  if (_start < _buffer + n) { //grow the buffer
    int npbsz = _pbsz, delta = 0;
    for (struct t_laCell *p = _laBegin; p != _laEnd; p = p->next)
      p->token->_cacheImg();
    if (la0 == _laEnd) la0->token->_cacheImg();
    do { npbsz *= 2; delta = npbsz - _pbsz; } while (delta < n);
    char *newBuf = new char[_bsz + npbsz + 1];
    memcpy(newBuf + delta, _start, _eob - _start + 1);
    _ch += newBuf + delta - _start;
    _eob += newBuf + delta - _start;
    _start = newBuf + delta;
    _pbsz = npbsz;
    delete[] _buffer;
    _buffer = newBuf;
  }
  memmove(_start - n, _start, n);
  _ch -= n;
  _start -= n;
  memcpy(_ch, c, n);
}

void swShader::ps20_scanner::_scan (ps20_token *token) throw (ScanException)
{
  register unsigned char c;
  
  for(;;)
  {
    switch (getState())
    {
    case START:
      __START_0_:
        c = *_ch++;
         /*0*/ if ((c == '\t' /*9*/) || (('\v' /*11*/ <= c) && (c <= '\f' /*12*/)) || (c == ' ' /*32*/))
          goto __START_1_;
        else  /*0*/ if ((c == '\n' /*10*/))
          goto __START_2_;
        else  /*0*/ if ((c == '\r' /*13*/))
          goto __START_3_;
        else  /*0*/ if ((c == '+' /*43*/))
          goto __START_4_;
        else  /*0*/ if ((c == ',' /*44*/))
          goto __START_5_;
        else  /*0*/ if ((c == '-' /*45*/))
          goto __START_6_;
        else  /*0*/ if ((c == '.' /*46*/))
          goto __START_7_;
        else  /*0*/ if ((c == '/' /*47*/))
          goto __START_8_;
        else  /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_9_;
        else  /*0*/ if ((c == ';' /*59*/))
          goto __START_10_;
        else  /*0*/ if ((c == 'E' /*69*/))
          goto __START_11_;
        else  /*0*/ if ((c == '_' /*95*/))
          goto __START_12_;
        else  /*0*/ if ((c == 'a' /*97*/))
          goto __START_13_;
        else  /*0*/ if ((c == 'b' /*98*/) || (c == 'z' /*122*/))
          goto __START_14_;
        else  /*0*/ if ((c == 'c' /*99*/))
          goto __START_15_;
        else  /*0*/ if ((c == 'd' /*100*/))
          goto __START_16_;
        else  /*0*/ if ((c == 'e' /*101*/))
          goto __START_17_;
        else  /*0*/ if ((c == 'f' /*102*/))
          goto __START_18_;
        else  /*0*/ if ((c == 'g' /*103*/) || (c == 'y' /*121*/))
          goto __START_19_;
        else  /*0*/ if ((c == 'l' /*108*/))
          goto __START_20_;
        else  /*0*/ if ((c == 'm' /*109*/))
          goto __START_21_;
        else  /*0*/ if ((c == 'n' /*110*/))
          goto __START_22_;
        else  /*0*/ if ((c == 'o' /*111*/))
          goto __START_23_;
        else  /*0*/ if ((c == 'p' /*112*/))
          goto __START_24_;
        else  /*0*/ if ((c == 'r' /*114*/))
          goto __START_25_;
        else  /*0*/ if ((c == 's' /*115*/))
          goto __START_26_;
        else  /*0*/ if ((c == 't' /*116*/))
          goto __START_27_;
        else  /*0*/ if ((c == 'v' /*118*/))
          goto __START_28_;
        else  /*0*/ if ((c == 'w' /*119*/))
          goto __START_29_;
        else  /*0*/ if ((c == 'x' /*120*/))
          goto __START_30_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_0_;
        }
        goto __scan_error_;
      __START_1_:
        goto __accept_token_BLANK_;
      __START_2_:
        c = *_ch++;
         /*0*/ if ((c == '\r' /*13*/))
          goto __START_31_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_EOL_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_2_;
        }
        goto __accept_token_EOL_;
      __START_3_:
        c = *_ch++;
         /*0*/ if ((c == '\n' /*10*/))
          goto __START_31_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_EOL_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_3_;
        }
        goto __accept_token_EOL_;
      __START_4_:
        c = *_ch++;
         /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_9_;
        else  /*0*/ if ((c == '.' /*46*/))
          goto __START_32_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_4_;
        }
        goto __scan_error_;
      __START_5_:
        goto __accept_token_COMMA_;
      __START_6_:
        c = *_ch++;
         /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_9_;
        else  /*0*/ if ((c == '.' /*46*/))
          goto __START_32_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_MINUS_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_6_;
        }
        goto __accept_token_MINUS_;
      __START_7_:
        c = *_ch++;
         /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_33_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_DOT_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_7_;
        }
        goto __accept_token_DOT_;
      __START_8_:
        c = *_ch++;
         /*0*/ if ((c == '*' /*42*/))
          goto __START_34_;
        else  /*0*/ if ((c == '/' /*47*/))
          goto __START_35_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_8_;
        }
        goto __scan_error_;
      __START_9_:
        c = *_ch++;
         /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_9_;
        else  /*0*/ if ((c == '.' /*46*/))
          goto __START_32_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_INTEGER_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_9_;
        }
        goto __accept_token_INTEGER_;
      __START_10_:
        c = *_ch++;
         /*0*/ if (((c == '\0') && (_ch != _eob)) || (('\1' /*1*/ <= c) && (c <= '\t' /*9*/)) || (('\v' /*11*/ <= c) && (c <= '\f' /*12*/)) || ('\16' /*14*/ <= c))
          goto __START_10_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_COMMENT2_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_10_;
        }
        goto __accept_token_COMMENT2_;
      __START_11_:
        c = *_ch++;
         /*0*/ if ((c == '+' /*43*/) || (c == '-' /*45*/))
          goto __START_36_;
        else  /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_37_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_11_;
        }
        goto __scan_error_;
      __START_12_:
        c = *_ch++;
         /*0*/ if ((c == 'p' /*112*/))
          goto __START_38_;
        else  /*0*/ if ((c == 's' /*115*/))
          goto __START_39_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_12_;
        }
        goto __scan_error_;
      __START_13_:
        c = *_ch++;
         /*0*/ if ((c == 'b' /*98*/))
          goto __START_40_;
        else  /*0*/ if ((c == 'd' /*100*/))
          goto __START_41_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_W_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_13_;
        }
        goto __accept_token_W_;
      __START_14_:
        goto __accept_token_Z_;
      __START_15_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_42_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_43_;
        else  /*0*/ if ((c == '2' /*50*/))
          goto __START_44_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_45_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_46_;
        else  /*0*/ if ((c == '5' /*53*/))
          goto __START_47_;
        else  /*0*/ if ((c == '6' /*54*/))
          goto __START_48_;
        else  /*0*/ if ((c == '7' /*55*/))
          goto __START_49_;
        else  /*0*/ if ((c == '8' /*56*/))
          goto __START_50_;
        else  /*0*/ if ((c == '9' /*57*/))
          goto __START_51_;
        else  /*0*/ if ((c == 'm' /*109*/))
          goto __START_52_;
        else  /*0*/ if ((c == 'r' /*114*/))
          goto __START_53_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_15_;
        }
        goto __scan_error_;
      __START_16_:
        c = *_ch++;
         /*0*/ if ((c == 'c' /*99*/))
          goto __START_54_;
        else  /*0*/ if ((c == 'e' /*101*/))
          goto __START_55_;
        else  /*0*/ if ((c == 'p' /*112*/))
          goto __START_56_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_16_;
        }
        goto __scan_error_;
      __START_17_:
        c = *_ch++;
         /*0*/ if ((c == '+' /*43*/) || (c == '-' /*45*/))
          goto __START_36_;
        else  /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_37_;
        else  /*0*/ if ((c == 'x' /*120*/))
          goto __START_57_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_17_;
        }
        goto __scan_error_;
      __START_18_:
        c = *_ch++;
         /*0*/ if ((c == 'r' /*114*/))
          goto __START_58_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_18_;
        }
        goto __scan_error_;
      __START_19_:
        goto __accept_token_Y_;
      __START_20_:
        c = *_ch++;
         /*0*/ if ((c == 'o' /*111*/))
          goto __START_59_;
        else  /*0*/ if ((c == 'r' /*114*/))
          goto __START_60_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_20_;
        }
        goto __scan_error_;
      __START_21_:
        c = *_ch++;
         /*0*/ if ((c == '3' /*51*/))
          goto __START_61_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_62_;
        else  /*0*/ if ((c == 'a' /*97*/))
          goto __START_63_;
        else  /*0*/ if ((c == 'i' /*105*/))
          goto __START_64_;
        else  /*0*/ if ((c == 'o' /*111*/))
          goto __START_65_;
        else  /*0*/ if ((c == 'u' /*117*/))
          goto __START_66_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_21_;
        }
        goto __scan_error_;
      __START_22_:
        c = *_ch++;
         /*0*/ if ((c == 'o' /*111*/))
          goto __START_67_;
        else  /*0*/ if ((c == 'r' /*114*/))
          goto __START_68_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_22_;
        }
        goto __scan_error_;
      __START_23_:
        c = *_ch++;
         /*0*/ if ((c == 'C' /*67*/))
          goto __START_69_;
        else  /*0*/ if ((c == 'D' /*68*/))
          goto __START_70_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_23_;
        }
        goto __scan_error_;
      __START_24_:
        c = *_ch++;
         /*0*/ if ((c == 'o' /*111*/))
          goto __START_71_;
        else  /*0*/ if ((c == 's' /*115*/))
          goto __START_72_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_24_;
        }
        goto __scan_error_;
      __START_25_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_73_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_74_;
        else  /*0*/ if ((c == '2' /*50*/))
          goto __START_75_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_76_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_77_;
        else  /*0*/ if ((c == '5' /*53*/))
          goto __START_78_;
        else  /*0*/ if ((c == '6' /*54*/))
          goto __START_79_;
        else  /*0*/ if ((c == '7' /*55*/))
          goto __START_80_;
        else  /*0*/ if ((c == '8' /*56*/))
          goto __START_81_;
        else  /*0*/ if ((c == '9' /*57*/))
          goto __START_82_;
        else  /*0*/ if ((c == 'c' /*99*/))
          goto __START_83_;
        else  /*0*/ if ((c == 's' /*115*/))
          goto __START_84_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_X_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_25_;
        }
        goto __accept_token_X_;
      __START_26_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_85_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_86_;
        else  /*0*/ if ((c == '2' /*50*/))
          goto __START_87_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_88_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_89_;
        else  /*0*/ if ((c == '5' /*53*/))
          goto __START_90_;
        else  /*0*/ if ((c == '6' /*54*/))
          goto __START_91_;
        else  /*0*/ if ((c == '7' /*55*/))
          goto __START_92_;
        else  /*0*/ if ((c == '8' /*56*/))
          goto __START_93_;
        else  /*0*/ if ((c == '9' /*57*/))
          goto __START_94_;
        else  /*0*/ if ((c == 'i' /*105*/))
          goto __START_95_;
        else  /*0*/ if ((c == 'u' /*117*/))
          goto __START_96_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_26_;
        }
        goto __scan_error_;
      __START_27_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_97_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_98_;
        else  /*0*/ if ((c == '2' /*50*/))
          goto __START_99_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_100_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_101_;
        else  /*0*/ if ((c == '5' /*53*/))
          goto __START_102_;
        else  /*0*/ if ((c == '6' /*54*/))
          goto __START_103_;
        else  /*0*/ if ((c == '7' /*55*/))
          goto __START_104_;
        else  /*0*/ if ((c == 'e' /*101*/))
          goto __START_105_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_27_;
        }
        goto __scan_error_;
      __START_28_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_106_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_107_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_28_;
        }
        goto __scan_error_;
      __START_29_:
        goto __accept_token_W_;
      __START_30_:
        goto __accept_token_X_;
      __START_31_:
        goto __accept_token_EOL_;
      __START_32_:
        c = *_ch++;
         /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_108_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_32_;
        }
        goto __scan_error_;
      __START_33_:
        c = *_ch++;
         /*0*/ if ((c == 'E' /*69*/) || (c == 'e' /*101*/))
          goto __START_11_;
        else  /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_33_;
        else  /*0*/ if ((c == 'f' /*102*/))
          goto __START_109_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_REAL_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_33_;
        }
        goto __accept_token_REAL_;
      __START_34_:
        goto __accept_token_LONG_COMMENT1_;
      __START_35_:
        c = *_ch++;
         /*0*/ if (((c == '\0') && (_ch != _eob)) || (('\1' /*1*/ <= c) && (c <= '\t' /*9*/)) || (('\v' /*11*/ <= c) && (c <= '\f' /*12*/)) || ('\16' /*14*/ <= c))
          goto __START_35_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_COMMENT1_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_35_;
        }
        goto __accept_token_COMMENT1_;
      __START_36_:
        c = *_ch++;
         /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_37_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_36_;
        }
        goto __scan_error_;
      __START_37_:
        c = *_ch++;
         /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_37_;
        else  /*0*/ if ((c == 'f' /*102*/))
          goto __START_109_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_REAL_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_37_;
        }
        goto __accept_token_REAL_;
      __START_38_:
        c = *_ch++;
         /*0*/ if ((c == 'p' /*112*/))
          goto __START_110_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_38_;
        }
        goto __scan_error_;
      __START_39_:
        c = *_ch++;
         /*0*/ if ((c == 'a' /*97*/))
          goto __START_111_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_39_;
        }
        goto __scan_error_;
      __START_40_:
        c = *_ch++;
         /*0*/ if ((c == 's' /*115*/))
          goto __START_112_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_40_;
        }
        goto __scan_error_;
      __START_41_:
        c = *_ch++;
         /*0*/ if ((c == 'd' /*100*/))
          goto __START_113_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_41_;
        }
        goto __scan_error_;
      __START_42_:
        goto __accept_token_C0_;
      __START_43_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_114_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_115_;
        else  /*0*/ if ((c == '2' /*50*/))
          goto __START_116_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_117_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_118_;
        else  /*0*/ if ((c == '5' /*53*/))
          goto __START_119_;
        else  /*0*/ if ((c == '6' /*54*/))
          goto __START_120_;
        else  /*0*/ if ((c == '7' /*55*/))
          goto __START_121_;
        else  /*0*/ if ((c == '8' /*56*/))
          goto __START_122_;
        else  /*0*/ if ((c == '9' /*57*/))
          goto __START_123_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_C1_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_43_;
        }
        goto __accept_token_C1_;
      __START_44_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_124_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_125_;
        else  /*0*/ if ((c == '2' /*50*/))
          goto __START_126_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_127_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_128_;
        else  /*0*/ if ((c == '5' /*53*/))
          goto __START_129_;
        else  /*0*/ if ((c == '6' /*54*/))
          goto __START_130_;
        else  /*0*/ if ((c == '7' /*55*/))
          goto __START_131_;
        else  /*0*/ if ((c == '8' /*56*/))
          goto __START_132_;
        else  /*0*/ if ((c == '9' /*57*/))
          goto __START_133_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_C2_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_44_;
        }
        goto __accept_token_C2_;
      __START_45_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_134_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_135_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_C3_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_45_;
        }
        goto __accept_token_C3_;
      __START_46_:
        goto __accept_token_C4_;
      __START_47_:
        goto __accept_token_C5_;
      __START_48_:
        goto __accept_token_C6_;
      __START_49_:
        goto __accept_token_C7_;
      __START_50_:
        goto __accept_token_C8_;
      __START_51_:
        goto __accept_token_C9_;
      __START_52_:
        c = *_ch++;
         /*0*/ if ((c == 'p' /*112*/))
          goto __START_136_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_52_;
        }
        goto __scan_error_;
      __START_53_:
        c = *_ch++;
         /*0*/ if ((c == 's' /*115*/))
          goto __START_137_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_53_;
        }
        goto __scan_error_;
      __START_54_:
        c = *_ch++;
         /*0*/ if ((c == 'l' /*108*/))
          goto __START_138_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_54_;
        }
        goto __scan_error_;
      __START_55_:
        c = *_ch++;
         /*0*/ if ((c == 'f' /*102*/))
          goto __START_139_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_55_;
        }
        goto __scan_error_;
      __START_56_:
        c = *_ch++;
         /*0*/ if ((c == '2' /*50*/))
          goto __START_140_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_141_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_142_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_56_;
        }
        goto __scan_error_;
      __START_57_:
        c = *_ch++;
         /*0*/ if ((c == 'p' /*112*/))
          goto __START_143_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_57_;
        }
        goto __scan_error_;
      __START_58_:
        c = *_ch++;
         /*0*/ if ((c == 'c' /*99*/))
          goto __START_144_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_58_;
        }
        goto __scan_error_;
      __START_59_:
        c = *_ch++;
         /*0*/ if ((c == 'g' /*103*/))
          goto __START_145_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_59_;
        }
        goto __scan_error_;
      __START_60_:
        c = *_ch++;
         /*0*/ if ((c == 'p' /*112*/))
          goto __START_146_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_60_;
        }
        goto __scan_error_;
      __START_61_:
        c = *_ch++;
         /*0*/ if ((c == 'x' /*120*/))
          goto __START_147_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_61_;
        }
        goto __scan_error_;
      __START_62_:
        c = *_ch++;
         /*0*/ if ((c == 'x' /*120*/))
          goto __START_148_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_62_;
        }
        goto __scan_error_;
      __START_63_:
        c = *_ch++;
         /*0*/ if ((c == 'd' /*100*/))
          goto __START_149_;
        else  /*0*/ if ((c == 'x' /*120*/))
          goto __START_150_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_63_;
        }
        goto __scan_error_;
      __START_64_:
        c = *_ch++;
         /*0*/ if ((c == 'n' /*110*/))
          goto __START_151_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_64_;
        }
        goto __scan_error_;
      __START_65_:
        c = *_ch++;
         /*0*/ if ((c == 'v' /*118*/))
          goto __START_152_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_65_;
        }
        goto __scan_error_;
      __START_66_:
        c = *_ch++;
         /*0*/ if ((c == 'l' /*108*/))
          goto __START_153_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_66_;
        }
        goto __scan_error_;
      __START_67_:
        c = *_ch++;
         /*0*/ if ((c == 'p' /*112*/))
          goto __START_154_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_67_;
        }
        goto __scan_error_;
      __START_68_:
        c = *_ch++;
         /*0*/ if ((c == 'm' /*109*/))
          goto __START_155_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_68_;
        }
        goto __scan_error_;
      __START_69_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_156_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_157_;
        else  /*0*/ if ((c == '2' /*50*/))
          goto __START_158_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_159_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_69_;
        }
        goto __scan_error_;
      __START_70_:
        c = *_ch++;
         /*0*/ if ((c == 'e' /*101*/))
          goto __START_160_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_70_;
        }
        goto __scan_error_;
      __START_71_:
        c = *_ch++;
         /*0*/ if ((c == 'w' /*119*/))
          goto __START_161_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_71_;
        }
        goto __scan_error_;
      __START_72_:
        c = *_ch++;
         /*0*/ if ((c == '_' /*95*/))
          goto __START_162_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_72_;
        }
        goto __scan_error_;
      __START_73_:
        goto __accept_token_R0_;
      __START_74_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_163_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_164_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_R1_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_74_;
        }
        goto __accept_token_R1_;
      __START_75_:
        goto __accept_token_R2_;
      __START_76_:
        goto __accept_token_R3_;
      __START_77_:
        goto __accept_token_R4_;
      __START_78_:
        goto __accept_token_R5_;
      __START_79_:
        goto __accept_token_R6_;
      __START_80_:
        goto __accept_token_R7_;
      __START_81_:
        goto __accept_token_R8_;
      __START_82_:
        goto __accept_token_R9_;
      __START_83_:
        c = *_ch++;
         /*0*/ if ((c == 'p' /*112*/))
          goto __START_165_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_83_;
        }
        goto __scan_error_;
      __START_84_:
        c = *_ch++;
         /*0*/ if ((c == 'q' /*113*/))
          goto __START_166_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_84_;
        }
        goto __scan_error_;
      __START_85_:
        goto __accept_token_S0_;
      __START_86_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_167_;
        else  /*0*/ if ((c == '1' /*49*/))
          goto __START_168_;
        else  /*0*/ if ((c == '2' /*50*/))
          goto __START_169_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_170_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_171_;
        else  /*0*/ if ((c == '5' /*53*/))
          goto __START_172_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_S1_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_86_;
        }
        goto __accept_token_S1_;
      __START_87_:
        goto __accept_token_S2_;
      __START_88_:
        goto __accept_token_S3_;
      __START_89_:
        goto __accept_token_S4_;
      __START_90_:
        goto __accept_token_S5_;
      __START_91_:
        goto __accept_token_S6_;
      __START_92_:
        goto __accept_token_S7_;
      __START_93_:
        goto __accept_token_S8_;
      __START_94_:
        goto __accept_token_S9_;
      __START_95_:
        c = *_ch++;
         /*0*/ if ((c == 'n' /*110*/))
          goto __START_173_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_95_;
        }
        goto __scan_error_;
      __START_96_:
        c = *_ch++;
         /*0*/ if ((c == 'b' /*98*/))
          goto __START_174_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_96_;
        }
        goto __scan_error_;
      __START_97_:
        goto __accept_token_T0_;
      __START_98_:
        goto __accept_token_T1_;
      __START_99_:
        goto __accept_token_T2_;
      __START_100_:
        goto __accept_token_T3_;
      __START_101_:
        goto __accept_token_T4_;
      __START_102_:
        goto __accept_token_T5_;
      __START_103_:
        goto __accept_token_T6_;
      __START_104_:
        goto __accept_token_T7_;
      __START_105_:
        c = *_ch++;
         /*0*/ if ((c == 'x' /*120*/))
          goto __START_175_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_105_;
        }
        goto __scan_error_;
      __START_106_:
        goto __accept_token_V0_;
      __START_107_:
        goto __accept_token_V1_;
      __START_108_:
        c = *_ch++;
         /*0*/ if ((('0' /*48*/ <= c) && (c <= '9' /*57*/)))
          goto __START_108_;
        else  /*0*/ if ((c == 'f' /*102*/))
          goto __START_109_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_REAL_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_108_;
        }
        goto __accept_token_REAL_;
      __START_109_:
        goto __accept_token_REAL_;
      __START_110_:
        goto __accept_token__PP_;
      __START_111_:
        c = *_ch++;
         /*0*/ if ((c == 't' /*116*/))
          goto __START_176_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_111_;
        }
        goto __scan_error_;
      __START_112_:
        goto __accept_token_ABS_;
      __START_113_:
        goto __accept_token_ADD_;
      __START_114_:
        goto __accept_token_C10_;
      __START_115_:
        goto __accept_token_C11_;
      __START_116_:
        goto __accept_token_C12_;
      __START_117_:
        goto __accept_token_C13_;
      __START_118_:
        goto __accept_token_C14_;
      __START_119_:
        goto __accept_token_C15_;
      __START_120_:
        goto __accept_token_C16_;
      __START_121_:
        goto __accept_token_C17_;
      __START_122_:
        goto __accept_token_C18_;
      __START_123_:
        goto __accept_token_C19_;
      __START_124_:
        goto __accept_token_C20_;
      __START_125_:
        goto __accept_token_C21_;
      __START_126_:
        goto __accept_token_C22_;
      __START_127_:
        goto __accept_token_C23_;
      __START_128_:
        goto __accept_token_C24_;
      __START_129_:
        goto __accept_token_C25_;
      __START_130_:
        goto __accept_token_C26_;
      __START_131_:
        goto __accept_token_C27_;
      __START_132_:
        goto __accept_token_C28_;
      __START_133_:
        goto __accept_token_C29_;
      __START_134_:
        goto __accept_token_C30_;
      __START_135_:
        goto __accept_token_C31_;
      __START_136_:
        goto __accept_token_CMP_;
      __START_137_:
        goto __accept_token_CRS_;
      __START_138_:
        c = *_ch++;
         /*0*/ if ((c == '_' /*95*/))
          goto __START_177_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_DCL_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_138_;
        }
        goto __accept_token_DCL_;
      __START_139_:
        goto __accept_token_DEF_;
      __START_140_:
        c = *_ch++;
         /*0*/ if ((c == 'a' /*97*/))
          goto __START_178_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_140_;
        }
        goto __scan_error_;
      __START_141_:
        goto __accept_token_DP3_;
      __START_142_:
        goto __accept_token_DP4_;
      __START_143_:
        goto __accept_token_EXP_;
      __START_144_:
        goto __accept_token_FRC_;
      __START_145_:
        goto __accept_token_LOG_;
      __START_146_:
        goto __accept_token_LRP_;
      __START_147_:
        c = *_ch++;
         /*0*/ if ((c == '2' /*50*/))
          goto __START_179_;
        else  /*0*/ if ((c == '3' /*51*/))
          goto __START_180_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_181_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_147_;
        }
        goto __scan_error_;
      __START_148_:
        c = *_ch++;
         /*0*/ if ((c == '3' /*51*/))
          goto __START_182_;
        else  /*0*/ if ((c == '4' /*52*/))
          goto __START_183_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_148_;
        }
        goto __scan_error_;
      __START_149_:
        goto __accept_token_MAD_;
      __START_150_:
        goto __accept_token_MAX_;
      __START_151_:
        goto __accept_token_MIN_;
      __START_152_:
        goto __accept_token_MOV_;
      __START_153_:
        goto __accept_token_MUL_;
      __START_154_:
        goto __accept_token_NOP_;
      __START_155_:
        goto __accept_token_NRM_;
      __START_156_:
        goto __accept_token_O_C0_;
      __START_157_:
        goto __accept_token_O_C1_;
      __START_158_:
        goto __accept_token_O_C2_;
      __START_159_:
        goto __accept_token_O_C3_;
      __START_160_:
        c = *_ch++;
         /*0*/ if ((c == 'p' /*112*/))
          goto __START_184_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_160_;
        }
        goto __scan_error_;
      __START_161_:
        goto __accept_token_POW_;
      __START_162_:
        c = *_ch++;
         /*0*/ if ((c == '2' /*50*/))
          goto __START_185_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_162_;
        }
        goto __scan_error_;
      __START_163_:
        goto __accept_token_R10_;
      __START_164_:
        goto __accept_token_R11_;
      __START_165_:
        goto __accept_token_RCP_;
      __START_166_:
        goto __accept_token_RSQ_;
      __START_167_:
        goto __accept_token_S10_;
      __START_168_:
        goto __accept_token_S11_;
      __START_169_:
        goto __accept_token_S12_;
      __START_170_:
        goto __accept_token_S13_;
      __START_171_:
        goto __accept_token_S14_;
      __START_172_:
        goto __accept_token_S15_;
      __START_173_:
        c = *_ch++;
         /*0*/ if ((c == 'c' /*99*/))
          goto __START_186_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_173_;
        }
        goto __scan_error_;
      __START_174_:
        goto __accept_token_SUB_;
      __START_175_:
        c = *_ch++;
         /*0*/ if ((c == 'k' /*107*/))
          goto __START_187_;
        else  /*0*/ if ((c == 'l' /*108*/))
          goto __START_188_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_175_;
        }
        goto __scan_error_;
      __START_176_:
        goto __accept_token__SAT_;
      __START_177_:
        c = *_ch++;
         /*0*/ if ((c == '2' /*50*/))
          goto __START_189_;
        else  /*0*/ if ((c == 'c' /*99*/))
          goto __START_190_;
        else  /*0*/ if ((c == 'v' /*118*/))
          goto __START_191_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_177_;
        }
        goto __scan_error_;
      __START_178_:
        c = *_ch++;
         /*0*/ if ((c == 'd' /*100*/))
          goto __START_192_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_178_;
        }
        goto __scan_error_;
      __START_179_:
        goto __accept_token_M3X2_;
      __START_180_:
        goto __accept_token_M3X3_;
      __START_181_:
        goto __accept_token_M3X4_;
      __START_182_:
        goto __accept_token_M4X3_;
      __START_183_:
        goto __accept_token_M4X4_;
      __START_184_:
        c = *_ch++;
         /*0*/ if ((c == 't' /*116*/))
          goto __START_193_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_184_;
        }
        goto __scan_error_;
      __START_185_:
        c = *_ch++;
         /*0*/ if ((c == '_' /*95*/))
          goto __START_194_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_185_;
        }
        goto __scan_error_;
      __START_186_:
        c = *_ch++;
         /*0*/ if ((c == 'o' /*111*/))
          goto __START_195_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_186_;
        }
        goto __scan_error_;
      __START_187_:
        c = *_ch++;
         /*0*/ if ((c == 'i' /*105*/))
          goto __START_196_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_187_;
        }
        goto __scan_error_;
      __START_188_:
        c = *_ch++;
         /*0*/ if ((c == 'd' /*100*/))
          goto __START_197_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_188_;
        }
        goto __scan_error_;
      __START_189_:
        c = *_ch++;
         /*0*/ if ((c == 'd' /*100*/))
          goto __START_198_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_189_;
        }
        goto __scan_error_;
      __START_190_:
        c = *_ch++;
         /*0*/ if ((c == 'u' /*117*/))
          goto __START_199_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_190_;
        }
        goto __scan_error_;
      __START_191_:
        c = *_ch++;
         /*0*/ if ((c == 'o' /*111*/))
          goto __START_200_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_191_;
        }
        goto __scan_error_;
      __START_192_:
        c = *_ch++;
         /*0*/ if ((c == 'd' /*100*/))
          goto __START_201_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_192_;
        }
        goto __scan_error_;
      __START_193_:
        c = *_ch++;
         /*0*/ if ((c == 'h' /*104*/))
          goto __START_202_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_193_;
        }
        goto __scan_error_;
      __START_194_:
        c = *_ch++;
         /*0*/ if ((c == '0' /*48*/))
          goto __START_203_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_194_;
        }
        goto __scan_error_;
      __START_195_:
        c = *_ch++;
         /*0*/ if ((c == 's' /*115*/))
          goto __START_204_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_195_;
        }
        goto __scan_error_;
      __START_196_:
        c = *_ch++;
         /*0*/ if ((c == 'l' /*108*/))
          goto __START_205_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_196_;
        }
        goto __scan_error_;
      __START_197_:
        c = *_ch++;
         /*0*/ if ((c == 'b' /*98*/))
          goto __START_206_;
        else  /*0*/ if ((c == 'p' /*112*/))
          goto __START_207_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_TEXLD_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_197_;
        }
        goto __accept_token_TEXLD_;
      __START_198_:
        goto __accept_token_DCL_2D_;
      __START_199_:
        c = *_ch++;
         /*0*/ if ((c == 'b' /*98*/))
          goto __START_208_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_199_;
        }
        goto __scan_error_;
      __START_200_:
        c = *_ch++;
         /*0*/ if ((c == 'l' /*108*/))
          goto __START_209_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_200_;
        }
        goto __scan_error_;
      __START_201_:
        goto __accept_token_DP2ADD_;
      __START_202_:
        goto __accept_token_O_DEPTH_;
      __START_203_:
        goto __accept_token_PS_2_0_;
      __START_204_:
        goto __accept_token_SINCOS_;
      __START_205_:
        c = *_ch++;
         /*0*/ if ((c == 'l' /*108*/))
          goto __START_210_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_205_;
        }
        goto __scan_error_;
      __START_206_:
        goto __accept_token_TEXLDB_;
      __START_207_:
        goto __accept_token_TEXLDP_;
      __START_208_:
        c = *_ch++;
         /*0*/ if ((c == 'e' /*101*/))
          goto __START_211_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_208_;
        }
        goto __scan_error_;
      __START_209_:
        c = *_ch++;
         /*0*/ if ((c == 'u' /*117*/))
          goto __START_212_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_209_;
        }
        goto __scan_error_;
      __START_210_:
        goto __accept_token_TEXKILL_;
      __START_211_:
        goto __accept_token_DCL_CUBE_;
      __START_212_:
        c = *_ch++;
         /*0*/ if ((c == 'm' /*109*/))
          goto __START_213_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_212_;
        }
        goto __scan_error_;
      __START_213_:
        c = *_ch++;
         /*0*/ if ((c == 'e' /*101*/))
          goto __START_214_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __START_213_;
        }
        goto __scan_error_;
      __START_214_:
        goto __accept_token_DCL_VOLUME_;
    case LONG_COMMENT:
      __LONG_COMMENT_0_:
        c = *_ch++;
         /*0*/ if (((c == '\0') && (_ch != _eob)) || (('\1' /*1*/ <= c) && (c <= '\t' /*9*/)) || (('\v' /*11*/ <= c) && (c <= '\f' /*12*/)) || (('\16' /*14*/ <= c) && (c <= ')' /*41*/)) || ('+' /*43*/ <= c))
          goto __LONG_COMMENT_1_;
        else  /*0*/ if ((c == '\n' /*10*/))
          goto __LONG_COMMENT_2_;
        else  /*0*/ if ((c == '*' /*42*/))
          goto __LONG_COMMENT_3_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_LONG_COMMENT3_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __LONG_COMMENT_0_;
        }
        goto __accept_token_LONG_COMMENT3_;
      __LONG_COMMENT_1_:
        c = *_ch++;
         /*0*/ if (((c == '\0') && (_ch != _eob)) || (('\1' /*1*/ <= c) && (c <= '\t' /*9*/)) || (('\v' /*11*/ <= c) && (c <= '\f' /*12*/)) || (('\16' /*14*/ <= c) && (c <= ')' /*41*/)) || ('+' /*43*/ <= c))
          goto __LONG_COMMENT_1_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_LONG_COMMENT3_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __LONG_COMMENT_1_;
        }
        goto __accept_token_LONG_COMMENT3_;
      __LONG_COMMENT_2_:
        goto __accept_token_LONG_COMMENT2_;
      __LONG_COMMENT_3_:
        c = *_ch++;
         /*0*/ if (((c == '\0') && (_ch != _eob)) || (('\1' /*1*/ <= c) && (c <= '\t' /*9*/)) || (('\v' /*11*/ <= c) && (c <= ')' /*41*/)) || (('+' /*43*/ <= c) && (c <= '.' /*46*/)) || ('0' /*48*/ <= c))
          goto __LONG_COMMENT_4_;
        else  /*0*/ if ((c == '\n' /*10*/))
          goto __LONG_COMMENT_5_;
        else  /*0*/ if ((c == '*' /*42*/))
          goto __LONG_COMMENT_6_;
        else  /*0*/ if ((c == '/' /*47*/))
          goto __LONG_COMMENT_7_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta)goto __unexpected_eof_;
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __LONG_COMMENT_3_;
        }
        goto __scan_error_;
      __LONG_COMMENT_4_:
        goto __accept_token_LONG_COMMENT4_;
      __LONG_COMMENT_5_:
        goto __accept_token_LONG_COMMENT5_;
      __LONG_COMMENT_6_:
        c = *_ch++;
         /*0*/ if (((c == '\0') && (_ch != _eob)) || (('\1' /*1*/ <= c) && (c <= '\t' /*9*/)) || (('\v' /*11*/ <= c) && (c <= ')' /*41*/)) || (('+' /*43*/ <= c) && (c <= '.' /*46*/)) || ('0' /*48*/ <= c))
          goto __LONG_COMMENT_4_;
        else  /*0*/ if ((c == '\n' /*10*/))
          goto __LONG_COMMENT_5_;
        else  /*0*/ if ((c == '*' /*42*/))
          goto __LONG_COMMENT_6_;
        else  /*0*/ if ((c == '/' /*47*/))
          goto __LONG_COMMENT_7_;
        if ((_ch-- == _eob) && (c == '\0')) {
          if (_eof) {
            if ((_ch != _start) && !_lta){ _lta = true; goto __accept_token_LONG_COMMENT4_; }
            if (!wrap()) goto __eof_seen_;
          }
          if (_ch + 1 == _eob) _brefill();
          goto __LONG_COMMENT_6_;
        }
        goto __accept_token_LONG_COMMENT4_;
      __LONG_COMMENT_7_:
        goto __accept_token_LONG_COMMENT_;
    default:
      {
        ScanException __ex(ePos, "Illegal lexical state");
        if (!onScanError(__ex))
          throw __ex;
      }
    }
    
    __accept_token_BLANK_:
      _start = _ch;
      bPos = ePos;
      continue;
    __accept_token_COMMENT1_:
      _start = _ch;
      bPos = ePos;
      continue;
    __accept_token_COMMENT2_:
      _start = _ch;
      bPos = ePos;
      continue;
    __accept_token_LONG_COMMENT1_:
      token->_set(ps20_token::LONG_COMMENT1, bPos, ePos, _start, _ch - _start);
      _more = true;
      {pushState(LONG_COMMENT);

      }
      _more = false;
      continue;
    __accept_token_LONG_COMMENT2_:
      continue;
    __accept_token_LONG_COMMENT3_:
      continue;
    __accept_token_LONG_COMMENT4_:
      continue;
    __accept_token_LONG_COMMENT5_:
      continue;
    __accept_token_LONG_COMMENT_:
      token->_set(ps20_token::LONG_COMMENT, bPos, ePos, _start, _ch - _start);
      {popState();

      }
      _start = _ch;
      bPos = ePos;
      continue;
    __accept_token_EOL_:
      {
        token->_set(ps20_token::EOL, bPos, ePos, _start, _ch - _start);
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_PS_2_0_:
      {
        token->id = ps20_token::PS_2_0;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DCL_:
      {
        token->id = ps20_token::DCL;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DCL_2D_:
      {
        token->id = ps20_token::DCL_2D;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DCL_CUBE_:
      {
        token->id = ps20_token::DCL_CUBE;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DCL_VOLUME_:
      {
        token->id = ps20_token::DCL_VOLUME;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DEF_:
      {
        token->id = ps20_token::DEF;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_ABS_:
      {
        token->id = ps20_token::ABS;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_ADD_:
      {
        token->id = ps20_token::ADD;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_CMP_:
      {
        token->id = ps20_token::CMP;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_CRS_:
      {
        token->id = ps20_token::CRS;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DP2ADD_:
      {
        token->id = ps20_token::DP2ADD;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DP3_:
      {
        token->id = ps20_token::DP3;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DP4_:
      {
        token->id = ps20_token::DP4;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_EXP_:
      {
        token->id = ps20_token::EXP;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_FRC_:
      {
        token->id = ps20_token::FRC;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_LOG_:
      {
        token->id = ps20_token::LOG;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_LRP_:
      {
        token->id = ps20_token::LRP;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_M3X2_:
      {
        token->id = ps20_token::M3X2;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_M3X3_:
      {
        token->id = ps20_token::M3X3;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_M3X4_:
      {
        token->id = ps20_token::M3X4;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_M4X3_:
      {
        token->id = ps20_token::M4X3;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_M4X4_:
      {
        token->id = ps20_token::M4X4;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_MAD_:
      {
        token->id = ps20_token::MAD;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_MAX_:
      {
        token->id = ps20_token::MAX;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_MIN_:
      {
        token->id = ps20_token::MIN;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_MOV_:
      {
        token->id = ps20_token::MOV;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_MUL_:
      {
        token->id = ps20_token::MUL;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_NOP_:
      {
        token->id = ps20_token::NOP;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_NRM_:
      {
        token->id = ps20_token::NRM;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_POW_:
      {
        token->id = ps20_token::POW;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_RCP_:
      {
        token->id = ps20_token::RCP;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_RSQ_:
      {
        token->id = ps20_token::RSQ;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_SINCOS_:
      {
        token->id = ps20_token::SINCOS;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_SUB_:
      {
        token->id = ps20_token::SUB;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_TEXKILL_:
      {
        token->id = ps20_token::TEXKILL;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_TEXLD_:
      {
        token->id = ps20_token::TEXLD;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_TEXLDB_:
      {
        token->id = ps20_token::TEXLDB;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_TEXLDP_:
      {
        token->id = ps20_token::TEXLDP;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token__SAT_:
      {
        token->id = ps20_token::_SAT;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token__PP_:
      {
        token->id = ps20_token::_PP;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_V0_:
      {
        token->id = ps20_token::V0;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_V1_:
      {
        token->id = ps20_token::V1;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C0_:
      {
        token->id = ps20_token::C0;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C1_:
      {
        token->id = ps20_token::C1;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C2_:
      {
        token->id = ps20_token::C2;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C3_:
      {
        token->id = ps20_token::C3;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C4_:
      {
        token->id = ps20_token::C4;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C5_:
      {
        token->id = ps20_token::C5;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C6_:
      {
        token->id = ps20_token::C6;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C7_:
      {
        token->id = ps20_token::C7;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C8_:
      {
        token->id = ps20_token::C8;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C9_:
      {
        token->id = ps20_token::C9;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C10_:
      {
        token->id = ps20_token::C10;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C11_:
      {
        token->id = ps20_token::C11;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C12_:
      {
        token->id = ps20_token::C12;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C13_:
      {
        token->id = ps20_token::C13;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C14_:
      {
        token->id = ps20_token::C14;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C15_:
      {
        token->id = ps20_token::C15;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C16_:
      {
        token->id = ps20_token::C16;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C17_:
      {
        token->id = ps20_token::C17;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C18_:
      {
        token->id = ps20_token::C18;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C19_:
      {
        token->id = ps20_token::C19;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C20_:
      {
        token->id = ps20_token::C20;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C21_:
      {
        token->id = ps20_token::C21;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C22_:
      {
        token->id = ps20_token::C22;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C23_:
      {
        token->id = ps20_token::C23;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C24_:
      {
        token->id = ps20_token::C24;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C25_:
      {
        token->id = ps20_token::C25;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C26_:
      {
        token->id = ps20_token::C26;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C27_:
      {
        token->id = ps20_token::C27;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C28_:
      {
        token->id = ps20_token::C28;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C29_:
      {
        token->id = ps20_token::C29;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C30_:
      {
        token->id = ps20_token::C30;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_C31_:
      {
        token->id = ps20_token::C31;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_T0_:
      {
        token->id = ps20_token::T0;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_T1_:
      {
        token->id = ps20_token::T1;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_T2_:
      {
        token->id = ps20_token::T2;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_T3_:
      {
        token->id = ps20_token::T3;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_T4_:
      {
        token->id = ps20_token::T4;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_T5_:
      {
        token->id = ps20_token::T5;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_T6_:
      {
        token->id = ps20_token::T6;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_T7_:
      {
        token->id = ps20_token::T7;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S0_:
      {
        token->id = ps20_token::S0;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S1_:
      {
        token->id = ps20_token::S1;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S2_:
      {
        token->id = ps20_token::S2;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S3_:
      {
        token->id = ps20_token::S3;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S4_:
      {
        token->id = ps20_token::S4;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S5_:
      {
        token->id = ps20_token::S5;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S6_:
      {
        token->id = ps20_token::S6;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S7_:
      {
        token->id = ps20_token::S7;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S8_:
      {
        token->id = ps20_token::S8;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S9_:
      {
        token->id = ps20_token::S9;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S10_:
      {
        token->id = ps20_token::S10;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S11_:
      {
        token->id = ps20_token::S11;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S12_:
      {
        token->id = ps20_token::S12;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S13_:
      {
        token->id = ps20_token::S13;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S14_:
      {
        token->id = ps20_token::S14;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_S15_:
      {
        token->id = ps20_token::S15;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R0_:
      {
        token->id = ps20_token::R0;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R1_:
      {
        token->id = ps20_token::R1;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R2_:
      {
        token->id = ps20_token::R2;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R3_:
      {
        token->id = ps20_token::R3;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R4_:
      {
        token->id = ps20_token::R4;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R5_:
      {
        token->id = ps20_token::R5;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R6_:
      {
        token->id = ps20_token::R6;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R7_:
      {
        token->id = ps20_token::R7;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R8_:
      {
        token->id = ps20_token::R8;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R9_:
      {
        token->id = ps20_token::R9;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R10_:
      {
        token->id = ps20_token::R10;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_R11_:
      {
        token->id = ps20_token::R11;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_O_C0_:
      {
        token->id = ps20_token::O_C0;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_O_C1_:
      {
        token->id = ps20_token::O_C1;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_O_C2_:
      {
        token->id = ps20_token::O_C2;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_O_C3_:
      {
        token->id = ps20_token::O_C3;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_O_DEPTH_:
      {
        token->id = ps20_token::O_DEPTH;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_X_:
      {
        token->id = ps20_token::X;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_Y_:
      {
        token->id = ps20_token::Y;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_Z_:
      {
        token->id = ps20_token::Z;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_W_:
      {
        token->id = ps20_token::W;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_COMMA_:
      {
        token->id = ps20_token::COMMA;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_DOT_:
      {
        token->id = ps20_token::DOT;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_MINUS_:
      {
        token->id = ps20_token::MINUS;
        token->bPos = bPos;
        token->ePos = ePos;
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_INTEGER_:
      {
        token->_set(ps20_token::INTEGER, bPos, ePos, _start, _ch - _start);
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __accept_token_REAL_:
      {
        token->_set(ps20_token::REAL, bPos, ePos, _start, _ch - _start);
        commonTokenAction (*token);
        bPos = ePos;
        _start = _ch;
        if (_reject) { _reject = false; continue; }
        else return;
      }
    __scan_error_:
      {
        string msg = string("Unexpected character \'") + (char) c + "\'.";
        ScanException __ex(ePos, msg);
        if (!onScanError(__ex))
          throw __ex;
      }
    __unexpected_eof_:
      {
        string msg("Unexpected EOF.");
        ScanException __ex(ePos, msg);
        if (!onScanError(__ex))
          throw __ex;
      }
      __eof_seen_:
        token->id = ps20_token::eof;
        token->bPos = bPos;
        token->ePos = ePos;
        return;
  }
}



/* End of file. */
