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

static field core::List<core::int*>* v = (#C1)<core::int*>(() → core::int* {
  return 1;
}){(() →* core::int*) →* core::List<core::int*>*};
static method f<T extends core::Object* = dynamic>(() →* self::f::T* g) → core::List<self::f::T*>*
  return core::_GrowableList::_literal1<self::f::T*>(g(){() →* self::f::T*});
static method main() → dynamic {
  self::v;
}

constants  {
  #C1 = tearoff self::f
}
