library test;
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*>*
    ;
}
class B<T extends core::Object* = dynamic> extends self::A<self::B::T*> {
  synthetic constructor •() → self::B<self::B::T*>*
    ;
  method foo() → dynamic
    ;
}
static field self::A<core::num*>* a;
static field self::B<core::int*>* b;
static method main() → dynamic
  ;
