protected boolean nodesReturnsSameType(Object leftObject, Object rightObject) {
        if (Objects.equals(leftObject, rightObject)) {
            return true;
        } else if (leftObject == null || rightObject == null) {
            return true;
        } else {
            Class<?> left = leftObject.getClass();
            Class<?> right = rightObject.getClass();
            return left.equals(right) || left.isAssignableFrom(right) || right.isAssignableFrom(left);
        }
    }
@Test
    void nodesReturnsSameType_False() {
        assertThat(rangeFunction.nodesReturnsSameType("1", 1))
                .withFailMessage("\"1\" - 1")
                .isFalse();
    }