// @dart = 2.9
abstract class C3 extends Object with M2 {}

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

abstract class N3 = Object with M2;

class C extends Object with N {}

class C2 extends Object with M2 {}

class M {
  foo() {}
}

class N = Object with M;
class N2 = Object with M2;
main() {}
