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

import "dart:async";

static method main() → dynamic async {
  () → asy::Future<core::Null> f = () → asy::Future<core::Null> async {
    return null;
  };
  asy::Future<dynamic> y = f.call();
  asy::Future<core::String> z = f.call();
  core::String s = await f.call();
}
