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

static field core::List<(core::int) → core::Object> v = <(core::int) → core::Object>[self::f, self::g];
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;
}
