Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ufuzz failure #5724

Closed
alexlamsl opened this issue Oct 28, 2022 · 1 comment · Fixed by #5725
Closed

ufuzz failure #5724

alexlamsl opened this issue Oct 28, 2022 · 1 comment · Fixed by #5725
Labels

Comments

@alexlamsl
Copy link
Collaborator

// original code
// (beautified)
var _calls_ = 10, a = 100, b = 10, c = 0;

class C0 {
    static c = --b + [][[ a++ + function() {
        for (var brake1 = 5; --b + (a && a[--b + (typeof f0 == "function" && --_calls_ >= 0 && f0(3, {}, typeof f1 == "function" && --_calls_ >= 0 && f1((c = 1 + c, 
        (/[a2][^e]+$/ << -3 != (5 === "function")) * ((38..toString() ^ "foo") == (3 !== NaN))))))]) && brake1 > 0; --brake1) {
            var brake2 = 5;
            do {
                switch ({
                    a: typeof (c = 1 + c, (38..toString() >> -0 | (c = c + 1, 25)) !== (Object.isExtensible(a) && (a.var *= ("c" * "", 
                    [] ^ 22))))
                }.c) {
                  default:
                    {
                        var expr4 = 1 === 1 ? a : b;
                        for (var [ key4 ] in expr4) {
                            c = 1 + c;
                            var a_2 = expr4[key4];
                            c = 1 + c, (NaN < true || (23..toString(), "number")) == (null >= ([ , 0 ].length === 2) !== (true !== "bar"));
                        }
                    }

                  case --b + [ a++ + [ (c = 1 + c, (c = c + 1, -2 - "object") == (Object.isExtensible(a) && (a[a++ + +function b_2() {
                    }()] = ("" ^ "function") < false % 5))) ].get ].static:
                    var a = typeof (c = 1 + c, "c" / "number" + (-3 && !0o644n) << ("b" > undefined) + {} / -5), foo = (c = c + 1) + "undefined";
                    {
                        var brake7 = 5;
                        do {
                            {
                                var brake8 = 5;
                                while ((c = 1 + c, ((/[a2][^e]+$/ & -4) === 5 >= false) < (-5 <= "number" >= ("foo" !== "number"))) && --brake8 > 0) {
                                    c = 1 + c, 22 % /[a2][^e]+$/ !== ([ , 0 ].length === 2) <= "function" != ("object" * NaN || "number" | "bar");
                                }
                            }
                        } while (typeof (c = 1 + c, (Object.isExtensible(a) && ({
                            done: a[c = 1 + c, (-0 <= 4 != "object" * -2) >>> (5 >>> "object" & ("function" && 4))]
                        } = {
                            done: 22 ^ -0
                        })) / ([], undefined) << ((Object.isExtensible(foo) && (foo[c = 1 + c, 
                        ((Object.isExtensible(foo) && (foo[c = 1 + c, 0 === 0 && NaN ^ 23..toString() && (NaN << []) - (null ^ 25)] = -1 !== false)) == ("c" || 24..toString())) >>> ("function" === undefined | (2 | "function"))] = 24..toString() << /[a2][^e]+$/)) > (2 != undefined))) && --brake7 > 0);
                    }
                    b--;
                    break;

                  case typeof {}:
                    try {
                        {
                            var brake12 = 5;
                            while ((c = 1 + c, Object.isExtensible(foo) && (foo.async = ("object" << {} ^ ("foo" | "c")) - (c = c + 1, 
                            c = c + 1, 1))) && --brake12 > 0) {
                                c = 1 + c, (a >>= (5 > "bar") + ("c" === /[a2][^e]+$/)) === (-0 !== false != (c = c + 1, 
                                2));
                            }
                        }
                    } finally {
                        c = 1 + c, (Infinity ^ 22 | (-0 | "c")) > (Infinity | "b") + (0 >= {});
                    }
                    {
                        var brake15 = 5;
                        L18743: do {
                            {
                            }
                        } while (a && typeof a.b == "function" && --_calls_ >= 0 && (c = 1 + c, 
                        (38..toString() >> 1 ^ {} == [ , 0 ][1]) > ("object" !== "c") % ("" >> false), 
                        a.b)`${c = 1 + c, ("" ^ NaN) + (null == 3) << (([] !== "b") >>> (true << "undefined"))}
tmpl` && --brake15 > 0);
                    }
                    break;

                  case (c = c + 1) + (typeof a_2 !== "undefined"):
                    switch ([ (c = 1 + c, "function" === 0 == -5 << "bar" | (Object.isExtensible(foo) && (foo.null = ([ , 0 ].length === 2 == 23..toString()) - ([ , 0 ][1] || 24..toString())))) ].done) {
                      case (c = c + 1) + {
                            get: (c = 1 + c, -3 + "foo" >= (-3 ^ undefined) >= -2 * false << (false !== 0)),
                            then: (c = 1 + c, (Object.isExtensible(a) && ([ a[+((Object.isExtensible(foo) && (foo[(c = c + 1) + ~a] = ("" == "undefined") - (23..toString() < 2))) > ~([ , 0 ].length === 2 & 1))] ] = [ ~5 * (2, 
                            true) ])) > ((null || "undefined") ^ -1 > 5)),
                            next: (c = 1 + c, Object.isExtensible(foo) && (foo.in += (([ , 0 ].length === 2) >= "function") + (2 != "number") || -2 >= 0 === (false ^ -0)))
                        }[c = 1 + c, (22 && 22 && ("a" && 23..toString())) % ((true || null) << ("function" == "undefined"))]:
                        c = 1 + c, (+1 && 4 / "foo") ^ (("number", 0) ^ -3 << "a");
                        c = 1 + c, !(-3 > 24..toString()) * ~([] ^ "c");
                        break;

                      case (c = c + 1) + b--:
                        c = 1 + c, void (Object.isExtensible(a) && (a.async **= "" === true)) !== (Object.isExtensible(foo) && (foo.NaN >>>= (c = c + 1, 
                        5) <= (foo = [ , 0 ][1] / undefined)));
                        break;

                      case --b + ((c = 1 + c, ([ , 0 ].length === 2 && 4) - (c = c + 1, 
                        5) ^ "" >> "a" < (a = 25 > 23..toString())) || a || 3).toString():
                        c = 1 + c, (false > NaN ^ "" != -3) != (Object.isExtensible(foo) && (foo.var = [] >> 24..toString()), 
                        false, 1);
                        break;

                      case (c = c + 1) + function async() {
                        }:
                        c = 1 + c, ({} | []) << 38..toString() * "undefined" == ({} ^ Infinity) >>> ("a" >>> false);
                        c = 1 + c, Object.isExtensible(a) && (a[{
                            value: (c = 1 + c, (Object.isExtensible(foo) && (foo.in = "foo" == 3)) + ([] ^ -3) >= ("" >>> {}) - ("function" - 4))
                        }] = (foo = NaN << -2 != true * -2) > ("number" % 0 == (Object.isExtensible(foo) && (foo.value = 24..toString() + true))));
                        break;
                    }
                    break;
                }
            } while (a && --brake2 > 0);
        }
        if (--b + (b *= a)) {
            a && typeof a.async == "function" && --_calls_ >= 0 && a.async();
        } else {
            var c_2 = (c = c + 1) + /[abc4]/.test((typeof a_1 == "number" || b || 5).toString()), undefined_1 = (c = c + 1) + function c_2_2() {
                {
                    var b = function f0() {
                    }((c = 1 + c, 2 / null >> ("object" === undefined) >> ((Object.isExtensible(a) && (a.a = true || -5)) >> (23..toString() > "a"))), null);
                }
            }();
        }
        for (var brake28 = 5; (c = c + 1) + [][-2] && brake28 > 0; --brake28) {
            var expr29 = /[a2][^e]+$/;
            L18744: for (var key29 in expr29) {
                {
                    var expr30 = (--b + (c_2 && c_2[(undefined_1 %= 5 && -1) << (-4 || -0) <= (-3 % -0 == (Number(0xdeadn << 16n | 0xbeefn) !== 5))]) || 3).toString()[b--];
                    L18745: for (var key30 in expr30) {
                        var a_2;
                    }
                }
            }
        }
        a++ + (b = a);
        {
            var brake33 = 5;
            while ([ (c = c + 1) + +function() {
                return c = 1 + c, ([] == 22) >= 22 * 5 == (-3 > false && "c" % {});
            }(), b -= a ][--b + (a++ + b-- || 7).toString()[(c = c + 1) + -a]] && --brake33 > 0) {
                var brake35 = 5;
                do {
                    c = c + 1;
                } while ((c = c + 1) + (typeof a == "function" && --_calls_ >= 0 && a`${typeof f2 == "function" && --_calls_ >= 0 && f2((c = 1 + c, 
                ((Object.isExtensible(a) && (a[c = 1 + c, c = c + 1, (false | 1) % (-4 != -0)] += "foo" && {})) !== undefined < "c") - ((foo += -2 - -1) == 1 < "number")))}`) && --brake35 > 0);
            }
        }
    }(), --b + (a && a.get) ].length];
    static [{
        [{
            "\t": [ --b + ~(false <= undefined < ([] <= 1), ([] ^ 2) != -2 / "b") ][--b + []],
            1.5: --b + (typeof f2 == "function" && --_calls_ >= 0 && f2()),
            [a]: a++ + (a++ + {
                Infinity: a++ + (0 === 1 ? a : b),
                ...a,
                in: a++ + a
            }[--b + (a++ + (typeof f1 == "function" && --_calls_ >= 0 && f1(null, a++ + ({
                in: (c = 1 + c, (25 & 3) % (-0 >> "undefined"), ("" > 0) + (24..toString() >= "")),
                static: (c = 1 + c, true / [] / (!0o644n > "a") <= ("" <= "a" ^ ("c" ^ "bar")))
            }[c = 1 + c, void void (null << "")] || 0).toString()[--b + (typeof a == "function" && --_calls_ >= 0 && a((c = 1 + c, 
            ("b" >> "foo" ^ 24..toString() >> "c") > ((Object.isExtensible(a) && (a[c = 1 + c, 
            true % undefined >= (2 !== 38..toString()) != (a /= (/[a2][^e]+$/ ^ "number") < ([] < ([ , 0 ].length === 2)))] >>>= "object" >= "")) < ("undefined" == "number"))), "object", ""))])) || a || 3).toString()] || 8).toString()[[ --b + (22 in {
                NaN: (c = c + 1) + (typeof f2 == "function" && --_calls_ >= 0 && f2("b")),
                undefined: (c = c + 1) + 2
            }), a++ + (a && a.undefined) ]]
        }]: --b + (typeof a == "function" && --_calls_ >= 0 && a(-5, -3)),
        foo: a++ + ((c = c + 1) + 3 ? --b + (b + 1 - .1 - .1 - .1) : a++ + ("object" in {
            next: (c = c + 1) + (typeof {
                static: (c = c + 1) + ((c = c + 1, "bar" * true) !== (0 && "b") % 22 ** 2 || a || 3).toString()
            }[a++ + --b] || a || 3).toString()
        })),
        [0 === 1 ? a : b]: (a++ + (a = --b + (typeof b !== "unknown")) || a || 3).toString(),
        set: --b + (typeof b == "function")
    }.Infinity] = b--;
    get var() {
        {
            var brake37 = 5;
            do {
                try {
                    false;
                } catch (NaN_1) {} finally {
                    {
                        var a = function f1(Infinity_1) {
                            function f2(async_2) {
                                function f3({}) {
                                }
                                var a_2 = f3("");
                                function f4(NaN, b, await) {
                                }
                                var foo = f4([ , 0 ][1], (c = 1 + c, (("" & {}) === 23..toString() / 24..toString()) <= ((25 | "") <= ("foo" ^ 25))));
                                function* f5() {
                                }
                                var b = f5().next();
                                function f6() {
                                }
                                var foo = f6(/[a2][^e]+$/, this);
                                function* f7(a_2, foo) {
                                }
                                var NaN_2 = f7("object", Infinity, (c = 1 + c, (-"undefined" & (-1 & 22)) >= ("bar" !== "object") - (undefined == "object"))).next();
                            }
                            var Infinity_1_1 = f2(-0, Infinity_1_1 = (c = 1 + c, 
                            22 * "foo" % ([] !== 5) && (Object.isExtensible(Infinity_1_1) && (Infinity_1_1[Infinity_1 && typeof Infinity_1.done == "function" && --_calls_ >= 0 && Infinity_1.done()] -= [ , 0 ][1] >>> "function" !== (NaN, 
                            25)))));
                            function f8() {
                                function f9(bar) {
                                }
                                var b_1 = f9();
                            }
                            var b_1 = f8((c = c + 1) + typeof a++);
                        }(b--, {
                            get: --b + (a && a.foo),
                            null: a++ + (a && a[++a])
                        }[-b]);
                    }
                }
            } while (a++ + a++ && --brake37 > 0);
        }
        {
            var await = function f10(bar_1 = "b") {
                return a++ + bar_1;
            }([ , 0 ].length === 2, undefined, --b);
        }
        return await && typeof await.value == "function" && --_calls_ >= 0 && await.value((null && {}) >>> (NaN == "a") && ("number" ^ false) / (this >> true), "undefined");
    }
}

