+ formatLineNumber());
+ formatLineNumber()); */
	private int process_cdata() throws ParseException, EncodingException, EOFException{		int length1;		while (true) {			ch = getChar();			if (XMLChar.isValidChar(ch)) {				if (ch == ']' && skipChar(']')) {					while (skipChar(']'))						;					if (skipChar('>')) {						break;					} else						throw new ParseException(								"Error in CDATA: Invalid termination sequence"										+ formatLineNumber());				}			} else				throw new ParseException(						"Error in CDATA: Invalid Char"								+ formatLineNumber());		}		length1 = offset - temp_offset - increment - (increment<<1);		if (encoding < FORMAT_UTF_16BE) {			writeVTD(temp_offset, length1, TOKEN_CDATA_VAL, depth);		} else {			writeVTD(temp_offset >> 1, length1 >> 1,					TOKEN_CDATA_VAL, depth);		}		//System.out.println(" " + (temp_offset) + " " + length1 +		// " CDATA " + depth);		temp_offset = offset;		ch = getCharAfterSe();		if (ch == '<') {			return STATE_LT_SEEN;		} else if (XMLChar.isContentChar(ch)) {			//temp_offset = offset;			return STATE_TEXT;		} else if (ch == '&') {			//has_amp = true;			//temp_offset = offset;			entityIdentifier();			return STATE_TEXT;			//temp_offset = offset;		} else if (ch == ']') {			if (skipChar(']')) {				while (skipChar(']')) {				}				if (skipChar('>'))					throw new ParseException(							"Error in text content: ]]> in text content"									+ formatLineNumber());			}			return STATE_TEXT;		} else			throw new ParseException(					"Other Error: Invalid char in xml"							+ formatLineNumber());	}