ExpressionTreeNode thirdBranch = (ExpressionTreeNode)mBranches.get(1);
ExpressionTreeNode thirdBranch = (ExpressionTreeNode)mBranches.get(2);
		public String toString()		{			String retval;			StringBuffer sb;						if (mIsLeaf)			{				retval = mLeafArg.toString();			}			else			{				String operation = "";				switch (mOperation)				{					case PLUS_OPERATION:						operation = "+";						break;					case CONCAT_OPERATION:						operation = ".";						break;					case MINUS_OPERATION:						operation = "-";						break;					case MULTIPLY_OPERATION:						operation = "*";						break;					case REPEAT_OPERATION:						operation = "x";						break;					case DIVIDE_OPERATION:						operation = "/";						break;					case MODULO_OPERATION:						operation = "%";						break;					case LEXICAL_EQUALS_OPERATION:						operation = "eq";						break;					case LEXICAL_NOT_EQUALS_OPERATION:						operation = "ne";						break;					case LEXICAL_GREATER_THAN_OPERATION:						operation = "gt";						break;					case LEXICAL_LESS_THAN_OPERATION:						operation = "lt";						break;					case LEXICAL_GREATER_EQUAL_OPERATION:						operation = "ge";						break;					case LEXICAL_LESS_EQUAL_OPERATION:						operation = "le";						break;					case NUMERIC_EQUALS_OPERATION:						operation = "==";						break;					case NUMERIC_NOT_EQUALS_OPERATION:						operation = "!=";						break;					case NUMERIC_GREATER_THAN_OPERATION:						operation = ">";						break;					case NUMERIC_LESS_THAN_OPERATION:						operation  = "<";						break;					case NUMERIC_GREATER_EQUAL_OPERATION:						operation = ">=";						break;					case NUMERIC_LESS_EQUAL_OPERATION:						operation = "<=";						break;					case CONDITIONAL_OPERATION:						operation = "?";						break;					case ASSIGN_OPERATION:						operation = "=";						break;					case AND_OPERATION:						operation = "and";						break;				 	case OR_OPERATION:				 		operation  = "or";				 		break;				 	case NOT_OPERATION:				 		operation = "not";				 		break;					case HASHMAP_REFERENCE:						operation = "[";						break;				}								sb = new StringBuffer();				ExpressionTreeNode leftBranch = (ExpressionTreeNode)mBranches.get(0);				sb.append(leftBranch.toString());				sb.append(' ');				sb.append(operation);				sb.append(' ');				if (mOperation != NOT_OPERATION)				{					ExpressionTreeNode rightBranch = (ExpressionTreeNode)mBranches.get(1);					sb.append(rightBranch.toString());				}				if (mOperation == HASHMAP_REFERENCE)					sb.append(']');				if (mOperation == CONDITIONAL_OPERATION)				{					ExpressionTreeNode thirdBranch = (ExpressionTreeNode)mBranches.get(1);					sb.append(" : ").append(thirdBranch.toString());				}				retval = sb.toString();			}			return(retval);		}