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

class C extends core::Object {
  synthetic constructor •() → self::C
    ;
}
extension E on self::C {
  method errors = self::E|errors;
  tearoff errors = self::E|get#errors;
}
static method E|errors(lowered final self::C #this) → dynamic
  ;
static method E|get#errors(lowered final self::C #this) → () → dynamic
  return () → dynamic => self::E|errors(#this);
static method errors() → dynamic
  ;
static method main() → dynamic
  ;
