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

import "dart:collection";

class A<T extends core::Object* = dynamic> extends core::Object {
  synthetic constructor •() → self::A<self::A::T*>*
    : super core::Object::•()
    ;
}
class C extends core::Object {
  synthetic constructor •() → self::C*
    : super core::Object::•()
    ;
  method foo() → self::A<dynamic>*
    return null;
  method baz() → col::DoubleLinkedQueue<dynamic>*
    return null;
}
static field self::A<dynamic>* a;
static field col::DoubleLinkedQueue<dynamic>* c;
static method main() → dynamic {}
