if (quoteStarted) throw new IllegalArgumentException ("pattern is lacking a closing quote");
	private final int scanFix(String pattern, int index, StringBuffer buf, String patChars, DecimalFormatSymbols syms, boolean is_suffix) {		int len = pattern.length();		buf.setLength(0);		boolean multiplierSet = false;		while (index < len) {			char c = pattern.charAt(index);			if (c == '\'' && index + 1 < len && pattern.charAt(index + 1) == '\'') {				buf.append(c);				++index;			} else if (c == '\'' && index + 2 < len && pattern.charAt(index + 2) == '\'') {				buf.append(pattern.charAt(index + 1));				index += 2;			} else if (c == '\u00a4') {				if (index + 1 < len && pattern.charAt(index + 1) == '\u00a4') {					buf.append(syms.getInternationalCurrencySymbol());					++index;				} else					buf.append(syms.getCurrencySymbol());			} else if (is_suffix && c == syms.getPercent()) {				if (multiplierSet)					throw new IllegalArgumentException("multiplier already set " + "- index: " + index);				multiplierSet = true;				multiplier = 100;				buf.append(c);			} else if (is_suffix && c == syms.getPerMill()) {				if (multiplierSet)					throw new IllegalArgumentException("multiplier already set " + "- index: " + index);				multiplierSet = true;				multiplier = 1000;				buf.append(c);			} else if (patChars.indexOf(c) != -1) {				// This is a pattern character.				break;			} else				buf.append(c);			++index;		}		return index;	}