library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;

class Class extends core::Object {
  synthetic constructor •() → self::Class
    ;
}
extension Extension on self::Class {
  set setter = self::Extension|set#setter;
}
static field self::Class c;
static field dynamic missingGetter;
static method Extension|set#setter(lowered final self::Class #this, core::int value) → void
  ;
static method main() → dynamic
  ;
