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

static field core::List<(core::int*) →* core::Object*>* v = core::_GrowableList::_literal2<(core::int*) →* core::Object*>(#C1, #C2);
static method f(core::int* x) → core::int*
  return null;
static method g(core::int* x) → core::String*
  return null;
static method main() → dynamic {
  self::v;
}

constants  {
  #C1 = tearoff self::f
  #C2 = tearoff self::g
}
