class I<X, Y> {}

class M0<T> implements I<T, int> {}

class M1<T> implements I<String, T> {}

class A extends Object with M0, M1 {}

main() {}
