blob: ad2a35af82b41fd13df19575bbb917a758f1c13b [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
class Class extends core::Object {
field core::int field;
final field core::int finalField;
constructor •(core::int field, core::int finalField) self::Class
: self::Class::field = field, self::Class::finalField = finalField, super core::Object::•()
;
get getter() core::int
return this.{self::Class::finalField}{core::int};
}
static method ifCase(dynamic o) core::int {
core::print("o = ${o}");
{
final synthesized dynamic #0#0 = o;
if(#C1 =={core::num::==}{(core::Object) core::bool} #0#0) {
return 1;
}
}
{
final synthesized dynamic #1#0 = o;
synthesized core::Object? #1#2;
synthesized core::bool #1#2#isSet = false;
if(#1#0 is ({f: core::Object?}) && ((let final dynamic #t1 = (#1#2#isSet ?{core::Object?} #1#2{core::Object?} : let final dynamic #t2 = #1#2#isSet = true in #1#2 = #1#0{({f: core::Object?})}.f{core::Object?}) as core::int in ((#1#2#isSet ?{core::Object?} #1#2{core::Object?} : let final dynamic #t3 = #1#2#isSet = true in #1#2 = #1#0{({f: core::Object?})}.f{core::Object?}) as core::int).{core::num::>=}(#C2){(core::num) → core::bool}) && (let final dynamic #t4 = (#1#2#isSet ?{core::Object?} #1#2{core::Object?} : let final dynamic #t5 = #1#2#isSet = true in #1#2 = #1#0{({f: core::Object?})}.f{core::Object?}) as core::int in ((#1#2#isSet ?{core::Object?} #1#2{core::Object?} : let final dynamic #t6 = #1#2#isSet = true in #1#2 = #1#0{({f: core::Object?})}.f{core::Object?}) as core::int).{core::num::<}(#C3){(core::num) → core::bool}))) {
return 2;
}
}
{
final synthesized dynamic #2#0 = o;
if(#C4 =={core::num::==}{(core::Object) core::bool} #2#0 || #C5 =={core::num::==}{(core::Object) → core::bool} #2#0) {
return 3;
}
}
{
final synthesized dynamic #3#0 = o;
synthesized core::Object? #3#2;
synthesized core::bool #3#2#isSet = false;
if(#3#0 is ({g: core::Object?}) && (let final dynamic #t7 = (#3#2#isSet ?{core::Object?} #3#2{core::Object?} : let final dynamic #t8 = #3#2#isSet = true in #3#2 = #3#0{({g: core::Object?})}.g{core::Object?}) as core::int in #C6 =={core::num::==}{(core::Object) → core::bool} (#3#2#isSet ?{core::Object?} #3#2{core::Object?} : let final dynamic #t9 = #3#2#isSet = true in #3#2 = #3#0{({g: core::Object?})}.g{core::Object?}) as core::int)) {
return 4;
}
}
{
final synthesized dynamic #4#0 = o;
if(#4#0 is ({a: core::Object?}) && (let final dynamic #t10 = #4#0{({a: core::Object?})}.a{core::Object?}! in true)) {
return 5;
}
}
{
final synthesized dynamic #5#0 = o;
if(#5#0 is ({b: core::Object?}) && (!(#5#0{({b: core::Object?})}.b{core::Object?} == null) && true)) {
return 6;
}
}
{
final synthesized dynamic #6#0 = o;
if(#6#0 is core::List<dynamic> && #6#0{core::List<dynamic>}.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && #C1 =={core::num::==}{(core::Object) → core::bool} #6#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C7 =={core::num::==}{(core::Object) → core::bool} #6#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) {
return 7;
}
}
{
final synthesized dynamic #7#0 = o;
if(#7#0 is core::List<dynamic> && #7#0{core::List<dynamic>}.{core::List::length}{core::int}.{core::num::>=}(#C7){(core::num) → core::bool} && #C7 =={core::num::==}{(core::Object) → core::bool} #7#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C2 =={core::num::==}{(core::Object) → core::bool} #7#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) {
return 8;
}
}
{
final synthesized dynamic #8#0 = o;
synthesized core::int #8#2;
synthesized core::bool #8#2#isSet = false;
if(#8#0 is core::List<dynamic> && (#8#2#isSet ?{core::int} #8#2{core::int} : let final dynamic #t11 = #8#2#isSet = true in #8#2 = #8#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool} && #C2 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C8 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && #C3 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}((#8#2#isSet ?{core::int} #8#2{core::int} : let final dynamic #t12 = #8#2#isSet = true in #8#2 = #8#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic}) {
return 9;
}
}
{
final synthesized dynamic #9#0 = o;
synthesized core::List<dynamic> #9#12;
synthesized core::bool #9#12#isSet = false;
synthesized dynamic #9#15;
synthesized core::bool #9#15#isSet = false;
synthesized dynamic #9#19;
synthesized core::bool #9#19#isSet = false;
if(#9#0 is core::List<dynamic> && #9#0{core::List<dynamic>}.{core::List::length}{core::int}.{core::num::>=}(#C7){(core::num) → core::bool} && #C8 =={core::num::==}{(core::Object) → core::bool} #9#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C3 =={core::num::==}{(core::Object) → core::bool} #9#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && ((#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t13 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t14 = (#9#15#isSet ?{dynamic} #9#15{dynamic} : let final dynamic #t15 = #9#15#isSet = true in #9#15 = (#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t16 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int in ((#9#15#isSet ?{dynamic} #9#15{dynamic} : let final dynamic #t17 = #9#15#isSet = true in #9#15 = (#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t18 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t19 = (#9#19#isSet ?{dynamic} #9#19{dynamic} : let final dynamic #t20 = #9#19#isSet = true in #9#19 = (#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t21 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int in ((#9#19#isSet ?{dynamic} #9#19{dynamic} : let final dynamic #t22 = #9#19#isSet = true in #9#19 = (#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t23 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int).{core::num::>}(#C7){(core::num) → core::bool}))) {
return 10;
}
}
{
final synthesized dynamic #10#0 = o;
synthesized core::int #10#2;
synthesized core::bool #10#2#isSet = false;
synthesized core::List<dynamic> #10#12;
synthesized core::bool #10#12#isSet = false;
synthesized dynamic #10#16;
synthesized core::bool #10#16#isSet = false;
synthesized dynamic #10#20;
synthesized core::bool #10#20#isSet = false;
if(#10#0 is core::List<dynamic> && (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t24 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool} && #C3 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C4 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && ((#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t25 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t26 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t27 = (#10#16#isSet ?{dynamic} #10#16{dynamic} : let final dynamic #t28 = #10#16#isSet = true in #10#16 = (#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t29 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t30 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int in ((#10#16#isSet ?{dynamic} #10#16{dynamic} : let final dynamic #t31 = #10#16#isSet = true in #10#16 = (#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t32 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t33 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t34 = (#10#20#isSet ?{dynamic} #10#20{dynamic} : let final dynamic #t35 = #10#20#isSet = true in #10#20 = (#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t36 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t37 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int in ((#10#20#isSet ?{dynamic} #10#20{dynamic} : let final dynamic #t38 = #10#20#isSet = true in #10#20 = (#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t39 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t40 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int).{core::num::>}(#C7){(core::num) → core::bool})) && #C5 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}((#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t41 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic}) {
return 11;
}
}
{
final synthesized dynamic #11#0 = o;
if(#11#0 is self::Class && #C1 =={core::num::==}{(core::Object) → core::bool} #11#0{self::Class}.{self::Class::field}{core::int}) {
return 12;
}
}
{
final synthesized dynamic #12#0 = o;
if(#12#0 is self::Class && #C7 =={core::num::==}{(core::Object) → core::bool} #12#0{self::Class}.{self::Class::finalField}{core::int}) {
return 13;
}
}
{
final synthesized dynamic #13#0 = o;
if(#13#0 is self::Class && #C2 =={core::num::==}{(core::Object) → core::bool} #13#0{self::Class}.{self::Class::field}{core::int} && #C8 =={core::num::==}{(core::Object) → core::bool} #13#0{self::Class}.{self::Class::getter}{core::int}) {
return 14;
}
}
{
final synthesized dynamic #14#0 = o;
if(#14#0 is self::Class) {
return 15;
}
}
{
final synthesized dynamic #15#0 = o;
if(#15#0 =={core::Object::==}{(core::Object) → core::bool} #C9) {
return 16;
}
}
{
final synthesized dynamic #16#0 = o;
if(#16#0 is ({e: core::Object?}) && !(#16#0{({e: core::Object?})}.e{core::Object?} =={core::Object::==}{(core::Object) → core::bool} #C10)) {
return 17;
}
}
{
final synthesized dynamic #17#0 = o;
synthesized core::int? #17#4;
synthesized core::bool #17#4#isSet = false;
if(#17#0 is core::Map<core::int, core::int> && (!((#17#4#isSet ?{core::int?} #17#4{core::int?} : let final dynamic #t42 = #17#4#isSet = true in #17#4 = #17#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?}) == null) || null is core::int && #17#0{core::Map<core::int, core::int>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool}) && ((#17#4#isSet ?{core::int?} #17#4{core::int?} : let final dynamic #t43 = #17#4#isSet = true in #17#4 = #17#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?}) as{Unchecked} core::int).{core::num::>=}(#C11){(core::num) → core::bool}) {
return 18;
}
}
{
final synthesized dynamic #18#0 = o;
if(#18#0 is core::List<dynamic> && #18#0{core::List<dynamic>}.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1) {
return 19;
}
}
{
final synthesized dynamic #19#0 = o;
if(#19#0 is core::bool) {
return 20;
}
}
{
final synthesized dynamic #20#0 = o;
if(#20#0 is core::Map<dynamic, dynamic> && o{core::Map<dynamic, dynamic>}.{core::Map::isEmpty}{core::bool}) {
return 21;
}
}
{
final synthesized dynamic #21#0 = o;
synthesized dynamic #21#4;
synthesized core::bool #21#4#isSet = false;
if(#21#0 is core::Map<dynamic, dynamic> && (!((#21#4#isSet ?{dynamic} #21#4{dynamic} : let final dynamic #t44 = #21#4#isSet = true in #21#4 = #21#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic}) == null) || null is dynamic && #21#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C12){(core::Object?) → core::bool}) && (#21#4#isSet ?{dynamic} #21#4{dynamic} : let final dynamic #t45 = #21#4#isSet = true in #21#4 = #21#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic}) is core::int) {
return 22;
}
}
{
final synthesized dynamic #22#0 = o;
synthesized dynamic #22#4;
synthesized core::bool #22#4#isSet = false;
if(#22#0 is core::Map<dynamic, dynamic> && (!((#22#4#isSet ?{dynamic} #22#4{dynamic} : let final dynamic #t46 = #22#4#isSet = true in #22#4 = #22#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic}) == null) || null is dynamic && #22#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool}) && (#22#4#isSet ?{dynamic} #22#4{dynamic} : let final dynamic #t47 = #22#4#isSet = true in #22#4 = #22#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic}) is core::String) {
return 23;
}
}
{
final synthesized dynamic #23#0 = o;
synthesized dynamic #23#4;
synthesized core::bool #23#4#isSet = false;
{
hoisted dynamic a;
if(#23#0 is core::Map<dynamic, dynamic> && (!((#23#4#isSet ?{dynamic} #23#4{dynamic} : let final dynamic #t48 = #23#4#isSet = true in #23#4 = #23#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic}) == null) || null is dynamic && #23#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C7){(core::Object?) → core::bool})) {
a = #23#4#isSet ?{dynamic} #23#4{dynamic} : let final dynamic #t49 = #23#4#isSet = true in #23#4 = #23#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic};
{
return 24;
}
}
}
}
{
final synthesized dynamic #24#0 = o;
synthesized dynamic #24#4;
synthesized core::bool #24#4#isSet = false;
{
hoisted core::int b;
if(#24#0 is core::Map<dynamic, dynamic> && (!((#24#4#isSet ?{dynamic} #24#4{dynamic} : let final dynamic #t50 = #24#4#isSet = true in #24#4 = #24#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) == null) || null is dynamic && #24#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C2){(core::Object?) → core::bool}) && (#24#4#isSet ?{dynamic} #24#4{dynamic} : let final dynamic #t51 = #24#4#isSet = true in #24#4 = #24#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) is core::int) {
b = (#24#4#isSet ?{dynamic} #24#4{dynamic} : let final dynamic #t52 = #24#4#isSet = true in #24#4 = #24#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) as{Unchecked} core::int;
{
return 25;
}
}
}
}
{
final synthesized dynamic #25#0 = o;
if(#25#0 is (core::Object?, core::Object?) && #C12 =={core::num::==}{(core::Object) → core::bool} #25#0{(core::Object?, core::Object?)}.$1{core::Object?} && #C1 =={core::num::==}{(core::Object) → core::bool} #25#0{(core::Object?, core::Object?)}.$2{core::Object?}) {
return 26;
}
}
{
final synthesized dynamic #26#0 = o;
{
hoisted dynamic c;
if(#26#0 is ({a: core::Object?, b: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #26#0{({a: core::Object?, b: core::Object?})}.a{core::Object?}) {
c = #26#0{({a: core::Object?, b: core::Object?})}.b{core::Object?};
{
return 27;
}
}
}
}
{
final synthesized dynamic #27#0 = o;
{
hoisted dynamic d;
if(#27#0 is ({c: core::Object?, d: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #27#0{({c: core::Object?, d: core::Object?})}.c{core::Object?} && (let final dynamic #t53 = d = #27#0{({c: core::Object?, d: core::Object?})}.d{core::Object?} in true) && d is core::int) {
return 28;
}
}
}
return 0;
}
static method ifCaseElse(dynamic o) core::int {
core::print("o = ${o}");
{
final synthesized dynamic #0#0 = o;
if(#C1 =={core::num::==}{(core::Object) core::bool} #0#0) {
return 1;
}
else {
final synthesized dynamic #1#0 = o;
synthesized core::Object? #1#2;
synthesized core::bool #1#2#isSet = false;
if(#1#0 is ({f: core::Object?}) && ((let final dynamic #t54 = (#1#2#isSet ?{core::Object?} #1#2{core::Object?} : let final dynamic #t55 = #1#2#isSet = true in #1#2 = #1#0{({f: core::Object?})}.f{core::Object?}) as core::int in ((#1#2#isSet ?{core::Object?} #1#2{core::Object?} : let final dynamic #t56 = #1#2#isSet = true in #1#2 = #1#0{({f: core::Object?})}.f{core::Object?}) as core::int).{core::num::>=}(#C2){(core::num) → core::bool}) && (let final dynamic #t57 = (#1#2#isSet ?{core::Object?} #1#2{core::Object?} : let final dynamic #t58 = #1#2#isSet = true in #1#2 = #1#0{({f: core::Object?})}.f{core::Object?}) as core::int in ((#1#2#isSet ?{core::Object?} #1#2{core::Object?} : let final dynamic #t59 = #1#2#isSet = true in #1#2 = #1#0{({f: core::Object?})}.f{core::Object?}) as core::int).{core::num::<}(#C3){(core::num) → core::bool}))) {
return 2;
}
else {
final synthesized dynamic #2#0 = o;
if(#C4 =={core::num::==}{(core::Object) core::bool} #2#0 || #C5 =={core::num::==}{(core::Object) → core::bool} #2#0) {
return 3;
}
else {
final synthesized dynamic #3#0 = o;
synthesized core::Object? #3#2;
synthesized core::bool #3#2#isSet = false;
if(#3#0 is ({g: core::Object?}) && (let final dynamic #t60 = (#3#2#isSet ?{core::Object?} #3#2{core::Object?} : let final dynamic #t61 = #3#2#isSet = true in #3#2 = #3#0{({g: core::Object?})}.g{core::Object?}) as core::int in #C6 =={core::num::==}{(core::Object) → core::bool} (#3#2#isSet ?{core::Object?} #3#2{core::Object?} : let final dynamic #t62 = #3#2#isSet = true in #3#2 = #3#0{({g: core::Object?})}.g{core::Object?}) as core::int)) {
return 4;
}
else {
final synthesized dynamic #4#0 = o;
if(#4#0 is ({a: core::Object?}) && (let final dynamic #t63 = #4#0{({a: core::Object?})}.a{core::Object?}! in true)) {
return 5;
}
else {
final synthesized dynamic #5#0 = o;
if(#5#0 is ({b: core::Object?}) && (!(#5#0{({b: core::Object?})}.b{core::Object?} == null) && true)) {
return 6;
}
else {
final synthesized dynamic #6#0 = o;
if(#6#0 is core::List<dynamic> && #6#0{core::List<dynamic>}.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && #C1 =={core::num::==}{(core::Object) → core::bool} #6#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C7 =={core::num::==}{(core::Object) → core::bool} #6#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) {
return 7;
}
else {
final synthesized dynamic #7#0 = o;
if(#7#0 is core::List<dynamic> && #7#0{core::List<dynamic>}.{core::List::length}{core::int}.{core::num::>=}(#C7){(core::num) → core::bool} && #C7 =={core::num::==}{(core::Object) → core::bool} #7#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C2 =={core::num::==}{(core::Object) → core::bool} #7#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) {
return 8;
}
else {
final synthesized dynamic #8#0 = o;
synthesized core::int #8#2;
synthesized core::bool #8#2#isSet = false;
if(#8#0 is core::List<dynamic> && (#8#2#isSet ?{core::int} #8#2{core::int} : let final dynamic #t64 = #8#2#isSet = true in #8#2 = #8#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool} && #C2 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C8 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && #C3 =={core::num::==}{(core::Object) → core::bool} #8#0{core::List<dynamic>}.{core::List::[]}((#8#2#isSet ?{core::int} #8#2{core::int} : let final dynamic #t65 = #8#2#isSet = true in #8#2 = #8#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic}) {
return 9;
}
else {
final synthesized dynamic #9#0 = o;
synthesized core::List<dynamic> #9#12;
synthesized core::bool #9#12#isSet = false;
synthesized dynamic #9#15;
synthesized core::bool #9#15#isSet = false;
synthesized dynamic #9#19;
synthesized core::bool #9#19#isSet = false;
if(#9#0 is core::List<dynamic> && #9#0{core::List<dynamic>}.{core::List::length}{core::int}.{core::num::>=}(#C7){(core::num) → core::bool} && #C8 =={core::num::==}{(core::Object) → core::bool} #9#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C3 =={core::num::==}{(core::Object) → core::bool} #9#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && ((#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t66 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t67 = (#9#15#isSet ?{dynamic} #9#15{dynamic} : let final dynamic #t68 = #9#15#isSet = true in #9#15 = (#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t69 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int in ((#9#15#isSet ?{dynamic} #9#15{dynamic} : let final dynamic #t70 = #9#15#isSet = true in #9#15 = (#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t71 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t72 = (#9#19#isSet ?{dynamic} #9#19{dynamic} : let final dynamic #t73 = #9#19#isSet = true in #9#19 = (#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t74 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int in ((#9#19#isSet ?{dynamic} #9#19{dynamic} : let final dynamic #t75 = #9#19#isSet = true in #9#19 = (#9#12#isSet ?{core::List<dynamic>} #9#12{core::List<dynamic>} : let final dynamic #t76 = #9#12#isSet = true in #9#12 = #9#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int).{core::num::>}(#C7){(core::num) → core::bool}))) {
return 10;
}
else {
final synthesized dynamic #10#0 = o;
synthesized core::int #10#2;
synthesized core::bool #10#2#isSet = false;
synthesized core::List<dynamic> #10#12;
synthesized core::bool #10#12#isSet = false;
synthesized dynamic #10#16;
synthesized core::bool #10#16#isSet = false;
synthesized dynamic #10#20;
synthesized core::bool #10#20#isSet = false;
if(#10#0 is core::List<dynamic> && (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t77 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool} && #C3 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic} && #C4 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic} && ((#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t78 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t79 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t80 = (#10#16#isSet ?{dynamic} #10#16{dynamic} : let final dynamic #t81 = #10#16#isSet = true in #10#16 = (#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t82 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t83 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int in ((#10#16#isSet ?{dynamic} #10#16{dynamic} : let final dynamic #t84 = #10#16#isSet = true in #10#16 = (#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t85 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t86 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t87 = (#10#20#isSet ?{dynamic} #10#20{dynamic} : let final dynamic #t88 = #10#20#isSet = true in #10#20 = (#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t89 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t90 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int in ((#10#20#isSet ?{dynamic} #10#20{dynamic} : let final dynamic #t91 = #10#20#isSet = true in #10#20 = (#10#12#isSet ?{core::List<dynamic>} #10#12{core::List<dynamic>} : let final dynamic #t92 = #10#12#isSet = true in #10#12 = #10#0{core::List<dynamic>}.{core::List::sublist}(2, (#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t93 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int).{core::num::>}(#C7){(core::num) → core::bool})) && #C5 =={core::num::==}{(core::Object) → core::bool} #10#0{core::List<dynamic>}.{core::List::[]}((#10#2#isSet ?{core::int} #10#2{core::int} : let final dynamic #t94 = #10#2#isSet = true in #10#2 = #10#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic}) {
return 11;
}
else {
final synthesized dynamic #11#0 = o;
if(#11#0 is self::Class && #C1 =={core::num::==}{(core::Object) → core::bool} #11#0{self::Class}.{self::Class::field}{core::int}) {
return 12;
}
else {
final synthesized dynamic #12#0 = o;
if(#12#0 is self::Class && #C7 =={core::num::==}{(core::Object) → core::bool} #12#0{self::Class}.{self::Class::finalField}{core::int}) {
return 13;
}
else {
final synthesized dynamic #13#0 = o;
if(#13#0 is self::Class && #C2 =={core::num::==}{(core::Object) → core::bool} #13#0{self::Class}.{self::Class::field}{core::int} && #C8 =={core::num::==}{(core::Object) → core::bool} #13#0{self::Class}.{self::Class::getter}{core::int}) {
return 14;
}
else {
final synthesized dynamic #14#0 = o;
if(#14#0 is self::Class) {
return 15;
}
else {
final synthesized dynamic #15#0 = o;
if(#15#0 =={core::Object::==}{(core::Object) → core::bool} #C9) {
return 16;
}
else {
final synthesized dynamic #16#0 = o;
if(#16#0 is ({e: core::Object?}) && !(#16#0{({e: core::Object?})}.e{core::Object?} =={core::Object::==}{(core::Object) → core::bool} #C10)) {
return 17;
}
else {
final synthesized dynamic #17#0 = o;
synthesized core::int? #17#4;
synthesized core::bool #17#4#isSet = false;
if(#17#0 is core::Map<core::int, core::int> && (!((#17#4#isSet ?{core::int?} #17#4{core::int?} : let final dynamic #t95 = #17#4#isSet = true in #17#4 = #17#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?}) == null) || null is core::int && #17#0{core::Map<core::int, core::int>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool}) && ((#17#4#isSet ?{core::int?} #17#4{core::int?} : let final dynamic #t96 = #17#4#isSet = true in #17#4 = #17#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?}) as{Unchecked} core::int).{core::num::>=}(#C11){(core::num) → core::bool}) {
return 18;
}
else {
final synthesized dynamic #18#0 = o;
if(#18#0 is core::List<dynamic> && #18#0{core::List<dynamic>}.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C1) {
return 19;
}
else {
final synthesized dynamic #19#0 = o;
if(#19#0 is core::bool) {
return 20;
}
else {
final synthesized dynamic #20#0 = o;
if(#20#0 is core::Map<dynamic, dynamic> && o{core::Map<dynamic, dynamic>}.{core::Map::isEmpty}{core::bool}) {
return 21;
}
else {
final synthesized dynamic #21#0 = o;
synthesized dynamic #21#4;
synthesized core::bool #21#4#isSet = false;
if(#21#0 is core::Map<dynamic, dynamic> && (!((#21#4#isSet ?{dynamic} #21#4{dynamic} : let final dynamic #t97 = #21#4#isSet = true in #21#4 = #21#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic}) == null) || null is dynamic && #21#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C12){(core::Object?) → core::bool}) && (#21#4#isSet ?{dynamic} #21#4{dynamic} : let final dynamic #t98 = #21#4#isSet = true in #21#4 = #21#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic}) is core::int) {
return 22;
}
else {
final synthesized dynamic #22#0 = o;
synthesized dynamic #22#4;
synthesized core::bool #22#4#isSet = false;
if(#22#0 is core::Map<dynamic, dynamic> && (!((#22#4#isSet ?{dynamic} #22#4{dynamic} : let final dynamic #t99 = #22#4#isSet = true in #22#4 = #22#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic}) == null) || null is dynamic && #22#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool}) && (#22#4#isSet ?{dynamic} #22#4{dynamic} : let final dynamic #t100 = #22#4#isSet = true in #22#4 = #22#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic}) is core::String) {
return 23;
}
else {
final synthesized dynamic #23#0 = o;
synthesized dynamic #23#4;
synthesized core::bool #23#4#isSet = false;
{
hoisted dynamic a;
if(#23#0 is core::Map<dynamic, dynamic> && (!((#23#4#isSet ?{dynamic} #23#4{dynamic} : let final dynamic #t101 = #23#4#isSet = true in #23#4 = #23#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic}) == null) || null is dynamic && #23#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C7){(core::Object?) → core::bool})) {
a = #23#4#isSet ?{dynamic} #23#4{dynamic} : let final dynamic #t102 = #23#4#isSet = true in #23#4 = #23#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic};
{
return 24;
}
}
else {
final synthesized dynamic #24#0 = o;
synthesized dynamic #24#4;
synthesized core::bool #24#4#isSet = false;
{
hoisted core::int b;
if(#24#0 is core::Map<dynamic, dynamic> && (!((#24#4#isSet ?{dynamic} #24#4{dynamic} : let final dynamic #t103 = #24#4#isSet = true in #24#4 = #24#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) == null) || null is dynamic && #24#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C2){(core::Object?) → core::bool}) && (#24#4#isSet ?{dynamic} #24#4{dynamic} : let final dynamic #t104 = #24#4#isSet = true in #24#4 = #24#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) is core::int) {
b = (#24#4#isSet ?{dynamic} #24#4{dynamic} : let final dynamic #t105 = #24#4#isSet = true in #24#4 = #24#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) as{Unchecked} core::int;
{
return 25;
}
}
else {
final synthesized dynamic #25#0 = o;
if(#25#0 is (core::Object?, core::Object?) && #C12 =={core::num::==}{(core::Object) → core::bool} #25#0{(core::Object?, core::Object?)}.$1{core::Object?} && #C1 =={core::num::==}{(core::Object) → core::bool} #25#0{(core::Object?, core::Object?)}.$2{core::Object?}) {
return 26;
}
else {
final synthesized dynamic #26#0 = o;
{
hoisted dynamic c;
if(#26#0 is ({a: core::Object?, b: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #26#0{({a: core::Object?, b: core::Object?})}.a{core::Object?}) {
c = #26#0{({a: core::Object?, b: core::Object?})}.b{core::Object?};
{
return 27;
}
}
else {
final synthesized dynamic #27#0 = o;
{
hoisted dynamic d;
if(#27#0 is ({c: core::Object?, d: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #27#0{({c: core::Object?, d: core::Object?})}.c{core::Object?} && (let final dynamic #t106 = d = #27#0{({c: core::Object?, d: core::Object?})}.d{core::Object?} in true) && d is core::int) {
return 28;
}
else {
return 0;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
static method switchStatement(dynamic o) core::int {
core::print("o = ${o}");
#L1:
{
final synthesized dynamic #0#0 = o;
synthesized core::Object? #0#4;
synthesized core::bool #0#4#isSet = false;
synthesized core::Object? #0#15;
synthesized core::bool #0#15#isSet = false;
synthesized core::Object? #0#20;
synthesized core::bool #0#20#isSet = false;
synthesized core::Object? #0#23;
synthesized core::bool #0#23#isSet = false;
synthesized core::int #0#26;
synthesized core::bool #0#26#isSet = false;
synthesized dynamic #0#30;
synthesized core::bool #0#30#isSet = false;
synthesized dynamic #0#32;
synthesized core::bool #0#32#isSet = false;
synthesized core::bool #0#34;
synthesized core::bool #0#34#isSet = false;
synthesized core::bool #0#38;
synthesized core::bool #0#38#isSet = false;
synthesized dynamic #0#43;
synthesized core::bool #0#43#isSet = false;
synthesized core::List<dynamic> #0#47;
synthesized core::bool #0#47#isSet = false;
synthesized dynamic #0#50;
synthesized core::bool #0#50#isSet = false;
synthesized dynamic #0#53;
synthesized core::bool #0#53#isSet = false;
synthesized core::List<dynamic> #0#58;
synthesized core::bool #0#58#isSet = false;
synthesized dynamic #0#61;
synthesized core::bool #0#61#isSet = false;
synthesized dynamic #0#64;
synthesized core::bool #0#64#isSet = false;
synthesized core::int #0#69;
synthesized core::bool #0#69#isSet = false;
synthesized core::int? #0#84;
synthesized core::bool #0#84#isSet = false;
synthesized dynamic #0#92;
synthesized core::bool #0#92#isSet = false;
synthesized dynamic #0#94;
synthesized core::bool #0#94#isSet = false;
synthesized dynamic #0#96;
synthesized core::bool #0#96#isSet = false;
synthesized dynamic #0#98;
synthesized core::bool #0#98#isSet = false;
{
if(#C1 =={core::num::==}{(core::Object) core::bool} #0#0) {
{
return 1;
}
}
}
{
if(#0#0 is ({f: core::Object?}) && ((let final dynamic #t107 = (#0#4#isSet ?{core::Object?} #0#4{core::Object?} : let final dynamic #t108 = #0#4#isSet = true in #0#4 = #0#0{({f: core::Object?})}.f{core::Object?}) as core::int in ((#0#4#isSet ?{core::Object?} #0#4{core::Object?} : let final dynamic #t109 = #0#4#isSet = true in #0#4 = #0#0{({f: core::Object?})}.f{core::Object?}) as core::int).{core::num::>=}(#C2){(core::num) → core::bool}) && (let final dynamic #t110 = (#0#4#isSet ?{core::Object?} #0#4{core::Object?} : let final dynamic #t111 = #0#4#isSet = true in #0#4 = #0#0{({f: core::Object?})}.f{core::Object?}) as core::int in ((#0#4#isSet ?{core::Object?} #0#4{core::Object?} : let final dynamic #t112 = #0#4#isSet = true in #0#4 = #0#0{({f: core::Object?})}.f{core::Object?}) as core::int).{core::num::<}(#C3){(core::num) → core::bool}))) {
{
return 2;
}
}
}
{
if(#C4 =={core::num::==}{(core::Object) core::bool} #0#0 || #C5 =={core::num::==}{(core::Object) → core::bool} #0#0) {
{
return 3;
}
}
}
{
if(#0#0 is ({g: core::Object?}) && (let final dynamic #t113 = (#0#15#isSet ?{core::Object?} #0#15{core::Object?} : let final dynamic #t114 = #0#15#isSet = true in #0#15 = #0#0{({g: core::Object?})}.g{core::Object?}) as core::int in #C6 =={core::num::==}{(core::Object) → core::bool} (#0#15#isSet ?{core::Object?} #0#15{core::Object?} : let final dynamic #t115 = #0#15#isSet = true in #0#15 = #0#0{({g: core::Object?})}.g{core::Object?}) as core::int)) {
{
return 4;
}
}
}
{
if(#0#0 is ({a: core::Object?}) && (let final dynamic #t116 = (#0#20#isSet ?{core::Object?} #0#20{core::Object?} : let final dynamic #t117 = #0#20#isSet = true in #0#20 = #0#0{({a: core::Object?})}.a{core::Object?})! in true)) {
{
return 5;
}
}
}
{
if(#0#0 is ({b: core::Object?}) && (!((#0#23#isSet ?{core::Object?} #0#23{core::Object?} : let final dynamic #t118 = #0#23#isSet = true in #0#23 = #0#0{({b: core::Object?})}.b{core::Object?}) == null) && true)) {
{
return 6;
}
}
}
{
if(#0#0 is core::List<dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t119 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C7 && #C1 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t120 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C7 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t121 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic})) {
{
return 7;
}
}
}
{
if(#0#0 is core::List<dynamic> && (#0#34#isSet ?{core::bool} #0#34{core::bool} : let final dynamic #t122 = #0#34#isSet = true in #0#34 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t123 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C7){(core::num) → core::bool}) && #C7 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t124 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C2 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t125 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic})) {
{
return 8;
}
}
}
{
if(#0#0 is core::List<dynamic> && (#0#38#isSet ?{core::bool} #0#38{core::bool} : let final dynamic #t126 = #0#38#isSet = true in #0#38 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t127 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool}) && #C2 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t128 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C8 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t129 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) && #C3 =={core::num::==}{(core::Object) → core::bool} (#0#43#isSet ?{dynamic} #0#43{dynamic} : let final dynamic #t130 = #0#43#isSet = true in #0#43 = #0#0{core::List<dynamic>}.{core::List::[]}((#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t131 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic})) {
{
return 9;
}
}
}
{
if(#0#0 is core::List<dynamic> && (#0#34#isSet ?{core::bool} #0#34{core::bool} : let final dynamic #t132 = #0#34#isSet = true in #0#34 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t133 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C7){(core::num) → core::bool}) && #C8 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t134 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C3 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t135 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) && ((#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t136 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t137 = (#0#50#isSet ?{dynamic} #0#50{dynamic} : let final dynamic #t138 = #0#50#isSet = true in #0#50 = (#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t139 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int in ((#0#50#isSet ?{dynamic} #0#50{dynamic} : let final dynamic #t140 = #0#50#isSet = true in #0#50 = (#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t141 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t142 = (#0#53#isSet ?{dynamic} #0#53{dynamic} : let final dynamic #t143 = #0#53#isSet = true in #0#53 = (#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t144 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int in ((#0#53#isSet ?{dynamic} #0#53{dynamic} : let final dynamic #t145 = #0#53#isSet = true in #0#53 = (#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t146 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int).{core::num::>}(#C7){(core::num) → core::bool}))) {
{
return 10;
}
}
}
{
if(#0#0 is core::List<dynamic> && (#0#38#isSet ?{core::bool} #0#38{core::bool} : let final dynamic #t147 = #0#38#isSet = true in #0#38 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t148 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool}) && #C3 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t149 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C4 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t150 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) && ((#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t151 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t152 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t153 = (#0#61#isSet ?{dynamic} #0#61{dynamic} : let final dynamic #t154 = #0#61#isSet = true in #0#61 = (#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t155 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t156 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int in ((#0#61#isSet ?{dynamic} #0#61{dynamic} : let final dynamic #t157 = #0#61#isSet = true in #0#61 = (#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t158 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t159 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t160 = (#0#64#isSet ?{dynamic} #0#64{dynamic} : let final dynamic #t161 = #0#64#isSet = true in #0#64 = (#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t162 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t163 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int in ((#0#64#isSet ?{dynamic} #0#64{dynamic} : let final dynamic #t164 = #0#64#isSet = true in #0#64 = (#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t165 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t166 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int).{core::num::>}(#C7){(core::num) → core::bool})) && #C5 =={core::num::==}{(core::Object) → core::bool} (#0#43#isSet ?{dynamic} #0#43{dynamic} : let final dynamic #t167 = #0#43#isSet = true in #0#43 = #0#0{core::List<dynamic>}.{core::List::[]}((#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t168 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic})) {
{
return 11;
}
}
}
{
if(#0#0 is self::Class && #C1 =={core::num::==}{(core::Object) → core::bool} (#0#69#isSet ?{core::int} #0#69{core::int} : let final dynamic #t169 = #0#69#isSet = true in #0#69 = #0#0{self::Class}.{self::Class::field}{core::int})) {
{
return 12;
}
}
}
{
if(#0#0 is self::Class && #C7 =={core::num::==}{(core::Object) → core::bool} #0#0{self::Class}.{self::Class::finalField}{core::int}) {
{
return 13;
}
}
}
{
if(#0#0 is self::Class && #C2 =={core::num::==}{(core::Object) → core::bool} (#0#69#isSet ?{core::int} #0#69{core::int} : let final dynamic #t170 = #0#69#isSet = true in #0#69 = #0#0{self::Class}.{self::Class::field}{core::int}) && #C8 =={core::num::==}{(core::Object) → core::bool} #0#0{self::Class}.{self::Class::getter}{core::int}) {
{
return 14;
}
}
}
{
if(#0#0 is self::Class) {
{
return 15;
}
}
}
{
if(#0#0 =={core::Object::==}{(core::Object) → core::bool} #C9) {
{
return 16;
}
}
}
{
if(#0#0 is ({e: core::Object?}) && !(#0#0{({e: core::Object?})}.e{core::Object?} =={core::Object::==}{(core::Object) → core::bool} #C10)) {
{
return 17;
}
}
}
{
if(#0#0 is core::Map<core::int, core::int> && (!((#0#84#isSet ?{core::int?} #0#84{core::int?} : let final dynamic #t171 = #0#84#isSet = true in #0#84 = #0#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?}) == null) || null is core::int && #0#0{core::Map<core::int, core::int>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool}) && ((#0#84#isSet ?{core::int?} #0#84{core::int?} : let final dynamic #t172 = #0#84#isSet = true in #0#84 = #0#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?}) as{Unchecked} core::int).{core::num::>=}(#C11){(core::num) → core::bool}) {
{
return 18;
}
}
}
{
if(#0#0 is core::List<dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t173 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) {
{
return 19;
}
}
}
{
if(#0#0 is core::bool) {
{
return 20;
}
}
}
{
if(#0#0 is core::Map<dynamic, dynamic> && o{core::Map<dynamic, dynamic>}.{core::Map::isEmpty}{core::bool}) {
{
return 21;
}
}
}
{
if(#0#0 is core::Map<dynamic, dynamic> && (!((#0#92#isSet ?{dynamic} #0#92{dynamic} : let final dynamic #t174 = #0#92#isSet = true in #0#92 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic}) == null) || null is dynamic && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C12){(core::Object?) → core::bool}) && (#0#92#isSet ?{dynamic} #0#92{dynamic} : let final dynamic #t175 = #0#92#isSet = true in #0#92 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic}) is core::int) {
{
return 22;
}
}
}
{
if(#0#0 is core::Map<dynamic, dynamic> && (!((#0#94#isSet ?{dynamic} #0#94{dynamic} : let final dynamic #t176 = #0#94#isSet = true in #0#94 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic}) == null) || null is dynamic && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool}) && (#0#94#isSet ?{dynamic} #0#94{dynamic} : let final dynamic #t177 = #0#94#isSet = true in #0#94 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic}) is core::String) {
{
return 23;
}
}
}
{
hoisted dynamic a;
if(#0#0 is core::Map<dynamic, dynamic> && (!((#0#96#isSet ?{dynamic} #0#96{dynamic} : let final dynamic #t178 = #0#96#isSet = true in #0#96 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic}) == null) || null is dynamic && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C7){(core::Object?) → core::bool}) && (let final dynamic #t179 = a = #0#96#isSet ?{dynamic} #0#96{dynamic} : let final dynamic #t180 = #0#96#isSet = true in #0#96 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic} in true)) {
{
return 24;
}
}
}
{
hoisted core::int b;
if(#0#0 is core::Map<dynamic, dynamic> && (!((#0#98#isSet ?{dynamic} #0#98{dynamic} : let final dynamic #t181 = #0#98#isSet = true in #0#98 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) == null) || null is dynamic && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C2){(core::Object?) → core::bool}) && ((#0#98#isSet ?{dynamic} #0#98{dynamic} : let final dynamic #t182 = #0#98#isSet = true in #0#98 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) is core::int && (let final dynamic #t183 = b = (#0#98#isSet ?{dynamic} #0#98{dynamic} : let final dynamic #t184 = #0#98#isSet = true in #0#98 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) as{Unchecked} core::int in true))) {
{
return 25;
}
}
}
{
if(#0#0 is (core::Object?, core::Object?) && #C12 =={core::num::==}{(core::Object) → core::bool} #0#0{(core::Object?, core::Object?)}.$1{core::Object?} && #C1 =={core::num::==}{(core::Object) → core::bool} #0#0{(core::Object?, core::Object?)}.$2{core::Object?}) {
{
return 26;
}
}
}
{
hoisted dynamic c;
if(#0#0 is ({a: core::Object?, b: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} (#0#20#isSet ?{core::Object?} #0#20{core::Object?} : let final dynamic #t185 = #0#20#isSet = true in #0#20 = #0#0{({a: core::Object?, b: core::Object?})}.a{core::Object?}) && (let final dynamic #t186 = c = #0#23#isSet ?{core::Object?} #0#23{core::Object?} : let final dynamic #t187 = #0#23#isSet = true in #0#23 = #0#0{({a: core::Object?, b: core::Object?})}.b{core::Object?} in true)) {
{
return 27;
}
}
}
{
hoisted dynamic d;
if(#0#0 is ({c: core::Object?, d: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #0#0{({c: core::Object?, d: core::Object?})}.c{core::Object?} && (let final dynamic #t188 = d = #0#0{({c: core::Object?, d: core::Object?})}.d{core::Object?} in true) && d is core::int) {
{
return 28;
}
}
}
{
{
{
return 0;
}
}
}
}
}
static method switchExpression(dynamic o) core::int {
core::print("o = ${o}");
return block {
core::int #t189;
final synthesized dynamic #0#0 = o;
synthesized core::Object? #0#4;
synthesized core::bool #0#4#isSet = false;
synthesized core::Object? #0#15;
synthesized core::bool #0#15#isSet = false;
synthesized core::Object? #0#20;
synthesized core::bool #0#20#isSet = false;
synthesized core::Object? #0#23;
synthesized core::bool #0#23#isSet = false;
synthesized core::int #0#26;
synthesized core::bool #0#26#isSet = false;
synthesized dynamic #0#30;
synthesized core::bool #0#30#isSet = false;
synthesized dynamic #0#32;
synthesized core::bool #0#32#isSet = false;
synthesized core::bool #0#34;
synthesized core::bool #0#34#isSet = false;
synthesized core::bool #0#38;
synthesized core::bool #0#38#isSet = false;
synthesized dynamic #0#43;
synthesized core::bool #0#43#isSet = false;
synthesized core::List<dynamic> #0#47;
synthesized core::bool #0#47#isSet = false;
synthesized dynamic #0#50;
synthesized core::bool #0#50#isSet = false;
synthesized dynamic #0#53;
synthesized core::bool #0#53#isSet = false;
synthesized core::List<dynamic> #0#58;
synthesized core::bool #0#58#isSet = false;
synthesized dynamic #0#61;
synthesized core::bool #0#61#isSet = false;
synthesized dynamic #0#64;
synthesized core::bool #0#64#isSet = false;
synthesized core::int #0#69;
synthesized core::bool #0#69#isSet = false;
synthesized core::int? #0#84;
synthesized core::bool #0#84#isSet = false;
synthesized dynamic #0#92;
synthesized core::bool #0#92#isSet = false;
synthesized dynamic #0#94;
synthesized core::bool #0#94#isSet = false;
synthesized dynamic #0#96;
synthesized core::bool #0#96#isSet = false;
synthesized dynamic #0#98;
synthesized core::bool #0#98#isSet = false;
#L2:
{
{
if(#C1 =={core::num::==}{(core::Object) core::bool} #0#0) {
#t189 = 1;
break #L2;
}
}
{
if(#0#0 is ({f: core::Object?}) && ((let final dynamic #t190 = (#0#4#isSet ?{core::Object?} #0#4{core::Object?} : let final dynamic #t191 = #0#4#isSet = true in #0#4 = #0#0{({f: core::Object?})}.f{core::Object?}) as core::int in ((#0#4#isSet ?{core::Object?} #0#4{core::Object?} : let final dynamic #t192 = #0#4#isSet = true in #0#4 = #0#0{({f: core::Object?})}.f{core::Object?}) as core::int).{core::num::>=}(#C2){(core::num) → core::bool}) && (let final dynamic #t193 = (#0#4#isSet ?{core::Object?} #0#4{core::Object?} : let final dynamic #t194 = #0#4#isSet = true in #0#4 = #0#0{({f: core::Object?})}.f{core::Object?}) as core::int in ((#0#4#isSet ?{core::Object?} #0#4{core::Object?} : let final dynamic #t195 = #0#4#isSet = true in #0#4 = #0#0{({f: core::Object?})}.f{core::Object?}) as core::int).{core::num::<}(#C3){(core::num) → core::bool}))) {
#t189 = 2;
break #L2;
}
}
{
if(#C4 =={core::num::==}{(core::Object) core::bool} #0#0 || #C5 =={core::num::==}{(core::Object) → core::bool} #0#0) {
#t189 = 3;
break #L2;
}
}
{
if(#0#0 is ({g: core::Object?}) && (let final dynamic #t196 = (#0#15#isSet ?{core::Object?} #0#15{core::Object?} : let final dynamic #t197 = #0#15#isSet = true in #0#15 = #0#0{({g: core::Object?})}.g{core::Object?}) as core::int in #C6 =={core::num::==}{(core::Object) → core::bool} (#0#15#isSet ?{core::Object?} #0#15{core::Object?} : let final dynamic #t198 = #0#15#isSet = true in #0#15 = #0#0{({g: core::Object?})}.g{core::Object?}) as core::int)) {
#t189 = 4;
break #L2;
}
}
{
if(#0#0 is ({a: core::Object?}) && (let final dynamic #t199 = (#0#20#isSet ?{core::Object?} #0#20{core::Object?} : let final dynamic #t200 = #0#20#isSet = true in #0#20 = #0#0{({a: core::Object?})}.a{core::Object?})! in true)) {
#t189 = 5;
break #L2;
}
}
{
if(#0#0 is ({b: core::Object?}) && (!((#0#23#isSet ?{core::Object?} #0#23{core::Object?} : let final dynamic #t201 = #0#23#isSet = true in #0#23 = #0#0{({b: core::Object?})}.b{core::Object?}) == null) && true)) {
#t189 = 6;
break #L2;
}
}
{
if(#0#0 is core::List<dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t202 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C7 && #C1 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t203 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C7 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t204 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic})) {
#t189 = 7;
break #L2;
}
}
{
if(#0#0 is core::List<dynamic> && (#0#34#isSet ?{core::bool} #0#34{core::bool} : let final dynamic #t205 = #0#34#isSet = true in #0#34 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t206 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C7){(core::num) → core::bool}) && #C7 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t207 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C2 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t208 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic})) {
#t189 = 8;
break #L2;
}
}
{
if(#0#0 is core::List<dynamic> && (#0#38#isSet ?{core::bool} #0#38{core::bool} : let final dynamic #t209 = #0#38#isSet = true in #0#38 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t210 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool}) && #C2 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t211 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C8 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t212 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) && #C3 =={core::num::==}{(core::Object) → core::bool} (#0#43#isSet ?{dynamic} #0#43{dynamic} : let final dynamic #t213 = #0#43#isSet = true in #0#43 = #0#0{core::List<dynamic>}.{core::List::[]}((#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t214 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic})) {
#t189 = 9;
break #L2;
}
}
{
if(#0#0 is core::List<dynamic> && (#0#34#isSet ?{core::bool} #0#34{core::bool} : let final dynamic #t215 = #0#34#isSet = true in #0#34 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t216 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C7){(core::num) → core::bool}) && #C8 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t217 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C3 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t218 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) && ((#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t219 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t220 = (#0#50#isSet ?{dynamic} #0#50{dynamic} : let final dynamic #t221 = #0#50#isSet = true in #0#50 = (#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t222 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int in ((#0#50#isSet ?{dynamic} #0#50{dynamic} : let final dynamic #t223 = #0#50#isSet = true in #0#50 = (#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t224 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t225 = (#0#53#isSet ?{dynamic} #0#53{dynamic} : let final dynamic #t226 = #0#53#isSet = true in #0#53 = (#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t227 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int in ((#0#53#isSet ?{dynamic} #0#53{dynamic} : let final dynamic #t228 = #0#53#isSet = true in #0#53 = (#0#47#isSet ?{core::List<dynamic>} #0#47{core::List<dynamic>} : let final dynamic #t229 = #0#47#isSet = true in #0#47 = #0#0{core::List<dynamic>}.{core::List::sublist}(2){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int).{core::num::>}(#C7){(core::num) → core::bool}))) {
#t189 = 10;
break #L2;
}
}
{
if(#0#0 is core::List<dynamic> && (#0#38#isSet ?{core::bool} #0#38{core::bool} : let final dynamic #t230 = #0#38#isSet = true in #0#38 = (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t231 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::>=}(#C2){(core::num) → core::bool}) && #C3 =={core::num::==}{(core::Object) → core::bool} (#0#30#isSet ?{dynamic} #0#30{dynamic} : let final dynamic #t232 = #0#30#isSet = true in #0#30 = #0#0{core::List<dynamic>}.{core::List::[]}(0){(core::int) → dynamic}) && #C4 =={core::num::==}{(core::Object) → core::bool} (#0#32#isSet ?{dynamic} #0#32{dynamic} : let final dynamic #t233 = #0#32#isSet = true in #0#32 = #0#0{core::List<dynamic>}.{core::List::[]}(1){(core::int) → dynamic}) && ((#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t234 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t235 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} #C7 && (let final dynamic #t236 = (#0#61#isSet ?{dynamic} #0#61{dynamic} : let final dynamic #t237 = #0#61#isSet = true in #0#61 = (#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t238 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t239 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int in ((#0#61#isSet ?{dynamic} #0#61{dynamic} : let final dynamic #t240 = #0#61#isSet = true in #0#61 = (#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t241 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t242 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(0){(core::int) → dynamic}) as core::int).{core::num::<}(#C1){(core::num) → core::bool}) && (let final dynamic #t243 = (#0#64#isSet ?{dynamic} #0#64{dynamic} : let final dynamic #t244 = #0#64#isSet = true in #0#64 = (#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t245 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t246 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int in ((#0#64#isSet ?{dynamic} #0#64{dynamic} : let final dynamic #t247 = #0#64#isSet = true in #0#64 = (#0#58#isSet ?{core::List<dynamic>} #0#58{core::List<dynamic>} : let final dynamic #t248 = #0#58#isSet = true in #0#58 = #0#0{core::List<dynamic>}.{core::List::sublist}(2, (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t249 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int, [core::int?]) → core::List<dynamic>}).{core::List::[]}(1){(core::int) → dynamic}) as core::int).{core::num::>}(#C7){(core::num) → core::bool})) && #C5 =={core::num::==}{(core::Object) → core::bool} (#0#43#isSet ?{dynamic} #0#43{dynamic} : let final dynamic #t250 = #0#43#isSet = true in #0#43 = #0#0{core::List<dynamic>}.{core::List::[]}((#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t251 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}).{core::num::-}(1){(core::num) → core::int}){(core::int) → dynamic})) {
#t189 = 11;
break #L2;
}
}
{
if(#0#0 is self::Class && #C1 =={core::num::==}{(core::Object) → core::bool} (#0#69#isSet ?{core::int} #0#69{core::int} : let final dynamic #t252 = #0#69#isSet = true in #0#69 = #0#0{self::Class}.{self::Class::field}{core::int})) {
#t189 = 12;
break #L2;
}
}
{
if(#0#0 is self::Class && #C7 =={core::num::==}{(core::Object) → core::bool} #0#0{self::Class}.{self::Class::finalField}{core::int}) {
#t189 = 13;
break #L2;
}
}
{
if(#0#0 is self::Class && #C2 =={core::num::==}{(core::Object) → core::bool} (#0#69#isSet ?{core::int} #0#69{core::int} : let final dynamic #t253 = #0#69#isSet = true in #0#69 = #0#0{self::Class}.{self::Class::field}{core::int}) && #C8 =={core::num::==}{(core::Object) → core::bool} #0#0{self::Class}.{self::Class::getter}{core::int}) {
#t189 = 14;
break #L2;
}
}
{
if(#0#0 is self::Class) {
#t189 = 15;
break #L2;
}
}
{
if(#0#0 =={core::Object::==}{(core::Object) → core::bool} #C9) {
#t189 = 16;
break #L2;
}
}
{
if(#0#0 is ({e: core::Object?}) && !(#0#0{({e: core::Object?})}.e{core::Object?} =={core::Object::==}{(core::Object) → core::bool} #C10)) {
#t189 = 17;
break #L2;
}
}
{
if(#0#0 is core::Map<core::int, core::int> && (!((#0#84#isSet ?{core::int?} #0#84{core::int?} : let final dynamic #t254 = #0#84#isSet = true in #0#84 = #0#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?}) == null) || null is core::int && #0#0{core::Map<core::int, core::int>}.{core::Map::containsKey}(#C3){(core::Object?) → core::bool}) && ((#0#84#isSet ?{core::int?} #0#84{core::int?} : let final dynamic #t255 = #0#84#isSet = true in #0#84 = #0#0{core::Map<core::int, core::int>}.{core::Map::[]}(#C3){(core::Object?) → core::int?}) as{Unchecked} core::int).{core::num::>=}(#C11){(core::num) → core::bool}) {
#t189 = 18;
break #L2;
}
}
{
if(#0#0 is core::List<dynamic> && (#0#26#isSet ?{core::int} #0#26{core::int} : let final dynamic #t256 = #0#26#isSet = true in #0#26 = #0#0{core::List<dynamic>}.{core::List::length}{core::int}) =={core::num::==}{(core::Object) → core::bool} #C1) {
#t189 = 19;
break #L2;
}
}
{
if(#0#0 is core::bool) {
#t189 = 20;
break #L2;
}
}
{
if(#0#0 is core::Map<dynamic, dynamic> && o{core::Map<dynamic, dynamic>}.{core::Map::isEmpty}{core::bool}) {
#t189 = 21;
break #L2;
}
}
{
if(#0#0 is core::Map<dynamic, dynamic> && (!((#0#92#isSet ?{dynamic} #0#92{dynamic} : let final dynamic #t257 = #0#92#isSet = true in #0#92 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic}) == null) || null is dynamic && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C12){(core::Object?) → core::bool}) && (#0#92#isSet ?{dynamic} #0#92{dynamic} : let final dynamic #t258 = #0#92#isSet = true in #0#92 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C12){(core::Object?) → dynamic}) is core::int) {
#t189 = 22;
break #L2;
}
}
{
if(#0#0 is core::Map<dynamic, dynamic> && (!((#0#94#isSet ?{dynamic} #0#94{dynamic} : let final dynamic #t259 = #0#94#isSet = true in #0#94 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic}) == null) || null is dynamic && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C1){(core::Object?) → core::bool}) && (#0#94#isSet ?{dynamic} #0#94{dynamic} : let final dynamic #t260 = #0#94#isSet = true in #0#94 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C1){(core::Object?) → dynamic}) is core::String) {
#t189 = 23;
break #L2;
}
}
{
hoisted dynamic a;
if(#0#0 is core::Map<dynamic, dynamic> && (!((#0#96#isSet ?{dynamic} #0#96{dynamic} : let final dynamic #t261 = #0#96#isSet = true in #0#96 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic}) == null) || null is dynamic && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C7){(core::Object?) → core::bool})) {
a = #0#96#isSet ?{dynamic} #0#96{dynamic} : let final dynamic #t262 = #0#96#isSet = true in #0#96 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C7){(core::Object?) → dynamic};
#t189 = 24;
break #L2;
}
}
{
hoisted core::int b;
if(#0#0 is core::Map<dynamic, dynamic> && (!((#0#98#isSet ?{dynamic} #0#98{dynamic} : let final dynamic #t263 = #0#98#isSet = true in #0#98 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) == null) || null is dynamic && #0#0{core::Map<dynamic, dynamic>}.{core::Map::containsKey}(#C2){(core::Object?) → core::bool}) && (#0#98#isSet ?{dynamic} #0#98{dynamic} : let final dynamic #t264 = #0#98#isSet = true in #0#98 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) is core::int) {
b = (#0#98#isSet ?{dynamic} #0#98{dynamic} : let final dynamic #t265 = #0#98#isSet = true in #0#98 = #0#0{core::Map<dynamic, dynamic>}.{core::Map::[]}(#C2){(core::Object?) → dynamic}) as{Unchecked} core::int;
#t189 = 25;
break #L2;
}
}
{
if(#0#0 is (core::Object?, core::Object?) && #C12 =={core::num::==}{(core::Object) → core::bool} #0#0{(core::Object?, core::Object?)}.$1{core::Object?} && #C1 =={core::num::==}{(core::Object) → core::bool} #0#0{(core::Object?, core::Object?)}.$2{core::Object?}) {
#t189 = 26;
break #L2;
}
}
{
hoisted dynamic c;
if(#0#0 is ({a: core::Object?, b: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} (#0#20#isSet ?{core::Object?} #0#20{core::Object?} : let final dynamic #t266 = #0#20#isSet = true in #0#20 = #0#0{({a: core::Object?, b: core::Object?})}.a{core::Object?})) {
c = #0#23#isSet ?{core::Object?} #0#23{core::Object?} : let final dynamic #t267 = #0#23#isSet = true in #0#23 = #0#0{({a: core::Object?, b: core::Object?})}.b{core::Object?};
#t189 = 27;
break #L2;
}
}
{
hoisted dynamic d;
if(#0#0 is ({c: core::Object?, d: core::Object?}) && #C12 =={core::num::==}{(core::Object) → core::bool} #0#0{({c: core::Object?, d: core::Object?})}.c{core::Object?} && (let final dynamic #t268 = d = #0#0{({c: core::Object?, d: core::Object?})}.d{core::Object?} in true) && d is core::int) {
#t189 = 28;
break #L2;
}
}
{
if(true) {
#t189 = 0;
break #L2;
}
}
}
} =>#t189;
}
static method test(dynamic expected, dynamic value) dynamic {
self::expect(expected, self::ifCase(value));
self::expect(expected, self::ifCaseElse(value));
self::expect(expected, self::switchStatement(value));
self::expect(expected, self::switchExpression(value));
}
static method main() dynamic {
self::test(0, 0);
self::test(1, 1);
self::test(2, ({f: 3}));
self::test(2, ({f: 4}));
self::test(3, 6);
self::test(3, 7);
self::test(4, ({g: 8}));
self::test(5, ({a: 1}));
self::test(6, ({b: 2}));
self::test(0, ({b: null}));
self::test(0, <core::int>[1, 3]);
self::test(7, <core::int>[1, 2]);
self::test(8, <core::int>[2, 3]);
self::test(8, <core::int>[2, 3, 4]);
self::test(8, <core::int>[2, 3, 4, 5]);
self::test(9, <core::int>[3, 4, 5]);
self::test(9, <core::int>[3, 4, 6, 5]);
self::test(10, <core::int>[4, 5, 0, 3]);
self::test(11, <core::int>[5, 6, 0, 3, 7]);
self::test(12, new self::Class::•(1, 0));
self::test(12, new self::Class::•(1, 1));
self::test(12, new self::Class::•(1, 2));
self::test(13, new self::Class::•(0, 2));
self::test(13, new self::Class::•(2, 2));
self::test(14, new self::Class::•(3, 4));
self::test(15, new self::Class::•(3, 5));
self::test(15, new self::Class::•(4, 5));
self::test(16, "foo");
self::test(17, ({e: "baz"}));
self::test(0, ({e: "bar"}));
self::test(18, <core::int, core::int>{5: 16});
self::test(18, <core::int, core::int>{5: 17});
self::test(19, <core::bool>[true]);
self::test(19, <core::String>["foo"]);
self::test(20, true);
self::test(20, false);
self::test(21, <dynamic, dynamic>{});
self::test(22, <core::int, core::int>{0: 0});
self::test(22, <core::int, core::int>{0: 1});
self::test(0, <core::int, core::String>{0: "foo"});
self::test(23, <core::int, core::String>{1: "foo"});
self::test(23, <core::int, core::String>{1: "foo", 2: "bar"});
self::test(0, <core::int, core::int>{1: 0});
self::test(24, <core::int, core::String>{2: "foo"});
self::test(24, <core::int, core::int>{2: 0});
self::test(25, <core::int, core::int>{3: 0});
self::test(0, <core::int, core::String>{3: "foo"});
self::test(26, (0, 1));
self::test(27, ({a: 0, b: 1}));
self::test(27, ({a: 0, b: "foo"}));
self::test(28, ({c: 0, d: 1}));
self::test(28, ({c: 0, d: 2}));
self::test(0, ({c: 0, d: "foo"}));
core::print("success");
}
static method expect(dynamic expected, dynamic actual) dynamic {
core::print("${expected} = ${actual} ?");
if(!(expected =={core::Object::==}{(core::Object) core::bool} actual)) {
throw "Expected ${expected}, actual ${actual}";
}
}
constants {
#C1 = 1
#C2 = 3
#C3 = 5
#C4 = 6
#C5 = 7
#C6 = 8
#C7 = 2
#C8 = 4
#C9 = "foo"
#C10 = "bar"
#C11 = 16
#C12 = 0
}