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

static field dynamic f;
static method foo() → dynamic {
  core::print(self::f.call(0));
}
static method main(dynamic arguments) → dynamic {
  final dynamic #context = MakeVector(3);
  #context[2] = arguments;
  final (dynamic) → dynamic g = MakeClosure<(dynamic) → dynamic>(self::closure#main#g, #context);
  self::f = g;
  self::foo();
}
static method closure#main#g(dynamic #contextParameter, dynamic x) → dynamic {
  return (#contextParameter[2]).[](x);
}