{
    switch ([ , 0 ].length === 2) {
      default:
        L18746: for (var brake46 = 5; typeof (a++ + {
            next: --b + +b
        }.value) && brake46 > 0; --brake46) {
            var expr47 = (c = c + 1) + (a && typeof a.a == "function" && --_calls_ >= 0 && (/[abc4]/g.exec((a++ + {
                [+(([] % 24..toString() != -2 >>> 23..toString()) + ("number" >> -5 <= true * "bar"))]() {
                    c = 1 + c, (a += {} < -4) % ([ , 0 ].length === 2 ^ "function") | 25 / "c" < (22 <= "bar");
                    c = 1 + c, (Object.isExtensible(a) && (a.b = ("b" | "b") <= ("undefined", 
                    38..toString()))) << ((-4, -1) < (25 < "a"));
                },
                length: "a"
            }.get || b || 5).toString()), a.a)(2));
            for (var key47 in expr47) {
                c = 1 + c;
                var a_2 = expr47[key47];
                --b + (b-- || a || 3).toString();
            }
        }
        var a_2 = a_2 && typeof a_2.value == "function" && --_calls_ >= 0 && a_2.value(), foo = (c = c + 1) + (--b + a_2 ? typeof foo == "function" && --_calls_ >= 0 && foo() : foo && typeof foo.foo == "function" && --_calls_ >= 0 && foo.foo(..."" + a_2, [ , 0 ][1]));

      case (c = c + 1) + new function a_2() {
            {}
            var NaN_2 = !a, a_2 = (c = c + 1) + [ {
                foo: [] in [ (c = 1 + c, (-3 < undefined != (c = c + 1, "function")) % ("" <= "" ^ ("b" ^ 38..toString()))), (c = 1 + c, 
                (3 !== 24..toString() || Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                (c = c + 1, "bar" + "b") || - -5 >> "bar" % 1] = 3 * "function")) | (3 > "object") % ("undefined" <= 1)) ],
                set: a++ + {
                    c: (c = 1 + c, ((-5 | /[a2][^e]+$/) << ([ , 0 ].length === 2) % -5) - (3 >> Infinity && null == NaN))
                }[c = 1 + c, ~Infinity <= (NaN_2 += /[a2][^e]+$/ % "function") | ("bar" == "undefined") << ("c" !== "b")]
            } ];
            switch (--b + (undefined in {})) {
              default:
                [ a++ + !function a_2_1() {
                }() ][/[abc4]/g.exec((((c = 1 + c, ("function" / "foo" & (4 ^ 0)) << (("function" > "a") >>> !1)) ? (c = 1 + c, 
                (-4 + null >>> 3 * "bar") / ("foo" - "object" >>> ("foo" || []))) : (c = 1 + c, 
                (c = c + 1, "foo") <= "a" >> false <= (null === "number" | 38..toString() ^ 0))) || b || 5).toString())];

              case (c = c + 1) + 24..toString():
                ;
                switch ([ [ (c = 1 + c, ("bar" !== "bar" | "object" ^ 5) <= (24..toString() << 3 > (-2 == [ , 0 ][1]))) ] ]) {
                  case (c = c + 1) + [ (c = c + 1) + /[abc4]/.test(((c = 1 + c, 
                    (-3 ^ NaN) << ("number" != []) < (3 > [] | (NaN_2 += "b" < -3))) || b || 5).toString()), ...[ ..."" + a_2, (c = 1 + c, 
                    (Object.isExtensible(foo) && (foo.get = -5 != 3)) !== ("bar" != undefined) == ("a" >> -3, 
                    Object.isExtensible(a_2) && (a_2[c = 1 + c, Object.isExtensible(a_2) && (a_2.in += (c = c + 1, 
                    Infinity / "b") | (true ^ 23..toString()) > (c = c + 1, 1))] ^= -4 == 25))), (c = 1 + c, 
                    1 != [] != ([ , 0 ].length === 2 & /[a2][^e]+$/), /[a2][^e]+$/ === 25, 
                    "b" >>> 38..toString()) ] ].done:
                    a++ + /[abc4]/.test(((c = 1 + c, !("c" >= 1) > ("b" || "bar") * (null && 3)) || b || 5).toString());
                    break;

                  default:
                  case --b + a_2:
                    var undefined_1 = a++ + ((c = 1 + c, (([ , 0 ].length === 2 || "undefined") === "" < undefined) < ({} === "number" | (Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                    ((c = c + 1, [ , 0 ].length === 2) <= (NaN >= -0)) % (Object.isExtensible(NaN_2) && (NaN_2[(c = c + 1) + NaN_2] = (Infinity & -5) != (-2 == NaN)))] += null << "object")))) ? (c = 1 + c, 
                    (("number" != "") <= [ , 0 ][1] >>> 5) >>> (1 % 4 << 23..toString() - "undefined")) : (c = 1 + c, 
                    (Object.isExtensible(NaN_2) && (NaN_2.var %= this !== true) || NaN << -2) <= (NaN_2 += 25 != {}) * (5 ^ {}))), async, a_2;
                    L18747: for (var brake60 = 5; [ (c = 1 + c, (-0 || 38..toString()) * (2 >>> -5) & ((0 && -0) ^ -5 != "c")), (c = 1 + c, 
                    Object.isExtensible(foo) && (foo[--b] = ((Object.isExtensible(a_2) && ([ a_2.done ] = [ 1 & "bar" ])) >= (Object.isExtensible(async) && (async.c += 2 !== -0))) >> (NaN - true & this / "undefined"))) ].get && brake60 > 0; --brake60) {
                        var brake61 = 5;
                        do {
                            c = 1 + c, ((false != [ 3n ][0] > 2) >= "function" >>> "b") * ("object" >= this | "bar" !== 22);
                        } while ((c = 1 + c, c = c + 1, Object.isExtensible(foo) && (foo[c = 1 + c, 
                        (Infinity | {}) >>> (1 >= "c") > ("c" ^ [ , 0 ][1] || (c = c + 1, 
                        -4))] = false & "object") || "bar" << "") && --brake61 > 0);
                    }
                    var async = b += a, let_2 = "";
                    break;

                  case false in [ (c = c + 1) + a_2, --b + (typeof a_2 == "function" && --_calls_ >= 0 && a_2`${c = 1 + c, 
                    (Object.isExtensible(a_2) && ([ a_2.static ] = [ (-5 == true) - "" % {} ])) + (c = c + 1, 
                    "function" <= true)}${c = 1 + c, (c = c + 1, 2 | "") << (23..toString() >> 25) + (true, 
                    undefined)}${c = 1 + c, (c = c + 1, !0o644n) % ("c" >> Number(0xdeadn << 16n | 0xbeefn)) == ("undefined" << "a" === -4 << 38..toString())}`) ]:
                    break;
                }
                switch ((c = c + 1) + {
                    then: (c = c + 1, "" | "object") < ((-42n).toString() / 2 && ({} && 1)),
                    b: typeof async == "function" && --_calls_ >= 0 && async(38..toString())
                }.value) {
                  case a++ + (0 === 1 ? a : b):
                    break;

                  default:
                  case b |= a:
                    var let_2_1 = a++ + [ (c = 1 + c, ~((c = c + 1, "undefined") | (Object.isExtensible(a_2) && (a_2.Infinity <<= "a" >>> -0)))), (c = 1 + c, 
                    ((/[a2][^e]+$/ & 24..toString()) > (Number(0xdeadn << 16n | 0xbeefn) | 1)) + ((Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                    ("" ^ 23..toString()) == (24..toString() || 0) !== ((25 && 38..toString()) ^ 5 >= undefined)] = "object" & -4)) >> ("undefined" | true))) ];
                    break;

                  case (c = c + 1) + [ ..."" + foo, (c = c + 1) + {
                        [(c = 1 + c, "a" % "foo" === (1 && "function") === void (null & 23..toString()))]: (c = 1 + c, 
                        c = c + 1, 38..toString() & 4 | !0o644n << "function"),
                        null: (c = 1 + c, (("" || 23..toString()) != "undefined" + null) << -(Infinity == true))
                    }[c = 1 + c, ((-5, -1) && (undefined_1 -= null >= 23..toString())) >>> ((Object.isExtensible(undefined_1) && ({
                        [(c = 1 + c, (false > "b") >> ("foo" >= 22) > ~("bar" !== undefined))]: undefined_1[c = 1 + c, 
                        Object.isExtensible(a_2) && (a_2.b /= ((let_2 += 25 * "number") || this / "bar") + ("function" <= 25) ** (this !== "b"))]
                    } = {
                        done: "foo" / -4
                    })) | [ , 0 ][1] + 2)] ][!((4 === 4 ^ (-42n).toString() >>> 0) == (c = c + 1, 
                    Object.isExtensible(async) && ([ async.foo ] = [ "c" / 23..toString() ])))]:
                    try {
                        {
                            var expr67 = (c = 1 + c, ("undefined" > /[a2][^e]+$/ | {} !== "undefined") < (-4 / "foo" || 25 ^ "b"));
                            for (var key67 in expr67) {
                                c = 1 + c, (-2 >> 38..toString() << (1 === "b")) + ((3 ^ [ , 0 ][1]) << ([ , 0 ].length === 2 !== NaN));
                            }
                        }
                    } catch (a_2) {
                        c = 1 + c, "" << NaN > (this != ([ , 0 ].length === 2)) | (c = c + 1, 
                        NaN & "");
                        c = 1 + c, (Object.isExtensible(async) && ({
                            "": async.__proto__
                        } = {
                            "": 4 / -1 <= - -1
                        })) * (Object.isExtensible(NaN_2) && (NaN_2.NaN ^= (24..toString() >= 38..toString(), 
                        -5 >>> 5)));
                    }
                    c = c + 1;
                    break;
                }
                break;

              case (c = c + 1) + (("a" + [ , 0 ][1] != (null | "object")) - (/[a2][^e]+$/ % 4 & "object" >= null)):
                if (-4 in {
                    next: (c = c + 1) + (0 === 1 ? a : b),
                    null: a++ + (typeof let_2_1 == "function" && --_calls_ >= 0 && let_2_1((c = 1 + c, 
                    ("b" === "" & Infinity === 3) >>> ([ , 0 ][1] / "object" >> ("b" ^ -0)))))
                }) {
                    var await = a++ + /[abc4]/g.exec((((c = 1 + c, (2 !== 2) < ("" | "c") != (c = c + 1, 
                    "bar" & "function")) || 0).toString()[c = 1 + c, ((yield_1 += "undefined" * "a") ^ ("foo" ^ true)) === -(4 * 38..toString())] || b || 5).toString()), yield_1 = --b + a--;
                } else {
                    return c = 1 + c, (NaN === 38..toString()) / (23..toString() != "c") / (({} || -3) ^ "b" !== true);
                }
                if ({
                    "": !((Object.isExtensible(yield_1) && (yield_1[(c = c + 1) + {
                        "-2": (c = 1 + c, !(-4 >= 22) && /[a2][^e]+$/ == [ , 0 ][1] ^ "object" <= 2)
                    }[c = 1 + c, (2 / "c" | 38..toString() * -4) + (("function" && 4) | (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                    ((-0, 25) & -{}) + ((undefined, 3) > (22 >= [ , 0 ][1]))] += 1 & "a")))]] = (let_2_1 = "undefined" >>> 23..toString()) * ("object" >>> ""))) == 25 < -5 > ("" !== 5))
                }[((c = c + 1) + --b || 8).toString()[23..toString() in [ (c = 1 + c, 
                (2 << "function" || false >= "function") ^ (await = 3 << []) / ([ , 0 ][1] * [])), (c = 1 + c, 
                (null == Number(0xdeadn << 16n | 0xbeefn)) >> (-1 != -1) ^ (-5 >>> [] ^ 38..toString() < {})) ]]]) {
                    var brake77 = 5;
                    do {
                        ((c = 1 + c, (let_2 = [ , 0 ].length === 2 == 0 === true < "bar") != (23..toString() ^ {}) + ("a" ^ 25)) || a || 3).toString();
                    } while (--b + (((async &= "number" <= []) || (/[a2][^e]+$/, 
                    5)) != (Infinity != 38..toString()) * ("object" >>> this)) && --brake77 > 0);
                } else {
                    switch ((c = c + 1) + void function let_2_1_2() {
                        c = 1 + c, ((let_2 += -1 - null) >> 5 / "number") - ((undefined && 25) >> (Object.isExtensible(a_2) && (a_2.value += -0 - -4)));
                    }()) {
                      default:
                        c = c + 1;
                        var Infinity_1;

                      case "b" in [ (c = 1 + c, (Object.isExtensible(async) && (async.var = (Object.isExtensible(await) && (await[c = 1 + c, 
                        void ((Infinity_1 *= [ , 0 ][1] - "number") && 0 * this)] >>= (-42n).toString() & 0)) ^ 24..toString() > undefined)) * (([] ^ "undefined") % +"foo")) ]:
                        break;

                      case {
                            Infinity: (c = 1 + c, ((this | this) <= (this, 1)) >>> (Infinity >>> 3) - (c = c + 1, 
                            "c")),
                            async: (c = 1 + c, (24..toString() <= -3 || 25 << "object") | (NaN ^ [ , 0 ][1], 
                            Object.isExtensible(let_2_1) && (let_2_1[c = 1 + c, 
                            (([ , 0 ].length === 2) + "" | 38..toString() < this) + (/[a2][^e]+$/ + -2 >>> ("a" <= 22))] = -5 << "undefined"))),
                            next: (c = 1 + c, "b" / null !== (c = c + 1, 0) !== (/[a2][^e]+$/ >> "bar" | (Infinity_1 = -4 >> -5)))
                        }[[ (c = 1 + c, + - -3 + (true >>> "a" ^ this < 1)), (c = 1 + c, 
                        (5 >= null | +3) ^ (async %= "number" >= undefined) < (0 ^ "number")) ][c = 1 + c, 
                        ("c" === ([ , 0 ].length === 2) && 23..toString() < 38..toString()) === 5 > "function" < (([ , 0 ].length === 2) >= Infinity)]]:
                        ;
                        ;
                        if (c = 1 + c, (false < "undefined") + ("a", NaN) | (Object.isExtensible(foo) && (foo.Infinity = ~"" == -3 / "a"))) {
                            c = 1 + c, ((c = c + 1, /[a2][^e]+$/) == (3 != "object")) >> (Object.isExtensible(Infinity_1) && (Infinity_1.c = (-1 !== this) + (([ , 0 ].length === 2) <= 23..toString())));
                        }
                        break;

                      case a++ + ("function" in {
                            [(c = 1 + c, let_2_1 *= (25 >= "function" | "number" != "function") != "function" << 22 <= [ , 0 ][1] - null)]: (c = 1 + c, 
                            ((this | "c") == "function" - 24..toString()) / ((22 | 25) === (Object.isExtensible(async) && (async[c = 1 + c, 
                            (NaN % -2 === ([] ^ 0)) - (4 * Infinity >> ("c", "c"))] &= 2 > 3))))
                        }):
                        break;
                    }
                }
                if ((c = c + 1) + (typeof f1 == "function" && --_calls_ >= 0 && f1(-1))) {
                    var brake88 = 5;
                    while (--b + (typeof f4 == "function" && --_calls_ >= 0 && f4((c = 1 + c, 
                    (Object.isExtensible(async) && (async[c = 1 + c, ("foo" || null || "c" > 0) <= ((this && 5) ^ 0 <= 5)] = "" & 22)) % (-1 / "object") - ((-0 == true) >>> (-2 ^ 23..toString()))), 3, -2)) && --brake88 > 0) {
                        switch ({
                            1.5: (c = 1 + c, (Object.isExtensible(undefined_1) && (undefined_1[a--] = (5 || "b") ^ "undefined" & "")) | (/[a2][^e]+$/ > -3) + -4 * {}),
                            b: (c = 1 + c, (+"function" && ([ , 0 ].length === 2) + Infinity) / ("" - 25 ^ (Object.isExtensible(undefined_1) && (undefined_1[c = 1 + c, 
                            ~("object" << "a") ^ [] === "" !== null / /[a2][^e]+$/] %= -0 >> [ , 0 ][1])))),
                            0: (c = 1 + c, (-0 & 2) > (2 & NaN) & (-0 ^ false) << [] + 5),
                            c: (c = 1 + c, (-5 ^ []) % (-4 - true) % ((c = c + 1, 
                            "undefined") <= (NaN == null)))
                        }.undefined) {
                          default:
                            c = 1 + c, (-0 >>> -5 | "bar" < 23..toString()) ^ (Object.isExtensible(undefined_1) && (undefined_1[c = 1 + c, 
                            (c = c + 1, "bar") + (c = c + 1, [ , 0 ].length === 2) ^ (undefined & (-42n).toString()) === (c = c + 1, 
                            "bar")] += 3 === 25) || false > -0);

                          case --b + (1 === 1 ? a : b):
                            c = 1 + c, Object.isExtensible(a_2) && (a_2[(c = c + 1) + (!"number" << ([ , 0 ][1] & "object") != (22 && undefined) >= "undefined" >> -0)] = void (0 || 24..toString()) < ([ , 0 ].length === 2 || null, 
                            "b" < ([ , 0 ].length === 2)));
                            c = 1 + c, 5 <= 24..toString() <= (true == undefined) & (Infinity_1 = "undefined" >= undefined) < /[a2][^e]+$/ % [];
                            break;

                          case a++ + !b:
                            break;

                          case --b + (typeof NaN_2 == "function" && --_calls_ >= 0 && NaN_2(-2)):
                            c = 1 + c, NaN_2 -= 3 - ([ , 0 ].length === 2) + (c = c + 1, 
                            "c") < (("a" | "function") !== (22 ^ [ , 0 ][1]));
                            c = 1 + c, c = c + 1, 1 >>> "undefined" || 23..toString() << 22;
                            c = 1 + c, yield_1 = 2 == "function" !== void -1 & ([ , 0 ][1] <= "number") * (this || -0);
                            break;
                        }
                    }
                } else {
                    {
                        var expr97 = (c = 1 + c, Number(0xdeadn << 16n | 0xbeefn) - 0 + (c = c + 1, 
                        23..toString()) === (Object.isExtensible(foo) && (foo.null ^= (1 % null, 
                        Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, ((NaN <= 0) >> (1 ^ 38..toString())) * ((Object.isExtensible(a_2) && (a_2.static -= 38..toString() % 5)) * (23..toString() && 23..toString()))] /= null !== this)))));
                        for (var key97 in expr97) {
                            c = 1 + c;
                            var foo_2 = expr97[key97];
                            c = 1 + c, (24..toString() != this) * (-2 <= "undefined") << (this != false) + (/[a2][^e]+$/ !== "a");
                        }
                    }
                    if (c = 1 + c, Object.isExtensible(a_2) && (a_2[(c = c + 1) + {
                        "-2": (c = 1 + c, (-5 >= 23..toString() ^ "" * 22) << ([] / 3 || "object" >>> "c")),
                        c: (c = 1 + c, (Object.isExtensible(NaN_2) && (NaN_2[~a] = -2 ^ 3 || -4 != -4)) == (NaN === "object") >> 23..toString() + "foo")
                    }[(c = c + 1) + (23..toString() >> "object" !== 24..toString() / 24..toString() === (38..toString() > "" ^ (c = c + 1, 
                    /[a2][^e]+$/)))]] >>>= (5 || {}) >>> ([ , 0 ][1] !== {}) <= (undefined & "function") >> ("foo" << "bar"))) {
                        c = 1 + c, ((Infinity_1 += 1 === false) || (c = c + 1, 24..toString())) & 0 < "" <= ("undefined" ^ "bar");
                    }
                    L18748: {
                    }
                    {
                    }
                }
                break;

              case --b + (b = a):
                switch (b = a) {
                  case --b + []:
                    switch ({}.__proto__) {
                      default:
                        c = 1 + c, (1 >= -1) - (this && /[a2][^e]+$/) ^ false === 38..toString() !== undefined <= this;
                        c = 1 + c, (-0 / this === (Object.isExtensible(yield_1) && ([ yield_1[c = 1 + c, 
                        Infinity <= -2 === (22 != -3) & -5 - 4 * undefined] ] = [ -0 && [ , 0 ].length === 2 ]))) <= ("number" >>> [ , 0 ][1] !== (foo <<= NaN != 1));

                      case {
                            value: (c = 1 + c, (-1 > undefined) >>> [ , 0 ][1] * "foo" << (Object.isExtensible(async) && (async[c = 1 + c, 
                            ((-1 !== /[a2][^e]+$/) << (Object.isExtensible(async) && (async[c = 1 + c, 
                            ("foo" == 3 != (Object.isExtensible(yield_1) && (yield_1[c = 1 + c, 
                            1 * false >>> (22 || "foo") | [] < -4 != -0 / 2] = -5 - "number"))) < (Object.isExtensible(async) && (async[c = 1 + c, 
                            (NaN && "b") - ("c", "c") <= (NaN === "b") >>> (Object.isExtensible(async) && (async.get = (24..toString(), 
                            -3)))] = 24..toString() & 23..toString())) >> ("function" <= 23..toString())] = "foo" - 23..toString()))) / (("c" + /[a2][^e]+$/) % (c = c + 1, 
                            this))] += true & false)) - ("undefined" < []))
                        }[c = 1 + c, Object.isExtensible(async) && (async[{
                            null: (c = 1 + c, ([ , 0 ][1] != 22) % (/[a2][^e]+$/ || 24..toString()) ^ (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                            Object.isExtensible(async) && (async[a++ + (b &= a)] /= ("" % true & (Object.isExtensible(Infinity_1) && (Infinity_1[c = 1 + c, 
                            (async %= ("b" || 4) / (38..toString(), 0)) >>> ("number" % [] !== (this & 4))] = 4 << "number"))) === (/[a2][^e]+$/ > 2 | "foo" * 2))] += 22 !== 5)) == (let_2_1 += /[a2][^e]+$/ / [ , 0 ][1])),
                            next: (c = 1 + c, ([] === Number(0xdeadn << 16n | 0xbeefn)) - (!0o644n - -2) >> (([ , 0 ].length === 2) << ([ , 0 ].length === 2) > (this && true))),
                            "": (c = 1 + c, ~(this * true == 38..toString() << "object")),
                            [(c = 1 + c, (4 > -5) >>> (async += 22 << NaN) && (await += (Object.isExtensible(a_2) && (a_2.async = "foo" && true)) <= NaN / null))]: (c = 1 + c, 
                            (-2 ^ "undefined") < ("function" > NaN) <= ((Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                            (foo = (2 != "b") < - -3) & ((-42n).toString() << 24..toString() & true === "function")] &= 4 - "number")) <= 5 + {})),
                            b: (c = 1 + c, c = c + 1, (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                            (Object.isExtensible(let_2_1) && (let_2_1[a++ + !a] >>>= (NaN_2 = null << "c") > (Object.isExtensible(let_2) && (let_2.null ^= {} & 5)))) - ((Object.isExtensible(a_2) && ([ a_2[c = 1 + c, 
                            (Object.isExtensible(let_2) && (let_2.a = "number" >= -5), 
                            4 === this) < (Object.isExtensible(let_2_1) && ([ let_2_1[c = 1 + c, 
                            -(-4 || /[a2][^e]+$/) > (-38..toString() | true * 5)] ] = [ 22 < 3 ])) << (Object.isExtensible(async) && (async[c = 1 + c, 
                            (Object.isExtensible(a_2) && ({
                                foo: a_2[c = 1 + c, ({} ^ 23..toString()) * (-3) ** 23..toString() < (c = c + 1, 
                                "c" < 0)]
                            } = {
                                foo: [ , 0 ][1] > ([ , 0 ].length === 2)
                            })) - ("number" >> {}), ("b" && undefined) != (null == undefined)] = 23..toString() >= -5))] ] = [ 5 == -0 ])) >> ("undefined" <= 5))] = "foo" >= null)) % (-4 === -0))
                        }[{
                            3: (c = 1 + c, (-1 | 1) >>> (2 === 24..toString()) & ({} <= "", 
                            /[a2][^e]+$/ !== 3))
                        }.var]] *= (Object.isExtensible(let_2) && (let_2.then = 23..toString() ^ -5), 
                        "number" !== "") % ("bar" >> "number" > (-0 || {})))]:
                        break;

                      case --b + (typeof f2 == "function" && --_calls_ >= 0 && f2(...[ (c = 1 + c, 
                        ("a" - ([ , 0 ].length === 2) && 24..toString() >>> undefined) / (-0 * false != (c = c + 1, 
                        "function"))) ], (c = 1 + c, ((Object.isExtensible(undefined_1) && (undefined_1[c = 1 + c, 
                        ~(-3 ^ 24..toString()) << (void false ^ /[a2][^e]+$/ % -5)] += null + 2)) == (/[a2][^e]+$/ | [ , 0 ].length === 2)) >> (-2 << 25) % (-2 > 2)), (c = 1 + c, 
                        (38..toString() >> Infinity) + true * "foo" + (Object.isExtensible(a_2) && (a_2[--b] = 0 % 5 + (false + "bar")))))):
                        c = 1 + c, (2 >> "object") + (/[a2][^e]+$/ != 25) === ((-4 ^ null) & ("a" ^ "b"));
                        c = 1 + c, ~(-5 / null) === ([] ^ false) * (22 >> NaN);
                        c = 1 + c, !([] >= -2) / ("undefined" >> -0 >> void undefined);
                        break;

                      case (c = c + 1) + ((c = 1 + c, (Object.isExtensible(await) && (await[c = 1 + c, 
                        (23..toString() > Infinity) - Infinity % 38..toString() !== (false ^ 38..toString() ^ (Infinity || 24..toString()))] = [ , 0 ][1] || [ , 0 ].length === 2)) > (2 < []) ^ ("function" > "number") >>> (true >> -4)) ? (c = 1 + c, 
                        Object.isExtensible(a_2) && ([ a_2[a++ + foo] ] = [ ((24..toString() & 3) !== NaN >= "foo") * ((-3 !== Infinity) < (foo = 4 != 3)) ])) : (c = 1 + c, 
                        ((Object.isExtensible(a_2) && (a_2[c = 1 + c, -(Object.isExtensible(let_2) && ([ let_2[c = 1 + c, 
                        Object.isExtensible(a_2) && (a_2[typeof f4 == "function" && --_calls_ >= 0 && f4()] >>>= (c = c + 1, 
                        5 << [ , 0 ][1]) + (NaN % /[a2][^e]+$/ | -0 >> -3))] ] = [ ([ , 0 ].length === 2) / undefined ])) < (let_2 **= ~this >= {} << undefined)] += 24..toString() > "")) != null ** 22) <= !(24..toString() ^ "a"))):
                        c = 1 + c, ((-3 && [ , 0 ][1]) << (false >>> [])) + (4 >= "" | "function" - 1);
                        c = 1 + c, c = c + 1, "function" % "bar" + (-2 >>> 24..toString());
                        break;
                    }

                  default:
                    var a_2_1 = a++ + [ (c = 1 + c, (Object.isExtensible(a_2_1) && (a_2_1[let_2_1 && typeof let_2_1.length == "function" && --_calls_ >= 0 && let_2_1.length((c = 1 + c, 
                    false >= [] != (Object.isExtensible(undefined_1) && (undefined_1.get = "a" || "")) & (5 !== [ , 0 ][1] && 5 >> 4)), true, (c = 1 + c, 
                    (("bar" || 24..toString()) ^ Infinity + 38..toString()) << ((foo = -0 >> 1) > (c = c + 1, 
                    3))))] >>>= 25 > 23..toString() ^ (22, 38..toString()))) === ("number" !== /[a2][^e]+$/) % (4 < "")) ].done;

                  case undefined_1 = (c = c + 1) + (b + 1 - .1 - .1 - .1):
                    {
                        var brake114 = 5;
                        L18749: while ((c = c + 1) + (null in {
                            async: (c = 1 + c, Object.isExtensible(yield_1) && (yield_1.next += (let_2_1 = 38..toString() >> -0) * - -5 >> (("undefined" & [ , 0 ][1]) == (38..toString() ^ "bar")))),
                            get: (c = 1 + c, (undefined_1 = ([ , 0 ].length === 2) - "function") !== ("" && NaN) === ((c = c + 1, 
                            -3) !== ("foo" === false))),
                            a: (c = 1 + c, "a" / ([ , 0 ].length === 2) - ("" || 1) >= (await |= (async = "number" | []) ^ 25 - 5)),
                            static: (c = 1 + c, +((-5 === null) > Infinity >>> "")),
                            null: (c = 1 + c, (/[a2][^e]+$/ - 25 != 25 - Infinity) * (Object.isExtensible(foo) && (foo[--b + -2] /= !"undefined" << (22 != -4))))
                        }) && --brake114 > 0) {
                            var a_2_1 = (c = 1 + c, ("foo" & NaN || "foo" != "a") + (null < "b" | 3 >= false)), a_2 = (c = 1 + c, 
                            a_2_1 += (-3 ^ 38..toString()) / (5 % 1) % ((1 >= -0) / (-3 >> ([ , 0 ].length === 2))));
                        }
                    }
                    switch (Infinity_1) {
                      case typeof a_2_1 != "unknown":
                        c = 1 + c, (yield_1 >>>= ("object" !== "undefined") / ({} === -2)) >>> (null | -2 | -1 == -5);
                        break;

                      case a++ + /[abc4]/.test(((c = 1 + c, ("b" && 5) / ("a" | "function") - ((0 || true) >= "a" + ([ 3n ][0] > 2))) || b || 5).toString()):
                        break;

                      default:
                      case +b:
                        c = 1 + c, (24..toString() != 25 || [] % "function") !== /[a2][^e]+$/ % "" * ([] + Number(0xdeadn << 16n | 0xbeefn));
                        c = 1 + c, ((1 | "undefined") ^ "foo" - "foo") / (25 % 25, 
                        "c" || 4);
                        break;
                    }
                    if (0 === 1 ? a : b) {
                        var a_2_1;
                    } else {
                        return;
                    }
                    break;

                  case [ --b + /[abc4]/g.exec(((c = 1 + c, (23..toString() > ([ , 0 ].length === 2)) * (-5 < this) > (38..toString() <= 22 && -1 | -5)) || b || 5).toString()) ].b:
                    break;
                }
                if (!(((c = c + 1, "undefined") != (-5 | 0)) > ((Infinity_1 = "a" >> [ , 0 ][1]) > (Number(0xdeadn << 16n | 0xbeefn) <= Infinity)))) {
                    var async = function a_2() {
                        c = 1 + c, (3 <= 25) - ([ , 0 ][1] ^ NaN) <= ({} & "number" ^ NaN << -4);
                    }(((c = 1 + c, ((c = c + 1, []) & 3 - -5) !== (-1 >> -5) * (Object.isExtensible(Infinity_1) && ([ Infinity_1.Infinity ] = [ Infinity & false ]))) || 9).toString()[c = 1 + c, 
                    (false != "a") >> (true >> "number") === ((Object.isExtensible(let_2_1) && ([ let_2_1.NaN ] = [ "foo" && Infinity ])) ^ (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                    (25 > "undefined") - -"b" >= (({} | "foo") ^ /[a2][^e]+$/ > "")] = "foo" - {})))], typeof await_2, typeof (c = 1 + c, 
                    Object.isExtensible(a_2) && (a_2[false & 3 ^ [] != "object" || (2 & 24..toString()) >>> (Object.isExtensible(a_2_1) && ({
                        done: a_2_1[c = 1 + c, (("bar" ^ 22) >> (25 > 38..toString())) / (Object.isExtensible(a_2) && (a_2[(c = c + 1) + (foo = (c = 1 + c, 
                        (2 == 23..toString()) > (38..toString() >= "foo") & (Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                        ((Object.isExtensible(async) && (async[c = 1 + c, (Object.isExtensible(async) && (async.undefined = (Object.isExtensible(a_2_1) && (a_2_1[c = 1 + c, 
                        ({} && 23..toString() && Infinity > {}) % (/[a2][^e]+$/ * -2 | (Object.isExtensible(let_2_1) && (let_2_1.value = 3 << 1)))] = 4 * 24..toString())) << false + -5)) == ((-42n).toString() % undefined & (c = c + 1, 
                        38..toString()))] = -2 < 4)) != 23..toString() << NaN) >> (NaN >= 38..toString() <= [ , 0 ][1] - undefined)] += "undefined" == 25)) != 1 > -3))] += true < "number" & -3 != 3))]
                    } = {
                        done: Infinity >>> ""
                    }))] = ("bar" || []) == (0 & "object") == (c = c + 1, "bar") >>> (NaN != 2))));
                } else {
                    var brake126 = 5;
                    do {
                        void b;
                    } while ([ (c = 1 + c, "undefined" / 23..toString() * ("b" !== "number") + (c = c + 1, 
                    Object.isExtensible(a_2_1) && (a_2_1[c = 1 + c, "bar" === -3 !== 22 >= "function" === (38..toString() * "foo" | ("foo" || this))] = [ , 0 ][1] && NaN))) ][b--] && --brake126 > 0);
                }
                break;
            }
            return (c = c + 1) + +function a_2() {}();
        }(null, -3, typeof f12 == "function" && --_calls_ >= 0 && f12(0, a++ + (a_2 && a_2.foo), ..."" + foo)):
      case b |= a:
        {
            var c_1 = function f11(a_1) {
                {
                    return +function bar_2() {}();
                }
            }();
        }
        --b;
        break;

      case foo = a++ + (c_1 && c_1.b):
        a++;
        break;
    }
    {
        try {
            {
                var expr136 = await (0 === 1 ? a : b);
                L18750: for (var key136 in expr136) {
                    c = 1 + c;
                    var foo = expr136[key136];
                    {
                        var brake137 = 5;
                        while ((c = c + 1, false in NaN <= 5 / this) && --brake137 > 0) {
                            var brake138 = 5;
                            while (a++ + !b && --brake138 > 0) {
                                try {
                                    {
                                        var NaN_1 = function Infinity(a_2_2 = (c = 1 + c, 
                                        -("" % 3 > "function" >> null)), c_1, NaN_2) {
                                        }(4);
                                    }
                                } catch (b) {} finally {}
                            }
                        }
                    }
                }
            }
        } catch (async_1) {
            {
                var expr141 = (c = c + 1) + (0 === 1 ? a : b);
                for (var key141 in expr141) {
                    c = 1 + c;
                    var bar_1 = expr141[key141];
                    var b_2 = c_1;
                }
            }
            for (var brake143 = 5; !function bar() {
                {
                    var brake144 = 5;
                    L18751: do {
                        var b_1;
                    } while (--b && --brake144 > 0);
                }
                {
                    var foo_2 = function async_1_2(await_1 = (c = 1 + c, c = c + 1, 
                    a_2 = /[a2][^e]+$/ | "" && 4 > 24..toString()), bar_2, async_1) {
                    }((c = 1 + c, "foo" >> [ , 0 ][1] >= (-1 | "a") <= (-1 || null) >>> ([] >> "a")), (c = 1 + c, 
                    (22 % "c" || Object.isExtensible(b_1) && (b_1.a = 23..toString() === "foo")) < (Object.isExtensible(b_1) && (b_1.next = 1 && -3)) + (Object.isExtensible(c_1) && (c_1.Infinity *= 22 < "c"))));
                }
            }() && brake143 > 0; --brake143) {
                switch (new function(a, undefined_1, foo) {
                    switch (c = 1 + c, ((foo = 5 == "function") ^ void "c") + (("bar" || -0) ^ null >= "function")) {
                      case c = 1 + c, ((a_2 = -4 % {}) == (a += -2 % 25)) < ((c = c + 1, 
                        "number") <= ("foo" | "c")):
                        ;
                        break;

                      case c = 1 + c, ([] & 22 ^ (1 ^ "number")) >= (this < 4 === (-0 === "undefined")):
                        ;
                        break;

                      case c = 1 + c, Object.isExtensible(a_2) && (a_2[a++ + [ (c = 1 + c, 
                        ((NaN ^ "b") & 0 + "foo") !== (25 / 2 && 1 < this)) ][[ (c = 1 + c, 
                        ((Object.isExtensible(a) && (a.undefined = [ 3n ][0] > 2 != /[a2][^e]+$/)) === "c" >> true) << (4 < null > ("object" ^ {}))), (c = 1 + c, 
                        +(("foo" << "c") * (5 >>> -1))) ].NaN]] = ("function" != /[a2][^e]+$/ | (c_1 += "foo" <= "bar")) >> (NaN ^ "undefined") * ("foo" << /[a2][^e]+$/)):
                        ;
                        break;

                      default:
                        ;
                    }
                    c = c + 1;
                    {
                    }
                }(/[abc4]/g.exec(((c = 1 + c, ((c_1 <<= 2 | 5) & ~{}) > ((22 | true) ^ "b" % "")) || b || 5).toString()), "bar")) {
                  default:
                    try {
                        c = 1 + c, a_2 = (Object.isExtensible(a_2) && (a_2.foo = 25 - "function")) + ({}, 
                        -4) | (a_2 = {} == "a") == -4 % 2;
                    } catch (async_1_2) {} finally {}
                    if ({
                        done: (c = 1 + c, ((c = c + 1, -2) ^ (c = c + 1, this)) * (undefined / "" || Object.isExtensible(c_1) && (c_1[c = 1 + c, 
                        (null === [ , 0 ][1] && 3 + undefined) >= (/[a2][^e]+$/ < "a" > "bar" % 1)] >>>= 1 != 24..toString()))),
                        then: (c = 1 + c, (5 >= 24..toString() | (23..toString(), 
                        24..toString())) + (25 * "bar" >> (5 > 4)))
                    }) {
                        var brake154 = 5;
                        while ((c = 1 + c, Object.isExtensible(c_1) && (c_1[--b + (a++ + (0 === 1 ? a : b) || 0).toString()[this]] >>>= (2 | []) >> (async_1 <<= 22 & 2) ^ (-0 ^ /[a2][^e]+$/) * (22 - "undefined"))) && --brake154 > 0) {
                            c = 1 + c, c = c + 1, "foo" <= NaN >= /[a2][^e]+$/ + "undefined";
                        }
                    } else {
                        var expr156 = (c = 1 + c, async_1 = ("function", "object") % (23..toString() && -0) ^ "" % 24..toString() * (Object.isExtensible(async_1) && (async_1[c = 1 + c, 
                        (c_1 = 38..toString() !== "") * (0 >> Infinity) ^ (Object.isExtensible(foo) && (foo[c = 1 + c, 
                        (NaN != "c") / ("foo" * true) << ("bar" % -2 < (-0 <= this))] = [ , 0 ].length === 2 ^ 38..toString())) >> (2 ^ [])] = "" != undefined)));
                        for (var key156 in expr156) {
                            c = 1 + c, !-Infinity >> ("c" | undefined || -1 >> null);
                        }
                    }
                    {
                        c = 1 + c, (!null | (Object.isExtensible(c_1) && (c_1.get = 2 - 38..toString()))) != void (true * 3);
                    }

                  case "object" in {
                        NaN: --b + (foo && foo[c = 1 + c, c_1 += (c = c + 1, {} / "bar") & (-5 && false && (Object.isExtensible(c_1) && (c_1.async = null << undefined)))])
                    }:
                    {
                        var expr160 = a++ + a_2;
                        for (var [ key160 ] in expr160) {
                            switch (c = 1 + c, ("object" != 23..toString()) >= ("bar" == -2) || Object.isExtensible(key160) && (key160[(c = c + 1) + {
                                then: (c = 1 + c, this <= 25 <= "undefined" - 24..toString() && -1 / "bar" | -2 ^ "c"),
                                a: (c = 1 + c, ((0 && [ , 0 ][1]) >>> ("foo" << 23..toString())) + ((Infinity ^ "function") + (22 == "function"))),
                                next: (c = 1 + c, ({} & -3 ^ 1 >= 5) << ((Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                                (-0 - 23..toString() << (Object.isExtensible(key160) && ({
                                    Infinity: key160[c = 1 + c, "foo" / "" + (true | "function") <= ((-4 & "function") > (Object.isExtensible(c_1) && (c_1.undefined = -1 >= -5)))]
                                } = {
                                    Infinity: 3 ^ []
                                }))) / ((false !== 2) * (23..toString(), 3))] &= 22 <= -4)) <= 0 - 0)),
                                async: (c = 1 + c, "bar" >>> "object" >>> (-5 == 5) | 4 * "b" ^ -1 >= 0)
                            }] |= 3 >= "function" >= (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                            (Object.isExtensible(c_1) && (c_1.async %= null & "bar")) ^ [] >>> 1 ^ (c = c + 1, 
                            -3, 38..toString())] = "a" * "b")))) {
                              case c = 1 + c, !true !== ("b" | "b") !== (undefined << -4 && "foo" != -1):
                                ;

                              case c = 1 + c, (Infinity >= -4) >>> 3 ** {} <= !(([ , 0 ].length === 2) <= -3):
                                ;

                              case c = 1 + c, (-4 >> 1) - ("bar" !== -2) | (/[a2][^e]+$/ > true) >>> (-2 >= [ , 0 ][1]):
                                ;
                                break;

                              case c = 1 + c, (Infinity || this) <= (async_1 = 2 && false) & "function" / this * (24..toString() == true):
                                ;
                                break;
                            }
                        }
                    }
                    break;

                  case typeof (--b + ("number" in {
                        var: (c = 1 + c, (5 >>> "undefined") - ([] >= []) | (24..toString() < 25 | (undefined, 
                        NaN))),
                        [(c = 1 + c, (-2 > -2) / ("object" >> [ , 0 ][1]) % (4 + /[a2][^e]+$/ <= (38..toString() ^ 22)))]: (c = 1 + c, 
                        ((4 && "a") ^ (c = c + 1, "a")) > ("foo" + 25 | (/[a2][^e]+$/ | Infinity))),
                        done: (c = 1 + c, (-4 < this, [ , 0 ][1] ^ !0o644n) == (false !== 24..toString() !== (c = c + 1, 
                        [ , 0 ].length === 2))),
                        set: (c = 1 + c, (null ^ "foo") >= (NaN == 22) | (Object.isExtensible(a_2) && (a_2.set = ("function" == {}) >>> 24..toString() + 25)))
                    })):
                    --b + b--;
                    var a;
                    c = c + 1;
                    break;

                  case a++ + ~b:
                    if (1 === 1 ? a : b) {
                        var foo_2 = (c = 1 + c, NaN !== "c" == (24..toString() !== !0o644n) ^ (Object.isExtensible(async_1) && (async_1[c = 1 + c, 
                        (false, false) * ("foo" < [ , 0 ][1]) ^ 2 << {} >> (1 | "object")] = -2 || [ , 0 ][1])) < +25);
                    }
                    if (typeof f2 == "function" && --_calls_ >= 0 && f2()) {
                        if (c = 1 + c, ~("undefined" >= {} !== 2 / -0)) {
                            c = 1 + c, c_1 <<= -0 - 5 == -4 > "object" & -24..toString() < "function" % 5;
                        }
                    }
                    {
                        var brake170 = 5;
                        while (--b + (a_2 && a_2[c = 1 + c, ((NaN ^ "object") == [ , 0 ][1] >= -2) - (("c" ^ -2) !== ("b" == 4))]) && --brake170 > 0) {
                            var expr171 = (c = 1 + c, (a -= (null || 4, -0 << {})) % (/[a2][^e]+$/ ^ [ , 0 ][1] ^ false > "undefined"));
                            for (var [ key171 ] in expr171) {
                                c = 1 + c;
                                var foo = expr171[key171];
                                c = 1 + c, ((5 | /[a2][^e]+$/) > ("" < 2)) / (-0 != 25 && "number" < -1);
                            }
                        }
                    }
                    break;
                }
            }
            {
                var brake173 = 5;
                do {
                    try {
                    } finally {
                        c = c + 1;
                        if (--b + {
                            get: (c = 1 + c, ~(NaN / 2) | "foo" << true >>> "bar" - "number")
                        }[c = 1 + c, (a = "object" << 22 <= ([ 3n ][0] > 2) % "undefined") ^ (24..toString() == [ , 0 ][1]) + ([ , 0 ].length === 2 & undefined)]) {
                            var brake178 = 5;
                            while ((c = 1 + c, Object.isExtensible(foo) && (foo[(c = c + 1) + (foo_2 = --b + ((c = 1 + c, 
                            void ((-3, true) << (c = c + 1, -5))) ? (c = 1 + c, 
                            ("object" || 3) >> (25 >= 3) >>> ((25 < this) << 22 * -0)) : (c = 1 + c, 
                            (c_1 |= 25 <= 0 ^ (Object.isExtensible(foo_2) && (foo_2.b = [ , 0 ].length === 2 ^ 22))) < (/[a2][^e]+$/ || 3) >>> ([ , 0 ].length === 2 & Infinity))))] -= -(async_1 = -0 ^ 3) ^ undefined > -4 >= ("number" <= -1))) && --brake178 > 0) {
                                c = 1 + c, ("undefined" - "function") % ("c" | []) == "number" << undefined > (23..toString() != 4);
                            }
                        }
                    }
                } while ((c = c + 1) + {
                    then: --b + void function() {
                        c = 1 + c, ~(c = c + 1, -2, /[a2][^e]+$/);
                        c = 1 + c, (Object.isExtensible(c_1) && (c_1.undefined = "c" !== 0)) & "undefined" != "", 
                        ([] <= -1) - ("bar" == -3);
                    }(),
                    length: await -2,
                    then: typeof a_2_2 == "symbol",
                    done: 1 === 1 ? a : b,
                    a: (c = c + 1) + (0 === 1 ? a : b)
                } && --brake173 > 0);
            }
        }
        if (b = a) {
            try {
                {
                    var expr184 = typeof a != "boolean";
                    for (var key184 in expr184) {
                        c = 1 + c;
                        var await_2 = expr184[key184];
                        c = c + 1;
                    }
                }
            } finally {
                {}
                L18752: for (var brake187 = 5; a++ + true && brake187 > 0; --brake187) {
                    try {
                        {
                            var foo = function b_1() {
                                const Infinity_2 = (c = 1 + c, c = c + 1, (Object.isExtensible(c_1) && (c_1.foo <<= Infinity < /[a2][^e]+$/)) % (foo = "number" && 5));
                            }();
                        }
                    } catch (a_2_1) {
                        var a_2 = (c = 1 + c, (-4 - "number" < ("number" || 22)) >> (4 > null <= (-5 != [ , 0 ][1])));
                    }
                }
                {
                    var brake191 = 5;
                    while (--b + --b && --brake191 > 0) {
                        var b_1 = function f12() {
                            c = 1 + c, (Object.isExtensible(foo) && (foo.done = [ , 0 ].length === 2 === this)) ** (/[a2][^e]+$/ < /[a2][^e]+$/) / (("b" ^ 25) >> (2 && 38..toString()));
                            c = 1 + c, -3 === undefined, c = c + 1, this, (Object.isExtensible(foo) && (foo[c = 1 + c, 
                            Object.isExtensible(c_1) && (c_1[a++ + {
                                done: (c = 1 + c, -5 > "object" < ({} > 38..toString()) && false >= 24..toString() == (-3 == "number")),
                                set NaN(b) {
                                    this.c = "" == "undefined";
                                }
                            }] = (true | "") * ([ , 0 ][1] > undefined) < ((c = c + 1, 
                            true) ^ (23..toString() && false)))] = "undefined" && null)) <= -2 - this;
                            c = 1 + c, ~[ , 0 ][1] / (c = c + 1, Infinity) ^ (Infinity <= "number") >> ([ , 0 ].length === 2 ^ NaN);
                        }(25, "a", "function");
                    }
                }
                c = c + 1;
                {
                    var brake197 = 5;
                    L18753: do {
                        c = c + 1;
                    } while (function foo_2() {
                        L18754: {
                        }
                        {
                            var brake200 = 5;
                            do {
                                c = 1 + c, (Object.isExtensible(c_1) && (c_1.then = [ , 0 ][1] > 22)) !== (foo ^= -3 & {}) | -1 * ([ , 0 ].length === 2) << (38..toString() === !0o644n);
                            } while ((c = 1 + c, Object.isExtensible(b_1) && (b_1[((Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                            ("b" > 2, "object" > false) && (-5 || {}) < ("number" < "number")] /= "c" ^ [ , 0 ][1])) <= ("object" <= 4)) >> ((undefined, 
                            [ , 0 ].length === 2) == [ , 0 ][1] + "undefined")] = ((25 == -1) % ("undefined" / "b"), 
                            (-5 || "bar") >= ([ , 0 ].length === 2) % false))) && --brake200 > 0);
                        }
                        c = c + 1;
                        c = c + 1;
                    }() && --brake197 > 0);
                }
            }
        }
    }
}

{
    var expr204 = --b + {
        ...a
    }[a++ + typeof foo];
    for (var key204 in expr204) {
        c = 1 + c;
        const bar = expr204[key204];
        try {
            {
                var expr206 = a++ + b--;
                for (var key206 in expr206) {
                    c = 1 + c;
                    var yield_1 = expr206[key206];
                    c = c + 1;
                }
            }
        } finally {
            {
                var brake208 = 5;
                L18755: do {
                    (c = c + 1) + typeof a++;
                } while (++a && --brake208 > 0);
            }
            for (var brake210 = 5; (c = c + 1) + +function a_1() {}() && brake210 > 0; --brake210) {
                (c = c + 1) + ((c = c + 1) + (bar && typeof bar.value == "function" && --_calls_ >= 0 && bar.value(38..toString())) || 0).toString()[-((key204 += [ , 0 ][1] % 5) & 3 !== 22)];
            }
            --b + (bar && typeof bar.done == "function" && --_calls_ >= 0 && bar.done(Infinity));
        }
    }
}

setImmediate(() => console.log(null, a, b, c, Infinity, NaN, undefined));
@alexlamsl alexlamsl added the bug label Oct 28, 2022
@alexlamsl
Copy link
Collaborator Author

// uglified code
// (beautified)
var _calls_ = 10, a = 100, b = 10, c = 0;

