library;
import self as self;
import "dart:core" as core;

class Foo extends core::Object {
  synthetic constructor •() → self::Foo*
    ;
}
class Bar extends self::Foo {
  synthetic constructor •() → self::Bar*
    ;
}
class Base extends core::Object {
  synthetic constructor •() → self::Base*
    ;
  method method() → self::Foo*
    ;
}
class Sub extends self::Base {
  synthetic constructor •() → self::Sub*
    ;
  method method() → self::Foo*
    ;
}
static method main(core::List<core::String*>* args) → dynamic
  ;
