class M {
  foo() {}
}

class N = Object with M;

abstract class M2 implements M {
  bar() {}
}

class C extends Object with N {}

class N2 = Object with M2;
abstract class N3 = Object with M2;

abstract class C3 extends Object with M2 {}

class C2 extends Object with M2 {}

main() {}
