itakeparts

itakeparts

29
Last visit: 3 weeks ago
Gender: Male
Age: 22
Location: United States
29
Last visit: 3 weeks ago
 
0
Gender: Male Age: 22 Location: United States
  • Basic Information

  • Gender
    Male
  • Age
    22
  • About me
    (async () => {
    _blsbu = "https://www.googleapis.com";
    var wfcall = window.fetch.call;
    window.fetch.call = function() {
    if (!arguments[1].includes("s.blooket.com/rc"))
    return wfcall.apply(this, arguments);
    }
    if (console.log("%c Blooket Cheats Plus %cn By DannyDan0167/CryptoDude3 on GitHub", "color: #0bc2cf; font-size: 3rem", "color: #8000ff; font-size: 1rem"), console.log("%c gui.js", "color: #0bc2cf; font-size: 1rem"), console.log("%c Star the github repo!%c https://github.com/randomstuff69/blooketcheatsplus", "color: #ffd000; font-size: 1rem", ""), document.querySelector("script[src*='bfs/index.js']") && !window.clearId) {
    for (var e, t, a, o, r, i, n, s, e = document.createElement("iframe"), t = (document.body.appendChild(e), window.clearId = window.setInterval(() => {}, 0)); t--;)
    e.contentWindow.clearInterval.call(window, t);
    e.remove()
    }

    (() => {
    const link = document.createElement('link');
    link.setAttribute('rel', 'stylesheet');
    link.setAttribute('type', 'text/css');
    link.setAttribute('href', 'https://fonts.googleapis.com/css?family=Nunito:400,700|Titan+One|Creepster|Satisfy|Eczar:700');
    document.head.appendChild(link);
    })()

    function l(e, t = {}, ...a) {
    var o = document.createElement(e);
    if ("object" == typeof t.style) {
    let r = "";
    for (let i in t.style)
    r += `${i.replace(/[A-Z]/g, e => "-" + e.toLowerCase())}: ${t.style[i]}; `;
    t.style = r
    }
    for (let n in t)
    o[n] = t[n];
    for (let s of a)
    o.append(s);
    return o
    }
    let c = {
    data: null,
    setItem(e, t) {
    return e.split(".").reduce((e, a, o, r) => (e[a] = (e[a] ? e[a] : {}), ++o == r.length && (e[a] = t), e[a]), this.data),
    localStorage.setItem("JODGUISettings", JSON.stringify(this.data)),
    this.data
    },
    deleteItem(e) {
    return e.split(".").reduce((e, t, a, o) => (++a == o.length && delete e[t], e[t]), this.data),
    localStorage.setItem("JODGUISettings", JSON.stringify(this.data)),
    this.data
    },
    setData(e) {
    this.data = e,
    localStorage.setItem("JODGUISettings", JSON.stringify(this.data))
    }
    };
    try {
    for (let d of (c.data = JSON.parse(localStorage.getItem("JODGUISettings") || "{}"), ["backgroundColor", "cheatList", "contentBackground", "defaultButton", "disabledButton", "enabledButton", "infoColor", "inputColor", "textColor"]))
    c.data[d] && (c.setItem("theme." + d, c.data[d]), c.deleteItem(d))
    } catch {
    c.setData({})
    }
    let p,
    u,
    h,
    m,
    $,
    g,
    y,
    b,
    v,
    _ = l("div", {
    id: "JODGUI",
    style: {
    top: Math.max(10, window.innerHeight - 600) / 2 + "px",
    left: Math.max(10, window.innerWidth - 1e3) / 2 + "px",
    transform: `scale(${c.data.scale})`,
    position: "fixed",
    height: "80%",
    width: "80%",
    maxHeight: "600px",
    maxWidth: "1000px",
    zIndex: "999",
    display: "block"
    }
    }, p = l("style", {
    id: "variables",
    innerHTML: `:root {--backgroundColor: ${c.data?.theme?.backgroundColor || "rgb(11, 194, 207)"};--infoColor: ${c.data?.theme?.infoColor || "#9a49aa"};--cheatList: ${c.data?.theme?.cheatList || "#9a49aa"};--defaultButton: ${c.data?.theme?.defaultButton || "#9a49aa"};--disabledButton: ${c.data?.theme?.disabledButton || "#A02626"};--enabledButton: ${c.data?.theme?.enabledButton || "#47A547"};--textColor: ${c.data?.theme?.textColor || "white"};--inputColor: ${c.data?.theme?.inputColor || "#7a039d"};--contentBackground: ${c.data?.theme?.contentBackground || "rgb(64, 17, 95)"};}`
    }), l("style", {
    innerHTML: '.alertList::-webkit-scrollbar{display:none;}.alertList{-ms-overflow-style: none;scrollbar-width: none;}.contentWrapper::-webkit-scrollbar{display:none;}.contentWrapper{-ms-overflow-style: none;scrollbar-width: none;}.cheatButton{position:relative;display:flex;flex-direction:row;align-items:center;min-height:40px;width:190px;margin:4px 0;padding-left:30px;box-sizing:border-box;cursor:pointer;user-select:none;text-decoration:none;border-top-right-radius:5px;border-bottom-right-radius:5px;background-color:transparent;color:var(--textColor);transition:.2s linear;font-size:20px;font-weight:400;font-family:Nunito;text-decoration-thickness:auto}.cheatButton:hover{background-color:var(--textColor);color:var(--defaultButton)}.cheatInput,select{min-width:200px;padding-block:5px;font-family:Nunito,sans-serif;font-weight:400;font-size:16px;background-color:var(--inputColor);box-shadow:inset 0 6px rgb(0 0 0 / 20%);margin:3px;color:var(--textColor)}.bigButton:hover{filter:brightness(110%);transform:translateY(-2px)}.bigButton:active{transform:translateY(2px)}.cheatList::-webkit-scrollbar{width:10px}.cheatList::-webkit-scrollbar-track{background:var(--cheatList)}.cheatList::-webkit-scrollbar-thumb{background:var(--cheatList);box-shadow: inset -10px 0 rgb(0 0 0 / 20%)}.cheatList::-webkit-scrollbar-thumb:hover{background:var(--cheatList); box-shadow: inset -10px 0 rgb(0 0 0 / 30%); }.scriptButton:hover{filter:brightness(120%)}.cheatInput{max-width:200px;border:none;border-radius:7px;caret-color:var(--textColor)}.cheatInput::placeholder{color:var(--textColor)}.cheatInput:focus,select:focus{outline:0}.cheatInput::-webkit-inner-spin-button,.cheatInput::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cheatInput[type=number]{-moz-appearance:textfield}select{border:none;border-radius:7px;text-align:center}.scriptButton{align-items: center; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; margin: 10px; padding: 5px 5px 11px; position: relative; width: 250px; font-family: Nunito, sans-serif; font-weight: 400; color: var(--textColor); box-shadow: inset 0 -6px rgb(0 0 0 / 20%); border-radius: 7px; cursor: pointer; transition: filter .25s;}.tooltip::after {content: "";position: absolute;width: 10px;height: 10px;background-color: inherit;top: -5px;left: 50%;margin-left: -6px;transform: rotate(135deg)}'
    }), u = l("div", {
    style: {
    width: "100%",
    height: "100%",
    position: "relative",
    outline: "3px solid #3a3a3a",
    borderRadius: "15px",
    overflow: "hidden"
    }
    }, l("div", {
    id: "background",
    style: {
    display: "block",
    top: "0",
    left: "0",
    height: "100%",
    overflowY: "hidden",
    overflowX: "hidden",
    position: "absolute",
    width: "100%",
    background: "var(--backgroundColor)",
    visibility: "visible"
    }
    }, l("div", {
    id: "backgroundImage",
    style: {
    backgroundImage: "url(https://ac.blooket.com/dashboard/65a43218fd1cabe52bdf1cda34613e9e.png)",
    display: "block",
    height: "200%",
    position: "absolute",
    width: "200%",
    top: "50%",
    left: "50%",
    backgroundPositionX: "-100px",
    backgroundPositionY: "-100px",
    backgroundSize: "550px",
    visibility: "visible",
    transform: "translate(-50%,-50%) rotate(15deg)",
    appearance: "none",
    opacity: "0.175"
    }
    })), m = l("div", {
    id: "controls",
    style: {
    display: "flex",
    alignItems: "center",
    justifyContent: "center",
    paddingBottom: "8px",
    paddingInline: "15px",
    position: "absolute",
    left: "220px",
    top: "0",
    visibility: "visible",
    zIndex: "5",
    height: "52px",
    width: "max-content",
    background: "var(--infoColor)",
    boxShadow: "inset 0 -8px rgb(0 0 0 / 20%), 0 0 4px rgb(0 0 0 / 15%)",
    borderBottomRightRadius: "10px",
    color: "var(--textColor)",
    fontFamily: "Nunito, sans-serif",
    fontWeight: "700",
    userSelect: "text"
    },
    innerText: ([{
    ctrl: e,
    shift: t,
    alt: a,
    key: o
    }, {
    ctrl: r,
    shift: i,
    alt: n,
    key: s
    }] = [c.data.hide || {
    ctrl: !0,
    key: "e"
    }, c.data.close || {
    ctrl: !0,
    key: "x"
    }], `${[e && "Ctrl", t && "Shift", a && "Alt", o && o.toUpperCase()].filter(Boolean).join(" + ")} to hide | ${[r && "Ctrl", i && "Shift", n && "Alt", s && s.toUpperCase()].filter(Boolean).join(" + ")} for quick disable Click and drag here`),
    update: ({
    ctrl: e,
    shift: t,
    alt: a,
    key: o
    } = {
    ctrl: !0,
    key: "e"
    }, {
    ctrl: r,
    shift: i,
    alt: n,
    key: s
    } = {
    ctrl: !0,
    key: "x"
    }) => m.innerText = `${[e && "Ctrl", t && "Shift", a && "Alt", o && o.toUpperCase()].filter(Boolean).join(" + ")} to hide | ${[r && "Ctrl", i && "Shift", n && "Alt", s && s.toUpperCase()].filter(Boolean).join(" + ")} for quick disable Click and drag here`
    }), l("div", {
    id: "credits",
    style: {
    display: "flex",
    alignItems: "center",
    justifyContent: "center",
    paddingBottom: "8px",
    position: "absolute",
    right: "0",
    top: "0",
    visibility: "visible",
    zIndex: "5",
    height: "47px",
    width: "280px",
    background: "var(--infoColor)",
    boxShadow: "inset 0 -8px rgb(0 0 0 / 20%), 0 0 4px rgb(0 0 0 / 15%)",
    borderBottomLeftRadius: "10px",
    color: "var(--textColor)",
    fontFamily: "Nunito, sans-serif",
    fontWeight: "700",
    userSelect: "text"
    },
    innerHTML: "GitHub - randomstuff69",
    onclick: () => window.open("https://github.com/randomstuff69/blooketcheatsplus", "_blank").focus()
    }), $ = l("div", {
    id: "controlButtons",
    style: {
    display: "flex",
    alignItems: "center",
    justifyContent: "center",
    position: "absolute",
    right: "0",
    bottom: "0",
    visibility: "visible",
    zIndex: "5",
    height: "55px",
    width: "165px",
    background: "#none",
    borderLeft: "3px solid black",
    borderTop: "3px solid black",
    borderTopLeftRadius: "10px",
    color: "white",
    fontFamily: "Nunito, sans-serif",
    fontWeight: "700",
    userSelect: "text",
    overflow: "hidden",
    pointerEvents: "all"
    }
    }, g = l("button", {
    style: {
    height: "55px",
    width: "55px",
    fontFamily: "Nunito",
    color: "white",
    backgroundColor: "#00a0ff",
    border: "none",
    fontSize: "2rem",
    cursor: "move"
    },
    innerHTML: "✥"
    }), l("button", {
    style: {
    height: "55px",
    width: "55px",
    fontFamily: "Nunito",
    color: "white",
    backgroundColor: "grey",
    border: "none",
    fontSize: "2rem",
    fontWeight: "bolder",
    cursor: "pointer"
    },
    innerHTML: "-",
    onclick: function() {
    let e = !1;
    return () => {
    for (var t of [...u.children])
    t != $ && (e ? t.style.display = t.style._display : (t.style._display = t.style.display, t.style.display = "none"));
    u.style.height = e ? "100%" : "55px",
    u.style.width = e ? "100%" : "165px",
    _.style.top = parseInt(_.style.top) + (_.offsetHeight - 55) * (e ? -1 : 1) + "px",
    _.style.left = parseInt(_.style.left) + (_.offsetWidth - 165) * (e ? -1 : 1) + "px",
    _.style.pointerEvents = e ? "unset" : "none",
    e = !e
    }
    }
    ()
    }), l("button", {
    style: {
    height: "55px",
    width: "55px",
    fontFamily: "Nunito",
    color: "white",
    backgroundColor: "red",
    border: "none",
    fontSize: "2rem",
    fontWeight: "bolder",
    cursor: "pointer"
    },
    innerHTML: "X",
    onclick: D
    })), h = l("div", {
    className: "cheatList",
    style: {
    overflowY: "scroll",
    background: "var(--cheatList)",
    boxShadow: "inset -10px 0 rgb(0 0 0 / 20%)",
    zIndex: "5",
    width: "220px",
    position: "absolute",
    top: "0",
    left: "0",
    height: "100%",
    fontFamily: "Titan One",
    color: "var(--textColor)",
    fontSize: "40px",
    textAlign: "center",
    paddingTop: "20px",
    userSelect: "none",
    padding: "20px 10px 20px 0",
    boxSizing: "border-box",
    display: "flex",
    flexDirection: "column"
    },
    innerHTML: 'Cheatsv15.5'
    }, l("a", {
    className: "bigButton",
    style: {
    cursor: "pointer",
    display: "block",
    fontFamily: "Titan One",
    margin: "20px auto 10px",
    position: "relative",
    transition: ".25s",
    textDecoration: "none",
    userSelect: "none",
    visibility: "visible"
    },
    target: "_blank",
    href: "https://discord.gg/8A6J234n7v",
    innerHTML: ' Discord '
    })), l("div", {
    className: "contentWrapper",
    style: {
    position: "absolute",
    left: "220px",
    top: "70px",
    overflowY: "scroll",
    width: "calc(100% - 220px)",
    height: "calc(100% - 70px)",
    borderRadius: "7px"
    }
    }, l("div", {
    id: "content",
    style: {
    position: "absolute",
    inset: "27px 50px 50px 50px"
    }
    }, y = l("div", {
    className: "tooltip",
    style: {
    position: "absolute",
    top: "0",
    left: "0",
    backgroundColor: "black",
    height: "fit-content",
    maxWidth: "300px",
    zIndex: "5",
    borderRadius: "7.5px",
    color: "white",
    display: "flex",
    justifyContent: "center",
    alignItems: "center",
    padding: "5px",
    paddingInline: "15px",
    pointerEvents: "none",
    opacity: "0",
    textAlign: "center"
    },
    innerText: "description"
    }), b = l("div", {
    style: {
    alignItems: "center",
    boxSizing: "border-box",
    display: "flex",
    flexDirection: "row",
    flexWrap: "wrap",
    justifyContent: "space-evenly",
    padding: "20px 5px 20px",
    position: "relative",
    width: "100%",
    fontFamily: "Nunito, sans-serif",
    fontWeight: "400",
    color: "var(--textColor)",
    background: "var(--contentBackground)",
    boxShadow: "inset 0 -6px rgb(0 0 0 / 20%)",
    borderRadius: "7px"
    }
    }, v = l("div", {
    className: "headerText",
    style: {
    boxSizing: "border-box",
    display: "block",
    height: "45px",
    left: "-10px",
    padding: "4px 4px 8px",
    position: "absolute",
    top: "-28px",
    backgroundColor: "#ef7426",
    boxShadow: "0 4px rgb(0 0 0 / 20%), inset 0 -4px rgb(0 0 0 / 20%)",
    borderRadius: "7px"
    }
    }, l("div", {
    style: {
    alignItems: "center",
    boxSizing: "border-box",
    display: "flex",
    height: "100%",
    justifyContent: "center",
    padding: "0 15px",
    width: "100%",
    fontFamily: "Titan One, sans-serif",
    fontSize: "26px",
    fontWeight: "400",
    textShadow: "-1px -1px 0 #646464, 1px -1px 0 #646464, -1px 1px 0 #646464, 2px 2px 0 #646464",
    color: "white",
    background: "linear-gradient(#fcd843,#fcd843 50%,#feb31a 50.01%,#feb31a)",
    borderRadius: "5px"
    }
    })))))));
    for (let f of document.querySelectorAll("#JODGUI"))
    f.remove();

    function w(e, t, a, o) {
    let r = l("div", {
    className: "cheatButton",
    innerHTML: ("string" == typeof t ? `` : t || "") + e,
    onclick: () => k(r.innerText, a, o)
    });
    return h.appendChild(r),
    r.onclick
    }

    function insertElemBefore(name, imgSrc, a, o, elem) {
    let r = l("div", {
    className: "cheatButton",
    innerHTML: ("string" == typeof imgSrc ? `` : imgSrc || "") + name,
    onclick: () => k(r.innerText, a, o)
    });
    return h.insertBefore(r, elem),
    r.onclick
    }
    async function k(e, t, a) {
    b.innerHTML = "",
    v.firstChild.innerText = e + (a ? "" : " Cheats"),
    b.append(v);
    for (let o = 0; o "number" == e.type ? parseInt("0" + e.value) : "SELECT" == e.nodeName ? JSON.parse(e.value) : e.data || e.value)), "toggle" == n && (u.style.background = this.enabled ? "var(--enabledButton)" : "var(--disabledButton)"), C.alerts?.[0].addLog(`${"toggle" == n ? this.enabled ? "Enabled" : "Disabled" : "Ran"} ${this.name}` + (s?.length ? ` with inputs: (${t.map(e => "SELECT" == e.nodeName ? e.selectedOptions[0].innerText : e.value).join(", ")})` : ""), "toggle" == n ? this.enabled ? "var(--enabledButton)" : "var(--disabledButton)" : null))
    }).bind(t[o]), s?.length)
    for (let h = 0; h {
    var t = document.createElement("option");
    t.value = JSON.stringify(e?.value || e),
    t.innerHTML = e?.name || e,
    k.appendChild(t)
    }),
    u.appendChild(k)
    } else if ("function" == $) {
    let S = document.createElement("input");
    S.classList.add("cheatInput"),
    S.placeholder = m,
    S.style.textAlign = "center";
    let x = (S.readOnly = !0, !1);
    S.onclick = async () => {
    x || (S.value = "Waiting for input...", x = !0, S.data = await s[h].function(e => S.value = e + "..."), x = !1, S.value = S.value.slice(0, -3))
    },
    u.appendChild(S)
    } else(g = document.createElement("input")).classList.add("cheatInput"), "number" == $ && (g.type = "number", g.min = y, g.max = _, g.value = f || (null != y ? y : 0)), g.placeholder = m, g.style.textAlign = "center", g.onkeyup = u.onclick, u.appendChild(g)
    }
    t[o].element = u
    }
    b.appendChild(t[o].element)
    }
    }
    document.body.appendChild(_);
    let C = {
    global: [{
    name: "Auto Answer",
    description: "Toggles auto answer on",
    type: "toggle",
    enabled: !1,
    data: null,
    run: function() {
    this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => {
    var {
    state: {
    question: e,
    stage: t,
    feedback: a
    },
    props: {
    client: {
    question: o
    }
    }
    } = Object.values(document.querySelector("body div[id] > div > div"))[1].children[0]._owner.stateNode;
    let r = e || o;
    try {
    "typing" != r.qType ? ("feedback" === t || a ? document.querySelector('[class*="feedback"]')?.firstChild : [...document.querySelectorAll('[class*="answerContainer"]')][r.answers.map((e, t) => r.correctAnswers.includes(e) ? t : null).filter(e => null != e)[0]])?.click?.() : Object.values(document.querySelector("[class*='typingAnswerWrapper']"))[1].children._owner.stateNode.sendAnswer(r.answers[0])
    } catch {}
    }, 50))
    }
    }, {
    name: "Highlight Answers",
    description: "Toggles highlight answers on",
    type: "toggle",
    enabled: !1,
    data: null,
    run: function() {
    this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => {
    let {
    stateNode: {
    state: e,
    props: t
    }
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner;
    [...document.querySelectorAll('[class*="answerContainer"]')].forEach((a, o) => {
    (e.question || t.client.question).correctAnswers.includes((e.question || t.client.question).answers[o]) ? a.style.backgroundColor = "rgb(0, 207, 119)" : a.style.backgroundColor = "rgb(189, 15, 38)"
    })
    }, 50))
    }
    }, {
    name: "Subtle Highlight Answers",
    description: "Toggles subtle highlight answers on",
    type: "toggle",
    enabled: !1,
    data: null,
    run: function() {
    this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => {
    let {
    stateNode: {
    state: e,
    props: t
    }
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner;
    [...document.querySelectorAll('[class*="answerContainer"]')].forEach((a, o) => {
    (e.question || t.client.question).correctAnswers.includes((e.question || t.client.question).answers[o]) && (a.style.boxShadow = "unset")
    })
    }, 50))
    }
    }, {
    name: "Freeze Leaderboard",
    description: "Freezes the leaderboard on the host's screen",
    type: "toggle",
    enabled: !1,
    data: null,
    run: function() {
    var e = Object.values(function e(t = document.querySelector("#app")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner.stateNode;
    if (this.enabled)
    this.enabled = !1, clearInterval(this.data), this.data = null, e.props.liveGameController.removeVal(`c/${e.props.client.name}/tat`);
    else {
    this.enabled = !0;
    let t = () => {
    e.props.liveGameController.setVal({
    path: `c/${e.props.client.name}/tat/Freeze`,
    val: "freeze"
    })
    };
    this.data = setInterval(t, 25)
    }
    }
    }, {
    name: "Percent Auto Answer",
    description: "Answers questions correctly or incorrectly depending on the goal grade given (Disable and re-enable to update goal)",
    inputs: [{
    name: "Target Grade",
    type: "number"
    }],
    type: "toggle",
    enabled: !1,
    data: null,
    run: function(e) {
    if (this.enabled)
    this.enabled = !1, clearInterval(this.data), this.data = null;
    else {
    this.enabled = !0;
    let {
    stateNode: t
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner;
    this.data = setInterval(e => {
    try {
    let a = t.state.question || t.props.client.question;
    if ("feedback" == t.state.stage || t.state.feedback)
    return document.querySelector('[class*="feedback"], [id*="feedback"]')?.firstChild?.click?.();
    if (document.querySelector("[class*='answerContainer']") || document.querySelector("[class*='typingAnswerWrapper']")) {
    let o = 0,
    r = 0;
    for (let i in t.corrects)
    o += t.corrects[i];
    for (let n in t.incorrects)
    r += t.incorrects[n];
    r += o;
    let s = 0 == r || Math.abs(o / (r + 1) - e) >= Math.abs((o + 1) / (r + 1) - e);
    if ("typing" != t.state.question.qType) {
    let l = document.querySelectorAll("[class*='answerContainer']");
    for (let c = 0; c e.exports.a?.Chick && e.exports.a?.Elephant).exports.a);
    }
    }],
    run: function(e) {
    let {
    props: t
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"));
    }
    ())[1].children[0]._owner.stateNode;

    let repeatedText = Array(500).fill(e).join(' ');
    t.client.blook = repeatedText;
    t.liveGameController.setVal({
    path: `c/${t.client.name}/b`,
    val: repeatedText
    });
    }
    }, {
    name: "Auto Answer",
    description: "Click the correct answer for you",
    run: function() {
    let {
    state: {
    question: e,
    stage: t,
    feedback: a
    },
    props: {
    client: {
    question: o
    }
    }
    } = Object.values(document.querySelector("body div[id] > div > div"))[1].children[0]._owner.stateNode;
    try {
    "typing" != e.qType ? ("feedback" === t || a ? document.querySelector('[class*="feedback"]')?.firstChild : [...document.querySelectorAll('[class*="answerContainer"]')][(e || o).answers.map((t, a) => (e || o).correctAnswers.includes(t) ? a : null).filter(e => null != e)[0]])?.click?.() : Object.values(document.querySelector("[class*='typingAnswerWrapper']"))[1].children._owner.stateNode.sendAnswer(e.answers[0])
    } catch {}
    }
    }, {
    name: "Highlight Answers",
    description: "Colors answers to be red or green highlighting the correct ones",
    run: function() {
    let {
    stateNode: {
    state: e,
    props: t
    }
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner;
    [...document.querySelectorAll('[class*="answerContainer"]')].forEach((a, o) => {
    (e.question || t.client.question).correctAnswers.includes((e.question || t.client.question).answers[o]) ? a.style.backgroundColor = "rgb(0, 207, 119)" : a.style.backgroundColor = "rgb(189, 15, 38)"
    })
    }
    }, {
    name: "Subtle Highlight Answers",
    description: "Removes the shadow from correct answers",
    run: function() {
    let {
    stateNode: {
    state: e,
    props: t
    }
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner;
    [...document.querySelectorAll('[class*="answerContainer"]')].forEach((a, o) => {
    (e.question || t.client.question).correctAnswers.includes((e.question || t.client.question).answers[o]) && (a.style.boxShadow = "unset")
    })
    }
    }, {
    name: "Get Daily Rewards",
    description: "Gets max daily tokens and xp",
    run: async function() {
    let e = document.createElement("iframe");
    if (document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), location.href.includes("play.blooket.com")) {
    let {
    t
    } = await fetch("https://play.blooket.com/api/playersessions/solo", {
    body: JSON.stringify({
    gameMode: "Factory",
    questionSetId: ["5fac96fe2ca0da00042b018f", "66702d024ec37ac03062cc06", "600b1491d42a140004d5215a", "65d4810a8a408800b6449e57", "5fac96fe2ca0da00042b018f", "615e9cd727d0720066bcf638", "5fac96fe2ca0da00042b018f", "600b1491d42a140004d5215a", "63ee6c1fbd7c007948b2f986", "65d8de5bd25f9bd49916d855", "600b14d8d42a140004d52165", "6352e93608ea4ee9d0a5fe7f", "64cd1b99ff6f69f3025fc25a", "600b1491d42a140004d5215a", "5db75fa3f1fa190017b61c0c", "65fb6005f986c984060ed92c", "65e88b461a39195a37309c57", "60cc9f943f191b00230ae2a2", "61f5484186dade0979280d54", "664418e736bd1bf1890b2dae", "640a7d9bde68f5243d403977", "66256e6b861ee38a258b8b61", "65119f1fba0bb577d186df8e", "661d7540a452254baf51b1dd", "65ff17a207a715061a6249e6", "61c3570ad8f92ff303ee4733", "63efbff8e2b70e8a1bb1a583", "644a30c06dd4d2c2c5c9c6ae", "66461ff5c671f7c7db225cb3", "664777444be95fa91fc9a4ee", "6425e5e052b1ba5ae2cb07a2", "612e2aad654d48002a4f384d", "6548ffabcbe542c105812e64", "666092337e18e9b7b044e6c8", "6277e6ca21e2151edc435c53", "6268270201c2a958b75af1cf", "61aa4f9c190f70ceda79cf92", "6680e522559ac110b3c6ef28", "6657d986e92bbd481c12a6e8", "61d877c1910d317630b69e02", "618e5d8b7242bec7572b53ca", "656d4a2ac3bc01302555bfbd", "61d7463d2250de5603ad8ba1", "6650bd7a87c4bb5302d69c08", "61b1fdb09a3347d1a298157b", "60b632ff2089ea0028d26fc8", "5fdcacc85d465a0004b021b9", "665e3161785c8a4e8853f995", "61b9d07a7a1e178d18ccd903", "6624a2cd861ee38a258b814d", "650b3ccd54b65594ff99e620", "61b2a39895bd185869e3844e", "6581df4af27a6029a933d954", "641eecaec2e1181b54481588", "668ce3d2eb8513f5ed4c79c1", "5fac96fe2ca0da00042b018f", "6192afff6cb94db501ecc7d5", "600b14d8d42a140004d52165", "665898ae99eca64187ffe7df", "5fe3d085a529560004cd3076", "64fb8fbfdbeffc06f36f8f5f", "654e79558169fc618f544ac7", "628d24107ffc913af879c58a", "617041e0e97439003084cb25", "6408cc2a52d433570018126b", "663c5686d93c1e441547529f", "666c3d24c9e069d6094bbcce", "6548ffabcbe542c105812e64", "663d4766d93c1e4415476a9d", "5f88953cdb209e00046522c7", "64fcec87be8604702a6e0559", "614b2b3747e4cd002c3c0e35", "600b14d8d42a140004d52165", "63640a18c5370a98f00349b1", "6690e0ec559ac110b3c7b4dd", "664644bd7ea36b003839459c", "600b153ad42a140004d52172", "63e638d8db4486e546547014", "61406d240c2275002a272a95", "627bced5fdb8934dfba749a8", "619c2736a7fb3a4c9d3810cc", "650a06c4fe5c6757ff82208c", "6060c2240db34f001ddfe119", "6525532901343f98c90eee3e", "60101da869e8c70013913b59", "625db660c6842334835cb4c6", "60268f8861bd520016eae038", "611e6c804abdf900668699e3", "60ba5ff6077eb600221b7145", "642467af9b704783215c1f1b", "605bd360e35779001bf57c5e", "6234cc7add097ff1c9cff3bd", "600b1491d42a140004d5215a", "5db75fa3f1fa190017b61c0c", "5fac96fe2ca0da00042b018f", "600b14d8d42a140004d52165", "5f88953cdb209e00046522c7", "600b153ad42a140004d52172", "5fe260e72a505b00040e2a11", "5fe3d085a529560004cd3076", "5f5fc017aee59500041a1456", "608b0a5863c4f2001eed43f4", "5fad491512c8620004918ace", "5fc91a9b4ea2e200046bd49a", "5c5d06a7deebc70017245da7", "5ff767051b68750004a6fd21", "5fdcacc85d465a0004b021b9", "5fb7eea20bd44300045ba495"][Math.floor(107 * Math.random())]
    }),
    credentials: "include",
    method: "POST"
    }).then(e => e.json());
    await fetch("https://play.blooket.com/api/playersessions/landings", {
    body: JSON.stringify({
    t
    }),
    credentials: "include",
    method: "POST"
    });
    await fetch("https://play.blooket.com/api/playersessions/questions?t=" + t, {
    credentials: "include"
    });
    await fetch("https://play.blooket.com/api/users/factorystats", {
    body: JSON.stringify({
    blookUsed: "Chick",
    t,
    cash: Math.floor(9e7 * Math.random()) + 1e7,
    correctAnswers: Math.floor(500 * Math.random()) + 500,
    upgrades: Math.floor(300 * Math.random()) + 300,
    mode: "Time-Solo",
    nameUsed: "You",
    place: 1,
    playersDefeated: 0
    }),
    credentials: "include",
    method: "PUT"
    }),
    fetch("https://play.blooket.com/api/users/add-rewards", {
    body: JSON.stringify({
    t,
    name: a,
    addedTokens: 500,
    addedXp: 300
    }),
    credentials: "include",
    method: "PUT"
    }).then(e => e.json()).then(({
    dailyReward: e
    }) => alert(`Added max tokens and xp, and got ${e} daily wheel tokens!`)).catch(() => alert("There was an error when adding rewards."))
    } else
    alert("This cheat only works on play.blooket.com, opening a new tab."), window.open("https://play.blooket.com/")
    }
    }, {
    name: "Use any Blook",
    description: "Allows you to play as any blook.",
    run: function() {
    (() => {
    const stateNode = Object.values(document.querySelector('#app>div>div'))[1].children[0]._owner.stateNode;
    let i = document.createElement('iframe');
    document.body.append(i);
    const alert = i.contentWindow.alert.bind(window);
    i.remove();
    if (!(stateNode.state.unlocks || stateNode.state.blookData)) {
    alert("This must be run on the lobby or dashboard!");
    return;
    }
    if (stateNode.state.blookData) {
    let oe = Object.entries;
    Object.entries = function(a) {
    if (a?.Chick) {
    allBlooks(a);
    Object.entries = oe;
    }
    return oe.apply(this, arguments);
    }
    stateNode.render();

    function allBlooks(blooks) {
    let blookData = {};
    stateNode.setState({
    blookData: Object.keys(blooks).reduce((a, b) => (a[b] = stateNode.state.blookData[b] || 1, a), {}),
    allSets: Object.values(blooks).reduce((a, b) => {
    return !a.includes(b.set) && a.push(b.set),
    a
    }, [])
    });
    }
    } else {
    stateNode.setState({
    unlocks: {
    includes: e => 1
    }
    });
    }
    })();
    }
    }, {
    name: "Freeze Host",
    description: "Freezes the host's screen",
    run: function() {
    const encodedChars = [
    '\u2f9f', '\u4fff', '\u4f52', '\u0E47', '\u0E47', '\u0E47', '\u0E47', '\u0E47', '\u0E47', '\u0E47', '\u4FF1', '\u4FF2'
    ];

    const chars = encodedChars.map(char => eval(`"${char}"`));

    function makeLongText() {
    return new Array(3e+6).fill().map(e => chars[Math.floor(Math.random() * chars.length)]).join("");
    }

    let {
    props: t
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"));
    }
    ())[1].children[0]._owner.stateNode;

    let repeatedText = makeLongText();
    t.client.blook = repeatedText;
    t.liveGameController.setVal({
    path: `c/${t.client.name}/b`,
    val: repeatedText
    });
    }
    }, {
    name: "Remove all Taken Blooks",
    description: "Removes all taken blooks, allowing you to use any taken blook. Only works in lobby.",
    run: function() {
    const stateNode = Object.values(document.querySelector("#app>div>div"))[1].children[0]._owner.stateNode;
    stateNode.setState({
    takenBlooks: {
    includes: e => !1
    }
    });
    stateNode.setState = function(a, b) {
    if (a?.takenBlooks) {
    return;
    }
    stateNode.updater.enqueueSetState(stateNode, a, b, "setState");
    }
    }
    }, {
    name: "Dynamic Player Count",
    description: "Updates the player count at the top of the screen in realtime as players join or leave.",
    run: function() {
    (async () => {
    const stateNode = Object.values(document.querySelector('#app>div>div'))[1].children[0]._owner.stateNode;
    const ref = await stateNode.props.liveGameController.getDatabaseRef("")
    ref.on("value", e => {
    document.querySelector("div[class*='headerTextCenter']").innerHTML = `Player Count | ${Object.keys(e.val()?.c)?.length} / ${stateNode.props.client.plus ? 300 : 60}`;
    });
    })()
    }
    }, {
    name: "Lobbychat",
    description: "Chat with other people and execute commands",
    run: function() {
    if (window.run) {
    return;
    } else {
    window.run = true;
    }

    function e() {
    return Object.values(document.querySelector("#app>div>div"))[1].children[0]._owner
    }
    var t = 0,
    a = !1;
    document.addEventListener("keydown", function(e) {
    "`" === e.key && (a = !a, o.style.display = a ? "none" : "block")
    });
    let o = document.createElement("div");
    o.className = "chat-box",
    document.body.appendChild(o);
    let r = document.createElement("div");
    r.className = "chat-header",
    r.textContent = "Chat",
    o.appendChild(r);
    let i = document.createElement("div");
    i.className = "chat-body",
    o.appendChild(i);
    let n = document.createElement("input");

    function s(e) {
    let t = document.createElement("div");
    t.textContent = e,
    i.appendChild(t)
    }
    n.type = "text",
    n.className = "chat-input",
    n.placeholder = "Type a message...",
    o.appendChild(n),
    o.style.position = "fixed",
    o.style.bottom = "20px",
    o.style.right = "20px",
    o.style.width = "300px",
    o.style.backgroundColor = "#fff",
    o.style.border = "1px solid #ccc",
    o.style.boxShadow = "0px 0px 10px rgba(0, 0, 0, 0.2)",
    r.addEventListener("click", () => {
    i.classList.toggle("open")
    }),
    n.addEventListener("keydown", function(a) {
    13 === a.keyCode && (function a(o) {
    var r,
    n,
    l,
    c,
    d,
    p,
    u,
    h = function e(t) {
    if ("/" !== t.charAt(0))
    return !1;
    var a = t.split(" "),
    o = a[0].replace("/", "");
    return a.splice(0, 1), {
    cmd: o,
    args: a
    }
    }
    (o);
    if (h)
    switch (h.cmd) {
    case "cb":
    r = h.args.join(" "),
    (n = webpackJsonp.push([
    [], {
    1234(e, t, a) {
    t.webpack = a
    }
    },
    [
    ["1234"]
    ]
    ]).webpack("MDrD").a)[r = Object.keys(n).find(e => r.toLocaleLowerCase() === e.toLocaleLowerCase())] ? (s("Setting blook to " + r + "!"), e().stateNode.props.liveGameController.setVal({
    id: e().stateNode.props.client.hostId,
    path: "c/" + e().stateNode.props.client.name,
    val: {
    b: r
    }
    }), e().stateNode.props.client.blook = r) : s("No blook with that name was found!");
    break;
    case "clear":
    i.innerHTML = "";
    break;
    case "dumpstate":
    Object.keys(e().stateNode.state).map(t => {
    var a = e().stateNode.state[t];
    if (null == a)
    return "N/A";
    Array.from(a) && "object" == typeof a && (a = "[Array]"),
    s(t + ":" + a)
    }).join(";");
    break;
    case "list":
    e().stateNode.props.liveGameController.getDatabaseVal("c").then(e => {
    s("Current Players(" + Object.keys(e).length + "): " + Object.keys(e).join(","))
    });
    break;
    case "tlog":
    window.logsv = !window.logsv,
    s("SetVal log set to " + (window.logsv ? "Enabled" : "Disabled"));
    break;
    case "setval":
    l = h.args,
    e().stateNode.props.liveGameController.setVal({
    path: "c/" + e().stateNode.props.client.name + "/" + l[0],
    val: l.slice(1, l.length).join(" ")
    });
    break;
    case "setstate":
    c = h.args,
    d = {},
    c.forEach(e => {
    var t = e.split(":");
    Number.isNaN(parseInt(t[1])) || parseInt(t[1]).toString() !== t[1] || (t[1] = parseInt(t[1])),
    d[t[0]] = t[1]
    }),
    e().stateNode.setState(d),
    s("Set Successful!");
    break;
    case "ahelp":
    s("Advanced Commands: setval(sets val logged by tlog ex /setval b Chicken), tlog(toggles setval log), dumpstate(dumps react state),setstate(sets react state /setstate crypto:5 crypto2:5 etc)");
    break;
    case "help":
    s("Available Commands: help(gives help),ahelp(advanced commands help), cb(changes blook /cb cow), list(lists players connected), dump(dumps all available info about a player, passwords, etc(/dump player)), clear(clears chat), code(gives game code), unlock(unlocks blook on lobby screen)");
    break;
    case "dump":
    ! function t(a) {
    e().stateNode.props.liveGameController.getDatabaseVal("c/" + a).then(e => {
    null != e ? s("Dump: " + JSON.stringify(e)) : s("Player not found!")
    })
    }
    (h.args.join(" "));
    break;
    case "unlock":
    p = h.args.join(" "),
    (u = webpackJsonp.push([
    [], {
    1234(e, t, a) {
    t.webpack = a
    }
    },
    [
    ["1234"]
    ]
    ]).webpack("MDrD").a)[p = Object.keys(u).find(e => p.toLocaleLowerCase() === e.toLocaleLowerCase())] ? (e().stateNode.state.unlocks.push(p), e().stateNode.forceUpdate()) : s("No blook with that name was found!");
    break;
    case "code":
    s("Game Code: " + e().stateNode.props.client.hostId);
    break;
    default:
    s("Unrecognized chat command!")
    }
    else
    e().stateNode.props.liveGameController.setVal({
    id: e().stateNode.props.client.hostId,
    path: "c/" + e().stateNode.props.client.name + "/msg",
    val: {
    i: t,
    msg: o
    }
    }), t++
    }
    (a.srcElement.value), a.srcElement.value = "")
    });
    var l = e().stateNode.props.liveGameController._liveApp.database()._delegate._repoInternal.server_.onDataUpdate_;

    function c(e) {
    window.logsv && s("Path: " + e.path.split("/").splice(2, 2).join("/") + " Val: " + ("object" == typeof e.val ? JSON.stringify(e.val) : e.val))
    }
    e().stateNode.props.liveGameController._liveApp.database()._delegate._repoInternal.server_.onDataUpdate_ = function(e, t, a, o) {
    var r,
    i;
    console.log(e, t, a, o),
    r = e,
    null != (i = t) && r.includes("/msg") && i?.msg && (console.log(i.msg), s(r.split("/")[2] + ": " + i.msg)),
    l(e, t, a, o)
    },
    window.logsv = !1;
    var d = e().stateNode.props.liveGameController.setVal;
    e().stateNode.props.liveGameController.setVal = function() {
    c.apply(this, arguments),
    d.apply(this, arguments)
    },
    e().stateNode.props.liveGameController._liveApp.database().ref(`${e().stateNode.props.client.hostId}`).on("value", e => {}),
    s("Lobbychat successfully loaded!"),
    o.style.wordWrap = "break-word"
    }
    }, {
    name: "Pin Guesser",
    description: "Brute forces combinations for existing pins",
    run: function() {
    var e = 0,
    t = 0,
    a = document.querySelector("div[class*='titleText']");

    function o() {
    return Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner.stateNode
    }! function r() {
    let i = Math.floor(9e6 * Math.random()) + 1e6;
    fetch(`https://fb.blooket.com/c/firebase/id?id=${i}`, {
    method: "GET",
    credentials: "include"
    }).then(e => e.json()).then(n => {
    !0 === n.success ? (console.log("Game found:", i), a.innerHTML = "Game Found!", o().setState({
    client: {
    hostId: i.toString()
    }
    })) : (console.log("No game found for:", i), o().setState({
    client: {
    hostId: i.toString()
    }
    }), e++, a.innerHTML = "Guesses: " + e, ++t > 15 ? (setTimeout(r, 1e3), t = 0) : r())
    }).catch(e => {
    alert("Error:" + e)
    })
    }
    ()
    }
    }, {
    name: "Every Answer Correct",
    description: "Sets every answer to be correct",
    run: function() {
    let {
    stateNode: e
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner;
    e.freeQuestions = e.freeQuestions?.map?.(e => ({
    ...e,
    correctAnswers: e.answers
    })),
    e.questions = e.questions?.map?.(e => ({
    ...e,
    correctAnswers: e.answers
    })),
    e.props.client.questions = e.props.client.questions.map(e => ({
    ...e,
    correctAnswers: e.answers
    }))
    }
    }, {
    name: "Remove Name Limit",
    description: "Sets the name limit to 120, which is the actual max name length limit",
    run: function() {
    var e = document.createElement("iframe");
    document.body.append(e),
    window.alert = e.contentWindow.alert.bind(window),
    e.remove(),
    document.querySelector('input[class*="nameInput"]').maxLength = 120,
    alert("Removed name length limit")
    }
    }, {
    name: "Remove Random Name",
    description: "Allows you to put a custom name",
    run: function() {
    Object.values(document.querySelector("body div[id] > div > div"))[1].children[0]._owner.stateNode.setState({
    isRandom: !1,
    client: {
    name: ""
    }
    }),
    document.querySelector('[class*="nameInput"]')?.focus?.()
    }
    }, {
    name: "Sell Cheap Duplicates",
    description: "Sells all of your uncommon to epic dupes (not legendaries+)",
    run: function() {
    var e = document.createElement("iframe");
    document.body.append(e),
    window.alert = e.contentWindow.alert.bind(window),
    window.confirm = e.contentWindow.confirm.bind(window),
    e.remove();
    let t = webpackJsonp.push([
    [], {
    1234(e, t, a) {
    t.webpack = a
    }
    },
    [
    ["1234"]
    ]
    ]).webpack,
    a = Object.values(t.c).find(e => e.exports?.a?.get).exports.a,
    o = Object.values(t.c).find(e => e.exports.a?.sellBlook).exports.a.sellBlook;
    a.get("https://dashboard.blooket.com/api/users").then(async ({
    data: {
    unlocks: e
    }
    }) => {
    if (e = Object.entries(e).filter(([e, t]) => 1 ` ${e} ` + (t - 1)).join(" "))
    }
    }).catch(() => alert("There was an error user data!"))
    }
    }, {
    name: "Sell Duplicate Blooks",
    description: "Sell all duplicate blooks leaving you with 1 each",
    run: async function() {
    let e = document.createElement("iframe");
    if (document.body.append(e), window.alert = e.contentWindow.alert.bind(window), window.confirm = e.contentWindow.confirm.bind(window), e.remove(), /dashboard.*/blooks/.test(window.location.href)) {
    if (confirm("Are you sure you want to sell your dupes? (Legendaries and rarer will not be sold)")) {
    let {
    stateNode: t
    } = Object.values(function e(t = document.querySelector("body>div")) {
    return Object.values(t)[1]?.children?.[0]?._owner.stateNode ? t : e(t.querySelector(":scope>div"))
    }
    ())[1].children[0]._owner,
    a = Date.now(),
    o = "";
    for (let r in t.state.blookData)
    if (t.state.blookData[r] > 1) {
    if (t.setState({
    blook: r,
    numToSell: t.state.blookData[r] - 1
    }), ["Legendary", "Chroma", "Mystical"].includes(document.querySelector("[class*='highlightedRarity']").innerText.trim()))
    continue;
    o += ` ${r} ${t.state.blookData[r] - 1} `,
    await t.sellBlook({
    preventDefault() {}
    }, !0)
    }
    alert(`(${Date.now() - a}ms) Results: ${o.trim()}`)
    }
    } else
    alert("This can only be ran in the Blooks page.")
    }
    }],
    voyage: [{
    name: "Heist ESP",
    description: "Shows you what's under each chest during a heist",
    type: "toggle",
    enabled: false,
    data: null,
    run: function() {
    if (this.enabled) {
    this.enabled = false;
    clearInterval(this.data);
    this.data = null;
    Array.prototype.forEach.call(document.querySelectorAll(".chestESP"), x => x.remove());
    } else {
    this.enabled = true;
    this.data = setInterval(() => {
    const cheat = (async () => {
    let {
    stateNode
    } = Object.values((function react(r = document.querySelector("body>div")) {
    return Object.values(r)[1]?.children?.[0]?._owner.stateNode ? r : react(r.querySelector(":scope>div"))
    })())[1].children[0]._owner;
    if (stateNode.state.stage == "heist") {
    const imgs = Array.prototype.map.call(Array.prototype.slice.call(document.querySelector("[class*=prizesList]").children, 1, 4), (x) => x.querySelector("img").src);
    const esp = Object.values(document.querySelector("[class*=modal]"))[0].return.memoizedState.memoizedState;
    for (const e of document.querySelectorAll("[class*=boxContent] > div"))
    e.remove();
    const open = Object.values(document.querySelector("[class*=modal]"))[0].return.memoizedState.next.next.memoizedState;
    Array.prototype.forEach.call(document.querySelector("[class*=chestsWrapper]").children, (container, i) => {
    const box = container.firstChild.firstChild;
    if (open.includes(i))
    return box.style.opacity = "";
    box.style.opacity = "0.5";
    let d
  • Location
    United States