MAEJ3RKED-TOOLS for Fishtank.live

Add-on Tools for Fishtank.live Season 3

/*!
 * // ==UserScript==
 * // @name         MAEJ3RKED-TOOLS for Fishtank.live
 * // @description  Add-on Tools for Fishtank.live Season 3
 * // @author       f3rked
 * // @version      2.27.0
 * // @license      GNU GPLv3
 * // @homepageURL  https://github.com/f3rked/maej3rked-tools
 * // @namespace    https://greasyfork.org/en/scripts/465416-maejok-tools-for-fishtank-live
 * // @icon         https://raw.githubusercontent.com/f3rked/maej3rked-tools/master/public/images/icon.png
 * // @supportURL   https://github.com/f3rked/maej3rked-tools/issues
 * // @match        https://www.fishtank.live/
 * // @match        https://www.fishtank.live/clips
 * // @match        https://www.fishtank.live/clip/*
 * // @match        https://www.fishtank.live/chat
 * // @match        https://www.fishtank.live/episodes
 * // @run-at       document-idle
 * // ==/UserScript==
 *
 */(()=>{"use strict";var e={911:(e,t,s)=>{s.d(t,{A:()=>i});var a=s(601),o=s.n(a),n=s(314),l=s.n(n)()(o());l.push([e.id,'@keyframes bounce{0%,100%{transform:scale(1)}50%{transform:scale(0.9)}}@keyframes glisten{0%,100%{box-shadow:0 0 0 2px rgba(0,148,255,.5)}50%{box-shadow:0 0 0 2px rgba(0,0,0,.7)}}.maejok-settings-about{font-size:large;text-transform:none;color:#fff;padding-bottom:10px;font-family:JetBrains Mono,monospace;overflow-y:auto}.maejok-settings-about .maejok-settings-about-title{color:#f5f;text-shadow:0px 0px 2px #000;font-weight:600;font-size:x-large;margin-bottom:10px}.maejok-settings-about .maejok-settings-about-changelog{margin-bottom:20px;font-size:small}.maejok-settings-about .maejok-settings-about-author,.maejok-settings-about .maejok-settings-about-contact{margin:3px auto}.maejok-settings-about .maejok-settings-about-contributors{margin:10px auto}.maejok-settings-about .maejok-settings-about-message{max-width:700px;font-weight:400;font-size:14px;margin-top:20px;line-height:normal}.maejok-settings-about .maejok-settings-about-message a{color:#11f8ff;font-weight:700}.maejok-settings-about .maejok-settings-about-message p{margin-bottom:20px}.maejok-accordion-header{border-radius:4px;border:2px inset rgba(203,198,203,.5);background-color:#2b2d2e;background-image:linear-gradient(180deg, #1f2021, #121314, black);box-shadow:inset 0px 2px 8px 0px #000;border:1px inset rgba(203,198,203,.5);border-radius:2;color:#080;text-shadow:0 0 4px #006f00;font-family:Alarm Clock,monospace;text-transform:uppercase;cursor:pointer;padding:8px;width:100%;text-align:left;outline:none;font-size:15px;transition:.4s}.maejok-accordion-header:hover{background-color:#1d2127}.maejok-accordion-header:after{content:"+";color:#008702;font-weight:600;text-shadow:0 0 4px rgba(0,255,4,.4196078431);float:right;margin-left:4px}.maejok-accordion-active{border-bottom-right-radius:0;border-bottom-left-radius:0}.maejok-accordion-active,.accordion:hover{color:#00ff05;text-shadow:0 0 4px #00ff05;font-family:Alarm Clock,monospace;font-weight:600}.maejok-accordion-active+.maejok-accordion-content{padding:20px 18px 10px}.maejok-accordion-active:after{content:"−";color:#00ff05;font-weight:600;text-shadow:0 0 4px #00ff05}.maejok-accordion-content{border-radius:4px;border:2px inset rgba(203,198,203,.5);background-color:#4c474b;background-image:linear-gradient(180deg, #3f3b3e, #322e31, black);box-shadow:inset 0px 2px 8px 0px #000;border-radius:2;border-top-right-radius:0;border-top-left-radius:0;border:1px inset rgba(203,198,203,.5);border-top:0;border-bottom:0;position:relative;max-height:0;padding:0 16px;overflow:hidden;transition:max-height .2s ease-out}.maejok-modal-emotes{padding:8px;width:650px;height:600px;margin:8px 0 16px 0;overflow-y:auto}.maejok-modal-emotes .maejok-emotes-list-note{text-align:center;font-style:italic;color:#32c0e0;margin-bottom:16px;font-weight:600}.maejok-modal-emotes .maejok-emotes-list{display:flex;gap:4px;flex-direction:column;padding-right:4px}.maejok-modal-emotes .maejok-emotes-list .maejok-emotes-list-label{font-size:1.1em;font-weight:600;color:#f8ec94;margin-top:16px}.maejok-modal-emotes .maejok-emotes-list hr{margin:16px 0;border:none;border-top:2px solid rgba(0,0,0,.5)}.maejok-modal-emotes .maejok-emotes-list .maejok-emotes-list_item{display:flex;padding:8px;border-radius:4px;justify-content:space-around;border:2px solid rgba(0,0,0,0)}.maejok-modal-emotes .maejok-emotes-list .maejok-emotes-list_item:hover{background-color:rgba(0,0,0,.15);border:2px solid rgba(255,255,255,.25)}.maejok-modal-emotes .maejok-emotes-list .maejok-emotes-list_item:hover .maejok-emotes-list_item_use,.maejok-modal-emotes .maejok-emotes-list .maejok-emotes-list_item:hover .maejok-emotes-list_item_pin{visibility:visible}.maejok-modal-emotes .maejok-emotes-list .maejok-emotes-list_item:hover .maejok-emotes-list_item_use:hover,.maejok-modal-emotes .maejok-emotes-list .maejok-emotes-list_item:hover .maejok-emotes-list_item_pin:hover{background-color:rgba(0,255,5,.6)}.maejok-modal-emotes .maejok-emotes-list_item_command{min-width:104px;align-items:center;display:flex;color:#55d5b4;text-shadow:2px 2px 0 rgba(0,0,0,.75);font-weight:600}.maejok-modal-emotes .maejok-emotes-list_item_command_demote{min-width:104px;align-items:center;display:flex;font-weight:600;color:rgba(255,51,51,.7)}.maejok-modal-emotes .maejok-emotes-list_item_emote{flex:1;padding:8px;width:325px;margin:0 16px;border-radius:4px;text-align:center;font-style:italic;background-color:rgba(0,0,0,.5);outline:2px solid rgba(0,0,0,.55)}.maejok-modal-emotes .maejok-emotes-list_item_use,.maejok-modal-emotes .maejok-emotes-list_item_pin{padding:2px;width:60px;height:28px;border-radius:4px;color:#000;font-weight:500;align-self:center;align-items:center;display:flex;justify-content:center;cursor:pointer;visibility:hidden;background-color:rgba(85,213,180,.9)}.maejok-modal-emotes .maejok-emotes-list_item_use:first-of-type,.maejok-modal-emotes .maejok-emotes-list_item_pin:first-of-type{margin-right:3px}.maejok-friend-message{background-color:rgba(0,148,255,.1)}.maejok-friend-message:hover{background-color:rgba(0,148,255,.1);outline:1px solid rgba(0,148,255,.25)}.maejok-watched-message{background-color:rgba(0,255,5,.1)}.maejok-watched-message:hover{background-color:rgba(0,255,5,.1);outline:1px solid rgba(0,255,5,.25)}.maejok-context-message{background-color:rgba(255,29,0,.1)}.maejok-context-message:hover{background-color:rgba(255,29,0,.1);outline:1px solid rgba(255,29,0,.25)}.maejok-input-group{display:flex;margin-bottom:12px}.maejok-input-group .maejok-input-help-label,.maejok-input-group .maejok-input-help-config-label{display:flex;align-self:center;margin-left:8px;font-weight:600;cursor:pointer;color:#55d5b4;text-shadow:0 0 2px #000;margin-top:-3px}.maejok-input-group .maejok-input-help-config-label{margin-top:-1px}.maejok-input-group .maejok-input-label{cursor:pointer;color:#50985d;text-shadow:0 0 2px #000;font-family:Alarm Clock,monospace;align-self:center}.maejok-input-group .maejok-input-toggle{display:none}.maejok-input-group .maejok-input-toggle:checked+.maejok-input-toggle-label{background-color:rgba(248,236,148,.5)}.maejok-input-group .maejok-input-toggle:checked+.maejok-input-toggle-label::before{background-color:rgba(245,207,101,.75);border:.5px solid #cbc6cb;box-shadow:0px 0px 2px 0 rgba(0,0,0,.25);transform:translateX(20px);transition:transform .3s ease-in-out}.maejok-input-group .maejok-input-toggle-label{margin-top:-2px;margin-right:8px;display:inline-block;width:40px;height:20px;border-radius:16px;position:relative;cursor:pointer;background-color:#4c474b;border:1px solid #4c474b;box-shadow:0px 0 4px 0 rgba(0,0,0,.5);transition:background-color 1s ease}.maejok-input-group .maejok-input-toggle-label::before{content:"";position:absolute;top:0;left:0;width:14px;height:14px;margin-top:1px;margin-left:1px;background-color:#cbc6cb;border-radius:50%;border:1px solid rgba(0,0,0,.1);box-shadow:0px 0px 1px 0 rgba(0,0,0,.5);transition:transform .3s ease-in-out,background-color 1s ease-in-out}.maejok-modal_keyprompt_name{background-color:rgba(0,0,0,.65);border-radius:16px;color:#fff}.maejok-input-invalid{box-shadow:inset 0px -66px 0px 0 #bd0000 !important}.maejok-input-button-wrapper{width:50%;margin:24px auto 0;display:grid}.maejok-input-label-checked{color:#00ff04 !important;text-shadow:0 0 2px #080 !important;transition:color .3s ease-in-out,text-shadow .3s ease-in-out}.maejok-input-button{background-size:100% 100%;margin-top:8px;bottom:0;height:36px}.maejok-input-button-bind{margin-left:auto;flex-basis:fit-content;min-width:200px}.maejok-settings-config-wrapper{max-width:330px;margin:24px auto 24px}.maejok-settings-config-wrapper .maejok-settings-config-input-group{display:flex;margin-bottom:16px}.maejok-settings-config-wrapper .maejok-settings-config-input-group .maejok-input-label-textbox{display:flex;align-self:center;font-size:large;color:#f8ec94;font-family:JetBrains Mono,monospace;font-weight:600;text-shadow:0 0 2px rgba(225,239,252,.75)}.maejok-settings-config-wrapper .maejok-settings-config-input-group .maejok-input-textbox{margin-left:24px;color:#fff;padding:8px;border-radius:4px;border:2px inset rgba(204,199,204,.5);background-color:#2b2d2e;background-image:linear-gradient(180deg, #1f2021, #121314, #000);box-shadow:inset 0 2px 8px 0 #000;width:100%}.maejok-settings-config-wrapper .maejok-settings-config-input-group .maejok-input-help-label{display:flex;align-self:center;margin-left:8px;font-weight:800;cursor:pointer;color:#f5cf65;text-shadow:0 0 2px #000}.maejok-settings-config-help{min-width:400px;max-width:800px;font-size:larger;font-weight:600;font-family:JetBrains Mono;color:#f5cf65;line-height:24px;margin:16px 32px 24px;text-align:center}.maejok-settings-config-help strong{color:#fff}.maejok-settings-config-help .maejok-modal_roomname,.maejok-settings-config-help .error{text-shadow:0 0 4px #000}.maejok-settings-config-help .maejok-modal_roomname{color:#5ff}.maejok-settings-config-help .error{color:#f33}.maejok-color-picker-wrapper .maejok-color-picker-group{display:flex;align-items:center;margin-bottom:24px}.maejok-color-picker-wrapper .maejok-color-picker-group .maejok-color-picker-label{margin-top:2px;width:115px;color:#00ff04 !important;text-shadow:0 0 2px #080 !important}.maejok-accordion-highlights{margin-bottom:20px}.maejok-accordion-highlights .maejok-list-wrapper{max-height:500px;overflow-y:auto;width:300px;margin:auto}.maejok-accordion-highlights .maejok-list-wrapper .maejok-list-empty{display:block;text-align:center;color:#00bf03;text-shadow:0 1px 2px #000;margin:20px auto 15px;pointer-events:none;transition:opacity .3s ease-in-out}.maejok-accordion-highlights .maejok-list-wrapper .maejok-list-item-wrapper{padding:10px;display:flex;justify-content:space-between;border-radius:4px;text-transform:none;color:#00bf03;text-shadow:0 1px 2px #000;transition:color .3s ease-in-out,text-shadow .3s ease-in-out}.maejok-accordion-highlights .maejok-list-wrapper .maejok-list-item-wrapper:hover{background-color:rgba(0,0,0,.25);transition:color .3s ease-in-out,background-color .3s ease-in-out}.maejok-accordion-highlights .maejok-list-wrapper .maejok-list-item-wrapper:hover .maejok-list-item{color:#00ff04;text-shadow:0 1px 2px #006012;transition:color .3s ease-in-out,text-shadow .3s ease-in-out}.maejok-accordion-highlights .maejok-list-wrapper .maejok-list-item-wrapper:hover .maejok-list-item-remove{visibility:visible}.maejok-accordion-highlights .maejok-list-wrapper .maejok-list-item-wrapper:hover .maejok-list-item-remove:hover{transform:scale(1)}.maejok-accordion-highlights .maejok-list-wrapper .maejok-list-item-wrapper .maejok-list-item-remove{color:red;cursor:pointer;visibility:hidden;transform:scale(0.8)}.maejok-settings_mentions-list,.maejok-settings_events-list,.maejok-settings_tts-list{display:flex;flex-flow:column;background-color:rgba(0,0,0,.65);padding:8px;max-height:380px;max-width:656px;overflow-y:scroll;margin:0 -16px -8px -16px;font-family:Work Sans,sans-serif;user-select:text;text-transform:none}.maejok-settings_mentions-list .chat-message-default_mentioned__EDIeq,.maejok-settings_events-list .chat-message-default_mentioned__EDIeq,.maejok-settings_tts-list .chat-message-default_mentioned__EDIeq{background-color:unset !important}.maejok-event-timestamp{margin-left:auto;margin-top:4px;margin-right:-10px;margin-bottom:-10px;font-weight:100;color:gray;font-family:JetBrains Mono,monospace !important;font-size:14px}.maejok-event-toast-fix{position:relative !important}.maejok-toast-body-fix{position:relative;min-width:auto !important;max-width:inherit !important;width:100%;pointer-events:auto;display:flex;align-items:center;justify-content:center;color:#fff}.maejok-menu-menu{position:absolute;display:flex;flex-direction:column;font-weight:600;transition:height .3s ease-in-out;text-shadow:2px 2px 3px #000;border-radius:4px;border:2px inset rgba(203,198,203,.5);background-color:#2b2d2e;background-image:linear-gradient(180deg, #1f2021, #121314, black);box-shadow:inset 0px 2px 8px 0px #000}.maejok-menu-menu .maejok-menu-menu_item,.maejok-menu-menu .maejok-menu-menu_no-items{all:unset;cursor:pointer;padding:8px;min-width:200px;text-shadow:1px 1px 2px #000}.maejok-menu-menu .maejok-menu-menu_item:hover,.maejok-menu-menu .maejok-menu-menu_no-items:hover{color:#00ff05;background-color:rgba(255,255,255,.1)}.maejok-menu-menu .maejok-menu-menu_title{all:unset;padding:8px;min-width:200px;text-align:center;background-color:rgba(255,255,255,.05);border-bottom:2px inset rgba(203,198,203,.5)}.maejok-chatters-menu{max-height:300px;overflow-y:auto}.maejok-chatters-menu .maejok-chatters-menu_item .chat-message-default_user__uVNvH{display:flex;flex-direction:row-reverse;font-weight:600}.maejok-chatters-menu .maejok-chatters-menu_item .chat-message-default_clan__t_Ggo{margin-left:auto}.maejok-chatters-menu .maejok-chatters-menu_item:not(:has(.maejok-menu-menu_no-items)){min-width:250px}.maejok-chatters-menu .chat-message-default_user__uVNvH:not(:has(.chat-message-default_clan__t_Ggo)){display:unset;flex-direction:unset}.maejok-hide{display:none !important}.maejok-hide_avatar-fix{top:0 !important;position:relative !important}.maejok-dense-chat{gap:2px !important}.maejok-tts-warning-text{color:red}.maejok-tts-input-warning-border{border-color:red !important}.maejok-hide-fonts{font-family:JetBrains Mono,monospace !important;font-size:14px}.maejok-nontent-overlay-container{position:absolute;top:0;left:0;width:100%;height:100%;align-content:center;justify-items:center;display:grid;grid-template-columns:33% 33% 33%}.maejok-nontent-overlay{z-index:1000}.maejok-dim-mode{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);pointer-events:none;z-index:999}.maejok-normalize-message{color:#fff !important;font-weight:300 !important;text-shadow:none !important;background-color:unset !important}.maejok-normalize-message .chat-message-default_mention__Ieq18{color:#ffcf00 !important;font-weight:400 !important}.maejok-user-overlay{margin-right:auto;display:flex;background-color:rgba(0,0,0,.5);font-size:12px;padding:4px;align-items:center;line-height:10px}.maejok-user-overlay-clan{all:unset;background-color:unset;border-top-left-radius:unset;border-top-right-radius:unset;border-bottom-right-radius:unset;border-bottom-left-radius:unset;font-weight:unset;font-size:unset;color:unset;cursor:unset;margin-right:unset;padding-top:unset;padding-right:unset;padding-bottom:unset;padding-left:unset;cursor:pointer;padding:2px;margin-right:4px;border-radius:2px;font-size:8px;font-weight:600;text-shadow:none}.maejok-user-overlay-username{font-weight:800;color:#28d97f;font-size:11px}.maejok-timestamp-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2px;background-color:rgba(0,0,0,.5);position:absolute;left:50%;transform:translateX(-50%);color:lime;text-align:center;white-space:nowrap;line-height:12px}.maejok-timestamp-day{font-weight:500;font-size:13px;text-transform:uppercase;color:#28d97f;text-shadow:2px 2px 0 rgba(27,154,89,.25);letter-spacing:-1.5px}.maejok-timestamp-time{letter-spacing:-2px;font-size:12px;white-space:nowrap;color:#fff}.maejok-timestamp-time::before{color:#f8ec94;content:"[";text-shadow:1px 1px 0 #000;margin-right:4px}.maejok-timestamp-time::after{color:#f8ec94;content:"]";text-shadow:1px 1px 0 #000;margin-left:4px}.maejok-chatters_presence-container{text-align:center;cursor:pointer}#maejok-chatters_online-presence-id{display:none !important}.button-link{background:none;border:none;color:#11f8ff;cursor:pointer;font-weight:700;padding:0;font:inherit}.maejok-logo_hide:hover{opacity:0 !important}.maejok-logo_hover{position:absolute;top:0;right:0;left:0;bottom:0;object-fit:contain;opacity:0;transition:opacity .5s}.maejok-logo_hover:hover{opacity:1}.button-link:focus,.button-link:hover,.button-link:active{outline:none;background:none;border:none}.maejok-hide-scan_lines::after{content:none !important}.maejok-modal-body{margin-top:4px;user-select:none;font-family:Highway Gothic,sans-serif;font-weight:600;text-transform:uppercase;color:#1d2127}button.top-bar_clan-invite__Gv9N_{right:-75% !important}.maejok-settings_tab-panel{min-width:490px;max-height:100vh;margin-bottom:16px}.maejok-settings_tab-bar{display:flex;gap:8px;margin-top:8px}.maejok-settings_tab-bar .maejok-tab-button{display:flex;border:none;padding:5px;border-radius:3px;cursor:pointer;text-transform:uppercase;background-color:rgba(0,0,0,0) !important;border:1px solid #505050}.maejok-settings_tab-bar .maejok-tab-button button{all:unset;display:flex;justify-content:center;align-items:center;text-align:center;padding:8px;cursor:pointer;color:#fff;flex-grow:1;border-left:0;border-radius:0;font-weight:400}.maejok-settings_tab-bar .maejok-tab-button:hover{border:1px solid #f8ec94;color:#f8ec94}#maejok-update-message{background-color:rgba(0,0,0,.75);outline:1px solid rgba(255,255,255,.6);border-radius:4px;user-select:none;animation:glisten 3s linear infinite;margin:5px 0}#maejok-update-message .maejok-update-body{background-blend-mode:lighten;padding:16px;text-align:center;color:rgba(255,255,255,.9);animation:bounce .3s 5}#maejok-update-message .maejok-update-body .maejok-update-title{font-weight:600;padding:4px;color:#f5f;text-shadow:0px 0px 2px #000}#maejok-update-message .maejok-update-body .maejok-update-click_here{padding:8px;color:#0094ff;font-weight:800;width:fit-content;margin:auto;cursor:pointer}#maejok-update-message .maejok-update-body .maejok-update-click_here:hover{text-shadow:0px 0px 1px #32c0e0}#maejok-update-message .maejok-update-body .maejok-updated-notice{padding:8px;color:#0094ff;font-weight:800;width:fit-content;margin:auto}#maejok-update-message .maejok-update-body .maejok-update-links{margin-top:5px;font-size:.8em;color:rgba(255,255,255,.55)}#maejok-update-message .maejok-update-body .maejok-update-links .maejok-update-changelog,#maejok-update-message .maejok-update-body .maejok-update-links .maejok-update-dismiss{display:inline-block;cursor:pointer}#maejok-update-message .maejok-update-body .maejok-update-links .maejok-update-changelog:hover,#maejok-update-message .maejok-update-body .maejok-update-links .maejok-update-dismiss:hover{color:#fff}',""]);const i=l},314:e=>{e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var s="",a=void 0!==t[5];return t[4]&&(s+="@supports (".concat(t[4],") {")),t[2]&&(s+="@media ".concat(t[2]," {")),a&&(s+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),s+=e(t),a&&(s+="}"),t[2]&&(s+="}"),t[4]&&(s+="}"),s})).join("")},t.i=function(e,s,a,o,n){"string"==typeof e&&(e=[[null,e,void 0]]);var l={};if(a)for(var i=0;i<this.length;i++){var r=this[i][0];null!=r&&(l[r]=!0)}for(var c=0;c<e.length;c++){var d=[].concat(e[c]);a&&l[d[0]]||(void 0!==n&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=n),s&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=s):d[2]=s),o&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=o):d[4]="".concat(o)),t.push(d))}},t}},601:e=>{e.exports=function(e){return e[1]}},72:e=>{var t=[];function s(e){for(var s=-1,a=0;a<t.length;a++)if(t[a].identifier===e){s=a;break}return s}function a(e,a){for(var n={},l=[],i=0;i<e.length;i++){var r=e[i],c=a.base?r[0]+a.base:r[0],d=n[c]||0,m="".concat(c," ").concat(d);n[c]=d+1;var p=s(m),h={css:r[1],media:r[2],sourceMap:r[3],supports:r[4],layer:r[5]};if(-1!==p)t[p].references++,t[p].updater(h);else{var u=o(h,a);a.byIndex=i,t.splice(i,0,{identifier:m,updater:u,references:1})}l.push(m)}return l}function o(e,t){var s=t.domAPI(t);s.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;s.update(e=t)}else s.remove()}}e.exports=function(e,o){var n=a(e=e||[],o=o||{});return function(e){e=e||[];for(var l=0;l<n.length;l++){var i=s(n[l]);t[i].references--}for(var r=a(e,o),c=0;c<n.length;c++){var d=s(n[c]);0===t[d].references&&(t[d].updater(),t.splice(d,1))}n=r}}},659:e=>{var t={};e.exports=function(e,s){var a=function(e){if(void 0===t[e]){var s=document.querySelector(e);if(window.HTMLIFrameElement&&s instanceof window.HTMLIFrameElement)try{s=s.contentDocument.head}catch(e){s=null}t[e]=s}return t[e]}(e);if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(s)}},540:e=>{e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},56:(e,t,s)=>{e.exports=function(e){var t=s.nc;t&&e.setAttribute("nonce",t)}},825:e=>{e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(s){!function(e,t,s){var a="";s.supports&&(a+="@supports (".concat(s.supports,") {")),s.media&&(a+="@media ".concat(s.media," {"));var o=void 0!==s.layer;o&&(a+="@layer".concat(s.layer.length>0?" ".concat(s.layer):""," {")),a+=s.css,o&&(a+="}"),s.media&&(a+="}"),s.supports&&(a+="}");var n=s.sourceMap;n&&"undefined"!=typeof btoa&&(a+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(n))))," */")),t.styleTagTransform(a,e,t.options)}(t,e,s)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},113:e=>{e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={id:a,exports:{}};return e[a](n,n.exports,s),n.exports}s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.nc=void 0;const a=(()=>{const e={loaded:!1,isPopoutChat:!1,modals:[],user:null,bigScreenState:!1,events:[],controlOverlayDisabled:!1,mentions:[],tts:[],nontentOverlayActive:!1,recentChatters:[],observers:{chat:null,user:null},menu:null,prevMousePos:{x:0,y:0},contextUser:null,recentChattersInterval:null,timestampInterval:null,updateCheckInterval:null,daysLeftInterval:null,running:!1,packageJson:{},updateShown:!1,audioElement:!1,pendingKeybind:null,isShowLive:!1};return{get:t=>t?e[t]:e,set:(t,s)=>{e.hasOwnProperty(t)&&(null==s?e[t]=null:"object"!=typeof s||Array.isArray(s)?e[t]=s:e[t]={...e[t],...s})}}})(),o="2.27.0",n=new Map([["doom","mp3"],["vomit","mp3"],["romantic","mp3"],["massacre","mp3"],["breakup","mp3"],["fart","mp3"],["raid","mp3"],["equip","mp3"],["granted","mp3"],["denied","mp3"],["chunk-short","mp3"],["blip","mp3"],["book","mp3"],["chaching","mp3"],["tube","mp3"],["dice","mp3"],["coin","mp3"],["nuke-1","mp3"],["nuke-2","mp3"],["nuke-3","mp3"],["nuke-4","mp3"],["nuke-5","mp3"],["xp","mp3"],["level","mp3"],["mention","mp3"],["yes","mp3"],["global-mission-3","mp3"],["click-high-short","mp3"],["click-low-short","mp3"],["click-harsh-short","wav"],["latch-short","wav"],["swap-short","wav"],["shutter","wav"],["complete","wav"],["xp-down","wav"],["power","wav"],["daily","wav"],["item-found","wav"],["item-consumed","wav"],["panic","wav"],["poll","wav"],["tick-short","wav"]]),l=["nigger","nigga","kike","homo","tranny","fag","slut","whore","pedo","rapist","paki","pajeet","nazi","hitler","hooker","troon","chink","negro","bimbo"],i='\n.home_home__pUFCA .home_center__6GW_l {\n  grid-column: 1/4;\n  grid-row: 1/6;\n}\n\n#main-panel {\n  margin-right: 3px;\n}\n\n.live-streams_live-streams__BYV96 {\n  padding: 0 10px;\n}\n\n.top-bar_top-bar___Z0QX,\n.secondary-panel_secondary-panel__vUc65,\n.experience-bar_experience-bar__nVDge,\n.announcement_announcement__Sow3P,\n.home_left__UiQ0z,\n.home_center-bottom__zlpWm,\n.home_right__j_b3u,\n.tts-history_tts-history__8_9eB  {\n  display: none !important;\n}\n\n.live-stream-fullscreen_live-stream-fullscreen__zpNvE {\n  .live-stream-fullscreen_left__idsvZ,\n  .live-stream-fullscreen_right___UCNg {\n    flex: 2% 1;\n\n    img {\n      display: none;\n    }\n  }\n}\n\n#live-stream-player > div.live-stream-fullscreen_close__JY_lb > button {\n  all: unset;\n  cursor: pointer;\n  text-shadow: 0px 0px 4px #000;\n\n  &:hover {\n    transform: scale(1.15);\n  }\n\n  &::before {\n    unset: all;\n    content: "❌";\n  }\n\n  img {\n    display: none;\n  }\n}\n',r={"living-room":{id:"living-room",name:"Living Room",switchTo:()=>{}},lounge:{id:"lounge",name:"Lounge",switchTo:()=>{}},bar:{id:"bar",name:"Bar",switchTo:()=>{}},kitchen:{id:"kitchen",name:"Kitchen",switchTo:()=>{}},"dog-house":{id:"dog-house",name:"Dog House",switchTo:()=>{}},"hallway-downstairs":{id:"hallway-downstairs",name:"Hallway Downstairs",switchTo:()=>{}},"hallway-upstairs":{id:"hallway-upstairs",name:"Hallway Upstairs",switchTo:()=>{}},"bedroom-1":{id:"bedroom-1",name:"Bedroom 1",switchTo:()=>{}},"bedroom-2":{id:"bedroom-2",name:"Bedroom 2",switchTo:()=>{}},"the-bunk":{id:"the-bunk",name:"The Bunk",switchTo:()=>{}},"bedroom-3":{id:"bedroom-3",name:"Bedroom 3",switchTo:()=>{}},attic:{id:"attic",name:"Attic",switchTo:()=>{}},"upstairs-bathroom":{id:"upstairs-bathroom",name:"Upstairs Bathroom",switchTo:()=>{}},"downstairs-bathroom":{id:"downstairs-bathroom",name:"Downstairs Bathroom",switchTo:()=>{}},"master-bathroom":{id:"master-bathroom",name:"Master Bathroom",switchTo:()=>{}},confessional:{id:"confessional",name:"Confessional",switchTo:()=>{}}},c={"toggle-auto":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"Backquote"},"toggle-hq":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"KeyH"},"enter-native-fs":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"KeyF"},"close-stream":{ctrlKey:!1,altKey:!1,shiftKey:!0,code:"Space"},"living-room":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"KeyQ"},lounge:{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"KeyW"},bar:{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"KeyE"},kitchen:{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"KeyR"},"dog-house":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"KeyT"},"hallway-downstairs":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"KeyY"},"hallway-upstairs":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"Digit5"},"bedroom-1":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"Digit1"},"bedroom-2":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"Digit2"},"bedroom-3":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"Digit3"},"the-bunk":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"Digit4"},attic:{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"F1"},"upstairs-bathroom":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"F2"},"downstairs-bathroom":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"F3"},"master-bathroom":{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"F4"},confessional:{ctrlKey:!1,altKey:!1,shiftKey:!1,code:"F6"}},d={login:{selector:'[class^="log-in_log-in__"]',class:"log-in_log-in__1Bbqa"},archive:{selector:'[class^="archive_archive"]',class:"archive_archive__wsFNf"},home:{selector:'[class^="home_home"]',class:"home_home__pUFCA",date:{selector:'[class^="status-bar_date"]',class:"status-bar_date__mqIyI"}},globalMissions:{selector:'[class^="global-mission-modal_backdrop"]',class:"global-mission-modal_backdrop__oVezg"},livestreams:{selector:'[class*="live-streams_live-streams__"]',class:"live-streams_live-streams__BYV96",grid:{selector:'[class*="live-streams_live-streams-grid__"]',class:"live-streams_live-streams-grid__Tp4ah"},player:{selector:'[class^="live-stream-player_live-stream-player__4CHjG"]',class:"live-stream-player_live-stream-player__4CHjG"},selected:{selector:'[class^="live-streams_selected-live-stream"]',class:"live-streams_selected-live-stream__bFOAj"},volume:{selector:'[class^="hls-stream-player_volume"]',class:"hls-stream-player_volume__Ucryi"},clip:{selector:'[class^="hls-stream-player_clip"]',class:"hls-stream-player_clip__OrKWA"},quality:{selector:'[class^="hls-stream-player_quality"]',class:"hls-stream-player_quality__RdZRA"},status:{selector:'[class^="hls-stream-player_status"]',class:"hls-stream-player_status__Jza42"},fullscreen:{selector:'[class^="hls-stream-player_fullscreen"]',class:"hls-stream-player_fullscreen__Y3RhA"},timestamp:{selector:".maejok-timestamp-container",class:"maejok-timestamp-container",day:{selector:".maejok-timestamp-day",class:"maejok-timestamp-day"},time:{selector:".maejok-timestamp-time",class:"maejok-timestamp-time"}},overlay:{selector:".maejok-user-overlay",class:"maejok-user-overlay"}},secondaryPanel:{tab:{class:"secondary-panel_tab__PxWtZ",selector:'[class*="secondary-panel_tab__"]'}},header:{selector:'[class*="top-bar_top-bar__"]',class:"top-bar_top-bar___Z0QX",user:{selector:'[class^="top-bar_user"]',class:"top-bar-user_top-bar-user__VUdJm",name:{selector:'[class^="top-bar-user_display-name"]',class:"top-bar-user_display-name__bzlpw"},clan:{selector:'[class^="top-bar_clan_"]',class:"top-bar-user_clan__M5hMP"},level:{selector:'[class^="top-bar_xp"]',class:"top-bar-user_xp___ttgt"},tokens:{selector:'[class^="top-bar_tokens"]',class:"top-bar-user_tokens__vAwEj"}},admin:{selector:'[class^="admin-toolbar_admin-toolbar__"]',class:"admin-toolbar_admin-toolbar__Jlc17"},logo:{selector:'[class^="top-bar_logo__"]',class:"top-bar_logo__XL0_C",img:{selector:'[class^="top-bar_desktop__"]',class:"top-bar_desktop__pjX2g"},hoverImg:{selector:".maejok-logo_hover",classes:["maejok-logo_hover","top-bar_desktop__pjX2g"]},hideImg:{class:"maejok-logo_hide"}},links:{selector:'[class^="top-bar-links"]',class:"top-bar_links__4FJwt"},director:{selector:'[class^="top-side_director__"]',class:"top-side_director__nAHL_"}},profile:{selector:'[class^="profile-modal_profile-modal"]',class:"profile-modal_profile-modal__4mjE7",actions:{selector:'[class^="user-profile_actions]',class:"profile_actions__9KG8x",mute:{selector:'[class^="user-profile_actions"] button:nth-child(1)'}},clanInvite:{selector:'[class*="top-bar_clan-invite__"]',class:"top-bar_clan-invite__Gv9N_"}},countdown:{selector:'[class^="countdown_countdown"]',class:"countdown_countdown__eQUUu"},chat:{main:{selector:'[class^="chat_chat"]',classes:["chat_chat__2rdNg","chat_selected__nnAlf"]},header:{selector:'[class^="chat_header__"]',class:"chat_header__8kNPS",title:{selector:'[class^="chat_title__"]',class:"chat_title__CrfQP"},roomSelect:{selector:'[class^="chat-room-selector_chat-room-selector__"]',class:"chat-room-selector_chat-room-selector__PayQH"},presence:{selector:'[class^="chat_presence__"]',class:"chat_presence__90XuO",id:"maejok-chatters_online-presence-id",online:{selector:'[class*="maejok-chatters_presence-online"]',class:"maejok-chatters_presence-online"},wrapper:{selector:'[class*="maejok-chatters_presence-container"]',class:"maejok-chatters_presence-container"}},recent:{selector:'[class*="maejok-chatters_presence"]',class:"maejok-chatters_presence",count:{selector:'[class*="maejok-chatters_count"]',class:"maejok-chatters_count"},menu:{class:"maejok-chatters-menu",item:{class:"maejok-chatters-menu_item"}}}},list:{selector:'[class^="chat_messages__"]',class:"chat_messages__2IBEJ"},room:{selector:'[class^="chat-room-selector_chat-room-selector__"]',class:"chat-room-selector_chat-room-selector__PayQH",options:{selector:'[class^="select_options__"]',class:"select_options__t1ibN"}},message:{selector:'[class*="chat-message-default_chat"]',class:"chat-message-default_chat-message-default__JtJQL",wes:{selector:'[class*="chat-message-default_wes__"]',class:"chat-message-default_wes__EupNC"},fish:{selector:'[class*="chat-message-default_fish__"]',class:"chat-message-default_fish__9hxl_"},admin:{selector:'[class*="chat-message-default_admin__"]',class:"chat-message-default_admin__soVcy"},epic:{selector:'[class*="chat-message-default_epic__"]',class:"chat-message-default_epic__h5F2K",normalize:{class:"maejok-normalize-message"}},grand:{selector:'[class*="chat-message-default_grand__"]',class:"chat-message-default_grand__Jf2Eh",normalize:{class:"maejok-normalize-message"}},hide:{selector:'[class^="maejok-hide"]',class:"maejok-hide"},avatar:{selector:'[class^="chat-message-default_avatar"] img',class:"chat-message-default_avatar__eVmdi",container:{selector:'[class^="chat-message-default_avatar"]',class:"chat-message-default_avatar__eVmdi"},image:{selector:'[class^="chat-message-default_avatar"] img'}},level:{selector:'[class^="chat-message-default_lvl"]',class:"chat-message-default_lvl__QXf_z"},clan:{selector:'[class^="chat-message-default_clan"]',class:"chat-message-default_clan__t_Ggo"},endorsement:{selector:'[class^="chat-message-default_endorsement__"]',class:"chat-message-default_endorsement__n_LUu"},grayName:{selector:".chat-message-default_free___3d5O"},sender:{selector:'[class^="chat-message-default_user"]',class:"chat-message-default_user__uVNvH"},body:{selector:'[class^="chat-message-default_body"]',class:"chat-message-default_body__iFlH4",text:{selector:'[class^="chat-message-default_message"]',class:"chat-message-default_message__milmT",normalize:{class:"maejok-hide-fonts"}}},timestamp:{selector:'[class^="chat-message-default_timestamp"]',class:"chat-message-default_timestamp__sGwZy"},mention:{selector:'[class^="chat-message-default_mention"]',class:"chat-message-default_mention__Ieq18"},mentioned:{selector:'[class*="chat-message-default_mentioned"]',class:"chat-message-default_mentioned__EDIeq"}},emote:{selector:'[class^="chat-message-emote_chat"]',class:"chat-message-emote_chat-message-emote__NWoZG",sender:{selector:'[class^="chat-message-emote_user"]',class:"chat-message-emote_user__faZE7"},body:{selector:'[class^="chat-message-emote_message"]',class:"chat-message-emote_message__HE0id"}},consumable:{selector:'[class^="chat-message-happening_chat"]',class:"chat-message-happening_chat-message-happening__tYeDU",sender:{selector:'[class^="chat-message-happening_user"]',class:"chat-message-happening_user__c_Ohh"},body:{selector:'[class^="chat-message-happening_message"]',class:"chat-message-happening_message__W13K6"}},clan:{selector:'[class^="chat-message-clan_chat"]',class:"chat-message-clan_chat-message-clan__kS1Cp"},system:{selector:'[class^="chat-message-system_chat"]',class:"chat-message-system_chat-message-system__qZ_cD",body:{selector:'[class^="chat-message-system_chat"] div div',class:"chat-message-system_chat-message-system__qZ_cD"}},tts:{selector:'[class^="chat-message-tts_chat-message-tts__"]',class:"chat-message-tts_chat-message-tts__2Jlxi",icon:{selector:'[class^="chat-message-tts_icon"]',class:"chat-message-tts_icon__DWVlb"},title:{selector:'[class^="chat-message-tts_title"]',class:"chat-message-tts_title__vqGKb"},info:{selector:'[class^="chat-message-tts_info"]',class:"chat-message-tts_info__Ud32g",from:{selector:'[class^="chat-message-tts_from"]',class:"chat-message-tts_from__1QSqc"},to:{selector:'[class^="chat-message-tts_to"]',class:"chat-message-tts_to__GKbmT"},room:{selector:'[class^="chat-message-tts_room"]',class:"chat-message-tts_room__1lmqo"}},message:{selector:'[class^="chat-message-tts_message"]',class:"chat-message-tts_message__sWVCc"},footer:{selector:'[class^="chat-message-tts_footer"]',class:"chat-message-tts_footer__qJQlN",voice:{selector:'[class^="chat-message-tts_voice"]',class:"chat-message-tts_voice__Cme9G"},timestamp:{selector:'[class^="chat-message-tts_timestamp"]',class:"chat-message-tts_timestamp__pIVv0"}}},sfx:{selector:'[class^="chat-message-sfx_chat-message-sfx__"]',class:"chat-message-sfx_chat-message-sfx__OGv6q"},scroll:{selector:'[class^="chat_scroll"]',class:"chat_scroll__6Tqdf"},input:{selector:'[id="chat-input"]',class:"chat-input_input__jljCU",id:"chat-input",form:{selector:'[class^="chat-input_chat-input__"]',class:"chat-input_chat-input__GAgOF"},wrapper:{selector:'[class^="chat-input_input-wrapper__"]',class:"chat-input_input-wrapper__rjiu1"},placeholder:{selector:'[class^="chat-input_placeholder"]',class:"chat-input_placeholder__8Brjt "},actions:{selector:'[class^="chat-input_actions"]',class:"chat-input_actions__QqSJK",medals:{selector:'[class^="medal-selector_medal-selector-wrapper"]',class:"medal-selector_medal-selector-wrapper__bR_Ts"},inputLength:{selector:'[class^="chat-input_length__"]',class:"chat-input_length__c7xG6"}},rich:{mention:"chat-input-mention_chat-input-mention__pDrCH"}}},experience:{selector:'[class^="experience-bar_experience-bar__"]',class:"experience-bar_experience-bar__nVDge"},menu:{selector:'[class^="maejok-menu-menu"]',class:"maejok-menu-menu",item:{selector:'[class^="maejok-menu-menu_item"]',class:"maejok-menu-menu_item"},noItems:{selector:'[class^="maejok-menu-menu_no-items"]',class:"maejok-menu-menu_no-items"},title:{selector:'[class^="maejok-menu-menu_title"]',class:"maejok-menu-menu_title"}},modal:{selector:'[class^="modal_modal"]',class:"modal_modal__MS70U",countdown:{selector:'[class^="live-streams-countdown_live-streams-countdown"]',class:"live-streams-countdown_live-streams-countdown__vAbBo"},confirm:{selector:'[class^="confirm-modal_confirm-modal"] button:nth-child(1)',class:"button_button__p28wJ"},container:{selector:'[class^="modal_modal-container"]',class:"modal_modal-container__iQODa"},backdrop:{selector:'[class^="modal_backdrop"]',class:"modal_backdrop__94Bu6"},header:{selector:'[class^="modal_header"]',class:"modal_header__O0ebJ"},close:{selector:'[class^="modal_close"]',class:"modal_close__E9CBl",button:{selector:'[class^="close-button"]',classes:["close-button_close-button__BKUKA","close-button_sm__n0dZT"]},icon:{selector:'[class^="icon_icon]',class:"icon_icon__bDzMA"}},title:{selector:'[class^="modal_title"]',class:["modal_title__TdXFC"],text:{selector:'[class^="modal_title"] h2'}},body:{selector:'[class^="modal_body"]',class:["modal_body__j3Bav"]},prompt:{selector:'[class*="maejok-modal_prompt"]',class:"maejok-modal_prompt",keyname:{selector:'[class="maejok-modal_keyprompt_name"]',class:"maejok-modal_keyprompt_name"},roomname:{selector:'[class="maejok-modal_roomname"]',class:"maejok-modal_roomname"}}},settings:{selector:'[class^="maejok-modal-modal"]',class:["maejok-modal-modal"],body:{selector:'[class^="maejok-modal-body"]',class:["maejok-modal-body"]},opener:{selector:'[class^="maejok-settings-opener"]',class:["maejok-settings-opener"],button:{class:"chat-input_action__qw4PQ",icon:{class:["icon_icon__bDzMA"]}}},tabs:{bar:{selector:'[class^="maejok-settings_tab-bar"]',class:["button-group_button-group__7lSi7","maejok-settings_tab-bar"]},tab:{selector:'[class^="maejok-tab-button"]',class:["maejok-tab-button"],active:{class:"button-group_selected__rLKL4"}},panel:{selector:'[class^="maejok-settings_tab-panel"]',class:["maejok-settings_tab-panel"]},button:{selector:'[class^="maejok-settings_body"]',classes:["maejok-tab-button"]}},accordion:{active:{selector:'[class^="maejok-accordion-active"]',class:["maejok-accordion-active"]},content:{selector:'[class^="maejok-accordion-content"]',class:["maejok-accordion-content"],highlights:{class:"maejok-accordion-highlights",example:{class:"maejok-accordion-highlights-message_example"}}},header:{selector:'[class^="maejok-accordion-header"]',class:["maejok-accordion-header"]}},mentions:{class:"maejok-settings_mentions-list",item:{class:"maejok-settings_mentions-list-item",remove:{class:"maejok-settings_mentions-list-item-remove"}}},events:{class:"maejok-settings_events-list",item:{class:"maejok-settings_events-list-item",remove:{class:"maejok-settings_events-list-item-remove"}},timestamp:{class:"maejok-event-timestamp"},toastFix:{class:"maejok-event-toast-fix"}},tts:{class:"maejok-settings_tts-list",item:{class:"maejok-settings_tts-list-item",remove:{class:"maejok-settings_tts-list-item-remove"}}},config:{wrapper:{class:"maejok-settings-config-wrapper"},group:{class:"maejok-settings-config-input-group"},help:{class:"maejok-settings-config-help",label:{class:"maejok-input-help-label"}}}},emotes:{selector:'[class^="maejok-modal-emotes"]',class:"maejok-modal-emotes",note:{class:"maejok-emotes-list-note"},list:{selector:'[class^="maejok-emotes-list"]',class:"maejok-emotes-list",label:{selector:'[class^="maejok-emotes-list-label"]',class:"maejok-emotes-list-label"},item:{selector:'[class^="maejok-emotes-list_item"]',class:"maejok-emotes-list_item",command:{selector:'[class^="maejok-emotes-list_item_command"]',class:"maejok-emotes-list_item_command",demote:{class:"maejok-emotes-list_item_command_demote"}},emote:{selector:'[class^="maejok-emotes-list_item_emote"]',class:"maejok-emotes-list_item_emote"},use:{selector:'[class^="maejok-emotes-list_item_use"]',class:"maejok-emotes-list_item_use"},pin:{selector:'[class^="maejok-emotes-list_item_pin"]',class:"maejok-emotes-list_item_pin"}}}},inputs:{group:{class:["maejok-input-group"]},label:{class:["maejok-input-label"]},toggle:{class:["maejok-input-toggle"],label:{class:["maejok-input-toggle-label"],checked:{class:["maejok-input-label-checked"]}}},help:{label:{help:{class:["maejok-input-help-label"]},config:{class:["maejok-input-help-config-label"]}},text:{class:["maejok-input-help-text"]}},buttons:{classes:["maejok-input-button","color-button_color-button__cW61T","color-button_md__GaczN","button_button__p28wJ"],bind:{class:["maejok-input-button-bind","button_sm__O72y2","button_button__p28wJ"],selector:'[class*="maejok-input-button-bind"]'},img_colors:{lightGreen:"hsla(53, 88%, 78%, .1)",red:"hsla(3, 100%, 73%, .1)",darkGreen:"rgba(85, 213, 180, .1)"},wrapper:{class:["maejok-input-button-wrapper"]},label:{class:["color-button_text__3OQAq"],selector:'[class*="color-button_text__3OQAq"]'},save:{class:["maejok-input-button-save","button_button__p28wJ"]},standard:{classes:["button_sm__O72y2","button_button__p28wJ"]}},textbox:{class:"maejok-input-textbox",label:{class:"maejok-input-label-textbox"}},invalid:{class:"maejok-input-invalid"},colorPicker:{wrapper:{class:"maejok-color-picker-wrapper"},group:{class:"maejok-color-picker-group"},label:{class:"maejok-color-picker-label"}},list:{wrapper:{class:"maejok-list-wrapper"},item:{class:"maejok-list-item",wrapper:{class:"maejok-list-item-wrapper"},remove:{class:"maejok-list-item-remove"}},empty:{class:"maejok-list-empty"}}},takeover:{happening:{selector:'[class^="happening_happening__"]',class:"happening_happening__Ca2E7"}},toast:{class:"toast_toast__zhSlo",message:{selector:'[class^="toast_message__"]',class:"toast_message__l35K3"},success:{selector:'[class^="toast_success__"]',class:"toast_success__DNYPY"}},token:{ttsModalTokens:{selector:'[class^="tts-modal_tokens__"]',class:"tts-modal_tokens__yZ5jv"},sfxModalTokens:{selector:'[class^="sfx-modal_tokens__"]',class:"sfx-modal_tokens__i1DhV"},topBarUserTokens:{selector:'[class^="top-bar-user_tokens__"]',class:"top-bar-user_tokens__vAwEj"},toysFishtoysTokens:{selector:'[class^="get-fishtoys-modal_cost__"]',class:"get-fishtoys-modal_cost__e3dHa"},buyTokensModal:{selector:'[class^="get-tokens-modal_tokens__"]',class:"get-tokens-modal_tokens__LX5HO"},voteModalTokens:{selector:'[class^="confirm-modal_body__"]',class:"confirm-modal_body__LQQc6"},toysBigToyPrice:{selector:".get-fishtoys-modal_fishtoy__XFh5h.get-fishtoys-modal_bigtoy__LOwwY",classes:["get-fishtoys-modal_fishtoy__XFh5h","get-fishtoys-modal_bigtoy__LOwwY"]},generateLootPrice:{selector:"[class^=item-generator-modal_cost__]",classes:"item-generator-modal_cost__XJRS_"}}};class m{constructor(e){this.node=e,this.type=this.getType(),this.sender=this.getSender(),this.body=this.getBody(),this.timestamp=this.getTimestamp(),this.mentioned=this.isMentioned(),this.html=this.getMessageHTML(),this.fish=this.isFish(),this.grand=!1,this.epic=!1,this.staff=!1}getType(){const e={[d.chat.emote.class]:"emote",[d.chat.scroll.class]:"scroll",[d.chat.system.class]:"system",[d.chat.message.class]:"message",[d.chat.consumable.class]:"consumable",[d.chat.clan.class]:"clan",[d.chat.tts.class]:"tts",[d.chat.sfx.class]:"sfx"},t=this.node.className.split(" ");for(const s of t)if(e.hasOwnProperty(s)){const t=e[s];if("emote"===t){const e=ne(this.node,d.chat.emote.body.selector)||!1;if(e?.includes("rolls a 20-sided dice"))return"roll"}return t}}getMessageHTML(){return"message"===this.type&&(this.node.outerHTML||!1)}getSender(){if(!["message","emote"].includes(this.type))return!1;const e=d.chat[this.type].sender.selector,t=d.chat.message.wes.class,s=d.chat.message.fish.class,a=d.chat.message.admin.class;this.staff=qe(this.node,t)?"wes":qe(this.node,s)?"fish":!!qe(this.node,a)&&"admin";return{id:this.node.getAttribute("data-user-id")||!1,displayName:Ee(this.node,this.type),html:this.node.querySelector(e)?.outerHTML||!1,staff:this.staff}}getBody(){if(!["message","emote","happening","system"].includes(this.type))return;const e="message"===this.type?d.chat[this.type].body.text.selector:d.chat[this.type].body.selector;return{body:ne(this.node,e)||!1,html:"message"===this.type&&this.node.querySelector(e).innerHTML||!1}}getTimestamp(){if("message"===this.type)return ne(this.node,d.chat.message.timestamp.selector)||!1}isMentioned(){if("message"===this.type)return[...this.node.classList].includes(d.chat.message.mentioned.class)}isFish(){return"message"===this.type&&(this.fish=this.sender.displayName.includes("🐟"),this.fish)}isGrand(){if("message"!==this.type)return!1;const e=d.chat.message.grand.selector;return!!this.node.querySelector(e)}isEpic(){if("message"!==this.type)return!1;const e=d.chat.message.epic.selector;return!!this.node.querySelector(e)}normalizeEpic(){if(!this.isEpic())return;const e=at.get("normalizeEpicText"),{selector:t,normalize:s}=d.chat.message.epic;this.node.querySelector(t).classList.toggle(s.class,e)}normalizeFonts(e){const{selector:t,normalize:s}=d.chat.message.body.text,a=this.node.querySelector(t);a&&a.classList.toggle(s.class,e)}normalizeGrand(){if(!this.isGrand())return;const e=at.get("normalizeGrandText"),{selector:t,normalize:s}=d.chat.message.grand,a=this.node.querySelector(t);this.node.classList.toggle(s.class,e),a.classList.toggle(s.class,e)}fixDarkDisplayName(){if(!["message","emote"].includes(this.type)||!at.get("fixDarkDisplayNames"))return!1;const e=d.chat[this.type].sender.selector,t=this.node.querySelector(e),s=t?.style.color;if(!s)return;if(Ie(s)){const e=De(s);t.setAttribute("style",`color: ${e}`)}}hideElements(e,t){"message"===this.type&&(e=Array.isArray(e)?e:[e]).forEach(((e,s)=>{const a=d.chat.message[e].selector,o=this.node.querySelector(a);if(o)if("avatar"===e){const e=d.chat.message.level.selector,a=this.node.querySelector(e);o&&o.classList.toggle("maejok-hide",t[s]),a&&a.classList.toggle("maejok-hide_avatar-fix",t[s])}else"grayName"===e?this.node.classList.toggle("maejok-hide",t[s]):o.classList.toggle("maejok-hide",t[s])}))}highlightMessage(){if("message"!==this.type)return;const e=te("watching",this.sender.id),t=te("friends",this.sender.id),s=a.get("contextUser")?.id===this.sender.id;this.node.classList.toggle("maejok-watched-message",e),this.node.classList.toggle("maejok-friend-message",t),this.node.classList.toggle("maejok-context-message",s)}hide(){this.node.classList.toggle("maejok-hide",!0)}show(){this.node.classList.toggle("maejok-hide",!1)}toggle(){qe(this.node,"maejok-hide")?this.show(this.node):this.hide(this.node)}destroy(){for(const e in this)this.hasOwnProperty(e)&&(this[e]=null)}}class p{constructor(e,t){this.title=e,this.body=null,this.modal=null,this.container=null,this.titleElement=null,this.bodyHTML=t,this.uuid=Me(),this.modals=a.get("modals"),this.create()}create(){const e=document.querySelector("main"),t=$e();this.container=document.createElement("div"),this.container.classList.add(d.modal.class),this.container.classList.add(d.modal.container.class),this.container.setAttribute("style",`z-index: ${t+1}!important`);const s=document.createElement("div");s.classList.add(d.modal.backdrop.class),s.setAttribute("style",`z-index: ${t+2}!important`),this.modal=document.createElement("div"),this.modal.classList.add(d.modal.class),this.modal.setAttribute("style",`z-index: ${t+3}!important`);const o=document.createElement("div");o.classList.add(d.modal.header.class);const n=document.createElement("div");n.classList.add(d.modal.title.class),this.titleElement=document.createElement("h2"),this.titleElement.classList.add(d.modal.title.class),this.titleElement.textContent=this.title;const l=document.createElement("div");l.classList.add(d.modal.close.class);const i=document.createElement("button");i.classList.add(...d.modal.close.button.classes),i.addEventListener("click",(()=>K(this)));const r=document.createElement("div");r.classList.add(d.modal.close.icon.class),r.innerHTML='<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="32" height="32"><path d="M5 3H3v18h18V3H5zm14 2v14H5V5h14zm-8 4H9V7H7v2h2v2h2v2H9v2H7v2h2v-2h2v-2h2v2h2v2h2v-2h-2v-2h-2v-2h2V9h2V7h-2v2h-2v2h-2V9z" fill="currentColor"></path></svg>',this.body=document.createElement("div"),this.body.classList.add(d.modal.body.class),o.appendChild(n),n.appendChild(this.titleElement),o.appendChild(l),l.appendChild(i),i.appendChild(r),this.modal.appendChild(o),this.modal.appendChild(this.body),e.parentElement.insertBefore(this.container,e.nextSibling),this.container.appendChild(s),this.container.appendChild(this.modal),this.setBody(this.bodyHTML),a.set("modals",[...this.modals,this.uuid])}getElement(){return this.modal}setTitle(e){this.titleElement.textContent=e}setBody(e){e&&(e instanceof HTMLElement?this.body.appendChild(e):this.body.innerHTML=e)}destroy=e=>{e||(e=this.container),a.set("modals",this.modals.filter((e=>e!==this.uuid)));for(const e in this)this.hasOwnProperty(e)&&(this[e]=null);e?.remove()}}const h=()=>{const e=at.get("enableUpdateChecks"),t=a.get("updateShown");if(!e||t)return void u();a.get("updateCheckInterval")&&u(),g();const s=6e4*at.get("updateCheckFrequency"),o=setInterval(g,s);a.set("updateCheckInterval",o)},u=()=>{const e=a.get("updateCheckInterval");e&&(clearInterval(e),a.set("updateCheckInterval",null))},g=async()=>{const e=await b();if(!e)return;const t={currentVersion:o,newVersion:e.version};(function(e,t){const s=e=>e.split(".").map(Number),[a,o,n]=s(t),[l,i,r]=s(e);if(a>l)return!0;if(a<l)return!1;if(o>i)return!0;if(o<i)return!1;if(n>r)return!0;if(n<r)return!1;return!1})(t.currentVersion,t.newVersion)&&(u(),Ae("mention"),function(e){const t=document.querySelector(d.chat.list.selector),s=document.createElement("div");s.id="maejok-update-message";const a=document.createElement("div");a.className="maejok-update-body";const o=document.createElement("div");o.className="maejok-update-title",o.innerHTML=`${Ge().toUpperCase()} v${e.currentVersion}`;const n=document.createElement("div");n.className="maejok-update-click_here",n.innerHTML=`Update to <strong>v${e.newVersion}</strong>!`;const l=document.createElement("div");l.className="maejok-update-links";const i=document.createElement("a");i.className="maejok-update-changelog",i.textContent="changelog";const r=document.createElement("a");r.className="maejok-update-dismiss",r.textContent="dismiss",l.appendChild(document.createTextNode("[  ")),l.appendChild(i),l.appendChild(document.createTextNode("  |  ")),l.appendChild(r),l.appendChild(document.createTextNode("  ]")),a.appendChild(o),a.appendChild(n),a.appendChild(l),s.appendChild(a),t.appendChild(s),n.addEventListener("click",V),i.addEventListener("click",X),r.addEventListener("click",W),Te()}(t),a.set("updateShown",!0))},b=async()=>{const e=`https://raw.githubusercontent.com/f3rked/maej3rked-tools/master/package.json?cb=${(new Date).getTime()}`,t=(new Date).getTime();return fetch(e).then((e=>{if(!e.ok)throw new Error(`HTTP error fetching remote package data! Status: ${e.status}`);return e.json()})).then((e=>(a.set("packageJson",{lastCheckedAt:t,...e}),e))).catch((e=>(console.error("Get remote package fetch error:",e),!1)))};const y=()=>{const e=a.get("recentChattersInterval"),t=document.querySelector(d.chat.header.recent.selector);(e||t)&&f(),function(){if(!at.get("enableRecentChatters"))return;const e=document.querySelector(d.chat.header.selector),t=document.querySelector(d.chat.header.presence.selector),s=document.querySelector(d.chat.header.roomSelect.selector),a=document.createElement("div");a.classList.add(d.chat.header.presence.wrapper.class);const o=document.createElement("div");o.innerHTML=t.innerHTML,o.classList.add(d.chat.header.presence.class,d.chat.header.presence.online.class);const n=document.createElement("div");n.classList.add(d.chat.header.recent.class),n.classList.add(d.chat.header.presence.class);const l=document.createElement("div");l.innerText="Active";const i=document.createElement("div");i.classList.add(d.chat.header.recent.count.class),i.innerHTML="000",i.style.marginRight="5px",n.appendChild(i),n.appendChild(l),a.appendChild(o),a.appendChild(n),e.insertBefore(a,s),t.id=d.chat.header.presence.id,v()}(),v();const s=setInterval((()=>{at.get("enableRecentChatters")&&v()}),15e3);a.set("recentChattersInterval",s)},f=()=>{const e=a.get("recentChattersInterval");e&&(!function(){const e=document.querySelector(d.chat.header.presence.selector);document.querySelector(d.chat.header.presence.wrapper.selector).remove(),e.style.display="flex"}(),a.set("recentChatters",[]),clearInterval(e),a.set("recentChattersInterval",null))},v=e=>{if(!at.get("enableRecentChatters"))return;const t=Date.now(),s=a.get("recentChatters"),o=Number(at.get("recentChattersThreshold"));let n;if(0!==o){const e=60*o*1e3;n=s.filter((s=>t<=s.lastSeen+e))}else n=s;if(e){const a=s.findIndex((t=>t.id===e.id));-1!==a?s[a].lastSeen=t:n=[...n,{...e,lastSeen:t}]}const l=n.sort(((e,t)=>t.lastSeen-e.lastSeen)).sort(((e,t)=>e.fish&&!t.fish?-1:!e.fish&&t.fish?1:t.lastSeen-e.lastSeen)).sort(((e,t)=>e.staff&&!t.staff?-1:!e.staff&&t.staff?1:t.lastSeen-e.lastSeen));a.set("recentChatters",l),function(){if(!at.get("enableRecentChatters"))return;const e=a.get("recentChatters"),t=document.querySelector(d.chat.header.recent.count.selector);if(!t)return;const s=String(e.length);let o="";if(s.length<3){const e=3-s.length;o="0".repeat(e)}t.innerText=o+s}()};const k={chat:{start:()=>{a.get("observers").chat?.disconnect();const e=document.querySelector(d.chat.list.selector),t=new MutationObserver((e=>{e.forEach((e=>{"childList"===e.type&&0!==e.addedNodes.length&&e.addedNodes.forEach((e=>{Se(e)}))}))}));t.observe(e,{childList:!0}),a.set("observers",{...a.get("observers"),chat:t})},stop:()=>{const e=a.get("observers");e.chat?.disconnect()}},chatters:{start:()=>{a.get("observers").chatters?.disconnect();const e=document.querySelector(`#${d.chat.header.presence.id}`),t=new MutationObserver((e=>{e.forEach((e=>{const t=document.querySelector(d.chat.header.presence.online.selector),s="childList"===e.type?e.target.textContent:e.target.wholeText;t.textContent=s}))}));t.observe(e,{childList:!0,characterData:!0,subtree:!0}),a.set("observers",{...a.get("observers"),chatters:t})},stop:()=>{const e=a.get("observers");e.chatters?.disconnect()}},modal:{start:()=>{a.get("observers").modal?.disconnect();const e=document.getElementById("__next"),t=new MutationObserver((async e=>{e.forEach((e=>{"childList"===e.type&&0!==e.addedNodes.length&&(e.addedNodes.forEach((e=>{if(e.innerHTML.includes("Application error:")&&(e.innerHTML=e.innerHTML+'<div style="background-color: rgba(0,0,0,0.5); padding: 10px; width: 775px; line-height: 1em; color: red; font-weight: 900; font-size: 2em; text-shadow: 0 0 3px maroon">MAEJOK-TOOLS NOTICE</div><div style="background-color: rgba(0,0,0,0.5); width: 775px; color: #ff7b7b; font-weight: 900; padding: 10px; text-shadow: 0 0 6px black">Something happened and the site crashed...<br/><br/>Please, for the love of everything holy, DISABLE MAEJOK-TOOLS AND CONFIRM THE PLUGIN IS NOT THE CAUSE OF THE ERROR *BEFORE* MAKING ANY BUG REPORTS<br/><br/>If the error no longer exists after disabling the plugin, <a href="https://github.com/f3rked/maej3rked-tools/issues" target="_blank" style="color: #4747ff;">report the bug on GitHub</a>. <br/><br/>However, if, AND ONLY IF, the error persists after fully disabling MAEJOK-TOOLS from within your UserScript extension, you may report the bug on <a href="https://fishtank.guru/" target="_blank" style="color: #4747ff;">the fishtank.guru discord.</a><br/><br/>DO NOT <u><b>UNDER ANY CIRCUMSTANCE</u></b> CONTACT WES, JET, FISHTANK STAFF OR ANYONE ELSE ABOUT A BUGS CAUSED BY MAEJOK-TOOLS!</div>'),"modal"===e.id){a.get("observers").modalNestedObserver?.disconnect(),(e=>{const t=new MutationObserver((e=>{e.forEach((e=>{e.addedNodes.forEach((e=>{e.nodeType===Node.ELEMENT_NODE&&(e.matches(`${d.token.generateLootPrice.selector}, ${d.token.topBarUserTokens.selector}, ${d.token.ttsModalTokens.selector}, ${d.token.sfxModalTokens.selector}, ${d.token.toysFishtoysTokens.selector}, ${d.token.buyTokensModal.selector}, ${d.token.voteModalTokens.selector} span`)||e.querySelector(`${d.token.generateLootPrice.selector}, ${d.token.topBarUserTokens.selector}, ${d.token.ttsModalTokens.selector}, ${d.token.sfxModalTokens.selector}, ${d.token.toysFishtoysTokens.selector}, ${d.token.buyTokensModal.selector}, ${d.token.voteModalTokens.selector} span`))&&ge(at.get("convertTokenValues"))}))}))}));t.observe(e,{childList:!0,subtree:!0}),a.get("observers").modalNestedObserver=t})(e),e.querySelectorAll(`${d.token.topBarUserTokens.selector}, ${d.token.ttsModalTokens.selector}, ${d.token.sfxModalTokens.selector}, ${d.token.toysFishtoysTokens.selector}, ${d.token.buyTokensModal.selector}, ${d.token.voteModalTokens.selector} span`).forEach((e=>{e.closest(`.${d.token.toysBigToyPrice.classes[0]}.${d.token.toysBigToyPrice.classes[1]}`)||ge(at.get("convertTokenValues"))})),Pe(e);const t=ne(d.modal.title.text.selector);at.get("hideGlobalMissions")&&t?.includes("Global Mission")&&e.setAttribute("style","display: none !important");at.get("enableDragModal")&&(t?.includes("Send a TTS Message")||t?.includes("Play a Sound Effect"))&&A(e)}at.get("enableEventsLog")&&e.className.includes("toast")&&Re(e),at.get("hideToastMessages")&&e.className.includes("toast")&&Fe(e),at.get("hideGiftedPassMessage")&&e.className.includes("toast")&&ze(e)})),e.removedNodes.forEach((e=>{e.nodeType===Node.ELEMENT_NODE&&"modal"===e.id&&(a.get("observers").modalNestedObserver?.disconnect(),a.get("observers").modalNestedObserver=null)})))}))}));t.observe(e,{childList:!0}),a.set("observers",{...a.get("observers"),modal:t})},stop:()=>{const e=a.get("observers");e.modal?.disconnect(),e.modalNestedObserver?.disconnect()}},home:{start:()=>{a.get("observers").home?.disconnect();const e=document.getElementById("main-panel"),t=new MutationObserver((async e=>{e.forEach((e=>{if("childList"!==e.type||0===e.addedNodes.length)return;e.addedNodes[0]?.classList?.contains(d.modal.countdown.class)&&at.get("enableHideCountdown")&&e.addedNodes[0].setAttribute("style","display: none !important");const t=e.addedNodes[0].classList?.contains(d.livestreams.selected.class),s=e.addedNodes[0].classList?.contains(d.livestreams.status.class);if(!t&&!s)return;const o=at.get("enableControlOverlay"),n=at.get("enableTimestampOverlay"),l=at.get("enableUserOverlay"),i=at.get("hideNavigationOverlayEnabled");(o||n||l||i)&&e.addedNodes.forEach((e=>{t&&(n&&pe(),l&&ue(),i&&ke(!0)),s&&o&&de(a.get("controlOverlayDisabled"))}))}))}));t.observe(e,{childList:!0,subtree:!0}),a.set("observers",{...a.get("observers"),home:t})},stop:()=>{const e=a.get("observers");e.home?.disconnect()}},body:{start:()=>{a.get("observers").body?.disconnect();const e=document.querySelector("body"),t=new MutationObserver((async e=>{e.forEach((e=>{"childList"===e.type&&0!==e.addedNodes.length&&e.addedNodes[0]?.className.includes("global-mission-modal_backdrop__oVezg")&&at.get("hideGlobalMissions")&&e.addedNodes[0].setAttribute("style","display: none !important")}))}));t.observe(e,{childList:!0}),a.set("observers",{...a.get("observers"),body:t})},stop:()=>{const e=a.get("observers");e.body?.disconnect()}}},_=async()=>{const e=document.querySelectorAll(`${d.settings.body.selector} input`),t=at.get("updateCheckFrequency"),s=at.get("enableRecentChatters"),o=at.get("hideGlobalMissions"),n=at.get("hideGiftedPassMessage"),l=at.get("enableDragModal"),i=at.get("enableEventsLog"),r=at.get("enableTTSFilterWarning"),c=at.get("enableControlOverlay");e.forEach((e=>{const t=e.id.replace("-hidden","");"checkbox"===e.type?at.set(t,!!e.checked):("updateCheckFrequency"===t&&(e.value=e.value>=5?e.value:5),at.set(t,e.value))})),await at.save(),at.get("enableMentionLog")||a.set("mentions",[]),at.get("enableEventsLog")||a.set("events",[]),He(at.get("disableSoundEffects")),x(),ie(),be(at.get("enablePopoutChatButton")),ye(at.get("showHiddenItems")),ve(at.get("enableDimMode")),ge(at.get("convertTokenValues")),me(at.get("enableTimestampOverlay")),ke(at.get("hideNavigationOverlay")),he(at.get("enableUserOverlay")),_e(at.get("hideScreenTakeovers")),at.get("enableBigScreen")||fe(!1);!a.get("running")&&at.get("enablePlugin")&&We();if(a.get("running")&&!at.get("enablePlugin"))return void Ye();at.get("enableRecentChatters")&&s!==at.get("enableRecentChatters")&&y(),at.get("enableRecentChatters")||f();const m=!a.get("updateCheckInterval")&&at.get("enableUpdateChecks"),p=at.get("enableUpdateChecks")&&t!==at.get("updateCheckThreshold"),g=!at.get("enableUpdateChecks");(m||p)&&h(),g&&u();const b=at.get("hideGlobalMissions")&&o!==at.get("hideGlobalMissions"),v=at.get("hideGiftedPassMessage")&&n!==at.get("hideGiftedPassMessage"),_=at.get("enableDragModal")&&l!==at.get("enableDragModal"),w=at.get("enableTTSFilterWarning")&&r!==at.get("enableTTSFilterWarning"),j=at.get("enableEventsLog")&&i!==at.get("enableEventsLog"),E=c!==at.get("enableControlOverlay");(b||_||w)&&(k.body.start(),k.modal.start()),(j||v)&&k.modal.start(),E&&de(at.get("enableControlOverlay")),Te()},x=()=>{const e=document.querySelector(d.chat.list.selector).children;Array.from(e).forEach((e=>Se(e,!1))),a.set("contextUser",null);const t=document.getElementById("chat-messages");at.get("hideAvatars")?t.style.padding="0px":t.style.padding="8px",le()},w=e=>{const t=document.querySelectorAll(d.settings.tabs.panel.selector);for(const e of t)e.style.display="none";document.querySelector(`[data-tab="${e}"]`).style.display="block"},j=()=>{const e=d.settings,t=at.settingsOptions(),s=new p(`${Ge().toUpperCase()} - Settings`),n=document.createElement("div"),l=document.createElement("div");l.classList.add(...e.body.class);const i=function(e){const t=document.createElement("div");return t.classList.add(...e.tabs.bar.class),t.style.textAlign="center",t}(e);return n.appendChild(i),t.forEach((t=>{const n=function(e,t){const s=document.createElement("button");s.classList.add(...t.tabs.button.classes);const a=document.createElement("div");return a.textContent=e.label,s.appendChild(a),a.addEventListener("click",(()=>R(e,s))),s}(t,e);i.appendChild(n);const r=function(e,t){const s=document.createElement("div");return s.classList.add(...t.tabs.panel.class),s.dataset.tab=e.name,s}(t,e);!function(e,t){const s=d.settings.accordion,a=e.content.groups;if(!a)return!1;if(a.forEach(((a,o)=>{const n=document.createElement("button");n.classList.add(...s.header.class),n.dataset.groupHeader=a.name,n.dataset.tab=e.name,n.innerText=a.label;const l=document.createElement("div");l.classList.add(...s.content.class),l.dataset.groupContent=a.name,l.dataset.tab=e.name,t.appendChild(n),t.appendChild(l),0===o&&(n.classList.add(...s.active.class),l.style.maxHeight="500px")})),1===a.length)return;var o=t.querySelectorAll(s.header.selector);o.forEach((function(e){e.addEventListener("click",(()=>z(e,t,s)))}))}(t,r),t.content.inputs?.forEach((e=>{e.disabled||(["toggle"].includes(e.type)?function(e,t,s){const a=d.inputs,o=t.querySelector(`[data-group-content="${e.group}"]`),n=document.createElement("div");n.classList.add(...a.group.class),o?o.appendChild(n):t.appendChild(n);const l=document.createElement("input");l.classList.add(...a.toggle.class),l.type="checkbox",l.id=e.name,l.checked=e.value,l.addEventListener("change",(()=>P(l,r,s))),n.appendChild(l);const i=document.createElement("label");i.classList.add(...a.toggle.label.class),i.setAttribute("for",e.name),n.appendChild(i);const r=document.createElement("label");r.classList.add(...a.label.class),e.value&&r.classList.add(...a.toggle.label.checked.class);if(r.setAttribute("for",e.name),r.textContent=e.label,n.appendChild(r),e.config){const t=document.createElement("b");t.classList.add(...a.help.label.config.class),t.innerHTML="⚙",t.addEventListener("click",(()=>G(e,s))),n.appendChild(t)}if(e.help){const t=document.createElement("b");t.classList.add(...a.help.label.help.class),t.innerHTML=`${e.help.label}`,t.addEventListener("click",(()=>U(e))),n.appendChild(t)}}(e,r,s):["button"].includes(e.type)?function(e,t,s){const a=d.inputs,o=t.querySelector(`[data-group-content="${e.group}"]`),n=document.createElement("div");n.classList.add(...a.group.class),o?o.appendChild(n):t.appendChild(n);const l=E(e,e.color,e.label,e.onclick);if(n.appendChild(l),e.config){const t=document.createElement("b");t.classList.add(...a.help.label.config.class),t.innerHTML="⚙",t.addEventListener("click",(()=>G(e,s))),n.appendChild(t)}if(e.help){const t=document.createElement("b");t.classList.add(...a.help.label.help.class),t.innerHTML=`${e.help.label}`,t.addEventListener("click",(()=>U(e))),n.appendChild(t)}}(e,r,s):["keybind"].includes(e.type)?function(e,t,s){const a=at.get("binds"),o=d.inputs,n=t.querySelector(`[data-group-content="${e.group}"]`),l=document.createElement("div");l.classList.add(...o.group.class),n?n.appendChild(l):t.appendChild(l);const i=E(e,"lightGreen",Je(a[e.value]),(function(){Q(this,e.label,e.value)}));i.setAttribute("data-bindid",e.value);const r=document.createElement("label");if(r.classList.add(...o.label.class),r.setAttribute("for",e.name),r.textContent=e.label,l.appendChild(r),e.config){const t=document.createElement("b");t.classList.add(...o.help.label.config.class),t.innerHTML="⚙",t.addEventListener("click",(()=>G(e,s))),l.appendChild(t)}if(e.help){const t=document.createElement("b");t.classList.add(...o.help.label.help.class),t.innerHTML=`${e.help.label}`,t.addEventListener("click",(()=>U(e))),l.appendChild(t)}l.appendChild(i)}(e,r,s):["hidden"].includes(e.type)?function(e,t){const s=document.createElement("input");s.type="hidden",s.id=`${e.name}-hidden`,s.value=e.value,t.appendChild(s)}(e,r):["mentions-log"].includes(e.type)?L(e,r,"Mentions"):["events-log"].includes(e.type)?L(e,r,"Events"):["tts-log"].includes(e.type)?L(e,r,"Tts"):["color-picker"].includes(e.type)&&function(e,t){const s=t.querySelector(`[data-group-content="${e.group}"]`),a=document.createElement("div");a.classList.add(d.settings.accordion.content.highlights.class);const o=document.createElement("div");o.classList.add(d.inputs.list.wrapper.class),a.appendChild(o);const n=at.get(e.group);if(0===n.length){const t=document.createElement("div");t.classList.add(d.inputs.list.empty.class),t.innerText="friends"===e.group?"You have no friends...haha!":"Empty",o.appendChild(t)}else n.forEach((t=>{const s=document.createElement("div");s.classList.add(d.inputs.list.item.wrapper.class),o.appendChild(s);const a=document.createElement("div");a.classList.add(d.inputs.list.item.class),a.setAttribute("data-user-id",t.id),a.innerText=t.displayName||rgb(255,255,255),s.appendChild(a);const n=document.createElement("div");n.classList.add(d.inputs.list.item.remove.class),n.innerText="❌",s.appendChild(n),n.addEventListener("mouseup",(()=>{J(e.group,t,s)}))}));s.appendChild(a)}(e,r))})),"about"===t.name&&function(e){const t=a.get("packageJson"),s=[{label:"@f3rk",onClick:()=>xe("f3rk")},{label:"github.com/f3rked",onClick:()=>window.open("https://github.com/f3rked","_blank")}],n=[{label:"@maejok",onClick:()=>xe("maejok")},{label:"x.com/@maejok",onClick:()=>window.open("https://twitter.com/maejok","_blank")},{label:"github.com/maejok-xx",onClick:()=>window.open("https://github.com/maejok-xx","_blank")}],l=e.querySelector('[data-group-content="about"]'),i=document.createElement("div");i.className="maejok-settings-about";const r=document.createElement("div");r.classList.add("maejok-settings-about-title"),r.textContent=`${Ge().toUpperCase()} v${o}`,i.appendChild(r);const c=document.createElement("button");c.classList.add("maejok-settings-about-changelog","button-link"),c.textContent="Changelog",c.onclick=()=>window.open(t.changelog.url,"_blank"),i.appendChild(c);const d=document.createElement("div");d.classList.add("maejok-settings-about-author"),i.appendChild(d);const m=document.createElement("span");m.classList.add("maejok-settings-about-author_label"),m.innerHTML="<strong>Fork author</strong>: ",d.appendChild(m),s.forEach(((e,t)=>{const a=document.createElement("button");a.classList.add("maejok-settings-about-author_link","button-link"),a.textContent=e.label,a.onclick=e.onClick,d.appendChild(a),t!==s.length-1&&d.appendChild(document.createTextNode(" / "))}));const p=document.createElement("div");p.classList.add("maejok-settings-about-author"),p.style.marginTop="10px",i.appendChild(p);const h=document.createElement("span");h.classList.add("maejok-settings-about-author_label"),h.innerHTML="<strong>Original author</strong>: ",p.appendChild(h),n.forEach(((e,t)=>{const s=document.createElement("button");s.classList.add("maejok-settings-about-author_link","button-link"),s.textContent=e.label,s.onclick=e.onClick,p.appendChild(s),t!==n.length-1&&p.appendChild(document.createTextNode(" / "))}));const u=document.createElement("div");u.classList.add("maejok-settings-about-contributors"),i.appendChild(u);const g=document.createElement("span");g.classList.add("maejok-settings-about-author_label"),g.innerHTML="<strong>Contributors</strong>: ",u.appendChild(g),t.contributors.forEach(((e,t)=>{0!==t&&u.appendChild(document.createTextNode(" / "));const s=document.createElement("button");s.classList.add("maejok-settings-about-contact_link","button-link"),s.textContent=e.name,s.onclick=()=>window.open(e.url,"_blank"),u.appendChild(s)}));const b=document.createElement("div");b.classList.add("maejok-settings-about-message"),b.innerHTML='<p><strong>This is a fork of the original maejok-tools plugin.  I had been maintaining that after Season 2, but with maejok in the big leagues now - o7 - he no longer has time to review PRs.  To continue getting updates out, I\'ve made this fork.</strong></p><p>This plugin is not created, promoted, nor endorsed by the creators of Fishtank Live.</p><p>If you have issues while using the plugin, disable it FULLY from your Userscript Extension (Tampermonkey, GreaseMonkey, etc) and try again before making any bug reports.  If you find that the issue goes away when the plugin is disabled, please make a bug report using <a href="https://github.com/f3rked/maej3rked-tools/issues" target="_blank">GitHub Issues</a> and I\'ll work on getting it fixed as soon as possible!</p><p>You can show your appreciation to maejok by <a href="https://ko-fi.com/maejok" target="_blank">donating on Ko-fi</a>.</p><p><strong>I LOVE YOU!</strong><br/>-maejok/f3rk</p>',i.appendChild(b),l.appendChild(i)}(r),l.appendChild(r)})),i.firstChild.classList.add(e.tabs.tab.active.class),n.appendChild(l),s.setBody(n),s};const E=function(e,t,s,a){const o=d.inputs,n=d.settings.tabs,l=document.createElement("button");"keybind"==e?.type&&l.classList.add(...o.buttons.bind.class),"button"==e?.type&&l.classList.add(...o.buttons.standard.classes),l.background_color=o.buttons.img_colors[t]||o.buttons.img_colors.red,l.classList.add(...n.button.classes);const i=document.createElement("div");return i.textContent=s,l.appendChild(i),l.addEventListener("click",(function(){"function"==typeof a&&a.call(this),this.blur(),l.blur()})),l},C=function(e,t){const s=d.inputs,a=document.createElement("div");a.classList.add(s.buttons.wrapper.class);const o=document.createElement("button");o.classList.add(...s.buttons[e].class),o.addEventListener("click",t);const n=document.createElement("div");return n.classList.add(s.buttons.label.class),n.textContent=e,o.appendChild(n),a.appendChild(o),a};function L(e,t,s){const a=at.get(`reverse${s}Log`),o=d.settings[s.toLowerCase()],n=a?e.value.sort(((e,t)=>t.added-e.added)):e.value.sort(((e,t)=>e.added-t.added)),l=t.querySelector(`[data-group-content="${e.group}"]`),i=document.createElement("div");l?l.appendChild(i):t.appendChild(i),n.length>0?(i.classList.add(o.class),n.forEach((e=>{const t=document.createElement("div");t.classList.add(o.item.class),t.innerHTML=e.html,i.appendChild(t)}))):(i.innerHTML=`No ${s.toLowerCase()} yet...`,i.style.color="gray",i.style.textAlign="center"),l.appendChild(i)}const T={laugh:"$displayName bursts into uncontrollable laughter.",lol:"$displayName laughs out loud.",dance:"$displayName performs an impromptu dance.",sob:"$displayName sobs loudly...",cough:"$displayName coughs loudly on everyone",wink:"$displayName winks slyly at everyone around.",sing:"$displayName sings a beautiful song, captivating everyone nearby.",cheer:"$displayName cheers enthusiastically, raising their arms in the air.",cower:"$displayName cowers in fear, shaking like a little bitch.",flex:"$displayName flexes their muscles, showing off their alpha strength.",yawn:"$displayName yawns loudly, showcasing their boredom.",shrug:"$displayName shrugs nonchalantly.",blush:"$displayName blushes deeply, their cheeks burning bright red.",flip:"$displayName performs an acrobatic flip, displaying their agility.",clap:"$displayName claps their hands in applause.",giggle:"$displayName giggles innocently.",sneeze:"$displayName sneezes loudly, startling everyone around.",jump:"$displayName jumps up and down excitedly.",stomp:"$displayName stomps their foot in frustration.",frown:"$displayName frowns, their eyebrows knitting together in displeasure.",groan:"$displayName groans in exasperation.",nod:"$displayName nods their head in affirmation.",cry:"$displayName breaks down in tears.",confused:"$displayName looks visibly confused.",scared:"$displayName appears terrified and starts shivering.",proud:"$displayName stands tall and proud.",inquisite:"$displayName raises an eyebrow in curiosity.",apologetic:"$displayName bows their head in apology.",angry:"$displayName clenches their fists in anger.",spits:"$displayName sprays spit everywhere.",impressed:"$displayName raises their eyebrows in admiration.",surprised:"$displayName gasps in surprise.",rejected:"$displayName looks crestfallen and rejected.",flirty:"$displayName gives a cheeky smile and a suggestive eyebrow raise.",bored:"$displayName lets out a large sigh of boredom.",shocked:"$displayName stands in shock, unable to speak.",sleepy:"$displayName yawns and rubs their eyes, trying to stay awake.",excited:"$displayName jumps up and down with excitement.",offended:"$displayName looks offended.",nervous:"$displayName bites their lower lip nervously.",greet:"$displayName waves a friendly hand in greeting.",calm:"$displayName takes a deep, calming breath.",whistle:"$displayName whistles a merry tune.",ponder:"$displayName furrows their brow in deep thought.",salute:"$displayName stands straight and delivers a crisp salute.",flirt:"$displayName flutters their eyelashes in a flirtatious manner.",invite:"$displayName extends an open invitation with a friendly smile.",admire:"$displayName stares in admiration.",agree:"$displayName nods in agreement.",smh:"$displayName shakes their head: NO.",taunt:"$displayName taunts their opponents with a smirk.",wave:"$displayName waves energetically, catching everyone's attention.",sit:"$displayName takes a seat, looking relaxed.",stand:"$displayName rises to their feet.",ready:"$displayName braces themselves, looking ready for anything.",tired:"$displayName lets out a tired sigh, looking drained.",relax:"$displayName takes a step back to relax.",celebrate:"$displayName looks joyful, ready to celebrate.",sulk:"$displayName slumps their shoulders, sulking.",point:"$displayName points in a particular direction.",call:"$displayName calls out loudly to catch attention.",threaten:"$displayName clenches their fist and looks threatening.",charge:"$displayName charges forward with determination.",poop:"$displayName suddenly squats and... well you know.",pee:"$displayName dashes off to find a quiet corner. Moments later, you hear the trickle of water.",eat:"$displayName starts to eat with gusto, appreciating every bite.",zzz:"$displayName dozes off, snoring gently.",sleep:"$displayName lies down and closes their eyes, drifting off to sleep.",nibble:"$displayName starts to nibble on something, looking content.",stare:"$displayName stares intently, their gaze unwavering.",gaze:"$displayName gazes off into the distance, seemingly in deep thought.",burp:"$displayName lets out a loud burp.",fart:"$displayName farts noisily, a proud smile appearing on their face.",spit:"$displayName spits on the ground.",drink:"$displayName takes a long swig from their drink.",please:"$displayName clasps their hands together, pleadingly.",beg:"$displayName falls to their knees, begging.",slap:"$displayName slaps themselves and loses 2 XP.",trip:"$displayName trips over their own foot, falling flat on the ground, losing 2 XP.",punch:"$displayName punches themselves in the stomach repeatedly, losing 2 XP.",fall:"$displayName loses their balance and falls over, losing 2 XP.",kick:"$displayName kicks their own ass, losing 2 XP.",smile:"$displayName smiles brightly.",sigh:"$displayName lets out a deep sigh.",gasp:"$displayName gasps in astonishment.",pout:"$displayName pouts and crosses their arms.",useless:"$displayName stands there, confused and unsure of what to do.",poke:"$displayName pokes something with their finger, looking amused.",lick:"$displayName licks something, looking like they regret it immediately",sniff:"$displayName sniffs the air, their face scrunching up.",scratch:"$displayName scratches their head in thought.",shrill:"$displayName lets out a shrill laugh, causing everyone to startle.",squint:"$displayName squints their eyes, peering at something in the distance.",chuckle:"$displayName chuckles lowly, a mischievous glint in their eyes.",grin:"$displayName grins from ear to ear, seemingly very pleased.",huff:"$displayName huffs and rolls their eyes dramatically.",smirk:"$displayName smirks in a way that screams 'I told you so'.",pounce:"$displayName suddenly pounces forward, full of energy.",glare:"$displayName shoots a chilling glare ahead, making everyone flinch.",die:"$displayName collapses to the ground theatrically, losing 2 XP.",cum:"$displayName suddenly looks flushed and breathless.",poo:"$displayName sprays a chocolately blast across the room.",spank:"$displayName spanks something audibly with an impish grin on their face.",kill:"$displayName's eyes darken, and for a moment you can see the ruthless killer in them.",headbang:"$displayName bangs their head on a wall, losing 2 XP.",wall:"$displayName runs straight into a wall, not looking where they were going, losing 2 XP.",bite:"$displayName bites their own tongue while eating, losing 2 XP.",chair:"$displayName leans back too far in their chair and falls over, losing 2 XP.",splinter:"$displayName gets a splinter in their finger while handling wood, losing 2 XP.",pinch:"$displayName accidentally pinches their skin with some tool, losing 2 XP.",burn:"$displayName burns their hand with a lighter, losing 2 XP.",gun:"$displayName accidentally discharges their firearm and shoots themselves in the foot, losing 2 XP.",stim:"$displayName starts to stim casually, fidgeting with their fingers.",shoot:"$displayName shoots their Red Ryder BB gun. The pellet ricochets off a fence post and hits them dead in the eye, losing them 2 XP.",shiver:"$displayName shivers noticeably.",snore:"$displayName's snoring can be heard from the other side of the room.",facepalm:"$displayName slaps their forehead in exasperation.",moonwalk:"$displayName does a surprisingly good moonwalk.",yodel:"$displayName suddenly starts yodeling loudly.",fliptable:"$displayName flips the table out of frustration.",vanish:"$displayName vanishes into the shadows...",float:"$displayName begins to levitate.",lift:"$displayName squats 10 times their body weight, impressing the entire room.",clone:"Suddenly, there are two $displayNames.",breakdance:"$displayName starts spinning on their head, breakdancing.",jelq:"$displayName starts doing the ancient and mysterious 'jelq' technique.",flipcoin:["$displayName flips a coin. It lands: heads/tails"],roll:["$displayName rolls a 20-sided dice. It lands: 4"],meef:["$displayName meefs it! They begin to glow!"]},S=["slap","trip","punch","fall","kick","die","headbang","wall","bite","chair","splinter","pinch","burn","gun"];class N{constructor(e,t,s){this.position=e,this.items=t,this.title=s.title,this.titleColor=s.titleColor,this.class=s.class,this.id=Me(),this.menu=null,this.noItems=s.noItems,this.create(),this.setPosition(this.position)}create=()=>{const e=$e();if(this.menu=document.createElement("div"),this.menu.classList.add(d.menu.class),this.menu.classList.add(this.class),this.menu.id=`maejok-menu-${this.id}`,this.menu.style.zIndex=e+1,this.title){const e=document.createElement("div");if(e.classList.add(d.menu.title.class),e.innerText=this.title,this.titleColor){const t=Ie(this.titleColor)?De(this.titleColor):this.titleColor;e.setAttribute("style",`color: ${t}`)}else e.setAttribute("style","color: #28d97f");this.menu.appendChild(e)}if(this.items.forEach((e=>{const t=document.createElement("div");t.classList.add(d.menu.item.class,e.class??null),t.style.textAlign=e.align||"center",t.setAttribute("title",e.hover||""),t.innerHTML=e.label,t.onclick=e.action,this.menu.appendChild(t)})),0===this.items.length){const e=document.createElement("div");e.classList.add(d.menu.noItems.class),e.style.textAlign="center",e.innerHTML=this.noItems,this.menu.appendChild(e)}document.querySelector("main").appendChild(this.menu),Ae("click-high-short")};setPosition=e=>{this.position=e;const t=document.getElementById(`maejok-menu-${this.id}`),s=t.offsetWidth,a=t.getBoundingClientRect().left+s,o=window.innerWidth-a;this.position.x=Math.min(this.position.x-s/2,o),t.style.left=`${this.position.x}px`;const n=window.innerHeight-50;this.position.y+t.offsetHeight>n?t.style.top=this.position.y-t.offsetHeight-6+"px":t.style.top=`${this.position.y}px`};destroy=()=>{Ae("shutter"),this.menu.remove(),a.set("menu",null);for(const e in this)this.hasOwnProperty(e)&&(this[e]=null)}}const M=(e,t,s)=>{const o=(e,t,s)=>new N(e,t.filter(Boolean),s),n={chatInput:()=>o(t,[{label:"View Emotes",action:()=>{$(),(()=>{const e=a.get("user"),t=e?.displayName||"CoolGuy",s=at.get("pinnedEmotes"),o=[];let n=Object.keys(T).sort().reduce(((e,t)=>(e[t]=T[t],e)),{});const l=(e=!1)=>{Object.keys(n).forEach((a=>{const l=s.includes(a);if(e&&!l)return;if(!e&&l)return;const i=Array.isArray(n[a]);i&&(n[a]=n[a][0]);const r=n[a].replace("$displayName",`<b>${t}</b>`),c=document.createElement("div");c.classList.add(d.emotes.list.item.class);const p=document.createElement("div");p.classList.add(S.includes(a)?d.emotes.list.item.command.demote.class:d.emotes.list.item.command.class),p.innerHTML=`/${a} ${i?"*":""}`,c.appendChild(p);const h=document.createElement("div");h.classList.add(d.emotes.list.item.emote.class),h.innerHTML=`${r}`,c.appendChild(h);const u=document.createElement("button");u.classList.add(d.emotes.list.item.pin.class),u.setAttribute("data-emote-command",a),u.textContent=l?"Unpin":"Pin",c.appendChild(u),u.addEventListener("click",Y),o.push({element:u,event:"click",listener:Y}),m.appendChild(c)}))},i=new p(`${Ge().toUpperCase()} - Emotes List`),r=document.createElement("div");r.classList.add(d.emotes.class);const c=document.createElement("div");c.classList.add(d.emotes.note.class),c.innerHTML="<p>* denotes an emote that has multiple outcomes.</p><p>After Pinning/Unpinning an emote, you must close and reopen this window to see the changes.</p>",r.appendChild(c);const m=document.createElement("div");if(m.classList.add(d.emotes.list.class),0!==at.get("pinnedEmotes").length){const e=document.createElement("div");e.classList.add(d.emotes.list.label.class),e.textContent="Pinned Emotes",m.appendChild(e),l(!0);const t=document.createElement("hr");m.appendChild(t)}l(!1),r.appendChild(m),i.setBody(r)})()}}],{title:"Options"}),message:e=>{const s=te("friends",e.id),a=te("watching",e.id),n=[{label:"View Profile",action:()=>{$(),Ke(e.id)}},{label:"Mention",action:()=>{$(),xe(e.displayName)}},!a&&{label:s?"Remove Friend":"Add Friend",action:()=>{$(),se("friends",e,!s)}},!s&&{label:a?"Unwatch":"Watch",action:()=>{$(),se("watching",e,!a)}},{label:"Mute",action:()=>{$(),Be(e)}}],l={title:e.displayName,titleColor:e.color};return o(t,n,l)},chatHide:e=>{const s={roll:"hideDiceRolling",emote:"hideEmotes",system:"hideSystem",consumable:"hideConsumables",clan:"hideClanMessages",tts:"hideTTSMessages",sfx:"hideSFXMessages"},a=("tts"===e?"TTS":"sfx"===e&&"SFX")||void 0,n=[{label:`Hide ${a||oe(e)} Messages`,action:()=>{at.set(s[e],!0),at.save(),$(),Ae("click-high-short"),x()}}];return o(t,n,{title:"Message Options"})},mention:e=>{const s="object"==typeof e,n=[{label:s?"View Context":"No Context Found",action:s?()=>{$(),a.set("contextUser",e),x()}:null},s&&{label:"View Profile",action:()=>{$(),Ke(e.id)}},{label:"Mention",action:()=>{$(),xe(e.displayName||e)}}],l={title:`${e.displayName||e} (mentioned)`};return o(t,n,l)},chatters:e=>{const s=[],a={wes:"Wes",fish:"Season 1 Contestant",admin:"Moderator"};e.forEach((e=>{const t=Ne(e.lastSeen),o=a[e.staff]||null,n={label:e.html,class:d.chat.header.recent.menu.item.class,align:"left",hover:`${o?`${o} - `:""}Last seen ${t}`,action:()=>{xe(e.displayName),$()}};s.push(n)}));const n={title:"Recent Chatters",noItems:"Nobody here...",class:d.chat.header.recent.menu.class};return o(t,s,n)}},l=n[e];if(l){const e=l(s);a.set("menu",e)}else console.error(`Unsupported menu type: ${e}`)},$=()=>{const e=a.get("menu");e&&e.destroy()},A=e=>{setTimeout((()=>{let t=0,s=0,a=0,o=0;const n=e.querySelector('[class^="modal_modal__MS70U"]'),l=n.querySelector('[class^="modal_header__O0ebJ"]');if(!l)return;n.style.top=`${n.offsetTop}px`,n.style.left=`${n.offsetLeft}px`,n.style.position="absolute",l.style.cursor="move";const i=e=>{e.preventDefault(),t=a-e.clientX,s=o-e.clientY,a=e.clientX,o=e.clientY,n.style.top=n.offsetTop-s+"px",n.style.left=n.offsetLeft-t+"px"},r=()=>{document.onmouseup=null,document.onmousemove=null};l.onmousedown=e=>{e.preventDefault(),a=e.clientX,o=e.clientY,document.onmouseup=r,document.onmousemove=i}}),2)},q=e=>{if(!at.get("enableChatMenu")&&!at.get("enableEmotesMenu"))return;const t=e.target,s=a.get("menu"),o={x:e.clientX,y:e.clientY},n={...o,y:o.y+3};if(s){if(Oe(a.get("prevMousePos"),o))return void $();$()}a.set("prevMousePos",o);if(e.target.closest(d.chat.input.form.selector)&&at.get("enableEmotesMenu"))return e.preventDefault(),void M("chatInput",n);if(e.target.closest(d.chat.list.selector)&&at.get("enableChatMenu")){const s=we(t);if("message"===s){if(qe(e.target,d.chat.message.mention.class)){const s=ne(t).replace("@",""),a=Le(s);return e.preventDefault(),void M("mention",n,a||s)}const s=je(t);if(!s)return;e.preventDefault(),M("message",n,s)}["roll","emote","system","consumable","clan","tts","sfx"].includes(s)&&(e.preventDefault(),M("chatHide",n,s))}},O=e=>{const t=e.target;if(null!==t.closest(d.menu.selector))return;$();switch(function(){const e={[d.chat.message.sender.class]:{target:t,item:"chatUsername"},[d.chat.message.avatar.class]:{target:t.parentElement,item:"chatAvatar"},[d.chat.header.presence.wrapper.class]:{target:t.parentElement,item:"recentChatters"},[d.chat.header.presence.class]:{target:t.parentElement,item:"recentChatters"},[d.secondaryPanel.tab.class]:{target:t.parentElement?.parentElement,item:"bigScreen"}};let s;for(const[t,a]of Object.entries(e)){a.target.classList.contains(t)&&(s=a.item)}return s}()){case"bigScreen":const s=at.get("enableBigScreen")&&at.get("bigScreenState")&&a.get("bigScreenState");setTimeout((()=>fe(s,!0)),0);break;case"chatAvatar":t.className=d.chat.message.avatar.class;break;case"chatUsername":if(!at.get("enableImprovedTagging"))return;e.stopPropagation(),e.preventDefault();const o=je(e.target);if(!o)return;xe(o.displayName);break;case"recentChatters":const n=e.target.getBoundingClientRect(),l=n.left+n.width/2,i=n.bottom,r=a.get("recentChatters");M("chatters",{x:l,y:i},r)}},H=e=>{const t=e.target,s=[t,t.parentElement],a=[d.chat.message.body.class,d.chat.message.body.text.class];if(s.some((e=>qe(e,a)))){window.getSelection().removeAllRanges();const e=je(t);if(te("friends",e.id))return void toast(`Can't add friends to Watching list! Remove ${e.displayName} from friends list first.`,"error");const s=te("watching",e.id);se("watching",e,!s)}},I=e=>{if(!a.get("loaded")||a.get("isPopoutChat"))return;const t="Backquote",s="Space",o="Escape",n="KeyH";if(e.ctrlKey&&e.code===t||e.ctrlKey&&e.shiftKey&&e.code===s)return void fe();if(e.ctrlKey&&e.altKey&&"Digit7"==e.code&&ce(),e.ctrlKey&&e.shiftKey&&e.code===n)return void de();if(at.get("bigScreenState")&&e.code===o)return void fe(!1);const l={ctrlKey:e.ctrlKey,altKey:e.altKey,shiftKey:e.shiftKey,code:e.code},i=document.querySelector(d.modal.prompt.selector);if(i){i.querySelector(d.modal.prompt.keyname.selector).textContent=Je(l),i.querySelector(".error").style.display="none";const t=at.get("binds");for(let e in t)if(Oe(t[e],l)){i.querySelector(".error").style.display="block";break}return a.set("pendingKeybind",l),e.stopPropagation(),void e.preventDefault()}if(at.get("bindsEnable")&&!ee()){const t=at.get("bindsForceCtrl");if(!l.ctrlKey&&t)return;const s=at.get("binds");if(D(l,s["toggle-auto"]))return document.querySelector('.live-streams-auto-mode_live-streams-auto-mode__pE2X_ input[type="checkbox"]')?.click(),e.stopPropagation(),void e.preventDefault();if(D(l,s["close-stream"]))return document.querySelector(".live-stream-fullscreen_close__JY_lb > button")?.click(),e.stopPropagation(),void e.preventDefault();if(D(l,s["toggle-hq"]))return document.querySelector('.live-stream-controls_right__u0Dox input[type="checkbox"]')?.click(),e.stopPropagation(),void e.preventDefault();if(D(l,s["enter-native-fs"]))return document.querySelector("#live-stream-player video")?.requestFullscreen(),e.stopPropagation(),void e.preventDefault();for(let t in r){if(D(l,s[r[t].id])&&"function"==typeof r[t].switchTo)return r[t].switchTo(),e.stopPropagation(),void e.preventDefault()}}};function D(e,t){return!(!e||!t)&&(e.code==t.code&&(e.ctrlKey==t.ctrlKey||e.ctrlKey&&at.get("bindsForceCtrl")&&!t.ctrlKey)&&e.altKey==t.altKey&&e.shiftKey==t.shiftKey)}const K=e=>{Ae("click-high-short"),e.destroy(e.container)},B=()=>{Ae("click-high-short"),j(),w("main")},P=(e,t,s)=>{Ae("shutter"),e.checked?t.classList.add("maejok-input-label-checked"):t.classList.remove("maejok-input-label-checked"),_()},F=(e,t,s)=>{e.forEach((e=>{const t=document.getElementById(e.name);if(function(e,t){switch(e){case"number":return/^\d+(\.\d+)?$/.test(t);case"integer":return/^\d+$/.test(t)}}(e.valid,t.value)){document.getElementById(`${e.name}-hidden`).value=t.value}})),_(),s.destroy()},z=(e,t,s)=>{Ae("shutter");t=e.nextElementSibling;qe(e,s.active.class[0])?(e.classList.remove(s.active.class[0]),t.style.maxHeight=null):(t.parentElement.querySelectorAll(s.content.selector).forEach((function(e){e.style.maxHeight=null})),t.parentElement.querySelectorAll(s.header.selector).forEach((function(e){e.classList.remove(s.active.class[0])})),e.classList.add(s.active.class[0]),t.style.maxHeight=t.scrollHeight+"px")},R=(e,t)=>{const s=d.settings.tabs.tab.active.class,a=t.parentElement;for(const e of a.children)e.classList.remove(s);t.classList.add(s),Ae("click-high-short"),w(e.name)},U=e=>{const t=new p(`${e.label} - Help`),s=document.createElement("div");s.classList.add(d.settings.config.help.class),s.innerHTML=e.help.text,t.setBody(s)},G=(e,t)=>{((e,t)=>{const s=new p(`${Ge().toUpperCase()} - ${e.config.title}`),a=document.createElement("div");a.classList.add(d.settings.config.wrapper.class),e.config.options.forEach((e=>{const t=document.createElement("div");t.classList.add(d.settings.config.group.class);const s=document.createElement("label");if(s.classList.add(d.inputs.textbox.label.class),s.setAttribute("for",e.name),s.textContent=e.label,t.appendChild(s),["input","number"].includes(e.type)){const s=document.createElement("input");s.classList.add(d.inputs.textbox.class),s.type=e.type,s.id=e.name,s.value=at.get(e.name),t.appendChild(s)}if(e.help){const s=document.createElement("b");s.classList.add(d.settings.config.help.label.class),s.innerHTML="?",s.addEventListener("click",(()=>U(e))),t.appendChild(s)}a.appendChild(t)}));const o=C("save",(()=>{F(e.config.options,t,s)}));a.appendChild(o),s.setBody(a)})(e,t)},J=(e,t,s)=>{se(e,t,!1)&&s.remove()},V=()=>{const e=a.get("packageJson");if(!e?.update.url)return;const t=window.open(e.update.url,"maejok_update");setTimeout((()=>{t.close(),function(){const e=()=>{alert("After updating MAEJOK-TOOLS, refresh this window to start using the new version"),document.removeEventListener("visibilitychange",e)};document.addEventListener("visibilitychange",e)}()}),1e3)},X=()=>{const e=a.get("packageJson");e?.changelog.url&&window.open(e.changelog.url,"maejok_update_changelog")},W=()=>{const e=document.getElementById("maejok-update-message"),t=e.querySelector(".maejok-update-click_here"),s=e.querySelector(".maejok-update-changelog"),a=e.querySelector(".maejok-update-dismiss");e&&(t?.removeEventListener("click",V),s.removeEventListener("click",X),a.removeEventListener("click",W),e.remove())},Y=e=>{Ae("shutter");const t=e.currentTarget.getAttribute("data-emote-command"),s=ae("pinnedEmotes",t);e.currentTarget.textContent=s?"Unpin":"Pin"},Q=(e,t,s)=>{if(Ae("shutter"),a.set("pendingKeybind",null),document.querySelector(d.modal.prompt.class))return;let o=new p("Rebind Key");const n=document.createElement("div");n.classList.add(d.modal.prompt.roomname.class),n.textContent=t;const l=document.createElement("div");l.classList.add(d.modal.prompt.keyname.class),l.textContent="(none)";const i=document.createElement("div");i.classList.add("error"),i.textContent="Conflicts with an existing keybind!",i.style.display="none";const r=C("save",(function(){Ae("shutter");let t=a.get("pendingKeybind");if(t){let a={};a[s]=t,at.set("binds",a),_(),e.textContent=Je(t)}a.set("pendingKeybind",null),o.destroy()})),c=document.createElement("div");c.classList.add(d.settings.config.help.class),c.innerHTML="Input a key or key combo to set a new keybind for:<br />",c.append(n),c.append(document.createElement("br")),c.append(l),c.append(i),c.append(r),o.setBody(c),o.getElement().classList.add(d.modal.prompt.class)},Z=()=>{Ae("shutter"),at.set("binds",c),_(),(()=>{const e=document.querySelectorAll(d.inputs.buttons.bind.selector),t=at.get("binds");for(var s of e)s.dataset.bindid&&(s.querySelector(d.inputs.buttons.label.selector).textContent=Je(t[s.dataset.bindid]))})()};const ee=()=>document.activeElement.className.toLowerCase().includes("input")||"input"==document.activeElement.role?.toLowerCase()||"input"==document.activeElement.tagName.toLowerCase(),te=(e,t)=>{const s=at.get(e);return!!s.length&&s.some((e=>e.id===t))},se=(e,t,s)=>{const a=at.get(e);let o=!1,n=!1;if(a.length&&(n=a.some((e=>e.id===t.id))),s){if(n)return Xe(`${t.displayName} is already in ${e} list`,"error"),!1;o=[...a,{id:t.id,displayName:t.displayName,color:t.color}],Xe(`${t.displayName} added to ${e} list`,"success")}else{if(!n)return Xe(`${t.displayName} is not in ${e} list`,"error"),!1;o=a.filter((e=>e.id!==t.id)),Xe(`${t.displayName} removed from ${e} list`,"success")}return o?(at.set(e,o),at.save(),x(),!0):(Xe(`${t.displayName} could not be added to ${e} list`,"error"),!1)},ae=(e,t)=>{const s=at.get(e),a=s.includes(t);if(a){const e=s.indexOf(t);s.splice(e,1)}else s.push(t);return at.set(e,s),at.save(),!a},oe=e=>e.replace(/^\w/,(e=>e.toUpperCase())),ne=(e,t=!1)=>{let s=!1;return"string"==typeof e&&(e=document.querySelector(e)),!!e&&(void 0!==typeof(e=t?e.querySelector(t):e).textContent?s=e.textContent:void 0!==typeof e.innerText?s=e.innerText:void 0!==typeof e.innerHTML&&(s=e.innerHTML),s||!1)},le=()=>{document.querySelector(d.chat.list.selector).classList.toggle("maejok-dense-chat",at.get("enableDenseChat"))},ie=e=>{const t=document.querySelector("body");e=void 0===e?at.get("hideScanLines"):e,t.classList.toggle("maejok-hide-scan_lines",e)},re=async()=>{const e={method:"GET"};try{const t=await fetch("https://api.fishtank.live/v1/live-streams/status",e);return await(t?.json())}catch(e){return!1}},ce=()=>{const e=document.querySelector(d.livestreams.selector);if(!e)return;const t=a.get("nontentOverlayActive");if(a.set("nontentOverlayActive",!t),t){e.querySelector(".maejok-nontent-overlay-container").remove()}else{const t=document.createElement("div");t.classList.add("maejok-nontent-overlay-container");const s=document.createElement("img");s.classList.add("maejok-nontent-overlay"),s.src="https://img1.picmix.com/output/stamp/normal/0/8/5/4/1324580_5d2c0.gif",t.appendChild(s);const a=document.createElement("img");a.classList.add("maejok-nontent-overlay"),a.src="https://img1.picmix.com/output/stamp/normal/0/6/5/0/510560_f6854.gif",t.appendChild(a);const o=document.createElement("img");o.classList.add("maejok-nontent-overlay"),o.src="https://img1.picmix.com/output/stamp/normal/0/8/5/4/1324580_5d2c0.gif",t.appendChild(o),e.appendChild(t)}},de=e=>{const t=document.querySelector(d.livestreams.selector),s=[t.querySelector(d.livestreams.volume.selector),t.querySelector(d.livestreams.quality.selector),t.querySelector(d.livestreams.fullscreen.selector),t.querySelector(d.livestreams.clip.selector)];if(!at.get("enableControlOverlay"))return void s.forEach((e=>{e?.classList.remove("maejok-hide")}));let o;void 0!==e&&(o=!e,a.set("controlOverlayDisabled",e));s.some((e=>!e))||(void 0===e&&(o=a.get("controlOverlayDisabled"),a.set("controlOverlayDisabled",!o)),o?s.forEach((e=>{e.classList.remove("maejok-hide")})):s.forEach((e=>{e.classList.add("maejok-hide")})))},me=e=>{clearInterval(a.get("timestampInterval"));const t=document.querySelector(d.livestreams.timestamp.selector);if(t?.remove(),e){pe();const e=setInterval(pe,3e4);a.set("timestampInterval",e)}},pe=()=>{const e=document.querySelector(".live-stream-player_right__YlQQh");if(!e)return;const t=d.livestreams.timestamp,s=document.querySelector(t.selector);let a,o,n;s?(a=s,o=s.querySelector(t.day.selector),n=s.querySelector(t.time.selector)):(a=document.createElement("div"),a.classList.add(t.class),o=document.createElement("div"),o.classList.add(t.day.class),n=document.createElement("div"),n.classList.add(t.time.class),a.appendChild(o),a.appendChild(n),e.insertAdjacentElement("beforebegin",a));const l=new Date,i=document.querySelector(".status-bar_day__V8Zac")?.textContent,r=l.toLocaleString("en-US",{timeZone:"America/New_York",hour:"numeric",minute:"numeric",hour12:!0});o.innerHTML=i,n.innerHTML=r},he=e=>{const t=document.querySelector(d.livestreams.overlay.selector);if(e){if(t)return;const{userOverlayHTML:e}=a.get("user");if(!e){const e=document.querySelector(d.header.user.name.selector);Ce(e)}ue()}else t?.remove()},ue=()=>{const e=document.querySelector(".live-stream-player_right__YlQQh");if(!e)return;const{userOverlayHTML:t}=a.get("user"),s=document.createElement("div");s.classList.add(d.livestreams.overlay.class),s.innerHTML=t,e.insertAdjacentElement("beforebegin",s)},ge=e=>{const t=at.get("tokenToUsdRate"),s=at.get("usdExchangeRate");!a.get("observers").modal&&e&&k.modal.start();[d.token.topBarUserTokens.selector,d.token.ttsModalTokens.selector,d.token.sfxModalTokens.selector,d.token.toysFishtoysTokens.selector,d.token.buyTokensModal.selector,d.token.generateLootPrice.selector,d.token.voteModalTokens.selector+" span"].forEach((a=>{document.querySelectorAll(a).forEach((a=>{a.closest(d.token.toysBigToyPrice.selector)||(e?(e=>{if(e.hasAttribute("data-original")||e.setAttribute("data-original",e.innerHTML),e.querySelector("span")&&[...e.childNodes].some((e=>e.nodeType===Node.TEXT_NODE&&e.textContent.includes("₣"))))e.querySelectorAll("span").forEach((e=>{const a=e.textContent.trim();if(a.startsWith("₣")){const o=parseFloat(a.slice(1));if(!isNaN(o)){const a=(o*t*s).toFixed(2);e.innerHTML=`<span style="text-decoration: line-through;">$${a}</span>`}}})),e.childNodes.forEach(((e,a,o)=>{if(e.nodeType===Node.TEXT_NODE){let n=e.textContent.trim();if("₣"===n&&o[a+1]&&o[a+1].nodeType===Node.TEXT_NODE){const l=o[a+1].textContent.trim();if(!isNaN(parseFloat(l))){const i=parseFloat((n+l).slice(1));if(!isNaN(i)){const n=(i*t*s).toFixed(2);e.textContent=`$${n}`,o[a+1].textContent=""}}}else if(n.startsWith("₣")){const a=parseFloat(n.slice(1));if(!isNaN(a)){const o=(a*t*s).toFixed(2);e.textContent=`$${o}`}}}}));else{const a=e.textContent.trim(),o=a.match(/₣(\d+(\.\d+)?)/);if(o){const n=parseFloat(o[1]);if(!isNaN(n)){const l=(n*t*s).toFixed(2);e.innerHTML=a.replace(o[0],`$${l}`)}}}(e.classList.contains(d.token.ttsModalTokens.class)||e.classList.contains(d.token.sfxModalTokens.class))&&(e.style.width="135px")})(a):(e=>{const t=e.getAttribute("data-original");t&&(e.innerHTML=t,e.removeAttribute("data-original")),(e.classList.contains(d.token.ttsModalTokens.class)||e.classList.contains(d.token.sfxModalTokens.class))&&(e.style.width="96px")})(a))}))}))},be=e=>{const t="chat-link-button";let s=document.getElementById(t);if(e){if(!s){const e=document.createElement("button");e.id=t,e.style.background="none",e.style.border="none",e.style.cursor="pointer",e.style.paddingRight="10px",e.style.paddingLeft="10px",e.style.color="#ffffff",e.innerHTML='\n        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="17" height="17">\n          <path d="M320 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l82.7 0L201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3l0 82.7c0 17.7 14.3 32 32 32s32-14.3 32-32l0-160c0-17.7-14.3-32-32-32L320 0zM80 32C35.8 32 0 67.8 0 112L0 432c0 44.2 35.8 80 80 80l320 0c44.2 0 80-35.8 80-80l0-112c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 112c0 8.8-7.2 16-16 16L80 448c-8.8 0-16-7.2-16-16l0-320c0-8.8 7.2-16 16-16l112 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L80 32z" fill="currentColor"></path>\n        </svg>\n      ',e.addEventListener("click",(()=>{window.open("https://fishtank.live/chat","_blank","width=400,height=600,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes")})),e.addEventListener("mouseenter",(()=>{e.style.color="#f8ec94"})),e.addEventListener("mouseleave",(()=>{e.style.color="#ffffff"}));const s=document.querySelector(d.chat.header.selector);s&&s.appendChild(e)}}else s&&s.remove()},ye=e=>{const t="polygon-fill-style";let s=document.getElementById(t);e?s||(s=document.createElement("style"),s.id=t,s.textContent='\n        .clickable-zones_clickable-zones__OgYjT polygon[class=""] {\n          fill: rgba(0, 255, 0, 0.5) !important;\n        }\n      ',document.head.appendChild(s)):s&&s.remove()},fe=(e=null,t=!1)=>{at.get("enableBigScreen")?(t||Ae("shutter"),e=null===e?!a.get("bigScreenState"):e):e=!1,at.get("persistBigScreen")&&(at.set("bigScreenState",e),at.save()),a.set("bigScreenState",e);let s="\n.home_home__pUFCA .home_right__j_b3u {\n  grid-column: 1/4;\n  grid-row: 1/6;\n}\n\n.top-bar_top-bar___Z0QX,\n.secondary-panel_secondary-panel__vUc65,\n.experience-bar_experience-bar__nVDge,\n.announcement_announcement__Sow3P,\n.home_left__UiQ0z,\n.home_center-bottom__zlpWm,\n.home_center__6GW_l,\n.tts-history_tts-history__8_9eB  {\n  display: none !important;\n}\n";if(a.get("isShowLive")&&(s=at.get("enableBigscreenFill")?i+"\n.hls-stream-player_fullscreen__Y3RhA {\n  top: 32px !important;\n}\n\n.live-stream-player_container__A4sNR {\n  position: relative;\n  display: flex;\n  justify-content: center;\n  width: 100%;\n  height: 100% !important;\n  top: -32px;\n}\n\n.live-stream-player_live-stream-player__4CHjG .live-stream-player_container__A4sNR video {\n    height: 100%;\n    aspect-ratio: unset !important;\n    width: 100%;\n    object-fit: fill;\n}\n\n.live-stream-player_header__58imR {\n  z-index: 5;\n}\n":i),e){const e=document.createElement("style");e.textContent=s,e.setAttribute("id","maejok-bigscreen"),document.head.appendChild(e)}else{const e=document.getElementById("maejok-bigscreen");e?.remove()}},ve=e=>{if(e){const e=document.createElement("style");e.textContent="\n.background_background__fNMDL {\n  background: #1c1c1c;\n  background-image: none;\n}\n\n.live-stream_live-stream__uVezO,\n.live-stream-fullscreen_left__idsvZ,\n.live-stream-fullscreen_right___UCNg,\n.episode-fullscreen_left__bNbXb,\n.episode-fullscreen_right__HuAn9,\n.stats_stats__SIg_t,\n.tts-history_tts-history__8_9eB,\n.secondary-panel_secondary-panel__vUc65,\n.experience-bar_experience-bar__nVDge,\n.announcement_announcement__Sow3P,\n.chat-input_actions__QqSJK,\n.chat_header__8kNPS,\n.loader_loader__iek2w,\n.clans_clans__v2iO2,\n.episodes_episodes__o7PWv,\n.leader-board_leader-board__7KyzK,\n.episode-fullscreen_bonus__scypw,\n.clan-info_clan-info___2J6Z,\n#contestants {\n  filter: brightness(0.5) !important;\n}\n\n.top-bar_top-bar___Z0QX{\n  filter: brightness(0.5) !important;\n  position: relative;\n  z-index: 100;\n}\n\n.episode_episode__oA49f {\n  filter: brightness(0.7);\n}\n\n.live-stream_popular__hfeZD {\n  filter: drop-shadow(0 0 8px rgba(255,29,0,.75)) brightness(0.8) !important;\n}\n\n.modal_backdrop__94Bu6 {\n  background-color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.modal_modal-container__iQODa .modal_modal__MS70U:before {\n  filter: brightness(0.25);\n}\n\n#live-stream-player, #episode-player {\n  border: none;\n  box-shadow: none;\n  outline-color: rgb(129 129 129);\n}\n\n#live-stream-player:after, #episode-player:after {\n  filter: brightness(0.7);\n}\n\n#live-stream-player:before, #episode-player:before {\n  filter: brightness(0.5);\n}\n\n.chat_chat__2rdNg {\n  filter: brightness(0.9);\n  border: none;\n  box-shadow: none;\n  outline-color: rgb(129 129 129) !important;\n}\n\n.chat_chat__2rdNg .chat_messages__2IBEJ:before {\n  opacity: 0 ;\n}\n\n.chat_chat__2rdNg:after,\n.chat_chat__2rdNg:before {\n  filter: brightness(0.5);\n}\n\n#live-stream-fullscreen {\n  filter: brightness(0.25);\n}\n\n.live-stream-controls_live-stream-controls__hI4aT {\n  filter: brightness(0.75);\n}\n",e.setAttribute("id","maejok-darkmode"),document.head.appendChild(e)}else{const e=document.getElementById("maejok-darkmode");e?.remove()}},ke=e=>{const t=document.querySelector(".clickable-zones_clickable-zones__OgYjT");t&&(t.style.display=e?"none":"")},_e=e=>{if(e){const e=document.createElement("style");e.textContent="\n.happening_happening__Ca2E7,\n.happening_backdrop__JCihz,\n.cyber-attack_cyber-attack__hKvrm {\n  display: none !important;\n}\n",e.setAttribute("id","maejok-hidescreentakeovers"),document.head.appendChild(e)}else{const e=document.getElementById("maejok-hidescreentakeovers");e?.remove()}},xe=e=>{const t=document.querySelector(d.chat.input.selector);"object"==typeof e&&(e=e.displayName);const s=new CustomEvent("insertmention",{detail:`${e}`});Ae("click-high-short"),document.dispatchEvent(s),t&&tt(t)},we=e=>{const t={message:d.chat.message.class,emote:d.chat.emote.class,clan:d.chat.clan.class,system:d.chat.system.class,consumable:d.chat.consumable.class,tts:d.chat.tts.class,sfx:d.chat.sfx.class},s=new Map([["message",qe(e,t.message)||Ze(e,t.message)],["emote",qe(e,t.emote)||Ze(e,t.emote)],["roll",e.textContent.includes("rolls a 20-sided dice")&&(qe(e,t.emote)||Ze(e,t.emote))],["clan",qe(e,t.clan)||Ze(e,t.clan)],["system",qe(e,t.system)||Ze(e,t.system)],["consumable",qe(e,t.consumable)||Ze(e,t.consumable)],["tts",qe(e,t.tts)||Ze(e,t.tts)],["sfx",qe(e,t.sfx)||Ze(e,t.sfx)]]);let a=null;return s.forEach(((e,t)=>{e&&(a=t)})),a},je=e=>{const t=we(e);if(!e)return;if(!["message","emote","roll"].includes(t))return;const s=d.chat[t],a=Ze(e,s.class),o=a.querySelector(s.sender.selector);if(!o||!a)return;const n=Ee(o,t),l=o.style.color||"rgb(255, 255, 255)";return{displayName:n,id:a.hasAttribute("data-user-id")?a.getAttribute("data-user-id"):null,color:l}},Ee=function(e,t){const s=d.chat[t].sender,a=e.classList.contains(s.class)?e:e.querySelector(s.selector);return"message"===t?a.lastChild.textContent:ne(a)},Ce=e=>{const t=e.textContent;let s,a,o="";const n=document.querySelector(`.${d.header.user.clan.class} > button`);n&&(s=n.textContent,a=n.getAttribute("style"),o=`<div class="maejok-user-overlay-clan" style="${a}">${s}</div>`);return{profile:{displayName:t,clan:s,clanStyle:a,userOverlayHTML:o+`<div class="maejok-user-overlay-username">${t}</div>`}}},Le=e=>{const t=document.querySelectorAll(d.chat.message.selector),s=Array.from(t);let a=!1;return s.some((t=>{const s=new m(t),o=s.sender,n=s.type;return s.destroy(),"message"===n&&(o.displayName===e?(a=o,!0):void 0)})),a},Te=()=>{const e=document.querySelector(d.chat.list.selector);e.scrollTop=e.scrollHeight},Se=(e,t=!0)=>{const s=at.get(),o=new m(e);t&&function(e){const t=at.get();if("message"!==e.type)return;e.mentioned&&t.enableMentionLog&&a.set("mentions",[...a.get("mentions"),{...e,added:Date.now()}])}(o),s.enableTtsLog&&"tts"===o.type&&Ue(e),function(e){const t=e.querySelector(`${d.chat.system.selector} div`);t&&t.textContent.includes("Joined ")&&v()}(e);if(s[{emote:"hideEmotes",system:"hideSystem",clan:"hideClanMessages",consumable:"hideConsumables",roll:"hideDiceRolling",tts:"hideTTSMessages",sfx:"hideSFXMessages"}[o.type]]&&s.enablePlugin)o.hide();else{o.show();const e={hideTimestamps:{element:"timestamp",hide:!!s.enablePlugin&&s.hideTimestamps},hideClans:{element:"clan",hide:!!s.enablePlugin&&s.hideClans},hideAvatars:{element:"avatar",hide:!!s.enablePlugin&&s.hideAvatars},hideLevels:{element:"level",hide:!!s.enablePlugin&&s.hideLevels},hideEndorsements:{element:"endorsement",hide:!!s.enablePlugin&&s.hideEndorsements},hideGrayNames:{element:"grayName",hide:!!s.enablePlugin&&s.hideGrayNames}},t=Object.entries(e).reduce(((e,[,t])=>(e.element.push(t.element),e.hide.push(t.hide),e)),{element:[],hide:[]});o.normalizeEpic(),o.normalizeGrand(),o.normalizeFonts(s.hideFonts),o.fixDarkDisplayName(),o.hideElements(t.element,t.hide),o.highlightMessage(),v(o.sender)}o.destroy()},Ne=e=>{const t=Math.round((Date.now()-e)/6e4);return t<1?"less than a minute ago":`${t} ${1===t?"minute":"minutes"} ago`},Me=()=>{const e=new Uint16Array(8);return window.crypto.getRandomValues(e),Array.from(e,(e=>e.toString(16))).join("")},$e=()=>{let e=0;const t=document.getElementsByTagName("*");for(let s=0;s<t.length;s++){const a=window.getComputedStyle(t[s]).getPropertyValue("z-index");if(!isNaN(a)&&"auto"!==a){const t=parseInt(a,10);t>e&&(e=t)}}return e},Ae=e=>{const t=document.createElement("audio");t.style.display="none";const s=n.get(e);s?(t.volume=.5,t.src=`https://cdn.fishtank.live/sounds/${e}.${s}`,document.body.appendChild(t),t.onended=()=>{t.remove()},t.play()):console.warn(`Sound '${e}' not found`,"error")},qe=(e,t)=>Array.isArray(t)?t.some((t=>e?.classList?.contains(t))):e?.classList?.contains(t)||!1,Oe=(e,t)=>{const s=Object.keys(e),a=Object.keys(t);if(s.length!==a.length)return!1;for(let a of s)if(e[a]!==t[a])return!1;return!0},He=e=>{const t=a.get("audioElement");if(!1===t)return a.set("audioElement",HTMLAudioElement.prototype.play),void He(!!e);HTMLAudioElement.prototype.play=function(){return this.muted=!!e,at.get("hideGiftedPassMessage")&&this.src?.includes("twinkle")&&(this.muted=!0),t.apply(this,arguments)}},Ie=(e,t=40)=>{const{r:s,g:a,b:o}=Qe(e);return.299*s+.587*a+.114*o<t},De=e=>{const{r:t,g:s,b:a}=Qe(e),o=e=>Math.max(8,e),n=o(t),l=o(s),i=o(a);return`rgb(${Math.min(255,Math.round(15*n))}, ${Math.min(255,Math.round(15*l))}, ${Math.min(255,Math.round(15*i))})`},Ke=async e=>{const t=await async function(e,t){let s=null,a=function(e){try{const t=new URL(e).hostname.split(".");return t.slice(-2,-1).join(".")}catch(e){return console.error("Invalid URL:",e.message),null}}(t);const o="sb-wcsaaupukpdmqdjcgaoo-auth-token",n="fishtank"===a?et(o).raw:et(o).decoded,l="supabase"===a?`Bearer ${et(o).decoded}`:null,i=`${o}=${n}`,r="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Indjc2FhdXB1a3BkbXFkamNnYW9vIiwicm9sZSI6ImFub24iLCJpYXQiOjE2ODkxMDM4NDEsImV4cCI6MjAwNDY3OTg0MX0.xlZdK9HhTCF_fZgq8k5DCPhxJ2vhMCW1q9du4f0ZtWE",c={method:e.toUpperCase(),headers:{ApiKey:r,Cookie:i,Authorization:l}};try{const e=await fetch(t,c);if(!e.ok)throw new Error(`HTTP error! Status: ${e.status}`);const a=e.headers.get("Content-Type");return s=a&&a.includes("application/json")?await e.json():await e.text(),Array.isArray(s)?s[0]:s}catch(e){throw console.error("Error fetching data:",e),e}}("get",`https://www.fishtank.live/api/user/get?uid=${e}`),s=new CustomEvent("modalopen",{detail:JSON.stringify({modal:"Profile",data:t.profile})});document.dispatchEvent(s)},Be=async e=>{Ke(e.id);let t=0;const s=setInterval((()=>{const e=document.querySelector(d.profile.actions.mute.selector);e?(clearInterval(s),e.click()):t>200&&(clearInterval(s),Ae("denied")),t++}),10)},Pe=e=>{if(!at.get("enableTTSFilterWarning"))return;let t=0;const s=()=>{const a=e.querySelector("input");a?a.addEventListener("input",(function(){const t=new RegExp(l.join("|"),"gi"),s=this.value.match(t);if(s){const t=e.querySelector(".input_input__Zwrui > span"),o=t.querySelector(".maejok-tts-warning-text");if(o)return void(o.innerHTML=`Your TTS contains No No words! (${s.toString()})`);a.classList.add("maejok-tts-input-warning-border"),t.insertAdjacentHTML("beforeend",`<div class='maejok-tts-warning-text'>Your TTS contains No No words! (${s.toString()})</div>`)}else{const t=e.querySelector(".maejok-tts-warning-text");t?.remove(),a.classList.remove("maejok-tts-input-warning-border")}})):t<5&&(t++,requestAnimationFrame(s))};requestAnimationFrame(s)},Fe=e=>{const t=e.querySelector("h3");if(t){const s=t.textContent;if(s?.toLowerCase().includes("tts message"))return;e.classList.add("maejok-hide")}},ze=e=>{const t=e.querySelector("h3");if(t){const s=t.textContent;if(!s?.toLowerCase().includes("gifted"))return;e.classList.add("maejok-hide")}},Re=e=>{const t=document.createElement("div");t.innerHTML=e.outerHTML;const s=t.querySelector(d.toast.message.selector);if(s.querySelector("h3"))return;const o=ne(e);if(/(level|item|mission)/.test(o?.toLowerCase()))return;const n=document.createElement("div");n.classList.add(d.settings.events.timestamp.class);const l=(new Date).toLocaleString("en-US",{timeZone:"America/New_York",year:"2-digit",month:"2-digit",day:"2-digit",hour:"numeric",minute:"numeric",hour12:!0});n.textContent=l;const i=t.querySelector(".toast_toast__zhSlo");i.style="",i.classList.add(d.settings.events.toastFix.class),s.parentNode.classList.add("maejok-toast-body-fix"),s.append(n),a.set("events",[...a.get("events"),{html:t.outerHTML,added:Date.now()}])},Ue=e=>{const t=d.chat.tts,s=e.querySelector(t.info.from.selector).textContent,o=e.querySelector(t.info.room.selector).textContent,n=e.querySelector(t.message.selector).textContent,l=e.querySelector(t.footer.timestamp.selector).textContent,i=e.querySelector(t.footer.voice.selector).textContent;a.set("tts",[...a.get("tts"),{ttsContent:{from:s,room:o,message:n,voice:i,timestamp:l},added:Date.now()}])},Ge=()=>a.get("packageJson")?.name||at.plugin("name"),Je=e=>{if(!e)return"(none)";return(e.ctrlKey&&!~e.code.indexOf("Control")?"Ctrl + ":"")+(e.altKey&&!~e.code.indexOf("Alt")?"Alt + ":"")+(e.shiftKey&&!~e.code.indexOf("Shift")?"Shift + ":"")+({Backquote:"`"}[e.code]||e.code).replace(/^Digit(\d)$/,"NumRow $1").replace(/^Key([A-Z])$/,"$1")},Ve=()=>{const e=at.get("binds");for(const t in e)t in c||delete e[t];for(const t in c)t in e||(e[t]={...c[t],...e[t]});return at.set("binds",e),e},Xe=(e="default message",t="info",s=5e3)=>{const a=new CustomEvent("toastopen",{detail:JSON.stringify({type:t,message:e,duration:s,id:Me()})});document.dispatchEvent(a)},We=async()=>{(()=>{const e="maej3rked-installed";try{localStorage.setItem(e,!0)}catch{console.error("Error while saving localstorage")}})(),at.load();const e=at.get(),t=a.get("isPopoutChat");st(!0),e.enableRecentChatters&&(y(),k.chatters.start()),He(at.get("disableSoundEffects")),x(),ie(),me(at.get("enableTimestampOverlay")),he(at.get("enableUserOverlay")),_e(at.get("hideScreenTakeovers")),be(at.get("enablePopoutChatButton")),ye(at.get("showHiddenItems")),ge(at.get("convertTokenValues")),k.chat.start(),k.home.start(),at.get("enableHideCountdown")&&(()=>{const e=document.querySelector(d.modal.countdown.selector);e&&e.classList.add("maejok-hide")})(),at.get("hideGlobalMissions")&&(k.body.start(),k.modal.start()),(at.get("enableEventsLog")||at.get("hideGiftedPassMessage"))&&k.modal.start();const s=a.get("user");e.autoClanChat&&null!==s.clan&&!t&&function(e="Global"){e="autoClanChat"===e?function(e){const t=document.querySelector(d.header.user[e].selector).innerText;if("level"===e&&t)return t.replace("LVL ","");return t}("clan"):e;document.querySelectorAll(`${d.chat.room.options.selector} button span`).forEach((t=>{t.innerText===e&&t.click()}))}(s.clan.tag),e.persistBigScreen&&!t&&fe(e.bigScreenState,!0),t||h();const o=document.querySelector("main");o.addEventListener("click",O),o.addEventListener("contextmenu",q),o.addEventListener("dblclick",H),document.addEventListener("keydown",I),a.set("running",!0)},Ye=()=>{fe(!1),st(!1),k.chat.stop(),k.chatters.stop(),k.body.stop(),k.modal.stop(),k.tokens.stop(),He(!1),f(),u(),ie(!1),showHiddenItems(!1),clearInterval(a.get("updateCheckInterval")),clearInterval(a.get("timestampInterval")),clearInterval(a.get("daysLeftInterval")),a.set("updateCheckInterval",null),a.set("timestampInterval",null),a.set("daysLeftInterval",null);const e=document.querySelector(d.chat.list.selector),t=document.querySelector(d.home.selector);t.removeEventListener("click",O),t.removeEventListener("contextmenu",q),e.removeEventListener("dblclick",H),document.removeEventListener("keydown",I),a.set("running",!1)};function Qe(e){let t,s,a;if(e.includes("rgb")){const o=e.replace(/[^\d,]/g,"").split(",");t=parseInt(o[0],10),s=parseInt(o[1],10),a=parseInt(o[2],10)}else{if(!e.includes("#"))return!1;{const e=hexColor.replace(/^#/,""),o=parseInt(e,16);t=o>>16&255,s=o>>8&255,a=255&o}}return{r:t,g:s,b:a}}function Ze(e,t){return e.closest(`.${t.split(" ").join(", .")}`)||!1}function et(e){const t=document.cookie.split(";");for(let s=0;s<t.length;s++){const a=t[s].trim();if(a.startsWith(e+"=")){const t=a.substring(e.length+1);return{raw:t,decoded:JSON.parse(decodeURIComponent(t))[0]}}}return!1}function tt(e){const t=document.createRange(),s=window.getSelection();t.selectNodeContents(e),t.collapse(!1),s.removeAllRanges(),s.addRange(t),e.focus()}function st(e){const t=d.header.logo,s=document.querySelector(t.img.selector);if(s.classList.toggle(t.hideImg.class,e),e){const e=document.createElement("img");e.src="https://github.com/f3rked/maej3rked-tools/blob/06bddd3e353365fc62df0e1415b4cda3cbf07b14/public/images/logo-full-white-red-eyes.png?raw=true",e.classList.add(...t.hoverImg.classes),s.insertAdjacentElement("afterend",e)}else document.querySelector(t.hoverImg.selector).remove()}const at=(()=>{const e={userData:null,enablePlugin:!0,enableDimMode:!1,enableHideCountdown:!1,convertTokenValues:!1,usdExchangeRate:1,tokenToUsdRate:.0828,showHiddenItems:!1,enablePopoutChatButton:!1,enableBigScreen:!0,enableDragModal:!1,enableTTSFilterWarning:!1,persistBigScreen:!1,bigScreenState:!1,enableBigscreenFill:!1,enableControlOverlay:!1,enableTimestampOverlay:!1,enableUserOverlay:!1,controlOverlayDisabled:!1,disableSoundEffects:!1,hideGlobalMissions:!1,hideScreenTakeovers:!1,hideNavigationOverlay:!1,hideGiftedPassMessage:!1,enableUpdateChecks:!0,updateCheckFrequency:10,showUpdateNotice:!1,hideScanLines:!1,hideTimestamps:!0,hideAvatars:!1,hideClans:!1,hideLevels:!1,hideEndorsements:!1,hideConsumables:!1,hideEmotes:!1,hideDiceRolling:!1,hideClanMessages:!1,hideToastMessages:!1,hideTTSMessages:!1,hideSFXMessages:!1,hideSystem:!1,hideFonts:!1,hideGrayNames:!1,enableImprovedTagging:!0,enableDenseChat:!1,enableRecentChatters:!0,recentChattersThreshold:10,normalizeEpicText:!1,normalizeGrandText:!1,autoClanChat:!1,enableEmotesMenu:!0,pinnedEmotes:[],enableChatMenu:!0,fixDarkDisplayNames:!1,enableMentionLog:!0,reverseMentionLog:!1,enableEventsLog:!1,reverseEventsLog:!1,enableTtsLog:!1,reverseTtsLog:!1,agreementVersion:null,bindsEnable:!1,bindsForceCtrl:!1,binds:{},friends:[],watching:[]},t={name:"MAEJOK-TOOLS-RENEWED",storageKey:"maejok-tools-v2r"},s=()=>{const s=JSON.parse(localStorage.getItem(t.storageKey));if(!s)return o(),e;for(const t in s)e.hasOwnProperty(t)&&(e[t]=s[t]);return e},o=async()=>{const s={};for(const t in e)e.hasOwnProperty(t)&&(s[t]=e[t]);try{localStorage.setItem(t.storageKey,JSON.stringify(s))}catch{console.error("Error while saving localstorage")}finally{return s}};return{plugin:e=>e?t[e]:t,get:t=>t?e[t]:e,set:(t,s)=>{e.hasOwnProperty(t)&&("object"!=typeof s||Array.isArray(s)?e[t]=s:e[t]={...e[t],...s})},load:s,save:o,settingsOptions:()=>{const e=s();return[{name:"main",label:"Main",content:{groups:[{name:"plugin",label:"Plugin Settings"},{name:"site-options",label:"Site-wide Options"},{name:"video-player-options",label:"Video Player Options"}],inputs:[{name:"enablePlugin",label:`Enable ${Ge().toUpperCase()}`,type:"toggle",value:e.enablePlugin,group:"plugin",help:{label:"?",text:"<p>Disabling this option will completely disable the plugin's features, but it will not remove the plugin from the site.  The settings button will stay in place so you can access this menu to re-enable the plugin.</p>\n                <p>In order to complete disable the plugin, you must disable it from your browser extension. (eg: TamperMonkey, GreaseMonkey)</p>"}},{name:"enableUpdateChecks",label:"Get Notified About Plugin Updates",type:"toggle",value:e.enableUpdateChecks,group:"plugin",help:{label:"?",text:"<p>Enabling this option will allow MAEJOK-TOOLS to alert you when new plugin updates become available.</p>"},config:{title:"Update Check Frequency",options:[{type:"number",valid:"integer",label:"Frequency",name:"updateCheckFrequency",help:{label:"?",title:"Plugin Update Check Frequency",text:"<p>How many minutes between checking for new versions?</p>\n                        <p><i>Minimum: 5</i></p>"}}]}},{name:"updateCheckFrequency",type:"hidden",value:e.updateCheckFrequency,group:"plugin"},{name:"enableDimMode",label:"Enable Dim mode",type:"toggle",value:e.enableDimMode,group:"site-options",help:{label:"?",text:"<p>Enabling this option reduces the brightness of the site</p>"}},{name:"enableHideCountdown",label:"Enable Hide Countdown",type:"toggle",value:e.enableHideCountdown,group:"site-options",help:{label:"?",text:"<p>Enabling this option hides the countdown modal displayed on site load.</p>"}},{name:"enableDragModal",label:"Enable Drag TTS Modal",type:"toggle",value:e.enableDragModal,group:"site-options",help:{label:"?",text:"<p>Enabling this option will enable dragging of TTS modal to desired location.</p>"}},{name:"enableTTSFilterWarning",label:"Enable TTS Filter Warning",type:"toggle",value:e.enableTTSFilterWarning,group:"site-options",help:{label:"?",text:`<p>Enabling this option will display a warning if your TTS text includes words that will be filtered.</p>\n                <p><strong style="color:white;word-wrap:break-word">Current known filtered words: ${l.toString()}</strong></p>`}},{name:"enableEmotesMenu",label:"Enable Emotes Menu",type:"toggle",value:e.enableEmotesMenu,group:"site-options",help:{label:"?",text:"<p>Enabling this option creates a menu option to open with an option to view all chat emote commands by right-clicking in the chat input box.</p>\n                <p>Right-clicking again without moving the mouse will give you access to your browser's regular context menu.</p>"}},{name:"enableChatMenu",label:"Enable Chat Menu",type:"toggle",value:e.enableChatMenu,group:"site-options",help:{label:"?",text:"<p>Enabling this option creates a menu option quickly access user actions by right-clicking a user in chat.</p>\n                <p>Right-clicking a mention will give options related to the mentioned user.</p>\n                <p><i>Note: Right-clicking again without moving the mouse will give you access to your browser's regular context menu.</i></p>"}},{name:"disableSoundEffects",label:"Disable Sound Effects",type:"toggle",value:e.disableSoundEffects,group:"site-options",help:{label:"?",text:"<p>Enabling this option will disable sound effects.  This includes mentions, global missions, episode hover static, etc.</p>"}},{name:"hideGlobalMissions",label:"Hide Global Mission Popups",type:"toggle",value:e.hideGlobalMissions,group:"site-options",help:{label:"?",text:"<p>Enabling this option will prevent the <strong>Global Missions</strong> pop up from showing, however, you will still hear the sound effect.</p>"}},{name:"hideScreenTakeovers",label:"Hide Screen Takeovers",type:"toggle",value:e.hideScreenTakeovers,group:"site-options",help:{label:"?",text:"<p>Enabling this option will prevent the <strong>Screen Takeovers</strong> (Cigarette Deliveries, Loot Crates, etc.) from showing, however, you will still hear the sound effect.</p>"}},{name:"convertTokenValues",label:"Convert Tokens to Dollars",type:"toggle",value:e.convertTokenValues,group:"site-options",help:{label:"?",text:"<p>Enabling this option will show all token values as USD</p>\n                <p>You will need to reenable the option after changing exchange rates</p>\n                "},config:{title:"Exchange Rates",options:[{type:"number",valid:"number",label:"USD -> Local",name:"usdExchangeRate",help:{label:"?",title:"Currency Exchange Rate",text:"<p>Set a custom exchange rate with your local currency</p>\n                        <p><i>Default: 1 (USD)</i></p>"}},{type:"number",valid:"number",label:"Token -> USD",name:"tokenToUsdRate",help:{label:"?",title:"Token Exchange Rate",text:"<p>Set the token to USD rate, the default</p>\n                      <p>value is an average of all token price options</p>\n                        <p><i>Default: 0.0828 (USD)</i></p>"}}]}},{name:"usdExchangeRate",type:"hidden",value:e.usdExchangeRate,group:"site-options"},{name:"tokenToUsdRate",type:"hidden",value:e.tokenToUsdRate,group:"site-options"},{name:"hideToastMessages",label:"Hide Non Admin Toast Messages",type:"toggle",value:e.hideToastMessages,group:"site-options",help:{label:"?",text:"<p>Enabling this option will hide the <strong>Toast Messages</strong> that pop up for these like level up, gifted season pass, consumed item, etc.</p>\n                <p>This will not hide the admin messages that come from production or TTS approvals or rejections."}},{name:"hideGiftedPassMessage",label:"Hide Gifted Pass Messages",type:"toggle",value:e.hideGiftedPassMessage,group:"site-options",help:{label:"?",text:"<p>Enabling this option will hide the <strong>Gifted Season Pass Messages</strong> that pop up and disable the sound.</p>"}},{name:"enableBigScreen",label:"Enable Big Screen Mode",type:"toggle",value:e.enableBigScreen,group:"video-player-options",help:{label:"?",text:"<p>Enabling this option creates a keyboard shortcut to toggle <strong>Big Screen Mode</strong> which makes the videos take priority in the layout.</p>\n                  <p>Keyboard Shortcut: <strong>CTRL+`</strong> (tilda, above TAB key)</p>\n                  <p>or using <strong>CTRL+SHIFT+SPACE BAR</strong>.</p>"}},{name:"persistBigScreen",label:"Persist Big Screen",type:"toggle",value:e.persistBigScreen,group:"video-player-options",help:{label:"?",text:"<p>Enabling this option will restore the last <strong>Big Screen Mode</strong> state upon refreshing the site.</p>"}},{name:"enableBigscreenFill",label:"Enable Bigscreen Fill",type:"toggle",value:e.enableBigscreenFill,group:"video-player-options",help:{label:"?",text:"<p>Enabling this option will cause <strong>bigscreen mode video player to fill the whole screen.</strong></p>\n                  <p><i>This is how the video player worked before a recent site update.  It does slightly stretch the image, but in my opinion it's hard to tell unless you're being really autistic about it.</i></p>"}},{name:"enableControlOverlay",label:"Enable Video Control Overlay Shortcut",type:"toggle",value:e.enableControlOverlay,group:"video-player-options",help:{label:"?",text:"<p>Enabling this option creates a keyboard shortcut to toggle <strong>the video controls overlay</strong> which will show or hide the overlay.</p>\n                  <p><strong><i>It will hide the controls when enabled, but you can show them again by using the shortcut.  You may have to click on the window to regain focus for the shortcut to work.</i></strong></p>\n                  <p>Keyboard Shortcut: <strong>CTRL+SHIFT+H</strong></p>"}},{name:"enableTimestampOverlay",label:"Enable Tank Time Overlay ",type:"toggle",value:e.enableTimestampOverlay,group:"video-player-options",help:{label:"?",text:"<p>Enabling this option will display a timestamp of the current time in the tank at the top of the video player.</p>"}},{name:"enableUserOverlay",label:"Enable User Name Overlay",type:"toggle",value:e.enableUserOverlay,group:"video-player-options",help:{label:"?",text:"<p><strong>Enabling this option will display your username at at the top of the video player.</strong></p>\n                  <p><i>This is intended to help out clippers if they want to embed credit easily.</i></p>"}},{name:"hideScanLines",label:"Hide Scan Lines Effect",type:"toggle",value:e.hideScanLines,group:"video-player-options",help:{label:"?",text:"<p>Enabling this option hide the <strong>Scan Line Effect</strong> seen across the site.</p>"}},{name:"hideNavigationOverlay",label:"Hide Stream Navigation Overlay",type:"toggle",value:e.hideNavigationOverlay,group:"video-player-options",help:{label:"?",text:"<p>Enabling this option will hide the <strong>Stream Navigation Overlay</strong> that displays semi-transparent polygons over the livestream on hover.</p>"}},{name:"showHiddenItems",label:"Show hidden items",type:"toggle",value:e.showHiddenItems,group:"video-player-options",help:{label:"?",text:"<p>Enabling this option will show all hidden items with a green highlight you spoil sport</p>"}}]}},{name:"chat",label:"Chat",content:{groups:[{name:"hiders",label:"Hiders"},{name:"chat-misc",label:"Miscellaneous"}],inputs:[{name:"hideTimestamps",label:"Hide Timestamps",type:"toggle",value:e.hideTimestamps,group:"hiders"},{name:"hideAvatars",label:"Hide Avatars",type:"toggle",value:e.hideAvatars,group:"hiders"},{name:"hideClans",label:"Hide Clans",type:"toggle",value:e.hideClans,group:"hiders"},{name:"hideLevels",label:"Hide Levels",type:"toggle",value:e.hideLevels,group:"hiders"},{name:"hideEndorsements",label:"Hide Endorsements",type:"toggle",value:e.hideEndorsements,group:"hiders"},{name:"hideEmotes",label:"Hide Emotes",type:"toggle",value:e.hideEmotes,group:"hiders",help:{label:"?",text:"<p>Enabling this option hides <strong>Emotes</strong> in chat.</p>"}},{name:"hideDiceRolling",label:"Hide Dice Rolling",type:"toggle",value:e.hideDiceRolling,group:"hiders",help:{label:"?",text:"<p>Enabling this option will hide <strong>Dice Rolling</strong> in chat.</p>"}},{name:"hideConsumables",label:"Hide Consumable Messages",type:"toggle",value:e.hideConsumables,group:"hiders",help:{label:"?",text:"<p>Enabling this option will hide the <strong>Consume Messages</strong> created by users using inventory items.</p>"}},{name:"hideClanMessages",label:"Hide Clan Messages",type:"toggle",value:e.hideClanMessages,group:"hiders",help:{label:"?",text:"<p>Enabling this option hides <strong>Clan Messages</strong> created by a clan being created or clan alliances being proposed/formed, etc.</p>"}},{name:"hideTTSMessages",label:"Hide TTS Messages",type:"toggle",value:e.hideTTSMessages,group:"hiders",help:{label:"?",text:"<p>Enabling this option hides <strong>TTS Messages</strong> from chat.</p>"}},{name:"hideSFXMessages",label:"Hide SFX Messages",type:"toggle",value:e.hideSFXMessages,group:"hiders",help:{label:"?",text:"<p>Enabling this option hides <strong>SFX Messages</strong> from chat.</p>"}},{name:"hideSystem",label:"Hide System Messages",type:"toggle",value:e.hideSystem,group:"hiders",help:{label:"?",text:'<p>Enabling this option hides <strong>System Messages</strong>.</p>\n                <p>These are the green messages.  eg: "Joined Global".</p>'}},{name:"hideFonts",label:"Hide Chat Fonts",type:"toggle",value:e.hideFonts,group:"hiders",help:{label:"?",text:"<p>Enabling this option hides <strong>Special Chat Fonts</strong>.</p>\n                <p>These are the messages in non-standard font.</p>"}},{name:"hideGrayNames",label:"Hide Gray Names",type:"toggle",value:e.hideGrayNames,group:"hiders",help:{label:"?",text:"<p>Enabling this option hides chat messages from <strong>Gray Names (free users)</strong>.</p>"}},{name:"enableDenseChat",label:"Enable Dense Chat",type:"toggle",value:e.enableDenseChat,group:"chat-misc",help:{label:"?",text:"<p>Enabling this option makes the gap between chat messages smaller.</p>"}},{name:"enableRecentChatters",label:"Enable Recent Chatters Count",type:"toggle",value:e.enableRecentChatters,group:"chat-misc",help:{label:"?",title:"Recent Chatters",text:"<p>Enabling this option creates an <strong>Active User Counter</strong> and <strong>List</strong>.</p>\n                <p>Click the <strong>Chatter</strong> count to view users sorted by most recently seen.</p>\n                <p><i>Note: Fish and Staff are always listed first.</i></p>"},config:{title:"Recent Chatters Options",options:[{type:"number",valid:"number",label:"Threshold",name:"recentChattersThreshold",help:{label:"?",title:"Recent Chatters Threshold",text:"How long since a user's last message before considering them no longer active and removing them from the chatters list.<br>Note: Setting this to 0 will store ALL users until you refresh."}}]}},{name:"recentChattersThreshold",type:"hidden",value:e.recentChattersThreshold,group:"chat-misc"},{name:"autoClanChat",label:"Enter Clan Chat Automatically",type:"toggle",value:e.autoClanChat,group:"chat-misc",help:{label:"?",text:"<p>Enabling this option will put you into your clan chat immediately upon loading the site.</p>"}},{name:"enableImprovedTagging",label:"Improve mention functionality",type:"toggle",value:e.enableImprovedTagging,group:"chat-misc",help:{label:"?",text:"<p>Enabling this option will add <strong>Avatar-click Tagging</strong>, as well as improve the way mentions are added to the input box by adding spaces before and after the mention where needed.</p>"}},{name:"normalizeEpicText",label:"Normalize Epic Text",type:"toggle",value:e.normalizeEpicText,group:"chat-misc",help:{label:"?",text:'<p>Enabling this option makes <strong>Gold "Epic" Messages</strong> look like all the other messages in chat.<p>'}},{name:"normalizeGrandText",label:"Normalize Grand Text",type:"toggle",value:e.normalizeGrandText,group:"chat-misc",help:{label:"?",text:'<p>Enabling this option makes <strong>Red "Grand" Messages</strong> look like all the other messages in chat.<p>'}},{name:"fixDarkDisplayNames",label:"Fix Dark Display Names",type:"toggle",value:e.fixDarkDisplayNames,group:"chat-misc",help:{label:"?",text:"<p>Enabling this option makes Dark Display Names a little brighter and easier to read.<p>"}},{name:"enablePopoutChatButton",label:"Enable Popout Chat button",type:"toggle",value:e.enablePopoutChatButton,group:"chat-misc",help:{label:"?",text:"<p>Enabling this option will add a button to open chat in a new window</p>"}}]}},{name:"highlighting",label:"Highlighting",content:{groups:[{name:"friends",label:"Friends"},{name:"watching",label:"Watched Users"}],inputs:[{name:"friendsColor",label:"Friends Color",type:"color-picker",value:e.friendsColor,group:"friends",help:{label:"?",text:"timestamp help text"}},{name:"watchingColor",label:"Watching Color",type:"color-picker",value:e.watchingColor,group:"watching",help:{label:"?",text:"timestamp help text"}}]}},{name:"logging",label:"Logging",content:{groups:[{name:"mentions",label:"Mentions Log"},{name:"events",label:"Events Log"},{name:"tts",label:"TTS Log"}],inputs:[{name:"enableMentionLog",label:"Enable Mention Logging",type:"toggle",value:e.enableMentionLog,group:"mentions",help:{label:"?",text:"<p>Enabling this option will temporarily store all messages you were mentioned in.</p>\n                <p>This log WILL clear every time you refresh or close the page.</p>"}},{name:"reverseMentionLog",label:"Show Newest First",type:"toggle",value:e.reverseMentionLog,group:"mentions",help:{label:"?",text:"<p>Enabling this option will set the mentions log to list in order of newest to oldest.</p><p>After toggling this option, you must close and reopen the settings window to see the changes.</p>"}},{name:"mentionsLog",label:"Mentions Log",type:"mentions-log",value:a.get("mentions"),group:"mentions"},{name:"enableEventsLog",label:"Enable Events Logging",type:"toggle",value:e.enableEventsLog,group:"events",help:{label:"?",text:"<p>Enabling this option will temporarily store <strong>System Event Messages</strong> (admin toast message notifications).</p>\n                       <p>This log WILL clear every time you refresh or close the page.</p>"}},{name:"reverseEventsLog",label:"Show Newest First",type:"toggle",value:e.reverseEventsLog,group:"events",help:{label:"?",text:"<p>Enabling this option will set the events log to list in order of newest to oldest.</p><p>After toggling this option, you must close and reopen the settings window to see the changes.</p>"}},{name:"eventsLog",label:"Events Log",type:"events-log",value:a.get("events"),group:"events"},{name:"enableTtsLog",label:"Enable TTS Logging",type:"toggle",value:e.enableTtsLog,group:"tts",help:{label:"?",text:"<p>Enabling this option will temporarily store <strong>TTS Messages</strong>.</p>\n                       <p>This log WILL clear every time you refresh or close the page.</p>"}},{name:"reverseTtsLog",label:"Show Newest First",type:"toggle",value:e.reverseTtsLog,group:"tts",help:{label:"?",text:"<p>Enabling this option will set the tts log to list in order of newest to oldest.</p><p>After toggling this option, you must close and reopen the settings window to see the changes.</p>"}},{name:"ttsLog",label:"TTS Log",type:"tts-log",value:a.get("tts").map((e=>{const t=e.ttsContent,s=d.chat.tts;return{html:`<div class="${s.class}">\n      <div class="${s.icon.class}">\n        <svg\n          stroke="currentColor"\n          fill="currentColor"\n          stroke-width="0"\n          viewBox="0 0 512 512"\n          height="40"\n          width="40"\n          xmlns="http://www.w3.org/2000/svg"\n        >\n          <path d="M18.62 18.707l2.302 456.713c20.172 6.097 50.346 5.194 68.094-5.3 9.74-5.762 15.83-13.314 17.318-24.757 1.49-11.442-2.114-27.866-15.775-49.85-65.15-104.838-43.09-217.272 24.12-283.156 67.208-65.883 179.805-84.665 289.812-7.214 18.312 12.892 28.41 13.426 35.156 10.308 6.748-3.117 13.086-12.55 18.036-26.186 4.95-13.637 8.515-30.532 12.306-45.967 2.094-8.527 4.108-16.49 6.856-23.647L18.62 18.707zm239.07 54.02c-8.728-.036-17.285.53-25.64 1.652l156.454 92.8 21.037-37.436c-5.072-2.376-10.346-5.476-15.806-9.32-47.14-33.19-93.62-47.523-136.043-47.697zM127.913 125.56l-.15.143c-26.928 26.397-46.107 60.924-53.93 99.686 75.5-10.072 121.71 72.345 177.38 61.495 6.68-57.468-59.496-126.038-123.3-161.326zm227.297 47.21c-6.87 36.037-29.7 77.615-66.003 113.92-36.093 36.095-77.76 59.255-113.646 66.27 40.94 8.506 92.248-8.67 131.747-48.17 39.643-39.646 56.63-91 47.902-132.02zm66.103 4.302v.004-.004zm0 .004c-9.198 48.248-39.766 103.918-88.374 152.528-48.327 48.328-104.113 79.337-152.167 88.732 54.816 11.39 123.514-11.608 176.4-64.498 53.08-53.082 75.822-121.842 64.14-176.762zm67.328 10.985c-11.378 59.698-49.203 128.58-109.345 188.725-59.794 59.798-128.82 98.17-188.28 109.79 67.825 14.094 152.828-14.364 218.264-79.804 65.677-65.678 93.815-150.757 79.36-218.71zM71.07 243.337c-4.794 44.69 5.3 93.938 35.362 142.314 7.806 12.562 13.057 24.113 16.01 34.75l36.103-21.412L71.07 243.336z"></path>\n        </svg>\n      </div>\n      <div class="${s.title.class}">TTS</div>\n      <div class="${s.info.class}">\n        <span class="${s.info.from.class}">${t.from}</span>\n        <span class="${s.info.to.class}">-&gt;</span>\n        <span class="${s.info.room.class}">${t.room}</span>\n      </div>\n      <div class="${s.message.class}">\n        ${t.message}\n      </div>\n      <div class="${s.footer.class}">\n        <div class="${s.footer.voice.class}">${t.voice}</div>\n        <div class="${s.footer.timestamp.class}">${t.timestamp}</div>\n      </div>\n    </div>`,added:e.added}})),group:"tts"}]}},{name:"keyBinds",label:"Keybinds",content:{groups:[{name:"bindoptions",label:"Bind Options"},{name:"roombinds",label:"Key Binds"}],inputs:[{name:"bindsEnable",label:"Enable Key Binds",type:"toggle",value:e.bindsEnable,group:"bindoptions",help:{label:"?",text:"<p>Enabling this option will allow binds to be used.</p>"}},{name:"bindsForceCtrl",label:"Force Ctrl Requirement",type:"toggle",value:e.bindsForceCtrl,group:"bindoptions",help:{label:"?",text:"<p>If enabled, all keybinds will require the CTRL key to be held.</p>"}},{name:"bindsReset",label:"Restore Default Binds",type:"button",group:"bindoptions",onclick:Z,color:"red",help:{label:"?",text:"<p>Resets all keybinds to their default values.</p>"}},{name:"toggleAuto",label:"Toggle Auto Mode",type:"keybind",value:"toggle-auto",group:"roombinds"},{name:"toggleHQ",label:"Toggle HQ Mode",type:"keybind",value:"toggle-hq",group:"roombinds"},{name:"enterFullscreen",label:"Enter Native Fullscreen",type:"keybind",value:"enter-native-fs",group:"roombinds"},{name:"closeStream",label:"Return to Room Grid",type:"keybind",value:"close-stream",group:"roombinds"},{name:"switchBedroom1",label:"Bedroom 1",type:"keybind",value:"bedroom-1",group:"roombinds"},{name:"switchBedroom2",label:"Bedroom 2",type:"keybind",value:"bedroom-2",group:"roombinds"},{name:"switchBedroom3",label:"Bedroom 3",type:"keybind",value:"bedroom-3",group:"roombinds"},{name:"switchBunk",label:"The Bunk",type:"keybind",value:"the-bunk",group:"roombinds"},{name:"switchHallwayUpstairs",label:"Hallway - Upstairs",type:"keybind",value:"hallway-upstairs",group:"roombinds"},{name:"switchHallwayDownstairs",label:"Hallway - Downstairs",type:"keybind",value:"hallway-downstairs",group:"roombinds"},{name:"switchLivingRoom",label:"Living Room",type:"keybind",value:"living-room",group:"roombinds"},{name:"switchLounge",label:"Lounge",type:"keybind",value:"lounge",group:"roombinds"},{name:"switchBar",label:"Bar",type:"keybind",value:"bar",group:"roombinds"},{name:"switchKitchen",label:"Kitchen",type:"keybind",value:"kitchen",group:"roombinds"},{name:"switchDogHouse",label:"Dog House",type:"keybind",value:"dog-house",group:"roombinds"},{name:"switchAttic",label:"Attic",type:"keybind",value:"attic",group:"roombinds"},{name:"switchBathroomUpstairs",label:"Bathroom - Upstairs",type:"keybind",value:"upstairs-bathroom",group:"roombinds"},{name:"switchBathroomDownstairs",label:"Bathroom - Downstairs",type:"keybind",value:"downstairs-bathroom",group:"roombinds"},{name:"switchBathroomMaster",label:"Bathroom - Master",type:"keybind",value:"master-bathroom",group:"roombinds"},{name:"switchConfessional",label:"Confessional",type:"keybind",value:"confessional",group:"roombinds"}]}},{name:"about",label:"About",content:{groups:[{name:"about",label:"About This Plugin"}]}}]}}})();var ot=s(72),nt=s.n(ot),lt=s(825),it=s.n(lt),rt=s(659),ct=s.n(rt),dt=s(56),mt=s.n(dt),pt=s(540),ht=s.n(pt),ut=s(113),gt=s.n(ut),bt=s(911),yt={};yt.styleTagTransform=gt(),yt.setAttributes=mt(),yt.insert=ct().bind(null,"head"),yt.domAPI=it(),yt.insertStyleElement=ht();nt()(bt.A,yt);bt.A&&bt.A.locals&&bt.A.locals;!async function(){at.load();if(!(()=>{const e=at.get("agreementVersion");return!(!e||Array.from(e)[0]!=Array.from(o)[0])||("i agree"===prompt('\nMAEJ3RKED-TOOLS AGREEMENT:\n\nBy using MAEJ3RKED-TOOLS you understand that this plugin is NOT endorsed nor promoted by Fishtank.live or its creators, may cause issues with the Fishtank.live webiste and alters the intended user experience for Fishtank.live; therefore, any bugs or issues created by use of this plugin is not the concern of Fishtank.live or its creators.\n\nIf you have any issues with the Fishtank.live website while using this plugin, you agree to FULLY disable this plugin from within your userscript plugin manager before making any bug reports to Fishtank.live staff.\n\nAny questions or bug reports in regards to MAEJ3RKED-TOOLS are to be directed at @f3rk only.\n\nIf you understand and agree, type "I agree" below to continue.').toLowerCase()?(Ve(),at.set("showUpdateNotice",!0),at.set("agreementVersion",o),at.save(),setTimeout((()=>{window.location.reload()}),500),!1):(alert("You did not accept the MAEJ3RKED-TOOLS usage agreement\nMAEJ3RKED-TOOLS will not be started.\nDisable or remove MAEJ3RKED-TOOLS from your userscript plugin (GreaseMonkey, Tampermonkey, etc) to disable this alert."),!1))})())return;const e=at.get("enableDimMode")&&at.get("enablePlugin");ve(e),ie(at.get("hideScanLines")&&at.get("enablePlugin"));const t=window.location.href;let s,n,l,i,c,m=!1,p=null,h=!1;at.get("hideGlobalMissions")&&k.body.start(),(at.get("hideGlobalMissions")||at.get("enableDragModal")||at.get("enableTTSFilterWarning")||at.get("enableEventsLog")||at.get("hideGiftedPassMessage"))&&k.modal.start();const u=setInterval((async()=>{if(t.includes("/chat"))s=document.querySelector(d.chat.list.selector),m=null!==s,h=!0,a.set("isPopoutChat",!0);else{s=document.querySelector(d.chat.list.selector),l=document.querySelector(d.livestreams.grid.selector),i=document.querySelector(d.header.director.selector),m=null!==i&&null!==s&&null!==l||null===i&&null!==s;a.get("isShowLive")||c||(c=!0,p=await(async()=>{const e=await re();let t=!1;return e&&(t=Object.values(e.status).some((function(e){return"online"===e}))),t})(),a.set("isShowLive",p))}if(s&&!n&&(n=!0,g()),!m)return;const e=document.querySelector(d.header.user.name.selector);if(!e&&!h)return;if(!(e?.getAttribute("data-user-id")||!1)&&!h)return;const o=a.get("user")?.displayName;if(o||h){if(clearInterval(u),l&&l.querySelectorAll("button").forEach((e=>{var t;e.id&&r.hasOwnProperty(e.id)&&(r[e.id].switchTo=(t=e,t?t[Object.getOwnPropertyNames(t).filter((e=>e.startsWith("__reactProps")))]:null).onClick)})),a.set("loaded",!0),(()=>{const e=document.querySelector(d.chat.input.actions.selector),t=document.querySelector(d.chat.input.actions.inputLength.selector),s=d.settings,a=document.createElement("button");a.type="button",a.classList.add(s.opener.button.class),e.insertBefore(a,t);const o=document.createElement("div");o.classList.add(...s.opener.button.icon.class),o.innerHTML='<svg version="1.0" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 512.000000 512.000000" preserveAspectRatio="xMidYMid meet"><g transform="translate(0.000000,512.000000) scale(0.100000,-0.100000)" fill="#000000" stroke="none"><path d="M2257 5065 c-568 -69 -1104 -335 -1502 -747 -183 -189 -314 -369 -429 -589 -194 -371 -286 -748 -286 -1169 0 -411 85 -770 270 -1135 129 -256 261 -437 469 -646 209 -208 390 -340 646 -469 363 -184 725 -270 1135 -270 875 0 1666 439 2144 1190 179 282 320 685 361 1036 57 491 -31 987 -255 1429 -121 240 -253 426 -445 624 -402 416 -935 679 -1513 746 -153 18 -445 18 -595 0z m623 -400 c433 -67 831 -264 1144 -565 352 -339 571 -758 641 -1225 83 -563 -60 -1130 -404 -1593 -83 -112 -311 -340 -423 -423 -520 -387 -1171 -519 -1792 -364 -583 145 -1091 545 -1370 1077 -110 210 -185 439 -223 679 -24 157 -24 461 0 618 82 527 340 984 750 1327 319 268 722 438 1147 484 117 12 403 4 530 -15z"></path><path d="M1655 3526 c-86 -27 -160 -84 -210 -160 -131 -200 -55 -466 164 -573 50 -25 67 -28 161 -28 93 0 112 3 162 27 324 151 300 618  -36 731 -59 20 -183 21 -241 3z"></path><path d="M3240 3531 c-100 -33 -199 -117 -243 -206 -98 -197 -11 -438 191 -533 50 -24 69 -27 162 -27 94 0 111 3 161 28 87 42 143 98 185 183 100 202 18 439 -185 532 -46 21 -73 27 -151 29 -52 1 -106 -1 -120 -6z"></path><path d="M1455 2220 c-54 -109 -97 -201 -95 -203 3 -3 140 -70 304 -151 165 -80 297 -148 295 -150 -2 -3 -146 -52 -319 -111 -173 -58 -316 -108 -318 -110 -7 -7 133 -417 143 -421 6 -3 250 76 544 174 l534 179 504 -249 c277 -136 507 -248 511 -248 9 0 208 398 202 403 -3 2 -138 70 -300 151 -162 81 -296 149 -298 151 -2 2 141 51 316 109 l320 107 -70 212 c-39 117 -72 214 -74 215 -1 2 -244 -77 -538 -177 l-536 -181 -507 250 c-278 138 -509 250 -512 250 -4 0 -51 -90 -106 -200z"></path></g></svg>',a.appendChild(o),a.addEventListener("click",B),at.get("autoOpenSettings")})(),!at.get("enablePlugin"))return void console.warn(`${at.plugin("name")} disabled in settings panel`);We()}else{let t;try{t=Ce(e)}catch(e){return void clearInterval(u)}const s=t?.profile||!1;s&&(a.set("user",s),at.set("userData",s),at.save())}}),250)}()})();