|  | library; | 
|  | import self as self; | 
|  | import "dart:core" as core; | 
|  |  | 
|  | class Class<T extends core::Object> extends core::Object { | 
|  | covariant-by-class field self::Class::T field; | 
|  | constructor •(self::Class::T field) → self::Class<self::Class::T> | 
|  | : self::Class::field = field, super core::Object::•() | 
|  | ; | 
|  | } | 
|  | static method method1(core::Object object) → dynamic { | 
|  | { | 
|  | final synthesized core::Object #0#0 = object; | 
|  | { | 
|  | hoisted core::Object field; | 
|  | if(#0#0 is self::Class<core::Object>) { | 
|  | field = #0#0{self::Class<core::Object>}.{self::Class::field}{core::Object}; | 
|  | { | 
|  | core::print(field); | 
|  | } | 
|  | } | 
|  | } | 
|  | } | 
|  | } | 
|  | static method main() → dynamic { | 
|  | self::method1(new self::Class::•<core::int>(42)); | 
|  | self::method1(new self::Class::•<core::String>("foo")); | 
|  | } |