public Boolean visitType(Type t, Type s) {
                if (s.tag >= firstPartialTag)
                    return containedBy(s, t);
                else
                    return isSameType(t, s);
            }

//            void debugContainsType(WildcardType t, Type s) {
//                System.err.println();
//                System.err.format(" does %s contain %s?%n", t, s);
//                System.err.format(" %s U(%s) <: U(%s) %s = %s%n",
//                                  upperBound(s), s, t, U(t),
//                                  t.isSuperBound()
//                                  || isSubtypeNoCapture(upperBound(s), U(t)));
//                System.err.format(" %s L(%s) <: L(%s) %s = %s%n",
//                                  L(t), t, s, lowerBound(s),
//                                  t.isExtendsBound()
//                                  || isSubtypeNoCapture(L(t), lowerBound(s)));
//                System.err.println();
//            }