--b, --b, --b, "function" == typeof f2 && 0 <= --_calls_ && f2(), a++, (a++ + {
    Infinity: a++ + b,
    ...a,
    in: a++ + a
}[--b + (a++ + ("function" == typeof f1 && 0 <= --_calls_ && f1(null, a++ + ({
    in: (c = 1 + c, !1 + ("" <= 24..toString())),
    static: (c = 1 + c, !0 / [] / ("a" < !0o644n) <= 1)
}[void (c = 1 + c)] || 0).toString()[--b + ("function" == typeof a && 0 <= --_calls_ && a((c = 1 + c, 
(0 ^ 24..toString() >> "c") > ((Object.isExtensible(a) && (a[c = 1 + c, (2 !== 38..toString()) <= NaN != (a /= 0 < ([] < (2 === [ , 0 ].length)))] >>>= !0)) < !1)), "object", ""))])) || a || 3).toString()] || 8).toString()[[ --b + (22 in {
    NaN: (c += 1) + ("function" == typeof f2 && 0 <= --_calls_ && f2("b")),
    undefined: (c += 1) + 2
}), a++ + (a && a.undefined) ]], --b, "function" == typeof a && 0 <= --_calls_ && a(-5, -3), 
a++, (c += 1) + 3 ? --b : (a++, c += 1, (typeof {
    static: (c += 1) + (0 !== (c += 1, NaN)).toString()
}[a++ + --b] || a || 3).toString()), (a++ + (a = --b + ("unknown" != typeof b)) || a || 3).toString(), 
--b, (() => {
    --b, a++;
    for (var c_2, undefined_1, brake1 = 5; --b + (a && a[--b + ("function" == typeof f0 && 0 <= --_calls_ && f0(3, {}, "function" == typeof f1 && 0 <= --_calls_ && f1((c = 1 + c, 
    !1 * (1 == ("foo" ^ 38..toString()))))))]) && 0 < brake1; --brake1) {
        var brake2 = 5;
        do {
            switch ({
                a: (c = 1 + c, typeof ((38..toString() >> -0 | (c += 1, 25)) !== (Object.isExtensible(a) && (a.var *= 22 ^ []))))
            }.c) {
              default:
                var key4, expr4 = a;
                for ([ key4 ] in expr4) {
                    c = 1 + c;
                    var a_2 = expr4[key4];
                    c = 1 + c, 23..toString();
                }

              case --b + [ a++ + [ (c = 1 + c, c += 1, NaN == (Object.isExtensible(a) && (a[a++ + NaN] = !1))) ].get ].static:
                c = 1 + c;
                var a = typeof (NaN + !0o644n << !1 + {} / -5), foo = (c += 1) + "undefined", brake7 = 5;
                do {} while (0, c = 1 + (c = 1 + c), Object.isExtensible(a) && ({
                    done: a[c = 1 + c, 0]
                } = {
                    done: 22
                }), Object.isExtensible(foo) && (foo[c = 1 + c, ("c" == (Object.isExtensible(foo) && (foo[c = 1 + c, 
                NaN ^ 23..toString() && (NaN << []) - 25] = !0))) >>> 2] = 24..toString() << /[a2][^e]+$/), 
                0 < --brake7);
                b--;
                break;

              case typeof {}:
                try {
                    for (var brake12 = 5; c = 1 + c, Object.isExtensible(foo) && (foo.async = ("object" << {} ^ 0) - (c = c + 1 + 1, 
                    1)) && 0 < --brake12; ) {
                        c = 1 + c, a >>= 0, c += 1;
                    }
                } finally {
                    c = 1 + c;
                }
                for (var brake15 = 5; a && "function" == typeof a.b && 0 <= --_calls_ && (c = 1 + c, 
                38..toString(), a.b)`${c = 1 + c, 0 << (("b" !== []) >>> 1)}
tmpl` && 0 < --brake15; ) {}
                break;

              case (c += 1) + (void 0 !== a_2):
                switch ([ (c = 1 + c, !1 | (Object.isExtensible(foo) && (foo.null = (2 === [ , 0 ].length == 23..toString()) - 24..toString()))) ].done) {
                  case (c += 1) + {
                        get: !0,
                        then: (c = 1 + (c = 1 + c), 0 < (Object.isExtensible(a) && ([ a[+((Object.isExtensible(foo) && (foo[(c += 1) + ~a] = !1 - (23..toString() < 2))) > ~(2 === [ , 0 ].length & 1))] ] = [ -6 ]))),
                        next: (c = 1 + c, Object.isExtensible(foo) && (foo.in += ("function" <= (2 === [ , 0 ].length)) + !0 || !1))
                    }[c = 1 + c, 23..toString() % 1]:
                    c = 1 + (c = 1 + c), 24..toString();
                    break;

                  case (c += 1) + b--:
                    c = 1 + c, Object.isExtensible(a) && (a.async **= !1), Object.isExtensible(foo) && (foo.NaN >>>= (c += 1, 
                    5 <= (foo = NaN)));
                    break;

                  case --b + (c = 1 + c, ((2 === [ , 0 ].length && 4) - (c += 1, 
                    5) ^ 0 < (a = 23..toString() < 25) || a || 3).toString()):
                    c = 1 + c, Object.isExtensible(foo) && (foo.var = [] >> 24..toString());
                    break;

                  case (c += 1) + function() {}:
                    c = 1 + c, 38..toString(), c = 1 + c, Object.isExtensible(a) && (a[{
                        value: (c = 1 + c, (Object.isExtensible(foo) && (foo.in = !1)) + (-3 ^ []) >= ("" >>> {}) - NaN)
                    }] = (foo = !0) > (NaN == (Object.isExtensible(foo) && (foo.value = 24..toString() + !0))));
                }
            }
        } while (a && 0 < --brake2);
    }
    --b + (b *= a) ? a && "function" == typeof a.async && 0 <= --_calls_ && a.async() : (c_2 = (c += 1) + /[abc4]/.test(("number" == typeof a_1 || b || 5).toString()), 
    undefined_1 = (c += 1) + (c = 1 + c, Object.isExtensible(a) && (a.a = !0), void 23..toString()));
    for (var brake28 = 5; (c += 1) + [][-2] && 0 < brake28; --brake28) {
        for (var key29 in /[a2][^e]+$/) {
            (--b + (c_2 && c_2[(undefined_1 %= -1) << -4 <= (NaN == (5 !== Number(0xdeadn << 16n | 0xbeefn)))]) || 3).toString()[b--];
        }
    }
    b = ++a;
    for (var brake33 = 5; [ (c += 1) + (c = 1 + c, +(110 <= (22 == []) == 0)), b -= a ][--b + (a++ + b-- || 7).toString()[(c += 1) + -a]] && 0 < --brake33; ) {
        for (var brake35 = 5; (c = c + 1 + 1) + ("function" == typeof a && 0 <= --_calls_ && a`${"function" == typeof f2 && 0 <= --_calls_ && f2((c = 1 + c, 
        (!1 !== (Object.isExtensible(a) && (a[c = 1 + c, c += 1, 0] += {}))) - (0 == (foo += -1))))}`) && 0 < --brake35; ) {}
    }
    --b, a && a.get, b--;
})();

