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

class A extends core::Object /*hasConstConstructor*/  {
  const constructor •() → self::A
    : super core::Object::•()
    ;
}
class B extends self::A {
  synthetic constructor •() → self::B
    ;
}
class C extends core::Object {
  synthetic constructor •() → self::C
    ;
  method call() → core::num?
    ;
}
static method fooContext(self::A x) → void
  ;
static method barContext(core::List<self::A> x) → void
  ;
static method bazContext(() → core::num f) → void
  ;
static method foo(self::B? x, core::List<self::B?> l, core::Map<self::B?, self::B?> m, core::List<self::B>? l2, core::Map<self::B, self::B>? m2) → self::A
  ;
static method bar(core::List<self::B?> x, core::List<core::List<self::B?>> l, core::Map<core::List<self::B?>, core::List<self::B?>> m) → core::List<self::A>
  ;
static method baz(self::C c) → void
  ;
static method main() → dynamic
  ;
