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

class F3<T extends core::Object? = dynamic> extends core::Object {
  constructor •(core::Iterable<core::Iterable<self::F3::T%>> a) → self::F3<self::F3::T%>
    : super core::Object::•() {}
}
class F4<T extends core::Object? = dynamic> extends core::Object {
  constructor •({required core::Iterable<core::Iterable<self::F4::T%>> a = #C1}) → self::F4<self::F4::T%>
    : super core::Object::•() {}
}
static method main() → void {
  new self::F3::•<core::Object?>(core::_GrowableList::•<core::Iterable<core::Object?>>(0));
  new self::F4::•<core::Object?>(a: core::_GrowableList::•<core::Iterable<core::Object?>>(0));
}

constants  {
  #C1 = null
}