switch (2 === [ , 0 ].length) {
  default:
    for (var brake46 = 5; a++, --b, 0 < brake46; --brake46) {
        var key47, expr47 = (c += 1) + (a && "function" == typeof a.a && 0 <= --_calls_ && (/[abc4]/g.exec((a++ + {
            [([] % 24..toString() != -2 >>> 23..toString()) + !1]() {
                a += {} < -4, c = 1 + (c = 1 + c), Object.isExtensible(a) && (a.b = 0 <= 38..toString());
            },
            length: "a"
        }.get || b || 5).toString()), a.a)(2));
        for (key47 in expr47) {
            var c = 1 + c, a_2 = expr47[key47];
            --b, (b-- || a || 3).toString();
        }
    }
    var a_2 = a_2 && "function" == typeof a_2.value && 0 <= --_calls_ && a_2.value(), foo = (c += 1) + (--b + a_2 ? "function" == typeof foo && 0 <= --_calls_ && foo() : foo && "function" == typeof foo.foo && 0 <= --_calls_ && foo.foo(..."" + a_2, 0));

  case (c += 1) + new function() {
        var NaN_2 = !a, a_2 = (c += 1) + [ {
            foo: [] in [ (c = 1 + c, (0 != (c += 1, "function")) % ("b" ^ 38..toString() ^ !0)), (c = 1 + c, 
            NaN | (3 !== 24..toString() || Object.isExtensible(a_2) && (a_2[c = 1 + c, 
            c += 1, "barb"] = NaN))) ],
            set: a++ + {
                c: (c = 1 + c, (-5 << (2 === [ , 0 ].length) % -5) - !1)
            }[c = 1 + c, -1 <= (NaN_2 += NaN) | 0]
        } ];
        switch (--b + (void 0 in {})) {
          default:
            a++, /[abc4]/g.exec((c = 1 + (c = 1 + c), c += 1, (!1 <= (!1 | 0 ^ 38..toString()) || b || 5).toString()));

          case (c += 1) + 24..toString():
            switch ([ [ (c = 1 + c, 5 <= (!1 < 24..toString() << 3)) ] ]) {
              case (c += 1) + [ (c += 1) + /[abc4]/.test((c = 1 + c, (-3 << ("number" != []) < ([] < 3 | (NaN_2 += !1)) || b || 5).toString())), ..."" + a_2, (c = 1 + c, 
                !0 !== (Object.isExtensible(foo) && (foo.get = !0)) == (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                Object.isExtensible(a_2) && (a_2.in += (c += 1, NaN | (!0 ^ 23..toString()) > (c += 1, 
                1)))] ^= !1))), (c = 1 + c, "b" >>> 38..toString()) ].done:
                a++, /[abc4]/.test((c = 1 + c, (b || 5).toString()));
                break;

              default:
              case --b + a_2:
                for (var undefined_1 = a++ + (c = 1 + c, (!1 === (2 === [ , 0 ].length || "undefined")) < ("number" === {} | (Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                c += 1, ((2 === [ , 0 ].length) <= !1) % (Object.isExtensible(NaN_2) && (NaN_2[(c += 1) + NaN_2] = !1))] += 0))) ? (c = 1 + c, 
                !1 >>> (1 << 23..toString() - "undefined")) : (c = 1 + c, (Object.isExtensible(NaN_2) && (NaN_2.var %= !0 !== this) || 0) <= (NaN_2 += 25 != {}) * (5 ^ {}))), brake60 = 5; [ (c = 1 + c, 
                0 * 38..toString() & 1), (c = 1 + c, Object.isExtensible(foo) && (foo[--b] = ((Object.isExtensible(a_2) && ([ a_2.done ] = [ 0 ])) >= (Object.isExtensible(async) && (async.c += !0))) >> (NaN & this / "undefined"))) ].get && 0 < brake60; --brake60) {
                    c = 1 + (c = 1 + c), c += 1, Object.isExtensible(foo) && (foo[c = 1 + c, 
                    (1 / 0 | {}) >>> !1 > (c += 1, -4)] = 0), 0;
                }
                var async = b += a, let_2 = "";
                break;

              case !1 in [ (c += 1) + a_2, --b + ("function" == typeof a_2 && 0 <= --_calls_ && a_2`${c = 1 + c, 
                (Object.isExtensible(a_2) && ([ a_2.static ] = [ !1 - "" % {} ])) + (c += 1, 
                !1)}${c = 1 + c, c += 1, 2 << (23..toString() >> 25) + void 0}${c = 1 + c, 
                c += 1, !0o644n % ("c" >> Number(0xdeadn << 16n | 0xbeefn)) == (0 == -4 << 38..toString())}`) ]:
            }
            switch ((c += 1) + {
                then: (c += 1, 0 < ((-42n).toString() / 2 && 1)),
                b: "function" == typeof async && 0 <= --_calls_ && async(38..toString())
            }.value) {
              case a++ + b:
                break;

              default:
              case b |= a:
                var let_2_1 = a++ + [ (c = 1 + c, c += 1, ~("undefined" | (Object.isExtensible(a_2) && (a_2.Infinity <<= 0)))), (c = 1 + c, 
                ((/[a2][^e]+$/ & 24..toString()) > (1 | Number(0xdeadn << 16n | 0xbeefn))) + ((Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                ("" ^ 23..toString()) == (24..toString() || 0) !== (!1 ^ 38..toString())] = 0)) >> 1)) ];
                break;

              case (c += 1) + [ ..."" + foo, (c += 1) + {
                    [(c = 1 + c, !1 === void 23..toString())]: (c = 1 + c, c += 1, 
                    4 & 38..toString() | !0o644n << "function"),
                    null: (c = 1 + c, ("undefinednull" != 23..toString()) << -0)
                }[c = 1 + c, (undefined_1 -= 23..toString() <= null) >>> (2 | (Object.isExtensible(undefined_1) && ({
                    [(c = 1 + c, !0)]: undefined_1[c = 1 + c, Object.isExtensible(a_2) && (a_2.b /= ((let_2 += NaN) || this / "bar") + (!1) ** ("b" !== this))]
                } = {
                    done: NaN
                })))] ][!((!0 ^ (-42n).toString() >>> 0) == (c += 1, Object.isExtensible(async) && ([ async.foo ] = [ "c" / 23..toString() ])))]:
                try {
                    c = 1 + c;
                    for (var key67 in (!0 | "undefined" !== {}) < 25) {
                        c = 1 + c, 38..toString();
                    }
                } catch (a_2) {
                    c = 1 + c, c = 1 + (c += 1), Object.isExtensible(async) && ({
                        "": async.__proto__
                    } = {
                        "": !0
                    }), Object.isExtensible(NaN_2) && (NaN_2.NaN ^= (24..toString(), 
                    38..toString(), -5 >>> 5));
                }
                c += 1;
            }
            break;

          case (c += 1) + 1:
            if (!(-4 in {
                next: (c += 1) + b,
                null: a++ + ("function" == typeof let_2_1 && 0 <= --_calls_ && let_2_1((c = 1 + c, 
                0)))
            })) {
                return c = 1 + c, (NaN === 38..toString()) / ("c" != 23..toString()) / (!0 ^ {});
            }
            var Infinity_1, await = a++ + /[abc4]/g.exec((c = 1 + c, c += 1, (0..toString()[c = 1 + c, 
            (1 ^ (yield_1 += NaN)) == -4 * 38..toString()] || b || 5).toString())), yield_1 = --b + a--;
            if ({
                "": !(0 == (Object.isExtensible(yield_1) && (yield_1[(c += 1) + {
                    "-2": 0
                }[c = 1 + (c = 1 + c), (NaN | -4 * 38..toString()) + (4 | (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                (25 & -{}) + !0] += 0)))]] = 0 * (let_2_1 = "undefined" >>> 23..toString()))))
            }[((c += 1) + --b || 8).toString()[23..toString() in [ 2 ^ (await = 3 << []) / (0 * []), (c = 1 + (c = 1 + c), 
            (null == Number(0xdeadn << 16n | 0xbeefn)) >> !1 ^ -5 >>> [] ^ 38..toString() < {}) ]]]) {
                for (var brake77 = 5; c = 1 + c, ((let_2 = 2 === [ , 0 ].length == 0 == !1) != 25 + (23..toString() ^ {}) || a || 3).toString(), 
                --b + (((async &= "number" <= []) || 5) != (1 / 0 != 38..toString()) * ("object" >>> this)) && 0 < --brake77; ) {}
            } else {
                switch ((c += 1) + (c = 1 + c, let_2 += -1, void (Object.isExtensible(a_2) && (a_2.value += 4)))) {
                  default:
                    c += 1;

                  case "b" in [ (c = 1 + c, (Object.isExtensible(async) && (async.var = (Object.isExtensible(await) && (await[c = 1 + c, 
                    void (Infinity_1 *= NaN)] >>= 0 & (-42n).toString())) ^ void 0 < 24..toString())) * (("undefined" ^ []) % NaN)) ]:
                    break;

                  case {
                        Infinity: (c = 1 + c, ((this | this) <= 1) >>> 0 - (c += 1, 
                        "c")),
                        async: (c = 1 + c, (24..toString() <= -3 || 25) | (Object.isExtensible(let_2_1) && (let_2_1[c = 1 + c, 
                        (2 === [ , 0 ].length) + "" | 38..toString() < this] = -5))),
                        next: (c = 1 + c, NaN !== (c += 1, 0) !== (0 | (Infinity_1 = -1)))
                    }[[ (c = 1 + c, 3 + (1 ^ this < 1)), (c = 1 + c, 3 ^ (async %= !1) < 0) ][c = 1 + c, 
                    ("c" === (2 === [ , 0 ].length) && 23..toString() < 38..toString()) == !1 < (1 / 0 <= (2 === [ , 0 ].length))]]:
                    c = 1 + c, NaN | (Object.isExtensible(foo) && (foo.Infinity = !1)) && (c = 1 + c, 
                    c += 1, Object.isExtensible(Infinity_1)) && (Infinity_1.c = (-1 !== this) + ((2 === [ , 0 ].length) <= 23..toString()));
                    break;

                  case a++ + ("function" in {
                        [(c = 1 + c, let_2_1 *= !1)]: (c = 1 + c, (("c" | this) == "function" - 24..toString()) / (31 === (Object.isExtensible(async) && (async[c = 1 + c, 
                        +(NaN === (0 ^ []))] &= !1))))
                    }):
                }
            }
            if ((c += 1) + ("function" == typeof f1 && 0 <= --_calls_ && f1(-1))) {
                for (var brake88 = 5; --b + ("function" == typeof f4 && 0 <= --_calls_ && f4((c = 1 + c, 
                (Object.isExtensible(async) && (async[c = 1 + c, "foo" <= (!0 ^ (this && 5))] = 0)) % NaN - (!1 >>> (-2 ^ 23..toString()))), 3, -2)) && 0 < --brake88; ) {
                    switch ({
                        1.5: (c = 1 + c, (Object.isExtensible(undefined_1) && (undefined_1[a--] = 5)) | !1 + -4 * {}),
                        b: (c = 1 + c, NaN / (-25 ^ (Object.isExtensible(undefined_1) && (undefined_1[c = 1 + c, 
                        -1 ^ "" === [] !== NaN] %= 0)))),
                        0: (c = 1 + c, !1 & 0 << [] + 5),
                        c: (c = 1 + c, (-5 ^ []) % -5 % (c += 1, !1))
                    }.undefined) {
                      default:
                        c = 1 + c, 23..toString(), Object.isExtensible(undefined_1) && (undefined_1["bar" + (c = (c = 1 + c) + 1 + 1, 
                        2 === [ , 0 ].length) ^ (void 0 & (-42n).toString()) === (c += 1, 
                        "bar")] += !1);

                      case --b + a:
                        c = 1 + c, Object.isExtensible(a_2) && (a_2[(c += 1) + !1] = void 24..toString() < ("b" < (2 === [ , 0 ].length))), 
                        c = 1 + c, 24..toString(), Infinity_1 = !1;
                        break;

                      case a++ + !b:
                        break;

                      case --b + ("function" == typeof NaN_2 && 0 <= --_calls_ && NaN_2(-2)):
                        c = 1 + c, NaN_2 -= 3 - (2 === [ , 0 ].length) + "c" < !0, 
                        c = 1 + (c += 1), c = 1 + (c += 1), yield_1 = !0 & !1 * (this || -0);
                    }
                }
            } else {
                c = 1 + c;
                var key97, expr97 = +Number(0xdeadn << 16n | 0xbeefn) + (c += 1, 
                23..toString()) === (Object.isExtensible(foo) && (foo.null ^= Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                (!1 >> (1 ^ 38..toString())) * ((Object.isExtensible(a_2) && (a_2.static -= 38..toString() % 5)) * (23..toString() && 23..toString()))] /= null !== this)));
                for (key97 in expr97) {
                    c = 1 + c;
                    c = 1 + c, 24..toString();
                }
                c = 1 + c, Object.isExtensible(a_2) && (a_2[(c += 1) + {
                    "-2": (c = 1 + c, (23..toString() <= -5 ^ 0) << ([] / 3 || 0)),
                    c: (c = 1 + c, (Object.isExtensible(NaN_2) && (NaN_2[~a] = -3)) == !1 >> 23..toString() + "foo")
                }[(c += 1) + (23..toString() >> "object" != 24..toString() / 24..toString() === ("" < 38..toString() ^ (c += 1, 
                /[a2][^e]+$/)))]] >>>= 5 >>> (0 !== {}) <= 0) && (c = 1 + c, (Infinity_1 += !1) || (c += 1, 
                24..toString()));
            }
            break;

          case --b + (b = a):
            switch (b = a) {
              case --b + []:
                switch ({}.__proto__) {
                  default:
                    c = 1 + c, 38..toString(), c = 1 + c, Object.isExtensible(yield_1) && ([ yield_1[c = 1 + c, 
                    0] ] = [ -0 ]), foo <<= !0;

                  case {
                        value: (c = 1 + c, 0 << (Object.isExtensible(async) && (async[c = 1 + c, 
                        (!0 << (Object.isExtensible(async) && (async[c = 1 + c, 
                        (0 != (Object.isExtensible(yield_1) && (yield_1[c = 1 + c, 
                        0 | [] < -4 != -0] = NaN))) < (Object.isExtensible(async) && (async[c = 1 + c, 
                        NaN <= !1 >>> (Object.isExtensible(async) && (async.get = (24..toString(), 
                        -3)))] = 24..toString() & 23..toString())) >> ("function" <= 23..toString())] = "foo" - 23..toString()))) / ("c/[a2][^e]+$/" % (c += 1, 
                        this))] += 0)) - ("undefined" < []))
                    }[c = 1 + c, Object.isExtensible(async) && (async[{
                        null: (c = 1 + c, NaN ^ (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                        Object.isExtensible(async) && (async[a++ + (b &= a)] /= 0 == (0 & (Object.isExtensible(Infinity_1) && (Infinity_1[c = 1 + c, 
                        (async %= "b" / (38..toString(), 0)) >>> ("number" % [] != (4 & this))] = 4))))] += !0)) == (let_2_1 += NaN)),
                        next: (c = 1 + c, ([] === Number(0xdeadn << 16n | 0xbeefn)) - (!0o644n - -2) >> ((this && !0) < (2 === [ , 0 ].length) << (2 === [ , 0 ].length))),
                        "": (c = 1 + c, ~(!0 * this == 38..toString() << "object")),
                        [(c = 1 + c, !0 >>> (async += 22) && (await += (Object.isExtensible(a_2) && (a_2.async = !0)) <= NaN))]: (c = 1 + c, 
                        !0 <= ((Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                        (foo = !0) & (-42n).toString() << 24..toString() & !1] &= NaN)) <= 5 + {})),
                        b: (c = 1 + c, c += 1, (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                        (Object.isExtensible(let_2_1) && (let_2_1[a++ + !a] >>>= (NaN_2 = 0) > (Object.isExtensible(let_2) && (let_2.null ^= 5 & {})))) - ((Object.isExtensible(a_2) && ([ a_2[c = 1 + c, 
                        Object.isExtensible(let_2) && (let_2.a = !1), (4 === this) < (Object.isExtensible(let_2_1) && ([ let_2_1[c = 1 + c, 
                        (5 | -38..toString()) < 4] ] = [ !1 ])) << (Object.isExtensible(async) && (async[c = 1 + c, 
                        Object.isExtensible(a_2) && ({
                            foo: a_2[c = 1 + c, ({} ^ 23..toString()) * (-3) ** 23..toString() < (c += 1, 
                            !1)]
                        } = {
                            foo: (2 === [ , 0 ].length) < 0
                        }), !0] = -5 <= 23..toString()))] ] = [ !1 ])) >> !1)] = !1)) % !1)
                    }[{
                        3: (c = 1 + c, -1 >>> (2 === 24..toString()) & !0)
                    }.var]] *= (Object.isExtensible(let_2) && (let_2.then = -5 ^ 23..toString()), 
                    !0 % ({} < 0)))]:
                    break;

                  case --b + ("function" == typeof f2 && 0 <= --_calls_ && f2((c = 1 + c, 
                    ("a" - (2 === [ , 0 ].length) && 24..toString() >>> void 0) / (-0 != "function")), (c = 1 + (c += 1), 
                    ((Object.isExtensible(undefined_1) && (undefined_1[c = 1 + c, 
                    ~(-3 ^ 24..toString()) << 0] += 2)) == (/[a2][^e]+$/ | 2 === [ , 0 ].length)) >> NaN), (c = 1 + c, 
                    (38..toString() >> 1 / 0) + NaN + (Object.isExtensible(a_2) && (a_2[--b] = "0falsebar"))))):
                    c = 1 + (c = 1 + (c = 1 + c));
                    break;

                  case (c += 1) + (c = 1 + c, (Object.isExtensible(await) && (await[c = 1 + c, 
                    (23..toString() > 1 / 0) - 1 / 0 % 38..toString() != (!1 ^ 38..toString() ^ 1 / 0)] = 2 === [ , 0 ].length)) > (2 < []) ^ 0 ? (c = 1 + c, 
                    Object.isExtensible(a_2) && ([ a_2[a++ + foo] ] = [ (!1 !== (3 & 24..toString())) * (!0 < (foo = !0)) ])) : (c = 1 + c, 
                    (0 != (Object.isExtensible(a_2) && (a_2[c = 1 + c, -(Object.isExtensible(let_2) && ([ let_2[c = 1 + c, 
                    Object.isExtensible(a_2) && (a_2["function" == typeof f4 && 0 <= --_calls_ && f4()] >>>= (c += 1, 
                    5))] ] = [ (2 === [ , 0 ].length) / void 0 ])) < (let_2 **= {} << void 0 <= ~this)] += "" < 24..toString()))) <= !("a" ^ 24..toString()))):
                    c = 1 + (c = 1 + c), c += 1, 24..toString();
                }

              default:
                var a_2_1 = a++ + [ (c = 1 + c, NaN === (Object.isExtensible(a_2_1) && (a_2_1[let_2_1 && "function" == typeof let_2_1.length && 0 <= --_calls_ && let_2_1.length((c = 1 + c, 
                [] <= !1 != (Object.isExtensible(undefined_1) && (undefined_1.get = "a")) & 0), !0, (c = 1 + c, 
                ("bar" ^ 1 / 0 + 38..toString()) << ((foo = 0) > (c += 1, 3))))] >>>= 23..toString() < 25 ^ 38..toString()))) ].done;

              case undefined_1 = (c += 1) + (b + 1 - .1 - .1 - .1):
                for (var brake114 = 5; (c += 1) + (null in {
                    async: (c = 1 + c, Object.isExtensible(yield_1) && (yield_1.next += 5 * (let_2_1 = 38..toString() >> -0) >> (0 == ("bar" ^ 38..toString())))),
                    get: (c = 1 + c, "" !== (undefined_1 = (2 === [ , 0 ].length) - "function") == (!1 !== -3)),
                    a: (c = 1 + (c += 1), "a" / (2 === [ , 0 ].length) - 1 >= (await |= 20 ^ (async = "number" | []))),
                    static: 0,
                    null: (c = 1 + (c = 1 + c), !0 * (Object.isExtensible(foo) && (foo[--b - 2] /= 0)))
                }) && 0 < --brake114; ) {
                    var a_2_1 = 2, a_2 = (c = 1 + (c = 1 + c), a_2_1 += (-3 ^ 38..toString()) / 0 % (!0 / (-3 >> (2 === [ , 0 ].length))));
                }
                switch (Infinity_1) {
                  case "unknown" != typeof a_2_1:
                    c = 1 + c, yield_1 >>>= !0 / (-2 === {});
                    break;

                  case a++ + /[abc4]/.test((c = 1 + c, (1 / 0 - ("a" + (2 < 3n) <= !0) || b || 5).toString())):
                    break;

                  default:
                    c = 1 + c, 24..toString(), Number(0xdeadn << 16n | 0xbeefn), 
                    c = 1 + c;
                }
                if (b) {
                    break;
                }
                return;

              case [ --b + /[abc4]/g.exec((c = 1 + c, ((23..toString() > (2 === [ , 0 ].length)) * (-5 < this) > (38..toString() <= 22 && -1) || b || 5).toString())) ].b:
            }
            if ((-5 != (c += 1, "undefined")) > ((Infinity_1 = 0) > (Number(0xdeadn << 16n | 0xbeefn) <= 1 / 0))) {
                for (var brake126 = 5; [ (c = 1 + c, "undefined" / 23..toString() * !0 + (c += 1, 
                Object.isExtensible(a_2_1) && (a_2_1[c = 1 + c, !1 === ("foo" * 38..toString() | "foo")] = 0))) ][b--] && 0 < --brake126; ) {}
            } else {
                async = ((c = 1 + c, ((8 & (c += 1, [])) != -1 * (Object.isExtensible(Infinity_1) && ([ Infinity_1.Infinity ] = [ 0 ])) || 9).toString())[c = 1 + c, 
                0 == ((Object.isExtensible(let_2_1) && ([ let_2_1.NaN ] = [ 1 / 0 ])) ^ (Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                (!0 ^ ("foo" | {})) <= NaN] = "foo" - {})))], c = 1 + c, Object.isExtensible(a_2) && (a_2[0 ^ "object" != [] || (2 & 24..toString()) >>> (Object.isExtensible(a_2_1) && ({
                    done: a_2_1[c = 1 + c, (22 >> (38..toString() < 25)) / (Object.isExtensible(a_2) && (a_2[(c += 1) + (c = 1 + c, 
                    foo = (2 == 23..toString()) > ("foo" <= 38..toString()) & 1 != (Object.isExtensible(NaN_2) && (NaN_2[c = 1 + c, 
                    ((Object.isExtensible(async) && (async[c = 1 + c, (Object.isExtensible(async) && (async.undefined = (Object.isExtensible(a_2_1) && (a_2_1[c = 1 + c, 
                    (23..toString() && {} < 1 / 0) % (NaN | (Object.isExtensible(let_2_1) && (let_2_1.value = 6)))] = 4 * 24..toString())) << -5)) == ((-42n).toString() % void 0 & (c += 1, 
                    38..toString()))] = !0)) != 23..toString() << NaN) >> (38..toString() <= NaN <= NaN)] += !1)))] += 0))]
                } = {
                    done: 0
                }))] = 0 == (c += 1, 0)), void (c = 1 + c));
            }
        }
        return (c += 1) + NaN;
    }("function" == typeof f12 && 0 <= --_calls_ && f12(0, a++ + (a_2 && a_2.foo), ..."" + foo)):
  case b |= a:
    var c_1 = NaN;
    --b;
    break;

  case foo = a++ + (c_1 && c_1.b):
    a++;
}

try {
    var key136, expr136 = await b;
    for (key136 in expr136) {
        c = 1 + c;
        for (var foo = expr136[key136], brake137 = 5; c += 1, !1 in NaN <= 5 / this && 0 < --brake137; ) {
            for (var brake138 = 5; a++ + !b && 0 < --brake138; ) {
                try {} catch (b) {}
            }
        }
    }
} catch (async_1) {
    var key141, expr141 = (c += 1) + b;
    for (key141 in expr141) {
        c = 1 + c;
    }
    for (var key160, foo_2, brake143 = 5; function() {
        var b_1, brake144 = 5;
        do {} while (--b && 0 < --brake144);
        c = 1 + (c = 1 + c), Object.isExtensible(b_1) && (b_1.a = "foo" === 23..toString()), 
        Object.isExtensible(b_1) && (b_1.next = -3), Object.isExtensible(c_1) && (c_1.Infinity *= !1);
    }(), 0 < brake143; --brake143) {
        switch (new function(a, undefined_1, foo) {
            switch (0) {
              case c = 1 + (c = 1 + c), ((a_2 = -4 % {}) == (a += -2)) < (c += 1, 
                !1):
              case c = 1 + c, (this < 4 == !1) <= (22 & [] ^ 1):
              case c = 1 + c, Object.isExtensible(a_2) && (a_2[a++ + [ 0 !== 1 < this ][[ (c = 1 + (c = 1 + c), 
                (0 === (Object.isExtensible(a) && (a.undefined = 2 < 3n != /[a2][^e]+$/))) << (("object" ^ {}) < !1)), (c = 1 + c, 
                0) ].NaN]] = (!0 | (c_1 += !1)) >> 0):
            }
            c += 1;
        }(/[abc4]/g.exec((c = 1 + c, (23 < ((c_1 <<= 7) & ~{}) || b || 5).toString())))) {
          default:
            try {
                c = 1 + c, a_2 = (Object.isExtensible(a_2) && (a_2.foo = NaN)) + -4 | -0 == (a_2 = "a" == {});
            } catch (async_1_2) {}
            c = 1 + c + 1 + 1, Object.isExtensible(c_1) && (c_1[c = 1 + c, !0] >>>= 1 != 24..toString()), 
            c = 1 + c, 24..toString(), 23..toString(), 24..toString();
            for (var brake154 = 5; c = 1 + c, Object.isExtensible(c_1) && (c_1[--b + (a++ + b || 0).toString()[this]] >>>= (2 | []) >> (async_1 <<= 2) ^ NaN) && 0 < --brake154; ) {
                c = 1 + c, c += 1;
            }
            c = 1 + c, Object.isExtensible(c_1) && (c_1.get = 2 - 38..toString());

          case "object" in {
                NaN: --b + (foo && foo[c = 1 + c, c_1 += !1 & (c += 1, {} / "bar")])
            }:
            for ([ key160 ] in a++ + a_2) {
                switch (c = 1 + c, !1 <= ("object" != 23..toString()) || Object.isExtensible(key160) && (key160[(c += 1) + {
                    then: (c = 1 + c, this <= 25 <= "undefined" - 24..toString() && -2),
                    a: (c = 1 + c, 0 >>> ("foo" << 23..toString())),
                    next: (c = 1 + c, (-3 & {} ^ !1) << ((Object.isExtensible(a_2) && (a_2[c = 1 + c, 
                    (-0 - 23..toString() << (Object.isExtensible(key160) && ({
                        Infinity: key160[c = 1 + c, NaN <= ((Object.isExtensible(c_1) && (c_1.undefined = !0)) < 0)]
                    } = {
                        Infinity: 3 ^ []
                    }))) / (!0 * (23..toString(), 3))] &= !1)) <= 0)),
                    async: (c = 1 + c, 0)
                }] |= (Object.isExtensible(a_2) && (a_2[c = 1 + c, (Object.isExtensible(c_1) && (c_1.async %= 0)) ^ [] >>> 1 ^ (c += 1, 
                38..toString())] = NaN)) <= !1)) {
                  case c = 1 + c, !0:
                  case c = 1 + c, !0 >>> 3 ** {} <= !((2 === [ , 0 ].length) <= -3):
                  case c = 1 + c, -3:
                  case c = 1 + c, 1 / 0 <= (async_1 = !1) & "function" / this * (1 == 24..toString()):
                }
            }
            break;

          case typeof (--b + ("number" in {
                var: (c = 1 + c, 5 - ([] <= []) | 24..toString() < 25 | NaN),
                [(c = 1 + c, NaN % (4 + /[a2][^e]+$/ <= (22 ^ 38..toString())))]: (c = 1 + c, 
                0 < ("a" ^ (c += 1, "a"))),
                done: (c = 1 + c, (0 ^ !0o644n) == (!1 !== 24..toString() != (c += 1, 
                2 === [ , 0 ].length))),
                set: (c = 1 + c, !0 | (Object.isExtensible(a_2) && (a_2.set = ("function" == {}) >>> 24..toString() + 25)))
            })):
            --b, b--, c += 1;
            break;

          case a++ + ~b:
            a && (c = 1 + c, foo_2 = 1 == (!0o644n !== 24..toString()) ^ (Object.isExtensible(async_1) && (async_1[c = 1 + c, 
            0 ^ 2 << {} >> 1] = -2)) < 25), "function" == typeof f2 && 0 <= --_calls_ && f2() && (c = 1 + c, 
            ~({} <= "undefined" !== -1 / 0)) && (c = 1 + c, c_1 <<= !1 & -24..toString() < NaN);
            for (var brake170 = 5; --b + (a_2 && a_2[c = 1 + c, -1]) && 0 < --brake170; ) {
                c = 1 + c;
                var key171, expr171 = (a -= -0 << {}) % 0;
                for ([ key171 ] in expr171) {
                    c = 1 + c;
                    foo = expr171[key171];
                    c = 1 + c;
                }
            }
        }
    }
    var brake173 = 5;
    do {
        if (--b + {
            get: -1
        }[c = 1 + (c = 1 + (c += 1)), (a = 0 <= (2 < 3n) % "undefined") ^ (0 == 24..toString()) + (2 === [ , 0 ].length & void 0)]) {
            for (var brake178 = 5; c = 1 + c, Object.isExtensible(foo) && (foo[(c += 1) + (foo_2 = --b + (c = 1 + c, 
            c = 1 + (c += 1), (c_1 |= !1 ^ (Object.isExtensible(foo_2) && (foo_2.b = 2 === [ , 0 ].length ^ 22))) < /[a2][^e]+$/ >>> (2 === [ , 0 ].length & 1 / 0)))] -= !0 ^ -(async_1 = 3)) && 0 < --brake178; ) {
                c = 1 + c, 23..toString();
            }
        }
    } while ((c += 1) + {
        then: --b + (c = 1 + ((c = 1 + c) + 1), void (Object.isExtensible(c_1) && (c_1.undefined = !0))),
        length: await -2,
        then: "symbol" == typeof a_2_2,
        done: a,
        a: (c += 1) + b
    } && 0 < --brake173);
}

