@Override
    public boolean equals(Object o) {
        if (!(o instanceof Pair)) {
            return false;
        }
        Pair<?, ?> p = (Pair<?, ?>) o;
        return ObjectsCompat.equals(p.first, first) && ObjectsCompat.equals(p.second, second);
    }
Checks the two objects for equality by delegating to their respective
{@link Object#equals(Object)} methods.

@param o the {@link Pair} to which this one is to be checked for equality
@return true if the underlying objects of the Pair are both considered
equal
android/android_framework/base/src/main/java/github/tornaco/android/thanos/core/compat/Pair.java