|  | library; | 
|  | import self as self; | 
|  | import "dart:core" as core; | 
|  |  | 
|  | class I<T extends core::Object? = dynamic> extends core::Object { | 
|  | synthetic constructor •() → self::I<self::I::T%> | 
|  | ; | 
|  | } | 
|  | class J<T extends core::Object? = dynamic> extends self::I<self::J::T%> { | 
|  | synthetic constructor •() → self::J<self::J::T%> | 
|  | ; | 
|  | } | 
|  | class A<T extends core::Object? = dynamic> extends self::J<self::A::T%> { | 
|  | synthetic constructor •() → self::A<self::A::T%> | 
|  | ; | 
|  | } | 
|  | extension /* unnamed */ _extension#0<T extends core::Object? = dynamic> on self::I<T%> { | 
|  | get member = self::_extension#0|get#member; | 
|  | } | 
|  | static field core::int counter; | 
|  | static extension-member method _extension#0|get#member<T extends core::Object? = dynamic>(lowered final self::I<self::_extension#0|get#member::T%> #this) → core::num | 
|  | ; | 
|  | static method method1(self::I<core::num> i) → core::num | 
|  | ; | 
|  | static method method2(self::A<core::num> i) → core::num | 
|  | ; | 
|  | static method main() → dynamic | 
|  | ; | 
|  | static method expect(dynamic expected, dynamic actual) → dynamic | 
|  | ; |