if (b = a) {
    try {
        var key184, expr184 = "boolean" != typeof a;
        for (key184 in expr184) {
            c = 1 + c;
            c += 1;
        }
    } finally {
        for (var brake187 = 5; a++ + !0 && 0 < brake187; --brake187) {
            try {
                foo = (c = 1 + c, c += 1, Object.isExtensible(c_1) && (c_1.foo <<= !1), 
                void (foo = 5));
            } catch (a_2_1) {
                a_2 = (c = 1 + c, 0);
            }
        }
        for (var brake191 = 5; --b + --b && 0 < --brake191; ) {
            var b_1 = function() {
                c = 1 + c, Object.isExtensible(foo) && (foo.done = 2 === [ , 0 ].length === this), 
                38..toString(), c = 1 + c, c += 1, Object.isExtensible(foo) && (foo[c = 1 + c, 
                Object.isExtensible(c_1) && (c_1[a++ + {
                    done: (c = 1 + c, !1 < ({} > 38..toString()) && 24..toString() <= !1 == 0),
                    set NaN(b) {
                        this.c = !1;
                    }
                }] = 0 < (c += 1, !0 ^ (23..toString() && !1)))] = null), c = 1 + c, 
                c += 1;
            }();
        }
        c = c + 1 + 1, function() {
            for (var brake200 = 5; c = 1 + c, Object.isExtensible(c_1) && (c_1.then = !1), 
            foo ^= -3 & {}, 38..toString(), c = 1 + c, Object.isExtensible(b_1) && (b_1[((Object.isExtensible(a_2) && (a_2[c = 1 + c, 
            !1] /= 0)) <= !1) >> (2 === [ , 0 ].length == "0undefined")] = (2 === [ , 0 ].length) % !1 <= -5) && 0 < --brake200; ) {}
            c = c + 1 + 1;
        }();
    }
}

