Object:
  superclasses:
  interfaces:
  classMembers:
    Object._haveSameRuntimeType
    Object.toString
    Object.runtimeType
    Object._toString
    Object._simpleInstanceOf
    Object._hashCodeRnd
    Object._instanceOf
    Object.noSuchMethod
    Object._objectHashCode
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:

I:
  superclasses:
    Object
  interfaces:
  classMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:

M0:
  Longest path to Object: 2
  superclasses:
    Object
  interfaces: I<T, List<T>>
  classMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:
  interfaceMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  interfaceSetters:

M1:
  Longest path to Object: 2
  superclasses:
    Object
  interfaces: I<List<T>, T>
  classMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:
  interfaceMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  interfaceSetters:

Object with M0<dynamic>:
  Longest path to Object: 3
  superclasses:
    Object
  interfaces: M0<dynamic>, I<dynamic, List<dynamic>>
  classMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:
  interfaceMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  interfaceSetters:

_A&Object&M0 with M1<dynamic>:
  Longest path to Object: 4
  superclasses:
    Object
      -> _A&Object&M0
  interfaces: M0<dynamic>, I<dynamic, List<dynamic>>, M1<dynamic>
  classMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:
  interfaceMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  interfaceSetters:

A:
  Longest path to Object: 5
  superclasses:
    Object
      -> _A&Object&M0
        -> _A&Object&M0&M1
  interfaces: M0<dynamic>, I<dynamic, List<dynamic>>, M1<dynamic>
  classMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:
  interfaceMembers:
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  interfaceSetters:
