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

class A<T extends core::Object> extends core::Object {
  synthetic constructor •() → void
    ;
}
class B<T extends core::num, S extends core::List<self::B::T>> extends self::A<self::B::T> {
  constructor •([self::B::T x]) → void
    ;
}
static method main() → dynamic
  ;
