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:

Base:
  superclasses:
    Object
  interfaces:
  classMembers:
    Base.intProp
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Base.numProp
    Base.doubleProp
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:
    Base.intProp
    Base.numProp
    Base.doubleProp

Test1:
  superclasses:
    Object
      -> Base
  interfaces:
  classMembers:
    Base.intProp
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Base.numProp
    Base.doubleProp
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
    Test1.test
  classSetters:
    Base.intProp
    Base.numProp
    Base.doubleProp

Test2:
  superclasses:
    Object
      -> Base
  interfaces:
  classMembers:
    Base.intProp
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Base.numProp
    Base.doubleProp
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
    Test2.test
  classSetters:
    Base.intProp
    Base.numProp
    Base.doubleProp

Test3:
  superclasses:
    Object
      -> Base
  interfaces:
  classMembers:
    Base.intProp
    Object.toString
    Object.runtimeType
    Object._simpleInstanceOf
    Base.numProp
    Test3.test3
    Base.doubleProp
    Object._instanceOf
    Object.noSuchMethod
    Object._identityHashCode
    Object.hashCode
    Object._simpleInstanceOfFalse
    Object._simpleInstanceOfTrue
    Object.==
  classSetters:
    Base.intProp
    Base.numProp
    Base.doubleProp
