| library; | 
 | import self as self; | 
 | import "dart:core" as core; | 
 | import "dart:async" as asy; | 
 |  | 
 | import "dart:async"; | 
 |  | 
 | class X extends core::Object { | 
 |   final field dynamic x; | 
 |   final field dynamic y; | 
 |   constructor •(dynamic x, dynamic y) → self::X | 
 |     : self::X::x = x, self::X::y = y, super core::Object::•() | 
 |     ; | 
 |   method toString() → core::String | 
 |     return "X(${this.{self::X::x}{dynamic}}, ${this.{self::X::y}{dynamic}})"; | 
 | } | 
 | class Y extends core::Object { | 
 |   synthetic constructor •() → self::Y | 
 |     : super core::Object::•() | 
 |     ; | 
 |   method f(wildcard dynamic _#wc0#formal) → dynamic {} | 
 | } | 
 | static method f1() → asy::Future<core::List<core::Object>> async /* emittedValueType= core::List<core::Object> */ { | 
 |   return core::_GrowableList::_literal1<core::Object>(1); | 
 | } | 
 | static method f2() → core::List<core::Object> | 
 |   return core::_GrowableList::_literal1<core::Object>(2); | 
 | static method f3() → asy::Future<core::Object> async /* emittedValueType= core::Object */ { | 
 |   return 3; | 
 | } | 
 | static method foo() → asy::Future<self::X> async /* emittedValueType= self::X */ { | 
 |   return new self::X::•(let final self::Y #t1 = new self::Y::•() in block { | 
 |     #t1.{self::Y::f}(await self::f1()){(dynamic) → dynamic}; | 
 |     #t1.{self::Y::f}(self::f2()){(dynamic) → dynamic}; | 
 |   } =>#t1, await self::f3()); | 
 | } | 
 | static method main() → asy::Future<void> async /* emittedValueType= void */ { | 
 |   core::print(await self::foo()); | 
 | } |