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

class D<X extends (self::D::X, self::D::Y) → void = (core::Null, core::Null) → void, Y extends (self::D::X, self::D::Y) → void = (core::Null, core::Null) → void> extends core::Object {
  synthetic constructor •() → void
    : super core::Object::•()
    ;
}
class E<X extends (self::E::X) → void = (core::Null) → void> extends core::Object {
  synthetic constructor •() → void
    : super core::Object::•()
    ;
}
static field core::List<self::D<(core::Null, core::Null) → void, (core::Null, core::Null) → void>> ld = <self::D<(core::Null, core::Null) → void, (core::Null, core::Null) → void>>[];
static field core::Map<self::D<(core::Null, core::Null) → void, (core::Null, core::Null) → void>, self::D<(core::Null, core::Null) → void, (core::Null, core::Null) → void>> md = <self::D<(core::Null, core::Null) → void, (core::Null, core::Null) → void>, self::D<(core::Null, core::Null) → void, (core::Null, core::Null) → void>>{};
static field core::List<self::E<(core::Null) → void>> le = <self::E<(core::Null) → void>>[];
static field core::Map<self::E<(core::Null) → void>, self::E<(core::Null) → void>> me = <self::E<(core::Null) → void>, self::E<(core::Null) → void>>{};
static method main() → dynamic {}
