public static Class findHighestPrecisionClass(Class left, Class right) {
        if (left == Double.class || right == Double.class) {
            return Double.class;
        } else if (left == Float.class || right == Float.class) {
            return Float.class;
        } else if (left == Long.class || right == Long.class) {
            return Long.class;
        } else {
            return Integer.class;
        }
    }