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

class I1 extends core::Object {
  final field core::int* x;
  synthetic constructor •() → self::I1*
    ;
}
abstract class I2 extends core::Object {
  synthetic constructor •() → self::I2*
    ;
  abstract get x() → core::num*;
}
class C extends core::Object implements self::I1, self::I2 {
  synthetic constructor •() → self::C*
    ;
  get x() → core::int*
    ;
}
static field core::int* y;
static method main() → dynamic
  ;
