library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;

class A extends core::Object {
  synthetic constructor •() → self::A
    ;
  method m(core::num n) → void
    ;
}
class B extends self::A {
  synthetic constructor •() → self::B
    ;
  forwarding-stub forwarding-semi-stub method m(covariant-by-declaration core::int i) → void
    return super.{self::A::m}(i);
}
class C extends self::B {
  synthetic constructor •() → self::C
    ;
  method m(covariant-by-declaration core::int i) → void
    ;
}
static method main() → dynamic
  ;
static method throws(() → void f) → dynamic
  ;