var key204, expr204 = --b + {
    ...a
}[a++ + typeof foo];

for (key204 in expr204) {
    c = 1 + c;
    var bar = expr204[key204];
    try {
        var key206, expr206 = a++ + b--;
        for (key206 in expr206) {
            c = 1 + c;
            c += 1;
        }
    } finally {
        for (var brake208 = 5; c += 1, a++, ++a && 0 < --brake208; ) {}
        for (var brake210 = 5; (c += 1) + NaN && 0 < brake210; --brake210) {
            ((c = c + 1 + 1) + (bar && "function" == typeof bar.value && 0 <= --_calls_ && bar.value(38..toString())) || 0).toString()[-(!0 & (key204 += 0))];
        }
        --b, bar && "function" == typeof bar.done && 0 <= --_calls_ && bar.done(1 / 0);
    }
}

setImmediate(() => console.log(null, a, b, c, 1 / 0, NaN, void 0));
original result:
null 23 5 89 Infinity NaN undefined

uglified result:
null 22 4 89 Infinity NaN undefined
// reduced test case (output will differ)

// (beautified)
class C0 {
    static c = a++ + function() {
        var a;
        a[a];
    }();
}

var a;

var expr206 = a++;

() => a;
// output: TypeError: Cannot read property 'undefined' of undefined
// minify: 
// options: {
//   "mangle": false,
//   "output": {
//     "v8": true
//   },
//   "module": true,
//   "validate": true
// }
minify(options):
{
  "mangle": false,
  "output": {
    "v8": true
  },
  "module": true
}

Suspicious compress options:
  arrows
  inline
  pure_getters
  unused

Suspicious options:
  module

alexlamsl added a commit to alexlamsl/UglifyJS that referenced this issue Oct 29, 2022
alexlamsl added a commit that referenced this issue Oct 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant