private static Object processFunctionResults(final Object binaryOperatorKey,
                                                 final Object functionResult)
    {
        if (binaryOperatorKey.equals(Syntax.OPERATOR_GREATER))
        {
            return ((Number) functionResult).intValue() == 1 ? Boolean.TRUE
                    : Boolean.FALSE;
        } else if (binaryOperatorKey.equals(Syntax.OPERATOR_GREATER_OR_EQUAL))
        {
            return ((Number) functionResult).intValue() == -1 ? Boolean.FALSE
                    : Boolean.TRUE;
        } else if (binaryOperatorKey.equals(Syntax.OPERATOR_LESS))
        {
            return ((Number) functionResult).intValue() == -1 ? Boolean.TRUE
                    : Boolean.FALSE;
        } else if (binaryOperatorKey.equals(Syntax.OPERATOR_LESS_OR_EQUAL))
        {
            return ((Number) functionResult).intValue() == 1 ? Boolean.FALSE
                    : Boolean.TRUE;
        } else
        {
            return functionResult;
        }
    }