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

static method foo([core::List<core::String> list1 = const <dynamic>[], core::List<core::String> list2 = const <dynamic>[42]]) → void {}
static method main() → void {
  {
    core::List<core::int> l0 = <dynamic>[];
    core::List<core::int> l1 = <dynamic>[3];
    core::List<core::int> l2 = <dynamic>["hello"];
    core::List<core::int> l3 = <dynamic>["hello", 3];
  }
  {
    core::List<dynamic> l0 = <dynamic>[];
    core::List<dynamic> l1 = <dynamic>[3];
    core::List<dynamic> l2 = <dynamic>["hello"];
    core::List<dynamic> l3 = <dynamic>["hello", 3];
  }
  {
    core::List<core::int> l0 = <core::num>[];
    core::List<core::int> l1 = <core::num>[3];
    core::List<core::int> l2 = <core::num>["hello"];
    core::List<core::int> l3 = <core::num>["hello", 3];
  }
  {
    core::Iterable<core::int> i0 = <dynamic>[];
    core::Iterable<core::int> i1 = <dynamic>[3];
    core::Iterable<core::int> i2 = <dynamic>["hello"];
    core::Iterable<core::int> i3 = <dynamic>["hello", 3];
  }
  {
    const core::List<core::int> c0 = const <dynamic>[];
    const core::List<core::int> c1 = const <dynamic>[3];
    const core::List<core::int> c2 = const <dynamic>["hello"];
    const core::List<core::int> c3 = const <dynamic>["hello", 3];
  }
}
