library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;

static method test() → void {
  core::Map<dynamic, dynamic> map = <dynamic, dynamic>{};
  map.{core::Map::[]}(0){(core::Object?) → dynamic}{dynamic}.foo;
  core::Iterable<core::String> elements = core::_GrowableList::•<core::String>(0);
  core::List<dynamic> list = core::List::from<dynamic>(elements);
  core::List::from<dynamic>(elements).{core::Iterable::forEach}((dynamic element) → void => element{dynamic}.foo){((dynamic) → void) → void};
}
static method main() → dynamic {}
