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

static method test1() → dynamic {
  core::List<core::int> o;
  core::Iterable<core::Null> y = o.{core::Iterable::map}<core::Null>((core::int x) → core::Null {});
  core::Iterable<core::int> z = y;
}
static method main() → dynamic {}
