library;
import self as self;
import "dart:core" as core;

class A<T extends core::Object = dynamic> extends core::Object {
  synthetic constructor •() → self::A<self::A::T>
    ;
  method f<U extends core::Object = dynamic>(generic-covariant-impl core::Map<self::A::T, self::A::f::U> m) → void
    ;
}
class B extends self::A<core::String> {
  synthetic constructor •() → self::B
    ;
  method f<V extends core::Object = dynamic>(generic-covariant-impl core::Map<core::String, self::B::f::V> m) → void
    ;
}
static method main() → dynamic
  ;
