((environment, ...filters) => { const e=Proxy,{apply:t,bind:n,call:r}=Function,o=r.bind(t),i=r.bind(n),s=r.bind(r),a={get:(e,t)=>i(r,e[t])},c=t=>new e(t,a),l=(t,n)=>new e(t,{apply:(e,t,r)=>o(n,t,r)}),u={get:(e,t)=>i(e[t],e)},f=t=>new e(t,u),{assign:p,defineProperties:d,freeze:h,getOwnPropertyDescriptor:w,getOwnPropertyDescriptors:g,getPrototypeOf:y}=f(Object),{hasOwnProperty:m}=c({}),{species:b}=Symbol,v={get(e,t){const n=e[t];class r extends n{}const o=g(n.prototype);delete o.constructor,h(d(r.prototype,o));const i=g(n);return delete i.length,delete i.prototype,i[b]={value:r},h(d(r,i))}},S=t=>new e(t,v),E="undefined"!=typeof environment?environment:{};"undefined"==typeof globalThis&&(window.globalThis=window);const{apply:x,ownKeys:M}=f(Reflect),T="world"in E,O=T&&"ISOLATED"===E.world,j=T&&"MAIN"===E.world,P="object"==typeof chrome&&!!chrome.runtime,N="object"==typeof browser&&!!browser.runtime,k=!j&&(O||P||N),C=e=>k?e:$(e,D(e)),{create:$,defineProperties:L,defineProperty:A,freeze:W,getOwnPropertyDescriptor:R,getOwnPropertyDescriptors:D}=f(Object),H=f(globalThis),z=k?globalThis:S(globalThis),{Map:I,RegExp:F,Set:B,WeakMap:J,WeakSet:V}=z,U=(e,t,n=null)=>{const r=M(t);for(const o of M(e)){if(r.includes(o))continue;const i=R(e,o);if(n&&"value"in i){const{value:e}=i;"function"==typeof e&&(i.value=n(e))}A(t,o,i)}},q=e=>{const t=z[e];class n extends t{}const{toString:r,valueOf:o}=t.prototype;L(n.prototype,{toString:{value:r},valueOf:{value:o}});const i=e.toLowerCase(),s=e=>function(){const t=x(e,this,arguments);return typeof t===i?new n(t):t};return U(t,n,s),U(t.prototype,n.prototype,s),n},_=W({frozen:new J,hidden:new V,iframePropertiesToAbort:{read:new B,write:new B},abortedIframes:new J}),G=new F("^[A-Z]");var X=new Proxy(new I([["chrome",k&&(P&&chrome||N&&browser)||void 0],["isExtensionContext",k],["variables",_],["console",C(console)],["document",globalThis.document],["performance",C(performance)],["JSON",C(JSON)],["Map",I],["Math",C(Math)],["Number",k?Number:q("Number")],["RegExp",F],["Set",B],["String",k?String:q("String")],["WeakMap",J],["WeakSet",V],["MouseEvent",MouseEvent]]),{get(e,t){if(e.has(t))return e.get(t);let n=globalThis[t];return"function"==typeof n&&(n=(G.test(t)?z:H)[t]),e.set(t,n),n},has:(e,t)=>e.has(t)});const K={WeakSet:WeakSet,WeakMap:WeakMap,WeakValue:class{has(){return!1}set(){}}},{apply:Y}=Reflect;const{Map:Z,WeakMap:Q,WeakSet:ee,setTimeout:te}=X;let ne=!0,re=e=>{e.clear(),ne=!ne};var oe=function(e){const{WeakSet:t,WeakMap:n,WeakValue:r}=this||K,o=new t,i=new n,s=new r;return function(t){if(o.has(t))return t;if(i.has(t))return i.get(t);if(s.has(t))return s.get(t);const n=Y(e,this,arguments);return o.add(n),n!==t&&("object"==typeof t&&t?i:s).set(t,n),n}}.bind({WeakMap:Q,WeakSet:ee,WeakValue:class extends Z{set(e,t){return ne&&(ne=!ne,te(re,0,this)),super.set(e,t)}}});const{concat:ie,includes:se,join:ae,reduce:ce,unshift:le}=c([]),ue=S(globalThis),{Map:fe,WeakMap:pe}=ue,de=new fe,he=t=>{const n=(e=>{const t=[];let n=e;for(;n;){if(de.has(n))le(t,de.get(n));else{const e=g(n);de.set(n,e),le(t,e)}n=y(n)}return le(t,{}),o(p,null,t)})("function"==typeof t?t.prototype:t),r={get(e,t){if(t in n){const{value:r,get:o}=n[t];if(o)return s(o,e);if("function"==typeof r)return i(r,e)}return e[t]},set(e,t,r){if(t in n){const{set:o}=n[t];if(o)return s(o,e,r),!0}return e[t]=r,!0}};return t=>new e(t,r)},{isExtensionContext:we,Array:ge,Number:ye,String:me,Object:be}=X,{isArray:ve}=ge,{getOwnPropertyDescriptor:Se,setPrototypeOf:Ee}=be,{toString:xe}=be.prototype,{slice:Me}=me.prototype,{get:Te}=Se(Node.prototype,"nodeType"),Oe=we?{}:{Attr:he(Attr),CanvasRenderingContext2D:he(CanvasRenderingContext2D),CSSStyleDeclaration:he(CSSStyleDeclaration),Document:he(Document),Element:he(Element),HTMLCanvasElement:he(HTMLCanvasElement),HTMLElement:he(HTMLElement),HTMLImageElement:he(HTMLImageElement),HTMLScriptElement:he(HTMLScriptElement),MutationRecord:he(MutationRecord),Node:he(Node),ShadowRoot:he(ShadowRoot),get CSS2Properties(){return Oe.CSSStyleDeclaration}},je=(e,t)=>{if("Element"!==t&&t in Oe)return Oe[t](e);if(ve(e))return Ee(e,ge.prototype);const n=(e=>s(Me,s(xe,e),8,-1))(e);if(n in Oe)return Oe[n](e);if(n in X)return Ee(e,X[n].prototype);if("nodeType"in e)switch(s(Te,e)){case 1:if(!(t in Oe))throw new Error("unknown hint "+t);return Oe[t](e);case 2:return Oe.Attr(e);case 3:return Oe.Node(e);case 9:return Oe.Document(e)}throw new Error("unknown brand "+n)};var Pe=we?e=>e===window||e===globalThis?X:e:oe(((e,t="Element")=>{if(e===window||e===globalThis)return X;switch(typeof e){case"object":return e&&je(e,t);case"string":return new me(e);case"number":return new ye(e);default:throw new Error("unsupported value")}}));const Ne={get(e,t){const n=e;for(;!m(e,t);)e=y(e);const{get:r,set:i}=w(e,t);return function(){return arguments.length?o(i,n,arguments):s(r,n)}}},ke=t=>new e(t,Ne);let Ce=!1;function $e(){return Ce}const{console:Le}=Pe(window),Ae=()=>{};function We(...e){if($e()){const t=["%c DEBUG","font-weight: bold;"],n=e.indexOf("error"),r=e.indexOf("warn"),o=e.indexOf("success"),i=e.indexOf("info");-1!==n?(t[0]+=" - ERROR",t[1]+="color: red; border:2px solid red",Pe(e).splice(n,1)):-1!==r?(t[0]+=" - WARNING",t[1]+="color: orange; border:2px solid orange ",Pe(e).splice(r,1)):-1!==o?(t[0]+=" - SUCCESS",t[1]+="color: green; border:2px solid green",Pe(e).splice(o,1)):-1!==i&&(t[1]+="color: black;",Pe(e).splice(i,1)),Pe(e).unshift(...t)}Le.log(...e)}function Re(e){return i($e()?We:Ae,null,e)}let{Math:De,RegExp:He}=Pe(window);function ze(e){let{length:t}=e;if(t>1&&"/"===e[0]){let n="/"===e[t-1];if(n||t>2&&Pe(e).endsWith("/i")){let t=[Pe(e).slice(1,n?-1:-2)];return n||t.push("i"),new He(...t)}}return new He(Pe(e).replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"))}function Ie(){return Pe(De.floor(2116316160*De.random()+60466176)).toString(36)}let{parseFloat:Fe,variables:Be,Array:Je,Error:Ve,Map:Ue,Object:qe,ReferenceError:_e,Set:Ge,WeakMap:Xe}=Pe(window),{onerror:Ke}=ke(window),Ye=Node.prototype,Ze=Element.prototype,Qe=null;function et(e,t,n,r=!0){let o=Pe(t),i=o.indexOf(".");if(-1==i){let o=qe.getOwnPropertyDescriptor(e,t);if(o&&!o.configurable)return;let i=qe.assign({},n,{configurable:r});if(!o&&!i.get&&i.set){let n=e[t];i.get=()=>n}return void qe.defineProperty(e,t,i)}let s=o.slice(0,i).toString();t=o.slice(i+1).toString();let a=e[s];!a||"object"!=typeof a&&"function"!=typeof a||et(a,t,n);let c=qe.getOwnPropertyDescriptor(e,s);if(c&&!c.configurable)return;Qe||(Qe=new Xe),Qe.has(e)||Qe.set(e,new Ue);let l=Qe.get(e);if(l.has(s))return void l.get(s).set(t,n);let u=new Ue([[t,n]]);l.set(s,u),qe.defineProperty(e,s,{get:()=>a,set(e){if(a=e,a&&("object"==typeof a||"function"==typeof a))for(let[e,t]of u)et(a,e,t)},configurable:r})}function tt(e){let t=Ke();Ke(((...n)=>{let r=n.length&&n[0];return!("string"!=typeof r||!Pe(r).includes(e))||("function"==typeof t?o(t,this,n):void 0)}))}function nt(e,t,n,r=!0){let o=Re(e);if(!n)return void o("error","no property to abort on read");let i=Ie();o("info",`aborting on ${n} access`),et(t,n,{get:function(){throw o("success",`${n} access aborted`),new _e(i)},set(){}},r),tt(i)}function rt(e,t,n,r=!0){let o=Re(e);if(!n)return void o("error","no property to abort on write");let i=Ie();o("info",`aborting when setting ${n}`),et(t,n,{set:function(){throw o("success",`setting ${n} aborted`),new _e(i)}},r),tt(i)}function ot(e,t=!1,n=!1){let r=Be.abortedIframes,i=Be.iframePropertiesToAbort;for(let o of Je.from(window.frames))if(r.has(o))for(let i of e)t&&r.get(o).read.add(i),n&&r.get(o).write.add(i);for(let r of e)t&&i.read.add(r),n&&i.write.add(r);function a(){for(let e of Je.from(window.frames)){r.has(e)||r.set(e,{read:new Ge(i.read),write:new Ge(i.write)});let t=r.get(e).read;if(t.size>0){let n=Je.from(t);t.clear();for(let t of n)nt("abort-on-iframe-property-read",e,t)}let n=r.get(e).write;if(n.size>0){let t=Je.from(n);n.clear();for(let n of t)rt("abort-on-iframe-property-write",e,n)}}}a(),r.has(document)||(r.set(document,!0),function(e){let t;function n(e,t){for(let n of t){et(e,n,r(e,n))}}function r(t,n){let r=t[n];return{get:()=>function(...t){let n;return n=o(r,this,t),e&&e(),n}}}function i(t,n){let r=qe.getOwnPropertyDescriptor(t,n),{set:o}=r||{};return{set(t){let n;return n=s(o,this,t),e&&e(),n}}}n(Ye,["appendChild","insertBefore","replaceChild"]),n(Ze,["append","prepend","replaceWith","after","before","insertAdjacentElement","insertAdjacentHTML"]),t=i(Ze,"innerHTML"),et(Ze,"innerHTML",t),t=i(Ze,"outerHTML"),et(Ze,"outerHTML",t)}(a))}let{Object:it}=window;function st(e,t){if(!(e instanceof it))return;let n=e,r=Pe(t).split(".");if(0===r.length)return;for(let e=0;e{};case"trueFunc":return()=>!0;case"falseFunc":return()=>!1;case"emptyArray":return[];case"emptyObj":return{};case"undefined":return;case"":return e;default:if(at.test(e))return Fe(e);throw new Ve(`[override-property-read snippet]: Value "${e}" is not valid.`)}}let{HTMLScriptElement:lt,Object:ut,ReferenceError:ft}=Pe(window),pt=ut.getPrototypeOf(lt);let{Error:dt,URL:ht}=Pe(window),{cookie:wt}=ke(document);let{console:gt,document:yt,getComputedStyle:mt,isExtensionContext:bt,variables:vt,Array:St,MutationObserver:Et,Object:xt,XPathEvaluator:Mt,XPathExpression:Tt,XPathResult:Ot}=Pe(window);const{querySelectorAll:jt}=yt,Pt=jt&&i(jt,yt);function Nt(e,t=!1){return $t(e,Pt.bind(yt),yt,t)}function kt(e,t,n,r){const o=t.getAttribute("xlink:href")||t.getAttribute("href");if(o){const s=Pt(o)[0];if(!s&&$e())return gt.log("No elements found matching",o),!1;if(!(i=e)||0===i.length||i.every((e=>""===e.trim()))){const e=r.length>0?r:[];return n.push({element:s,rootParents:[...e,t]}),!1}const a=s.querySelectorAll.bind(s);return{nextBoundElement:s,nestedSelectorsString:e.join("^^"),next$$:a}}var i}function Ct(e,t){const n=function(e,t=!1){try{const n=navigator.userAgent.includes("Firefox")?e.openOrClosedShadowRoot:browser.dom.openOrClosedShadowRoot(e);return null===n&&$e()&&!t&>.log("Shadow root not found or not added in element yet",e),n}catch(n){return $e()&&!t&>.log("Error while accessing shadow root",e,n),null}}(t);if(n){const{querySelectorAll:r}=n,o=r&&i(r,n).bind(n);return{nextBoundElement:t,nestedSelectorsString:":host "+e.join("^^"),next$$:o}}return!1}function $t(e,t,n,r,o=[]){if(e.includes("^^")){const[i,s,...a]=e.split("^^");let c,l;switch(s){case"svg":l=kt;break;case"sh":l=Ct;break;default:return $e()&>.log(s," is not supported. Supported commands are: \n^^sh^^\n^^svg^^"),[]}c=""===i.trim()?[n]:t(i);const u=[];for(const e of c){const t=l(a,e,u,o);if(!t)continue;const{next$$:n,nestedSelectorsString:i,nextBoundElement:s}=t,c=$t(i,n,s,r,[...o,e]);c&&u.push(...c)}return u}const i=t(e);return r?[...i].map((e=>({element:e,rootParents:o.length>0?o:[]}))):i}const{assign:Lt,setPrototypeOf:At}=xt;class Wt extends Tt{evaluate(...e){return At(o(super.evaluate,this,e),Ot.prototype)}}class Rt extends Mt{createExpression(...e){return At(o(super.createExpression,this,e),Wt.prototype)}}function Dt(e){if(vt.hidden.has(e))return!1;!function(e){bt&&"function"==typeof checkElement&&checkElement(e)}(e),vt.hidden.add(e);let{style:t}=Pe(e),n=Pe(t,"CSSStyleDeclaration"),r=Pe([]),{debugCSSProperties:o}=E;for(let[e,t]of o||[["display","none"]])n.setProperty(e,t,"important"),r.push([e,n.getPropertyValue(e)]);return new Et((()=>{for(let[e,t]of r){let r=n.getPropertyValue(e),o=n.getPropertyPriority(e);r==t&&"important"==o||n.setProperty(e,t,"important")}})).observe(e,{attributes:!0,attributeFilter:["style"]}),!0}function Ht(e){let t=e;if(t.startsWith("xpath(")&&t.endsWith(")")){let t=function(e){let t=e;if(t.startsWith("xpath(")&&t.endsWith(")")){let e=t.slice(6,-1),n=(new Rt).createExpression(e,null),r=Ot.ORDERED_NODE_SNAPSHOT_TYPE;return e=>{if(!e)return;let t=n.evaluate(yt,r,null),{snapshotLength:o}=t;for(let n=0;nNt(e).forEach(t)}(e);return()=>{let e=Pe([]);return t((t=>e.push(t))),e}}return()=>St.from(Nt(e))}let{ELEMENT_NODE:zt,TEXT_NODE:It,prototype:Ft}=Node,{prototype:Bt}=Element,{prototype:Jt}=HTMLElement,{console:Vt,variables:Ut,DOMParser:qt,Error:_t,MutationObserver:Gt,Object:Xt,ReferenceError:Kt}=Pe(window),{getOwnPropertyDescriptor:Yt}=Xt;Pe(window);const{Map:Zt,MutationObserver:Qt,Object:en,Set:tn,WeakSet:nn}=Pe(window);let rn=Element.prototype,{attachShadow:on}=rn,sn=new nn,an=new Zt,cn=null;const{Error:ln,JSON:un,Map:fn,Response:pn,Object:dn}=Pe(window);let hn=null;let{Error:wn,JSON:gn,Map:yn,Object:mn,Response:bn}=Pe(window),vn=null;let{Error:Sn}=Pe(window);let{Error:En,Map:xn,Object:Mn,console:Tn}=Pe(window),{toString:On}=Function.prototype,jn=EventTarget.prototype,{addEventListener:Pn}=jn,Nn=null;let kn,{URL:Cn,fetch:$n}=Pe(window),{delete:Ln,has:An}=c(URLSearchParams.prototype);const Wn={"abort-current-inline-script":function(e,t=null){const n=Re("abort-current-inline-script"),r=t?ze(t):null,o=Ie(),i=Pe(document).currentScript;let a=window;const c=Pe(e).split("."),l=Pe(c).pop();for(let e of Pe(c))if(a=a[e],!a||"object"!=typeof a&&"function"!=typeof a)return void n("warn",c," is not found");const{get:u,set:f}=ut.getOwnPropertyDescriptor(a,l)||{};let p=a[l];void 0===p&&n("warn","The property",l,"doesn't exist yet. Check typos.");const d=()=>{const e=Pe(document).currentScript;if(e instanceof pt&&""==Pe(e,"HTMLScriptElement").src&&e!=i&&(!r||r.test(Pe(e).textContent)))throw n("success",c," is aborted \n",e),new ft(o)};et(a,l,{get(){return d(),u?s(u,this):p},set(e){d(),f?s(f,this,e):p=e}}),tt(o)},"abort-on-iframe-property-read":function(...e){ot(e,!0,!1)},"abort-on-iframe-property-write":function(...e){ot(e,!1,!0)},"abort-on-property-read":function(e,t){nt("abort-on-property-read",window,e,!("false"===t))},"abort-on-property-write":function(e,t){rt("abort-on-property-write",window,e,!("false"===t))},"cookie-remover":function(e,t=!1){if(!e)throw new dt("[cookie-remover snippet]: No cookie to remove.");let n=Re("cookie-remover"),r=ze(e);if(!Pe(/^http|^about/).test(location.protocol))return void n("warn","Snippet only works for http or https and about.");function o(){return Pe(wt()).split(";").filter((e=>r.test(Pe(e).split("=")[0])))}const i=()=>{n("info","Parsing cookies for matches");for(const e of Pe(o())){let t=Pe(location.hostname);!t&&Pe(location.ancestorOrigins)&&Pe(location.ancestorOrigins[0])&&(t=new ht(Pe(location.ancestorOrigins[0])).hostname);const r=Pe(e).split("=")[0],o="expires=Thu, 01 Jan 1970 00:00:00 GMT",i="path=/",s=t.split(".");for(let e=s.length;e>0;e--){const t=s.slice(s.length-e).join(".");wt(`${Pe(r).trim()}=;${o};${i};domain=${t}`),wt(`${Pe(r).trim()}=;${o};${i};domain=.${t}`),n("success",`Set expiration date on ${r}`)}}};if(i(),t){let e=o();setInterval((()=>{let t=o();if(t!==e)try{i()}finally{e=t}}),1e3)}},debug:function(){Ce=!0},"freeze-element":function(e,t="",...n){let r,i,a=!1,c=!1,l=Pe(n).filter((e=>!h(e))),u=Pe(n).filter((e=>h(e))).map(ze),f=Ie(),p=Ht(e);!function(){let n=Pe(t).split("+");1===n.length&&""===n[0]&&(n=[]);for(let t of n)switch(t){case"subtree":a=!0;break;case"abort":c=!0;break;default:throw new _t("[freeze] Unknown option passed to the snippet. [selector]: "+e+" [option]: "+t)}}();let d={selector:e,shouldAbort:c,rid:f,exceptionSelectors:l,regexExceptions:u,changeId:0};function h(e){return e.length>=2&&"/"==e[0]&&"/"==e[e.length-1]}function w(){i=p(),g(i,!1)}function g(e,t=!0){for(let n of e)Ut.frozen.has(n)||(Ut.frozen.set(n,d),!t&&a&&new Gt((e=>{for(let t of Pe(e))g(Pe(t,"MutationRecord").addedNodes)})).observe(n,{childList:!0,subtree:!0}),a&&Pe(n).nodeType===zt&&g(Pe(n).childNodes))}function y(e,...t){We(`[freeze][${e}] `,...t)}function m(e,t,n,r){let o=r.selector,i=r.changeId,s="string"==typeof e,a=r.shouldAbort?"aborting":"watching";switch(Vt.groupCollapsed(`[freeze][${i}] ${a}: ${o}`),n){case"appendChild":case"append":case"prepend":case"insertBefore":case"replaceChild":case"insertAdjacentElement":case"insertAdjacentHTML":case"insertAdjacentText":case"innerHTML":case"outerHTML":y(i,s?"text: ":"node: ",e),y(i,"added to node: ",t);break;case"replaceWith":case"after":case"before":y(i,s?"text: ":"node: ",e),y(i,"added to node: ",Pe(t).parentNode);break;case"textContent":case"innerText":case"nodeValue":y(i,"content of node: ",t),y(i,"changed to: ",e)}y(i,`using the function "${n}"`),Vt.groupEnd(),r.changeId++}function b(e,t){if(t)for(let n of t)if(n.test(e))return!0;return!1}function v(e){throw new Kt(e)}function S(e,t,n,r){let o=new qt,{body:i}=Pe(o.parseFromString(e,"text/html")),s=E(Pe(i).childNodes,t,n,r);return Pe(s).map((e=>{switch(Pe(e).nodeType){case zt:return Pe(e).outerHTML;case It:return Pe(e).textContent;default:return""}})).join("")}function E(e,t,n,r){let o=Pe([]);for(let i of e)x(i,t,n,r)&&o.push(i);return o}function x(e,t,n,r){let o=r.shouldAbort,i=r.regexExceptions,s=r.exceptionSelectors,a=r.rid;if("string"==typeof e){let s=e;return!!b(s,i)||($e()&&m(s,t,n,r),o&&v(a),$e())}let c=e;switch(Pe(c).nodeType){case zt:return!!function(e,t){if(t){let n=Pe(e);for(let e of t)if(n.matches(e))return!0}return!1}(c,s)||(o&&($e()&&m(c,t,n,r),v(a)),!!$e()&&(Dt(c),m(c,t,n,r),!0));case It:return!!b(Pe(c).textContent,i)||($e()&&m(c,t,n,r),o&&v(a),!1);default:return!0}}function M(e,t,n,r){let i=Yt(e,t)||{},a=i.get&&s(i.get,e)||i.value;if(a)return{get:()=>function(...e){if(n(this)){let n=r(this);if(n){let r=e[0];if(!x(r,this,t,n))return r}}return o(a,this,e)}}}function T(e,t,n,r){let i=Yt(e,t)||{},a=i.get&&s(i.get,e)||i.value;if(a)return{get:()=>function(...e){if(!n(this))return o(a,this,e);let i=r(this);if(!i)return o(a,this,e);let s=E(e,this,t,i);return s.length>0?o(a,this,s):void 0}}}function O(e,t,n,r){let i=Yt(e,t)||{},a=i.get&&s(i.get,e)||i.value;if(a)return{get:()=>function(...e){let[i,c]=e,l="afterbegin"===i||"beforeend"===i;if(n(this,l)){let e=r(this,l);if(e){let n,r=l?this:Pe(this).parentNode;switch(t){case"insertAdjacentElement":if(!x(c,r,t,e))return c;break;case"insertAdjacentHTML":return n=S(c,r,t,e),n?s(a,this,i,n):void 0;case"insertAdjacentText":if(!x(c,r,t,e))return}}}return o(a,this,e)}}}function j(e,t,n,r){let o=Yt(e,t)||{},{set:i}=o;if(i)return{set(e){if(!n(this))return s(i,this,e);let o=r(this);if(!o)return s(i,this,e);let a=S(e,this,t,o);return a?s(i,this,a):void 0}}}function P(e,t,n,r){let o=Yt(e,t)||{},{set:i}=o;if(i)return{set(e){if(!n(this))return s(i,this,e);let o=r(this);return o?x(e,this,t,o)?s(i,this,e):void 0:s(i,this,e)}}}Ut.frozen.has(document)||(Ut.frozen.set(document,!0),function(){let e;function t(e){return e&&Ut.frozen.has(e)}function n(e){try{return e&&(Ut.frozen.has(e)||Ut.frozen.has(Pe(e).parentNode))}catch(e){return!1}}function r(e,t){try{return e&&(Ut.frozen.has(e)&&t||Ut.frozen.has(Pe(e).parentNode)&&!t)}catch(e){return!1}}function o(e){return Ut.frozen.get(e)}function i(e){try{if(Ut.frozen.has(e))return Ut.frozen.get(e);let t=Pe(e).parentNode;return Ut.frozen.get(t)}catch(e){}}function s(e,t){try{if(Ut.frozen.has(e)&&t)return Ut.frozen.get(e);let n=Pe(e).parentNode;return Ut.frozen.get(n)}catch(e){}}e=M(Ft,"appendChild",t,o),et(Ft,"appendChild",e),e=M(Ft,"insertBefore",t,o),et(Ft,"insertBefore",e),e=M(Ft,"replaceChild",t,o),et(Ft,"replaceChild",e),e=T(Bt,"append",t,o),et(Bt,"append",e),e=T(Bt,"prepend",t,o),et(Bt,"prepend",e),e=T(Bt,"replaceWith",n,i),et(Bt,"replaceWith",e),e=T(Bt,"after",n,i),et(Bt,"after",e),e=T(Bt,"before",n,i),et(Bt,"before",e),e=O(Bt,"insertAdjacentElement",r,s),et(Bt,"insertAdjacentElement",e),e=O(Bt,"insertAdjacentHTML",r,s),et(Bt,"insertAdjacentHTML",e),e=O(Bt,"insertAdjacentText",r,s),et(Bt,"insertAdjacentText",e),e=j(Bt,"innerHTML",t,o),et(Bt,"innerHTML",e),e=j(Bt,"outerHTML",n,i),et(Bt,"outerHTML",e),e=P(Ft,"textContent",t,o),et(Ft,"textContent",e),e=P(Jt,"innerText",t,o),et(Jt,"innerText",e),e=P(Ft,"nodeValue",t,o),et(Ft,"nodeValue",e)}()),r=new Gt(w),r.observe(document,{childList:!0,subtree:!0}),w()},"hide-if-shadow-contains":function(e,t="*"){let n=`${e}\\${t}`;an.has(n)||an.set(n,[ze(e),t,Ae]);const r=Re("hide-if-shadow-contain");cn||(cn=new Qt((e=>{let t=new tn;for(let{target:n}of Pe(e)){let e=Pe(n).parentNode;for(;e;)[n,e]=[e,Pe(n).parentNode];if(!sn.has(n)&&!t.has(n)){t.add(n);for(let[e,t,o]of an.values())if(e.test(Pe(n).textContent)){let e=Pe(n.host).closest(t);e&&(o(),Pe(n).appendChild(document.createElement("style")).textContent=":host {display: none !important}",Dt(e),sn.add(n),r("success","Hiding: ",e," for params: ",...arguments))}}}})),en.defineProperty(rn,"attachShadow",{value:l(on,(function(){let e=o(on,this,arguments);return r("info","attachShadow is called for: ",e),cn.observe(e,{childList:!0,characterData:!0,subtree:!0}),e}))}))},"json-override":function(e,t,n="",r=""){if(!e)throw new ln("[json-override snippet]: Missing paths to override.");if(void 0===t)throw new ln("[json-override snippet]: No value to override with.");if(!hn){let i=Re("json-override");function s(e,t){for(let{prune:n,needle:r,filter:o,value:s}of hn.values())if(!o||o.test(t)){if(Pe(r).some((t=>!st(e,t))))return e;for(let t of n){let n=st(e,t);void 0!==n&&(i("success",`Found ${t} replaced it with ${s}`),n[0][n[1]]=ct(s))}}return e}let{parse:a}=un;hn=new fn,dn.defineProperty(window.JSON,"parse",{value:l(a,(function(e){return s(o(a,this,arguments),e)}))}),i("info","Wrapped JSON.parse for override");let{json:c}=pn.prototype;dn.defineProperty(window.Response.prototype,"json",{value:l(c,(function(e){return o(c,this,arguments).then((t=>s(t,e)))}))}),i("info","Wrapped Response.json for override")}hn.set(e,{prune:Pe(e).split(/ +/),needle:n.length?Pe(n).split(/ +/):[],filter:r?ze(r):null,value:t})},"json-prune":function(e,t=""){if(!e)throw new wn("Missing paths to prune");if(!vn){let n=Re("json-prune");function r(e){for(let{prune:t,needle:r}of vn.values()){if(Pe(r).some((t=>!st(e,t))))return e;for(let r of t){let t=st(e,r);void 0!==t&&(n("success",`Found ${r} and deleted`),delete t[0][t[1]])}}return e}let{parse:i}=gn;vn=new yn,mn.defineProperty(window.JSON,"parse",{value:l(i,(function(){return r(o(i,this,arguments))}))}),n("info","Wrapped JSON.parse for prune");let{json:s}=bn.prototype;mn.defineProperty(window.Response.prototype,"json",{value:l(s,(function(){return o(s,this,arguments).then((e=>r(e)))}))}),n("info","Wrapped Response.json for prune")}vn.set(e,{prune:Pe(e).split(/ +/),needle:t.length?Pe(t).split(/ +/):[]})},"override-property-read":function(e,t,n){if(!e)throw new Sn("[override-property-read snippet]: No property to override.");if(void 0===t)throw new Sn("[override-property-read snippet]: No value to override with.");let r=Re("override-property-read"),o=ct(t);r("info",`Overriding ${e}.`),et(window,e,{get:()=>(r("success",`${e} override done.`),o),set(){}},!("false"===n))},"prevent-listener":function(e,t,n){if(!e)throw new En("[prevent-listener snippet]: No event type.");if(!Nn){Nn=new xn;let e=Re("[prevent]");Mn.defineProperty(jn,"addEventListener",{value:l(Pn,(function(t,n){for(let{evt:r,handlers:o,selectors:i}of Nn.values()){if(!r.test(t))continue;let a=this instanceof Element;for(let c=0;c{let[t]=e;if("string"==typeof t){let r=new Cn(t);for(let[o,i]of kn)i&&!i.test(t)||An(r.searchParams,o)&&(n("success",`${o} has been stripped from url ${t}`),Ln(r.searchParams,o),e[0]=r.href)}return o($n,self,e)}))),kn.set(e,t&&ze(t))},trace:function(...e){o(We,null,e)}}; const snippets=Wn; let context; for (const [name, ...args] of filters) { if (snippets.hasOwnProperty(name)) { try { context = snippets[name].apply(context, args); } catch (error) { console.error(error); } } } context = void 0; })(...[{"world":"ISOLATED"},["override-property-read","Object.prototype.globalCallbacks.onAbnormalityDetected","noopFunc"],["override-property-read","Object.prototype.videoSkipJob_","noopFunc"],["override-property-read","Object.prototype.web_playlist_queue_multiple_skips_ks","false"],["override-property-read","Object.prototype.args.raw_player_response.playerAds","undefined"],["override-property-read","Object.prototype.args.raw_player_response.adSlots","undefined"],["override-property-read","playerResponse.adPlacements","undefined"],["override-property-read","ytInitialPlayerResponse.adPlacements","undefined"],["race","start"],["skip-video",".video-stream",".//ytd-player/div[@id]//div[contains(@class,\"ad-interrupting\")]","-start-from:1003","-stop-on-video-end:true"],["skip-video","video.html5-main-video",".//div[@id=\"player\"]/div[@id]//div[contains(@class,\"ad-interrupting\")]","-start-from:1005","-stop-on-video-end:true"],["skip-video","video.html5-main-video",".//div[@id=\"player\"]//div[contains(@class,\"ad-interrupting\")]","-start-from:1010","-stop-on-video-end:true"],["race","stop"],["skip-video","video.html5-main-video",".//div[@id=\"ytlr-player__player-container\"]//div[contains(@class,\"ad-interrupting\") or contains(@class,\"ad-showing\")]"]])