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

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

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