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

static field core::List<(core::int) → core::Object> v = <(core::int) → core::Object>[#C1, #C2];
static method f(core::int x) → core::int
  return 0;
static method g(core::int x) → core::String
  return "";
static method main() → dynamic {
  self::v;
}

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