|  | library test; | 
|  | import self as self; | 
|  | import "dart:core" as core; | 
|  |  | 
|  | typedef F<U extends core::Object, V extends core::Object> = (U) → V; | 
|  | class Foo<T extends core::Object> extends core::Object { | 
|  | default constructor •() → void | 
|  | : super core::Object::•() | 
|  | ; | 
|  | get v1() → self::Bar<self::Foo::T> | 
|  | return const self::Bar::•<core::Null>(); | 
|  | get v2() → self::Bar<core::List<self::Foo::T>> | 
|  | return const self::Bar::•<core::List<core::Null>>(); | 
|  | generic-contravariant get v3() → self::Bar<(self::Foo::T) → self::Foo::T> | 
|  | return const self::Bar::•<(core::Object) → core::Null>(); | 
|  | generic-contravariant get v4() → self::Bar<((self::Foo::T) → self::Foo::T) → self::Foo::T> | 
|  | return const self::Bar::•<((core::Null) → core::Object) → core::Null>(); | 
|  | get v5() → core::List<self::Foo::T> | 
|  | return const <core::Null>[]; | 
|  | generic-contravariant get v6() → core::List<(self::Foo::T) → self::Foo::T> | 
|  | return const <(core::Object) → core::Null>[]; | 
|  | get v7() → core::Map<self::Foo::T, self::Foo::T> | 
|  | return const <core::Null, core::Null>{}; | 
|  | generic-contravariant get v8() → core::Map<(self::Foo::T) → self::Foo::T, self::Foo::T> | 
|  | return const <(core::Object) → core::Null, core::Null>{}; | 
|  | generic-contravariant get v9() → core::Map<self::Foo::T, (self::Foo::T) → self::Foo::T> | 
|  | return const <core::Null, (core::Object) → core::Null>{}; | 
|  | } | 
|  | class Bar<T extends core::Object> extends core::Object { | 
|  | const constructor •() → void | 
|  | : super core::Object::•() | 
|  | ; | 
|  | } | 
|  | static method main() → dynamic {} |