@SuppressWarnings("unchecked")
	private T calculateExpr(DequeInterface<T> exprDeque) throws DAIndexOutOfBoundsException, NumberFormatException, DAIllegalArgumentException
	{
		Double operandF = Double.parseDouble((String)exprDeque.removeFront());
		String operator = (String) exprDeque.removeFront();
		Double operandB = Double.parseDouble((String)exprDeque.removeFront());
		Double result = 0.0;
		
		switch(operator)
		{
			case "+":
				result = operandF + operandB;
				break;
			case "-":
				result = operandF - operandB;
				break;
			case "*":
				result = operandF * operandB;
				break;
			case "/":
				if(operandB != 0.0){
					result = operandF / operandB;
				}
				else
					throw new DAIllegalArgumentException();
				break;
			default:
				break;
		}
		
		return (T)("" +result);
	}