synPredMatched491 = false;
synPredMatched499 = false;
	protected final void mXML_PI(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {		int _ttype; Token _token=null; int _begin=text.length();		_ttype = XML_PI;		int _saveIndex;				_saveIndex=text.length();		mXML_PI_START(false);		text.setLength(_saveIndex);		mNCNAME(false);		match(' ');		{		int _cnt492=0;		_loop492:		do {			if ((_tokenSet_13.member(LA(1)))) {				{				match(_tokenSet_13);				}			}			else {				boolean synPredMatched491 = false;				if (((LA(1)=='?'))) {					int _m491 = mark();					synPredMatched491 = true;					inputState.guessing++;					try {						{						match('?');						{						match(_tokenSet_14);						}						}					}					catch (RecognitionException pe) {						synPredMatched491 = false;					}					rewind(_m491);					inputState.guessing--;				}				if ( synPredMatched491 ) {					match('?');				}				else {					if ( _cnt492>=1 ) { break _loop492; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}				}				}				_cnt492++;			} while (true);			}			if ( _createToken && _token==null && _ttype!=Token.SKIP ) {				_token = makeToken(_ttype);				_token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));			}			_returnToken = _token;		}