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

typedef F = () → void;
static final field core::Map<core::String, () → void> x = <core::String, () → void>{};
static method main() → dynamic {
  self::x;
}
