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

class C extends core::Object {
  static field dynamic staticField;
  field dynamic instanceField;
  synthetic constructor •() → void
    ;
  static set staticSetter(dynamic x) → void
    ;
  set instanceSetter(dynamic x) → void
    ;
  method test() → void
    ;
}
static field dynamic topLevel;
static set topLevelSetter(dynamic x) → void
  ;
static method main() → dynamic
  ;
