private int processVariable(int textState, int tokenStart, int tokenEnd, StringBuilder buffer, Model model)
protected int processVariable(int textState, String variable, StringBuilder buffer, Model model)
	private int processVariable(int textState, int tokenStart, int tokenEnd,			StringBuilder buffer, Model model)	{		String variable = template.subSequence(tokenStart, tokenEnd).toString();		getLogger().log(Level.FINER, "processVariable: " + variable, buffer);		int conditionIndex = variable.indexOf('?');		boolean append = true;		if (conditionIndex != -1)		{			String condition = variable.substring(conditionIndex + 1);			variable = variable.substring(0, conditionIndex);			if (condition.equals("exists"))			{				append = model.containsKey(variable);			}		}		if (append && (textState == TEXT_APPEND))		{			buffer.append(model.get(variable).toString());		}		return textState;	}