@#C1
@#C2
library test;
import self as self;
import "dart:core" as core;

@#C1
@#C2
typedef F1 = () →* void;
@#C1
@#C2
typedef F2 = () →* void;
class A extends core::Object /*hasConstConstructor*/  {
  const constructor •(core::int* value) → self::A*
    : super core::Object::•()
    ;
}
@#C1
@#C2
class C extends core::Object {
  synthetic constructor •() → self::C*
    : super core::Object::•()
    ;
}
static const field core::Object* a = #C1;
@#C1
@#C2
static field core::int* f1;
@#C1
@#C2
static field core::int* f2;
@#C1
@#C2
static method main() → void {}

constants  {
  #C1 = core::Object {}
  #C2 = self::A {}
}
