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

class Foo extends core::Object {
  const constructor •(core::List<core::String> l) → self::Foo
    ;
}
abstract class Bar extends core::Object {
  @self::Foo::•(const <dynamic>[])
  field dynamic x;
  @self::Foo::•(const <dynamic>[])
  constructor •() → self::Bar
    ;
  @self::Foo::•(const <dynamic>[])
  abstract method f() → void;
}
static method main() → dynamic
  ;
