// @dart = 2.9
library test;

G bar() => new H();

abstract class D {
  A foo();
}

abstract class E {
  B foo();
}

abstract class F {
  Object foo();
}

abstract class G extends Object implements D, E, F {}

class A {}

class B extends A {}

class C extends B {}

class H extends G {
  C foo() => new C();
}

main() {}
var x = bar().foo();
