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

import "dart:async";

class A extends core::Object {
  synthetic constructor •() → self::A
    : super core::Object::•()
    ;
}
static method foo() → dynamic async {
  asy::Future<core::List<self::A>> f1 = null;
  asy::Future<core::List<self::A>> f2 = null;
  core::List<core::List<self::A>> merged = await asy::Future::wait<core::List<self::A>>(<asy::Future<core::List<self::A>>>[f1, f2]);
}
static method main() → dynamic {}
