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(asy::Future<core::List<self::A>> f1, asy::Future<core::List<self::A>> f2) → dynamic async /* emittedValueType= dynamic */ {
  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 {}
