private Type rewriteAsWildcardType(Type bound, TypeVar formal) {
            return high ?
                makeExtendsWildcard(B(bound), formal) :
                makeSuperWildcard(B(bound), formal);
        }