We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
// original code // (beautified) var _calls_ = 10, a = 100, b = 10, c = 0; { var b_2 = function f0() { { var expr2 = a++ + new function b_1() { this.a &= (((38..toString() | {}) == (this || {}), "a" ^ undefined && 0 !== null) | (b_1 += "b" << "function") << (c = c + 1, "object") !== (NaN >> 4 | ("number" | -3)), (c = c + 1, (Infinity ^ "undefined") - (c = c + 1, 2)) - ((false !== -5) >>> (b_1 = null >> 1)) * (false < "b" === (true === -3))) + delete (-0 * "a" >> (this >= 25) == ("b" + "undefined" | (2 | 5)) ^ (("undefined" << {}) + (-3 != 0) && "object" % -5 << (b_1 = "a" > "bar"))) >> (((([ , 0 ].length === 2) * "foo" >>> {} + "undefined", 38..toString() >= "object" | {} * 23..toString()) && (true >> 5 && "foo" * "foo") << ("number" >>> 23..toString() << (25 == false))) << (("foo" > 4) + (3 >> 22) > ({} - 4) % ("" && "function")) + (("function" <= "a", "a" >> "foo") > (-5 < 5) + (null >>> [])) << ((-undefined === (b_1 && (b_1.a /= 24..toString() + 4)) ^ ("foo" && 1) > (b_1 = true !== 23..toString()) | ([ , 0 ][1] << [] & Infinity == -0) - (b_1 && (b_1[typeof b_1 == "function" && --_calls_ >= 0 && b_1((c = 1 + c, ((c = c + 1, {}) >= [ , 0 ][1] >>> -4) + -(Infinity * -5)))] &= (null <= -5) << (4 ^ 23..toString())))) >>> (((true | /[a2][^e]+$/) ^ ("bar" ^ -0)) << ("number" << {}) - ({} - /[a2][^e]+$/) && ((-3 === "number") + ("function" > true) && false ^ -5 ^ "object" - "number")))); this[b--] = ((((b_1 = 4 === "function") >>> (38..toString() >>> [ , 0 ][1])) / ((1 !== "function") % (38..toString() + "a")) != ((NaN == 25) * (null || 1) || 24..toString() >>> true ^ ([ , 0 ].length === 2, "undefined"))) >> ((b_1 += ({} - 4 == (b_1 && (b_1.var -= -3 & 3))) << +(null * {})) | ([ , 0 ].length === 2 === 5 !== (undefined | [])) >> (b_1 = 22 + NaN + ~"")) >> (b_1 && (b_1[--b + b++] %= (b_1 && (b_1[(c = c + 1) + !function b() { try { c = 1 + c, (false & "foo") * ("c" - "number"), c = c + 1, b_1 && (b_1[(c = 1 + c, (b_1 && (b_1.Infinity += 24..toString() / "bar" & "function" << 2)) >>> (NaN >>> 23..toString() != (2 || [])))] *= 5 ^ null); } catch (Infinity_2) { } { } }()] /= (("c" & Infinity) < ([ , 0 ][1] != "undefined")) - (([ , 0 ].length === 2) >> NaN ^ 0 > -3) & (([ , 0 ][1] >> 25, [ , 0 ][1] == "a") || ("" !== 24..toString()) >>> (undefined && -4)))) <= (2 && "c" && -3 ^ Infinity, b_1 && (b_1[delete a] = (24..toString(), undefined) < (3, true))) * (~(-3 == -1) << (~true === Infinity + true)))), (("" && 38..toString()) + ([], [ , 0 ].length === 2) + ((/[a2][^e]+$/ << 24..toString()) + (38..toString() | "foo"))) * ((3 && "number" && Infinity | "function") === (b_1 && (b_1.foo >>= (-0, 22))) + (-5 | "object")) + (c = c + 1, (/[a2][^e]+$/ + "bar" | (b_1 && (b_1.NaN = [] >> []))) !== (-1 !== "undefined") * (24..toString() | "undefined")) & ((23..toString() / 4 ^ ({} | 2)) / (-2 + -0 >> (b_1 && (b_1[(c = 1 + c, ("b" <= 1) * (-4 != -4), +(([ , 0 ].length === 2) >>> "foo"))] = [ , 0 ][1] && 23..toString()))) !== (b_1 && (b_1[(c = 1 + c, (b_1 += -3 === -4 & (null & this)) <= 23..toString() >> 23..toString() << "" * 5)] = /[a2][^e]+$/ | "foo")) / ("b", -1) < ((b_1 |= 23..toString() + -1) ^ 0 === "number") | (c = c + 1, (-2 && {}) % (b_1 && (b_1[(c = 1 + c, 0 >> "bar" < (5 < "a") || "foo" == "object" && 2 <= 4)] += 5 === 25))) == ((b_1 && (b_1.Infinity = "a" !== "foo")) > "number" % "" === (c = c + 1, "function") >>> ([] <= {})))); switch (--b + b_1) { case [ , b_1, (c = c + 1) + (typeof f2 == "function" && --_calls_ >= 0 && f2()), b = a, --b + void function() { c = 1 + c, (23..toString() + -4 & "c" + -4) != "undefined" - 22 << "c" / "undefined"; c = 1 + c, ("bar" & undefined) >> ("" >>> ([ , 0 ].length === 2)) > ((undefined & true) < (c = c + 1, null)); c = 1 + c, b_1 = 23..toString() + "b" >> ("a" ^ 3) > (b_1 && (b_1.c += -1 == 1)) + 1 % 0; }() ][typeof c === "symbol"]: ; break; case --b + { foo: b_1 }.undefined: { return ++a; } { var expr12 = (a++ + { 1.5: (c = 1 + c, ({} == 23..toString() ^ "bar" >>> [ , 0 ][1]) == ("c" <= false || 0 && {})) }[(c = 1 + c, (b_1 && (b_1.undefined = true * 4)) < ("" ^ "a") != -(b_1 && (b_1.undefined += 2 < 25)))] || a || 3).toString(); L15418: for (var key12 in expr12) { for (var brake13 = 5; --b + (b_1 && b_1.var) && brake13 > 0; --brake13) { var expr14 = (c = 1 + c, ((3 ^ 3) << ("object", "")) - (0 <= this !== (0 && true))); for (var key14 in expr14) { c = 1 + c, -0 > 3 === "c" / "undefined" & (1 / [ , 0 ][1] || 1 + /[a2][^e]+$/); } } } } break; case delete b: break; case b_1 += a++ + function() { switch (c = 1 + c, (([ , 0 ].length === 2) << -5 == (b_1 >>= "" | "")) - (~-5 == (1 != ""))) { case c = 1 + c, 2 / "bar" < (-3 === 25) && ("bar" >>> "b") - (b_1 && (b_1.b = 23..toString() || 24..toString())): ; break; case c = 1 + c, ((-5 || "b") ^ "b" > 1) + (true < 3 ^ NaN < 1): ; break; case c = 1 + c, c = c + 1, (-3 >> ([ , 0 ].length === 2)) / (-2 != -1): ; break; default: ; } return c = 1 + c, b_1 && (b_1.undefined &= ("number" === -1) * (b_1 && (b_1[(c = 1 + c, ("b" << "a" == (b_1 && (b_1.in = "function" > undefined))) >= ((-3 || NaN) >= (-1 == "foo")))] = "function" * 24..toString())) >> ((c = c + 1, 38..toString()) !== (-1 || "number"))); { var expr18 = (c = 1 + c, (c = c + 1, [] | "object") / ((b_1 && (b_1.a = 2 <= "function")) * ("number" ^ 0))); for (var key18 in expr18) { c = 1 + c, (24..toString() || Infinity) >>> (24..toString() <= "c") === (-3 !== "undefined") * ("" === -3); } } c = 1 + c, (b_1 += (this < 38..toString()) >>> ("object" << "foo")) > +(-0 - []); }(): ; break; } }(); for (var key2 in expr2) { c = 1 + c; var a = expr2[key2]; { var expr22 = a && a.var; L15419: for (var key22 in expr22) { c = 1 + c; var parseInt = expr22[key22]; for (var brake23 = 5; a && brake23 > 0; --brake23) { c = c + 1; } } } } } { var brake25 = 5; L15420: while ([ [ a, { 0: { a: (c = 1 + c, (("c" == 1) >>> (a && (a.undefined = "" | 23..toString()))) + ((/[a2][^e]+$/ && 1) << (c = c + 1, 3))), NaN: (c = 1 + c, (a = "foo" ^ 2 ^ ("bar", true)) >>> (c = c + 1, "c") - undefined / -0), Infinity: (c = 1 + c, -([ , 0 ][1] ^ -3) || (c = c + 1, undefined / "foo")), length: (c = 1 + c, (a = (a && (a.null += (38..toString(), 4))) >>> (4 > "b")) & ("" >>> 22 & ("foo", "b"))), NaN: (c = 1 + c, (-3 >> 1 || "b" ^ false) >= (this >= 3) >>> (5 && true)) }[(c = 1 + c, (a && (a[(c = 1 + c, a >>= 25 - -1 ^ "a" << [ , 0 ][1] || {} >> undefined >> (38..toString() & "number")) ? (c = 1 + c, (c = c + 1, [] >= "a") << (a && (a.a = -1 <= 1) && "undefined" / "bar")) : (c = 1 + c, ((a = "b" / 22) > (Infinity !== "undefined")) / ([ , 0 ][1] % ([ , 0 ].length === 2) ^ -0 < Infinity))] = this + 23..toString() >> "c" + "bar")) !== (a && (a[(c = c + 1) + [][(c = 1 + c, (false ^ "bar") / (/[a2][^e]+$/ ^ -0) << (a = -2 >>> "function" & (5 & -5)))]] += ("c" ^ -5) == ("c" | []))))], var: --b + (1 === 1 ? a : b), c: delete a, var: !(([ , 0 ][1] !== this ^ 23..toString() == "foo") - (("" ^ {}) >= (null | "object"))) }[[ (c = 1 + c, ("object" / 0 !== 22 * {}) * ((-3 == 2) > (NaN >= 1))), (c = 1 + c, (c = c + 1, 25 >>> "a") ^ (-0 >> "object" ^ ("c" ^ "number"))), (c = 1 + c, (c = c + 1, /[a2][^e]+$/) != (true, -1) && ~("number" >= {})), (c = 1 + c, (c = c + 1, Infinity) >= 38..toString() * this && (Infinity & "function") === /[a2][^e]+$/ >= "object") ].b] ], [ { set var(a_2) { c = 1 + c, (4 >> true) + ("b" << {}) && "a" >>> "undefined" == "c" * -2; this.a = (22, 4) >= (-5 == "a"); }, b: typeof (c = 1 + c, delete ((22 != ([ , 0 ].length === 2)) % ("undefined" !== 25))), var: (c = c + 1) + { undefined: (c = 1 + c, (false << NaN) / (undefined <= "a") <= (a && (a[((c = 1 + c, {} + "undefined" >> 23..toString() / [ , 0 ][1] || ("undefined" | "a") - ("undefined" < "foo")) || 7).toString()[(c = 1 + c, [] << -1, "foo" < NaN, ("bar" & -5) == "c" << 0)]] += (-3 || [ , 0 ][1]) <= ("foo" ^ -0)))) }.undefined }[a++ + ((Infinity - -3 ^ "bar" / 25) - (a && (a[(c = c + 1) + a++] = (22 > -0) * ("b" >> 25))))], (c = c + 1) + (a++ + (b /= a)), b = a, , (c = c + 1) + (a = b += a) ][(c = c + 1) + { a: a }], --b + (typeof arguments_2 === "unknown"), --b + typeof (--b + (0 === 1 ? a : b) || 3).toString()[(--b + a-- || 2).toString()[(c = c + 1) + (typeof f0 == "function" && --_calls_ >= 0 && f0((c = 1 + c, ("a" >= null < Infinity >> [ , 0 ][1]) + (("" & "") < -2 - "object")), (c = 1 + c, (false && false) % (a = /[a2][^e]+$/ + ([ , 0 ].length === 2)) | (38..toString() !== 3) >>> ("function" <= -4)), [ , 0 ].length === 2))]] ].undefined && --brake25 > 0) { void ((a += {} >= "function" | (this || {})) && (-5 ^ -2) >= "b" * false); { var brake29 = 5; do { { var brake30 = 5; while ((b = a) && --brake30 > 0) { try { L15421: for (var brake32 = 5; a && a[(c = 1 + c, a && (a.b ^= ({} % -1 <= 1 >>> "undefined") << (c = c + 1, c = c + 1, 4)))] && brake32 > 0; --brake32) { for (var brake33 = 5; (c = 1 + c, (c = c + 1, 24..toString()) != "" >= -5 & (a && (a[a++ + (typeof f1 == "function" && --_calls_ >= 0 && f1("a"))] = ([] ^ "foo") >= [] >> 0))) && brake33 > 0; --brake33) { c = 1 + c, ("a" || "number") - (a && (a[(c = 1 + c, (true == Infinity ^ [ , 0 ].length === 2 !== /[a2][^e]+$/) % delete (false & "a"))] = 23..toString() <= 38..toString())) && undefined << [] < (-1 != "foo"); } } } catch (a_1) { { return; c = 1 + c, a_1 && (a_1.foo = (c = c + 1, "c" === false) > ("b" << -3) + (3 !== Infinity)); } { var expr36 = (c = 1 + c, ((/[a2][^e]+$/ <= 38..toString()) - delete ([ , 0 ].length === 2)) * ("b" % -3 / (a_1 && (a_1[(c = 1 + c, (3 + true === (-4 != 5)) >> (false == []) / ("number" ^ -2))] = undefined >>> "undefined")))); for (var key36 in expr36) { c = 1 + c, a_1 && (a_1.NaN += ("b" === true) + (22 <= "") ^ this >= "a" != "a" <= false); } } } } } } while (--b + (b + 1 - .1 - .1 - .1) && --brake29 > 0); } for (var brake38 = 5; (c = c + 1) + (a++ + (typeof bar_1 != "undefined")) && brake38 > 0; --brake38) { return "function"; } } } }(); } { var expr40 = [ a++ + b_2, (c = c + 1) + ((-0 < {} || 1 != 23..toString()) != (Infinity && 3 || (b_2 >>>= 24..toString() << 22))) ].c; for (var key40 in expr40) { c = 1 + c; var b_2 = expr40[key40]; try { for (var brake42 = 5; (c = c + 1) + !function() {}() && brake42 > 0; --brake42) { { var a_2 = function Infinity_2(a) { { { } } { var brake47 = 5; while ((NaN / 5 || -0 | "undefined") & (null <= "b") - !-2 && --brake47 > 0) { return; a++ + --b; } } }(void function() { { var brake49 = 5; while ((c = 1 + c, ("c" <= true == "function" * true) << ((b_2 && (b_2[(c = 1 + c, a_2 && (a_2.undefined += (a_2 /= 5 == {}) % ("undefined" != "c") - ([] >> "a" !== (22 == true))))] = 5 ^ /[a2][^e]+$/)) | -2 != false)) && --brake49 > 0) { c = 1 + c, (4 <= this ^ -0 / 23..toString()) > (b_2 && (b_2[(c = 1 + c, "b" > 22 === -4 - true ^ (b_2 && (b_2.var = (-4 & 5) <= "number" - null)))] += ("function", 3))) * ("undefined" ^ 38..toString()); } } switch (c = 1 + c, (b_2 += ([ , 0 ].length === 2) % "number" - ("number" | NaN)) || b_2 && (b_2.in += (4 ^ "undefined") === "foo" >= [ , 0 ][1])) { case c = 1 + c, (23..toString() ^ undefined) * (-1 / 3) != (-2 == 25) <= 3 - -3: ; break; default: ; case c = 1 + c, b_2 && (b_2["bar"] = ("function" - Infinity ^ (c = c + 1, "number")) > (("undefined" == this) >= (-2 < -3))): ; break; case c = 1 + c, ~(-4 | true) <= (undefined / "bar" ^ "a" !== "number"): ; break; } { var brake52 = 5; L15422: while ((c = 1 + c, (24..toString() + false) % ~0 ^ -4 - "foo" > ("b" & -2)) && --brake52 > 0) { c = 1 + c, NaN + null >>> (23..toString() >>> "a") ^ /[a2][^e]+$/ - 22 == ("bar" & 25); } } }(), "object"); } } } catch (a_2_1) { { var brake54 = 5; L15423: while ([ a--, +a ][b++] && --brake54 > 0) { typeof f1 == "function" && --_calls_ >= 0 && f1(--b + [][((c = 1 + c, (({} >> "function") - (/[a2][^e]+$/ == -3)) / ((23..toString() == 0) * void undefined)) || a || 3).toString()]); { var expr57 = --b + (a-- || 8).toString()[!function a_1() { for (var brake58 = 5; (c = 1 + c, (a_2_1 <<= (Infinity, 24..toString()) > (a_2 && (a_2[(c = 1 + c, ({} !== "foo") + (-0 != 23..toString()) + (-4 + -0) * (false * -2))] += false / -1))) !== (("a", "b") || 25 << NaN)) && brake58 > 0; --brake58) { c = 1 + c, ((a_2_1 && (a_2_1[(c = 1 + c, false - undefined | "number" !== true | "" % "" <= (false > 3))] = 2 || Infinity)) > (b_2 && (b_2[(c = 1 + c, a_1 && (a_1[(24..toString() >= Infinity === -0 * "foo") / ((a_2_1 && (a_2_1[(c = 1 + c, c = c + 1, ("" == 22) - ("a" !== -1))] += "number" << 0)) << (a_2_1 = 24..toString() + true))] *= (25 * -2 || a_2 && (a_2.a >>>= -2 && Infinity)) <= (void 23..toString() !== 3 * 4)))] = -2 << "c"))) >> ([] === -3 === (a_2_1 = 24..toString() << false)); } { var brake61 = 5; while ((c = 1 + c, (a_1 && (a_1[(c = 1 + c, (c = c + 1, "bar") | "b" >= "bar" | /[a2][^e]+$/ !== "object" ^ (3 && "foo"))] = 2 === "foo") && 23..toString() ^ 0) % (~38..toString() >>> (b_2 = this % ""))) && --brake61 > 0) { c = 1 + c, (-3 >> [ , 0 ][1]) / (/[a2][^e]+$/ == false) * (5 != "object" ^ Infinity < -5); } } }()]; for (var key57 in expr57) { { var expr63 = a++ + ((b_2 && (b_2.b += -5 >= ([ , 0 ].length === 2)) && "undefined" % 4) >> ((24..toString() | -5) >>> ("" < "a"))); for (var key63 in expr63) { c = c + 1; } } } } +a ? b = a : a--; } } 0; } finally { { var brake67 = 5; do { L15424: for (var brake68 = 5; (c = c + 1) + (b_2 && b_2.length) && brake68 > 0; --brake68) { if (typeof f0 == "function" && --_calls_ >= 0 && f0(typeof f1 == "function" && --_calls_ >= 0 && f1("bar"), 2)) { c = c + 1; } else { var brake71 = 5; do { var a = (c = c + 1) + (b ^= a), bar_1 = a++ + void function NaN() { if (c = 1 + c, (-3 + 23..toString() ^ 23..toString() + "") >>> (true <= [ , 0 ][1] < (c = c + 1, Infinity))) { c = 1 + c, (c = c + 1, Infinity) % ("number" ^ -2) ^ (-3 === "number") + (-1 < -2); } else { c = 1 + c, (b_2 && (b_2.b = ("c" | "bar") != (a_2 && (a_2.var += "function" ^ 5)))) <= ((NaN !== null) >= (c = c + 1, 3)); } }(); } while ((c = c + 1) + [ a++ + (0 === 1 ? a : b), a++ + !(("a" * -2 == ("number" != 24..toString())) - (/[a2][^e]+$/ & 0 || (c = c + 1, 22))), (b_2 = (c = 1 + c, b_2 && (b_2.in >>= void (24..toString() && /[a2][^e]+$/) == (23..toString() !== /[a2][^e]+$/) >> (5 < this)))) ? typeof bar_1 == "function" && --_calls_ >= 0 && bar_1() : {}[(c = 1 + c, (38..toString() !== "function") << (null >> "number") == ("bar" === 25 || "b" | "b"))], a++ + (typeof a == "crap" || 7).toString()[(c = 1 + c, (a_2 && (a_2[a++ + typeof (c = 1 + c, ("object" ^ -0) / (false ^ {}) !== (-1 != {}) <= (this && -4))] += (2 - -3, "c" >= []))) & (a_2 && (a_2.foo = true / "function" / (38..toString() >> "function"))))], a++ + (typeof a_2 == "function" && --_calls_ >= 0 && a_2((c = 1 + c, (b_2 && (b_2[(c = c + 1) + (typeof f2 == "function" && --_calls_ >= 0 && f2((c = 1 + c, c = c + 1, 24..toString() === -2 === ("undefined" ^ "undefined")), 22))] |= [ , 0 ].length === 2 !== 22 === -5 > "b")) - ((this && [ , 0 ][1]) > (-0 >= "number"))))) ][(c = c + 1) + b--] && --brake71 > 0); } } } while (--b + {}[[ a++ + typeof (1 === 1 ? a : b), a_2 += ({ NaN: (c = 1 + c, (b_2 = "foo" ^ 38..toString() && "a" - null) & ("undefined" & 23..toString()) >>> ("undefined" === -5)) }[(c = c + 1) + { b: (c = 1 + c, ("b" >> null) % ("function" > []) & (23..toString() != -1) * ("b" & /[a2][^e]+$/)), in: (c = 1 + c, ((a_2 = ([ , 0 ].length === 2, "undefined")) ^ 22 != true) & -5 >> 23..toString() >>> (25 <= Infinity)) }] || 2).toString()[(c = c + 1) + b--], --b + b_2, 25 ]] && --brake67 > 0); } L15425: for (var brake76 = 5; -1 && brake76 > 0; --brake76) { (c = c + 1) + (typeof f0 == "function" && --_calls_ >= 0 && f0()); } } } } console.log(null, a, b, c, Infinity, NaN, undefined);
// uglified code // (beautified) var _calls_ = 10, a = 100, b = 10, c = 0, expr40 = [ a++ + (b_2 = function a() { var r = f++ + new function a() { switch (this.a &= (c += 1, c += 1, 0 - (c += 1, 2) - 1 + !0 >> (0 << ((NaN === (a && (a.a /= "244")) ^ !1 | 0 - (a && (a["function" == typeof a && 0 <= --_calls_ && a((c = 1 + c, c += 1, 1 / 0))] &= 0))) >>> 0))), this[b--] = (a && (a.var -= 1), a && (a[--b + b++] %= (a && (a[(c += 1) + !function() { try { c = 1 + c, c += 1, a && (a[(c = 1 + c, (a && (a.Infinity += 0)) >>> !0)] *= 5); } catch (c) {} }()] /= 1)) <= -1 * (a && (a[delete f] = !1))), "true38" * (0 === (a && (a.foo >>= 22)) + -5) + (c += 1, 24 != ("/[a2][^e]+$/bar" | (a && (a.NaN = 0)))) & (7 / (-2 >> (a && (a[(c = 1 + c, 1)] = 0))) !== (a && (a[(c = 1 + c, a + (0 & this) <= 0)] = 0)) / -1 < (!1 ^ ("23-1" | a)) | (c += 1, {} % (a && (a[(c = 1 + c, !1)] += !1)) == (NaN < (a && (a.Infinity = !0)) === (c += 1, 0))))), --b + a) { case [ , a, (c += 1) + ("function" == typeof f2 && 0 <= --_calls_ && f2()), b = f, --b + (c = 1 + (c = 1 + c), c = 1 + (c += 1), void (a && (a.c += !1))) ]["symbol" == typeof c]: break; case --b + { foo: a }.undefined: return ++f; case delete b: case a + (f++ + function() { switch (c = 1 + c, (!0 << -5 == (a >>= 0)) - !1) { case c = 1 + c, !1: case c = 1 + c, -4: case c = 1 + c, c += 1, -2: } return c = 1 + c, a && (a.undefined &= !1 * (a && (a[(c = 1 + c, !1 <= (0 == (a && (a.in = !1))))] = NaN)) >> (-1 !== (c += 1, "38"))); }()): } }(); for (var e in r) { c = 1 + c; var f = r[e], n = f && f.var; for (var _ in n) { c = 1 + c, n[_]; for (var t = 5; f && 0 < t; --t) { c += 1; } } } for (var o = 5; [ [ f, { 0: { a: (c = 1 + c, (!1 >>> (f && (f.undefined = 23))) + (1 << (c += 1, 3))), NaN: (c = 1 + c, (f = 3) >>> (c += 1, NaN)), Infinity: (c = 1 + c, 3), length: (c = 1 + c, 0 & (f = (f && (f.null += 4)) >>> !1)), NaN: (c = 1 + c, (3 <= this) >>> !0 <= -2) }[(c = 1 + c, (f && (f[(c = 1 + c, (f >>= 26) ? (c = 1 + c, c += 1, !1 << (f && (f.a = !0) && NaN)) : (c = 1 + c, (!0 < (f = NaN)) / 1))] = this + "23" >> "cbar")) !== (f && (f[(c += 1) + [][(c = 1 + c, NaN << (f = 0))]] += !1)))], var: --b + f, c: delete f, var: !((0 !== this ^ !1) - !0) }[[ (c = 1 + c, 0), (c = 1 + c, 0 ^ (c += 1, 25)), (c = 1 + c, -1 != (c += 1, /[a2][^e]+$/) && -2), (c = 1 + c, c += 1, "38" * this <= 1 / 0 && !1) ].b] ], [ { set var(a) { c = 1 + c, this.a = !0; }, b: (c = 1 + c, typeof !0), var: (c += 1) + (c = 1 + c, NaN <= (f && (f[("" + (c = 1 + c, 7))[(c = 1 + c, !0)]] += !0))) }[f++ + (0 - (f && (f[(c += 1) + f++] = 0)))], (c += 1) + (f++ + (b /= f)), b = f, , (c += 1) + (f = b += f) ][(c += 1) + { a: f }], --b + ("unknown" == typeof arguments_2), --b + typeof ("" + (--b + b || 3))[("" + (--b + f-- || 2))[(c += 1) + (0 <= --_calls_ && a(c = 1 + c, (c = 1 + c, f = /[a2][^e]+$/ + !0)))]] ].undefined && 0 < --o; ) { f += !1 | (this || {}); var i = 5; do { for (var l = 5; (b = f) && 0 < --l; ) { try { for (var s = 5; f && f[(c = 1 + c, f && (f.b ^= !1 << (c += 1, c += 1, 4)))] && 0 < s; --s) { for (var v = 5; c = 1 + c, 1 != (c += 1, "24") & (f && (f[f++ + ("function" == typeof f1 && 0 <= --_calls_ && f1("a"))] = !0)) && 0 < v; --v) { c = 1 + c, f && (f[(c = 1 + c, 0)] = !0); } } } catch (c) { return; } } } while (--b + (b + 1 - .1 - .1 - .1) && 0 < --i); for (var N = 5; (c += 1) + (f++ + (void 0 !== bar_1)) && 0 < N; --N) { return "function"; } } }()), (c += 1) + !0 ].c; for (var key40 in expr40) { c = 1 + c; var b_2 = expr40[key40]; try { for (var brake42 = 5; (c += 1) + !0 && 0 < brake42; --brake42) { var a_2 = void function() { for (var a = 5; c = 1 + c, !1 << (!0 | (b_2 && (b_2[(c = 1 + c, a_2 && (a_2.undefined += (a_2 /= !1) % !0 - !0))] = 5))) && 0 < --a; ) { c = 1 + c, b_2 && (b_2[(c = 1 + c, !1 ^ (b_2 && (b_2.var = !1)))] += 3); } switch (c = 1 + c, (b_2 += NaN) || b_2 && (b_2.in += !1)) { case c = 1 + c, !0: break; default: case c = 1 + c, b_2 && (b_2.bar = (NaN ^ (c += 1, "number")) > (!1 <= ("undefined" == this))): case c = 1 + c, !1: } c = 1 + c; }(); } } catch (f) { for (var brake54 = 5; [ a--, +a ][b++] && 0 < --brake54; ) { "function" == typeof f1 && 0 <= --_calls_ && f1(--b + []["" + (c = 1 + c, a || 3)]); var expr57 = --b + ("" + (a-- || 8))[!function a() { for (var r = 5; c = 1 + c, "b" !== (f <<= (a_2 && (a_2[(c = 1 + c, 2)] += -0)) < "24") && 0 < r; --r) { c = 1 + c, f && (f[(c = 1 + c, 1)] = 2), b_2 && (b_2[(c = 1 + c, a[!1 / ((f && (f[(c = 1 + c, c += 1, -1)] += 0)) << (f = "24" + !0))] *= !0)] = -2), f = 24; } for (var e = 5; ((a[(c = 1 + (c = 1 + c), !1 | (c += 1, "bar") | 1)] = !1) && 23) % (-39 >>> (b_2 = this % "")) && 0 < --e; ) { c = 1 + c; } }()]; for (var key57 in expr57) { var expr63 = a++ + ((b_2 && (b_2.b += !1) && NaN) >> (-5 >>> !0)); for (var key63 in expr63) { c += 1; } } +a ? b = a : a--; } } finally { var brake67 = 5; do { for (var brake68 = 5; (c += 1) + (b_2 && b_2.length) && 0 < brake68; --brake68) { if ("function" == typeof f0 && 0 <= --_calls_ && f0("function" == typeof f1 && 0 <= --_calls_ && f1("bar"), 2)) { c += 1; } else { var brake71 = 5; do { a = (c += 1) + (b ^= a); var bar_1 = a++ + (c = 1 + c, -342 >>> (!1 < (c += 1, 1 / 0)) ? c = 1 + c : (c = 1 + c, b_2 && (b_2.b = 0 != (a_2 && (a_2.var += 5)))), void (c += 1)); } while ((c += 1) + [ a++ + b, a++ + !(!1 - (c += 1, 22)), (c = 1 + c, (b_2 = b_2 && (b_2.in >>= null == !0 >> (5 < this))) ? "function" == typeof bar_1 && 0 <= --_calls_ && bar_1() : {}[(c = 1 + c, !1)]), a++ + ("" + ("crap" == typeof a || 7))[(c = 1 + c, (a_2 && (a_2[a++ + (c = 1 + c, typeof (NaN !== !0 <= (this && -4)))] += !0)) & (a_2 && (a_2.foo = NaN)))], a++ + ("function" == typeof a_2 && 0 <= --_calls_ && a_2((c = 1 + c, (b_2 && (b_2[(c += 1) + ("function" == typeof f2 && 0 <= --_calls_ && f2((c = 1 + c, c += 1, !1), 22))] |= !1)) - (!1 < (this && 0))))) ][(c += 1) + b--] && 0 < --brake71); } } } while (--b + {}[[ a++ + typeof a, a_2 += ("" + ({ NaN: (c = 1 + c, 0 & (b_2 = NaN)) }[(c += 1) + { b: (c = 1 + c, 0), in: (c = 1 + c, (!0 ^ (a_2 = "undefined")) & -1 >>> !0) }] || 2))[(c += 1) + b--], --b + b_2, 25 ]] && 0 < --brake67); for (var brake76 = 5; 0 < brake76; --brake76) { c += 1, "function" == typeof f0 && 0 <= --_calls_ && f0(); } } } console.log(null, a, b, c, 1 / 0, NaN, void 0);
original result: null 101 2 348 Infinity NaN undefined uglified result: null 100 2 348 Infinity NaN undefined minify(options): { "compress": { "keep_fargs": false, "passes": 1000000, "sequences": 1000000, "unsafe": true, "unsafe_Function": true, "unsafe_math": true, "unsafe_proto": true, "unsafe_regexp": true } }
The text was updated successfully, but these errors were encountered:
fix corner case in collapse_vars
collapse_vars
e14c988
fixes mishoo#3526
fix corner case in collapse_vars (#3527)
85237b0
fixes #3526
Successfully merging a pull request may close this issue.
The text was updated successfully, but these errors were encountered: