decl `dummy`2 = undef, `arrayVar`3 = `window`0 ⌜⋆⌝ "Array", `functionVar`4 = `window`0 ⌜⋆⌝ "Function", `stringVar`5 = `window`0 ⌜⋆⌝ "String", `regexpVar`6 = `window`0 ⌜⋆⌝ "RegExp", `booleanVar`7 = `window`0 ⌜⋆⌝ "Boolean", `numberVar`8 = `window`0 ⌜⋆⌝ "Number", `dateVar`9 = `window`0 ⌜⋆⌝ "Date", `errorVar`10 = `window`0 ⌜⋆⌝ "Error", `argumentsVar`11 = `window`0 ⌜⋆⌝ "Arguments", `objectVar`12 = `window`0 ⌜⋆⌝ "Object", `dummyAddressVar`13 = `window`0 ⌜⋆⌝ "dummyAddress", window = `window`0 inID: 46520 scratch (11) in ID: 46510 (`window`0).("dummyAddress") = undef ID: 41950 (`window`0).("Arguments") = undef ID: 41990 (`window`0).("rand") = undef ID: 42030 (`window`0).("x") = undef ID: 42070 (`window`0).("x") = 0.0 ID: 42110 scratch_0 = toObj `window`0 ⌜⋆⌝ "Math" ID: 42160 scratch_1 = new `argumentsVar`11(`dummyAddressVar`13) ID: 42200 merge ID: 42210 (scratch_1).("length") = 0.0 ID: 42250 scratch_2 = scratch_0 ⌜⋆⌝ "random"(scratch_0, scratch_1) ID: 42320 merge ID: 42330 if isprim scratch_2 ID: 42610 scratch_3 = tonum scratch_2 ID: 42390 else ID: 42610 scratch_4 = new `argumentsVar`11(`dummyAddressVar`13) ID: 42440 merge ID: 42450 (scratch_4).("0") = scratch_2 ID: 42490 (scratch_4).("length") = 1.0 ID: 42530 scratch_3 = `numberVar`8(`window`0, scratch_4) ID: 42580 merge ID: 42590 merge ID: 42620 (`window`0).("rand") = scratch_3 ⌜×⌝ 10.0 ID: 42680 :BREAK:: ID: 46250 scratch_0 = ⌞¬⌟ `window`0 ⌜⋆⌝ "rand" ⌜≈⌝ 0.0 ID: 42760 while scratch_0 ID: 46220 merge ID: 42780 :CONTINUE:: ID: 46110 if isprim `window`0 ⌜⋆⌝ "rand" ID: 43120 scratch_0 = tonum `window`0 ⌜⋆⌝ "rand" ID: 42880 else ID: 43120 scratch_1 = new `argumentsVar`11(`dummyAddressVar`13)ID: 42930 merge ID: 42940 (scratch_1).("0") = `window`0 ⌜⋆⌝ "rand" ID: 43000 (scratch_1).("length") = 1.0 ID: 43040 scratch_0 = `numberVar`8(`window`0, scratch_1) ID: 43090 merge ID: 43100 merge ID: 43130 if scratch_0 ⌜%⌝ 2.0 ⌜≈⌝ 0.0 ID: 45510 if isprim `window`0 ⌜⋆⌝ "x" ID: 43550 scratch_0 = `window`0 ⌜⋆⌝ "x" ID: 43270 else ID: 43550 scratch_1 = new `argumentsVar`11(`dummyAddressVar`13)ID: 43320 merge ID: 43330 (scratch_1).("0") = true ID: 43370 (scratch_1).("length") = 1.0 ID: 43410 scratch_0 = `window`0 ⌜⋆⌝ "x" ⌜⋆⌝ "valueOf"(`window`0 ⌜⋆⌝ "x", scratch_1)ID: 43520 merge ID: 43530 merge ID: 43560 if isprim `window`0 ⌜⋆⌝ "rand" ID: 43930 scratch_2 = `window`0 ⌜⋆⌝ "rand" ID: 43650 else ID: 43930 scratch_3 = new `argumentsVar`11(`dummyAddressVar`13)ID: 43700 merge ID: 43710 (scratch_3).("0") = true ID: 43750 (scratch_3).("length") = 1.0 ID: 43790 scratch_2 = `window`0 ⌜⋆⌝ "rand" ⌜⋆⌝ "valueOf"(`window`0 ⌜⋆⌝ "rand", scratch_3)ID: 43900 merge ID: 43910 merge ID: 43940 if isprim scratch_0 ID: 44190 scratch_4 = scratch_0 ID: 43990 else ID: 44190 scratch_5 = new `argumentsVar`11(`dummyAddressVar`13)ID: 44040 merge ID: 44050 (scratch_5).("length") = 0.0 ID: 44090 scratch_4 = scratch_0 ⌜⋆⌝ "toString"(scratch_0, scratch_5)ID: 44160 merge ID: 44170 merge ID: 44200 if isprim scratch_2 ID: 44450 scratch_6 = scratch_2 ID: 44250 else ID: 44450 scratch_7 = new `argumentsVar`11(`dummyAddressVar`13)ID: 44300 merge ID: 44310 (scratch_7).("length") = 0.0 ID: 44350 scratch_6 = scratch_2 ⌜⋆⌝ "toString"(scratch_2, scratch_7)ID: 44420 merge ID: 44430 merge ID: 44460 if isprim scratch_4 ID: 44560 scratch_8 = scratch_4 ID: 44510 else ID: 44560 throw "TypeError" ID: 44540 merge ID: 44570 if isprim scratch_6 ID: 44670 scratch_9 = scratch_6 ID: 44620 else ID: 44670 throw "TypeError" ID: 44650 merge ID: 44680 if typeof scratch_8 ⌜≡⌝ "string" ID: 45020 scratch_10 = scratch_8 ⌜++⌝ tostr scratch_9 ID: 44780 else ID: 45020 if typeof scratch_9 ⌜≡⌝ "string" ID: 44990 scratch_10 = tostr scratch_8 ⌜++⌝ scratch_9ID: 44890 else ID: 44990 scratch_10 = tonum scratch_8 ⌜+⌝ tonum scratch_9ID: 44970 merge ID: 45000 merge ID: 45030 (`window`0).("x") = scratch_10 ID: 45070 else ID: 45510 if isprim `window`0 ⌜⋆⌝ "x" ID: 45420 scratch_0 = tonum `window`0 ⌜⋆⌝ "x" ID: 45180 else ID: 45420 scratch_1 = new `argumentsVar`11(`dummyAddressVar`13)ID: 45230 merge ID: 45240 (scratch_1).("0") = `window`0 ⌜⋆⌝ "x" ID: 45300 (scratch_1).("length") = 1.0 ID: 45340 scratch_0 = `numberVar`8(`window`0, scratch_1)ID: 45390 merge ID: 45400 merge ID: 45430 (`window`0).("x") = scratch_0 ⌜−⌝ 1.0 ID: 45490 merge ID: 45520 scratch_0 = toObj `window`0 ⌜⋆⌝ "Math" ID: 45570 scratch_1 = new `argumentsVar`11(`dummyAddressVar`13)ID: 45610 merge ID: 45620 (scratch_1).("length") = 0.0 ID: 45660 scratch_2 = scratch_0 ⌜⋆⌝ "random"(scratch_0, scratch_1)ID: 45730 merge ID: 45740 if isprim scratch_2 ID: 46020 scratch_3 = tonum scratch_2 ID: 45800 else ID: 46020 scratch_4 = new `argumentsVar`11(`dummyAddressVar`13)ID: 45850 merge ID: 45860 (scratch_4).("0") = scratch_2 ID: 45900 (scratch_4).("length") = 1.0 ID: 45940 scratch_3 = `numberVar`8(`window`0, scratch_4) ID: 45990 merge ID: 46000 merge ID: 46030 (`window`0).("rand") = scratch_3 ⌜×⌝ 10.0 ID: 46090 merge ID: 46120 scratch_0 = ⌞¬⌟ `window`0 ⌜⋆⌝ "rand" ⌜≈⌝ 0.0 ID: 46200 merge ID: 46230 merge ID: 46260 scratch_0 = new `argumentsVar`11(`dummyAddressVar`13) ID: 46300 merge ID: 46310 (scratch_0).("0") = `window`0 ⌜⋆⌝ "x" ID: 46370 (scratch_0).("length") = 1.0 ID: 46410 scratch_1 = `window`0 ⌜⋆⌝ "print"(`window`0, scratch_0) ID: 46480 merge ID: 46490