| library /*isNonNullableByDefault*/; | 
 | import self as self; | 
 | import "dart:core" as core; | 
 | import "main_lib.dart" as mai; | 
 |  | 
 | import "org-dartlang-testcase:///main_lib.dart"; | 
 |  | 
 | abstract class _Mixin1&Super1&Super2 extends core::Object implements mai::Super1, mai::Super2 /*isAnonymousMixin*/  { | 
 |   synthetic constructor •() → self::_Mixin1&Super1&Super2 | 
 |     ; | 
 | } | 
 | abstract class Mixin1 extends self::_Mixin1&Super1&Super2 /*isMixinDeclaration*/  { | 
 |   field core::int? _#Mixin1#field1; | 
 |   field core::bool _#Mixin1#field1#isSet; | 
 |   field core::int? _#Mixin1#field2; | 
 |   field core::bool _#Mixin1#field2#isSet; | 
 |   get field1() → core::int; | 
 |   set field1(core::int field1#param) → void; | 
 |   get field2() → core::int; | 
 |   set field2(core::int field2#param) → void; | 
 |   method method1() → void | 
 |     ; | 
 |   method method2() → void | 
 |     ; | 
 |   get property1() → core::int | 
 |     ; | 
 |   set property1(core::int value) → void | 
 |     ; | 
 |   get property2() → core::int | 
 |     ; | 
 |   set property2(core::int value) → void | 
 |     ; | 
 | } | 
 | abstract class Class1a extends mai::Super1 implements mai::Super2 { | 
 |   synthetic constructor •() → self::Class1a | 
 |     ; | 
 | } | 
 | abstract class _Class1b&Class1a&Mixin1 = self::Class1a with self::Mixin1 /*isAnonymousMixin*/  { | 
 |   synthetic constructor •() → self::_Class1b&Class1a&Mixin1 | 
 |     : super self::Class1a::•() | 
 |     ; | 
 |   mixin-super-stub get _#Mixin1#field1() → core::int? | 
 |     return super.{self::Mixin1::_#Mixin1#field1}; | 
 |   mixin-super-stub set _#Mixin1#field1(core::int? value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field1} = value; | 
 |   mixin-super-stub get field1() → core::int | 
 |     return super.{self::Mixin1::field1}; | 
 |   mixin-super-stub set field1(core::int field1#param) → void | 
 |     return super.{self::Mixin1::field1} = field1#param; | 
 |   mixin-super-stub get _#Mixin1#field1#isSet() → core::bool | 
 |     return super.{self::Mixin1::_#Mixin1#field1#isSet}; | 
 |   mixin-super-stub set _#Mixin1#field1#isSet(core::bool value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field1#isSet} = value; | 
 |   mixin-super-stub get _#Mixin1#field2() → core::int? | 
 |     return super.{self::Mixin1::_#Mixin1#field2}; | 
 |   mixin-super-stub set _#Mixin1#field2(core::int? value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field2} = value; | 
 |   mixin-super-stub get field2() → core::int | 
 |     return super.{self::Mixin1::field2}; | 
 |   mixin-super-stub set field2(core::int field2#param) → void | 
 |     return super.{self::Mixin1::field2} = field2#param; | 
 |   mixin-super-stub get _#Mixin1#field2#isSet() → core::bool | 
 |     return super.{self::Mixin1::_#Mixin1#field2#isSet}; | 
 |   mixin-super-stub set _#Mixin1#field2#isSet(core::bool value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field2#isSet} = value; | 
 |   mixin-super-stub get property1() → core::int | 
 |     return super.{self::Mixin1::property1}; | 
 |   mixin-super-stub set property1(core::int value) → void | 
 |     return super.{self::Mixin1::property1} = value; | 
 |   mixin-super-stub get property2() → core::int | 
 |     return super.{self::Mixin1::property2}; | 
 |   mixin-super-stub set property2(core::int value) → void | 
 |     return super.{self::Mixin1::property2} = value; | 
 |   mixin-super-stub method method1() → void | 
 |     return super.{self::Mixin1::method1}(); | 
 |   mixin-super-stub method method2() → void | 
 |     return super.{self::Mixin1::method2}(); | 
 | } | 
 | class Class1b extends self::_Class1b&Class1a&Mixin1 { | 
 |   synthetic constructor •() → self::Class1b | 
 |     ; | 
 |   static method _#new#tearOff() → self::Class1b | 
 |     return new self::Class1b::•(); | 
 | } | 
 | abstract class Class2a extends mai::Super2 implements mai::Super1 { | 
 |   synthetic constructor •() → self::Class2a | 
 |     ; | 
 | } | 
 | abstract class _Class2b&Class2a&Mixin1 = self::Class2a with self::Mixin1 /*isAnonymousMixin*/  { | 
 |   synthetic constructor •() → self::_Class2b&Class2a&Mixin1 | 
 |     : super self::Class2a::•() | 
 |     ; | 
 |   mixin-super-stub get _#Mixin1#field1() → core::int? | 
 |     return super.{self::Mixin1::_#Mixin1#field1}; | 
 |   mixin-super-stub set _#Mixin1#field1(core::int? value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field1} = value; | 
 |   mixin-super-stub get field1() → core::int | 
 |     return super.{self::Mixin1::field1}; | 
 |   mixin-super-stub set field1(core::int field1#param) → void | 
 |     return super.{self::Mixin1::field1} = field1#param; | 
 |   mixin-super-stub get _#Mixin1#field1#isSet() → core::bool | 
 |     return super.{self::Mixin1::_#Mixin1#field1#isSet}; | 
 |   mixin-super-stub set _#Mixin1#field1#isSet(core::bool value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field1#isSet} = value; | 
 |   mixin-super-stub get _#Mixin1#field2() → core::int? | 
 |     return super.{self::Mixin1::_#Mixin1#field2}; | 
 |   mixin-super-stub set _#Mixin1#field2(core::int? value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field2} = value; | 
 |   mixin-super-stub get field2() → core::int | 
 |     return super.{self::Mixin1::field2}; | 
 |   mixin-super-stub set field2(core::int field2#param) → void | 
 |     return super.{self::Mixin1::field2} = field2#param; | 
 |   mixin-super-stub get _#Mixin1#field2#isSet() → core::bool | 
 |     return super.{self::Mixin1::_#Mixin1#field2#isSet}; | 
 |   mixin-super-stub set _#Mixin1#field2#isSet(core::bool value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field2#isSet} = value; | 
 |   mixin-super-stub get property1() → core::int | 
 |     return super.{self::Mixin1::property1}; | 
 |   mixin-super-stub set property1(core::int value) → void | 
 |     return super.{self::Mixin1::property1} = value; | 
 |   mixin-super-stub get property2() → core::int | 
 |     return super.{self::Mixin1::property2}; | 
 |   mixin-super-stub set property2(core::int value) → void | 
 |     return super.{self::Mixin1::property2} = value; | 
 |   mixin-super-stub method method1() → void | 
 |     return super.{self::Mixin1::method1}(); | 
 |   mixin-super-stub method method2() → void | 
 |     return super.{self::Mixin1::method2}(); | 
 | } | 
 | class Class2b extends self::_Class2b&Class2a&Mixin1 { | 
 |   synthetic constructor •() → self::Class2b | 
 |     ; | 
 |   static method _#new#tearOff() → self::Class2b | 
 |     return new self::Class2b::•(); | 
 | } | 
 | abstract class Class3a extends core::Object implements mai::Super1, mai::Super2 { | 
 |   synthetic constructor •() → self::Class3a | 
 |     ; | 
 | } | 
 | abstract class _Class3b&Class3a&Mixin1 = self::Class3a with self::Mixin1 /*isAnonymousMixin*/  { | 
 |   synthetic constructor •() → self::_Class3b&Class3a&Mixin1 | 
 |     : super self::Class3a::•() | 
 |     ; | 
 |   mixin-super-stub get _#Mixin1#field1() → core::int? | 
 |     return super.{self::Mixin1::_#Mixin1#field1}; | 
 |   mixin-super-stub set _#Mixin1#field1(core::int? value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field1} = value; | 
 |   mixin-super-stub get field1() → core::int | 
 |     return super.{self::Mixin1::field1}; | 
 |   mixin-super-stub set field1(core::int field1#param) → void | 
 |     return super.{self::Mixin1::field1} = field1#param; | 
 |   mixin-super-stub get _#Mixin1#field1#isSet() → core::bool | 
 |     return super.{self::Mixin1::_#Mixin1#field1#isSet}; | 
 |   mixin-super-stub set _#Mixin1#field1#isSet(core::bool value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field1#isSet} = value; | 
 |   mixin-super-stub get _#Mixin1#field2() → core::int? | 
 |     return super.{self::Mixin1::_#Mixin1#field2}; | 
 |   mixin-super-stub set _#Mixin1#field2(core::int? value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field2} = value; | 
 |   mixin-super-stub get field2() → core::int | 
 |     return super.{self::Mixin1::field2}; | 
 |   mixin-super-stub set field2(core::int field2#param) → void | 
 |     return super.{self::Mixin1::field2} = field2#param; | 
 |   mixin-super-stub get _#Mixin1#field2#isSet() → core::bool | 
 |     return super.{self::Mixin1::_#Mixin1#field2#isSet}; | 
 |   mixin-super-stub set _#Mixin1#field2#isSet(core::bool value) → void | 
 |     return super.{self::Mixin1::_#Mixin1#field2#isSet} = value; | 
 |   mixin-super-stub get property1() → core::int | 
 |     return super.{self::Mixin1::property1}; | 
 |   mixin-super-stub set property1(core::int value) → void | 
 |     return super.{self::Mixin1::property1} = value; | 
 |   mixin-super-stub get property2() → core::int | 
 |     return super.{self::Mixin1::property2}; | 
 |   mixin-super-stub set property2(core::int value) → void | 
 |     return super.{self::Mixin1::property2} = value; | 
 |   mixin-super-stub method method1() → void | 
 |     return super.{self::Mixin1::method1}(); | 
 |   mixin-super-stub method method2() → void | 
 |     return super.{self::Mixin1::method2}(); | 
 | } | 
 | class Class3b extends self::_Class3b&Class3a&Mixin1 { | 
 |   synthetic constructor •() → self::Class3b | 
 |     ; | 
 |   static method _#new#tearOff() → self::Class3b | 
 |     return new self::Class3b::•(); | 
 | } | 
 | abstract class Class4a extends mai::Super1 implements mai::Super2 { | 
 |   synthetic constructor •() → self::Class4a | 
 |     ; | 
 | } | 
 | abstract class _Class4b&Class4a&Mixin2 = self::Class4a with mai::Mixin2 /*isAnonymousMixin*/  { | 
 |   synthetic constructor •() → self::_Class4b&Class4a&Mixin2 | 
 |     : super self::Class4a::•() | 
 |     ; | 
 |   mixin-super-stub get field1() → core::int | 
 |     return super.{mai::Mixin2::field1}; | 
 |   mixin-super-stub set field1(core::int field1#param) → void | 
 |     return super.{mai::Mixin2::field1} = field1#param; | 
 |   mixin-super-stub get field2() → core::int | 
 |     return super.{mai::Mixin2::field2}; | 
 |   mixin-super-stub set field2(core::int field2#param) → void | 
 |     return super.{mai::Mixin2::field2} = field2#param; | 
 |   mixin-super-stub get property1() → core::int | 
 |     return super.{mai::Mixin2::property1}; | 
 |   mixin-super-stub set property1(core::int value) → void | 
 |     return super.{mai::Mixin2::property1} = value; | 
 |   mixin-super-stub get property2() → core::int | 
 |     return super.{mai::Mixin2::property2}; | 
 |   mixin-super-stub set property2(core::int value) → void | 
 |     return super.{mai::Mixin2::property2} = value; | 
 |   mixin-super-stub get _#Mixin2#field1() → core::int? | 
 |     return super.{mai::Mixin2::_#Mixin2#field1}; | 
 |   mixin-super-stub set _#Mixin2#field1(core::int? value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field1} = value; | 
 |   mixin-super-stub get _#Mixin2#field1#isSet() → core::bool | 
 |     return super.{mai::Mixin2::_#Mixin2#field1#isSet}; | 
 |   mixin-super-stub set _#Mixin2#field1#isSet(core::bool value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field1#isSet} = value; | 
 |   mixin-super-stub get _#Mixin2#field2() → core::int? | 
 |     return super.{mai::Mixin2::_#Mixin2#field2}; | 
 |   mixin-super-stub set _#Mixin2#field2(core::int? value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field2} = value; | 
 |   mixin-super-stub get _#Mixin2#field2#isSet() → core::bool | 
 |     return super.{mai::Mixin2::_#Mixin2#field2#isSet}; | 
 |   mixin-super-stub set _#Mixin2#field2#isSet(core::bool value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field2#isSet} = value; | 
 |   mixin-super-stub method method1() → void | 
 |     return super.{mai::Mixin2::method1}(); | 
 |   mixin-super-stub method method2() → void | 
 |     return super.{mai::Mixin2::method2}(); | 
 | } | 
 | class Class4b extends self::_Class4b&Class4a&Mixin2 { | 
 |   synthetic constructor •() → self::Class4b | 
 |     ; | 
 |   static method _#new#tearOff() → self::Class4b | 
 |     return new self::Class4b::•(); | 
 | } | 
 | abstract class Class5a extends mai::Super2 implements mai::Super1 { | 
 |   synthetic constructor •() → self::Class5a | 
 |     ; | 
 | } | 
 | abstract class _Class5b&Class5a&Mixin2 = self::Class5a with mai::Mixin2 /*isAnonymousMixin*/  { | 
 |   synthetic constructor •() → self::_Class5b&Class5a&Mixin2 | 
 |     : super self::Class5a::•() | 
 |     ; | 
 |   mixin-super-stub get field1() → core::int | 
 |     return super.{mai::Mixin2::field1}; | 
 |   mixin-super-stub set field1(core::int field1#param) → void | 
 |     return super.{mai::Mixin2::field1} = field1#param; | 
 |   mixin-super-stub get field2() → core::int | 
 |     return super.{mai::Mixin2::field2}; | 
 |   mixin-super-stub set field2(core::int field2#param) → void | 
 |     return super.{mai::Mixin2::field2} = field2#param; | 
 |   mixin-super-stub get property1() → core::int | 
 |     return super.{mai::Mixin2::property1}; | 
 |   mixin-super-stub set property1(core::int value) → void | 
 |     return super.{mai::Mixin2::property1} = value; | 
 |   mixin-super-stub get property2() → core::int | 
 |     return super.{mai::Mixin2::property2}; | 
 |   mixin-super-stub set property2(core::int value) → void | 
 |     return super.{mai::Mixin2::property2} = value; | 
 |   mixin-super-stub get _#Mixin2#field1() → core::int? | 
 |     return super.{mai::Mixin2::_#Mixin2#field1}; | 
 |   mixin-super-stub set _#Mixin2#field1(core::int? value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field1} = value; | 
 |   mixin-super-stub get _#Mixin2#field1#isSet() → core::bool | 
 |     return super.{mai::Mixin2::_#Mixin2#field1#isSet}; | 
 |   mixin-super-stub set _#Mixin2#field1#isSet(core::bool value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field1#isSet} = value; | 
 |   mixin-super-stub get _#Mixin2#field2() → core::int? | 
 |     return super.{mai::Mixin2::_#Mixin2#field2}; | 
 |   mixin-super-stub set _#Mixin2#field2(core::int? value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field2} = value; | 
 |   mixin-super-stub get _#Mixin2#field2#isSet() → core::bool | 
 |     return super.{mai::Mixin2::_#Mixin2#field2#isSet}; | 
 |   mixin-super-stub set _#Mixin2#field2#isSet(core::bool value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field2#isSet} = value; | 
 |   mixin-super-stub method method1() → void | 
 |     return super.{mai::Mixin2::method1}(); | 
 |   mixin-super-stub method method2() → void | 
 |     return super.{mai::Mixin2::method2}(); | 
 | } | 
 | class Class5b extends self::_Class5b&Class5a&Mixin2 { | 
 |   synthetic constructor •() → self::Class5b | 
 |     ; | 
 |   static method _#new#tearOff() → self::Class5b | 
 |     return new self::Class5b::•(); | 
 | } | 
 | abstract class Class6a extends core::Object implements mai::Super1, mai::Super2 { | 
 |   synthetic constructor •() → self::Class6a | 
 |     ; | 
 | } | 
 | abstract class _Class6b&Class6a&Mixin2 = self::Class6a with mai::Mixin2 /*isAnonymousMixin*/  { | 
 |   synthetic constructor •() → self::_Class6b&Class6a&Mixin2 | 
 |     : super self::Class6a::•() | 
 |     ; | 
 |   mixin-super-stub get field1() → core::int | 
 |     return super.{mai::Mixin2::field1}; | 
 |   mixin-super-stub set field1(core::int field1#param) → void | 
 |     return super.{mai::Mixin2::field1} = field1#param; | 
 |   mixin-super-stub get field2() → core::int | 
 |     return super.{mai::Mixin2::field2}; | 
 |   mixin-super-stub set field2(core::int field2#param) → void | 
 |     return super.{mai::Mixin2::field2} = field2#param; | 
 |   mixin-super-stub get property1() → core::int | 
 |     return super.{mai::Mixin2::property1}; | 
 |   mixin-super-stub set property1(core::int value) → void | 
 |     return super.{mai::Mixin2::property1} = value; | 
 |   mixin-super-stub get property2() → core::int | 
 |     return super.{mai::Mixin2::property2}; | 
 |   mixin-super-stub set property2(core::int value) → void | 
 |     return super.{mai::Mixin2::property2} = value; | 
 |   mixin-super-stub get _#Mixin2#field1() → core::int? | 
 |     return super.{mai::Mixin2::_#Mixin2#field1}; | 
 |   mixin-super-stub set _#Mixin2#field1(core::int? value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field1} = value; | 
 |   mixin-super-stub get _#Mixin2#field1#isSet() → core::bool | 
 |     return super.{mai::Mixin2::_#Mixin2#field1#isSet}; | 
 |   mixin-super-stub set _#Mixin2#field1#isSet(core::bool value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field1#isSet} = value; | 
 |   mixin-super-stub get _#Mixin2#field2() → core::int? | 
 |     return super.{mai::Mixin2::_#Mixin2#field2}; | 
 |   mixin-super-stub set _#Mixin2#field2(core::int? value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field2} = value; | 
 |   mixin-super-stub get _#Mixin2#field2#isSet() → core::bool | 
 |     return super.{mai::Mixin2::_#Mixin2#field2#isSet}; | 
 |   mixin-super-stub set _#Mixin2#field2#isSet(core::bool value) → void | 
 |     return super.{mai::Mixin2::_#Mixin2#field2#isSet} = value; | 
 |   mixin-super-stub method method1() → void | 
 |     return super.{mai::Mixin2::method1}(); | 
 |   mixin-super-stub method method2() → void | 
 |     return super.{mai::Mixin2::method2}(); | 
 | } | 
 | class Class6b extends self::_Class6b&Class6a&Mixin2 { | 
 |   synthetic constructor •() → self::Class6b | 
 |     ; | 
 |   static method _#new#tearOff() → self::Class6b | 
 |     return new self::Class6b::•(); | 
 | } | 
 |  | 
 | library /*isNonNullableByDefault*/; | 
 | import self as mai; | 
 | import "dart:core" as core; | 
 |  | 
 | class Super1 extends core::Object { | 
 |   field core::int field1; | 
 |   field core::int property1; | 
 |   synthetic constructor •() → mai::Super1 | 
 |     ; | 
 |   method method1() → void | 
 |     ; | 
 |   static method _#new#tearOff() → mai::Super1 | 
 |     return new mai::Super1::•(); | 
 | } | 
 | class Super2 extends core::Object { | 
 |   field core::int field2; | 
 |   field core::int property2; | 
 |   synthetic constructor •() → mai::Super2 | 
 |     ; | 
 |   method method2() → void | 
 |     ; | 
 |   static method _#new#tearOff() → mai::Super2 | 
 |     return new mai::Super2::•(); | 
 | } | 
 | abstract class _Mixin2&Super1&Super2 extends core::Object implements mai::Super1, mai::Super2 /*isAnonymousMixin*/  { | 
 |   synthetic constructor •() → mai::_Mixin2&Super1&Super2 | 
 |     ; | 
 | } | 
 | abstract class Mixin2 extends mai::_Mixin2&Super1&Super2 /*isMixinDeclaration*/  { | 
 |   field core::int? _#Mixin2#field1; | 
 |   field core::bool _#Mixin2#field1#isSet; | 
 |   field core::int? _#Mixin2#field2; | 
 |   field core::bool _#Mixin2#field2#isSet; | 
 |   get field1() → core::int; | 
 |   set field1(core::int field1#param) → void; | 
 |   get field2() → core::int; | 
 |   set field2(core::int field2#param) → void; | 
 |   method method1() → void | 
 |     ; | 
 |   method method2() → void | 
 |     ; | 
 |   get property1() → core::int | 
 |     ; | 
 |   set property1(core::int value) → void | 
 |     ; | 
 |   get property2() → core::int | 
 |     ; | 
 |   set property2(core::int value) → void | 
 |     ; | 
 | } |