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

class C<T extends core::Object = dynamic> extends core::Object {
  generic-covariant-impl field self::C::T t;
  constructor •(self::C::T t) → self::C<self::C::T>
    : self::C::t = t, super core::Object::•()
    ;
}
static method main() → dynamic {
  dynamic x = new self::C::•<dynamic>(42);
  core::num y;
  self::C<core::int> c_int = new self::C::•<dynamic>(y);
  self::C<core::num> c_num = new self::C::•<dynamic>(123);
  dynamic c_dynamic = new self::C::•<dynamic>(42);
}
