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

class A<T extends core::Object> extends core::Object {
  constructor •(self::A::T x) → void
    : super core::Object::•()
    ;
}
static field core::List<self::A<core::int>> t1 = <self::A<core::int>>[new self::A::•<core::int>(1)];
static method main() → dynamic {}
