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

class Foo<T extends self::Foo<self::Foo::T> = dynamic> extends core::Object {
  synthetic constructor •() → self::Foo<self::Foo::T>
    ;
}
abstract class Bar extends core::Object {
  synthetic constructor •() → self::Bar
    ;
  abstract method fisk<S extends self::Foo<self::Bar::fisk::S> = dynamic>() → void;
}
class Hest extends core::Object implements self::Bar {
  synthetic constructor •() → self::Hest
    ;
  @core::override
  method fisk<U extends self::Foo<self::Hest::fisk::U> = dynamic>() → void
    ;
}
static method main() → void
  ;
