int _cnt366=0; _loop366:
int _cnt370=0; _loop370:
	protected final void mHEX_DIGITS(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {		int _ttype; Token _token=null; int _begin=text.length();		_ttype = HEX_DIGITS;		int _saveIndex;				{		int _cnt366=0;		_loop366:		do {			switch ( LA(1)) {			case '0':  case '1':  case '2':  case '3':			case '4':  case '5':  case '6':  case '7':			case '8':  case '9':			{				matchRange('0','9');				break;			}			case 'a':  case 'b':  case 'c':  case 'd':			case 'e':  case 'f':			{				matchRange('a','f');				break;			}			case 'A':  case 'B':  case 'C':  case 'D':			case 'E':  case 'F':			{				matchRange('A','F');				break;			}			default:			{				if ( _cnt366>=1 ) { break _loop366; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}			}			}			_cnt366++;		} while (true);		}		if ( _createToken && _token==null && _ttype!=Token.SKIP ) {			_token = makeToken(_ttype);			_token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));		}		_returnToken = _token;	}