diff --git a/.markdownlint.json b/.markdownlint.json index 7c8933a5..10f1ee09 100644 --- a/.markdownlint.json +++ b/.markdownlint.json @@ -5,8 +5,8 @@ "line_length": 120 }, "no-multiple-blanks": { "maximum": 2 }, - "no-inline-html": { "allowed_elements": ["a"]}, - "no-duplicate-header": { "siblings_only": true }, + "no-inline-html": { "allowed_elements": ["a"] }, + "no-duplicate-heading": { "siblings_only": true }, "no-blanks-blockquote": false, "no-bare-urls": false, "ul-style": { "style": "dash" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 30a4f747..ffbc4ad7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,16 +7,16 @@ The format is based on [Keep a Changelog], and this project adheres to [Semantic -## [Unreleased] +## [v1.11.1] - 2024-06-13 ### Added +- `trusted-dispatch-event` scriptlet [#382] +- `trusted-replace-outbound-text` scriptlet [#410] +- ability to click on the element with specified text in `trusted-click-element` scriptlet [#409] - ability to click element in closed shadow root in `trusted-click-element` scriptlet [#423] - `isRedirectResourceCompatibleWithAdg()` method to check compatibility of redirect resources with AdGuard without needing the full rule text [#420] -- `trusted-replace-outbound-text` scriptlet [#410] -- ability to click on the element with specified text in `trusted-click-element` scriptlet [#409] -- `trusted-dispatch-event` scriptlet [#382] ### Deprecated @@ -26,7 +26,7 @@ The format is based on [Keep a Changelog], and this project adheres to [Semantic - `set-attr` value cannot be set to minimum `0` and maximum `32767` possible value [#425] -[Unreleased]: https://github.com/AdguardTeam/Scriptlets/compare/v1.10.25...HEAD +[v1.11.1]: https://github.com/AdguardTeam/Scriptlets/compare/v1.10.25...v1.11.1 [#425]: https://github.com/AdguardTeam/Scriptlets/issues/425 [#423]: https://github.com/AdguardTeam/Scriptlets/issues/423 [#420]: https://github.com/AdguardTeam/Scriptlets/issues/420 diff --git a/dist/build.txt b/dist/build.txt index 6a4ef0f1..31ecc2bd 100644 --- a/dist/build.txt +++ b/dist/build.txt @@ -1 +1 @@ -version=1.10.25 \ No newline at end of file +version=1.11.1 \ No newline at end of file diff --git a/dist/redirect-files/amazon-apstag.js b/dist/redirect-files/amazon-apstag.js index 43378dfb..2d72ab1e 100644 --- a/dist/redirect-files/amazon-apstag.js +++ b/dist/redirect-files/amazon-apstag.js @@ -20,19 +20,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/ati-smarttag.js b/dist/redirect-files/ati-smarttag.js index 4875a285..b79573e7 100644 --- a/dist/redirect-files/ati-smarttag.js +++ b/dist/redirect-files/ati-smarttag.js @@ -80,19 +80,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/didomi-loader.js b/dist/redirect-files/didomi-loader.js index dea2de87..bcfe1233 100644 --- a/dist/redirect-files/didomi-loader.js +++ b/dist/redirect-files/didomi-loader.js @@ -119,19 +119,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/fingerprintjs2.js b/dist/redirect-files/fingerprintjs2.js index 550d6684..a3385a6b 100644 --- a/dist/redirect-files/fingerprintjs2.js +++ b/dist/redirect-files/fingerprintjs2.js @@ -28,19 +28,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/fingerprintjs3.js b/dist/redirect-files/fingerprintjs3.js index d6b73a76..11ad7827 100644 --- a/dist/redirect-files/fingerprintjs3.js +++ b/dist/redirect-files/fingerprintjs3.js @@ -29,19 +29,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/gemius.js b/dist/redirect-files/gemius.js index 5b6a7205..ad9f640e 100644 --- a/dist/redirect-files/gemius.js +++ b/dist/redirect-files/gemius.js @@ -18,19 +18,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/google-analytics-ga.js b/dist/redirect-files/google-analytics-ga.js index d41d8a12..46afa473 100644 --- a/dist/redirect-files/google-analytics-ga.js +++ b/dist/redirect-files/google-analytics-ga.js @@ -80,19 +80,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/google-analytics.js b/dist/redirect-files/google-analytics.js index 17922f30..0f176dd2 100644 --- a/dist/redirect-files/google-analytics.js +++ b/dist/redirect-files/google-analytics.js @@ -91,19 +91,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/google-ima3.js b/dist/redirect-files/google-ima3.js index f7d146b1..f0af7c82 100644 --- a/dist/redirect-files/google-ima3.js +++ b/dist/redirect-files/google-ima3.js @@ -604,19 +604,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/googlesyndication-adsbygoogle.js b/dist/redirect-files/googlesyndication-adsbygoogle.js index e5d270b0..34d00109 100644 --- a/dist/redirect-files/googlesyndication-adsbygoogle.js +++ b/dist/redirect-files/googlesyndication-adsbygoogle.js @@ -60,19 +60,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/googletagservices-gpt.js b/dist/redirect-files/googletagservices-gpt.js index f9b4c932..8a7eb9a3 100644 --- a/dist/redirect-files/googletagservices-gpt.js +++ b/dist/redirect-files/googletagservices-gpt.js @@ -378,19 +378,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/matomo.js b/dist/redirect-files/matomo.js index 1de7ceaf..eee7cc25 100644 --- a/dist/redirect-files/matomo.js +++ b/dist/redirect-files/matomo.js @@ -21,19 +21,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/metrika-yandex-tag.js b/dist/redirect-files/metrika-yandex-tag.js index b3c58dfa..f18188ef 100644 --- a/dist/redirect-files/metrika-yandex-tag.js +++ b/dist/redirect-files/metrika-yandex-tag.js @@ -75,19 +75,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/metrika-yandex-watch.js b/dist/redirect-files/metrika-yandex-watch.js index e8d3ef3a..217d3bbb 100644 --- a/dist/redirect-files/metrika-yandex-watch.js +++ b/dist/redirect-files/metrika-yandex-watch.js @@ -59,19 +59,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/naver-wcslog.js b/dist/redirect-files/naver-wcslog.js index 695267c9..1edc5bcf 100644 --- a/dist/redirect-files/naver-wcslog.js +++ b/dist/redirect-files/naver-wcslog.js @@ -14,19 +14,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/noeval.js b/dist/redirect-files/noeval.js index 55426b4e..d8a3d6af 100644 --- a/dist/redirect-files/noeval.js +++ b/dist/redirect-files/noeval.js @@ -12,19 +12,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/pardot-1.0.js b/dist/redirect-files/pardot-1.0.js index bf966037..934e9a95 100644 --- a/dist/redirect-files/pardot-1.0.js +++ b/dist/redirect-files/pardot-1.0.js @@ -31,19 +31,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/prebid-ads.js b/dist/redirect-files/prebid-ads.js index 37331c2b..5f940631 100644 --- a/dist/redirect-files/prebid-ads.js +++ b/dist/redirect-files/prebid-ads.js @@ -11,19 +11,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/prebid.js b/dist/redirect-files/prebid.js index 6fcc1772..43ecc053 100644 --- a/dist/redirect-files/prebid.js +++ b/dist/redirect-files/prebid.js @@ -45,19 +45,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/prevent-bab.js b/dist/redirect-files/prevent-bab.js index dd41b061..35ba51e7 100644 --- a/dist/redirect-files/prevent-bab.js +++ b/dist/redirect-files/prevent-bab.js @@ -57,19 +57,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/prevent-bab2.js b/dist/redirect-files/prevent-bab2.js index ddb777a8..793db96d 100644 --- a/dist/redirect-files/prevent-bab2.js +++ b/dist/redirect-files/prevent-bab2.js @@ -24,19 +24,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/prevent-fab-3.2.0.js b/dist/redirect-files/prevent-fab-3.2.0.js index 99093991..4b7c8300 100644 --- a/dist/redirect-files/prevent-fab-3.2.0.js +++ b/dist/redirect-files/prevent-fab-3.2.0.js @@ -72,19 +72,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/prevent-popads-net.js b/dist/redirect-files/prevent-popads-net.js index e09abc0c..badcd096 100644 --- a/dist/redirect-files/prevent-popads-net.js +++ b/dist/redirect-files/prevent-popads-net.js @@ -42,19 +42,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/scorecardresearch-beacon.js b/dist/redirect-files/scorecardresearch-beacon.js index 1ba91dac..4047045b 100644 --- a/dist/redirect-files/scorecardresearch-beacon.js +++ b/dist/redirect-files/scorecardresearch-beacon.js @@ -15,19 +15,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirect-files/set-popads-dummy.js b/dist/redirect-files/set-popads-dummy.js index d69ad2ea..4cb557f8 100644 --- a/dist/redirect-files/set-popads-dummy.js +++ b/dist/redirect-files/set-popads-dummy.js @@ -24,19 +24,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/redirects.json b/dist/redirects.json index cb6f8b3f..90422ddd 100644 --- a/dist/redirects.json +++ b/dist/redirects.json @@ -162,21 +162,21 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIGFwc3RhZ1dyYXBwZXI9e2ZldGNoQmlkcyhhLGIpeyJmdW5jdGlvbiI9PXR5cGVvZiBiJiZiKFtdKX0saW5pdDpub29wRnVuYyxzZXREaXNwbGF5Qmlkczpub29wRnVuYyx0YXJnZXRpbmdLZXlzOm5vb3BGdW5jfTt3aW5kb3cuYXBzdGFnPWFwc3RhZ1dyYXBwZXIsZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJhbWF6b24tYXBzdGFnIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIGFwc3RhZ1dyYXBwZXI9e2ZldGNoQmlkcyhhLGIpeyJmdW5jdGlvbiI9PXR5cGVvZiBiJiZiKFtdKX0saW5pdDpub29wRnVuYyxzZXREaXNwbGF5Qmlkczpub29wRnVuYyx0YXJnZXRpbmdLZXlzOm5vb3BGdW5jfTt3aW5kb3cuYXBzdGFnPWFwc3RhZ1dyYXBwZXIsZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJhbWF6b24tYXBzdGFnIixhcmdzOltdfSxbXSk7" }, { "title": "ati-smarttag", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIHNldE5vb3BGdW5jV3JhcHBlcj17c2V0Om5vb3BGdW5jfSxzZW5kTm9vcEZ1bmNXcmFwcGVyPXtzZW5kOm5vb3BGdW5jfSx0YWc9ZnVuY3Rpb24oKXt9O3RhZy5wcm90b3R5cGU9e3NldENvbmZpZzpub29wRnVuYyxzZXRQYXJhbTpub29wRnVuYyxkaXNwYXRjaDpub29wRnVuYyxjdXN0b21WYXJzOnNldE5vb3BGdW5jV3JhcHBlcixwdWJsaXNoZXI6c2V0Tm9vcEZ1bmNXcmFwcGVyLG9yZGVyOnNldE5vb3BGdW5jV3JhcHBlcixjbGljazpzZW5kTm9vcEZ1bmNXcmFwcGVyLGNsaWNrTGlzdGVuZXI6c2VuZE5vb3BGdW5jV3JhcHBlcixpbnRlcm5hbFNlYXJjaDp7c2V0Om5vb3BGdW5jLHNlbmQ6bm9vcEZ1bmN9LGVjb21tZXJjZTp7ZGlzcGxheUNhcnQ6e3Byb2R1Y3RzOnNldE5vb3BGdW5jV3JhcHBlcixjYXJ0OnNldE5vb3BGdW5jV3JhcHBlcn0sdXBkYXRlQ2FydDp7Y2FydDpzZXROb29wRnVuY1dyYXBwZXJ9LGRpc3BsYXlQcm9kdWN0Ontwcm9kdWN0czpzZXROb29wRnVuY1dyYXBwZXJ9LGRpc3BsYXlQYWdlUHJvZHVjdDp7cHJvZHVjdHM6c2V0Tm9vcEZ1bmNXcmFwcGVyfSxhZGRQcm9kdWN0Ontwcm9kdWN0czpzZXROb29wRnVuY1dyYXBwZXJ9LHJlbW92ZVByb2R1Y3Q6e3Byb2R1Y3RzOnNldE5vb3BGdW5jV3JhcHBlcn19LGlkZW50aWZpZWRWaXNpdG9yOnt1bnNldDpub29wRnVuY30scGFnZTp7c2V0Om5vb3BGdW5jLHNlbmQ6bm9vcEZ1bmN9LHNlbGZQcm9tb3Rpb246e2FkZDpub29wRnVuYyxzZW5kOm5vb3BGdW5jfSxwcml2YWN5OntzZXRWaXNpdG9yTW9kZTpub29wRnVuYyxnZXRWaXNpdG9yTW9kZTpub29wRnVuYyxoaXQ6bm9vcEZ1bmN9LHJpY2hNZWRpYTp7YWRkOm5vb3BGdW5jLHNlbmQ6bm9vcEZ1bmMscmVtb3ZlOm5vb3BGdW5jLHJlbW92ZUFsbDpub29wRnVuY319O3ZhciBzbWFydFRhZ1dyYXBwZXI9e1RyYWNrZXI6e1RhZzp0YWd9fTt3aW5kb3cuQVRJbnRlcm5ldD1zbWFydFRhZ1dyYXBwZXIsZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJhdGktc21hcnR0YWciLGFyZ3M6W119LFtdKTs=" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIHNldE5vb3BGdW5jV3JhcHBlcj17c2V0Om5vb3BGdW5jfSxzZW5kTm9vcEZ1bmNXcmFwcGVyPXtzZW5kOm5vb3BGdW5jfSx0YWc9ZnVuY3Rpb24oKXt9O3RhZy5wcm90b3R5cGU9e3NldENvbmZpZzpub29wRnVuYyxzZXRQYXJhbTpub29wRnVuYyxkaXNwYXRjaDpub29wRnVuYyxjdXN0b21WYXJzOnNldE5vb3BGdW5jV3JhcHBlcixwdWJsaXNoZXI6c2V0Tm9vcEZ1bmNXcmFwcGVyLG9yZGVyOnNldE5vb3BGdW5jV3JhcHBlcixjbGljazpzZW5kTm9vcEZ1bmNXcmFwcGVyLGNsaWNrTGlzdGVuZXI6c2VuZE5vb3BGdW5jV3JhcHBlcixpbnRlcm5hbFNlYXJjaDp7c2V0Om5vb3BGdW5jLHNlbmQ6bm9vcEZ1bmN9LGVjb21tZXJjZTp7ZGlzcGxheUNhcnQ6e3Byb2R1Y3RzOnNldE5vb3BGdW5jV3JhcHBlcixjYXJ0OnNldE5vb3BGdW5jV3JhcHBlcn0sdXBkYXRlQ2FydDp7Y2FydDpzZXROb29wRnVuY1dyYXBwZXJ9LGRpc3BsYXlQcm9kdWN0Ontwcm9kdWN0czpzZXROb29wRnVuY1dyYXBwZXJ9LGRpc3BsYXlQYWdlUHJvZHVjdDp7cHJvZHVjdHM6c2V0Tm9vcEZ1bmNXcmFwcGVyfSxhZGRQcm9kdWN0Ontwcm9kdWN0czpzZXROb29wRnVuY1dyYXBwZXJ9LHJlbW92ZVByb2R1Y3Q6e3Byb2R1Y3RzOnNldE5vb3BGdW5jV3JhcHBlcn19LGlkZW50aWZpZWRWaXNpdG9yOnt1bnNldDpub29wRnVuY30scGFnZTp7c2V0Om5vb3BGdW5jLHNlbmQ6bm9vcEZ1bmN9LHNlbGZQcm9tb3Rpb246e2FkZDpub29wRnVuYyxzZW5kOm5vb3BGdW5jfSxwcml2YWN5OntzZXRWaXNpdG9yTW9kZTpub29wRnVuYyxnZXRWaXNpdG9yTW9kZTpub29wRnVuYyxoaXQ6bm9vcEZ1bmN9LHJpY2hNZWRpYTp7YWRkOm5vb3BGdW5jLHNlbmQ6bm9vcEZ1bmMscmVtb3ZlOm5vb3BGdW5jLHJlbW92ZUFsbDpub29wRnVuY319O3ZhciBzbWFydFRhZ1dyYXBwZXI9e1RyYWNrZXI6e1RhZzp0YWd9fTt3aW5kb3cuQVRJbnRlcm5ldD1zbWFydFRhZ1dyYXBwZXIsZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJhdGktc21hcnR0YWciLGFyZ3M6W119LFtdKTs=" }, { "title": "didomi-loader", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wQXJyYXkoKXtyZXR1cm5bXX1mdW5jdGlvbiB0cnVlRnVuYygpe3JldHVybiEwfWZ1bmN0aW9uIGZhbHNlRnVuYygpe3JldHVybiExfWNvbnN0IHVwZGF0ZWRBcmdzPWFyZ3M/W10uY29uY2F0KHNvdXJjZSkuY29uY2F0KGFyZ3MpOltzb3VyY2VdO3RyeXsoZnVuY3Rpb24oc291cmNlKXtmdW5jdGlvbiBVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvclN1YnNjcmliZSgpe31mdW5jdGlvbiBVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvcigpe31Vc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvclN1YnNjcmliZS5wcm90b3R5cGUuZmlsdGVyPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvclN1YnNjcmliZX0sVXNlckNvbnNlbnRTdGF0dXNGb3JWZW5kb3JTdWJzY3JpYmUucHJvdG90eXBlLnN1YnNjcmliZT1ub29wRnVuYyxVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvci5wcm90b3R5cGUuZmlyc3Q9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFVzZXJDb25zZW50U3RhdHVzRm9yVmVuZG9yU3Vic2NyaWJlfSxVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvci5wcm90b3R5cGUuZmlsdGVyPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvclN1YnNjcmliZX0sVXNlckNvbnNlbnRTdGF0dXNGb3JWZW5kb3IucHJvdG90eXBlLnN1YnNjcmliZT1ub29wRnVuYzt2YXIgRGlkb21pV3JhcHBlcj17aXNDb25zZW50UmVxdWlyZWQ6ZmFsc2VGdW5jLGdldFVzZXJDb25zZW50U3RhdHVzRm9yUHVycG9zZTp0cnVlRnVuYyxnZXRVc2VyQ29uc2VudFN0YXR1czp0cnVlRnVuYyxnZXRVc2VyU3RhdHVzOm5vb3BGdW5jLGdldFJlcXVpcmVkUHVycG9zZXM6bm9vcEFycmF5LGdldFVzZXJDb25zZW50U3RhdHVzRm9yVmVuZG9yOnRydWVGdW5jLFB1cnBvc2VzOntDb29raWVzOiJjb29raWVzIn0sbm90aWNlOntjb25maWd1cmU6bm9vcEZ1bmMsaGlkZTpub29wRnVuYyxpc1Zpc2libGU6ZmFsc2VGdW5jLHNob3c6bm9vcEZ1bmMsc2hvd0RhdGFQcm9jZXNzaW5nOnRydWVGdW5jfSxpc1VzZXJDb25zZW50U3RhdHVzUGFydGlhbDpmYWxzZUZ1bmMsb246KCk9Pih7YWN0aW9uczp7fSxlbWl0dGVyOnt9LHNlcnZpY2VzOnt9LHN0b3JlOnt9fSksc2hvdWxkQ29uc2VudEJlQ29sbGVjdGVkOmZhbHNlRnVuYyxnZXRVc2VyQ29uc2VudFN0YXR1c0ZvckFsbDpub29wRnVuYyxnZXRPYnNlcnZhYmxlT25Vc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvcjooKT0+bmV3IFVzZXJDb25zZW50U3RhdHVzRm9yVmVuZG9yfTt3aW5kb3cuRGlkb21pPURpZG9taVdyYXBwZXIsd2luZG93LmRpZG9taVN0YXRlPXtkaWRvbWlFeHBlcmltZW50SWQ6IiIsZGlkb21pRXhwZXJpbWVudFVzZXJHcm91cDoiIixkaWRvbWlHRFBSQXBwbGllczoxLGRpZG9taUlBQkNvbnNlbnQ6IiIsZGlkb21pUHVycG9zZXNDb25zZW50OiIiLGRpZG9taVB1cnBvc2VzQ29uc2VudERlbmllZDoiIixkaWRvbWlQdXJwb3Nlc0NvbnNlbnRVbmtub3duOiIiLGRpZG9taVZlbmRvcnNDb25zZW50OiIiLGRpZG9taVZlbmRvcnNDb25zZW50RGVuaWVkOiIiLGRpZG9taVZlbmRvcnNDb25zZW50VW5rbm93bjoiIixkaWRvbWlWZW5kb3JzUmF3Q29uc2VudDoiIixkaWRvbWlWZW5kb3JzUmF3Q29uc2VudERlbmllZDoiIixkaWRvbWlWZW5kb3JzUmF3Q29uc2VudFVua25vd246IiJ9O3ZhciB0Y0RhdGE9e2V2ZW50U3RhdHVzOiJ0Y2xvYWRlZCIsZ2RwckFwcGxpZXM6ITEsbGlzdGVuZXJJZDpub29wRnVuYyx2ZW5kb3I6e2NvbnNlbnRzOltdfSxwdXJwb3NlOntjb25zZW50czpbXX19O3dpbmRvdy5fX3RjZmFwaT1mdW5jdGlvbihjb21tYW5kLHZlcnNpb24sY2FsbGJhY2speyJmdW5jdGlvbiI9PXR5cGVvZiBjYWxsYmFjayYmInJlbW92ZUV2ZW50TGlzdGVuZXIiIT09Y29tbWFuZCYmY2FsbGJhY2sodGNEYXRhLCEwKX07dmFyIGRpZG9taUV2ZW50TGlzdGVuZXJzV3JhcHBlcj17c3R1YjohMCxwdXNoOm5vb3BGdW5jfTt3aW5kb3cuZGlkb21pRXZlbnRMaXN0ZW5lcnM9ZGlkb21pRXZlbnRMaXN0ZW5lcnNXcmFwcGVyO3ZhciBkaWRvbWlPblJlYWR5V3JhcHBlcj17c3R1YjohMCxwdXNoKGFyZyl7ImZ1bmN0aW9uIj09dHlwZW9mIGFyZyYmKCJjb21wbGV0ZSIhPT1kb2N1bWVudC5yZWFkeVN0YXRlP3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwoZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGFyZyh3aW5kb3cuRGlkb21pKSl9KSk6c2V0VGltZW91dChhcmcod2luZG93LkRpZG9taSkpKX19O3dpbmRvdy5kaWRvbWlPblJlYWR5PXdpbmRvdy5kaWRvbWlPblJlYWR5fHxkaWRvbWlPblJlYWR5V3JhcHBlcixBcnJheS5pc0FycmF5KHdpbmRvdy5kaWRvbWlPblJlYWR5KSYmd2luZG93LmRpZG9taU9uUmVhZHkuZm9yRWFjaCgoZnVuY3Rpb24oYXJnKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgYXJnKXRyeXtzZXRUaW1lb3V0KGFyZyh3aW5kb3cuRGlkb21pKSl9Y2F0Y2goZSl7fX0pKSxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD1zb3VyY2UucnVsZVRleHR8fCIiO2lmKHNvdXJjZS5kb21haW5OYW1lKXt2YXIgcnVsZVN0YXJ0SW5kZXgsQUdfU0NSSVBUTEVUX01BUktFUj0iIyUjLy8iLFVCT19TQ1JJUFRMRVRfTUFSS0VSPSIjIytqcyI7c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKEFHX1NDUklQVExFVF9NQVJLRVIpP3J1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKEFHX1NDUklQVExFVF9NQVJLRVIpOnNvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhVQk9fU0NSSVBUTEVUX01BUktFUikmJihydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihVQk9fU0NSSVBUTEVUX01BUktFUikpO3ZhciBydWxlUGFydD1zb3VyY2UucnVsZVRleHQuc2xpY2UocnVsZVN0YXJ0SW5kZXgpO3ByZWZpeD0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpLmNvbmNhdChydWxlUGFydCl9bG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6ImRpZG9taS1sb2FkZXIiLGFyZ3M6W119LFtdKTs=" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wQXJyYXkoKXtyZXR1cm5bXX1mdW5jdGlvbiB0cnVlRnVuYygpe3JldHVybiEwfWZ1bmN0aW9uIGZhbHNlRnVuYygpe3JldHVybiExfWNvbnN0IHVwZGF0ZWRBcmdzPWFyZ3M/W10uY29uY2F0KHNvdXJjZSkuY29uY2F0KGFyZ3MpOltzb3VyY2VdO3RyeXsoZnVuY3Rpb24oc291cmNlKXtmdW5jdGlvbiBVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvclN1YnNjcmliZSgpe31mdW5jdGlvbiBVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvcigpe31Vc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvclN1YnNjcmliZS5wcm90b3R5cGUuZmlsdGVyPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvclN1YnNjcmliZX0sVXNlckNvbnNlbnRTdGF0dXNGb3JWZW5kb3JTdWJzY3JpYmUucHJvdG90eXBlLnN1YnNjcmliZT1ub29wRnVuYyxVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvci5wcm90b3R5cGUuZmlyc3Q9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFVzZXJDb25zZW50U3RhdHVzRm9yVmVuZG9yU3Vic2NyaWJlfSxVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvci5wcm90b3R5cGUuZmlsdGVyPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBVc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvclN1YnNjcmliZX0sVXNlckNvbnNlbnRTdGF0dXNGb3JWZW5kb3IucHJvdG90eXBlLnN1YnNjcmliZT1ub29wRnVuYzt2YXIgRGlkb21pV3JhcHBlcj17aXNDb25zZW50UmVxdWlyZWQ6ZmFsc2VGdW5jLGdldFVzZXJDb25zZW50U3RhdHVzRm9yUHVycG9zZTp0cnVlRnVuYyxnZXRVc2VyQ29uc2VudFN0YXR1czp0cnVlRnVuYyxnZXRVc2VyU3RhdHVzOm5vb3BGdW5jLGdldFJlcXVpcmVkUHVycG9zZXM6bm9vcEFycmF5LGdldFVzZXJDb25zZW50U3RhdHVzRm9yVmVuZG9yOnRydWVGdW5jLFB1cnBvc2VzOntDb29raWVzOiJjb29raWVzIn0sbm90aWNlOntjb25maWd1cmU6bm9vcEZ1bmMsaGlkZTpub29wRnVuYyxpc1Zpc2libGU6ZmFsc2VGdW5jLHNob3c6bm9vcEZ1bmMsc2hvd0RhdGFQcm9jZXNzaW5nOnRydWVGdW5jfSxpc1VzZXJDb25zZW50U3RhdHVzUGFydGlhbDpmYWxzZUZ1bmMsb246KCk9Pih7YWN0aW9uczp7fSxlbWl0dGVyOnt9LHNlcnZpY2VzOnt9LHN0b3JlOnt9fSksc2hvdWxkQ29uc2VudEJlQ29sbGVjdGVkOmZhbHNlRnVuYyxnZXRVc2VyQ29uc2VudFN0YXR1c0ZvckFsbDpub29wRnVuYyxnZXRPYnNlcnZhYmxlT25Vc2VyQ29uc2VudFN0YXR1c0ZvclZlbmRvcjooKT0+bmV3IFVzZXJDb25zZW50U3RhdHVzRm9yVmVuZG9yfTt3aW5kb3cuRGlkb21pPURpZG9taVdyYXBwZXIsd2luZG93LmRpZG9taVN0YXRlPXtkaWRvbWlFeHBlcmltZW50SWQ6IiIsZGlkb21pRXhwZXJpbWVudFVzZXJHcm91cDoiIixkaWRvbWlHRFBSQXBwbGllczoxLGRpZG9taUlBQkNvbnNlbnQ6IiIsZGlkb21pUHVycG9zZXNDb25zZW50OiIiLGRpZG9taVB1cnBvc2VzQ29uc2VudERlbmllZDoiIixkaWRvbWlQdXJwb3Nlc0NvbnNlbnRVbmtub3duOiIiLGRpZG9taVZlbmRvcnNDb25zZW50OiIiLGRpZG9taVZlbmRvcnNDb25zZW50RGVuaWVkOiIiLGRpZG9taVZlbmRvcnNDb25zZW50VW5rbm93bjoiIixkaWRvbWlWZW5kb3JzUmF3Q29uc2VudDoiIixkaWRvbWlWZW5kb3JzUmF3Q29uc2VudERlbmllZDoiIixkaWRvbWlWZW5kb3JzUmF3Q29uc2VudFVua25vd246IiJ9O3ZhciB0Y0RhdGE9e2V2ZW50U3RhdHVzOiJ0Y2xvYWRlZCIsZ2RwckFwcGxpZXM6ITEsbGlzdGVuZXJJZDpub29wRnVuYyx2ZW5kb3I6e2NvbnNlbnRzOltdfSxwdXJwb3NlOntjb25zZW50czpbXX19O3dpbmRvdy5fX3RjZmFwaT1mdW5jdGlvbihjb21tYW5kLHZlcnNpb24sY2FsbGJhY2speyJmdW5jdGlvbiI9PXR5cGVvZiBjYWxsYmFjayYmInJlbW92ZUV2ZW50TGlzdGVuZXIiIT09Y29tbWFuZCYmY2FsbGJhY2sodGNEYXRhLCEwKX07dmFyIGRpZG9taUV2ZW50TGlzdGVuZXJzV3JhcHBlcj17c3R1YjohMCxwdXNoOm5vb3BGdW5jfTt3aW5kb3cuZGlkb21pRXZlbnRMaXN0ZW5lcnM9ZGlkb21pRXZlbnRMaXN0ZW5lcnNXcmFwcGVyO3ZhciBkaWRvbWlPblJlYWR5V3JhcHBlcj17c3R1YjohMCxwdXNoKGFyZyl7ImZ1bmN0aW9uIj09dHlwZW9mIGFyZyYmKCJjb21wbGV0ZSIhPT1kb2N1bWVudC5yZWFkeVN0YXRlP3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwoZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGFyZyh3aW5kb3cuRGlkb21pKSl9KSk6c2V0VGltZW91dChhcmcod2luZG93LkRpZG9taSkpKX19O3dpbmRvdy5kaWRvbWlPblJlYWR5PXdpbmRvdy5kaWRvbWlPblJlYWR5fHxkaWRvbWlPblJlYWR5V3JhcHBlcixBcnJheS5pc0FycmF5KHdpbmRvdy5kaWRvbWlPblJlYWR5KSYmd2luZG93LmRpZG9taU9uUmVhZHkuZm9yRWFjaCgoZnVuY3Rpb24oYXJnKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgYXJnKXRyeXtzZXRUaW1lb3V0KGFyZyh3aW5kb3cuRGlkb21pKSl9Y2F0Y2goZSl7fX0pKSxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD0iIjtzb3VyY2UuZG9tYWluTmFtZSYmKHByZWZpeCs9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKSkscHJlZml4Kz0iIyUjLy9zY3JpcHRsZXQoJyIuY29uY2F0KHNvdXJjZS5uYW1lLCInLCAnIikuY29uY2F0KHNvdXJjZS5hcmdzLmpvaW4oIiwgIiksIicpIiksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6ImRpZG9taS1sb2FkZXIiLGFyZ3M6W119LFtdKTs=" }, { "title": "fingerprintjs2", @@ -186,7 +186,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7Zm9yKHZhciBicm93c2VySWQ9IiIsaT0wO2k8ODtpKz0xKWJyb3dzZXJJZCs9KDY1NTM2Kk1hdGgucmFuZG9tKCkrNDA5NikudG9TdHJpbmcoMTYpLnNsaWNlKC00KTt2YXIgRmluZ2VycHJpbnQyPWZ1bmN0aW9uKCl7fTtGaW5nZXJwcmludDIucHJvdG90eXBlPXtnZXQ6RmluZ2VycHJpbnQyLmdldD1mdW5jdGlvbihvcHRpb25zLGNhbGxiYWNrKXtjYWxsYmFja3x8KGNhbGxiYWNrPW9wdGlvbnMpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7Y2FsbGJhY2smJmNhbGxiYWNrKGJyb3dzZXJJZCxbXSl9KSwxKX19LHdpbmRvdy5GaW5nZXJwcmludDI9RmluZ2VycHJpbnQyLGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PXNvdXJjZS5ydWxlVGV4dHx8IiI7aWYoc291cmNlLmRvbWFpbk5hbWUpe3ZhciBydWxlU3RhcnRJbmRleCxBR19TQ1JJUFRMRVRfTUFSS0VSPSIjJSMvLyIsVUJPX1NDUklQVExFVF9NQVJLRVI9IiMjK2pzIjtzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoQUdfU0NSSVBUTEVUX01BUktFUik/cnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoQUdfU0NSSVBUTEVUX01BUktFUik6c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSYmKHJ1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToiZmluZ2VycHJpbnRqczIiLGFyZ3M6W119LFtdKTs=" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7Zm9yKHZhciBicm93c2VySWQ9IiIsaT0wO2k8ODtpKz0xKWJyb3dzZXJJZCs9KDY1NTM2Kk1hdGgucmFuZG9tKCkrNDA5NikudG9TdHJpbmcoMTYpLnNsaWNlKC00KTt2YXIgRmluZ2VycHJpbnQyPWZ1bmN0aW9uKCl7fTtGaW5nZXJwcmludDIucHJvdG90eXBlPXtnZXQ6RmluZ2VycHJpbnQyLmdldD1mdW5jdGlvbihvcHRpb25zLGNhbGxiYWNrKXtjYWxsYmFja3x8KGNhbGxiYWNrPW9wdGlvbnMpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7Y2FsbGJhY2smJmNhbGxiYWNrKGJyb3dzZXJJZCxbXSl9KSwxKX19LHdpbmRvdy5GaW5nZXJwcmludDI9RmluZ2VycHJpbnQyLGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PSIiO3NvdXJjZS5kb21haW5OYW1lJiYocHJlZml4Kz0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpKSxwcmVmaXgrPSIjJSMvL3NjcmlwdGxldCgnIi5jb25jYXQoc291cmNlLm5hbWUsIicsICciKS5jb25jYXQoc291cmNlLmFyZ3Muam9pbigiLCAiKSwiJykiKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToiZmluZ2VycHJpbnRqczIiLGFyZ3M6W119LFtdKTs=" }, { "title": "fingerprintjs3", @@ -196,14 +196,14 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wU3RyKCl7cmV0dXJuIiJ9Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciB2aXNpdG9ySWQ9ZnVuY3Rpb24oKXtmb3IodmFyIGlkPSIiLGk9MDtpPDg7aSs9MSlpZCs9KDY1NTM2Kk1hdGgucmFuZG9tKCkrNDA5NikudG9TdHJpbmcoMTYpLnNsaWNlKC00KTtyZXR1cm4gaWR9KCksRmluZ2VycHJpbnRKUz1mdW5jdGlvbigpe307RmluZ2VycHJpbnRKUy5wcm90b3R5cGU9e2xvYWQ6KCk9PlByb21pc2UucmVzb2x2ZShuZXcgRmluZ2VycHJpbnRKUyksZ2V0OigpPT5Qcm9taXNlLnJlc29sdmUoe3Zpc2l0b3JJZDp2aXNpdG9ySWR9KSxoYXNoQ29tcG9uZW50czpub29wU3RyfSx3aW5kb3cuRmluZ2VycHJpbnRKUz1uZXcgRmluZ2VycHJpbnRKUyxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD1zb3VyY2UucnVsZVRleHR8fCIiO2lmKHNvdXJjZS5kb21haW5OYW1lKXt2YXIgcnVsZVN0YXJ0SW5kZXgsQUdfU0NSSVBUTEVUX01BUktFUj0iIyUjLy8iLFVCT19TQ1JJUFRMRVRfTUFSS0VSPSIjIytqcyI7c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKEFHX1NDUklQVExFVF9NQVJLRVIpP3J1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKEFHX1NDUklQVExFVF9NQVJLRVIpOnNvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhVQk9fU0NSSVBUTEVUX01BUktFUikmJihydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihVQk9fU0NSSVBUTEVUX01BUktFUikpO3ZhciBydWxlUGFydD1zb3VyY2UucnVsZVRleHQuc2xpY2UocnVsZVN0YXJ0SW5kZXgpO3ByZWZpeD0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpLmNvbmNhdChydWxlUGFydCl9bG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6ImZpbmdlcnByaW50anMzIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wU3RyKCl7cmV0dXJuIiJ9Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciB2aXNpdG9ySWQ9ZnVuY3Rpb24oKXtmb3IodmFyIGlkPSIiLGk9MDtpPDg7aSs9MSlpZCs9KDY1NTM2Kk1hdGgucmFuZG9tKCkrNDA5NikudG9TdHJpbmcoMTYpLnNsaWNlKC00KTtyZXR1cm4gaWR9KCksRmluZ2VycHJpbnRKUz1mdW5jdGlvbigpe307RmluZ2VycHJpbnRKUy5wcm90b3R5cGU9e2xvYWQ6KCk9PlByb21pc2UucmVzb2x2ZShuZXcgRmluZ2VycHJpbnRKUyksZ2V0OigpPT5Qcm9taXNlLnJlc29sdmUoe3Zpc2l0b3JJZDp2aXNpdG9ySWR9KSxoYXNoQ29tcG9uZW50czpub29wU3RyfSx3aW5kb3cuRmluZ2VycHJpbnRKUz1uZXcgRmluZ2VycHJpbnRKUyxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD0iIjtzb3VyY2UuZG9tYWluTmFtZSYmKHByZWZpeCs9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKSkscHJlZml4Kz0iIyUjLy9zY3JpcHRsZXQoJyIuY29uY2F0KHNvdXJjZS5uYW1lLCInLCAnIikuY29uY2F0KHNvdXJjZS5hcmdzLmpvaW4oIiwgIiksIicpIiksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6ImZpbmdlcnByaW50anMzIixhcmdzOltdfSxbXSk7" }, { "title": "gemius", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIEdlbWl1c1BsYXllcj1mdW5jdGlvbigpe307R2VtaXVzUGxheWVyLnByb3RvdHlwZT17c2V0VmlkZW9PYmplY3Q6bm9vcEZ1bmMsbmV3UHJvZ3JhbTpub29wRnVuYyxwcm9ncmFtRXZlbnQ6bm9vcEZ1bmMsbmV3QWQ6bm9vcEZ1bmMsYWRFdmVudDpub29wRnVuY30sd2luZG93LkdlbWl1c1BsYXllcj1HZW1pdXNQbGF5ZXIsZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJnZW1pdXMiLGFyZ3M6W119LFtdKTs=" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIEdlbWl1c1BsYXllcj1mdW5jdGlvbigpe307R2VtaXVzUGxheWVyLnByb3RvdHlwZT17c2V0VmlkZW9PYmplY3Q6bm9vcEZ1bmMsbmV3UHJvZ3JhbTpub29wRnVuYyxwcm9ncmFtRXZlbnQ6bm9vcEZ1bmMsbmV3QWQ6bm9vcEZ1bmMsYWRFdmVudDpub29wRnVuY30sd2luZG93LkdlbWl1c1BsYXllcj1HZW1pdXNQbGF5ZXIsZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJnZW1pdXMiLGFyZ3M6W119LFtdKTs=" }, { "title": "google-analytics-ga", @@ -213,7 +213,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7ZnVuY3Rpb24gR2FxKCl7fUdhcS5wcm90b3R5cGUuTmE9bm9vcEZ1bmMsR2FxLnByb3RvdHlwZS5PPW5vb3BGdW5jLEdhcS5wcm90b3R5cGUuU2E9bm9vcEZ1bmMsR2FxLnByb3RvdHlwZS5UYT1ub29wRnVuYyxHYXEucHJvdG90eXBlLlZhPW5vb3BGdW5jLEdhcS5wcm90b3R5cGUuX2NyZWF0ZUFzeW5jVHJhY2tlcj1ub29wRnVuYyxHYXEucHJvdG90eXBlLl9nZXRBc3luY1RyYWNrZXI9bm9vcEZ1bmMsR2FxLnByb3RvdHlwZS5fZ2V0UGx1Z2luPW5vb3BGdW5jLEdhcS5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihkYXRhKXsiZnVuY3Rpb24iIT10eXBlb2YgZGF0YT8hMSE9PUFycmF5LmlzQXJyYXkoZGF0YSkmJigic3RyaW5nIj09dHlwZW9mIGRhdGFbMF0mJi8oXnxcLilfbGluayQvLnRlc3QoZGF0YVswXSkmJiJzdHJpbmciPT10eXBlb2YgZGF0YVsxXSYmd2luZG93LmxvY2F0aW9uLmFzc2lnbihkYXRhWzFdKSwiX3NldCI9PT1kYXRhWzBdJiYiaGl0Q2FsbGJhY2siPT09ZGF0YVsxXSYmImZ1bmN0aW9uIj09dHlwZW9mIGRhdGFbMl0mJmRhdGFbMl0oKSk6ZGF0YSgpfTt2YXIgZ2FxPW5ldyBHYXEsYXN5bmNUcmFja2Vycz13aW5kb3cuX2dhcXx8W107aWYoQXJyYXkuaXNBcnJheShhc3luY1RyYWNrZXJzKSlmb3IoO2FzeW5jVHJhY2tlcnNbMF07KWdhcS5wdXNoKGFzeW5jVHJhY2tlcnMuc2hpZnQoKSk7ZnVuY3Rpb24gR2F0KCl7fXdpbmRvdy5fZ2FxPWdhcS5xZj1nYXE7dmFyIHRyYWNrZXI9WyJfYWRkSWdub3JlZE9yZ2FuaWMiLCJfYWRkSWdub3JlZFJlZiIsIl9hZGRJdGVtIiwiX2FkZE9yZ2FuaWMiLCJfYWRkVHJhbnMiLCJfY2xlYXJJZ25vcmVkT3JnYW5pYyIsIl9jbGVhcklnbm9yZWRSZWYiLCJfY2xlYXJPcmdhbmljIiwiX2Nvb2tpZVBhdGhDb3B5IiwiX2RlbGV0ZUN1c3RvbVZhciIsIl9nZXROYW1lIiwiX3NldEFjY291bnQiLCJfZ2V0QWNjb3VudCIsIl9nZXRDbGllbnRJbmZvIiwiX2dldERldGVjdEZsYXNoIiwiX2dldERldGVjdFRpdGxlIiwiX2dldExpbmtlclVybCIsIl9nZXRMb2NhbEdpZlBhdGgiLCJfZ2V0U2VydmljZU1vZGUiLCJfZ2V0VmVyc2lvbiIsIl9nZXRWaXNpdG9yQ3VzdG9tVmFyIiwiX2luaXREYXRhIiwiX2xpbmsiLCJfbGlua0J5UG9zdCIsIl9zZXRBbGxvd0FuY2hvciIsIl9zZXRBbGxvd0hhc2giLCJfc2V0QWxsb3dMaW5rZXIiLCJfc2V0Q2FtcENvbnRlbnRLZXkiLCJfc2V0Q2FtcE1lZGl1bUtleSIsIl9zZXRDYW1wTmFtZUtleSIsIl9zZXRDYW1wTk9LZXkiLCJfc2V0Q2FtcFNvdXJjZUtleSIsIl9zZXRDYW1wVGVybUtleSIsIl9zZXRDYW1wYWlnbkNvb2tpZVRpbWVvdXQiLCJfc2V0Q2FtcGFpZ25UcmFjayIsIl9zZXRDbGllbnRJbmZvIiwiX3NldENvb2tpZVBhdGgiLCJfc2V0Q29va2llUGVyc2lzdGVuY2UiLCJfc2V0Q29va2llVGltZW91dCIsIl9zZXRDdXN0b21WYXIiLCJfc2V0RGV0ZWN0Rmxhc2giLCJfc2V0RGV0ZWN0VGl0bGUiLCJfc2V0RG9tYWluTmFtZSIsIl9zZXRMb2NhbEdpZlBhdGgiLCJfc2V0TG9jYWxSZW1vdGVTZXJ2ZXJNb2RlIiwiX3NldExvY2FsU2VydmVyTW9kZSIsIl9zZXRSZWZlcnJlck92ZXJyaWRlIiwiX3NldFJlbW90ZVNlcnZlck1vZGUiLCJfc2V0U2FtcGxlUmF0ZSIsIl9zZXRTZXNzaW9uVGltZW91dCIsIl9zZXRTaXRlU3BlZWRTYW1wbGVSYXRlIiwiX3NldFNlc3Npb25Db29raWVUaW1lb3V0IiwiX3NldFZhciIsIl9zZXRWaXNpdG9yQ29va2llVGltZW91dCIsIl90cmFja0V2ZW50IiwiX3RyYWNrUGFnZUxvYWRUaW1lIiwiX3RyYWNrUGFnZXZpZXciLCJfdHJhY2tTb2NpYWwiLCJfdHJhY2tUaW1pbmciLCJfdHJhY2tUcmFucyIsIl92aXNpdENvZGUiXS5yZWR1Y2UoKGZ1bmN0aW9uKHJlcyxmdW5jTmFtZSl7cmV0dXJuIHJlc1tmdW5jTmFtZV09bm9vcEZ1bmMscmVzfSkse30pO3RyYWNrZXIuX2dldExpbmtlclVybD1mdW5jdGlvbihhKXtyZXR1cm4gYX0sdHJhY2tlci5fbGluaz1mdW5jdGlvbih1cmwpe2lmKCJzdHJpbmciPT10eXBlb2YgdXJsKXRyeXt3aW5kb3cubG9jYXRpb24uYXNzaWduKHVybCl9Y2F0Y2goZSl7IWZ1bmN0aW9uKHNvdXJjZSxtZXNzYWdlKXt2YXIgZm9yY2VkPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0sY29udmVydE1lc3NhZ2VUb1N0cmluZz0hKGFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdKXx8YXJndW1lbnRzWzNdLG5hbWU9c291cmNlLm5hbWUsdmVyYm9zZT1zb3VyY2UudmVyYm9zZTtpZihmb3JjZWR8fHZlcmJvc2Upe3ZhciBuYXRpdmVDb25zb2xlPWNvbnNvbGUubG9nO2NvbnZlcnRNZXNzYWdlVG9TdHJpbmc/bmF0aXZlQ29uc29sZSgiIi5jb25jYXQobmFtZSwiOiAiKS5jb25jYXQobWVzc2FnZSkpOm5hdGl2ZUNvbnNvbGUoIiIuY29uY2F0KG5hbWUsIjoiKSxtZXNzYWdlKX19KHNvdXJjZSxlKX19LEdhdC5wcm90b3R5cGUuX2Fub255bWl6ZUlQPW5vb3BGdW5jLEdhdC5wcm90b3R5cGUuX2NyZWF0ZVRyYWNrZXI9bm9vcEZ1bmMsR2F0LnByb3RvdHlwZS5fZm9yY2VTU0w9bm9vcEZ1bmMsR2F0LnByb3RvdHlwZS5fZ2V0UGx1Z2luPW5vb3BGdW5jLEdhdC5wcm90b3R5cGUuX2dldFRyYWNrZXI9ZnVuY3Rpb24oKXtyZXR1cm4gdHJhY2tlcn0sR2F0LnByb3RvdHlwZS5fZ2V0VHJhY2tlckJ5TmFtZT1mdW5jdGlvbigpe3JldHVybiB0cmFja2VyfSxHYXQucHJvdG90eXBlLl9nZXRUcmFja2Vycz1ub29wRnVuYyxHYXQucHJvdG90eXBlLmFhPW5vb3BGdW5jLEdhdC5wcm90b3R5cGUuYWI9bm9vcEZ1bmMsR2F0LnByb3RvdHlwZS5oYj1ub29wRnVuYyxHYXQucHJvdG90eXBlLmxhPW5vb3BGdW5jLEdhdC5wcm90b3R5cGUub2E9bm9vcEZ1bmMsR2F0LnByb3RvdHlwZS5wYT1ub29wRnVuYyxHYXQucHJvdG90eXBlLnU9bm9vcEZ1bmM7dmFyIGdhdD1uZXcgR2F0O3dpbmRvdy5fZ2F0PWdhdCxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD1zb3VyY2UucnVsZVRleHR8fCIiO2lmKHNvdXJjZS5kb21haW5OYW1lKXt2YXIgcnVsZVN0YXJ0SW5kZXgsQUdfU0NSSVBUTEVUX01BUktFUj0iIyUjLy8iLFVCT19TQ1JJUFRMRVRfTUFSS0VSPSIjIytqcyI7c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKEFHX1NDUklQVExFVF9NQVJLRVIpP3J1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKEFHX1NDUklQVExFVF9NQVJLRVIpOnNvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhVQk9fU0NSSVBUTEVUX01BUktFUikmJihydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihVQk9fU0NSSVBUTEVUX01BUktFUikpO3ZhciBydWxlUGFydD1zb3VyY2UucnVsZVRleHQuc2xpY2UocnVsZVN0YXJ0SW5kZXgpO3ByZWZpeD0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpLmNvbmNhdChydWxlUGFydCl9bG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6Imdvb2dsZS1hbmFseXRpY3MtZ2EiLGFyZ3M6W119LFtdKTs=" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7ZnVuY3Rpb24gR2FxKCl7fUdhcS5wcm90b3R5cGUuTmE9bm9vcEZ1bmMsR2FxLnByb3RvdHlwZS5PPW5vb3BGdW5jLEdhcS5wcm90b3R5cGUuU2E9bm9vcEZ1bmMsR2FxLnByb3RvdHlwZS5UYT1ub29wRnVuYyxHYXEucHJvdG90eXBlLlZhPW5vb3BGdW5jLEdhcS5wcm90b3R5cGUuX2NyZWF0ZUFzeW5jVHJhY2tlcj1ub29wRnVuYyxHYXEucHJvdG90eXBlLl9nZXRBc3luY1RyYWNrZXI9bm9vcEZ1bmMsR2FxLnByb3RvdHlwZS5fZ2V0UGx1Z2luPW5vb3BGdW5jLEdhcS5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihkYXRhKXsiZnVuY3Rpb24iIT10eXBlb2YgZGF0YT8hMSE9PUFycmF5LmlzQXJyYXkoZGF0YSkmJigic3RyaW5nIj09dHlwZW9mIGRhdGFbMF0mJi8oXnxcLilfbGluayQvLnRlc3QoZGF0YVswXSkmJiJzdHJpbmciPT10eXBlb2YgZGF0YVsxXSYmd2luZG93LmxvY2F0aW9uLmFzc2lnbihkYXRhWzFdKSwiX3NldCI9PT1kYXRhWzBdJiYiaGl0Q2FsbGJhY2siPT09ZGF0YVsxXSYmImZ1bmN0aW9uIj09dHlwZW9mIGRhdGFbMl0mJmRhdGFbMl0oKSk6ZGF0YSgpfTt2YXIgZ2FxPW5ldyBHYXEsYXN5bmNUcmFja2Vycz13aW5kb3cuX2dhcXx8W107aWYoQXJyYXkuaXNBcnJheShhc3luY1RyYWNrZXJzKSlmb3IoO2FzeW5jVHJhY2tlcnNbMF07KWdhcS5wdXNoKGFzeW5jVHJhY2tlcnMuc2hpZnQoKSk7ZnVuY3Rpb24gR2F0KCl7fXdpbmRvdy5fZ2FxPWdhcS5xZj1nYXE7dmFyIHRyYWNrZXI9WyJfYWRkSWdub3JlZE9yZ2FuaWMiLCJfYWRkSWdub3JlZFJlZiIsIl9hZGRJdGVtIiwiX2FkZE9yZ2FuaWMiLCJfYWRkVHJhbnMiLCJfY2xlYXJJZ25vcmVkT3JnYW5pYyIsIl9jbGVhcklnbm9yZWRSZWYiLCJfY2xlYXJPcmdhbmljIiwiX2Nvb2tpZVBhdGhDb3B5IiwiX2RlbGV0ZUN1c3RvbVZhciIsIl9nZXROYW1lIiwiX3NldEFjY291bnQiLCJfZ2V0QWNjb3VudCIsIl9nZXRDbGllbnRJbmZvIiwiX2dldERldGVjdEZsYXNoIiwiX2dldERldGVjdFRpdGxlIiwiX2dldExpbmtlclVybCIsIl9nZXRMb2NhbEdpZlBhdGgiLCJfZ2V0U2VydmljZU1vZGUiLCJfZ2V0VmVyc2lvbiIsIl9nZXRWaXNpdG9yQ3VzdG9tVmFyIiwiX2luaXREYXRhIiwiX2xpbmsiLCJfbGlua0J5UG9zdCIsIl9zZXRBbGxvd0FuY2hvciIsIl9zZXRBbGxvd0hhc2giLCJfc2V0QWxsb3dMaW5rZXIiLCJfc2V0Q2FtcENvbnRlbnRLZXkiLCJfc2V0Q2FtcE1lZGl1bUtleSIsIl9zZXRDYW1wTmFtZUtleSIsIl9zZXRDYW1wTk9LZXkiLCJfc2V0Q2FtcFNvdXJjZUtleSIsIl9zZXRDYW1wVGVybUtleSIsIl9zZXRDYW1wYWlnbkNvb2tpZVRpbWVvdXQiLCJfc2V0Q2FtcGFpZ25UcmFjayIsIl9zZXRDbGllbnRJbmZvIiwiX3NldENvb2tpZVBhdGgiLCJfc2V0Q29va2llUGVyc2lzdGVuY2UiLCJfc2V0Q29va2llVGltZW91dCIsIl9zZXRDdXN0b21WYXIiLCJfc2V0RGV0ZWN0Rmxhc2giLCJfc2V0RGV0ZWN0VGl0bGUiLCJfc2V0RG9tYWluTmFtZSIsIl9zZXRMb2NhbEdpZlBhdGgiLCJfc2V0TG9jYWxSZW1vdGVTZXJ2ZXJNb2RlIiwiX3NldExvY2FsU2VydmVyTW9kZSIsIl9zZXRSZWZlcnJlck92ZXJyaWRlIiwiX3NldFJlbW90ZVNlcnZlck1vZGUiLCJfc2V0U2FtcGxlUmF0ZSIsIl9zZXRTZXNzaW9uVGltZW91dCIsIl9zZXRTaXRlU3BlZWRTYW1wbGVSYXRlIiwiX3NldFNlc3Npb25Db29raWVUaW1lb3V0IiwiX3NldFZhciIsIl9zZXRWaXNpdG9yQ29va2llVGltZW91dCIsIl90cmFja0V2ZW50IiwiX3RyYWNrUGFnZUxvYWRUaW1lIiwiX3RyYWNrUGFnZXZpZXciLCJfdHJhY2tTb2NpYWwiLCJfdHJhY2tUaW1pbmciLCJfdHJhY2tUcmFucyIsIl92aXNpdENvZGUiXS5yZWR1Y2UoKGZ1bmN0aW9uKHJlcyxmdW5jTmFtZSl7cmV0dXJuIHJlc1tmdW5jTmFtZV09bm9vcEZ1bmMscmVzfSkse30pO3RyYWNrZXIuX2dldExpbmtlclVybD1mdW5jdGlvbihhKXtyZXR1cm4gYX0sdHJhY2tlci5fbGluaz1mdW5jdGlvbih1cmwpe2lmKCJzdHJpbmciPT10eXBlb2YgdXJsKXRyeXt3aW5kb3cubG9jYXRpb24uYXNzaWduKHVybCl9Y2F0Y2goZSl7IWZ1bmN0aW9uKHNvdXJjZSxtZXNzYWdlKXt2YXIgZm9yY2VkPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0sY29udmVydE1lc3NhZ2VUb1N0cmluZz0hKGFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdKXx8YXJndW1lbnRzWzNdLG5hbWU9c291cmNlLm5hbWUsdmVyYm9zZT1zb3VyY2UudmVyYm9zZTtpZihmb3JjZWR8fHZlcmJvc2Upe3ZhciBuYXRpdmVDb25zb2xlPWNvbnNvbGUubG9nO2NvbnZlcnRNZXNzYWdlVG9TdHJpbmc/bmF0aXZlQ29uc29sZSgiIi5jb25jYXQobmFtZSwiOiAiKS5jb25jYXQobWVzc2FnZSkpOm5hdGl2ZUNvbnNvbGUoIiIuY29uY2F0KG5hbWUsIjoiKSxtZXNzYWdlKX19KHNvdXJjZSxlKX19LEdhdC5wcm90b3R5cGUuX2Fub255bWl6ZUlQPW5vb3BGdW5jLEdhdC5wcm90b3R5cGUuX2NyZWF0ZVRyYWNrZXI9bm9vcEZ1bmMsR2F0LnByb3RvdHlwZS5fZm9yY2VTU0w9bm9vcEZ1bmMsR2F0LnByb3RvdHlwZS5fZ2V0UGx1Z2luPW5vb3BGdW5jLEdhdC5wcm90b3R5cGUuX2dldFRyYWNrZXI9ZnVuY3Rpb24oKXtyZXR1cm4gdHJhY2tlcn0sR2F0LnByb3RvdHlwZS5fZ2V0VHJhY2tlckJ5TmFtZT1mdW5jdGlvbigpe3JldHVybiB0cmFja2VyfSxHYXQucHJvdG90eXBlLl9nZXRUcmFja2Vycz1ub29wRnVuYyxHYXQucHJvdG90eXBlLmFhPW5vb3BGdW5jLEdhdC5wcm90b3R5cGUuYWI9bm9vcEZ1bmMsR2F0LnByb3RvdHlwZS5oYj1ub29wRnVuYyxHYXQucHJvdG90eXBlLmxhPW5vb3BGdW5jLEdhdC5wcm90b3R5cGUub2E9bm9vcEZ1bmMsR2F0LnByb3RvdHlwZS5wYT1ub29wRnVuYyxHYXQucHJvdG90eXBlLnU9bm9vcEZ1bmM7dmFyIGdhdD1uZXcgR2F0O3dpbmRvdy5fZ2F0PWdhdCxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD0iIjtzb3VyY2UuZG9tYWluTmFtZSYmKHByZWZpeCs9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKSkscHJlZml4Kz0iIyUjLy9zY3JpcHRsZXQoJyIuY29uY2F0KHNvdXJjZS5uYW1lLCInLCAnIikuY29uY2F0KHNvdXJjZS5hcmdzLmpvaW4oIiwgIiksIicpIiksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6Imdvb2dsZS1hbmFseXRpY3MtZ2EiLGFyZ3M6W119LFtdKTs=" }, { "title": "google-analytics", @@ -226,7 +226,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIF93aW5kb3ckZ29vZ2xlQW5hbHl0aSxUcmFja2VyPWZ1bmN0aW9uKCl7fSxwcm90bz1UcmFja2VyLnByb3RvdHlwZTtwcm90by5nZXQ9bm9vcEZ1bmMscHJvdG8uc2V0PW5vb3BGdW5jLHByb3RvLnNlbmQ9bm9vcEZ1bmM7dmFyIGdvb2dsZUFuYWx5dGljc05hbWU9d2luZG93Lkdvb2dsZUFuYWx5dGljc09iamVjdHx8ImdhIixxdWV1ZT1udWxsPT09KF93aW5kb3ckZ29vZ2xlQW5hbHl0aT13aW5kb3dbZ29vZ2xlQW5hbHl0aWNzTmFtZV0pfHx2b2lkIDA9PT1fd2luZG93JGdvb2dsZUFuYWx5dGk/dm9pZCAwOl93aW5kb3ckZ29vZ2xlQW5hbHl0aS5xO2Z1bmN0aW9uIGdhKGEpe3ZhciBsZW49YXJndW1lbnRzLmxlbmd0aDtpZigwIT09bGVuKXt2YXIgcmVwbGFjZXIsbGFzdEFyZz1hcmd1bWVudHNbbGVuLTFdO2xhc3RBcmcgaW5zdGFuY2VvZiBPYmplY3QmJm51bGwhPT1sYXN0QXJnJiYiZnVuY3Rpb24iPT10eXBlb2YgbGFzdEFyZy5oaXRDYWxsYmFjaz9yZXBsYWNlcj1sYXN0QXJnLmhpdENhbGxiYWNrOiJmdW5jdGlvbiI9PXR5cGVvZiBsYXN0QXJnJiYocmVwbGFjZXI9ZnVuY3Rpb24oKXtsYXN0QXJnKGdhLmNyZWF0ZSgpKX0pO3RyeXtzZXRUaW1lb3V0KHJlcGxhY2VyLDEpfWNhdGNoKGV4KXt9fX1pZihnYS5jcmVhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFRyYWNrZXJ9LGdhLmdldEJ5TmFtZT1mdW5jdGlvbigpe3JldHVybiBuZXcgVHJhY2tlcn0sZ2EuZ2V0QWxsPWZ1bmN0aW9uKCl7cmV0dXJuW25ldyBUcmFja2VyXX0sZ2EucmVtb3ZlPW5vb3BGdW5jLGdhLmxvYWRlZD0hMCx3aW5kb3dbZ29vZ2xlQW5hbHl0aWNzTmFtZV09Z2EsQXJyYXkuaXNBcnJheShxdWV1ZSkpe3ZhciBwdXNoPWZ1bmN0aW9uKGFyZyl7Z2EoLi4uYXJnKX07cXVldWUucHVzaD1wdXNoLHF1ZXVlLmZvckVhY2gocHVzaCl9dmFyIF93aW5kb3c9d2luZG93LGRhdGFMYXllcj1fd2luZG93LmRhdGFMYXllcixnb29nbGVfb3B0aW1pemU9X3dpbmRvdy5nb29nbGVfb3B0aW1pemU7aWYoZGF0YUxheWVyIGluc3RhbmNlb2YgT2JqZWN0IT0wKXtkYXRhTGF5ZXIuaGlkZSBpbnN0YW5jZW9mIE9iamVjdCYmImZ1bmN0aW9uIj09dHlwZW9mIGRhdGFMYXllci5oaWRlLmVuZCYmZGF0YUxheWVyLmhpZGUuZW5kKCk7dmFyIGhhbmRsZUNhbGxiYWNrPWZ1bmN0aW9uKGRhdGFPYmosZnVuY05hbWUpe2RhdGFPYmomJiJmdW5jdGlvbiI9PXR5cGVvZiBkYXRhT2JqW2Z1bmNOYW1lXSYmc2V0VGltZW91dChkYXRhT2JqW2Z1bmNOYW1lXSl9O2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBkYXRhTGF5ZXIucHVzaCYmKGRhdGFMYXllci5wdXNoPWZ1bmN0aW9uKGRhdGEpe2lmKGRhdGEgaW5zdGFuY2VvZiBPYmplY3Qpe2Zvcih2YXIga2V5IGluIGhhbmRsZUNhbGxiYWNrKGRhdGEsImV2ZW50Q2FsbGJhY2siKSxkYXRhKWhhbmRsZUNhbGxiYWNrKGRhdGFba2V5XSwiZXZlbnRfY2FsbGJhY2siKTtkYXRhLmhhc093blByb3BlcnR5KCJldmVudENhbGxiYWNrIil8fGRhdGEuaGFzT3duUHJvcGVydHkoImV2ZW50Q2FsbGJhY2siKXx8W10ucHVzaC5jYWxsKHdpbmRvdy5kYXRhTGF5ZXIsZGF0YSl9cmV0dXJuIEFycmF5LmlzQXJyYXkoZGF0YSkmJmRhdGEuZm9yRWFjaCgoZnVuY3Rpb24oYXJnKXtoYW5kbGVDYWxsYmFjayhhcmcsImNhbGxiYWNrIil9KSksbm9vcEZ1bmN9KSxnb29nbGVfb3B0aW1pemUgaW5zdGFuY2VvZiBPYmplY3QmJiJmdW5jdGlvbiI9PXR5cGVvZiBnb29nbGVfb3B0aW1pemUuZ2V0KXt2YXIgZ29vZ2xlT3B0aW1pemVXcmFwcGVyPXtnZXQ6bm9vcEZ1bmN9O3dpbmRvdy5nb29nbGVfb3B0aW1pemU9Z29vZ2xlT3B0aW1pemVXcmFwcGVyfSFmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD1zb3VyY2UucnVsZVRleHR8fCIiO2lmKHNvdXJjZS5kb21haW5OYW1lKXt2YXIgcnVsZVN0YXJ0SW5kZXgsQUdfU0NSSVBUTEVUX01BUktFUj0iIyUjLy8iLFVCT19TQ1JJUFRMRVRfTUFSS0VSPSIjIytqcyI7c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKEFHX1NDUklQVExFVF9NQVJLRVIpP3J1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKEFHX1NDUklQVExFVF9NQVJLRVIpOnNvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhVQk9fU0NSSVBUTEVUX01BUktFUikmJihydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihVQk9fU0NSSVBUTEVUX01BUktFUikpO3ZhciBydWxlUGFydD1zb3VyY2UucnVsZVRleHQuc2xpY2UocnVsZVN0YXJ0SW5kZXgpO3ByZWZpeD0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpLmNvbmNhdChydWxlUGFydCl9bG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX19KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJnb29nbGUtYW5hbHl0aWNzIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIF93aW5kb3ckZ29vZ2xlQW5hbHl0aSxUcmFja2VyPWZ1bmN0aW9uKCl7fSxwcm90bz1UcmFja2VyLnByb3RvdHlwZTtwcm90by5nZXQ9bm9vcEZ1bmMscHJvdG8uc2V0PW5vb3BGdW5jLHByb3RvLnNlbmQ9bm9vcEZ1bmM7dmFyIGdvb2dsZUFuYWx5dGljc05hbWU9d2luZG93Lkdvb2dsZUFuYWx5dGljc09iamVjdHx8ImdhIixxdWV1ZT1udWxsPT09KF93aW5kb3ckZ29vZ2xlQW5hbHl0aT13aW5kb3dbZ29vZ2xlQW5hbHl0aWNzTmFtZV0pfHx2b2lkIDA9PT1fd2luZG93JGdvb2dsZUFuYWx5dGk/dm9pZCAwOl93aW5kb3ckZ29vZ2xlQW5hbHl0aS5xO2Z1bmN0aW9uIGdhKGEpe3ZhciBsZW49YXJndW1lbnRzLmxlbmd0aDtpZigwIT09bGVuKXt2YXIgcmVwbGFjZXIsbGFzdEFyZz1hcmd1bWVudHNbbGVuLTFdO2xhc3RBcmcgaW5zdGFuY2VvZiBPYmplY3QmJm51bGwhPT1sYXN0QXJnJiYiZnVuY3Rpb24iPT10eXBlb2YgbGFzdEFyZy5oaXRDYWxsYmFjaz9yZXBsYWNlcj1sYXN0QXJnLmhpdENhbGxiYWNrOiJmdW5jdGlvbiI9PXR5cGVvZiBsYXN0QXJnJiYocmVwbGFjZXI9ZnVuY3Rpb24oKXtsYXN0QXJnKGdhLmNyZWF0ZSgpKX0pO3RyeXtzZXRUaW1lb3V0KHJlcGxhY2VyLDEpfWNhdGNoKGV4KXt9fX1pZihnYS5jcmVhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFRyYWNrZXJ9LGdhLmdldEJ5TmFtZT1mdW5jdGlvbigpe3JldHVybiBuZXcgVHJhY2tlcn0sZ2EuZ2V0QWxsPWZ1bmN0aW9uKCl7cmV0dXJuW25ldyBUcmFja2VyXX0sZ2EucmVtb3ZlPW5vb3BGdW5jLGdhLmxvYWRlZD0hMCx3aW5kb3dbZ29vZ2xlQW5hbHl0aWNzTmFtZV09Z2EsQXJyYXkuaXNBcnJheShxdWV1ZSkpe3ZhciBwdXNoPWZ1bmN0aW9uKGFyZyl7Z2EoLi4uYXJnKX07cXVldWUucHVzaD1wdXNoLHF1ZXVlLmZvckVhY2gocHVzaCl9dmFyIF93aW5kb3c9d2luZG93LGRhdGFMYXllcj1fd2luZG93LmRhdGFMYXllcixnb29nbGVfb3B0aW1pemU9X3dpbmRvdy5nb29nbGVfb3B0aW1pemU7aWYoZGF0YUxheWVyIGluc3RhbmNlb2YgT2JqZWN0IT0wKXtkYXRhTGF5ZXIuaGlkZSBpbnN0YW5jZW9mIE9iamVjdCYmImZ1bmN0aW9uIj09dHlwZW9mIGRhdGFMYXllci5oaWRlLmVuZCYmZGF0YUxheWVyLmhpZGUuZW5kKCk7dmFyIGhhbmRsZUNhbGxiYWNrPWZ1bmN0aW9uKGRhdGFPYmosZnVuY05hbWUpe2RhdGFPYmomJiJmdW5jdGlvbiI9PXR5cGVvZiBkYXRhT2JqW2Z1bmNOYW1lXSYmc2V0VGltZW91dChkYXRhT2JqW2Z1bmNOYW1lXSl9O2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBkYXRhTGF5ZXIucHVzaCYmKGRhdGFMYXllci5wdXNoPWZ1bmN0aW9uKGRhdGEpe2lmKGRhdGEgaW5zdGFuY2VvZiBPYmplY3Qpe2Zvcih2YXIga2V5IGluIGhhbmRsZUNhbGxiYWNrKGRhdGEsImV2ZW50Q2FsbGJhY2siKSxkYXRhKWhhbmRsZUNhbGxiYWNrKGRhdGFba2V5XSwiZXZlbnRfY2FsbGJhY2siKTtkYXRhLmhhc093blByb3BlcnR5KCJldmVudENhbGxiYWNrIil8fGRhdGEuaGFzT3duUHJvcGVydHkoImV2ZW50Q2FsbGJhY2siKXx8W10ucHVzaC5jYWxsKHdpbmRvdy5kYXRhTGF5ZXIsZGF0YSl9cmV0dXJuIEFycmF5LmlzQXJyYXkoZGF0YSkmJmRhdGEuZm9yRWFjaCgoZnVuY3Rpb24oYXJnKXtoYW5kbGVDYWxsYmFjayhhcmcsImNhbGxiYWNrIil9KSksbm9vcEZ1bmN9KSxnb29nbGVfb3B0aW1pemUgaW5zdGFuY2VvZiBPYmplY3QmJiJmdW5jdGlvbiI9PXR5cGVvZiBnb29nbGVfb3B0aW1pemUuZ2V0KXt2YXIgZ29vZ2xlT3B0aW1pemVXcmFwcGVyPXtnZXQ6bm9vcEZ1bmN9O3dpbmRvdy5nb29nbGVfb3B0aW1pemU9Z29vZ2xlT3B0aW1pemVXcmFwcGVyfSFmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD0iIjtzb3VyY2UuZG9tYWluTmFtZSYmKHByZWZpeCs9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKSkscHJlZml4Kz0iIyUjLy9zY3JpcHRsZXQoJyIuY29uY2F0KHNvdXJjZS5uYW1lLCInLCAnIikuY29uY2F0KHNvdXJjZS5hcmdzLmpvaW4oIiwgIiksIicpIiksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX19KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJnb29nbGUtYW5hbHl0aWNzIixhcmdzOltdfSxbXSk7" }, { "title": "google-ima3", @@ -236,7 +236,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBsb2dNZXNzYWdlKHNvdXJjZSxtZXNzYWdlKXt2YXIgZm9yY2VkPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0sY29udmVydE1lc3NhZ2VUb1N0cmluZz0hKGFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdKXx8YXJndW1lbnRzWzNdLG5hbWU9c291cmNlLm5hbWUsdmVyYm9zZT1zb3VyY2UudmVyYm9zZTtpZihmb3JjZWR8fHZlcmJvc2Upe3ZhciBuYXRpdmVDb25zb2xlPWNvbnNvbGUubG9nO2NvbnZlcnRNZXNzYWdlVG9TdHJpbmc/bmF0aXZlQ29uc29sZSgiIi5jb25jYXQobmFtZSwiOiAiKS5jb25jYXQobWVzc2FnZSkpOm5hdGl2ZUNvbnNvbGUoIiIuY29uY2F0KG5hbWUsIjoiKSxtZXNzYWdlKX19Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciBfd2luZG93JGdvb2dsZSRpbWEsaW1hPXt9LEFkRGlzcGxheUNvbnRhaW5lcj1mdW5jdGlvbihjb250YWluZXJFbGVtZW50KXt2YXIgZGl2RWxlbWVudD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtkaXZFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpLGRpdkVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoInZpc2liaWxpdHkiLCJjb2xsYXBzZSIsImltcG9ydGFudCIpLGNvbnRhaW5lckVsZW1lbnQmJmNvbnRhaW5lckVsZW1lbnQuYXBwZW5kQ2hpbGQoZGl2RWxlbWVudCl9O0FkRGlzcGxheUNvbnRhaW5lci5wcm90b3R5cGUuZGVzdHJveT1ub29wRnVuYyxBZERpc3BsYXlDb250YWluZXIucHJvdG90eXBlLmluaXRpYWxpemU9bm9vcEZ1bmM7dmFyIEltYVNka1NldHRpbmdzPWZ1bmN0aW9uKCl7fTtJbWFTZGtTZXR0aW5ncy5Db21wYW5pb25CYWNrZmlsbE1vZGU9e0FMV0FZUzoiYWx3YXlzIixPTl9NQVNURVJfQUQ6Im9uX21hc3Rlcl9hZCJ9LEltYVNka1NldHRpbmdzLlZwYWlkTW9kZT17RElTQUJMRUQ6MCxFTkFCTEVEOjEsSU5TRUNVUkU6Mn0sSW1hU2RrU2V0dGluZ3MucHJvdG90eXBlPXtjOiEwLGY6e30saTohMSxsOiIiLHA6IiIscjowLHQ6IiIsdjoiIixnZXRDb21wYW5pb25CYWNrZmlsbDpub29wRnVuYyxnZXREaXNhYmxlQ3VzdG9tUGxheWJhY2tGb3JJT1MxMFBsdXMoKXtyZXR1cm4gdGhpcy5pfSxnZXREaXNhYmxlZEZsYXNoQWRzOmZ1bmN0aW9uKCl7cmV0dXJuITB9LGdldEZlYXR1cmVGbGFncygpe3JldHVybiB0aGlzLmZ9LGdldExvY2FsZSgpe3JldHVybiB0aGlzLmx9LGdldE51bVJlZGlyZWN0cygpe3JldHVybiB0aGlzLnJ9LGdldFBsYXllclR5cGUoKXtyZXR1cm4gdGhpcy50fSxnZXRQbGF5ZXJWZXJzaW9uKCl7cmV0dXJuIHRoaXMudn0sZ2V0UHBpZCgpe3JldHVybiB0aGlzLnB9LGdldFZwYWlkTW9kZSgpe3JldHVybiB0aGlzLkN9LGlzQ29va2llc0VuYWJsZWQoKXtyZXR1cm4gdGhpcy5jfSxpc1ZwYWlkQWRhcHRlcigpe3JldHVybiB0aGlzLk19LHNldENvbXBhbmlvbkJhY2tmaWxsOm5vb3BGdW5jLHNldEF1dG9QbGF5QWRCcmVha3MoYSl7dGhpcy5LPWF9LHNldENvb2tpZXNFbmFibGVkKGMpe3RoaXMuYz0hIWN9LHNldERpc2FibGVDdXN0b21QbGF5YmFja0ZvcklPUzEwUGx1cyhpKXt0aGlzLmk9ISFpfSxzZXREaXNhYmxlRmxhc2hBZHM6bm9vcEZ1bmMsc2V0RmVhdHVyZUZsYWdzKGYpe3RoaXMuZj0hIWZ9LHNldElzVnBhaWRBZGFwdGVyKGEpe3RoaXMuTT1hfSxzZXRMb2NhbGUobCl7dGhpcy5sPSEhbH0sc2V0TnVtUmVkaXJlY3RzKHIpe3RoaXMucj0hIXJ9LHNldFBhZ2VDb3JyZWxhdG9yKGEpe3RoaXMuUj1hfSxzZXRQbGF5ZXJUeXBlKHQpe3RoaXMudD0hIXR9LHNldFBsYXllclZlcnNpb24odil7dGhpcy52PSEhdn0sc2V0UHBpZChwKXt0aGlzLnA9ISFwfSxzZXRWcGFpZE1vZGUoYSl7dGhpcy5DPWF9LHNldFNlc3Npb25JZDpub29wRnVuYyxzZXRTdHJlYW1Db3JyZWxhdG9yOm5vb3BGdW5jLHNldFZwYWlkQWxsb3dlZDpub29wRnVuYyxDb21wYW5pb25CYWNrZmlsbE1vZGU6e0FMV0FZUzoiYWx3YXlzIixPTl9NQVNURVJfQUQ6Im9uX21hc3Rlcl9hZCJ9LFZwYWlkTW9kZTp7RElTQUJMRUQ6MCxFTkFCTEVEOjEsSU5TRUNVUkU6Mn19O3ZhciBFdmVudEhhbmRsZXI9ZnVuY3Rpb24oKXt0aGlzLmxpc3RlbmVycz1uZXcgTWFwLHRoaXMuX2Rpc3BhdGNoPWZ1bmN0aW9uKGUpe3ZhciBsaXN0ZW5lcnM9dGhpcy5saXN0ZW5lcnMuZ2V0KGUudHlwZSk7bGlzdGVuZXJzPWxpc3RlbmVycz9saXN0ZW5lcnMudmFsdWVzKCk6W107Zm9yKHZhciBfaT0wLF9BcnJheSRmcm9tPUFycmF5LmZyb20obGlzdGVuZXJzKTtfaTxfQXJyYXkkZnJvbS5sZW5ndGg7X2krKyl7dmFyIGxpc3RlbmVyPV9BcnJheSRmcm9tW19pXTt0cnl7bGlzdGVuZXIoZSl9Y2F0Y2gocil7bG9nTWVzc2FnZShzb3VyY2Uscil9fX0sdGhpcy5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKHR5cGVzLGNhbGxiYWNrLG9wdGlvbnMsY29udGV4dCl7QXJyYXkuaXNBcnJheSh0eXBlcyl8fCh0eXBlcz1bdHlwZXNdKTtmb3IodmFyIGk9MDtpPHR5cGVzLmxlbmd0aDtpKz0xKXt2YXIgdHlwZT10eXBlc1tpXTt0aGlzLmxpc3RlbmVycy5oYXModHlwZSl8fHRoaXMubGlzdGVuZXJzLnNldCh0eXBlLG5ldyBNYXApLHRoaXMubGlzdGVuZXJzLmdldCh0eXBlKS5zZXQoY2FsbGJhY2ssY2FsbGJhY2suYmluZChjb250ZXh0fHx0aGlzKSl9fSx0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24odHlwZXMsY2FsbGJhY2spe0FycmF5LmlzQXJyYXkodHlwZXMpfHwodHlwZXM9W3R5cGVzXSk7Zm9yKHZhciBpPTA7aTx0eXBlcy5sZW5ndGg7aSs9MSl7dmFyIF90aGlzJGxpc3RlbmVycyRnZXQsdHlwZT10eXBlc1tpXTtudWxsPT09KF90aGlzJGxpc3RlbmVycyRnZXQ9dGhpcy5saXN0ZW5lcnMuZ2V0KHR5cGUpKXx8dm9pZCAwPT09X3RoaXMkbGlzdGVuZXJzJGdldHx8X3RoaXMkbGlzdGVuZXJzJGdldC5kZWxldGUoY2FsbGJhY2spfX19LEFkc01hbmFnZXI9bmV3IEV2ZW50SGFuZGxlcjtBZHNNYW5hZ2VyLnZvbHVtZT0xLEFkc01hbmFnZXIuY29sbGFwc2U9bm9vcEZ1bmMsQWRzTWFuYWdlci5jb25maWd1cmVBZHNNYW5hZ2VyPW5vb3BGdW5jLEFkc01hbmFnZXIuZGVzdHJveT1ub29wRnVuYyxBZHNNYW5hZ2VyLmRpc2NhcmRBZEJyZWFrPW5vb3BGdW5jLEFkc01hbmFnZXIuZXhwYW5kPW5vb3BGdW5jLEFkc01hbmFnZXIuZm9jdXM9bm9vcEZ1bmMsQWRzTWFuYWdlci5nZXRBZFNraXBwYWJsZVN0YXRlPWZ1bmN0aW9uKCl7cmV0dXJuITF9LEFkc01hbmFnZXIuZ2V0Q3VlUG9pbnRzPWZ1bmN0aW9uKCl7cmV0dXJuWzBdfSxBZHNNYW5hZ2VyLmdldEN1cnJlbnRBZD1mdW5jdGlvbigpe3JldHVybiBjdXJyZW50QWR9LEFkc01hbmFnZXIuZ2V0Q3VycmVudEFkQ3VlUG9pbnRzPWZ1bmN0aW9uKCl7cmV0dXJuW119LEFkc01hbmFnZXIuZ2V0UmVtYWluaW5nVGltZT1mdW5jdGlvbigpe3JldHVybiAwfSxBZHNNYW5hZ2VyLmdldFZvbHVtZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZvbHVtZX0sQWRzTWFuYWdlci5pbml0PW5vb3BGdW5jLEFkc01hbmFnZXIuaXNDdXN0b21DbGlja1RyYWNraW5nVXNlZD1mdW5jdGlvbigpe3JldHVybiExfSxBZHNNYW5hZ2VyLmlzQ3VzdG9tUGxheWJhY2tVc2VkPWZ1bmN0aW9uKCl7cmV0dXJuITF9LEFkc01hbmFnZXIucGF1c2U9bm9vcEZ1bmMsQWRzTWFuYWdlci5yZXF1ZXN0TmV4dEFkQnJlYWs9bm9vcEZ1bmMsQWRzTWFuYWdlci5yZXNpemU9bm9vcEZ1bmMsQWRzTWFuYWdlci5yZXN1bWU9bm9vcEZ1bmMsQWRzTWFuYWdlci5zZXRWb2x1bWU9ZnVuY3Rpb24odil7dGhpcy52b2x1bWU9dn0sQWRzTWFuYWdlci5za2lwPW5vb3BGdW5jLEFkc01hbmFnZXIuc3RhcnQ9ZnVuY3Rpb24oKXtmb3IodmFyIF9pMj0wLF9hcnI9W0FkRXZlbnQuVHlwZS5BTExfQURTX0NPTVBMRVRFRCxBZEV2ZW50LlR5cGUuQ09OVEVOVF9SRVNVTUVfUkVRVUVTVEVEXTtfaTI8X2Fyci5sZW5ndGg7X2kyKyspe3ZhciB0eXBlPV9hcnJbX2kyXTt0cnl7dGhpcy5fZGlzcGF0Y2gobmV3IGltYS5BZEV2ZW50KHR5cGUpKX1jYXRjaChlKXtsb2dNZXNzYWdlKHNvdXJjZSxlKX19fSxBZHNNYW5hZ2VyLnN0b3A9bm9vcEZ1bmMsQWRzTWFuYWdlci51cGRhdGVBZHNSZW5kZXJpbmdTZXR0aW5ncz1ub29wRnVuYzt2YXIgbWFuYWdlcj1PYmplY3QuY3JlYXRlKEFkc01hbmFnZXIpLEFkc01hbmFnZXJMb2FkZWRFdmVudD1mdW5jdGlvbih0eXBlLGFkc1JlcXVlc3QsdXNlclJlcXVlc3RDb250ZXh0KXt0aGlzLnR5cGU9dHlwZSx0aGlzLmFkc1JlcXVlc3Q9YWRzUmVxdWVzdCx0aGlzLnVzZXJSZXF1ZXN0Q29udGV4dD11c2VyUmVxdWVzdENvbnRleHR9O0Fkc01hbmFnZXJMb2FkZWRFdmVudC5wcm90b3R5cGU9e2dldEFkc01hbmFnZXI6ZnVuY3Rpb24oKXtyZXR1cm4gbWFuYWdlcn0sZ2V0VXNlclJlcXVlc3RDb250ZXh0KCl7cmV0dXJuIHRoaXMudXNlclJlcXVlc3RDb250ZXh0P3RoaXMudXNlclJlcXVlc3RDb250ZXh0Ont9fX0sQWRzTWFuYWdlckxvYWRlZEV2ZW50LlR5cGU9e0FEU19NQU5BR0VSX0xPQURFRDoiYWRzTWFuYWdlckxvYWRlZCJ9O3ZhciBBZHNMb2FkZXI9RXZlbnRIYW5kbGVyO0Fkc0xvYWRlci5wcm90b3R5cGUuc2V0dGluZ3M9bmV3IEltYVNka1NldHRpbmdzLEFkc0xvYWRlci5wcm90b3R5cGUuY29udGVudENvbXBsZXRlPW5vb3BGdW5jLEFkc0xvYWRlci5wcm90b3R5cGUuZGVzdHJveT1ub29wRnVuYyxBZHNMb2FkZXIucHJvdG90eXBlLmdldFNldHRpbmdzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2V0dGluZ3N9LEFkc0xvYWRlci5wcm90b3R5cGUuZ2V0VmVyc2lvbj1mdW5jdGlvbigpe3JldHVybiIzLjQ1My4wIn0sQWRzTG9hZGVyLnByb3RvdHlwZS5yZXF1ZXN0QWRzPWZ1bmN0aW9uKGFkc1JlcXVlc3QsdXNlclJlcXVlc3RDb250ZXh0KXt2YXIgX3RoaXM9dGhpcztyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKGZ1bmN0aW9uKCl7dmFyIEFEU19NQU5BR0VSX0xPQURFRD1BZHNNYW5hZ2VyTG9hZGVkRXZlbnQuVHlwZS5BRFNfTUFOQUdFUl9MT0FERUQsZXZlbnQ9bmV3IGltYS5BZHNNYW5hZ2VyTG9hZGVkRXZlbnQoQURTX01BTkFHRVJfTE9BREVELGFkc1JlcXVlc3QsdXNlclJlcXVlc3RDb250ZXh0KTtfdGhpcy5fZGlzcGF0Y2goZXZlbnQpfSkpO3ZhciBlPW5ldyBpbWEuQWRFcnJvcigiYWRQbGF5RXJyb3IiLDEyMDUsMTIwNSwiVGhlIGJyb3dzZXIgcHJldmVudGVkIHBsYXliYWNrIGluaXRpYXRlZCB3aXRob3V0IHVzZXIgaW50ZXJhY3Rpb24uIixhZHNSZXF1ZXN0LHVzZXJSZXF1ZXN0Q29udGV4dCk7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKChmdW5jdGlvbigpe190aGlzLl9kaXNwYXRjaChuZXcgaW1hLkFkRXJyb3JFdmVudChlKSl9KSl9O3ZhciBBZHNSZW5kZXJpbmdTZXR0aW5ncz1ub29wRnVuYyxBZHNSZXF1ZXN0PWZ1bmN0aW9uKCl7fTtBZHNSZXF1ZXN0LnByb3RvdHlwZT17c2V0QWRXaWxsQXV0b1BsYXk6bm9vcEZ1bmMsc2V0QWRXaWxsUGxheU11dGVkOm5vb3BGdW5jLHNldENvbnRpbnVvdXNQbGF5YmFjazpub29wRnVuY307dmFyIEFkUG9kSW5mbz1mdW5jdGlvbigpe307QWRQb2RJbmZvLnByb3RvdHlwZT17Z2V0QWRQb3NpdGlvbjpmdW5jdGlvbigpe3JldHVybiAxfSxnZXRJc0J1bXBlcjpmdW5jdGlvbigpe3JldHVybiExfSxnZXRNYXhEdXJhdGlvbjpmdW5jdGlvbigpe3JldHVybi0xfSxnZXRQb2RJbmRleDpmdW5jdGlvbigpe3JldHVybiAxfSxnZXRUaW1lT2Zmc2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGdldFRvdGFsQWRzOmZ1bmN0aW9uKCl7cmV0dXJuIDF9fTt2YXIgVW5pdmVyc2FsQWRJZEluZm89ZnVuY3Rpb24oKXt9O1VuaXZlcnNhbEFkSWRJbmZvLnByb3RvdHlwZS5nZXRBZElkUmVnaXN0cnk9ZnVuY3Rpb24oKXtyZXR1cm4iIn0sVW5pdmVyc2FsQWRJZEluZm8ucHJvdG90eXBlLmdldEFkSXNWYWx1ZT1mdW5jdGlvbigpe3JldHVybiIifTt2YXIgQWQ9ZnVuY3Rpb24oKXt9O0FkLnByb3RvdHlwZT17cGk6bmV3IEFkUG9kSW5mbyxnZXRBZElkOmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldEFkUG9kSW5mbygpe3JldHVybiB0aGlzLnBpfSxnZXRBZFN5c3RlbTpmdW5jdGlvbigpe3JldHVybiIifSxnZXRBZHZlcnRpc2VyTmFtZTpmdW5jdGlvbigpe3JldHVybiIifSxnZXRBcGlGcmFtZXdvcms6ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sZ2V0Q29tcGFuaW9uQWRzOmZ1bmN0aW9uKCl7cmV0dXJuW119LGdldENvbnRlbnRUeXBlOmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldENyZWF0aXZlQWRJZDpmdW5jdGlvbigpe3JldHVybiIifSxnZXREZWFsSWQ6ZnVuY3Rpb24oKXtyZXR1cm4iIn0sZ2V0RGVzY3JpcHRpb246ZnVuY3Rpb24oKXtyZXR1cm4iIn0sZ2V0RHVyYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gOC41fSxnZXRIZWlnaHQ6ZnVuY3Rpb24oKXtyZXR1cm4gMH0sZ2V0TWVkaWFVcmw6ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sZ2V0TWluU3VnZ2VzdGVkRHVyYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4tMn0sZ2V0U2tpcFRpbWVPZmZzZXQ6ZnVuY3Rpb24oKXtyZXR1cm4tMX0sZ2V0U3VydmV5VXJsOmZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9LGdldFRpdGxlOmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldFRyYWZmaWNraW5nUGFyYW1ldGVyc1N0cmluZzpmdW5jdGlvbigpe3JldHVybiIifSxnZXRVaUVsZW1lbnRzOmZ1bmN0aW9uKCl7cmV0dXJuWyIiXX0sZ2V0VW5pdmVyc2FsQWRJZFJlZ2lzdHJ5OmZ1bmN0aW9uKCl7cmV0dXJuInVua25vd24ifSxnZXRVbml2ZXJzYWxBZElkczpmdW5jdGlvbigpe3JldHVybltuZXcgVW5pdmVyc2FsQWRJZEluZm9dfSxnZXRVbml2ZXJzYWxBZElkVmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4idW5rbm93biJ9LGdldFZhc3RNZWRpYUJpdHJhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gMH0sZ2V0VmFzdE1lZGlhSGVpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGdldFZhc3RNZWRpYVdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGdldFdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGdldFdyYXBwZXJBZElkczpmdW5jdGlvbigpe3JldHVyblsiIl19LGdldFdyYXBwZXJBZFN5c3RlbXM6ZnVuY3Rpb24oKXtyZXR1cm5bIiJdfSxnZXRXcmFwcGVyQ3JlYXRpdmVJZHM6ZnVuY3Rpb24oKXtyZXR1cm5bIiJdfSxpc0xpbmVhcjpmdW5jdGlvbigpe3JldHVybiEwfSxpc1NraXBwYWJsZTooKT0+ITB9O3ZhciBDb21wYW5pb25BZD1mdW5jdGlvbigpe307Q29tcGFuaW9uQWQucHJvdG90eXBlPXtnZXRBZFNsb3RJZDpmdW5jdGlvbigpe3JldHVybiIifSxnZXRDb250ZW50OmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldENvbnRlbnRUeXBlOmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldEhlaWdodDpmdW5jdGlvbigpe3JldHVybiAxfSxnZXRXaWR0aDpmdW5jdGlvbigpe3JldHVybiAxfX07dmFyIEFkRXJyb3I9ZnVuY3Rpb24odHlwZSxjb2RlLHZhc3QsbWVzc2FnZSxhZHNSZXF1ZXN0LHVzZXJSZXF1ZXN0Q29udGV4dCl7dGhpcy5lcnJvckNvZGU9Y29kZSx0aGlzLm1lc3NhZ2U9bWVzc2FnZSx0aGlzLnR5cGU9dHlwZSx0aGlzLmFkc1JlcXVlc3Q9YWRzUmVxdWVzdCx0aGlzLnVzZXJSZXF1ZXN0Q29udGV4dD11c2VyUmVxdWVzdENvbnRleHQsdGhpcy5nZXRFcnJvckNvZGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcnJvckNvZGV9LHRoaXMuZ2V0SW5uZXJFcnJvcj1mdW5jdGlvbigpe3JldHVybiBudWxsfSx0aGlzLmdldE1lc3NhZ2U9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tZXNzYWdlfSx0aGlzLmdldFR5cGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50eXBlfSx0aGlzLmdldFZhc3RFcnJvckNvZGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YXN0RXJyb3JDb2RlfSx0aGlzLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIkFkRXJyb3IgIi5jb25jYXQodGhpcy5lcnJvckNvZGUsIjogIikuY29uY2F0KHRoaXMubWVzc2FnZSl9fTtBZEVycm9yLkVycm9yQ29kZT17fSxBZEVycm9yLlR5cGU9e307dmFyIGN1cnJlbnRBZD1mdW5jdGlvbigpe3RyeXtmb3IodmFyIF9pMz0wLF9PYmplY3QkdmFsdWVzPU9iamVjdC52YWx1ZXMod2luZG93LnZpZGlibGUuX2dldENvbnRleHRzKCkpO19pMzxfT2JqZWN0JHZhbHVlcy5sZW5ndGg7X2kzKyspe3ZhciBfY3R4JGdldFBsYXllcixfY3R4JGdldFBsYXllciRkaXY7aWYobnVsbCE9PShfY3R4JGdldFBsYXllcj1fT2JqZWN0JHZhbHVlc1tfaTNdLmdldFBsYXllcigpKSYmdm9pZCAwIT09X2N0eCRnZXRQbGF5ZXImJm51bGwhPT0oX2N0eCRnZXRQbGF5ZXIkZGl2PV9jdHgkZ2V0UGxheWVyLmRpdikmJnZvaWQgMCE9PV9jdHgkZ2V0UGxheWVyJGRpdiYmX2N0eCRnZXRQbGF5ZXIkZGl2LmlubmVySFRNTC5pbmNsdWRlcygid3d3LmVuZ2FkZ2V0LmNvbSIpKXJldHVybiEwfX1jYXRjaChlKXt9cmV0dXJuITF9KCk/dm9pZCAwOm5ldyBBZCxBZEV2ZW50PWZ1bmN0aW9uKHR5cGUpe3RoaXMudHlwZT10eXBlfTtBZEV2ZW50LnByb3RvdHlwZT17Z2V0QWQ6ZnVuY3Rpb24oKXtyZXR1cm4gY3VycmVudEFkfSxnZXRBZERhdGE6ZnVuY3Rpb24oKXt9fSxBZEV2ZW50LlR5cGU9e0FEX0JSRUFLX1JFQURZOiJhZEJyZWFrUmVhZHkiLEFEX0JVRkZFUklORzoiYWRCdWZmZXJpbmciLEFEX0NBTl9QTEFZOiJhZENhblBsYXkiLEFEX01FVEFEQVRBOiJhZE1ldGFkYXRhIixBRF9QUk9HUkVTUzoiYWRQcm9ncmVzcyIsQUxMX0FEU19DT01QTEVURUQ6ImFsbEFkc0NvbXBsZXRlZCIsQ0xJQ0s6ImNsaWNrIixDT01QTEVURToiY29tcGxldGUiLENPTlRFTlRfUEFVU0VfUkVRVUVTVEVEOiJjb250ZW50UGF1c2VSZXF1ZXN0ZWQiLENPTlRFTlRfUkVTVU1FX1JFUVVFU1RFRDoiY29udGVudFJlc3VtZVJlcXVlc3RlZCIsRFVSQVRJT05fQ0hBTkdFOiJkdXJhdGlvbkNoYW5nZSIsRVhQQU5ERURfQ0hBTkdFRDoiZXhwYW5kZWRDaGFuZ2VkIixGSVJTVF9RVUFSVElMRToiZmlyc3RRdWFydGlsZSIsSU1QUkVTU0lPTjoiaW1wcmVzc2lvbiIsSU5URVJBQ1RJT046ImludGVyYWN0aW9uIixMSU5FQVJfQ0hBTkdFOiJsaW5lYXJDaGFuZ2UiLExJTkVBUl9DSEFOR0VEOiJsaW5lYXJDaGFuZ2VkIixMT0FERUQ6ImxvYWRlZCIsTE9HOiJsb2ciLE1JRFBPSU5UOiJtaWRwb2ludCIsUEFVU0VEOiJwYXVzZSIsUkVTVU1FRDoicmVzdW1lIixTS0lQUEFCTEVfU1RBVEVfQ0hBTkdFRDoic2tpcHBhYmxlU3RhdGVDaGFuZ2VkIixTS0lQUEVEOiJza2lwIixTVEFSVEVEOiJzdGFydCIsVEhJUkRfUVVBUlRJTEU6InRoaXJkUXVhcnRpbGUiLFVTRVJfQ0xPU0U6InVzZXJDbG9zZSIsVklERU9fQ0xJQ0tFRDoidmlkZW9DbGlja2VkIixWSURFT19JQ09OX0NMSUNLRUQ6InZpZGVvSWNvbkNsaWNrZWQiLFZJRVdBQkxFX0lNUFJFU1NJT046InZpZXdhYmxlX2ltcHJlc3Npb24iLFZPTFVNRV9DSEFOR0VEOiJ2b2x1bWVDaGFuZ2UiLFZPTFVNRV9NVVRFRDoibXV0ZSJ9O3ZhciBBZEVycm9yRXZlbnQ9ZnVuY3Rpb24oZXJyb3Ipe3RoaXMuZXJyb3I9ZXJyb3IsdGhpcy50eXBlPSJhZEVycm9yIix0aGlzLmdldEVycm9yPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXJyb3J9LHRoaXMuZ2V0VXNlclJlcXVlc3RDb250ZXh0PWZ1bmN0aW9uKCl7dmFyIF90aGlzJGVycm9yO3JldHVybiBudWxsIT09KF90aGlzJGVycm9yPXRoaXMuZXJyb3IpJiZ2b2lkIDAhPT1fdGhpcyRlcnJvciYmX3RoaXMkZXJyb3IudXNlclJlcXVlc3RDb250ZXh0P3RoaXMuZXJyb3IudXNlclJlcXVlc3RDb250ZXh0Ont9fX07QWRFcnJvckV2ZW50LlR5cGU9e0FEX0VSUk9SOiJhZEVycm9yIn07dmFyIEN1c3RvbUNvbnRlbnRMb2FkZWRFdmVudD1mdW5jdGlvbigpe307Q3VzdG9tQ29udGVudExvYWRlZEV2ZW50LlR5cGU9e0NVU1RPTV9DT05URU5UX0xPQURFRDoiZGVwcmVjYXRlZC1ldmVudCJ9O3ZhciBDb21wYW5pb25BZFNlbGVjdGlvblNldHRpbmdzPWZ1bmN0aW9uKCl7fTtDb21wYW5pb25BZFNlbGVjdGlvblNldHRpbmdzLkNyZWF0aXZlVHlwZT17QUxMOiJBbGwiLEZMQVNIOiJGbGFzaCIsSU1BR0U6IkltYWdlIn0sQ29tcGFuaW9uQWRTZWxlY3Rpb25TZXR0aW5ncy5SZXNvdXJjZVR5cGU9e0FMTDoiQWxsIixIVE1MOiJIdG1sIixJRlJBTUU6IklGcmFtZSIsU1RBVElDOiJTdGF0aWMifSxDb21wYW5pb25BZFNlbGVjdGlvblNldHRpbmdzLlNpemVDcml0ZXJpYT17SUdOT1JFOiJJZ25vcmVTaXplIixTRUxFQ1RfRVhBQ1RfTUFUQ0g6IlNlbGVjdEV4YWN0TWF0Y2giLFNFTEVDVF9ORUFSX01BVENIOiJTZWxlY3ROZWFyTWF0Y2gifTt2YXIgQWRDdWVQb2ludHM9ZnVuY3Rpb24oKXt9O0FkQ3VlUG9pbnRzLnByb3RvdHlwZT17Z2V0Q3VlUG9pbnRzOmZ1bmN0aW9uKCl7cmV0dXJuW119LGdldEFkSWRSZWdpc3RyeTpmdW5jdGlvbigpe3JldHVybiIifSxnZXRBZElkVmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4iIn19O3ZhciBBZFByb2dyZXNzRGF0YT1ub29wRnVuYztPYmplY3QuYXNzaWduKGltYSx7QWRDdWVQb2ludHM6QWRDdWVQb2ludHMsQWREaXNwbGF5Q29udGFpbmVyOkFkRGlzcGxheUNvbnRhaW5lcixBZEVycm9yOkFkRXJyb3IsQWRFcnJvckV2ZW50OkFkRXJyb3JFdmVudCxBZEV2ZW50OkFkRXZlbnQsQWRQb2RJbmZvOkFkUG9kSW5mbyxBZFByb2dyZXNzRGF0YTpBZFByb2dyZXNzRGF0YSxBZHNMb2FkZXI6QWRzTG9hZGVyLEFkc01hbmFnZXI6bWFuYWdlcixBZHNNYW5hZ2VyTG9hZGVkRXZlbnQ6QWRzTWFuYWdlckxvYWRlZEV2ZW50LEFkc1JlbmRlcmluZ1NldHRpbmdzOkFkc1JlbmRlcmluZ1NldHRpbmdzLEFkc1JlcXVlc3Q6QWRzUmVxdWVzdCxDb21wYW5pb25BZDpDb21wYW5pb25BZCxDb21wYW5pb25BZFNlbGVjdGlvblNldHRpbmdzOkNvbXBhbmlvbkFkU2VsZWN0aW9uU2V0dGluZ3MsQ3VzdG9tQ29udGVudExvYWRlZEV2ZW50OkN1c3RvbUNvbnRlbnRMb2FkZWRFdmVudCxncHRQcm94eUluc3RhbmNlOnt9LEltYVNka1NldHRpbmdzOkltYVNka1NldHRpbmdzLE9taWRBY2Nlc3NNb2RlOntET01BSU46ImRvbWFpbiIsRlVMTDoiZnVsbCIsTElNSVRFRDoibGltaXRlZCJ9LE9taWRWZXJpZmljYXRpb25WZW5kb3I6ezE6Ik9USEVSIiwyOiJNT0FUIiwzOiJET1VCTEVWRVJJRlkiLDQ6IklOVEVHUkFMX0FEX1NDSUVOQ0UiLDU6IlBJWEVMQVRFIiw2OiJOSUVMU0VOIiw3OiJDT01TQ09SRSIsODoiTUVFVFJJQ1MiLDk6IkdPT0dMRSIsT1RIRVI6MSxNT0FUOjIsRE9VQkxFVkVSSUZZOjMsSU5URUdSQUxfQURfU0NJRU5DRTo0LFBJWEVMQVRFOjUsTklFTFNFTjo2LENPTVNDT1JFOjcsTUVFVFJJQ1M6OCxHT09HTEU6OX0sc2V0dGluZ3M6bmV3IEltYVNka1NldHRpbmdzLFVpRWxlbWVudHM6e0FEX0FUVFJJQlVUSU9OOiJhZEF0dHJpYnV0aW9uIixDT1VOVERPV046ImNvdW50ZG93biJ9LFVuaXZlcnNhbEFkSWRJbmZvOlVuaXZlcnNhbEFkSWRJbmZvLFZFUlNJT046IjMuNDUzLjAiLFZpZXdNb2RlOntGVUxMU0NSRUVOOiJmdWxsc2NyZWVuIixOT1JNQUw6Im5vcm1hbCJ9fSksd2luZG93Lmdvb2dsZXx8KHdpbmRvdy5nb29nbGU9e30pLG51bGwhPT0oX3dpbmRvdyRnb29nbGUkaW1hPXdpbmRvdy5nb29nbGUuaW1hKSYmdm9pZCAwIT09X3dpbmRvdyRnb29nbGUkaW1hJiZfd2luZG93JGdvb2dsZSRpbWEuZGFpJiYoaW1hLmRhaT13aW5kb3cuZ29vZ2xlLmltYS5kYWkpLHdpbmRvdy5nb29nbGUuaW1hPWltYSxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD1zb3VyY2UucnVsZVRleHR8fCIiO2lmKHNvdXJjZS5kb21haW5OYW1lKXt2YXIgcnVsZVN0YXJ0SW5kZXgsQUdfU0NSSVBUTEVUX01BUktFUj0iIyUjLy8iLFVCT19TQ1JJUFRMRVRfTUFSS0VSPSIjIytqcyI7c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKEFHX1NDUklQVExFVF9NQVJLRVIpP3J1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKEFHX1NDUklQVExFVF9NQVJLRVIpOnNvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhVQk9fU0NSSVBUTEVUX01BUktFUikmJihydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihVQk9fU0NSSVBUTEVUX01BUktFUikpO3ZhciBydWxlUGFydD1zb3VyY2UucnVsZVRleHQuc2xpY2UocnVsZVN0YXJ0SW5kZXgpO3ByZWZpeD0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpLmNvbmNhdChydWxlUGFydCl9bG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6Imdvb2dsZS1pbWEzIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBsb2dNZXNzYWdlKHNvdXJjZSxtZXNzYWdlKXt2YXIgZm9yY2VkPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0sY29udmVydE1lc3NhZ2VUb1N0cmluZz0hKGFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdKXx8YXJndW1lbnRzWzNdLG5hbWU9c291cmNlLm5hbWUsdmVyYm9zZT1zb3VyY2UudmVyYm9zZTtpZihmb3JjZWR8fHZlcmJvc2Upe3ZhciBuYXRpdmVDb25zb2xlPWNvbnNvbGUubG9nO2NvbnZlcnRNZXNzYWdlVG9TdHJpbmc/bmF0aXZlQ29uc29sZSgiIi5jb25jYXQobmFtZSwiOiAiKS5jb25jYXQobWVzc2FnZSkpOm5hdGl2ZUNvbnNvbGUoIiIuY29uY2F0KG5hbWUsIjoiKSxtZXNzYWdlKX19Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciBfd2luZG93JGdvb2dsZSRpbWEsaW1hPXt9LEFkRGlzcGxheUNvbnRhaW5lcj1mdW5jdGlvbihjb250YWluZXJFbGVtZW50KXt2YXIgZGl2RWxlbWVudD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtkaXZFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpLGRpdkVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoInZpc2liaWxpdHkiLCJjb2xsYXBzZSIsImltcG9ydGFudCIpLGNvbnRhaW5lckVsZW1lbnQmJmNvbnRhaW5lckVsZW1lbnQuYXBwZW5kQ2hpbGQoZGl2RWxlbWVudCl9O0FkRGlzcGxheUNvbnRhaW5lci5wcm90b3R5cGUuZGVzdHJveT1ub29wRnVuYyxBZERpc3BsYXlDb250YWluZXIucHJvdG90eXBlLmluaXRpYWxpemU9bm9vcEZ1bmM7dmFyIEltYVNka1NldHRpbmdzPWZ1bmN0aW9uKCl7fTtJbWFTZGtTZXR0aW5ncy5Db21wYW5pb25CYWNrZmlsbE1vZGU9e0FMV0FZUzoiYWx3YXlzIixPTl9NQVNURVJfQUQ6Im9uX21hc3Rlcl9hZCJ9LEltYVNka1NldHRpbmdzLlZwYWlkTW9kZT17RElTQUJMRUQ6MCxFTkFCTEVEOjEsSU5TRUNVUkU6Mn0sSW1hU2RrU2V0dGluZ3MucHJvdG90eXBlPXtjOiEwLGY6e30saTohMSxsOiIiLHA6IiIscjowLHQ6IiIsdjoiIixnZXRDb21wYW5pb25CYWNrZmlsbDpub29wRnVuYyxnZXREaXNhYmxlQ3VzdG9tUGxheWJhY2tGb3JJT1MxMFBsdXMoKXtyZXR1cm4gdGhpcy5pfSxnZXREaXNhYmxlZEZsYXNoQWRzOmZ1bmN0aW9uKCl7cmV0dXJuITB9LGdldEZlYXR1cmVGbGFncygpe3JldHVybiB0aGlzLmZ9LGdldExvY2FsZSgpe3JldHVybiB0aGlzLmx9LGdldE51bVJlZGlyZWN0cygpe3JldHVybiB0aGlzLnJ9LGdldFBsYXllclR5cGUoKXtyZXR1cm4gdGhpcy50fSxnZXRQbGF5ZXJWZXJzaW9uKCl7cmV0dXJuIHRoaXMudn0sZ2V0UHBpZCgpe3JldHVybiB0aGlzLnB9LGdldFZwYWlkTW9kZSgpe3JldHVybiB0aGlzLkN9LGlzQ29va2llc0VuYWJsZWQoKXtyZXR1cm4gdGhpcy5jfSxpc1ZwYWlkQWRhcHRlcigpe3JldHVybiB0aGlzLk19LHNldENvbXBhbmlvbkJhY2tmaWxsOm5vb3BGdW5jLHNldEF1dG9QbGF5QWRCcmVha3MoYSl7dGhpcy5LPWF9LHNldENvb2tpZXNFbmFibGVkKGMpe3RoaXMuYz0hIWN9LHNldERpc2FibGVDdXN0b21QbGF5YmFja0ZvcklPUzEwUGx1cyhpKXt0aGlzLmk9ISFpfSxzZXREaXNhYmxlRmxhc2hBZHM6bm9vcEZ1bmMsc2V0RmVhdHVyZUZsYWdzKGYpe3RoaXMuZj0hIWZ9LHNldElzVnBhaWRBZGFwdGVyKGEpe3RoaXMuTT1hfSxzZXRMb2NhbGUobCl7dGhpcy5sPSEhbH0sc2V0TnVtUmVkaXJlY3RzKHIpe3RoaXMucj0hIXJ9LHNldFBhZ2VDb3JyZWxhdG9yKGEpe3RoaXMuUj1hfSxzZXRQbGF5ZXJUeXBlKHQpe3RoaXMudD0hIXR9LHNldFBsYXllclZlcnNpb24odil7dGhpcy52PSEhdn0sc2V0UHBpZChwKXt0aGlzLnA9ISFwfSxzZXRWcGFpZE1vZGUoYSl7dGhpcy5DPWF9LHNldFNlc3Npb25JZDpub29wRnVuYyxzZXRTdHJlYW1Db3JyZWxhdG9yOm5vb3BGdW5jLHNldFZwYWlkQWxsb3dlZDpub29wRnVuYyxDb21wYW5pb25CYWNrZmlsbE1vZGU6e0FMV0FZUzoiYWx3YXlzIixPTl9NQVNURVJfQUQ6Im9uX21hc3Rlcl9hZCJ9LFZwYWlkTW9kZTp7RElTQUJMRUQ6MCxFTkFCTEVEOjEsSU5TRUNVUkU6Mn19O3ZhciBFdmVudEhhbmRsZXI9ZnVuY3Rpb24oKXt0aGlzLmxpc3RlbmVycz1uZXcgTWFwLHRoaXMuX2Rpc3BhdGNoPWZ1bmN0aW9uKGUpe3ZhciBsaXN0ZW5lcnM9dGhpcy5saXN0ZW5lcnMuZ2V0KGUudHlwZSk7bGlzdGVuZXJzPWxpc3RlbmVycz9saXN0ZW5lcnMudmFsdWVzKCk6W107Zm9yKHZhciBfaT0wLF9BcnJheSRmcm9tPUFycmF5LmZyb20obGlzdGVuZXJzKTtfaTxfQXJyYXkkZnJvbS5sZW5ndGg7X2krKyl7dmFyIGxpc3RlbmVyPV9BcnJheSRmcm9tW19pXTt0cnl7bGlzdGVuZXIoZSl9Y2F0Y2gocil7bG9nTWVzc2FnZShzb3VyY2Uscil9fX0sdGhpcy5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKHR5cGVzLGNhbGxiYWNrLG9wdGlvbnMsY29udGV4dCl7QXJyYXkuaXNBcnJheSh0eXBlcyl8fCh0eXBlcz1bdHlwZXNdKTtmb3IodmFyIGk9MDtpPHR5cGVzLmxlbmd0aDtpKz0xKXt2YXIgdHlwZT10eXBlc1tpXTt0aGlzLmxpc3RlbmVycy5oYXModHlwZSl8fHRoaXMubGlzdGVuZXJzLnNldCh0eXBlLG5ldyBNYXApLHRoaXMubGlzdGVuZXJzLmdldCh0eXBlKS5zZXQoY2FsbGJhY2ssY2FsbGJhY2suYmluZChjb250ZXh0fHx0aGlzKSl9fSx0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24odHlwZXMsY2FsbGJhY2spe0FycmF5LmlzQXJyYXkodHlwZXMpfHwodHlwZXM9W3R5cGVzXSk7Zm9yKHZhciBpPTA7aTx0eXBlcy5sZW5ndGg7aSs9MSl7dmFyIF90aGlzJGxpc3RlbmVycyRnZXQsdHlwZT10eXBlc1tpXTtudWxsPT09KF90aGlzJGxpc3RlbmVycyRnZXQ9dGhpcy5saXN0ZW5lcnMuZ2V0KHR5cGUpKXx8dm9pZCAwPT09X3RoaXMkbGlzdGVuZXJzJGdldHx8X3RoaXMkbGlzdGVuZXJzJGdldC5kZWxldGUoY2FsbGJhY2spfX19LEFkc01hbmFnZXI9bmV3IEV2ZW50SGFuZGxlcjtBZHNNYW5hZ2VyLnZvbHVtZT0xLEFkc01hbmFnZXIuY29sbGFwc2U9bm9vcEZ1bmMsQWRzTWFuYWdlci5jb25maWd1cmVBZHNNYW5hZ2VyPW5vb3BGdW5jLEFkc01hbmFnZXIuZGVzdHJveT1ub29wRnVuYyxBZHNNYW5hZ2VyLmRpc2NhcmRBZEJyZWFrPW5vb3BGdW5jLEFkc01hbmFnZXIuZXhwYW5kPW5vb3BGdW5jLEFkc01hbmFnZXIuZm9jdXM9bm9vcEZ1bmMsQWRzTWFuYWdlci5nZXRBZFNraXBwYWJsZVN0YXRlPWZ1bmN0aW9uKCl7cmV0dXJuITF9LEFkc01hbmFnZXIuZ2V0Q3VlUG9pbnRzPWZ1bmN0aW9uKCl7cmV0dXJuWzBdfSxBZHNNYW5hZ2VyLmdldEN1cnJlbnRBZD1mdW5jdGlvbigpe3JldHVybiBjdXJyZW50QWR9LEFkc01hbmFnZXIuZ2V0Q3VycmVudEFkQ3VlUG9pbnRzPWZ1bmN0aW9uKCl7cmV0dXJuW119LEFkc01hbmFnZXIuZ2V0UmVtYWluaW5nVGltZT1mdW5jdGlvbigpe3JldHVybiAwfSxBZHNNYW5hZ2VyLmdldFZvbHVtZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZvbHVtZX0sQWRzTWFuYWdlci5pbml0PW5vb3BGdW5jLEFkc01hbmFnZXIuaXNDdXN0b21DbGlja1RyYWNraW5nVXNlZD1mdW5jdGlvbigpe3JldHVybiExfSxBZHNNYW5hZ2VyLmlzQ3VzdG9tUGxheWJhY2tVc2VkPWZ1bmN0aW9uKCl7cmV0dXJuITF9LEFkc01hbmFnZXIucGF1c2U9bm9vcEZ1bmMsQWRzTWFuYWdlci5yZXF1ZXN0TmV4dEFkQnJlYWs9bm9vcEZ1bmMsQWRzTWFuYWdlci5yZXNpemU9bm9vcEZ1bmMsQWRzTWFuYWdlci5yZXN1bWU9bm9vcEZ1bmMsQWRzTWFuYWdlci5zZXRWb2x1bWU9ZnVuY3Rpb24odil7dGhpcy52b2x1bWU9dn0sQWRzTWFuYWdlci5za2lwPW5vb3BGdW5jLEFkc01hbmFnZXIuc3RhcnQ9ZnVuY3Rpb24oKXtmb3IodmFyIF9pMj0wLF9hcnI9W0FkRXZlbnQuVHlwZS5BTExfQURTX0NPTVBMRVRFRCxBZEV2ZW50LlR5cGUuQ09OVEVOVF9SRVNVTUVfUkVRVUVTVEVEXTtfaTI8X2Fyci5sZW5ndGg7X2kyKyspe3ZhciB0eXBlPV9hcnJbX2kyXTt0cnl7dGhpcy5fZGlzcGF0Y2gobmV3IGltYS5BZEV2ZW50KHR5cGUpKX1jYXRjaChlKXtsb2dNZXNzYWdlKHNvdXJjZSxlKX19fSxBZHNNYW5hZ2VyLnN0b3A9bm9vcEZ1bmMsQWRzTWFuYWdlci51cGRhdGVBZHNSZW5kZXJpbmdTZXR0aW5ncz1ub29wRnVuYzt2YXIgbWFuYWdlcj1PYmplY3QuY3JlYXRlKEFkc01hbmFnZXIpLEFkc01hbmFnZXJMb2FkZWRFdmVudD1mdW5jdGlvbih0eXBlLGFkc1JlcXVlc3QsdXNlclJlcXVlc3RDb250ZXh0KXt0aGlzLnR5cGU9dHlwZSx0aGlzLmFkc1JlcXVlc3Q9YWRzUmVxdWVzdCx0aGlzLnVzZXJSZXF1ZXN0Q29udGV4dD11c2VyUmVxdWVzdENvbnRleHR9O0Fkc01hbmFnZXJMb2FkZWRFdmVudC5wcm90b3R5cGU9e2dldEFkc01hbmFnZXI6ZnVuY3Rpb24oKXtyZXR1cm4gbWFuYWdlcn0sZ2V0VXNlclJlcXVlc3RDb250ZXh0KCl7cmV0dXJuIHRoaXMudXNlclJlcXVlc3RDb250ZXh0P3RoaXMudXNlclJlcXVlc3RDb250ZXh0Ont9fX0sQWRzTWFuYWdlckxvYWRlZEV2ZW50LlR5cGU9e0FEU19NQU5BR0VSX0xPQURFRDoiYWRzTWFuYWdlckxvYWRlZCJ9O3ZhciBBZHNMb2FkZXI9RXZlbnRIYW5kbGVyO0Fkc0xvYWRlci5wcm90b3R5cGUuc2V0dGluZ3M9bmV3IEltYVNka1NldHRpbmdzLEFkc0xvYWRlci5wcm90b3R5cGUuY29udGVudENvbXBsZXRlPW5vb3BGdW5jLEFkc0xvYWRlci5wcm90b3R5cGUuZGVzdHJveT1ub29wRnVuYyxBZHNMb2FkZXIucHJvdG90eXBlLmdldFNldHRpbmdzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2V0dGluZ3N9LEFkc0xvYWRlci5wcm90b3R5cGUuZ2V0VmVyc2lvbj1mdW5jdGlvbigpe3JldHVybiIzLjQ1My4wIn0sQWRzTG9hZGVyLnByb3RvdHlwZS5yZXF1ZXN0QWRzPWZ1bmN0aW9uKGFkc1JlcXVlc3QsdXNlclJlcXVlc3RDb250ZXh0KXt2YXIgX3RoaXM9dGhpcztyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKGZ1bmN0aW9uKCl7dmFyIEFEU19NQU5BR0VSX0xPQURFRD1BZHNNYW5hZ2VyTG9hZGVkRXZlbnQuVHlwZS5BRFNfTUFOQUdFUl9MT0FERUQsZXZlbnQ9bmV3IGltYS5BZHNNYW5hZ2VyTG9hZGVkRXZlbnQoQURTX01BTkFHRVJfTE9BREVELGFkc1JlcXVlc3QsdXNlclJlcXVlc3RDb250ZXh0KTtfdGhpcy5fZGlzcGF0Y2goZXZlbnQpfSkpO3ZhciBlPW5ldyBpbWEuQWRFcnJvcigiYWRQbGF5RXJyb3IiLDEyMDUsMTIwNSwiVGhlIGJyb3dzZXIgcHJldmVudGVkIHBsYXliYWNrIGluaXRpYXRlZCB3aXRob3V0IHVzZXIgaW50ZXJhY3Rpb24uIixhZHNSZXF1ZXN0LHVzZXJSZXF1ZXN0Q29udGV4dCk7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKChmdW5jdGlvbigpe190aGlzLl9kaXNwYXRjaChuZXcgaW1hLkFkRXJyb3JFdmVudChlKSl9KSl9O3ZhciBBZHNSZW5kZXJpbmdTZXR0aW5ncz1ub29wRnVuYyxBZHNSZXF1ZXN0PWZ1bmN0aW9uKCl7fTtBZHNSZXF1ZXN0LnByb3RvdHlwZT17c2V0QWRXaWxsQXV0b1BsYXk6bm9vcEZ1bmMsc2V0QWRXaWxsUGxheU11dGVkOm5vb3BGdW5jLHNldENvbnRpbnVvdXNQbGF5YmFjazpub29wRnVuY307dmFyIEFkUG9kSW5mbz1mdW5jdGlvbigpe307QWRQb2RJbmZvLnByb3RvdHlwZT17Z2V0QWRQb3NpdGlvbjpmdW5jdGlvbigpe3JldHVybiAxfSxnZXRJc0J1bXBlcjpmdW5jdGlvbigpe3JldHVybiExfSxnZXRNYXhEdXJhdGlvbjpmdW5jdGlvbigpe3JldHVybi0xfSxnZXRQb2RJbmRleDpmdW5jdGlvbigpe3JldHVybiAxfSxnZXRUaW1lT2Zmc2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGdldFRvdGFsQWRzOmZ1bmN0aW9uKCl7cmV0dXJuIDF9fTt2YXIgVW5pdmVyc2FsQWRJZEluZm89ZnVuY3Rpb24oKXt9O1VuaXZlcnNhbEFkSWRJbmZvLnByb3RvdHlwZS5nZXRBZElkUmVnaXN0cnk9ZnVuY3Rpb24oKXtyZXR1cm4iIn0sVW5pdmVyc2FsQWRJZEluZm8ucHJvdG90eXBlLmdldEFkSXNWYWx1ZT1mdW5jdGlvbigpe3JldHVybiIifTt2YXIgQWQ9ZnVuY3Rpb24oKXt9O0FkLnByb3RvdHlwZT17cGk6bmV3IEFkUG9kSW5mbyxnZXRBZElkOmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldEFkUG9kSW5mbygpe3JldHVybiB0aGlzLnBpfSxnZXRBZFN5c3RlbTpmdW5jdGlvbigpe3JldHVybiIifSxnZXRBZHZlcnRpc2VyTmFtZTpmdW5jdGlvbigpe3JldHVybiIifSxnZXRBcGlGcmFtZXdvcms6ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sZ2V0Q29tcGFuaW9uQWRzOmZ1bmN0aW9uKCl7cmV0dXJuW119LGdldENvbnRlbnRUeXBlOmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldENyZWF0aXZlQWRJZDpmdW5jdGlvbigpe3JldHVybiIifSxnZXREZWFsSWQ6ZnVuY3Rpb24oKXtyZXR1cm4iIn0sZ2V0RGVzY3JpcHRpb246ZnVuY3Rpb24oKXtyZXR1cm4iIn0sZ2V0RHVyYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gOC41fSxnZXRIZWlnaHQ6ZnVuY3Rpb24oKXtyZXR1cm4gMH0sZ2V0TWVkaWFVcmw6ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sZ2V0TWluU3VnZ2VzdGVkRHVyYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4tMn0sZ2V0U2tpcFRpbWVPZmZzZXQ6ZnVuY3Rpb24oKXtyZXR1cm4tMX0sZ2V0U3VydmV5VXJsOmZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9LGdldFRpdGxlOmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldFRyYWZmaWNraW5nUGFyYW1ldGVyc1N0cmluZzpmdW5jdGlvbigpe3JldHVybiIifSxnZXRVaUVsZW1lbnRzOmZ1bmN0aW9uKCl7cmV0dXJuWyIiXX0sZ2V0VW5pdmVyc2FsQWRJZFJlZ2lzdHJ5OmZ1bmN0aW9uKCl7cmV0dXJuInVua25vd24ifSxnZXRVbml2ZXJzYWxBZElkczpmdW5jdGlvbigpe3JldHVybltuZXcgVW5pdmVyc2FsQWRJZEluZm9dfSxnZXRVbml2ZXJzYWxBZElkVmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4idW5rbm93biJ9LGdldFZhc3RNZWRpYUJpdHJhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gMH0sZ2V0VmFzdE1lZGlhSGVpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGdldFZhc3RNZWRpYVdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGdldFdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGdldFdyYXBwZXJBZElkczpmdW5jdGlvbigpe3JldHVyblsiIl19LGdldFdyYXBwZXJBZFN5c3RlbXM6ZnVuY3Rpb24oKXtyZXR1cm5bIiJdfSxnZXRXcmFwcGVyQ3JlYXRpdmVJZHM6ZnVuY3Rpb24oKXtyZXR1cm5bIiJdfSxpc0xpbmVhcjpmdW5jdGlvbigpe3JldHVybiEwfSxpc1NraXBwYWJsZTooKT0+ITB9O3ZhciBDb21wYW5pb25BZD1mdW5jdGlvbigpe307Q29tcGFuaW9uQWQucHJvdG90eXBlPXtnZXRBZFNsb3RJZDpmdW5jdGlvbigpe3JldHVybiIifSxnZXRDb250ZW50OmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldENvbnRlbnRUeXBlOmZ1bmN0aW9uKCl7cmV0dXJuIiJ9LGdldEhlaWdodDpmdW5jdGlvbigpe3JldHVybiAxfSxnZXRXaWR0aDpmdW5jdGlvbigpe3JldHVybiAxfX07dmFyIEFkRXJyb3I9ZnVuY3Rpb24odHlwZSxjb2RlLHZhc3QsbWVzc2FnZSxhZHNSZXF1ZXN0LHVzZXJSZXF1ZXN0Q29udGV4dCl7dGhpcy5lcnJvckNvZGU9Y29kZSx0aGlzLm1lc3NhZ2U9bWVzc2FnZSx0aGlzLnR5cGU9dHlwZSx0aGlzLmFkc1JlcXVlc3Q9YWRzUmVxdWVzdCx0aGlzLnVzZXJSZXF1ZXN0Q29udGV4dD11c2VyUmVxdWVzdENvbnRleHQsdGhpcy5nZXRFcnJvckNvZGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcnJvckNvZGV9LHRoaXMuZ2V0SW5uZXJFcnJvcj1mdW5jdGlvbigpe3JldHVybiBudWxsfSx0aGlzLmdldE1lc3NhZ2U9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tZXNzYWdlfSx0aGlzLmdldFR5cGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50eXBlfSx0aGlzLmdldFZhc3RFcnJvckNvZGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YXN0RXJyb3JDb2RlfSx0aGlzLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIkFkRXJyb3IgIi5jb25jYXQodGhpcy5lcnJvckNvZGUsIjogIikuY29uY2F0KHRoaXMubWVzc2FnZSl9fTtBZEVycm9yLkVycm9yQ29kZT17fSxBZEVycm9yLlR5cGU9e307dmFyIGN1cnJlbnRBZD1mdW5jdGlvbigpe3RyeXtmb3IodmFyIF9pMz0wLF9PYmplY3QkdmFsdWVzPU9iamVjdC52YWx1ZXMod2luZG93LnZpZGlibGUuX2dldENvbnRleHRzKCkpO19pMzxfT2JqZWN0JHZhbHVlcy5sZW5ndGg7X2kzKyspe3ZhciBfY3R4JGdldFBsYXllcixfY3R4JGdldFBsYXllciRkaXY7aWYobnVsbCE9PShfY3R4JGdldFBsYXllcj1fT2JqZWN0JHZhbHVlc1tfaTNdLmdldFBsYXllcigpKSYmdm9pZCAwIT09X2N0eCRnZXRQbGF5ZXImJm51bGwhPT0oX2N0eCRnZXRQbGF5ZXIkZGl2PV9jdHgkZ2V0UGxheWVyLmRpdikmJnZvaWQgMCE9PV9jdHgkZ2V0UGxheWVyJGRpdiYmX2N0eCRnZXRQbGF5ZXIkZGl2LmlubmVySFRNTC5pbmNsdWRlcygid3d3LmVuZ2FkZ2V0LmNvbSIpKXJldHVybiEwfX1jYXRjaChlKXt9cmV0dXJuITF9KCk/dm9pZCAwOm5ldyBBZCxBZEV2ZW50PWZ1bmN0aW9uKHR5cGUpe3RoaXMudHlwZT10eXBlfTtBZEV2ZW50LnByb3RvdHlwZT17Z2V0QWQ6ZnVuY3Rpb24oKXtyZXR1cm4gY3VycmVudEFkfSxnZXRBZERhdGE6ZnVuY3Rpb24oKXt9fSxBZEV2ZW50LlR5cGU9e0FEX0JSRUFLX1JFQURZOiJhZEJyZWFrUmVhZHkiLEFEX0JVRkZFUklORzoiYWRCdWZmZXJpbmciLEFEX0NBTl9QTEFZOiJhZENhblBsYXkiLEFEX01FVEFEQVRBOiJhZE1ldGFkYXRhIixBRF9QUk9HUkVTUzoiYWRQcm9ncmVzcyIsQUxMX0FEU19DT01QTEVURUQ6ImFsbEFkc0NvbXBsZXRlZCIsQ0xJQ0s6ImNsaWNrIixDT01QTEVURToiY29tcGxldGUiLENPTlRFTlRfUEFVU0VfUkVRVUVTVEVEOiJjb250ZW50UGF1c2VSZXF1ZXN0ZWQiLENPTlRFTlRfUkVTVU1FX1JFUVVFU1RFRDoiY29udGVudFJlc3VtZVJlcXVlc3RlZCIsRFVSQVRJT05fQ0hBTkdFOiJkdXJhdGlvbkNoYW5nZSIsRVhQQU5ERURfQ0hBTkdFRDoiZXhwYW5kZWRDaGFuZ2VkIixGSVJTVF9RVUFSVElMRToiZmlyc3RRdWFydGlsZSIsSU1QUkVTU0lPTjoiaW1wcmVzc2lvbiIsSU5URVJBQ1RJT046ImludGVyYWN0aW9uIixMSU5FQVJfQ0hBTkdFOiJsaW5lYXJDaGFuZ2UiLExJTkVBUl9DSEFOR0VEOiJsaW5lYXJDaGFuZ2VkIixMT0FERUQ6ImxvYWRlZCIsTE9HOiJsb2ciLE1JRFBPSU5UOiJtaWRwb2ludCIsUEFVU0VEOiJwYXVzZSIsUkVTVU1FRDoicmVzdW1lIixTS0lQUEFCTEVfU1RBVEVfQ0hBTkdFRDoic2tpcHBhYmxlU3RhdGVDaGFuZ2VkIixTS0lQUEVEOiJza2lwIixTVEFSVEVEOiJzdGFydCIsVEhJUkRfUVVBUlRJTEU6InRoaXJkUXVhcnRpbGUiLFVTRVJfQ0xPU0U6InVzZXJDbG9zZSIsVklERU9fQ0xJQ0tFRDoidmlkZW9DbGlja2VkIixWSURFT19JQ09OX0NMSUNLRUQ6InZpZGVvSWNvbkNsaWNrZWQiLFZJRVdBQkxFX0lNUFJFU1NJT046InZpZXdhYmxlX2ltcHJlc3Npb24iLFZPTFVNRV9DSEFOR0VEOiJ2b2x1bWVDaGFuZ2UiLFZPTFVNRV9NVVRFRDoibXV0ZSJ9O3ZhciBBZEVycm9yRXZlbnQ9ZnVuY3Rpb24oZXJyb3Ipe3RoaXMuZXJyb3I9ZXJyb3IsdGhpcy50eXBlPSJhZEVycm9yIix0aGlzLmdldEVycm9yPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXJyb3J9LHRoaXMuZ2V0VXNlclJlcXVlc3RDb250ZXh0PWZ1bmN0aW9uKCl7dmFyIF90aGlzJGVycm9yO3JldHVybiBudWxsIT09KF90aGlzJGVycm9yPXRoaXMuZXJyb3IpJiZ2b2lkIDAhPT1fdGhpcyRlcnJvciYmX3RoaXMkZXJyb3IudXNlclJlcXVlc3RDb250ZXh0P3RoaXMuZXJyb3IudXNlclJlcXVlc3RDb250ZXh0Ont9fX07QWRFcnJvckV2ZW50LlR5cGU9e0FEX0VSUk9SOiJhZEVycm9yIn07dmFyIEN1c3RvbUNvbnRlbnRMb2FkZWRFdmVudD1mdW5jdGlvbigpe307Q3VzdG9tQ29udGVudExvYWRlZEV2ZW50LlR5cGU9e0NVU1RPTV9DT05URU5UX0xPQURFRDoiZGVwcmVjYXRlZC1ldmVudCJ9O3ZhciBDb21wYW5pb25BZFNlbGVjdGlvblNldHRpbmdzPWZ1bmN0aW9uKCl7fTtDb21wYW5pb25BZFNlbGVjdGlvblNldHRpbmdzLkNyZWF0aXZlVHlwZT17QUxMOiJBbGwiLEZMQVNIOiJGbGFzaCIsSU1BR0U6IkltYWdlIn0sQ29tcGFuaW9uQWRTZWxlY3Rpb25TZXR0aW5ncy5SZXNvdXJjZVR5cGU9e0FMTDoiQWxsIixIVE1MOiJIdG1sIixJRlJBTUU6IklGcmFtZSIsU1RBVElDOiJTdGF0aWMifSxDb21wYW5pb25BZFNlbGVjdGlvblNldHRpbmdzLlNpemVDcml0ZXJpYT17SUdOT1JFOiJJZ25vcmVTaXplIixTRUxFQ1RfRVhBQ1RfTUFUQ0g6IlNlbGVjdEV4YWN0TWF0Y2giLFNFTEVDVF9ORUFSX01BVENIOiJTZWxlY3ROZWFyTWF0Y2gifTt2YXIgQWRDdWVQb2ludHM9ZnVuY3Rpb24oKXt9O0FkQ3VlUG9pbnRzLnByb3RvdHlwZT17Z2V0Q3VlUG9pbnRzOmZ1bmN0aW9uKCl7cmV0dXJuW119LGdldEFkSWRSZWdpc3RyeTpmdW5jdGlvbigpe3JldHVybiIifSxnZXRBZElkVmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4iIn19O3ZhciBBZFByb2dyZXNzRGF0YT1ub29wRnVuYztPYmplY3QuYXNzaWduKGltYSx7QWRDdWVQb2ludHM6QWRDdWVQb2ludHMsQWREaXNwbGF5Q29udGFpbmVyOkFkRGlzcGxheUNvbnRhaW5lcixBZEVycm9yOkFkRXJyb3IsQWRFcnJvckV2ZW50OkFkRXJyb3JFdmVudCxBZEV2ZW50OkFkRXZlbnQsQWRQb2RJbmZvOkFkUG9kSW5mbyxBZFByb2dyZXNzRGF0YTpBZFByb2dyZXNzRGF0YSxBZHNMb2FkZXI6QWRzTG9hZGVyLEFkc01hbmFnZXI6bWFuYWdlcixBZHNNYW5hZ2VyTG9hZGVkRXZlbnQ6QWRzTWFuYWdlckxvYWRlZEV2ZW50LEFkc1JlbmRlcmluZ1NldHRpbmdzOkFkc1JlbmRlcmluZ1NldHRpbmdzLEFkc1JlcXVlc3Q6QWRzUmVxdWVzdCxDb21wYW5pb25BZDpDb21wYW5pb25BZCxDb21wYW5pb25BZFNlbGVjdGlvblNldHRpbmdzOkNvbXBhbmlvbkFkU2VsZWN0aW9uU2V0dGluZ3MsQ3VzdG9tQ29udGVudExvYWRlZEV2ZW50OkN1c3RvbUNvbnRlbnRMb2FkZWRFdmVudCxncHRQcm94eUluc3RhbmNlOnt9LEltYVNka1NldHRpbmdzOkltYVNka1NldHRpbmdzLE9taWRBY2Nlc3NNb2RlOntET01BSU46ImRvbWFpbiIsRlVMTDoiZnVsbCIsTElNSVRFRDoibGltaXRlZCJ9LE9taWRWZXJpZmljYXRpb25WZW5kb3I6ezE6Ik9USEVSIiwyOiJNT0FUIiwzOiJET1VCTEVWRVJJRlkiLDQ6IklOVEVHUkFMX0FEX1NDSUVOQ0UiLDU6IlBJWEVMQVRFIiw2OiJOSUVMU0VOIiw3OiJDT01TQ09SRSIsODoiTUVFVFJJQ1MiLDk6IkdPT0dMRSIsT1RIRVI6MSxNT0FUOjIsRE9VQkxFVkVSSUZZOjMsSU5URUdSQUxfQURfU0NJRU5DRTo0LFBJWEVMQVRFOjUsTklFTFNFTjo2LENPTVNDT1JFOjcsTUVFVFJJQ1M6OCxHT09HTEU6OX0sc2V0dGluZ3M6bmV3IEltYVNka1NldHRpbmdzLFVpRWxlbWVudHM6e0FEX0FUVFJJQlVUSU9OOiJhZEF0dHJpYnV0aW9uIixDT1VOVERPV046ImNvdW50ZG93biJ9LFVuaXZlcnNhbEFkSWRJbmZvOlVuaXZlcnNhbEFkSWRJbmZvLFZFUlNJT046IjMuNDUzLjAiLFZpZXdNb2RlOntGVUxMU0NSRUVOOiJmdWxsc2NyZWVuIixOT1JNQUw6Im5vcm1hbCJ9fSksd2luZG93Lmdvb2dsZXx8KHdpbmRvdy5nb29nbGU9e30pLG51bGwhPT0oX3dpbmRvdyRnb29nbGUkaW1hPXdpbmRvdy5nb29nbGUuaW1hKSYmdm9pZCAwIT09X3dpbmRvdyRnb29nbGUkaW1hJiZfd2luZG93JGdvb2dsZSRpbWEuZGFpJiYoaW1hLmRhaT13aW5kb3cuZ29vZ2xlLmltYS5kYWkpLHdpbmRvdy5nb29nbGUuaW1hPWltYSxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD0iIjtzb3VyY2UuZG9tYWluTmFtZSYmKHByZWZpeCs9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKSkscHJlZml4Kz0iIyUjLy9zY3JpcHRsZXQoJyIuY29uY2F0KHNvdXJjZS5uYW1lLCInLCAnIikuY29uY2F0KHNvdXJjZS5hcmdzLmpvaW4oIiwgIiksIicpIiksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6Imdvb2dsZS1pbWEzIixhcmdzOltdfSxbXSk7" }, { "title": "googlesyndication-adsbygoogle", @@ -246,7 +246,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93LmFkc2J5Z29vZ2xlPXtsb2FkZWQ6ITAscHVzaChhcmcpe2lmKHZvaWQgMD09PXRoaXMubGVuZ3RoJiYodGhpcy5sZW5ndGg9MCx0aGlzLmxlbmd0aCs9MSksbnVsbCE9PWFyZyYmYXJnIGluc3RhbmNlb2YgT2JqZWN0JiYiT2JqZWN0Ij09PWFyZy5jb25zdHJ1Y3Rvci5uYW1lKWZvcih2YXIgX2k9MCxfT2JqZWN0JGtleXM9T2JqZWN0LmtleXMoYXJnKTtfaTxfT2JqZWN0JGtleXMubGVuZ3RoO19pKyspe3ZhciBrZXk9X09iamVjdCRrZXlzW19pXTtpZigiZnVuY3Rpb24iPT10eXBlb2YgYXJnW2tleV0pdHJ5e2FyZ1trZXldLmNhbGwodGhpcyx7fSl9Y2F0Y2goX3VudXNlZCl7fX19fTtmb3IodmFyIGFkRWxlbXM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmFkc2J5Z29vZ2xlIiksY3NzPSJoZWlnaHQ6MXB4IWltcG9ydGFudDttYXgtaGVpZ2h0OjFweCFpbXBvcnRhbnQ7bWF4LXdpZHRoOjFweCFpbXBvcnRhbnQ7d2lkdGg6MXB4IWltcG9ydGFudDsiLGV4ZWN1dGVkPSExLGk9MDtpPGFkRWxlbXMubGVuZ3RoO2krPTEpe3ZhciBhZEVsZW1DaGlsZE5vZGVzPWFkRWxlbXNbaV0uY2hpbGROb2RlcyxjaGlsZE5vZGVzUXVhbnRpdHk9YWRFbGVtQ2hpbGROb2Rlcy5sZW5ndGgsYXJlSWZyYW1lc0RlZmluZWQ9ITE7aWYoY2hpbGROb2Rlc1F1YW50aXR5PjAmJihhcmVJZnJhbWVzRGVmaW5lZD0yPT09Y2hpbGROb2Rlc1F1YW50aXR5JiYiaWZyYW1lIj09PWFkRWxlbUNoaWxkTm9kZXNbMF0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmYWRFbGVtQ2hpbGROb2Rlc1swXS5pZC5pbmNsdWRlcygiYXN3aWZ0XyIpJiYiaWZyYW1lIj09PWFkRWxlbUNoaWxkTm9kZXNbMV0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmYWRFbGVtQ2hpbGROb2Rlc1sxXS5pZC5pbmNsdWRlcygiZ29vZ2xlX2Fkc19pZnJhbWVfIikpLCFhcmVJZnJhbWVzRGVmaW5lZCl7YWRFbGVtc1tpXS5zZXRBdHRyaWJ1dGUoImRhdGEtYWRzYnlnb29nbGUtc3RhdHVzIiwiZG9uZSIpO3ZhciBhc3dpZnRJZnJhbWU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7YXN3aWZ0SWZyYW1lLmlkPSIiLmNvbmNhdCgiYXN3aWZ0XyIpLmNvbmNhdChpKSxhc3dpZnRJZnJhbWUuc3R5bGU9Y3NzLGFkRWxlbXNbaV0uYXBwZW5kQ2hpbGQoYXN3aWZ0SWZyYW1lKTt2YXIgaW5uZXJBc3dpZnRJZnJhbWU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7YXN3aWZ0SWZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbm5lckFzd2lmdElmcmFtZSk7dmFyIGdvb2dsZWFkc0lmcmFtZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtnb29nbGVhZHNJZnJhbWUuaWQ9IiIuY29uY2F0KCJnb29nbGVfYWRzX2lmcmFtZV8iKS5jb25jYXQoaSksZ29vZ2xlYWRzSWZyYW1lLnN0eWxlPWNzcyxhZEVsZW1zW2ldLmFwcGVuZENoaWxkKGdvb2dsZWFkc0lmcmFtZSk7dmFyIGlubmVyR29vZ2xlYWRzSWZyYW1lPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpO2dvb2dsZWFkc0lmcmFtZS5jb250ZW50V2luZG93LmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW5uZXJHb29nbGVhZHNJZnJhbWUpLGV4ZWN1dGVkPSEwfX1leGVjdXRlZCYmZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJnb29nbGVzeW5kaWNhdGlvbi1hZHNieWdvb2dsZSIsYXJnczpbXX0sW10pOw==" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93LmFkc2J5Z29vZ2xlPXtsb2FkZWQ6ITAscHVzaChhcmcpe2lmKHZvaWQgMD09PXRoaXMubGVuZ3RoJiYodGhpcy5sZW5ndGg9MCx0aGlzLmxlbmd0aCs9MSksbnVsbCE9PWFyZyYmYXJnIGluc3RhbmNlb2YgT2JqZWN0JiYiT2JqZWN0Ij09PWFyZy5jb25zdHJ1Y3Rvci5uYW1lKWZvcih2YXIgX2k9MCxfT2JqZWN0JGtleXM9T2JqZWN0LmtleXMoYXJnKTtfaTxfT2JqZWN0JGtleXMubGVuZ3RoO19pKyspe3ZhciBrZXk9X09iamVjdCRrZXlzW19pXTtpZigiZnVuY3Rpb24iPT10eXBlb2YgYXJnW2tleV0pdHJ5e2FyZ1trZXldLmNhbGwodGhpcyx7fSl9Y2F0Y2goX3VudXNlZCl7fX19fTtmb3IodmFyIGFkRWxlbXM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmFkc2J5Z29vZ2xlIiksY3NzPSJoZWlnaHQ6MXB4IWltcG9ydGFudDttYXgtaGVpZ2h0OjFweCFpbXBvcnRhbnQ7bWF4LXdpZHRoOjFweCFpbXBvcnRhbnQ7d2lkdGg6MXB4IWltcG9ydGFudDsiLGV4ZWN1dGVkPSExLGk9MDtpPGFkRWxlbXMubGVuZ3RoO2krPTEpe3ZhciBhZEVsZW1DaGlsZE5vZGVzPWFkRWxlbXNbaV0uY2hpbGROb2RlcyxjaGlsZE5vZGVzUXVhbnRpdHk9YWRFbGVtQ2hpbGROb2Rlcy5sZW5ndGgsYXJlSWZyYW1lc0RlZmluZWQ9ITE7aWYoY2hpbGROb2Rlc1F1YW50aXR5PjAmJihhcmVJZnJhbWVzRGVmaW5lZD0yPT09Y2hpbGROb2Rlc1F1YW50aXR5JiYiaWZyYW1lIj09PWFkRWxlbUNoaWxkTm9kZXNbMF0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmYWRFbGVtQ2hpbGROb2Rlc1swXS5pZC5pbmNsdWRlcygiYXN3aWZ0XyIpJiYiaWZyYW1lIj09PWFkRWxlbUNoaWxkTm9kZXNbMV0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmYWRFbGVtQ2hpbGROb2Rlc1sxXS5pZC5pbmNsdWRlcygiZ29vZ2xlX2Fkc19pZnJhbWVfIikpLCFhcmVJZnJhbWVzRGVmaW5lZCl7YWRFbGVtc1tpXS5zZXRBdHRyaWJ1dGUoImRhdGEtYWRzYnlnb29nbGUtc3RhdHVzIiwiZG9uZSIpO3ZhciBhc3dpZnRJZnJhbWU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7YXN3aWZ0SWZyYW1lLmlkPSIiLmNvbmNhdCgiYXN3aWZ0XyIpLmNvbmNhdChpKSxhc3dpZnRJZnJhbWUuc3R5bGU9Y3NzLGFkRWxlbXNbaV0uYXBwZW5kQ2hpbGQoYXN3aWZ0SWZyYW1lKTt2YXIgaW5uZXJBc3dpZnRJZnJhbWU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7YXN3aWZ0SWZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbm5lckFzd2lmdElmcmFtZSk7dmFyIGdvb2dsZWFkc0lmcmFtZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtnb29nbGVhZHNJZnJhbWUuaWQ9IiIuY29uY2F0KCJnb29nbGVfYWRzX2lmcmFtZV8iKS5jb25jYXQoaSksZ29vZ2xlYWRzSWZyYW1lLnN0eWxlPWNzcyxhZEVsZW1zW2ldLmFwcGVuZENoaWxkKGdvb2dsZWFkc0lmcmFtZSk7dmFyIGlubmVyR29vZ2xlYWRzSWZyYW1lPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpO2dvb2dsZWFkc0lmcmFtZS5jb250ZW50V2luZG93LmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW5uZXJHb29nbGVhZHNJZnJhbWUpLGV4ZWN1dGVkPSEwfX1leGVjdXRlZCYmZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJnb29nbGVzeW5kaWNhdGlvbi1hZHNieWdvb2dsZSIsYXJnczpbXX0sW10pOw==" }, { "title": "googletagservices-gpt", @@ -256,35 +256,35 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wVGhpcygpe3JldHVybiB0aGlzfWZ1bmN0aW9uIG5vb3BOdWxsKCl7cmV0dXJuIG51bGx9ZnVuY3Rpb24gbm9vcEFycmF5KCl7cmV0dXJuW119ZnVuY3Rpb24gbm9vcFN0cigpe3JldHVybiIifWZ1bmN0aW9uIHRydWVGdW5jKCl7cmV0dXJuITB9Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciBzbG90cz1uZXcgTWFwLHNsb3RzQnlJZD1uZXcgTWFwLHNsb3RzUGVyUGF0aD1uZXcgTWFwLHNsb3RDcmVhdGl2ZXM9bmV3IE1hcCxldmVudENhbGxiYWNrcz1uZXcgTWFwLGdUYXJnZXRpbmc9bmV3IE1hcCxhZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKG5hbWUsbGlzdGVuZXIpe3JldHVybiBldmVudENhbGxiYWNrcy5oYXMobmFtZSl8fGV2ZW50Q2FsbGJhY2tzLnNldChuYW1lLG5ldyBTZXQpLGV2ZW50Q2FsbGJhY2tzLmdldChuYW1lKS5hZGQobGlzdGVuZXIpLHRoaXN9LHJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24obmFtZSxsaXN0ZW5lcil7cmV0dXJuISFldmVudENhbGxiYWNrcy5oYXMobmFtZSkmJmV2ZW50Q2FsbGJhY2tzLmdldChuYW1lKS5kZWxldGUobGlzdGVuZXIpfSxmaXJlU2xvdEV2ZW50PWZ1bmN0aW9uKG5hbWUsc2xvdCl7cmV0dXJuIG5ldyBQcm9taXNlKChmdW5jdGlvbihyZXNvbHZlKXtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKGZ1bmN0aW9uKCl7Zm9yKHZhciBzaXplPVswLDBdLGNhbGxiYWNrc1NldD1ldmVudENhbGxiYWNrcy5nZXQobmFtZSl8fFtdLGNhbGxiYWNrQXJyYXk9QXJyYXkuZnJvbShjYWxsYmFja3NTZXQpLGk9MDtpPGNhbGxiYWNrQXJyYXkubGVuZ3RoO2krPTEpY2FsbGJhY2tBcnJheVtpXSh7aXNFbXB0eTohMCxzaXplOnNpemUsc2xvdDpzbG90fSk7cmVzb2x2ZSgpfSkpfSkpfSxkaXNwbGF5U2xvdD1mdW5jdGlvbihzbG90KXtpZihzbG90KXt2YXIgaWQ9c2xvdC5nZXRTbG90RWxlbWVudElkKCk7aWYoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpKXt2YXIgcGFyZW50PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtwYXJlbnQmJnBhcmVudC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSksZnVuY3Rpb24oc2xvdCl7Zm9yKHZhciBub2RlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNsb3QuZ2V0U2xvdEVsZW1lbnRJZCgpKTtudWxsIT1ub2RlJiZub2RlLmxhc3RDaGlsZDspbm9kZS5sYXN0Q2hpbGQucmVtb3ZlKCl9KHNsb3QpLGZ1bmN0aW9uKHNsb3Qpe3ZhciBfZG9jdW1lbnQkZ2V0RWxlbWVudEIsZWlkPSJnb29nbGVfYWRzX2lmcmFtZV8iLmNvbmNhdChzbG90LmdldElkKCkpO251bGw9PT0oX2RvY3VtZW50JGdldEVsZW1lbnRCPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGVpZCkpfHx2b2lkIDA9PT1fZG9jdW1lbnQkZ2V0RWxlbWVudEJ8fF9kb2N1bWVudCRnZXRFbGVtZW50Qi5yZW1vdmUoKTt2YXIgbm9kZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChzbG90LmdldFNsb3RFbGVtZW50SWQoKSk7aWYobm9kZSl7dmFyIGY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Zi5pZD1laWQsZi5zcmNkb2M9Ijxib2R5PjwvYm9keT4iLGYuc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDowOyBoZWlnaHQ6MDsgbGVmdDowOyByaWdodDowOyB6LWluZGV4Oi0xOyBib3JkZXI6MCIsZi5zZXRBdHRyaWJ1dGUoIndpZHRoIiwwKSxmLnNldEF0dHJpYnV0ZSgiaGVpZ2h0IiwwKSxmLnNldEF0dHJpYnV0ZSgiZGF0YS1sb2FkLWNvbXBsZXRlIiwhMCksZi5zZXRBdHRyaWJ1dGUoImRhdGEtZ29vZ2xlLWNvbnRhaW5lci1pZCIsITApLGYuc2V0QXR0cmlidXRlKCJzYW5kYm94IiwiIiksbm9kZS5hcHBlbmRDaGlsZChmKX19KHNsb3QpLGZpcmVTbG90RXZlbnQoInNsb3RSZW5kZXJFbmRlZCIsc2xvdCksZmlyZVNsb3RFdmVudCgic2xvdFJlcXVlc3RlZCIsc2xvdCksZmlyZVNsb3RFdmVudCgic2xvdFJlc3BvbnNlUmVjZWl2ZWQiLHNsb3QpLGZpcmVTbG90RXZlbnQoInNsb3RPbmxvYWQiLHNsb3QpLGZpcmVTbG90RXZlbnQoImltcHJlc3Npb25WaWV3YWJsZSIsc2xvdCl9fX0sY29tcGFuaW9uQWRzU2VydmljZT17YWRkRXZlbnRMaXN0ZW5lcjphZGRFdmVudExpc3RlbmVyLHJlbW92ZUV2ZW50TGlzdGVuZXI6cmVtb3ZlRXZlbnRMaXN0ZW5lcixlbmFibGVTeW5jTG9hZGluZzpub29wRnVuYyxzZXRSZWZyZXNoVW5maWxsZWRTbG90czpub29wRnVuYyxnZXRTbG90czpub29wQXJyYXl9LGNvbnRlbnRTZXJ2aWNlPXthZGRFdmVudExpc3RlbmVyOmFkZEV2ZW50TGlzdGVuZXIscmVtb3ZlRXZlbnRMaXN0ZW5lcjpyZW1vdmVFdmVudExpc3RlbmVyLHNldENvbnRlbnQ6bm9vcEZ1bmN9O2Z1bmN0aW9uIFBhc3NiYWNrU2xvdCgpe31mdW5jdGlvbiBTaXplTWFwcGluZ0J1aWxkZXIoKXt9UGFzc2JhY2tTbG90LnByb3RvdHlwZS5kaXNwbGF5PW5vb3BGdW5jLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUuZ2V0PW5vb3BOdWxsLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUuc2V0PW5vb3BUaGlzLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUuc2V0Q2xpY2tVcmw9bm9vcFRoaXMsUGFzc2JhY2tTbG90LnByb3RvdHlwZS5zZXRUYWdGb3JDaGlsZERpcmVjdGVkVHJlYXRtZW50PW5vb3BUaGlzLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUuc2V0VGFyZ2V0aW5nPW5vb3BUaGlzLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUudXBkYXRlVGFyZ2V0aW5nRnJvbU1hcD1ub29wVGhpcyxTaXplTWFwcGluZ0J1aWxkZXIucHJvdG90eXBlLmFkZFNpemU9bm9vcFRoaXMsU2l6ZU1hcHBpbmdCdWlsZGVyLnByb3RvdHlwZS5idWlsZD1ub29wTnVsbDt2YXIgZ2V0VGFyZ2V0aW5nVmFsdWU9ZnVuY3Rpb24odil7aWYoInN0cmluZyI9PXR5cGVvZiB2KXJldHVyblt2XTt0cnl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5mbGF0LmNhbGwodil9Y2F0Y2goX3VudXNlZCl7fXJldHVybltdfSxkZWZpbmVTbG90PWZ1bmN0aW9uKGFkVW5pdFBhdGgsY3JlYXRpdmVzLG9wdERpdil7dmFyIF9kb2N1bWVudCRnZXRFbGVtZW50QjI7aWYoc2xvdHNCeUlkLmhhcyhvcHREaXYpKXJldHVybiBudWxsPT09KF9kb2N1bWVudCRnZXRFbGVtZW50QjI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQob3B0RGl2KSl8fHZvaWQgMD09PV9kb2N1bWVudCRnZXRFbGVtZW50QjJ8fF9kb2N1bWVudCRnZXRFbGVtZW50QjIucmVtb3ZlKCksc2xvdHNCeUlkLmdldChvcHREaXYpO3ZhciBhdHRyaWJ1dGVzPW5ldyBNYXAsdGFyZ2V0aW5nPW5ldyBNYXAsZXhjbHVzaW9ucz1uZXcgU2V0LHJlc3BvbnNlPXthZHZlcnRpc2VySWQ6dm9pZCAwLGNhbXBhaWduSWQ6dm9pZCAwLGNyZWF0aXZlSWQ6dm9pZCAwLGNyZWF0aXZlVGVtcGxhdGVJZDp2b2lkIDAsbGluZUl0ZW1JZDp2b2lkIDB9LHNpemVzPVt7Z2V0SGVpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIDJ9LGdldFdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIDJ9fV0sbnVtPShzbG90c1BlclBhdGguZ2V0KGFkVW5pdFBhdGgpfHwwKSsxO3Nsb3RzUGVyUGF0aC5zZXQoYWRVbml0UGF0aCxudW0pO3ZhciBpZD0iIi5jb25jYXQoYWRVbml0UGF0aCwiXyIpLmNvbmNhdChudW0pLGNsaWNrVXJsPSIiLGNvbGxhcHNlRW1wdHlEaXY9bnVsbCxzZXJ2aWNlcz1uZXcgU2V0LHNsb3Q9e2FkZFNlcnZpY2U6ZT0+KHNlcnZpY2VzLmFkZChlKSxzbG90KSxjbGVhckNhdGVnb3J5RXhjbHVzaW9uczpub29wVGhpcyxjbGVhclRhcmdldGluZyhrKXt2b2lkIDA9PT1rP3RhcmdldGluZy5jbGVhcigpOnRhcmdldGluZy5kZWxldGUoayl9LGRlZmluZVNpemVNYXBwaW5nKG1hcHBpbmcpe3JldHVybiBzbG90Q3JlYXRpdmVzLnNldChvcHREaXYsbWFwcGluZyksdGhpc30sZ2V0OmZ1bmN0aW9uKGspe3JldHVybiBhdHRyaWJ1dGVzLmdldChrKX0sZ2V0QWRVbml0UGF0aDpmdW5jdGlvbigpe3JldHVybiBhZFVuaXRQYXRofSxnZXRBdHRyaWJ1dGVLZXlzOmZ1bmN0aW9uKCl7cmV0dXJuIEFycmF5LmZyb20oYXR0cmlidXRlcy5rZXlzKCkpfSxnZXRDYXRlZ29yeUV4Y2x1c2lvbnM6ZnVuY3Rpb24oKXtyZXR1cm4gQXJyYXkuZnJvbShleGNsdXNpb25zKX0sZ2V0Q2xpY2tVcmw6ZnVuY3Rpb24oKXtyZXR1cm4gY2xpY2tVcmx9LGdldENvbGxhcHNlRW1wdHlEaXY6ZnVuY3Rpb24oKXtyZXR1cm4gY29sbGFwc2VFbXB0eURpdn0sZ2V0Q29udGVudFVybDpmdW5jdGlvbigpe3JldHVybiIifSxnZXREaXZTdGFydHNDb2xsYXBzZWQ6ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sZ2V0RG9tSWQ6ZnVuY3Rpb24oKXtyZXR1cm4gb3B0RGl2fSxnZXRFc2NhcGVkUWVtUXVlcnlJZDpmdW5jdGlvbigpe3JldHVybiIifSxnZXRGaXJzdExvb2s6ZnVuY3Rpb24oKXtyZXR1cm4gMH0sZ2V0SWQ6ZnVuY3Rpb24oKXtyZXR1cm4gaWR9LGdldEh0bWw6ZnVuY3Rpb24oKXtyZXR1cm4iIn0sZ2V0TmFtZTpmdW5jdGlvbigpe3JldHVybiBpZH0sZ2V0T3V0T2ZQYWdlOmZ1bmN0aW9uKCl7cmV0dXJuITF9LGdldFJlc3BvbnNlSW5mb3JtYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gcmVzcG9uc2V9LGdldFNlcnZpY2VzOmZ1bmN0aW9uKCl7cmV0dXJuIEFycmF5LmZyb20oc2VydmljZXMpfSxnZXRTaXplczpmdW5jdGlvbigpe3JldHVybiBzaXplc30sZ2V0U2xvdEVsZW1lbnRJZDpmdW5jdGlvbigpe3JldHVybiBvcHREaXZ9LGdldFNsb3RJZDpmdW5jdGlvbigpe3JldHVybiBzbG90fSxnZXRUYXJnZXRpbmc6ZnVuY3Rpb24oayl7cmV0dXJuIHRhcmdldGluZy5nZXQoayl8fGdUYXJnZXRpbmcuZ2V0KGspfHxbXX0sZ2V0VGFyZ2V0aW5nS2V5czpmdW5jdGlvbigpe3JldHVybiBBcnJheS5mcm9tKG5ldyBTZXQoQXJyYXkub2YoLi4uZ1RhcmdldGluZy5rZXlzKCksLi4udGFyZ2V0aW5nLmtleXMoKSkpKX0sZ2V0VGFyZ2V0aW5nTWFwOmZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmZyb21FbnRyaWVzKGdUYXJnZXRpbmcuZW50cmllcygpKSxPYmplY3QuZnJvbUVudHJpZXModGFyZ2V0aW5nLmVudHJpZXMoKSkpfSxzZXQ6KGssdik9PihhdHRyaWJ1dGVzLnNldChrLHYpLHNsb3QpLHNldENhdGVnb3J5RXhjbHVzaW9uOmU9PihleGNsdXNpb25zLmFkZChlKSxzbG90KSxzZXRDbGlja1VybDp1PT4oY2xpY2tVcmw9dSxzbG90KSxzZXRDb2xsYXBzZUVtcHR5RGl2OnY9Pihjb2xsYXBzZUVtcHR5RGl2PSEhdixzbG90KSxzZXRTYWZlRnJhbWVDb25maWc6bm9vcFRoaXMsc2V0VGFnRm9yQ2hpbGREaXJlY3RlZFRyZWF0bWVudDpub29wVGhpcyxzZXRUYXJnZXRpbmc6KGssdik9Pih0YXJnZXRpbmcuc2V0KGssZ2V0VGFyZ2V0aW5nVmFsdWUodikpLHNsb3QpLHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIGlkfSx1cGRhdGVUYXJnZXRpbmdGcm9tTWFwOm1hcD0+KGZ1bmN0aW9uKHRhcmdldGluZyxtYXApe2lmKCJvYmplY3QiPT10eXBlb2YgbWFwKWZvcih2YXIga2V5IGluIG1hcClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobWFwLGtleSkmJnRhcmdldGluZy5zZXQoa2V5LGdldFRhcmdldGluZ1ZhbHVlKG1hcFtrZXldKSl9KHRhcmdldGluZyxtYXApLHNsb3QpfTtyZXR1cm4gc2xvdHMuc2V0KGFkVW5pdFBhdGgsc2xvdCksc2xvdHNCeUlkLnNldChvcHREaXYsc2xvdCksc2xvdENyZWF0aXZlcy5zZXQob3B0RGl2LGNyZWF0aXZlcyksc2xvdH0scHViQWRzU2VydmljZT17YWRkRXZlbnRMaXN0ZW5lcjphZGRFdmVudExpc3RlbmVyLHJlbW92ZUV2ZW50TGlzdGVuZXI6cmVtb3ZlRXZlbnRMaXN0ZW5lcixjbGVhcjpub29wRnVuYyxjbGVhckNhdGVnb3J5RXhjbHVzaW9uczpub29wVGhpcyxjbGVhclRhZ0ZvckNoaWxkRGlyZWN0ZWRUcmVhdG1lbnQ6bm9vcFRoaXMsY2xlYXJUYXJnZXRpbmcoayl7dm9pZCAwPT09az9nVGFyZ2V0aW5nLmNsZWFyKCk6Z1RhcmdldGluZy5kZWxldGUoayl9LGNvbGxhcHNlRW1wdHlEaXZzOm5vb3BGdW5jLGRlZmluZU91dE9mUGFnZVBhc3NiYWNrOigpPT5uZXcgUGFzc2JhY2tTbG90LGRlZmluZVBhc3NiYWNrOigpPT5uZXcgUGFzc2JhY2tTbG90LGRpc2FibGVJbml0aWFsTG9hZDpub29wRnVuYyxkaXNwbGF5Om5vb3BGdW5jLGVuYWJsZUFzeW5jUmVuZGVyaW5nOm5vb3BGdW5jLGVuYWJsZUxhenlMb2FkOm5vb3BGdW5jLGVuYWJsZVNpbmdsZVJlcXVlc3Q6bm9vcEZ1bmMsZW5hYmxlU3luY1JlbmRlcmluZzpub29wRnVuYyxlbmFibGVWaWRlb0Fkczpub29wRnVuYyxnZXQ6bm9vcE51bGwsZ2V0QXR0cmlidXRlS2V5czpub29wQXJyYXksZ2V0VGFyZ2V0aW5nOm5vb3BBcnJheSxnZXRUYXJnZXRpbmdLZXlzOm5vb3BBcnJheSxnZXRTbG90czpub29wQXJyYXksaXNJbml0aWFsTG9hZERpc2FibGVkOnRydWVGdW5jLHJlZnJlc2g6bm9vcEZ1bmMsc2V0Om5vb3BUaGlzLHNldENhdGVnb3J5RXhjbHVzaW9uOm5vb3BUaGlzLHNldENlbnRlcmluZzpub29wRnVuYyxzZXRDb29raWVPcHRpb25zOm5vb3BUaGlzLHNldEZvcmNlU2FmZUZyYW1lOm5vb3BUaGlzLHNldExvY2F0aW9uOm5vb3BUaGlzLHNldFByaXZhY3lTZXR0aW5nczpub29wVGhpcyxzZXRQdWJsaXNoZXJQcm92aWRlZElkOm5vb3BUaGlzLHNldFJlcXVlc3ROb25QZXJzb25hbGl6ZWRBZHM6bm9vcFRoaXMsc2V0U2FmZUZyYW1lQ29uZmlnOm5vb3BUaGlzLHNldFRhZ0ZvckNoaWxkRGlyZWN0ZWRUcmVhdG1lbnQ6bm9vcFRoaXMsc2V0VGFyZ2V0aW5nOm5vb3BUaGlzLHNldFZpZGVvQ29udGVudDpub29wVGhpcyx1cGRhdGVDb3JyZWxhdG9yOm5vb3BGdW5jfSxfd2luZG93JGdvb2dsZXRhZz13aW5kb3cuZ29vZ2xldGFnLGdvb2dsZXRhZz12b2lkIDA9PT1fd2luZG93JGdvb2dsZXRhZz97fTpfd2luZG93JGdvb2dsZXRhZyxfZ29vZ2xldGFnJGNtZD1nb29nbGV0YWcuY21kLGNtZD12b2lkIDA9PT1fZ29vZ2xldGFnJGNtZD9bXTpfZ29vZ2xldGFnJGNtZDtmb3IoZ29vZ2xldGFnLmFwaVJlYWR5PSEwLGdvb2dsZXRhZy5jbWQ9W10sZ29vZ2xldGFnLmNtZC5wdXNoPWZ1bmN0aW9uKGEpe3RyeXthKCl9Y2F0Y2goZXgpe31yZXR1cm4gMX0sZ29vZ2xldGFnLmNvbXBhbmlvbkFkcz1mdW5jdGlvbigpe3JldHVybiBjb21wYW5pb25BZHNTZXJ2aWNlfSxnb29nbGV0YWcuY29udGVudD1mdW5jdGlvbigpe3JldHVybiBjb250ZW50U2VydmljZX0sZ29vZ2xldGFnLmRlZmluZU91dE9mUGFnZVNsb3Q9ZGVmaW5lU2xvdCxnb29nbGV0YWcuZGVmaW5lU2xvdD1kZWZpbmVTbG90LGdvb2dsZXRhZy5kZXN0cm95U2xvdHM9ZnVuY3Rpb24oKXtzbG90cy5jbGVhcigpLHNsb3RzQnlJZC5jbGVhcigpfSxnb29nbGV0YWcuZGlzYWJsZVB1Ymxpc2hlckNvbnNvbGU9bm9vcEZ1bmMsZ29vZ2xldGFnLmRpc3BsYXk9ZnVuY3Rpb24oYXJnKXt2YXIgaWQ7aWQ9bnVsbCE9YXJnJiZhcmcuZ2V0U2xvdEVsZW1lbnRJZD9hcmcuZ2V0U2xvdEVsZW1lbnRJZCgpOm51bGwhPWFyZyYmYXJnLm5vZGVUeXBlP2FyZy5pZDpTdHJpbmcoYXJnKSxkaXNwbGF5U2xvdChzbG90c0J5SWQuZ2V0KGlkKSl9LGdvb2dsZXRhZy5lbmFibGVTZXJ2aWNlcz1ub29wRnVuYyxnb29nbGV0YWcuZ2V0VmVyc2lvbj1ub29wU3RyLGdvb2dsZXRhZy5wdWJhZHM9ZnVuY3Rpb24oKXtyZXR1cm4gcHViQWRzU2VydmljZX0sZ29vZ2xldGFnLnB1YmFkc1JlYWR5PSEwLGdvb2dsZXRhZy5zZXRBZElmcmFtZVRpdGxlPW5vb3BGdW5jLGdvb2dsZXRhZy5zaXplTWFwcGluZz1mdW5jdGlvbigpe3JldHVybiBuZXcgU2l6ZU1hcHBpbmdCdWlsZGVyfSx3aW5kb3cuZ29vZ2xldGFnPWdvb2dsZXRhZzswIT09Y21kLmxlbmd0aDspZ29vZ2xldGFnLmNtZC5wdXNoKGNtZC5zaGlmdCgpKTshZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJnb29nbGV0YWdzZXJ2aWNlcy1ncHQiLGFyZ3M6W119LFtdKTs=" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wVGhpcygpe3JldHVybiB0aGlzfWZ1bmN0aW9uIG5vb3BOdWxsKCl7cmV0dXJuIG51bGx9ZnVuY3Rpb24gbm9vcEFycmF5KCl7cmV0dXJuW119ZnVuY3Rpb24gbm9vcFN0cigpe3JldHVybiIifWZ1bmN0aW9uIHRydWVGdW5jKCl7cmV0dXJuITB9Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciBzbG90cz1uZXcgTWFwLHNsb3RzQnlJZD1uZXcgTWFwLHNsb3RzUGVyUGF0aD1uZXcgTWFwLHNsb3RDcmVhdGl2ZXM9bmV3IE1hcCxldmVudENhbGxiYWNrcz1uZXcgTWFwLGdUYXJnZXRpbmc9bmV3IE1hcCxhZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKG5hbWUsbGlzdGVuZXIpe3JldHVybiBldmVudENhbGxiYWNrcy5oYXMobmFtZSl8fGV2ZW50Q2FsbGJhY2tzLnNldChuYW1lLG5ldyBTZXQpLGV2ZW50Q2FsbGJhY2tzLmdldChuYW1lKS5hZGQobGlzdGVuZXIpLHRoaXN9LHJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24obmFtZSxsaXN0ZW5lcil7cmV0dXJuISFldmVudENhbGxiYWNrcy5oYXMobmFtZSkmJmV2ZW50Q2FsbGJhY2tzLmdldChuYW1lKS5kZWxldGUobGlzdGVuZXIpfSxmaXJlU2xvdEV2ZW50PWZ1bmN0aW9uKG5hbWUsc2xvdCl7cmV0dXJuIG5ldyBQcm9taXNlKChmdW5jdGlvbihyZXNvbHZlKXtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKGZ1bmN0aW9uKCl7Zm9yKHZhciBzaXplPVswLDBdLGNhbGxiYWNrc1NldD1ldmVudENhbGxiYWNrcy5nZXQobmFtZSl8fFtdLGNhbGxiYWNrQXJyYXk9QXJyYXkuZnJvbShjYWxsYmFja3NTZXQpLGk9MDtpPGNhbGxiYWNrQXJyYXkubGVuZ3RoO2krPTEpY2FsbGJhY2tBcnJheVtpXSh7aXNFbXB0eTohMCxzaXplOnNpemUsc2xvdDpzbG90fSk7cmVzb2x2ZSgpfSkpfSkpfSxkaXNwbGF5U2xvdD1mdW5jdGlvbihzbG90KXtpZihzbG90KXt2YXIgaWQ9c2xvdC5nZXRTbG90RWxlbWVudElkKCk7aWYoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpKXt2YXIgcGFyZW50PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtwYXJlbnQmJnBhcmVudC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSksZnVuY3Rpb24oc2xvdCl7Zm9yKHZhciBub2RlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNsb3QuZ2V0U2xvdEVsZW1lbnRJZCgpKTtudWxsIT1ub2RlJiZub2RlLmxhc3RDaGlsZDspbm9kZS5sYXN0Q2hpbGQucmVtb3ZlKCl9KHNsb3QpLGZ1bmN0aW9uKHNsb3Qpe3ZhciBfZG9jdW1lbnQkZ2V0RWxlbWVudEIsZWlkPSJnb29nbGVfYWRzX2lmcmFtZV8iLmNvbmNhdChzbG90LmdldElkKCkpO251bGw9PT0oX2RvY3VtZW50JGdldEVsZW1lbnRCPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGVpZCkpfHx2b2lkIDA9PT1fZG9jdW1lbnQkZ2V0RWxlbWVudEJ8fF9kb2N1bWVudCRnZXRFbGVtZW50Qi5yZW1vdmUoKTt2YXIgbm9kZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChzbG90LmdldFNsb3RFbGVtZW50SWQoKSk7aWYobm9kZSl7dmFyIGY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Zi5pZD1laWQsZi5zcmNkb2M9Ijxib2R5PjwvYm9keT4iLGYuc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDowOyBoZWlnaHQ6MDsgbGVmdDowOyByaWdodDowOyB6LWluZGV4Oi0xOyBib3JkZXI6MCIsZi5zZXRBdHRyaWJ1dGUoIndpZHRoIiwwKSxmLnNldEF0dHJpYnV0ZSgiaGVpZ2h0IiwwKSxmLnNldEF0dHJpYnV0ZSgiZGF0YS1sb2FkLWNvbXBsZXRlIiwhMCksZi5zZXRBdHRyaWJ1dGUoImRhdGEtZ29vZ2xlLWNvbnRhaW5lci1pZCIsITApLGYuc2V0QXR0cmlidXRlKCJzYW5kYm94IiwiIiksbm9kZS5hcHBlbmRDaGlsZChmKX19KHNsb3QpLGZpcmVTbG90RXZlbnQoInNsb3RSZW5kZXJFbmRlZCIsc2xvdCksZmlyZVNsb3RFdmVudCgic2xvdFJlcXVlc3RlZCIsc2xvdCksZmlyZVNsb3RFdmVudCgic2xvdFJlc3BvbnNlUmVjZWl2ZWQiLHNsb3QpLGZpcmVTbG90RXZlbnQoInNsb3RPbmxvYWQiLHNsb3QpLGZpcmVTbG90RXZlbnQoImltcHJlc3Npb25WaWV3YWJsZSIsc2xvdCl9fX0sY29tcGFuaW9uQWRzU2VydmljZT17YWRkRXZlbnRMaXN0ZW5lcjphZGRFdmVudExpc3RlbmVyLHJlbW92ZUV2ZW50TGlzdGVuZXI6cmVtb3ZlRXZlbnRMaXN0ZW5lcixlbmFibGVTeW5jTG9hZGluZzpub29wRnVuYyxzZXRSZWZyZXNoVW5maWxsZWRTbG90czpub29wRnVuYyxnZXRTbG90czpub29wQXJyYXl9LGNvbnRlbnRTZXJ2aWNlPXthZGRFdmVudExpc3RlbmVyOmFkZEV2ZW50TGlzdGVuZXIscmVtb3ZlRXZlbnRMaXN0ZW5lcjpyZW1vdmVFdmVudExpc3RlbmVyLHNldENvbnRlbnQ6bm9vcEZ1bmN9O2Z1bmN0aW9uIFBhc3NiYWNrU2xvdCgpe31mdW5jdGlvbiBTaXplTWFwcGluZ0J1aWxkZXIoKXt9UGFzc2JhY2tTbG90LnByb3RvdHlwZS5kaXNwbGF5PW5vb3BGdW5jLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUuZ2V0PW5vb3BOdWxsLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUuc2V0PW5vb3BUaGlzLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUuc2V0Q2xpY2tVcmw9bm9vcFRoaXMsUGFzc2JhY2tTbG90LnByb3RvdHlwZS5zZXRUYWdGb3JDaGlsZERpcmVjdGVkVHJlYXRtZW50PW5vb3BUaGlzLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUuc2V0VGFyZ2V0aW5nPW5vb3BUaGlzLFBhc3NiYWNrU2xvdC5wcm90b3R5cGUudXBkYXRlVGFyZ2V0aW5nRnJvbU1hcD1ub29wVGhpcyxTaXplTWFwcGluZ0J1aWxkZXIucHJvdG90eXBlLmFkZFNpemU9bm9vcFRoaXMsU2l6ZU1hcHBpbmdCdWlsZGVyLnByb3RvdHlwZS5idWlsZD1ub29wTnVsbDt2YXIgZ2V0VGFyZ2V0aW5nVmFsdWU9ZnVuY3Rpb24odil7aWYoInN0cmluZyI9PXR5cGVvZiB2KXJldHVyblt2XTt0cnl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5mbGF0LmNhbGwodil9Y2F0Y2goX3VudXNlZCl7fXJldHVybltdfSxkZWZpbmVTbG90PWZ1bmN0aW9uKGFkVW5pdFBhdGgsY3JlYXRpdmVzLG9wdERpdil7dmFyIF9kb2N1bWVudCRnZXRFbGVtZW50QjI7aWYoc2xvdHNCeUlkLmhhcyhvcHREaXYpKXJldHVybiBudWxsPT09KF9kb2N1bWVudCRnZXRFbGVtZW50QjI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQob3B0RGl2KSl8fHZvaWQgMD09PV9kb2N1bWVudCRnZXRFbGVtZW50QjJ8fF9kb2N1bWVudCRnZXRFbGVtZW50QjIucmVtb3ZlKCksc2xvdHNCeUlkLmdldChvcHREaXYpO3ZhciBhdHRyaWJ1dGVzPW5ldyBNYXAsdGFyZ2V0aW5nPW5ldyBNYXAsZXhjbHVzaW9ucz1uZXcgU2V0LHJlc3BvbnNlPXthZHZlcnRpc2VySWQ6dm9pZCAwLGNhbXBhaWduSWQ6dm9pZCAwLGNyZWF0aXZlSWQ6dm9pZCAwLGNyZWF0aXZlVGVtcGxhdGVJZDp2b2lkIDAsbGluZUl0ZW1JZDp2b2lkIDB9LHNpemVzPVt7Z2V0SGVpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIDJ9LGdldFdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIDJ9fV0sbnVtPShzbG90c1BlclBhdGguZ2V0KGFkVW5pdFBhdGgpfHwwKSsxO3Nsb3RzUGVyUGF0aC5zZXQoYWRVbml0UGF0aCxudW0pO3ZhciBpZD0iIi5jb25jYXQoYWRVbml0UGF0aCwiXyIpLmNvbmNhdChudW0pLGNsaWNrVXJsPSIiLGNvbGxhcHNlRW1wdHlEaXY9bnVsbCxzZXJ2aWNlcz1uZXcgU2V0LHNsb3Q9e2FkZFNlcnZpY2U6ZT0+KHNlcnZpY2VzLmFkZChlKSxzbG90KSxjbGVhckNhdGVnb3J5RXhjbHVzaW9uczpub29wVGhpcyxjbGVhclRhcmdldGluZyhrKXt2b2lkIDA9PT1rP3RhcmdldGluZy5jbGVhcigpOnRhcmdldGluZy5kZWxldGUoayl9LGRlZmluZVNpemVNYXBwaW5nKG1hcHBpbmcpe3JldHVybiBzbG90Q3JlYXRpdmVzLnNldChvcHREaXYsbWFwcGluZyksdGhpc30sZ2V0OmZ1bmN0aW9uKGspe3JldHVybiBhdHRyaWJ1dGVzLmdldChrKX0sZ2V0QWRVbml0UGF0aDpmdW5jdGlvbigpe3JldHVybiBhZFVuaXRQYXRofSxnZXRBdHRyaWJ1dGVLZXlzOmZ1bmN0aW9uKCl7cmV0dXJuIEFycmF5LmZyb20oYXR0cmlidXRlcy5rZXlzKCkpfSxnZXRDYXRlZ29yeUV4Y2x1c2lvbnM6ZnVuY3Rpb24oKXtyZXR1cm4gQXJyYXkuZnJvbShleGNsdXNpb25zKX0sZ2V0Q2xpY2tVcmw6ZnVuY3Rpb24oKXtyZXR1cm4gY2xpY2tVcmx9LGdldENvbGxhcHNlRW1wdHlEaXY6ZnVuY3Rpb24oKXtyZXR1cm4gY29sbGFwc2VFbXB0eURpdn0sZ2V0Q29udGVudFVybDpmdW5jdGlvbigpe3JldHVybiIifSxnZXREaXZTdGFydHNDb2xsYXBzZWQ6ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sZ2V0RG9tSWQ6ZnVuY3Rpb24oKXtyZXR1cm4gb3B0RGl2fSxnZXRFc2NhcGVkUWVtUXVlcnlJZDpmdW5jdGlvbigpe3JldHVybiIifSxnZXRGaXJzdExvb2s6ZnVuY3Rpb24oKXtyZXR1cm4gMH0sZ2V0SWQ6ZnVuY3Rpb24oKXtyZXR1cm4gaWR9LGdldEh0bWw6ZnVuY3Rpb24oKXtyZXR1cm4iIn0sZ2V0TmFtZTpmdW5jdGlvbigpe3JldHVybiBpZH0sZ2V0T3V0T2ZQYWdlOmZ1bmN0aW9uKCl7cmV0dXJuITF9LGdldFJlc3BvbnNlSW5mb3JtYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gcmVzcG9uc2V9LGdldFNlcnZpY2VzOmZ1bmN0aW9uKCl7cmV0dXJuIEFycmF5LmZyb20oc2VydmljZXMpfSxnZXRTaXplczpmdW5jdGlvbigpe3JldHVybiBzaXplc30sZ2V0U2xvdEVsZW1lbnRJZDpmdW5jdGlvbigpe3JldHVybiBvcHREaXZ9LGdldFNsb3RJZDpmdW5jdGlvbigpe3JldHVybiBzbG90fSxnZXRUYXJnZXRpbmc6ZnVuY3Rpb24oayl7cmV0dXJuIHRhcmdldGluZy5nZXQoayl8fGdUYXJnZXRpbmcuZ2V0KGspfHxbXX0sZ2V0VGFyZ2V0aW5nS2V5czpmdW5jdGlvbigpe3JldHVybiBBcnJheS5mcm9tKG5ldyBTZXQoQXJyYXkub2YoLi4uZ1RhcmdldGluZy5rZXlzKCksLi4udGFyZ2V0aW5nLmtleXMoKSkpKX0sZ2V0VGFyZ2V0aW5nTWFwOmZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmZyb21FbnRyaWVzKGdUYXJnZXRpbmcuZW50cmllcygpKSxPYmplY3QuZnJvbUVudHJpZXModGFyZ2V0aW5nLmVudHJpZXMoKSkpfSxzZXQ6KGssdik9PihhdHRyaWJ1dGVzLnNldChrLHYpLHNsb3QpLHNldENhdGVnb3J5RXhjbHVzaW9uOmU9PihleGNsdXNpb25zLmFkZChlKSxzbG90KSxzZXRDbGlja1VybDp1PT4oY2xpY2tVcmw9dSxzbG90KSxzZXRDb2xsYXBzZUVtcHR5RGl2OnY9Pihjb2xsYXBzZUVtcHR5RGl2PSEhdixzbG90KSxzZXRTYWZlRnJhbWVDb25maWc6bm9vcFRoaXMsc2V0VGFnRm9yQ2hpbGREaXJlY3RlZFRyZWF0bWVudDpub29wVGhpcyxzZXRUYXJnZXRpbmc6KGssdik9Pih0YXJnZXRpbmcuc2V0KGssZ2V0VGFyZ2V0aW5nVmFsdWUodikpLHNsb3QpLHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIGlkfSx1cGRhdGVUYXJnZXRpbmdGcm9tTWFwOm1hcD0+KGZ1bmN0aW9uKHRhcmdldGluZyxtYXApe2lmKCJvYmplY3QiPT10eXBlb2YgbWFwKWZvcih2YXIga2V5IGluIG1hcClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobWFwLGtleSkmJnRhcmdldGluZy5zZXQoa2V5LGdldFRhcmdldGluZ1ZhbHVlKG1hcFtrZXldKSl9KHRhcmdldGluZyxtYXApLHNsb3QpfTtyZXR1cm4gc2xvdHMuc2V0KGFkVW5pdFBhdGgsc2xvdCksc2xvdHNCeUlkLnNldChvcHREaXYsc2xvdCksc2xvdENyZWF0aXZlcy5zZXQob3B0RGl2LGNyZWF0aXZlcyksc2xvdH0scHViQWRzU2VydmljZT17YWRkRXZlbnRMaXN0ZW5lcjphZGRFdmVudExpc3RlbmVyLHJlbW92ZUV2ZW50TGlzdGVuZXI6cmVtb3ZlRXZlbnRMaXN0ZW5lcixjbGVhcjpub29wRnVuYyxjbGVhckNhdGVnb3J5RXhjbHVzaW9uczpub29wVGhpcyxjbGVhclRhZ0ZvckNoaWxkRGlyZWN0ZWRUcmVhdG1lbnQ6bm9vcFRoaXMsY2xlYXJUYXJnZXRpbmcoayl7dm9pZCAwPT09az9nVGFyZ2V0aW5nLmNsZWFyKCk6Z1RhcmdldGluZy5kZWxldGUoayl9LGNvbGxhcHNlRW1wdHlEaXZzOm5vb3BGdW5jLGRlZmluZU91dE9mUGFnZVBhc3NiYWNrOigpPT5uZXcgUGFzc2JhY2tTbG90LGRlZmluZVBhc3NiYWNrOigpPT5uZXcgUGFzc2JhY2tTbG90LGRpc2FibGVJbml0aWFsTG9hZDpub29wRnVuYyxkaXNwbGF5Om5vb3BGdW5jLGVuYWJsZUFzeW5jUmVuZGVyaW5nOm5vb3BGdW5jLGVuYWJsZUxhenlMb2FkOm5vb3BGdW5jLGVuYWJsZVNpbmdsZVJlcXVlc3Q6bm9vcEZ1bmMsZW5hYmxlU3luY1JlbmRlcmluZzpub29wRnVuYyxlbmFibGVWaWRlb0Fkczpub29wRnVuYyxnZXQ6bm9vcE51bGwsZ2V0QXR0cmlidXRlS2V5czpub29wQXJyYXksZ2V0VGFyZ2V0aW5nOm5vb3BBcnJheSxnZXRUYXJnZXRpbmdLZXlzOm5vb3BBcnJheSxnZXRTbG90czpub29wQXJyYXksaXNJbml0aWFsTG9hZERpc2FibGVkOnRydWVGdW5jLHJlZnJlc2g6bm9vcEZ1bmMsc2V0Om5vb3BUaGlzLHNldENhdGVnb3J5RXhjbHVzaW9uOm5vb3BUaGlzLHNldENlbnRlcmluZzpub29wRnVuYyxzZXRDb29raWVPcHRpb25zOm5vb3BUaGlzLHNldEZvcmNlU2FmZUZyYW1lOm5vb3BUaGlzLHNldExvY2F0aW9uOm5vb3BUaGlzLHNldFByaXZhY3lTZXR0aW5nczpub29wVGhpcyxzZXRQdWJsaXNoZXJQcm92aWRlZElkOm5vb3BUaGlzLHNldFJlcXVlc3ROb25QZXJzb25hbGl6ZWRBZHM6bm9vcFRoaXMsc2V0U2FmZUZyYW1lQ29uZmlnOm5vb3BUaGlzLHNldFRhZ0ZvckNoaWxkRGlyZWN0ZWRUcmVhdG1lbnQ6bm9vcFRoaXMsc2V0VGFyZ2V0aW5nOm5vb3BUaGlzLHNldFZpZGVvQ29udGVudDpub29wVGhpcyx1cGRhdGVDb3JyZWxhdG9yOm5vb3BGdW5jfSxfd2luZG93JGdvb2dsZXRhZz13aW5kb3cuZ29vZ2xldGFnLGdvb2dsZXRhZz12b2lkIDA9PT1fd2luZG93JGdvb2dsZXRhZz97fTpfd2luZG93JGdvb2dsZXRhZyxfZ29vZ2xldGFnJGNtZD1nb29nbGV0YWcuY21kLGNtZD12b2lkIDA9PT1fZ29vZ2xldGFnJGNtZD9bXTpfZ29vZ2xldGFnJGNtZDtmb3IoZ29vZ2xldGFnLmFwaVJlYWR5PSEwLGdvb2dsZXRhZy5jbWQ9W10sZ29vZ2xldGFnLmNtZC5wdXNoPWZ1bmN0aW9uKGEpe3RyeXthKCl9Y2F0Y2goZXgpe31yZXR1cm4gMX0sZ29vZ2xldGFnLmNvbXBhbmlvbkFkcz1mdW5jdGlvbigpe3JldHVybiBjb21wYW5pb25BZHNTZXJ2aWNlfSxnb29nbGV0YWcuY29udGVudD1mdW5jdGlvbigpe3JldHVybiBjb250ZW50U2VydmljZX0sZ29vZ2xldGFnLmRlZmluZU91dE9mUGFnZVNsb3Q9ZGVmaW5lU2xvdCxnb29nbGV0YWcuZGVmaW5lU2xvdD1kZWZpbmVTbG90LGdvb2dsZXRhZy5kZXN0cm95U2xvdHM9ZnVuY3Rpb24oKXtzbG90cy5jbGVhcigpLHNsb3RzQnlJZC5jbGVhcigpfSxnb29nbGV0YWcuZGlzYWJsZVB1Ymxpc2hlckNvbnNvbGU9bm9vcEZ1bmMsZ29vZ2xldGFnLmRpc3BsYXk9ZnVuY3Rpb24oYXJnKXt2YXIgaWQ7aWQ9bnVsbCE9YXJnJiZhcmcuZ2V0U2xvdEVsZW1lbnRJZD9hcmcuZ2V0U2xvdEVsZW1lbnRJZCgpOm51bGwhPWFyZyYmYXJnLm5vZGVUeXBlP2FyZy5pZDpTdHJpbmcoYXJnKSxkaXNwbGF5U2xvdChzbG90c0J5SWQuZ2V0KGlkKSl9LGdvb2dsZXRhZy5lbmFibGVTZXJ2aWNlcz1ub29wRnVuYyxnb29nbGV0YWcuZ2V0VmVyc2lvbj1ub29wU3RyLGdvb2dsZXRhZy5wdWJhZHM9ZnVuY3Rpb24oKXtyZXR1cm4gcHViQWRzU2VydmljZX0sZ29vZ2xldGFnLnB1YmFkc1JlYWR5PSEwLGdvb2dsZXRhZy5zZXRBZElmcmFtZVRpdGxlPW5vb3BGdW5jLGdvb2dsZXRhZy5zaXplTWFwcGluZz1mdW5jdGlvbigpe3JldHVybiBuZXcgU2l6ZU1hcHBpbmdCdWlsZGVyfSx3aW5kb3cuZ29vZ2xldGFnPWdvb2dsZXRhZzswIT09Y21kLmxlbmd0aDspZ29vZ2xldGFnLmNtZC5wdXNoKGNtZC5zaGlmdCgpKTshZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJnb29nbGV0YWdzZXJ2aWNlcy1ncHQiLGFyZ3M6W119LFtdKTs=" }, { "title": "matomo", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIFRyYWNrZXI9ZnVuY3Rpb24oKXt9O1RyYWNrZXIucHJvdG90eXBlLnNldERvTm90VHJhY2s9bm9vcEZ1bmMsVHJhY2tlci5wcm90b3R5cGUuc2V0RG9tYWlucz1ub29wRnVuYyxUcmFja2VyLnByb3RvdHlwZS5zZXRDdXN0b21EaW1lbnNpb249bm9vcEZ1bmMsVHJhY2tlci5wcm90b3R5cGUudHJhY2tQYWdlVmlldz1ub29wRnVuYzt2YXIgQXN5bmNUcmFja2VyPWZ1bmN0aW9uKCl7fTtBc3luY1RyYWNrZXIucHJvdG90eXBlLmFkZExpc3RlbmVyPW5vb3BGdW5jO3ZhciBtYXRvbW9XcmFwcGVyPXtnZXRUcmFja2VyOlRyYWNrZXIsZ2V0QXN5bmNUcmFja2VyOkFzeW5jVHJhY2tlcn07d2luZG93LlBpd2lrPW1hdG9tb1dyYXBwZXIsZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJtYXRvbW8iLGFyZ3M6W119LFtdKTs=" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIFRyYWNrZXI9ZnVuY3Rpb24oKXt9O1RyYWNrZXIucHJvdG90eXBlLnNldERvTm90VHJhY2s9bm9vcEZ1bmMsVHJhY2tlci5wcm90b3R5cGUuc2V0RG9tYWlucz1ub29wRnVuYyxUcmFja2VyLnByb3RvdHlwZS5zZXRDdXN0b21EaW1lbnNpb249bm9vcEZ1bmMsVHJhY2tlci5wcm90b3R5cGUudHJhY2tQYWdlVmlldz1ub29wRnVuYzt2YXIgQXN5bmNUcmFja2VyPWZ1bmN0aW9uKCl7fTtBc3luY1RyYWNrZXIucHJvdG90eXBlLmFkZExpc3RlbmVyPW5vb3BGdW5jO3ZhciBtYXRvbW9XcmFwcGVyPXtnZXRUcmFja2VyOlRyYWNrZXIsZ2V0QXN5bmNUcmFja2VyOkFzeW5jVHJhY2tlcn07d2luZG93LlBpd2lrPW1hdG9tb1dyYXBwZXIsZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJtYXRvbW8iLGFyZ3M6W119LFtdKTs=" }, { "title": "metrika-yandex-tag", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIGFzeW5jQ2FsbGJhY2tGcm9tT3B0aW9ucz1mdW5jdGlvbihpZCxwYXJhbSl7dmFyIG9wdGlvbnM9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOnt9LGNhbGxiYWNrPW9wdGlvbnMuY2FsbGJhY2ssY3R4PW9wdGlvbnMuY3R4OyJmdW5jdGlvbiI9PXR5cGVvZiBjYWxsYmFjayYmKGNhbGxiYWNrPXZvaWQgMCE9PWN0eD9jYWxsYmFjay5iaW5kKGN0eCk6Y2FsbGJhY2ssc2V0VGltZW91dCgoZnVuY3Rpb24oKXtyZXR1cm4gY2FsbGJhY2soKX0pKSl9LGFwaT17YWRkRmlsZUV4dGVuc2lvbjpub29wRnVuYyxleHRMaW5rOmFzeW5jQ2FsbGJhY2tGcm9tT3B0aW9ucyxmaWxlOmFzeW5jQ2FsbGJhY2tGcm9tT3B0aW9ucyxnZXRDbGllbnRJRDpmdW5jdGlvbihpZCxjYil7Y2ImJnNldFRpbWVvdXQoY2IobnVsbCkpfSxoaXQ6YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zLG5vdEJvdW5jZTphc3luY0NhbGxiYWNrRnJvbU9wdGlvbnMscGFyYW1zOm5vb3BGdW5jLHJlYWNoR29hbDpmdW5jdGlvbihpZCx0YXJnZXQscGFyYW1zLGNhbGxiYWNrLGN0eCl7YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zKG51bGwsbnVsbCx7Y2FsbGJhY2s6Y2FsbGJhY2ssY3R4OmN0eH0pfSxzZXRVc2VySUQ6bm9vcEZ1bmMsdXNlclBhcmFtczpub29wRnVuYyxkZXN0cnVjdDpub29wRnVuY307ZnVuY3Rpb24geW0oaWQsZnVuY05hbWUpe2Zvcih2YXIgX2xlbj1hcmd1bWVudHMubGVuZ3RoLGFyZ3M9bmV3IEFycmF5KF9sZW4+Mj9fbGVuLTI6MCksX2tleT0yO19rZXk8X2xlbjtfa2V5KyspYXJnc1tfa2V5LTJdPWFyZ3VtZW50c1tfa2V5XTtyZXR1cm4gYXBpW2Z1bmNOYW1lXSYmYXBpW2Z1bmNOYW1lXShpZCwuLi5hcmdzKX12b2lkIDA9PT13aW5kb3cueW0/KHdpbmRvdy55bT15bSx5bS5hPVtdKTp3aW5kb3cueW0mJndpbmRvdy55bS5hJiYoeW0uYT13aW5kb3cueW0uYSx3aW5kb3cueW09eW0sd2luZG93LnltLmEuZm9yRWFjaCgoZnVuY3Rpb24ocGFyYW1zKXt2YXIgaWQ7aWQ9cGFyYW1zWzBdLHdpbmRvd1sieWFDb3VudGVyIi5jb25jYXQoaWQpXT1hcGksZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoInlhY291bnRlciIuY29uY2F0KGlkLCJpbml0ZWQiKSkpfSkpKSxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD1zb3VyY2UucnVsZVRleHR8fCIiO2lmKHNvdXJjZS5kb21haW5OYW1lKXt2YXIgcnVsZVN0YXJ0SW5kZXgsQUdfU0NSSVBUTEVUX01BUktFUj0iIyUjLy8iLFVCT19TQ1JJUFRMRVRfTUFSS0VSPSIjIytqcyI7c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKEFHX1NDUklQVExFVF9NQVJLRVIpP3J1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKEFHX1NDUklQVExFVF9NQVJLRVIpOnNvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhVQk9fU0NSSVBUTEVUX01BUktFUikmJihydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihVQk9fU0NSSVBUTEVUX01BUktFUikpO3ZhciBydWxlUGFydD1zb3VyY2UucnVsZVRleHQuc2xpY2UocnVsZVN0YXJ0SW5kZXgpO3ByZWZpeD0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpLmNvbmNhdChydWxlUGFydCl9bG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6Im1ldHJpa2EteWFuZGV4LXRhZyIsYXJnczpbXX0sW10pOw==" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIGFzeW5jQ2FsbGJhY2tGcm9tT3B0aW9ucz1mdW5jdGlvbihpZCxwYXJhbSl7dmFyIG9wdGlvbnM9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOnt9LGNhbGxiYWNrPW9wdGlvbnMuY2FsbGJhY2ssY3R4PW9wdGlvbnMuY3R4OyJmdW5jdGlvbiI9PXR5cGVvZiBjYWxsYmFjayYmKGNhbGxiYWNrPXZvaWQgMCE9PWN0eD9jYWxsYmFjay5iaW5kKGN0eCk6Y2FsbGJhY2ssc2V0VGltZW91dCgoZnVuY3Rpb24oKXtyZXR1cm4gY2FsbGJhY2soKX0pKSl9LGFwaT17YWRkRmlsZUV4dGVuc2lvbjpub29wRnVuYyxleHRMaW5rOmFzeW5jQ2FsbGJhY2tGcm9tT3B0aW9ucyxmaWxlOmFzeW5jQ2FsbGJhY2tGcm9tT3B0aW9ucyxnZXRDbGllbnRJRDpmdW5jdGlvbihpZCxjYil7Y2ImJnNldFRpbWVvdXQoY2IobnVsbCkpfSxoaXQ6YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zLG5vdEJvdW5jZTphc3luY0NhbGxiYWNrRnJvbU9wdGlvbnMscGFyYW1zOm5vb3BGdW5jLHJlYWNoR29hbDpmdW5jdGlvbihpZCx0YXJnZXQscGFyYW1zLGNhbGxiYWNrLGN0eCl7YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zKG51bGwsbnVsbCx7Y2FsbGJhY2s6Y2FsbGJhY2ssY3R4OmN0eH0pfSxzZXRVc2VySUQ6bm9vcEZ1bmMsdXNlclBhcmFtczpub29wRnVuYyxkZXN0cnVjdDpub29wRnVuY307ZnVuY3Rpb24geW0oaWQsZnVuY05hbWUpe2Zvcih2YXIgX2xlbj1hcmd1bWVudHMubGVuZ3RoLGFyZ3M9bmV3IEFycmF5KF9sZW4+Mj9fbGVuLTI6MCksX2tleT0yO19rZXk8X2xlbjtfa2V5KyspYXJnc1tfa2V5LTJdPWFyZ3VtZW50c1tfa2V5XTtyZXR1cm4gYXBpW2Z1bmNOYW1lXSYmYXBpW2Z1bmNOYW1lXShpZCwuLi5hcmdzKX12b2lkIDA9PT13aW5kb3cueW0/KHdpbmRvdy55bT15bSx5bS5hPVtdKTp3aW5kb3cueW0mJndpbmRvdy55bS5hJiYoeW0uYT13aW5kb3cueW0uYSx3aW5kb3cueW09eW0sd2luZG93LnltLmEuZm9yRWFjaCgoZnVuY3Rpb24ocGFyYW1zKXt2YXIgaWQ7aWQ9cGFyYW1zWzBdLHdpbmRvd1sieWFDb3VudGVyIi5jb25jYXQoaWQpXT1hcGksZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoInlhY291bnRlciIuY29uY2F0KGlkLCJpbml0ZWQiKSkpfSkpKSxmdW5jdGlvbihzb3VyY2Upe2lmKCEwPT09c291cmNlLnZlcmJvc2Upe3RyeXt2YXIgbG9nPWNvbnNvbGUubG9nLmJpbmQoY29uc29sZSksdHJhY2U9Y29uc29sZS50cmFjZS5iaW5kKGNvbnNvbGUpLHByZWZpeD0iIjtzb3VyY2UuZG9tYWluTmFtZSYmKHByZWZpeCs9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKSkscHJlZml4Kz0iIyUjLy9zY3JpcHRsZXQoJyIuY29uY2F0KHNvdXJjZS5uYW1lLCInLCAnIikuY29uY2F0KHNvdXJjZS5hcmdzLmpvaW4oIiwgIiksIicpIiksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBzdGFydCIpKSx0cmFjZSYmdHJhY2UoKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIGVuZCIpKX1jYXRjaChlKXt9ImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5fX2RlYnVnJiZ3aW5kb3cuX19kZWJ1Zyhzb3VyY2UpfX0oc291cmNlKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6Im1ldHJpa2EteWFuZGV4LXRhZyIsYXJnczpbXX0sW10pOw==" }, { "title": "metrika-yandex-watch", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wQXJyYXkoKXtyZXR1cm5bXX1jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIGNiTmFtZT0ieWFuZGV4X21ldHJpa2FfY2FsbGJhY2tzIixhc3luY0NhbGxiYWNrRnJvbU9wdGlvbnM9ZnVuY3Rpb24oKXt2YXIgb3B0aW9ucz1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sY2FsbGJhY2s9b3B0aW9ucy5jYWxsYmFjayxjdHg9b3B0aW9ucy5jdHg7ImZ1bmN0aW9uIj09dHlwZW9mIGNhbGxiYWNrJiYoY2FsbGJhY2s9dm9pZCAwIT09Y3R4P2NhbGxiYWNrLmJpbmQoY3R4KTpjYWxsYmFjayxzZXRUaW1lb3V0KChmdW5jdGlvbigpe3JldHVybiBjYWxsYmFjaygpfSkpKX07ZnVuY3Rpb24gTWV0cmlrYSgpe31NZXRyaWthLmNvdW50ZXJzPW5vb3BBcnJheSxNZXRyaWthLnByb3RvdHlwZS5hZGRGaWxlRXh0ZW5zaW9uPW5vb3BGdW5jLE1ldHJpa2EucHJvdG90eXBlLmdldENsaWVudElEPW5vb3BGdW5jLE1ldHJpa2EucHJvdG90eXBlLnNldFVzZXJJRD1ub29wRnVuYyxNZXRyaWthLnByb3RvdHlwZS51c2VyUGFyYW1zPW5vb3BGdW5jLE1ldHJpa2EucHJvdG90eXBlLnBhcmFtcz1ub29wRnVuYyxNZXRyaWthLnByb3RvdHlwZS5jb3VudGVycz1ub29wQXJyYXksTWV0cmlrYS5wcm90b3R5cGUuZXh0TGluaz1mdW5jdGlvbih1cmwsb3B0aW9ucyl7YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zKG9wdGlvbnMpfSxNZXRyaWthLnByb3RvdHlwZS5maWxlPWZ1bmN0aW9uKHVybCxvcHRpb25zKXthc3luY0NhbGxiYWNrRnJvbU9wdGlvbnMob3B0aW9ucyl9LE1ldHJpa2EucHJvdG90eXBlLmhpdD1mdW5jdGlvbih1cmwsb3B0aW9ucyl7YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zKG9wdGlvbnMpfSxNZXRyaWthLnByb3RvdHlwZS5yZWFjaEdvYWw9ZnVuY3Rpb24odGFyZ2V0LHBhcmFtcyxjYixjdHgpe2FzeW5jQ2FsbGJhY2tGcm9tT3B0aW9ucyh7Y2FsbGJhY2s6Y2IsY3R4OmN0eH0pfSxNZXRyaWthLnByb3RvdHlwZS5ub3RCb3VuY2U9YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zLHdpbmRvdy5ZYT93aW5kb3cuWWEuTWV0cmlrYT1NZXRyaWthOndpbmRvdy5ZYT17TWV0cmlrYTpNZXRyaWthfSx3aW5kb3dbY2JOYW1lXSYmQXJyYXkuaXNBcnJheSh3aW5kb3dbY2JOYW1lXSkmJndpbmRvd1tjYk5hbWVdLmZvckVhY2goKGZ1bmN0aW9uKGZ1bmMpeyJmdW5jdGlvbiI9PXR5cGVvZiBmdW5jJiZmdW5jKCl9KSksZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJtZXRyaWthLXlhbmRleC13YXRjaCIsYXJnczpbXX0sW10pOw==" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wQXJyYXkoKXtyZXR1cm5bXX1jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIGNiTmFtZT0ieWFuZGV4X21ldHJpa2FfY2FsbGJhY2tzIixhc3luY0NhbGxiYWNrRnJvbU9wdGlvbnM9ZnVuY3Rpb24oKXt2YXIgb3B0aW9ucz1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sY2FsbGJhY2s9b3B0aW9ucy5jYWxsYmFjayxjdHg9b3B0aW9ucy5jdHg7ImZ1bmN0aW9uIj09dHlwZW9mIGNhbGxiYWNrJiYoY2FsbGJhY2s9dm9pZCAwIT09Y3R4P2NhbGxiYWNrLmJpbmQoY3R4KTpjYWxsYmFjayxzZXRUaW1lb3V0KChmdW5jdGlvbigpe3JldHVybiBjYWxsYmFjaygpfSkpKX07ZnVuY3Rpb24gTWV0cmlrYSgpe31NZXRyaWthLmNvdW50ZXJzPW5vb3BBcnJheSxNZXRyaWthLnByb3RvdHlwZS5hZGRGaWxlRXh0ZW5zaW9uPW5vb3BGdW5jLE1ldHJpa2EucHJvdG90eXBlLmdldENsaWVudElEPW5vb3BGdW5jLE1ldHJpa2EucHJvdG90eXBlLnNldFVzZXJJRD1ub29wRnVuYyxNZXRyaWthLnByb3RvdHlwZS51c2VyUGFyYW1zPW5vb3BGdW5jLE1ldHJpa2EucHJvdG90eXBlLnBhcmFtcz1ub29wRnVuYyxNZXRyaWthLnByb3RvdHlwZS5jb3VudGVycz1ub29wQXJyYXksTWV0cmlrYS5wcm90b3R5cGUuZXh0TGluaz1mdW5jdGlvbih1cmwsb3B0aW9ucyl7YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zKG9wdGlvbnMpfSxNZXRyaWthLnByb3RvdHlwZS5maWxlPWZ1bmN0aW9uKHVybCxvcHRpb25zKXthc3luY0NhbGxiYWNrRnJvbU9wdGlvbnMob3B0aW9ucyl9LE1ldHJpa2EucHJvdG90eXBlLmhpdD1mdW5jdGlvbih1cmwsb3B0aW9ucyl7YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zKG9wdGlvbnMpfSxNZXRyaWthLnByb3RvdHlwZS5yZWFjaEdvYWw9ZnVuY3Rpb24odGFyZ2V0LHBhcmFtcyxjYixjdHgpe2FzeW5jQ2FsbGJhY2tGcm9tT3B0aW9ucyh7Y2FsbGJhY2s6Y2IsY3R4OmN0eH0pfSxNZXRyaWthLnByb3RvdHlwZS5ub3RCb3VuY2U9YXN5bmNDYWxsYmFja0Zyb21PcHRpb25zLHdpbmRvdy5ZYT93aW5kb3cuWWEuTWV0cmlrYT1NZXRyaWthOndpbmRvdy5ZYT17TWV0cmlrYTpNZXRyaWthfSx3aW5kb3dbY2JOYW1lXSYmQXJyYXkuaXNBcnJheSh3aW5kb3dbY2JOYW1lXSkmJndpbmRvd1tjYk5hbWVdLmZvckVhY2goKGZ1bmN0aW9uKGZ1bmMpeyJmdW5jdGlvbiI9PXR5cGVvZiBmdW5jJiZmdW5jKCl9KSksZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJtZXRyaWthLXlhbmRleC13YXRjaCIsYXJnczpbXX0sW10pOw==" }, { "title": "naver-wcslog", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93Lndjc19hZGQ9e30sd2luZG93Lndjc19kbz1ub29wRnVuYyx3aW5kb3cud2NzPXtpbmZsb3c6bm9vcEZ1bmN9LGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PXNvdXJjZS5ydWxlVGV4dHx8IiI7aWYoc291cmNlLmRvbWFpbk5hbWUpe3ZhciBydWxlU3RhcnRJbmRleCxBR19TQ1JJUFRMRVRfTUFSS0VSPSIjJSMvLyIsVUJPX1NDUklQVExFVF9NQVJLRVI9IiMjK2pzIjtzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoQUdfU0NSSVBUTEVUX01BUktFUik/cnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoQUdfU0NSSVBUTEVUX01BUktFUik6c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSYmKHJ1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToibmF2ZXItd2NzbG9nIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93Lndjc19hZGQ9e30sd2luZG93Lndjc19kbz1ub29wRnVuYyx3aW5kb3cud2NzPXtpbmZsb3c6bm9vcEZ1bmN9LGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PSIiO3NvdXJjZS5kb21haW5OYW1lJiYocHJlZml4Kz0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpKSxwcmVmaXgrPSIjJSMvL3NjcmlwdGxldCgnIi5jb25jYXQoc291cmNlLm5hbWUsIicsICciKS5jb25jYXQoc291cmNlLmFyZ3Muam9pbigiLCAiKSwiJykiKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToibmF2ZXItd2NzbG9nIixhcmdzOltdfSxbXSk7" }, { "title": "noeval", @@ -298,14 +298,14 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93LmV2YWw9ZnVuY3Rpb24ocyl7IWZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PXNvdXJjZS5ydWxlVGV4dHx8IiI7aWYoc291cmNlLmRvbWFpbk5hbWUpe3ZhciBydWxlU3RhcnRJbmRleCxBR19TQ1JJUFRMRVRfTUFSS0VSPSIjJSMvLyIsVUJPX1NDUklQVExFVF9NQVJLRVI9IiMjK2pzIjtzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoQUdfU0NSSVBUTEVUX01BUktFUik/cnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoQUdfU0NSSVBUTEVUX01BUktFUik6c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSYmKHJ1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpLGZ1bmN0aW9uKHNvdXJjZSxtZXNzYWdlKXt2YXIgZm9yY2VkPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0sY29udmVydE1lc3NhZ2VUb1N0cmluZz0hKGFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdKXx8YXJndW1lbnRzWzNdLG5hbWU9c291cmNlLm5hbWUsdmVyYm9zZT1zb3VyY2UudmVyYm9zZTtpZihmb3JjZWR8fHZlcmJvc2Upe3ZhciBuYXRpdmVDb25zb2xlPWNvbnNvbGUubG9nO2NvbnZlcnRNZXNzYWdlVG9TdHJpbmc/bmF0aXZlQ29uc29sZSgiIi5jb25jYXQobmFtZSwiOiAiKS5jb25jYXQobWVzc2FnZSkpOm5hdGl2ZUNvbnNvbGUoIiIuY29uY2F0KG5hbWUsIjoiKSxtZXNzYWdlKX19KHNvdXJjZSwiQWRHdWFyZCBoYXMgcHJldmVudGVkIGV2YWw6XG4iLmNvbmNhdChzKSwhMCl9LmJpbmQoKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6Im5vZXZhbCIsYXJnczpbXX0sW10pOw==" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93LmV2YWw9ZnVuY3Rpb24ocyl7IWZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PSIiO3NvdXJjZS5kb21haW5OYW1lJiYocHJlZml4Kz0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpKSxwcmVmaXgrPSIjJSMvL3NjcmlwdGxldCgnIi5jb25jYXQoc291cmNlLm5hbWUsIicsICciKS5jb25jYXQoc291cmNlLmFyZ3Muam9pbigiLCAiKSwiJykiKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpLGZ1bmN0aW9uKHNvdXJjZSxtZXNzYWdlKXt2YXIgZm9yY2VkPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0sY29udmVydE1lc3NhZ2VUb1N0cmluZz0hKGFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdKXx8YXJndW1lbnRzWzNdLG5hbWU9c291cmNlLm5hbWUsdmVyYm9zZT1zb3VyY2UudmVyYm9zZTtpZihmb3JjZWR8fHZlcmJvc2Upe3ZhciBuYXRpdmVDb25zb2xlPWNvbnNvbGUubG9nO2NvbnZlcnRNZXNzYWdlVG9TdHJpbmc/bmF0aXZlQ29uc29sZSgiIi5jb25jYXQobmFtZSwiOiAiKS5jb25jYXQobWVzc2FnZSkpOm5hdGl2ZUNvbnNvbGUoIiIuY29uY2F0KG5hbWUsIjoiKSxtZXNzYWdlKX19KHNvdXJjZSwiQWRHdWFyZCBoYXMgcHJldmVudGVkIGV2YWw6XG4iLmNvbmNhdChzKSwhMCl9LmJpbmQoKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6Im5vZXZhbCIsYXJnczpbXX0sW10pOw==" }, { "title": "pardot-1.0", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wU3RyKCl7cmV0dXJuIiJ9ZnVuY3Rpb24gbm9vcE51bGwoKXtyZXR1cm4gbnVsbH1jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7ZnVuY3Rpb24gcGlUcmFja2VyKCl7d2luZG93LnBpPXt0cmFja2VyOnt2aXNpdG9yX2lkOiIiLHZpc2l0b3JfaWRfc2lnbjoiIixwaV9vcHRfaW46IiIsY2FtcGFpZ25faWQ6IiJ9fSx3aW5kb3cucGlTY3JpcHROdW0rPTF9d2luZG93LnBpVmVyc2lvbj0iMS4wLjIiLHdpbmRvdy5waVNjcmlwdE51bT0wLHdpbmRvdy5waVNjcmlwdE9iaj1bXSx3aW5kb3cuY2hlY2tOYW1lc3BhY2U9bm9vcEZ1bmMsd2luZG93LmdldFBhcmRvdFVybD1ub29wU3RyLHdpbmRvdy5waUdldFBhcmFtZXRlcj1ub29wTnVsbCx3aW5kb3cucGlTZXRDb29raWU9bm9vcEZ1bmMsd2luZG93LnBpR2V0Q29va2llPW5vb3BTdHIsd2luZG93LnBpUmVzcG9uc2U9bm9vcEZ1bmMsd2luZG93LnBpVHJhY2tlcj1waVRyYWNrZXIscGlUcmFja2VyKCksZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJwYXJkb3QtMS4wIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wU3RyKCl7cmV0dXJuIiJ9ZnVuY3Rpb24gbm9vcE51bGwoKXtyZXR1cm4gbnVsbH1jb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7ZnVuY3Rpb24gcGlUcmFja2VyKCl7d2luZG93LnBpPXt0cmFja2VyOnt2aXNpdG9yX2lkOiIiLHZpc2l0b3JfaWRfc2lnbjoiIixwaV9vcHRfaW46IiIsY2FtcGFpZ25faWQ6IiJ9fSx3aW5kb3cucGlTY3JpcHROdW0rPTF9d2luZG93LnBpVmVyc2lvbj0iMS4wLjIiLHdpbmRvdy5waVNjcmlwdE51bT0wLHdpbmRvdy5waVNjcmlwdE9iaj1bXSx3aW5kb3cuY2hlY2tOYW1lc3BhY2U9bm9vcEZ1bmMsd2luZG93LmdldFBhcmRvdFVybD1ub29wU3RyLHdpbmRvdy5waUdldFBhcmFtZXRlcj1ub29wTnVsbCx3aW5kb3cucGlTZXRDb29raWU9bm9vcEZ1bmMsd2luZG93LnBpR2V0Q29va2llPW5vb3BTdHIsd2luZG93LnBpUmVzcG9uc2U9bm9vcEZ1bmMsd2luZG93LnBpVHJhY2tlcj1waVRyYWNrZXIscGlUcmFja2VyKCksZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJwYXJkb3QtMS4wIixhcmdzOltdfSxbXSk7" }, { "title": "prebid-ads", @@ -315,14 +315,14 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93LmNhblJ1bkFkcz0hMCx3aW5kb3cuaXNBZEJsb2NrQWN0aXZlPSExLGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PXNvdXJjZS5ydWxlVGV4dHx8IiI7aWYoc291cmNlLmRvbWFpbk5hbWUpe3ZhciBydWxlU3RhcnRJbmRleCxBR19TQ1JJUFRMRVRfTUFSS0VSPSIjJSMvLyIsVUJPX1NDUklQVExFVF9NQVJLRVI9IiMjK2pzIjtzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoQUdfU0NSSVBUTEVUX01BUktFUik/cnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoQUdfU0NSSVBUTEVUX01BUktFUik6c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSYmKHJ1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToicHJlYmlkLWFkcyIsYXJnczpbXX0sW10pOw==" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93LmNhblJ1bkFkcz0hMCx3aW5kb3cuaXNBZEJsb2NrQWN0aXZlPSExLGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PSIiO3NvdXJjZS5kb21haW5OYW1lJiYocHJlZml4Kz0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpKSxwcmVmaXgrPSIjJSMvL3NjcmlwdGxldCgnIi5jb25jYXQoc291cmNlLm5hbWUsIicsICciKS5jb25jYXQoc291cmNlLmFyZ3Muam9pbigiLCAiKSwiJykiKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToicHJlYmlkLWFkcyIsYXJnczpbXX0sW10pOw==" }, { "title": "prebid", "aliases": [], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wU3RyKCl7cmV0dXJuIiJ9ZnVuY3Rpb24gbm9vcEFycmF5KCl7cmV0dXJuW119Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciBwdXNoRnVuY3Rpb249ZnVuY3Rpb24oYXJnKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgYXJnKXRyeXthcmcuY2FsbCgpfWNhdGNoKGV4KXt9fSxwYmpzV3JhcHBlcj17YWRkQWRVbml0cygpe30sYWRTZXJ2ZXJzOntkZnA6e2J1aWxkVmlkZW9Vcmw6bm9vcFN0cn19LGFkVW5pdHM6W10sYWxpYXNCaWRkZXIoKXt9LGNtZDpbXSxlbmFibGVBbmFseXRpY3MoKXt9LGdldEhpZ2hlc3RDcG1CaWRzOm5vb3BBcnJheSxsaWJMb2FkZWQ6ITAscXVlOltdLHJlcXVlc3RCaWRzKGFyZyl7aWYoYXJnIGluc3RhbmNlb2YgT2JqZWN0JiZhcmcuYmlkc0JhY2tIYW5kbGVyKXRyeXthcmcuYmlkc0JhY2tIYW5kbGVyLmNhbGwoKX1jYXRjaChleCl7fX0scmVtb3ZlQWRVbml0KCl7fSxzZXRCaWRkZXJDb25maWcoKXt9LHNldENvbmZpZygpe30sc2V0VGFyZ2V0aW5nRm9yR1BUQXN5bmMoKXt9fTtwYmpzV3JhcHBlci5jbWQucHVzaD1wdXNoRnVuY3Rpb24scGJqc1dyYXBwZXIucXVlLnB1c2g9cHVzaEZ1bmN0aW9uLHdpbmRvdy5wYmpzPXBianNXcmFwcGVyLGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PXNvdXJjZS5ydWxlVGV4dHx8IiI7aWYoc291cmNlLmRvbWFpbk5hbWUpe3ZhciBydWxlU3RhcnRJbmRleCxBR19TQ1JJUFRMRVRfTUFSS0VSPSIjJSMvLyIsVUJPX1NDUklQVExFVF9NQVJLRVI9IiMjK2pzIjtzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoQUdfU0NSSVBUTEVUX01BUktFUik/cnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoQUdfU0NSSVBUTEVUX01BUktFUik6c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSYmKHJ1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToicHJlYmlkIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wU3RyKCl7cmV0dXJuIiJ9ZnVuY3Rpb24gbm9vcEFycmF5KCl7cmV0dXJuW119Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciBwdXNoRnVuY3Rpb249ZnVuY3Rpb24oYXJnKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgYXJnKXRyeXthcmcuY2FsbCgpfWNhdGNoKGV4KXt9fSxwYmpzV3JhcHBlcj17YWRkQWRVbml0cygpe30sYWRTZXJ2ZXJzOntkZnA6e2J1aWxkVmlkZW9Vcmw6bm9vcFN0cn19LGFkVW5pdHM6W10sYWxpYXNCaWRkZXIoKXt9LGNtZDpbXSxlbmFibGVBbmFseXRpY3MoKXt9LGdldEhpZ2hlc3RDcG1CaWRzOm5vb3BBcnJheSxsaWJMb2FkZWQ6ITAscXVlOltdLHJlcXVlc3RCaWRzKGFyZyl7aWYoYXJnIGluc3RhbmNlb2YgT2JqZWN0JiZhcmcuYmlkc0JhY2tIYW5kbGVyKXRyeXthcmcuYmlkc0JhY2tIYW5kbGVyLmNhbGwoKX1jYXRjaChleCl7fX0scmVtb3ZlQWRVbml0KCl7fSxzZXRCaWRkZXJDb25maWcoKXt9LHNldENvbmZpZygpe30sc2V0VGFyZ2V0aW5nRm9yR1BUQXN5bmMoKXt9fTtwYmpzV3JhcHBlci5jbWQucHVzaD1wdXNoRnVuY3Rpb24scGJqc1dyYXBwZXIucXVlLnB1c2g9cHVzaEZ1bmN0aW9uLHdpbmRvdy5wYmpzPXBianNXcmFwcGVyLGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PSIiO3NvdXJjZS5kb21haW5OYW1lJiYocHJlZml4Kz0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpKSxwcmVmaXgrPSIjJSMvL3NjcmlwdGxldCgnIi5jb25jYXQoc291cmNlLm5hbWUsIicsICciKS5jb25jYXQoc291cmNlLmFyZ3Muam9pbigiLCAiKSwiJykiKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToicHJlYmlkIixhcmdzOltdfSxbXSk7" }, { "title": "prevent-bab", @@ -336,7 +336,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBoaXQoc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4O3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcygiIyUjLy8iKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZigiIyUjLy8iKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoIiMjK2pzIikmJihydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZigiIyMranMiKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fWNvbnN0IHVwZGF0ZWRBcmdzPWFyZ3M/W10uY29uY2F0KHNvdXJjZSkuY29uY2F0KGFyZ3MpOltzb3VyY2VdO3RyeXsoZnVuY3Rpb24oc291cmNlKXt2YXIgbmF0aXZlU2V0VGltZW91dD13aW5kb3cuc2V0VGltZW91dCxiYWJSZWdleD0vXC5iYWJfZWxlbWVudGlkLiQvO3dpbmRvdy5zZXRUaW1lb3V0PWZ1bmN0aW9uKGNhbGxiYWNrKXtpZigic3RyaW5nIiE9dHlwZW9mIGNhbGxiYWNrfHwhYmFiUmVnZXgudGVzdChjYWxsYmFjaykpe2Zvcih2YXIgX2xlbj1hcmd1bWVudHMubGVuZ3RoLGFyZ3M9bmV3IEFycmF5KF9sZW4+MT9fbGVuLTE6MCksX2tleT0xO19rZXk8X2xlbjtfa2V5KyspYXJnc1tfa2V5LTFdPWFyZ3VtZW50c1tfa2V5XTtyZXR1cm4gbmF0aXZlU2V0VGltZW91dC5hcHBseSh3aW5kb3csW2NhbGxiYWNrLC4uLmFyZ3NdKX1oaXQoc291cmNlKX07dmFyIHNpZ25hdHVyZXM9W1siYmxvY2thZGJsb2NrIl0sWyJiYWJhc2JtIl0sWy9nZXRJdGVtXCgnYmFibidcKS9dLFsiZ2V0RWxlbWVudEJ5SWQiLCJTdHJpbmcuZnJvbUNoYXJDb2RlIiwiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkiLCJjaGFyQXQiLCJET01Db250ZW50TG9hZGVkIiwiQWRCbG9jayIsImFkZEV2ZW50TGlzdGVuZXIiLCJkb1Njcm9sbCIsImZyb21DaGFyQ29kZSIsIjw8MnxyPj40Iiwic2Vzc2lvblN0b3JhZ2UiLCJjbGllbnRXaWR0aCIsImxvY2FsU3RvcmFnZSIsIk1hdGgiLCJyYW5kb20iXV0sbmF0aXZlRXZhbD13aW5kb3cuZXZhbDt3aW5kb3cuZXZhbD1mdW5jdGlvbihzdHIpe2lmKCFmdW5jdGlvbihzdHIpe2lmKCJzdHJpbmciIT10eXBlb2Ygc3RyKXJldHVybiExO2Zvcih2YXIgaT0wO2k8c2lnbmF0dXJlcy5sZW5ndGg7aSs9MSl7Zm9yKHZhciB0b2tlbnM9c2lnbmF0dXJlc1tpXSxtYXRjaD0wLGo9MDtqPHRva2Vucy5sZW5ndGg7ais9MSl7dmFyIHRva2VuPXRva2Vuc1tqXTsodG9rZW4gaW5zdGFuY2VvZiBSZWdFeHA/dG9rZW4udGVzdChzdHIpOnN0ci5pbmNsdWRlcyh0b2tlbikpJiYobWF0Y2grPTEpfWlmKG1hdGNoL3Rva2Vucy5sZW5ndGg+PS44KXJldHVybiEwfXJldHVybiExfShzdHIpKXJldHVybiBuYXRpdmVFdmFsKHN0cik7aGl0KHNvdXJjZSk7dmFyIGJvZHlFbD1kb2N1bWVudC5ib2R5O2JvZHlFbCYmYm9keUVsLnN0eWxlLnJlbW92ZVByb3BlcnR5KCJ2aXNpYmlsaXR5Iik7dmFyIGVsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJiYWJhc2Jtc2d4Iik7ZWwmJmVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZWwpfS5iaW5kKHdpbmRvdyl9KS5hcHBseSh0aGlzLHVwZGF0ZWRBcmdzKX1jYXRjaChlKXtjb25zb2xlLmxvZyhlKX19KHtuYW1lOiJwcmV2ZW50LWJhYiIsYXJnczpbXX0sW10pOw==" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBoaXQoc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe3ZhciBuYXRpdmVTZXRUaW1lb3V0PXdpbmRvdy5zZXRUaW1lb3V0LGJhYlJlZ2V4PS9cLmJhYl9lbGVtZW50aWQuJC87d2luZG93LnNldFRpbWVvdXQ9ZnVuY3Rpb24oY2FsbGJhY2spe2lmKCJzdHJpbmciIT10eXBlb2YgY2FsbGJhY2t8fCFiYWJSZWdleC50ZXN0KGNhbGxiYWNrKSl7Zm9yKHZhciBfbGVuPWFyZ3VtZW50cy5sZW5ndGgsYXJncz1uZXcgQXJyYXkoX2xlbj4xP19sZW4tMTowKSxfa2V5PTE7X2tleTxfbGVuO19rZXkrKylhcmdzW19rZXktMV09YXJndW1lbnRzW19rZXldO3JldHVybiBuYXRpdmVTZXRUaW1lb3V0LmFwcGx5KHdpbmRvdyxbY2FsbGJhY2ssLi4uYXJnc10pfWhpdChzb3VyY2UpfTt2YXIgc2lnbmF0dXJlcz1bWyJibG9ja2FkYmxvY2siXSxbImJhYmFzYm0iXSxbL2dldEl0ZW1cKCdiYWJuJ1wpL10sWyJnZXRFbGVtZW50QnlJZCIsIlN0cmluZy5mcm9tQ2hhckNvZGUiLCJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIsImNoYXJBdCIsIkRPTUNvbnRlbnRMb2FkZWQiLCJBZEJsb2NrIiwiYWRkRXZlbnRMaXN0ZW5lciIsImRvU2Nyb2xsIiwiZnJvbUNoYXJDb2RlIiwiPDwyfHI+PjQiLCJzZXNzaW9uU3RvcmFnZSIsImNsaWVudFdpZHRoIiwibG9jYWxTdG9yYWdlIiwiTWF0aCIsInJhbmRvbSJdXSxuYXRpdmVFdmFsPXdpbmRvdy5ldmFsO3dpbmRvdy5ldmFsPWZ1bmN0aW9uKHN0cil7aWYoIWZ1bmN0aW9uKHN0cil7aWYoInN0cmluZyIhPXR5cGVvZiBzdHIpcmV0dXJuITE7Zm9yKHZhciBpPTA7aTxzaWduYXR1cmVzLmxlbmd0aDtpKz0xKXtmb3IodmFyIHRva2Vucz1zaWduYXR1cmVzW2ldLG1hdGNoPTAsaj0wO2o8dG9rZW5zLmxlbmd0aDtqKz0xKXt2YXIgdG9rZW49dG9rZW5zW2pdOyh0b2tlbiBpbnN0YW5jZW9mIFJlZ0V4cD90b2tlbi50ZXN0KHN0cik6c3RyLmluY2x1ZGVzKHRva2VuKSkmJihtYXRjaCs9MSl9aWYobWF0Y2gvdG9rZW5zLmxlbmd0aD49LjgpcmV0dXJuITB9cmV0dXJuITF9KHN0cikpcmV0dXJuIG5hdGl2ZUV2YWwoc3RyKTtoaXQoc291cmNlKTt2YXIgYm9keUVsPWRvY3VtZW50LmJvZHk7Ym9keUVsJiZib2R5RWwuc3R5bGUucmVtb3ZlUHJvcGVydHkoInZpc2liaWxpdHkiKTt2YXIgZWw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJhYmFzYm1zZ3giKTtlbCYmZWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlbCl9LmJpbmQod2luZG93KX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6InByZXZlbnQtYmFiIixhcmdzOltdfSxbXSk7" }, { "title": "prevent-bab2", @@ -345,7 +345,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIHNjcmlwdD1kb2N1bWVudC5jdXJyZW50U2NyaXB0O2lmKG51bGwhPT1zY3JpcHQpe3ZhciB1cmw9c2NyaXB0LnNyYztpZigic3RyaW5nIj09dHlwZW9mIHVybCl7dmFyIGRvbWFpbnNTdHI9WyJhZGNsaXh4XFwubmV0IiwiYWRuZXRhc2lhXFwuY29tIiwiYWR0cmFja2Vyc1xcLm5ldCIsImJhbm5lcnRyYWNrXFwubmV0Il0uam9pbigifCIpLG1hdGNoU3RyPSJeaHR0cHM/Oi8vW1xcdy1dK1xcLigiLmNvbmNhdChkb21haW5zU3RyLCIpLy4iKTshMSE9PW5ldyBSZWdFeHAobWF0Y2hTdHIpLnRlc3QodXJsKSYmKHdpbmRvdy5uSDdlWHpPc0c9ODU4LGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PXNvdXJjZS5ydWxlVGV4dHx8IiI7aWYoc291cmNlLmRvbWFpbk5hbWUpe3ZhciBydWxlU3RhcnRJbmRleCxBR19TQ1JJUFRMRVRfTUFSS0VSPSIjJSMvLyIsVUJPX1NDUklQVExFVF9NQVJLRVI9IiMjK2pzIjtzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoQUdfU0NSSVBUTEVUX01BUktFUik/cnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoQUdfU0NSSVBUTEVUX01BUktFUik6c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSYmKHJ1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpKX19fSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToicHJldmVudC1iYWIyIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIHNjcmlwdD1kb2N1bWVudC5jdXJyZW50U2NyaXB0O2lmKG51bGwhPT1zY3JpcHQpe3ZhciB1cmw9c2NyaXB0LnNyYztpZigic3RyaW5nIj09dHlwZW9mIHVybCl7dmFyIGRvbWFpbnNTdHI9WyJhZGNsaXh4XFwubmV0IiwiYWRuZXRhc2lhXFwuY29tIiwiYWR0cmFja2Vyc1xcLm5ldCIsImJhbm5lcnRyYWNrXFwubmV0Il0uam9pbigifCIpLG1hdGNoU3RyPSJeaHR0cHM/Oi8vW1xcdy1dK1xcLigiLmNvbmNhdChkb21haW5zU3RyLCIpLy4iKTshMSE9PW5ldyBSZWdFeHAobWF0Y2hTdHIpLnRlc3QodXJsKSYmKHdpbmRvdy5uSDdlWHpPc0c9ODU4LGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PSIiO3NvdXJjZS5kb21haW5OYW1lJiYocHJlZml4Kz0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpKSxwcmVmaXgrPSIjJSMvL3NjcmlwdGxldCgnIi5jb25jYXQoc291cmNlLm5hbWUsIicsICciKS5jb25jYXQoc291cmNlLmFyZ3Muam9pbigiLCAiKSwiJykiKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpKX19fSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToicHJldmVudC1iYWIyIixhcmdzOltdfSxbXSk7" }, { "title": "prevent-fab-3.2.0", @@ -358,7 +358,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wVGhpcygpe3JldHVybiB0aGlzfWNvbnN0IHVwZGF0ZWRBcmdzPWFyZ3M/W10uY29uY2F0KHNvdXJjZSkuY29uY2F0KGFyZ3MpOltzb3VyY2VdO3RyeXsoZnVuY3Rpb24oc291cmNlKXshZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4LEFHX1NDUklQVExFVF9NQVJLRVI9IiMlIy8vIixVQk9fU0NSSVBUTEVUX01BUktFUj0iIyMranMiO3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcyhBR19TQ1JJUFRMRVRfTUFSS0VSKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZihBR19TQ1JJUFRMRVRfTUFSS0VSKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoVUJPX1NDUklQVExFVF9NQVJLRVIpJiYocnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoVUJPX1NDUklQVExFVF9NQVJLRVIpKTt2YXIgcnVsZVBhcnQ9c291cmNlLnJ1bGVUZXh0LnNsaWNlKHJ1bGVTdGFydEluZGV4KTtwcmVmaXg9IiIuY29uY2F0KHNvdXJjZS5kb21haW5OYW1lKS5jb25jYXQocnVsZVBhcnQpfWxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSk7dmFyIEZhYj1mdW5jdGlvbigpe307RmFiLnByb3RvdHlwZS5jaGVjaz1ub29wRnVuYyxGYWIucHJvdG90eXBlLmNsZWFyRXZlbnQ9bm9vcEZ1bmMsRmFiLnByb3RvdHlwZS5lbWl0RXZlbnQ9bm9vcEZ1bmMsRmFiLnByb3RvdHlwZS5vbj1mdW5jdGlvbihhLGIpe3JldHVybiBhfHxiKCksdGhpc30sRmFiLnByb3RvdHlwZS5vbkRldGVjdGVkPW5vb3BUaGlzLEZhYi5wcm90b3R5cGUub25Ob3REZXRlY3RlZD1mdW5jdGlvbihhKXtyZXR1cm4gYSgpLHRoaXN9LEZhYi5wcm90b3R5cGUuc2V0T3B0aW9uPW5vb3BGdW5jLEZhYi5wcm90b3R5cGUub3B0aW9ucz17c2V0Om5vb3BGdW5jLGdldDpub29wRnVuY307dmFyIGZhYj1uZXcgRmFiLGdldFNldEZhYj17Z2V0OigpPT5GYWIsc2V0KCl7fX0sZ2V0c2V0ZmFiPXtnZXQ6KCk9PmZhYixzZXQoKXt9fTtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwod2luZG93LCJGdWNrQWRCbG9jayIpP3dpbmRvdy5GdWNrQWRCbG9jaz1GYWI6T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywiRnVja0FkQmxvY2siLGdldFNldEZhYiksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHdpbmRvdywiQmxvY2tBZEJsb2NrIik/d2luZG93LkJsb2NrQWRCbG9jaz1GYWI6T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywiQmxvY2tBZEJsb2NrIixnZXRTZXRGYWIpLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh3aW5kb3csIlNuaWZmQWRCbG9jayIpP3dpbmRvdy5TbmlmZkFkQmxvY2s9RmFiOk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh3aW5kb3csIlNuaWZmQWRCbG9jayIsZ2V0U2V0RmFiKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwod2luZG93LCJmdWNrQWRCbG9jayIpP3dpbmRvdy5mdWNrQWRCbG9jaz1mYWI6T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywiZnVja0FkQmxvY2siLGdldHNldGZhYiksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHdpbmRvdywiYmxvY2tBZEJsb2NrIik/d2luZG93LmJsb2NrQWRCbG9jaz1mYWI6T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywiYmxvY2tBZEJsb2NrIixnZXRzZXRmYWIpLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh3aW5kb3csInNuaWZmQWRCbG9jayIpP3dpbmRvdy5zbmlmZkFkQmxvY2s9ZmFiOk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh3aW5kb3csInNuaWZmQWRCbG9jayIsZ2V0c2V0ZmFiKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6InByZXZlbnQtZmFiLTMuMi4wIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBub29wRnVuYygpe31mdW5jdGlvbiBub29wVGhpcygpe3JldHVybiB0aGlzfWNvbnN0IHVwZGF0ZWRBcmdzPWFyZ3M/W10uY29uY2F0KHNvdXJjZSkuY29uY2F0KGFyZ3MpOltzb3VyY2VdO3RyeXsoZnVuY3Rpb24oc291cmNlKXshZnVuY3Rpb24oc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19KHNvdXJjZSk7dmFyIEZhYj1mdW5jdGlvbigpe307RmFiLnByb3RvdHlwZS5jaGVjaz1ub29wRnVuYyxGYWIucHJvdG90eXBlLmNsZWFyRXZlbnQ9bm9vcEZ1bmMsRmFiLnByb3RvdHlwZS5lbWl0RXZlbnQ9bm9vcEZ1bmMsRmFiLnByb3RvdHlwZS5vbj1mdW5jdGlvbihhLGIpe3JldHVybiBhfHxiKCksdGhpc30sRmFiLnByb3RvdHlwZS5vbkRldGVjdGVkPW5vb3BUaGlzLEZhYi5wcm90b3R5cGUub25Ob3REZXRlY3RlZD1mdW5jdGlvbihhKXtyZXR1cm4gYSgpLHRoaXN9LEZhYi5wcm90b3R5cGUuc2V0T3B0aW9uPW5vb3BGdW5jLEZhYi5wcm90b3R5cGUub3B0aW9ucz17c2V0Om5vb3BGdW5jLGdldDpub29wRnVuY307dmFyIGZhYj1uZXcgRmFiLGdldFNldEZhYj17Z2V0OigpPT5GYWIsc2V0KCl7fX0sZ2V0c2V0ZmFiPXtnZXQ6KCk9PmZhYixzZXQoKXt9fTtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwod2luZG93LCJGdWNrQWRCbG9jayIpP3dpbmRvdy5GdWNrQWRCbG9jaz1GYWI6T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywiRnVja0FkQmxvY2siLGdldFNldEZhYiksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHdpbmRvdywiQmxvY2tBZEJsb2NrIik/d2luZG93LkJsb2NrQWRCbG9jaz1GYWI6T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywiQmxvY2tBZEJsb2NrIixnZXRTZXRGYWIpLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh3aW5kb3csIlNuaWZmQWRCbG9jayIpP3dpbmRvdy5TbmlmZkFkQmxvY2s9RmFiOk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh3aW5kb3csIlNuaWZmQWRCbG9jayIsZ2V0U2V0RmFiKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwod2luZG93LCJmdWNrQWRCbG9jayIpP3dpbmRvdy5mdWNrQWRCbG9jaz1mYWI6T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywiZnVja0FkQmxvY2siLGdldHNldGZhYiksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHdpbmRvdywiYmxvY2tBZEJsb2NrIik/d2luZG93LmJsb2NrQWRCbG9jaz1mYWI6T2JqZWN0LmRlZmluZVByb3BlcnR5KHdpbmRvdywiYmxvY2tBZEJsb2NrIixnZXRzZXRmYWIpLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh3aW5kb3csInNuaWZmQWRCbG9jayIpP3dpbmRvdy5zbmlmZkFkQmxvY2s9ZmFiOk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh3aW5kb3csInNuaWZmQWRCbG9jayIsZ2V0c2V0ZmFiKX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6InByZXZlbnQtZmFiLTMuMi4wIixhcmdzOltdfSxbXSk7" }, { "title": "prevent-popads-net", @@ -369,7 +369,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIHJpZD1NYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyLDkpLHRocm93RXJyb3I9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IocmlkKX07ZGVsZXRlIHdpbmRvdy5Qb3BBZHMsZGVsZXRlIHdpbmRvdy5wb3BucyxPYmplY3QuZGVmaW5lUHJvcGVydGllcyh3aW5kb3cse1BvcEFkczp7c2V0OnRocm93RXJyb3J9LHBvcG5zOntzZXQ6dGhyb3dFcnJvcn19KSx3aW5kb3cub25lcnJvcj1mdW5jdGlvbihyaWQpe3ZhciBuYXRpdmVPbkVycm9yPXdpbmRvdy5vbmVycm9yO3JldHVybiBmdW5jdGlvbihlcnJvcil7aWYoInN0cmluZyI9PXR5cGVvZiBlcnJvciYmZXJyb3IuaW5jbHVkZXMocmlkKSlyZXR1cm4hMDtpZihuYXRpdmVPbkVycm9yIGluc3RhbmNlb2YgRnVuY3Rpb24pe2Zvcih2YXIgX2xlbj1hcmd1bWVudHMubGVuZ3RoLGFyZ3M9bmV3IEFycmF5KF9sZW4+MT9fbGVuLTE6MCksX2tleT0xO19rZXk8X2xlbjtfa2V5KyspYXJnc1tfa2V5LTFdPWFyZ3VtZW50c1tfa2V5XTtyZXR1cm4gbmF0aXZlT25FcnJvci5hcHBseSh3aW5kb3csW2Vycm9yLC4uLmFyZ3NdKX1yZXR1cm4hMX19KHJpZCkuYmluZCgpLGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PXNvdXJjZS5ydWxlVGV4dHx8IiI7aWYoc291cmNlLmRvbWFpbk5hbWUpe3ZhciBydWxlU3RhcnRJbmRleCxBR19TQ1JJUFRMRVRfTUFSS0VSPSIjJSMvLyIsVUJPX1NDUklQVExFVF9NQVJLRVI9IiMjK2pzIjtzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoQUdfU0NSSVBUTEVUX01BUktFUik/cnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoQUdfU0NSSVBUTEVUX01BUktFUik6c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSYmKHJ1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToicHJldmVudC1wb3BhZHMtbmV0IixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7dmFyIHJpZD1NYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyLDkpLHRocm93RXJyb3I9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IocmlkKX07ZGVsZXRlIHdpbmRvdy5Qb3BBZHMsZGVsZXRlIHdpbmRvdy5wb3BucyxPYmplY3QuZGVmaW5lUHJvcGVydGllcyh3aW5kb3cse1BvcEFkczp7c2V0OnRocm93RXJyb3J9LHBvcG5zOntzZXQ6dGhyb3dFcnJvcn19KSx3aW5kb3cub25lcnJvcj1mdW5jdGlvbihyaWQpe3ZhciBuYXRpdmVPbkVycm9yPXdpbmRvdy5vbmVycm9yO3JldHVybiBmdW5jdGlvbihlcnJvcil7aWYoInN0cmluZyI9PXR5cGVvZiBlcnJvciYmZXJyb3IuaW5jbHVkZXMocmlkKSlyZXR1cm4hMDtpZihuYXRpdmVPbkVycm9yIGluc3RhbmNlb2YgRnVuY3Rpb24pe2Zvcih2YXIgX2xlbj1hcmd1bWVudHMubGVuZ3RoLGFyZ3M9bmV3IEFycmF5KF9sZW4+MT9fbGVuLTE6MCksX2tleT0xO19rZXk8X2xlbjtfa2V5KyspYXJnc1tfa2V5LTFdPWFyZ3VtZW50c1tfa2V5XTtyZXR1cm4gbmF0aXZlT25FcnJvci5hcHBseSh3aW5kb3csW2Vycm9yLC4uLmFyZ3NdKX1yZXR1cm4hMX19KHJpZCkuYmluZCgpLGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PSIiO3NvdXJjZS5kb21haW5OYW1lJiYocHJlZml4Kz0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpKSxwcmVmaXgrPSIjJSMvL3NjcmlwdGxldCgnIi5jb25jYXQoc291cmNlLm5hbWUsIicsICciKS5jb25jYXQoc291cmNlLmFyZ3Muam9pbigiLCAiKSwiJykiKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToicHJldmVudC1wb3BhZHMtbmV0IixhcmdzOltdfSxbXSk7" }, { "title": "scorecardresearch-beacon", @@ -379,7 +379,7 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93LkNPTVNDT1JFPXtwdXJnZSgpe3dpbmRvdy5fY29tc2NvcmU9W119LGJlYWNvbigpe319LGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PXNvdXJjZS5ydWxlVGV4dHx8IiI7aWYoc291cmNlLmRvbWFpbk5hbWUpe3ZhciBydWxlU3RhcnRJbmRleCxBR19TQ1JJUFRMRVRfTUFSS0VSPSIjJSMvLyIsVUJPX1NDUklQVExFVF9NQVJLRVI9IiMjK2pzIjtzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoQUdfU0NSSVBUTEVUX01BUktFUik/cnVsZVN0YXJ0SW5kZXg9c291cmNlLnJ1bGVUZXh0LmluZGV4T2YoQUdfU0NSSVBUTEVUX01BUktFUik6c291cmNlLnJ1bGVUZXh0LmluY2x1ZGVzKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSYmKHJ1bGVTdGFydEluZGV4PXNvdXJjZS5ydWxlVGV4dC5pbmRleE9mKFVCT19TQ1JJUFRMRVRfTUFSS0VSKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToic2NvcmVjYXJkcmVzZWFyY2gtYmVhY29uIixhcmdzOltdfSxbXSk7" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtjb25zdCB1cGRhdGVkQXJncz1hcmdzP1tdLmNvbmNhdChzb3VyY2UpLmNvbmNhdChhcmdzKTpbc291cmNlXTt0cnl7KGZ1bmN0aW9uKHNvdXJjZSl7d2luZG93LkNPTVNDT1JFPXtwdXJnZSgpe3dpbmRvdy5fY29tc2NvcmU9W119LGJlYWNvbigpe319LGZ1bmN0aW9uKHNvdXJjZSl7aWYoITA9PT1zb3VyY2UudmVyYm9zZSl7dHJ5e3ZhciBsb2c9Y29uc29sZS5sb2cuYmluZChjb25zb2xlKSx0cmFjZT1jb25zb2xlLnRyYWNlLmJpbmQoY29uc29sZSkscHJlZml4PSIiO3NvdXJjZS5kb21haW5OYW1lJiYocHJlZml4Kz0iIi5jb25jYXQoc291cmNlLmRvbWFpbk5hbWUpKSxwcmVmaXgrPSIjJSMvL3NjcmlwdGxldCgnIi5jb25jYXQoc291cmNlLm5hbWUsIicsICciKS5jb25jYXQoc291cmNlLmFyZ3Muam9pbigiLCAiKSwiJykiKSxsb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fShzb3VyY2UpfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToic2NvcmVjYXJkcmVzZWFyY2gtYmVhY29uIixhcmdzOltdfSxbXSk7" }, { "title": "set-popads-dummy", @@ -390,6 +390,6 @@ ], "isBlocking": false, "contentType": "application/javascript;base64", - "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBoaXQoc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9c291cmNlLnJ1bGVUZXh0fHwiIjtpZihzb3VyY2UuZG9tYWluTmFtZSl7dmFyIHJ1bGVTdGFydEluZGV4O3NvdXJjZS5ydWxlVGV4dC5pbmNsdWRlcygiIyUjLy8iKT9ydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZigiIyUjLy8iKTpzb3VyY2UucnVsZVRleHQuaW5jbHVkZXMoIiMjK2pzIikmJihydWxlU3RhcnRJbmRleD1zb3VyY2UucnVsZVRleHQuaW5kZXhPZigiIyMranMiKSk7dmFyIHJ1bGVQYXJ0PXNvdXJjZS5ydWxlVGV4dC5zbGljZShydWxlU3RhcnRJbmRleCk7cHJlZml4PSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkuY29uY2F0KHJ1bGVQYXJ0KX1sb2coIiIuY29uY2F0KHByZWZpeCwiIHRyYWNlIHN0YXJ0IikpLHRyYWNlJiZ0cmFjZSgpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2UgZW5kIikpfWNhdGNoKGUpe30iZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93Ll9fZGVidWcmJndpbmRvdy5fX2RlYnVnKHNvdXJjZSl9fWNvbnN0IHVwZGF0ZWRBcmdzPWFyZ3M/W10uY29uY2F0KHNvdXJjZSkuY29uY2F0KGFyZ3MpOltzb3VyY2VdO3RyeXsoZnVuY3Rpb24oc291cmNlKXtkZWxldGUgd2luZG93LlBvcEFkcyxkZWxldGUgd2luZG93LnBvcG5zLE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHdpbmRvdyx7UG9wQWRzOntnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gaGl0KHNvdXJjZSkse319fSxwb3Buczp7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGhpdChzb3VyY2UpLHt9fX19KX0pLmFwcGx5KHRoaXMsdXBkYXRlZEFyZ3MpfWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0oe25hbWU6InNldC1wb3BhZHMtZHVtbXkiLGFyZ3M6W119LFtdKTs=" + "content": "IWZ1bmN0aW9uKHNvdXJjZSxhcmdzKXtmdW5jdGlvbiBoaXQoc291cmNlKXtpZighMD09PXNvdXJjZS52ZXJib3NlKXt0cnl7dmFyIGxvZz1jb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUpLHRyYWNlPWNvbnNvbGUudHJhY2UuYmluZChjb25zb2xlKSxwcmVmaXg9IiI7c291cmNlLmRvbWFpbk5hbWUmJihwcmVmaXgrPSIiLmNvbmNhdChzb3VyY2UuZG9tYWluTmFtZSkpLHByZWZpeCs9IiMlIy8vc2NyaXB0bGV0KCciLmNvbmNhdChzb3VyY2UubmFtZSwiJywgJyIpLmNvbmNhdChzb3VyY2UuYXJncy5qb2luKCIsICIpLCInKSIpLGxvZygiIi5jb25jYXQocHJlZml4LCIgdHJhY2Ugc3RhcnQiKSksdHJhY2UmJnRyYWNlKCksbG9nKCIiLmNvbmNhdChwcmVmaXgsIiB0cmFjZSBlbmQiKSl9Y2F0Y2goZSl7fSJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cuX19kZWJ1ZyYmd2luZG93Ll9fZGVidWcoc291cmNlKX19Y29uc3QgdXBkYXRlZEFyZ3M9YXJncz9bXS5jb25jYXQoc291cmNlKS5jb25jYXQoYXJncyk6W3NvdXJjZV07dHJ5eyhmdW5jdGlvbihzb3VyY2Upe2RlbGV0ZSB3aW5kb3cuUG9wQWRzLGRlbGV0ZSB3aW5kb3cucG9wbnMsT2JqZWN0LmRlZmluZVByb3BlcnRpZXMod2luZG93LHtQb3BBZHM6e2dldDpmdW5jdGlvbigpe3JldHVybiBoaXQoc291cmNlKSx7fX19LHBvcG5zOntnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gaGl0KHNvdXJjZSkse319fX0pfSkuYXBwbHkodGhpcyx1cGRhdGVkQXJncyl9Y2F0Y2goZSl7Y29uc29sZS5sb2coZSl9fSh7bmFtZToic2V0LXBvcGFkcy1kdW1teSIsYXJnczpbXX0sW10pOw==" } ] \ No newline at end of file diff --git a/dist/redirects.yml b/dist/redirects.yml index cc873122..8695d680 100644 --- a/dist/redirects.yml +++ b/dist/redirects.yml @@ -1,6 +1,6 @@ # # AdGuard Scriptlets (Redirects Source) -# Version 1.10.25 +# Version 1.11.1 # - title: 1x1-transparent.gif added: v1.0.4 @@ -655,19 +655,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -778,19 +770,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -940,19 +924,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -1022,19 +998,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -1095,19 +1063,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -1158,19 +1118,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -1283,19 +1235,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -1436,19 +1380,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2091,19 +2027,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2210,19 +2138,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2632,19 +2552,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2711,19 +2623,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2829,19 +2733,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2931,19 +2827,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2991,19 +2879,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3054,19 +2934,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3141,19 +3013,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3203,19 +3067,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3290,19 +3146,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3402,19 +3250,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3469,19 +3309,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3588,19 +3420,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3681,19 +3505,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3740,19 +3556,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -3811,19 +3619,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ""; + var prefix = ""; if (source.domainName) { - var AG_SCRIPTLET_MARKER = "#%#//"; - var UBO_SCRIPTLET_MARKER = "##+js"; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - var rulePart = source.ruleText.slice(ruleStartIndex); - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(", "), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); diff --git a/dist/scriptlets.corelibs.json b/dist/scriptlets.corelibs.json index de55439e..2d95af82 100644 --- a/dist/scriptlets.corelibs.json +++ b/dist/scriptlets.corelibs.json @@ -1,11 +1,11 @@ { - "version": "1.10.25", + "version": "1.11.1", "scriptlets": [ { "names": [ "trusted-click-element" ], - "scriptlet": "function trustedClickElement(source,args){function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function parseCookieString(cookieString){var cookieChunks=cookieString.split(\";\"),cookieData={};return cookieChunks.forEach((function(singleCookie){var cookieKey,cookieValue=\"\",delimiterIndex=singleCookie.indexOf(\"=\");-1===delimiterIndex?cookieKey=singleCookie.trim():(cookieKey=singleCookie.slice(0,delimiterIndex).trim(),cookieValue=singleCookie.slice(delimiterIndex+1)),cookieData[cookieKey]=cookieValue||null})),cookieData}function parseMatchArg(match){var isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(\"!\")),matchValue=isInvertedMatch?match.slice(1):match;return{isInvertedMatch:isInvertedMatch,matchRegexp:toRegExp(matchValue),matchValue:matchValue}}function queryShadowSelector(selector){var context=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document.documentElement,pos=selector.indexOf(\" >>> \");if(-1===pos)return context.querySelector(selector);var shadowHostSelector=selector.slice(0,pos).trim(),elem=context.querySelector(shadowHostSelector);return elem&&elem.shadowRoot?queryShadowSelector(selector.slice(pos+5).trim(),elem.shadowRoot):null}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selectors){var extraMatch=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",delay=arguments.length>3&&void 0!==arguments[3]?arguments[3]:NaN;if(selectors){var parsedDelay,sleep=function(delayMs){return new Promise((function(resolve){return setTimeout(resolve,delayMs)}))};if(delay&&(parsedDelay=parseInt(delay,10),Number.isNaN(parsedDelay)&&!(parsedDelay<1e4))){var message=\"Passed delay '\".concat(delay,\"' is invalid or bigger than \").concat(1e4,\" ms\");return void function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message)}var canClick=!parsedDelay,cookieMatches=[],localStorageMatches=[],isInvertedMatchCookie=!1,isInvertedMatchLocalStorage=!1;if(extraMatch&&extraMatch.split(/(,\\s*){1}(?=!?cookie:|!?localStorage:)/).map((function(matchStr){return matchStr.trim()})).forEach((function(matchStr){if(matchStr.includes(\"cookie:\")){var _parseMatchArg=parseMatchArg(matchStr),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchValue=_parseMatchArg.matchValue;isInvertedMatchCookie=isInvertedMatch;var cookieMatch=matchValue.replace(\"cookie:\",\"\");cookieMatches.push(cookieMatch)}if(matchStr.includes(\"localStorage:\")){var _parseMatchArg2=parseMatchArg(matchStr),_isInvertedMatch=_parseMatchArg2.isInvertedMatch,_matchValue=_parseMatchArg2.matchValue;isInvertedMatchLocalStorage=_isInvertedMatch;var localStorageMatch=_matchValue.replace(\"localStorage:\",\"\");localStorageMatches.push(localStorageMatch)}})),cookieMatches.length>0){var parsedCookieMatches=parseCookieString(cookieMatches.join(\";\")),parsedCookies=parseCookieString(document.cookie),cookieKeys=Object.keys(parsedCookies);if(0===cookieKeys.length)return;if(Object.keys(parsedCookieMatches).every((function(key){var valueMatch=parsedCookieMatches[key]?toRegExp(parsedCookieMatches[key]):null,keyMatch=toRegExp(key);return cookieKeys.some((function(key){return!!keyMatch.test(key)&&(!valueMatch||valueMatch.test(parsedCookies[key]))}))}))===isInvertedMatchCookie)return}if(localStorageMatches.length>0&&localStorageMatches.every((function(str){var itemValue=window.localStorage.getItem(str);return itemValue||\"\"===itemValue}))===isInvertedMatchLocalStorage)return;var selectorsSequence=selectors.split(\",\").map((function(selector){return selector.trim()})),createElementObj=function(element){return{element:element||null,clicked:!1}},elementsSequence=Array(selectorsSequence.length).fill(createElementObj()),clickElementsBySequence=async function(){for(var i=0;i=1&&await sleep(150),!elementObj.element)break;elementObj.clicked||(elementObj.element.click(),elementObj.clicked=!0)}var allElementsClicked=elementsSequence.every((function(elementObj){return!0===elementObj.clicked}));allElementsClicked&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)},observer=new MutationObserver(function(cb,delay){var savedArgs,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))};return wrapper}((function(mutations,observer){var fulfilledSelectors=[];selectorsSequence.forEach((function(selector,i){if(selector){var element=queryShadowSelector(selector);element&&(function(element,i){var elementObj=createElementObj(element);elementsSequence[i]=elementObj,canClick&&clickElementsBySequence()}(element,i),fulfilledSelectors.push(selector))}})),(selectorsSequence=selectorsSequence.map((function(selector){return fulfilledSelectors.includes(selector)?null:selector}))).every((function(selector){return null===selector}))&&observer.disconnect()}),20));observer.observe(document.documentElement,{attributes:!0,childList:!0,subtree:!0}),parsedDelay&&setTimeout((function(){clickElementsBySequence(),canClick=!0}),parsedDelay),setTimeout((function(){return observer.disconnect()}),1e4)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedClickElement(source,args){function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function parseCookieString(cookieString){var cookieChunks=cookieString.split(\";\"),cookieData={};return cookieChunks.forEach((function(singleCookie){var cookieKey,cookieValue=\"\",delimiterIndex=singleCookie.indexOf(\"=\");-1===delimiterIndex?cookieKey=singleCookie.trim():(cookieKey=singleCookie.slice(0,delimiterIndex).trim(),cookieValue=singleCookie.slice(delimiterIndex+1)),cookieData[cookieKey]=cookieValue||null})),cookieData}function parseMatchArg(match){var isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(\"!\")),matchValue=isInvertedMatch?match.slice(1):match;return{isInvertedMatch:isInvertedMatch,matchRegexp:toRegExp(matchValue),matchValue:matchValue}}function queryShadowSelector(selector){var context=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document.documentElement,pos=selector.indexOf(\" >>> \");if(-1===pos)return context.querySelector(selector);var shadowHostSelector=selector.slice(0,pos).trim(),elem=context.querySelector(shadowHostSelector);return elem&&elem.shadowRoot?queryShadowSelector(selector.slice(pos+5).trim(),elem.shadowRoot):null}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selectors){var extraMatch=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",delay=arguments.length>3&&void 0!==arguments[3]?arguments[3]:NaN;if(selectors){var parsedDelay,sleep=function(delayMs){return new Promise((function(resolve){return setTimeout(resolve,delayMs)}))};if(selectors.includes(\" >>> \")){var attachShadowHandler={apply:function(target,thisArg,argumentsList){var _argumentsList$;return\"closed\"===(null===(_argumentsList$=argumentsList[0])||void 0===_argumentsList$?void 0:_argumentsList$.mode)&&(argumentsList[0].mode=\"open\"),Reflect.apply(target,thisArg,argumentsList)}};window.Element.prototype.attachShadow=new Proxy(window.Element.prototype.attachShadow,attachShadowHandler)}if(delay&&(parsedDelay=parseInt(String(delay),10),Number.isNaN(parsedDelay)&&!(parsedDelay<1e4))){var message=\"Passed delay '\".concat(delay,\"' is invalid or bigger than \").concat(1e4,\" ms\");return void function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message)}var canClick=!parsedDelay,cookieMatches=[],localStorageMatches=[],textMatches=\"\",isInvertedMatchCookie=!1,isInvertedMatchLocalStorage=!1;if(extraMatch&&extraMatch.split(/(,\\s*){1}(?=!?cookie:|!?localStorage:|containsText:)/).map((function(matchStr){return matchStr.trim()})).forEach((function(matchStr){if(matchStr.includes(\"cookie:\")){var _parseMatchArg=parseMatchArg(matchStr),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchValue=_parseMatchArg.matchValue;isInvertedMatchCookie=isInvertedMatch;var cookieMatch=matchValue.replace(\"cookie:\",\"\");cookieMatches.push(cookieMatch)}if(matchStr.includes(\"localStorage:\")){var _parseMatchArg2=parseMatchArg(matchStr),_isInvertedMatch=_parseMatchArg2.isInvertedMatch,_matchValue=_parseMatchArg2.matchValue;isInvertedMatchLocalStorage=_isInvertedMatch;var localStorageMatch=_matchValue.replace(\"localStorage:\",\"\");localStorageMatches.push(localStorageMatch)}if(matchStr.includes(\"containsText:\")){var textMatch=parseMatchArg(matchStr).matchValue.replace(\"containsText:\",\"\");textMatches=textMatch}})),cookieMatches.length>0){var parsedCookieMatches=parseCookieString(cookieMatches.join(\";\")),parsedCookies=parseCookieString(document.cookie),cookieKeys=Object.keys(parsedCookies);if(0===cookieKeys.length)return;if(Object.keys(parsedCookieMatches).every((function(key){var valueMatch=parsedCookieMatches[key]?toRegExp(parsedCookieMatches[key]):null,keyMatch=toRegExp(key);return cookieKeys.some((function(cookieKey){if(!keyMatch.test(cookieKey))return!1;if(!valueMatch)return!0;var parsedCookieValue=parsedCookies[cookieKey];return!!parsedCookieValue&&valueMatch.test(parsedCookieValue)}))}))===isInvertedMatchCookie)return}if(localStorageMatches.length>0&&localStorageMatches.every((function(str){var itemValue=window.localStorage.getItem(str);return itemValue||\"\"===itemValue}))===isInvertedMatchLocalStorage)return;var textMatchRegexp=textMatches?toRegExp(textMatches):null,selectorsSequence=selectors.split(\",\").map((function(selector){return selector.trim()})),createElementObj=function(element){return{element:element||null,clicked:!1}},elementsSequence=Array(selectorsSequence.length).fill(createElementObj(null)),clickElementsBySequence=async function(){for(var i=0;i=1&&await sleep(150),!elementObj.element)break;if(!elementObj.clicked){if(textMatchRegexp&&(element=elementObj.element,matchRegexp=textMatchRegexp,textContent=void 0,!(textContent=element.textContent)||!matchRegexp.test(textContent)))continue;elementObj.element.click(),elementObj.clicked=!0}}var element,matchRegexp,textContent,allElementsClicked=elementsSequence.every((function(elementObj){return!0===elementObj.clicked}));allElementsClicked&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)},observer=new MutationObserver(function(cb,delay){var savedArgs,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))};return wrapper}((function(mutations,observer){var fulfilledSelectors=[];selectorsSequence.forEach((function(selector,i){if(selector){var element=queryShadowSelector(selector);element&&(function(element,i){var elementObj=createElementObj(element);elementsSequence[i]=elementObj,canClick&&clickElementsBySequence()}(element,i),fulfilledSelectors.push(selector))}})),(selectorsSequence=selectorsSequence.map((function(selector){return selector&&fulfilledSelectors.includes(selector)?null:selector}))).every((function(selector){return null===selector}))&&observer.disconnect()}),20));observer.observe(document.documentElement,{attributes:!0,childList:!0,subtree:!0}),parsedDelay&&setTimeout((function(){clickElementsBySequence(),canClick=!0}),parsedDelay),setTimeout((function(){return observer.disconnect()}),1e4)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -18,7 +18,7 @@ "ubo-aopr", "abp-abort-on-property-read" ], - "scriptlet": "function abortOnPropertyRead(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var rid=Math.random().toString(36).slice(2,9),abort=function(){throw function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),new ReferenceError(rid)};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;chain?Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}}):function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:abort,set:function(){}})}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function abortOnPropertyRead(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var rid=Math.random().toString(36).slice(2,9),abort=function(){throw function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),new ReferenceError(rid)};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;chain?Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}}):function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:abort,set:function(){}})}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -31,7 +31,7 @@ "ubo-aopw", "abp-abort-on-property-write" ], - "scriptlet": "function abortOnPropertyWrite(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var rid=Math.random().toString(36).slice(2,9),abort=function(){throw function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),new ReferenceError(rid)};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;chain?Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}}):function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{set:abort})}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function abortOnPropertyWrite(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var rid=Math.random().toString(36).slice(2,9),abort=function(){throw function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),new ReferenceError(rid)};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;chain?Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}}):function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{set:abort})}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -49,7 +49,7 @@ "ubo-std.js", "ubo-std" ], - "scriptlet": "function preventSetTimeout(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function noopFunc(){}function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,matchCallback,matchDelay){var shouldLog=void 0===matchCallback&&void 0===matchDelay,setTimeoutHandler={apply:function(target,thisArg,args){var callback=args[0],delay=args[1],shouldPrevent=!1;return shouldLog?(hit(source),function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"setTimeout(\".concat(String(callback),\", \").concat(delay,\")\"),!0)):shouldPrevent=function(_ref){var match,INVERT_MARKER,str,callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback))return!1;if(INVERT_MARKER=\"!\",str=match=matchCallback,null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1)),!function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(str)||matchDelay&&!function(match){var INVERT_MARKER=\"!\",str=match;null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1));var num=parseFloat(str);return!nativeIsNaN(num)&&function(num){return(Number.isFinite||window.isFinite)(num)}(num)}(matchDelay))return!1;var _parseMatchArg=function(match){var INVERT_MARKER=\"!\",isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(INVERT_MARKER)),matchValue=isInvertedMatch?match.slice(1):match,matchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchValue);return{isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue}}(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp,_parseDelayArg=function(delay){var INVERT_MARKER=\"!\",isInvertedDelayMatch=null==delay?void 0:delay.startsWith(INVERT_MARKER),delayValue=isInvertedDelayMatch?delay.slice(1):delay,parsedDelay=parseInt(delayValue,10);return{isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:nativeIsNaN(parsedDelay)?null:parsedDelay}}(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch,parsedDelay=function(delay){var parsedDelay=Math.floor(parseInt(delay,10));return\"number\"!=typeof parsedDelay||nativeIsNaN(parsedDelay)?delay:parsedDelay}(delay),callbackStr=String(callback);return null===delayMatch?matchRegexp.test(callbackStr)!==isInvertedMatch:matchCallback?matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch:parsedDelay===delayMatch!==isInvertedDelayMatch}({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay}),shouldPrevent&&(hit(source),args[0]=noopFunc),target.apply(thisArg,args)}};window.setTimeout=new Proxy(window.setTimeout,setTimeoutHandler)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventSetTimeout(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function noopFunc(){}function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,matchCallback,matchDelay){var shouldLog=void 0===matchCallback&&void 0===matchDelay,setTimeoutHandler={apply:function(target,thisArg,args){var callback=args[0],delay=args[1],shouldPrevent=!1;return shouldLog?(hit(source),function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"setTimeout(\".concat(String(callback),\", \").concat(delay,\")\"),!0)):shouldPrevent=function(_ref){var match,INVERT_MARKER,str,callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback))return!1;if(INVERT_MARKER=\"!\",str=match=matchCallback,null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1)),!function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(str)||matchDelay&&!function(match){var INVERT_MARKER=\"!\",str=match;null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1));var num=parseFloat(str);return!nativeIsNaN(num)&&function(num){return(Number.isFinite||window.isFinite)(num)}(num)}(matchDelay))return!1;var _parseMatchArg=function(match){var INVERT_MARKER=\"!\",isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(INVERT_MARKER)),matchValue=isInvertedMatch?match.slice(1):match;return{isInvertedMatch:isInvertedMatch,matchRegexp:function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchValue),matchValue:matchValue}}(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp,_parseDelayArg=function(delay){var INVERT_MARKER=\"!\",isInvertedDelayMatch=null==delay?void 0:delay.startsWith(INVERT_MARKER),delayValue=isInvertedDelayMatch?delay.slice(1):delay,parsedDelay=parseInt(delayValue,10);return{isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:nativeIsNaN(parsedDelay)?null:parsedDelay}}(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch,parsedDelay=function(delay){var parsedDelay=Math.floor(parseInt(delay,10));return\"number\"!=typeof parsedDelay||nativeIsNaN(parsedDelay)?delay:parsedDelay}(delay),callbackStr=String(callback);return null===delayMatch?matchRegexp.test(callbackStr)!==isInvertedMatch:matchCallback?matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch:parsedDelay===delayMatch!==isInvertedDelayMatch}({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay}),shouldPrevent&&(hit(source),args[0]=noopFunc),target.apply(thisArg,args)}};window.setTimeout=new Proxy(window.setTimeout,setTimeoutHandler)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -67,7 +67,7 @@ "ubo-nosiif", "ubo-sid" ], - "scriptlet": "function preventSetInterval(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function noopFunc(){}function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,matchCallback,matchDelay){var shouldLog=void 0===matchCallback&&void 0===matchDelay,setIntervalHandler={apply:function(target,thisArg,args){var callback=args[0],delay=args[1],shouldPrevent=!1;return shouldLog?(hit(source),function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"setInterval(\".concat(String(callback),\", \").concat(delay,\")\"),!0)):shouldPrevent=function(_ref){var match,INVERT_MARKER,str,callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback))return!1;if(INVERT_MARKER=\"!\",str=match=matchCallback,null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1)),!function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(str)||matchDelay&&!function(match){var INVERT_MARKER=\"!\",str=match;null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1));var num=parseFloat(str);return!nativeIsNaN(num)&&function(num){return(Number.isFinite||window.isFinite)(num)}(num)}(matchDelay))return!1;var _parseMatchArg=function(match){var INVERT_MARKER=\"!\",isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(INVERT_MARKER)),matchValue=isInvertedMatch?match.slice(1):match,matchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchValue);return{isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue}}(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp,_parseDelayArg=function(delay){var INVERT_MARKER=\"!\",isInvertedDelayMatch=null==delay?void 0:delay.startsWith(INVERT_MARKER),delayValue=isInvertedDelayMatch?delay.slice(1):delay,parsedDelay=parseInt(delayValue,10);return{isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:nativeIsNaN(parsedDelay)?null:parsedDelay}}(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch,parsedDelay=function(delay){var parsedDelay=Math.floor(parseInt(delay,10));return\"number\"!=typeof parsedDelay||nativeIsNaN(parsedDelay)?delay:parsedDelay}(delay),callbackStr=String(callback);return null===delayMatch?matchRegexp.test(callbackStr)!==isInvertedMatch:matchCallback?matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch:parsedDelay===delayMatch!==isInvertedDelayMatch}({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay}),shouldPrevent&&(hit(source),args[0]=noopFunc),target.apply(thisArg,args)}};window.setInterval=new Proxy(window.setInterval,setIntervalHandler)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventSetInterval(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function noopFunc(){}function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,matchCallback,matchDelay){var shouldLog=void 0===matchCallback&&void 0===matchDelay,setIntervalHandler={apply:function(target,thisArg,args){var callback=args[0],delay=args[1],shouldPrevent=!1;return shouldLog?(hit(source),function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"setInterval(\".concat(String(callback),\", \").concat(delay,\")\"),!0)):shouldPrevent=function(_ref){var match,INVERT_MARKER,str,callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback))return!1;if(INVERT_MARKER=\"!\",str=match=matchCallback,null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1)),!function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(str)||matchDelay&&!function(match){var INVERT_MARKER=\"!\",str=match;null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1));var num=parseFloat(str);return!nativeIsNaN(num)&&function(num){return(Number.isFinite||window.isFinite)(num)}(num)}(matchDelay))return!1;var _parseMatchArg=function(match){var INVERT_MARKER=\"!\",isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(INVERT_MARKER)),matchValue=isInvertedMatch?match.slice(1):match;return{isInvertedMatch:isInvertedMatch,matchRegexp:function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchValue),matchValue:matchValue}}(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp,_parseDelayArg=function(delay){var INVERT_MARKER=\"!\",isInvertedDelayMatch=null==delay?void 0:delay.startsWith(INVERT_MARKER),delayValue=isInvertedDelayMatch?delay.slice(1):delay,parsedDelay=parseInt(delayValue,10);return{isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:nativeIsNaN(parsedDelay)?null:parsedDelay}}(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch,parsedDelay=function(delay){var parsedDelay=Math.floor(parseInt(delay,10));return\"number\"!=typeof parsedDelay||nativeIsNaN(parsedDelay)?delay:parsedDelay}(delay),callbackStr=String(callback);return null===delayMatch?matchRegexp.test(callbackStr)!==isInvertedMatch:matchCallback?matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch:parsedDelay===delayMatch!==isInvertedDelayMatch}({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay}),shouldPrevent&&(hit(source),args[0]=noopFunc),target.apply(thisArg,args)}};window.setInterval=new Proxy(window.setInterval,setIntervalHandler)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -82,7 +82,7 @@ "ubo-no-window-open-if.js", "ubo-no-window-open-if" ], - "scriptlet": "function preventWindowOpen(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function isValidStrPattern(input){var isValid,str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);\"/\"===input[0]&&\"/\"===input[input.length-1]&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getPreventGetter(nativeGetter){return function(target,prop){return(!prop||\"closed\"!==prop)&&(\"function\"==typeof nativeGetter?noopFunc:prop&&target[prop])}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function noopFunc(){}function trueFunc(){return!0}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var match=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"*\",delay=arguments.length>2?arguments[2]:void 0,replacement=arguments.length>3?arguments[3]:void 0,nativeOpen=window.open,isNewSyntax=\"0\"!==match&&\"1\"!==match;window.open=isNewSyntax?function(url){for(var shouldLog=replacement&&replacement.includes(\"log\"),_len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++)args[_key2-1]=arguments[_key2];if(shouldLog){var argsStr=args&&args.length>0?\", \".concat(args.join(\", \")):\"\",message=\"\".concat(url).concat(argsStr);logMessage(source,message,!0),hit(source)}var num,shouldPrevent=!1;if(\"*\"===match)shouldPrevent=!0;else if(function(match){var INVERT_MARKER=\"!\",str=match;return null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1)),isValidStrPattern(str)}(match)){var _parseMatchArg=function(match){var INVERT_MARKER=\"!\",isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(INVERT_MARKER)),matchValue=isInvertedMatch?match.slice(1):match;return{isInvertedMatch:isInvertedMatch,matchRegexp:toRegExp(matchValue),matchValue:matchValue}}(match),isInvertedMatch=_parseMatchArg.isInvertedMatch;shouldPrevent=_parseMatchArg.matchRegexp.test(url)!==isInvertedMatch}else logMessage(source,\"Invalid parameter: \".concat(match)),shouldPrevent=!1;if(shouldPrevent){var result,parsedDelay=parseInt(delay,10);if(num=parsedDelay,(Number.isNaN||window.isNaN)(num))result=null;else{var decoy=function(args){var tag,UrlPropNameOf=function(UrlPropNameOf){return UrlPropNameOf.Object=\"data\",UrlPropNameOf.Iframe=\"src\",UrlPropNameOf}({}),replacement=args.replacement,url=args.url,delay=args.delay;tag=\"obj\"===replacement?\"object\":\"iframe\";var decoy=document.createElement(tag);return decoy instanceof HTMLObjectElement?decoy[UrlPropNameOf.Object]=url:decoy instanceof HTMLIFrameElement&&(decoy[UrlPropNameOf.Iframe]=url),decoy.style.setProperty(\"height\",\"1px\",\"important\"),decoy.style.setProperty(\"position\",\"fixed\",\"important\"),decoy.style.setProperty(\"top\",\"-1px\",\"important\"),decoy.style.setProperty(\"width\",\"1px\",\"important\"),document.body.appendChild(decoy),setTimeout((function(){return decoy.remove()}),1e3*delay),decoy}({replacement:replacement,url:url,delay:parsedDelay}),popup=decoy.contentWindow;if(\"object\"==typeof popup&&null!==popup)Object.defineProperty(popup,\"closed\",{value:!1}),Object.defineProperty(popup,\"opener\",{value:window}),Object.defineProperty(popup,\"frameElement\",{value:null});else{var nativeGetter=decoy.contentWindow&&decoy.contentWindow.get;Object.defineProperty(decoy,\"contentWindow\",{get:getPreventGetter(nativeGetter)}),popup=decoy.contentWindow}result=popup}return hit(source),result}return nativeOpen.apply(window,[url,...args])}:function(str){match=Number(match)>0;for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];if(!isValidStrPattern(delay))return logMessage(source,\"Invalid parameter: \".concat(delay)),nativeOpen.apply(window,[str,...args]);var searchRegexp=toRegExp(delay);return match!==searchRegexp.test(str)?nativeOpen.apply(window,[str,...args]):(hit(source),function(replacement){var result;if(replacement){if(\"trueFunc\"===replacement)result=trueFunc;else if(replacement.includes(\"=\")&&replacement.startsWith(\"{\")&&replacement.endsWith(\"}\")){var propertyPart=replacement.slice(1,-1),propertyName=function(str,separator){if(!str||!separator)return str;var index=str.indexOf(separator);return index<0?str:str.substring(0,index)}(propertyPart,\"=\"),propertyValue=function(str,separator){if(!str)return str;var index=str.indexOf(separator);return index<0?\"\":str.substring(index+separator.length)}(propertyPart,\"=\");\"noopFunc\"===propertyValue&&((result={})[propertyName]=noopFunc)}}else result=noopFunc;return result}(replacement))},window.open.toString=nativeOpen.toString.bind(nativeOpen)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventWindowOpen(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function isValidStrPattern(input){var isValid,str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);\"/\"===input[0]&&\"/\"===input[input.length-1]&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getPreventGetter(nativeGetter){return function(target,prop){return(!prop||\"closed\"!==prop)&&(\"function\"==typeof nativeGetter?noopFunc:prop&&target[prop])}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function noopFunc(){}function trueFunc(){return!0}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var match=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"*\",delay=arguments.length>2?arguments[2]:void 0,replacement=arguments.length>3?arguments[3]:void 0,nativeOpen=window.open,isNewSyntax=\"0\"!==match&&\"1\"!==match;window.open=isNewSyntax?function(url){for(var shouldLog=replacement&&replacement.includes(\"log\"),_len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++)args[_key2-1]=arguments[_key2];if(shouldLog){var argsStr=args&&args.length>0?\", \".concat(args.join(\", \")):\"\",message=\"\".concat(url).concat(argsStr);logMessage(source,message,!0),hit(source)}var num,shouldPrevent=!1;if(\"*\"===match)shouldPrevent=!0;else if(function(match){var INVERT_MARKER=\"!\",str=match;return null!=match&&match.startsWith(INVERT_MARKER)&&(str=match.slice(1)),isValidStrPattern(str)}(match)){var _parseMatchArg=function(match){var INVERT_MARKER=\"!\",isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(INVERT_MARKER)),matchValue=isInvertedMatch?match.slice(1):match;return{isInvertedMatch:isInvertedMatch,matchRegexp:toRegExp(matchValue),matchValue:matchValue}}(match),isInvertedMatch=_parseMatchArg.isInvertedMatch;shouldPrevent=_parseMatchArg.matchRegexp.test(url)!==isInvertedMatch}else logMessage(source,\"Invalid parameter: \".concat(match)),shouldPrevent=!1;if(shouldPrevent){var result,parsedDelay=parseInt(delay,10);if(num=parsedDelay,(Number.isNaN||window.isNaN)(num))result=null;else{var decoy=function(args){var tag,UrlPropNameOf=function(UrlPropNameOf){return UrlPropNameOf.Object=\"data\",UrlPropNameOf.Iframe=\"src\",UrlPropNameOf}({}),replacement=args.replacement,url=args.url,delay=args.delay;tag=\"obj\"===replacement?\"object\":\"iframe\";var decoy=document.createElement(tag);return decoy instanceof HTMLObjectElement?decoy[UrlPropNameOf.Object]=url:decoy instanceof HTMLIFrameElement&&(decoy[UrlPropNameOf.Iframe]=url),decoy.style.setProperty(\"height\",\"1px\",\"important\"),decoy.style.setProperty(\"position\",\"fixed\",\"important\"),decoy.style.setProperty(\"top\",\"-1px\",\"important\"),decoy.style.setProperty(\"width\",\"1px\",\"important\"),document.body.appendChild(decoy),setTimeout((function(){return decoy.remove()}),1e3*delay),decoy}({replacement:replacement,url:url,delay:parsedDelay}),popup=decoy.contentWindow;if(\"object\"==typeof popup&&null!==popup)Object.defineProperty(popup,\"closed\",{value:!1}),Object.defineProperty(popup,\"opener\",{value:window}),Object.defineProperty(popup,\"frameElement\",{value:null});else{var nativeGetter=decoy.contentWindow&&decoy.contentWindow.get;Object.defineProperty(decoy,\"contentWindow\",{get:getPreventGetter(nativeGetter)}),popup=decoy.contentWindow}result=popup}return hit(source),result}return nativeOpen.apply(window,[url,...args])}:function(str){match=Number(match)>0;for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];if(!isValidStrPattern(delay))return logMessage(source,\"Invalid parameter: \".concat(delay)),nativeOpen.apply(window,[str,...args]);var searchRegexp=toRegExp(delay);return match!==searchRegexp.test(str)?nativeOpen.apply(window,[str,...args]):(hit(source),function(replacement){var result;if(replacement){if(\"trueFunc\"===replacement)result=trueFunc;else if(replacement.includes(\"=\")&&replacement.startsWith(\"{\")&&replacement.endsWith(\"}\")){var propertyPart=replacement.slice(1,-1),propertyName=function(str,separator){if(!str||!separator)return str;var index=str.indexOf(separator);return index<0?str:str.substring(0,index)}(propertyPart,\"=\"),propertyValue=function(str,separator){if(!str)return str;var index=str.indexOf(separator);return index<0?\"\":str.substring(index+separator.length)}(propertyPart,\"=\");\"noopFunc\"===propertyValue&&((result={})[propertyName]=noopFunc)}}else result=noopFunc;return result}(replacement))},window.open.toString=nativeOpen.toString.bind(nativeOpen)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -101,7 +101,7 @@ "ubo-acis", "abp-abort-current-inline-script" ], - "scriptlet": "function abortCurrentInlineScript(source,args){function randomId(){return Math.random().toString(36).slice(2,9)}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,search){var searchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(search),rid=randomId(),getCurrentScript=function(){if(\"currentScript\"in document)return document.currentScript;var scripts=document.getElementsByTagName(\"script\");return scripts[scripts.length-1]},ourScript=getCurrentScript(),abort=function(){var _scriptEl$src,scriptEl=getCurrentScript();if(scriptEl){var content=scriptEl.textContent;try{content=Object.getOwnPropertyDescriptor(Node.prototype,\"textContent\").get.call(scriptEl)}catch(e){}if(0===content.length&&void 0!==scriptEl.src&&null!==(_scriptEl$src=scriptEl.src)&&void 0!==_scriptEl$src&&_scriptEl$src.startsWith(\"data:text/javascript;base64,\")){var encodedContent=scriptEl.src.slice(28);content=window.atob(encodedContent)}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content))throw function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),new ReferenceError(rid)}};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object!=0||null!==base)if(chain)Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}});else{var currentValue=base[prop],origDescriptor=Object.getOwnPropertyDescriptor(base,prop);origDescriptor instanceof Object!=0&&origDescriptor.get instanceof Function!=0||(currentValue=base[prop],origDescriptor=void 0);var descriptorWrapper=Object.assign({isAbortingSuspended:!1,isolateCallback(cb){this.isAbortingSuspended=!0;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];var result=cb(...args);return this.isAbortingSuspended=!1,result}catch(_unused){var rid=randomId();throw this.isAbortingSuspended=!1,new ReferenceError(rid)}}},{currentValue:currentValue,get(){return this.isAbortingSuspended||this.isolateCallback(abort),origDescriptor instanceof Object?origDescriptor.get.call(base):this.currentValue},set(newValue){this.isAbortingSuspended||this.isolateCallback(abort),origDescriptor instanceof Object?origDescriptor.set.call(base,newValue):this.currentValue=newValue}});!function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:()=>descriptorWrapper.get.call(descriptorWrapper),set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue)}})}else{var props=property.split(\".\"),propIndex=props.indexOf(prop),baseName=props[propIndex-1],message=\"The scriptlet had been executed before the \".concat(baseName,\" was loaded.\");!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message)}}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function abortCurrentInlineScript(source,args){function randomId(){return Math.random().toString(36).slice(2,9)}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,search){var searchRegexp=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(search),rid=randomId(),getCurrentScript=function(){if(\"currentScript\"in document)return document.currentScript;var scripts=document.getElementsByTagName(\"script\");return scripts[scripts.length-1]},ourScript=getCurrentScript(),abort=function(){var _scriptEl$src,scriptEl=getCurrentScript();if(scriptEl){var content=scriptEl.textContent;try{content=Object.getOwnPropertyDescriptor(Node.prototype,\"textContent\").get.call(scriptEl)}catch(e){}if(0===content.length&&void 0!==scriptEl.src&&null!==(_scriptEl$src=scriptEl.src)&&void 0!==_scriptEl$src&&_scriptEl$src.startsWith(\"data:text/javascript;base64,\")){var encodedContent=scriptEl.src.slice(28);content=window.atob(encodedContent)}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content))throw function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),new ReferenceError(rid)}};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object!=0||null!==base)if(chain)Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}});else{var currentValue=base[prop],origDescriptor=Object.getOwnPropertyDescriptor(base,prop);origDescriptor instanceof Object!=0&&origDescriptor.get instanceof Function!=0||(currentValue=base[prop],origDescriptor=void 0);var descriptorWrapper=Object.assign({isAbortingSuspended:!1,isolateCallback(cb){this.isAbortingSuspended=!0;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];var result=cb(...args);return this.isAbortingSuspended=!1,result}catch(_unused){var rid=randomId();throw this.isAbortingSuspended=!1,new ReferenceError(rid)}}},{currentValue:currentValue,get(){return this.isAbortingSuspended||this.isolateCallback(abort),origDescriptor instanceof Object?origDescriptor.get.call(base):this.currentValue},set(newValue){this.isAbortingSuspended||this.isolateCallback(abort),origDescriptor instanceof Object?origDescriptor.set.call(base,newValue):this.currentValue=newValue}});!function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:()=>descriptorWrapper.get.call(descriptorWrapper),set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue)}})}else{var props=property.split(\".\"),propIndex=props.indexOf(prop),baseName=props[propIndex-1],message=\"The scriptlet had been executed before the \".concat(baseName,\" was loaded.\");!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message)}}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -114,7 +114,7 @@ "ubo-set", "abp-override-property-read" ], - "scriptlet": "function setConstant(source,args){function noopFunc(){}function noopCallbackFunc(){return noopFunc}function trueFunc(){return!0}function falseFunc(){return!1}function throwFunc(){throw new Error}function noopPromiseReject(){return Promise.reject()}function noopPromiseResolve(){var responseUrl=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",responseType=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"basic\";if(\"undefined\"!=typeof Response){var response=new Response(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"{}\",{status:200,statusText:\"OK\"});return\"opaque\"===responseType?Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:\"\"},url:{value:\"\"},type:{value:responseType}}):Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}}),Promise.resolve(response)}}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&isEmptyObject(base)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}function isEmptyObject(obj){return 0===Object.keys(obj).length&&!obj.prototype}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,value){var parsedDelay,stack=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",valueWrapper=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\",setProxyTrap=arguments.length>5&&void 0!==arguments[5]&&arguments[5];if([\"set-constant.js\",\"ubo-set-constant.js\",\"set.js\",\"ubo-set.js\",\"ubo-set-constant\",\"ubo-set\"].includes(source.name)&&(1!==stack.length&&(nativeIsNaN(parsedDelay=parseInt(stack,10))||!parsedDelay)&&(valueWrapper=stack),stack=void 0),property&&function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(stackMatch),refinedStackTrace=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).join(\"\\n\");return function(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,\"test\"),nativeRegexTest=null==descriptor?void 0:descriptor.value;if(descriptor&&\"function\"==typeof descriptor.value)return nativeRegexTest;throw new Error(\"RegExp.prototype.test is not a function\")}().call(stackRegexp,refinedStackTrace)}(stack,(new Error).stack)){var constantValue,isProxyTrapSet=!1;if(\"undefined\"===value)constantValue=void 0;else if(\"false\"===value)constantValue=!1;else if(\"true\"===value)constantValue=!0;else if(\"null\"===value)constantValue=null;else if(\"emptyArr\"===value)constantValue=[];else if(\"emptyObj\"===value)constantValue={};else if(\"noopFunc\"===value)constantValue=noopFunc;else if(\"noopCallbackFunc\"===value)constantValue=noopCallbackFunc;else if(\"trueFunc\"===value)constantValue=trueFunc;else if(\"falseFunc\"===value)constantValue=falseFunc;else if(\"throwFunc\"===value)constantValue=throwFunc;else if(\"noopPromiseResolve\"===value)constantValue=noopPromiseResolve;else if(\"noopPromiseReject\"===value)constantValue=noopPromiseReject;else if(/^\\d+$/.test(value)){if(nativeIsNaN(constantValue=parseFloat(value)))return;if(Math.abs(constantValue)>32767)return}else if(\"-1\"===value)constantValue=-1;else if(\"\"===value)constantValue=\"\";else if(\"yes\"===value)constantValue=\"yes\";else{if(\"no\"!==value)return;constantValue=\"no\"}[\"asFunction\",\"asCallback\",\"asResolved\",\"asRejected\"].includes(valueWrapper)&&(constantValue={asFunction:v=>function(){return v},asCallback:v=>function(){return function(){return v}},asResolved:v=>Promise.resolve(v),asRejected:v=>Promise.reject(v)}[valueWrapper](constantValue));var canceled=!1,mustCancel=function(value){return canceled||(canceled=void 0!==value&&void 0!==constantValue&&typeof value!=typeof constantValue&&null!==value)},trapProp=function(base,prop,configurable,handler){if(!handler.init(base[prop]))return!1;var prevSetter,origDescriptor=Object.getOwnPropertyDescriptor(base,prop);if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message=\"Property '\".concat(prop,\"' is not configurable\");return function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message),!1}base[prop]&&(base[prop]=constantValue),origDescriptor.set instanceof Function&&(prevSetter=origDescriptor.set)}return Object.defineProperty(base,prop,{configurable:configurable,get:()=>handler.get(),set(a){if(void 0!==prevSetter&&prevSetter(a),a instanceof Object){var propertiesToCheck=property.split(\".\").slice(1);setProxyTrap&&!isProxyTrapSet&&(isProxyTrapSet=!0,a=new Proxy(a,{get:function(target,propertyKey,val){return propertiesToCheck.reduce((function(object,currentProp,index,array){var currentObj=null==object?void 0:object[currentProp];return index===array.length-1&¤tObj!==constantValue&&(object[currentProp]=constantValue),currentObj||object}),target),Reflect.get(target,propertyKey,val)}}))}handler.set(a)}}),!0};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain,inChainPropHandler={factValue:void 0,init(a){return this.factValue=a,!0},get(){return this.factValue},set(a){this.factValue!==a&&(this.factValue=a,a instanceof Object&&setChainPropAccess(a,chain))}},endPropHandler={init:a=>!mustCancel(a),get:()=>constantValue,set(a){mustCancel(a)&&(constantValue=a)}};if(chain)if(void 0===base||null!==base[prop]){(base instanceof Object||\"object\"==typeof base)&&isEmptyObject(base)&&trapProp(base,prop,!0,inChainPropHandler);var propValue=owner[prop];(propValue instanceof Object||\"object\"==typeof propValue&&null!==propValue)&&setChainPropAccess(propValue,chain),trapProp(base,prop,!0,inChainPropHandler)}else trapProp(base,prop,!0,inChainPropHandler);else trapProp(base,prop,!1,endPropHandler)&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}(window,property)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function setConstant(source,args){function noopFunc(){}function noopCallbackFunc(){return noopFunc}function trueFunc(){return!0}function falseFunc(){return!1}function throwFunc(){throw new Error}function noopPromiseReject(){return Promise.reject()}function noopPromiseResolve(){var responseUrl=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",responseType=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"basic\";if(\"undefined\"!=typeof Response){var response=new Response(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"{}\",{status:200,statusText:\"OK\"});return\"opaque\"===responseType?Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:\"\"},url:{value:\"\"},type:{value:responseType}}):Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}}),Promise.resolve(response)}}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&isEmptyObject(base)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}function isEmptyObject(obj){return 0===Object.keys(obj).length&&!obj.prototype}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,value){var parsedDelay,stack=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",valueWrapper=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\",setProxyTrap=arguments.length>5&&void 0!==arguments[5]&&arguments[5];if([\"set-constant.js\",\"ubo-set-constant.js\",\"set.js\",\"ubo-set.js\",\"ubo-set-constant\",\"ubo-set\"].includes(source.name)&&(1!==stack.length&&(nativeIsNaN(parsedDelay=parseInt(stack,10))||!parsedDelay)&&(valueWrapper=stack),stack=void 0),property&&function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index32767)return}else if(\"-1\"===value)constantValue=-1;else if(\"\"===value)constantValue=\"\";else if(\"yes\"===value)constantValue=\"yes\";else{if(\"no\"!==value)return;constantValue=\"no\"}[\"asFunction\",\"asCallback\",\"asResolved\",\"asRejected\"].includes(valueWrapper)&&(constantValue={asFunction:v=>function(){return v},asCallback:v=>function(){return function(){return v}},asResolved:v=>Promise.resolve(v),asRejected:v=>Promise.reject(v)}[valueWrapper](constantValue));var canceled=!1,mustCancel=function(value){return canceled||(canceled=void 0!==value&&void 0!==constantValue&&typeof value!=typeof constantValue&&null!==value)},trapProp=function(base,prop,configurable,handler){if(!handler.init(base[prop]))return!1;var prevSetter,origDescriptor=Object.getOwnPropertyDescriptor(base,prop);if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message=\"Property '\".concat(prop,\"' is not configurable\");return function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message),!1}base[prop]&&(base[prop]=constantValue),origDescriptor.set instanceof Function&&(prevSetter=origDescriptor.set)}return Object.defineProperty(base,prop,{configurable:configurable,get:()=>handler.get(),set(a){if(void 0!==prevSetter&&prevSetter(a),a instanceof Object){var propertiesToCheck=property.split(\".\").slice(1);setProxyTrap&&!isProxyTrapSet&&(isProxyTrapSet=!0,a=new Proxy(a,{get:function(target,propertyKey,val){return propertiesToCheck.reduce((function(object,currentProp,index,array){var currentObj=null==object?void 0:object[currentProp];return index===array.length-1&¤tObj!==constantValue&&(object[currentProp]=constantValue),currentObj||object}),target),Reflect.get(target,propertyKey,val)}}))}handler.set(a)}}),!0};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain,inChainPropHandler={factValue:void 0,init(a){return this.factValue=a,!0},get(){return this.factValue},set(a){this.factValue!==a&&(this.factValue=a,a instanceof Object&&setChainPropAccess(a,chain))}},endPropHandler={init:a=>!mustCancel(a),get:()=>constantValue,set(a){mustCancel(a)&&(constantValue=a)}};if(chain)if(void 0===base||null!==base[prop]){(base instanceof Object||\"object\"==typeof base)&&isEmptyObject(base)&&trapProp(base,prop,!0,inChainPropHandler);var propValue=owner[prop];(propValue instanceof Object||\"object\"==typeof propValue&&null!==propValue)&&setChainPropAccess(propValue,chain),trapProp(base,prop,!0,inChainPropHandler)}else trapProp(base,prop,!0,inChainPropHandler);else trapProp(base,prop,!1,endPropHandler)&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}(window,property)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -127,7 +127,7 @@ "ubo-remove-cookie", "abp-cookie-remover" ], - "scriptlet": "function removeCookie(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,match){var matchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(match),removeCookieFromHost=function(cookieName,hostName){var cookieSpec=\"\".concat(cookieName,\"=\"),domain1=\"; domain=\".concat(hostName),domain2=\"; domain=.\".concat(hostName),path=\"; path=/\",expiration=\"; expires=Thu, 01 Jan 1970 00:00:00 GMT\";document.cookie=cookieSpec+expiration,document.cookie=cookieSpec+domain1+expiration,document.cookie=cookieSpec+domain2+expiration,document.cookie=cookieSpec+path+expiration,document.cookie=cookieSpec+domain1+path+expiration,document.cookie=cookieSpec+domain2+path+expiration,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)},rmCookie=function(){document.cookie.split(\";\").forEach((function(cookieStr){var pos=cookieStr.indexOf(\"=\");if(-1!==pos){var cookieName=cookieStr.slice(0,pos).trim();if(matchRegexp.test(cookieName))for(var hostParts=document.location.hostname.split(\".\"),i=0;i<=hostParts.length-1;i+=1){var hostName=hostParts.slice(i).join(\".\");hostName&&removeCookieFromHost(cookieName,hostName)}}}))};rmCookie(),window.addEventListener(\"beforeunload\",rmCookie)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function removeCookie(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,match){var matchRegexp=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(match),removeCookieFromHost=function(cookieName,hostName){var cookieSpec=\"\".concat(cookieName,\"=\"),domain1=\"; domain=\".concat(hostName),domain2=\"; domain=.\".concat(hostName),path=\"; path=/\",expiration=\"; expires=Thu, 01 Jan 1970 00:00:00 GMT\";document.cookie=cookieSpec+expiration,document.cookie=cookieSpec+domain1+expiration,document.cookie=cookieSpec+domain2+expiration,document.cookie=cookieSpec+path+expiration,document.cookie=cookieSpec+domain1+path+expiration,document.cookie=cookieSpec+domain2+path+expiration,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)},rmCookie=function(){document.cookie.split(\";\").forEach((function(cookieStr){var pos=cookieStr.indexOf(\"=\");if(-1!==pos){var cookieName=cookieStr.slice(0,pos).trim();if(matchRegexp.test(cookieName))for(var hostParts=document.location.hostname.split(\".\"),i=0;i<=hostParts.length-1;i+=1){var hostName=hostParts.slice(i).join(\".\");hostName&&removeCookieFromHost(cookieName,hostName)}}}))};rmCookie(),window.addEventListener(\"beforeunload\",rmCookie)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -140,7 +140,7 @@ "ubo-aeld", "abp-prevent-listener" ], - "scriptlet": "function preventAddEventListener(source,args){function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,typeSearch,listenerSearch){var typeSearchRegexp=toRegExp(typeSearch),listenerSearchRegexp=toRegExp(listenerSearch),nativeAddEventListener=window.EventTarget.prototype.addEventListener;function addEventListenerWrapper(type,listener){var _this$constructor,shouldPrevent=!1;if(function(type){return void 0!==type}(type)&&function(listener){return void 0!==listener&&(\"function\"==typeof listener||\"object\"==typeof listener&&null!==listener&&\"handleEvent\"in listener&&\"function\"==typeof listener.handleEvent)}(listener)&&(shouldPrevent=typeSearchRegexp.test(type.toString())&&listenerSearchRegexp.test(function(listener){return\"function\"==typeof listener?listener.toString():listener.handleEvent.toString()}(listener))),!shouldPrevent){var context=this;this&&\"Window\"===(null===(_this$constructor=this.constructor)||void 0===_this$constructor?void 0:_this$constructor.name)&&this!==window&&(context=window);for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return nativeAddEventListener.apply(context,[type,listener,...args])}!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}var descriptor={configurable:!0,set:function(){},get:function(){return addEventListenerWrapper}};Object.defineProperty(window.EventTarget.prototype,\"addEventListener\",descriptor),Object.defineProperty(window,\"addEventListener\",descriptor),Object.defineProperty(document,\"addEventListener\",descriptor)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventAddEventListener(source,args){function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,typeSearch,listenerSearch){var typeSearchRegexp=toRegExp(typeSearch),listenerSearchRegexp=toRegExp(listenerSearch),nativeAddEventListener=window.EventTarget.prototype.addEventListener;function addEventListenerWrapper(type,listener){var _this$constructor,shouldPrevent=!1;if(function(type){return void 0!==type}(type)&&function(listener){return void 0!==listener&&(\"function\"==typeof listener||\"object\"==typeof listener&&null!==listener&&\"handleEvent\"in listener&&\"function\"==typeof listener.handleEvent)}(listener)&&(shouldPrevent=typeSearchRegexp.test(type.toString())&&listenerSearchRegexp.test(function(listener){return\"function\"==typeof listener?listener.toString():listener.handleEvent.toString()}(listener))),!shouldPrevent){var context=this;this&&\"Window\"===(null===(_this$constructor=this.constructor)||void 0===_this$constructor?void 0:_this$constructor.name)&&this!==window&&(context=window);for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return nativeAddEventListener.apply(context,[type,listener,...args])}!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}var descriptor={configurable:!0,set:function(){},get:function(){return addEventListenerWrapper}};Object.defineProperty(window.EventTarget.prototype,\"addEventListener\",descriptor),Object.defineProperty(window,\"addEventListener\",descriptor),Object.defineProperty(document,\"addEventListener\",descriptor)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -152,7 +152,7 @@ "ubo-nobab", "ubo-bab-defuser" ], - "scriptlet": "function preventBab(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var nativeSetTimeout=window.setTimeout,babRegex=/\\.bab_elementid.$/;window.setTimeout=function(callback){if(\"string\"!=typeof callback||!babRegex.test(callback)){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeSetTimeout.apply(window,[callback,...args])}hit(source)};var signatures=[[\"blockadblock\"],[\"babasbm\"],[/getItem\\('babn'\\)/],[\"getElementById\",\"String.fromCharCode\",\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\",\"charAt\",\"DOMContentLoaded\",\"AdBlock\",\"addEventListener\",\"doScroll\",\"fromCharCode\",\"<<2|r>>4\",\"sessionStorage\",\"clientWidth\",\"localStorage\",\"Math\",\"random\"]],nativeEval=window.eval;window.eval=function(str){if(!function(str){if(\"string\"!=typeof str)return!1;for(var i=0;i=.8)return!0}return!1}(str))return nativeEval(str);hit(source);var bodyEl=document.body;bodyEl&&bodyEl.style.removeProperty(\"visibility\");var el=document.getElementById(\"babasbmsgx\");el&&el.parentNode.removeChild(el)}.bind(window)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventBab(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var nativeSetTimeout=window.setTimeout,babRegex=/\\.bab_elementid.$/;window.setTimeout=function(callback){if(\"string\"!=typeof callback||!babRegex.test(callback)){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeSetTimeout.apply(window,[callback,...args])}hit(source)};var signatures=[[\"blockadblock\"],[\"babasbm\"],[/getItem\\('babn'\\)/],[\"getElementById\",\"String.fromCharCode\",\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\",\"charAt\",\"DOMContentLoaded\",\"AdBlock\",\"addEventListener\",\"doScroll\",\"fromCharCode\",\"<<2|r>>4\",\"sessionStorage\",\"clientWidth\",\"localStorage\",\"Math\",\"random\"]],nativeEval=window.eval;window.eval=function(str){if(!function(str){if(\"string\"!=typeof str)return!1;for(var i=0;i=.8)return!0}return!1}(str))return nativeEval(str);hit(source);var bodyEl=document.body;bodyEl&&bodyEl.style.removeProperty(\"visibility\");var el=document.getElementById(\"babasbmsgx\");el&&el.parentNode.removeChild(el)}.bind(window)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -161,7 +161,7 @@ "ubo-nowebrtc.js", "ubo-nowebrtc" ], - "scriptlet": "function nowebrtc(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var propertyName=\"\";if(window.RTCPeerConnection?propertyName=\"RTCPeerConnection\":window.webkitRTCPeerConnection&&(propertyName=\"webkitRTCPeerConnection\"),\"\"!==propertyName){var rtcReplacement=function(config){var message=\"Document tried to create an RTCPeerConnection: \".concat(function(config){var str=\"undefined\";if(null===config)str=\"null\";else if(config instanceof Object){var SERVERS_PROP_NAME=\"iceServers\",URLS_PROP_NAME=\"urls\";Object.prototype.hasOwnProperty.call(config,SERVERS_PROP_NAME)&&config[SERVERS_PROP_NAME]&&Object.prototype.hasOwnProperty.call(config[SERVERS_PROP_NAME][0],URLS_PROP_NAME)&&config[SERVERS_PROP_NAME][0][URLS_PROP_NAME]&&(str=config[SERVERS_PROP_NAME][0][URLS_PROP_NAME].toString())}return str}(config));!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)};rtcReplacement.prototype={close:noopFunc,createDataChannel:noopFunc,createOffer:noopFunc,setRemoteDescription:noopFunc};var rtc=window[propertyName];window[propertyName]=rtcReplacement,rtc.prototype&&(rtc.prototype.createDataChannel=function(a,b){return{close:noopFunc,send:noopFunc}}.bind(null))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function nowebrtc(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var propertyName=\"\";if(window.RTCPeerConnection?propertyName=\"RTCPeerConnection\":window.webkitRTCPeerConnection&&(propertyName=\"webkitRTCPeerConnection\"),\"\"!==propertyName){var rtcReplacement=function(config){var message=\"Document tried to create an RTCPeerConnection: \".concat(function(config){var str=\"undefined\";if(null===config)str=\"null\";else if(config instanceof Object){var SERVERS_PROP_NAME=\"iceServers\",URLS_PROP_NAME=\"urls\";Object.prototype.hasOwnProperty.call(config,SERVERS_PROP_NAME)&&config[SERVERS_PROP_NAME]&&Object.prototype.hasOwnProperty.call(config[SERVERS_PROP_NAME][0],URLS_PROP_NAME)&&config[SERVERS_PROP_NAME][0][URLS_PROP_NAME]&&(str=config[SERVERS_PROP_NAME][0][URLS_PROP_NAME].toString())}return str}(config));!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)};rtcReplacement.prototype={close:noopFunc,createDataChannel:noopFunc,createOffer:noopFunc,setRemoteDescription:noopFunc};var rtc=window[propertyName];window[propertyName]=rtcReplacement,rtc.prototype&&(rtc.prototype.createDataChannel=function(a,b){return{close:noopFunc,send:noopFunc}}.bind(null))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -173,13 +173,13 @@ "ubo-addEventListener-logger", "ubo-aell" ], - "scriptlet": "function logAddEventListener(source,args){function convertTypeToString(value){return void 0===value?\"undefined\":\"object\"==typeof value?null===value?\"null\":objectToString(value):String(value)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var nativeAddEventListener=window.EventTarget.prototype.addEventListener;function addEventListenerWrapper(type,listener){var _this$constructor;if(function(type){return void 0!==type}(type)&&function(listener){return void 0!==listener&&(\"function\"==typeof listener||\"object\"==typeof listener&&null!==listener&&\"handleEvent\"in listener&&\"function\"==typeof listener.handleEvent)}(listener)){var message='addEventListener(\"'.concat(type,'\", ').concat(function(listener){return\"function\"==typeof listener?listener.toString():listener.handleEvent.toString()}(listener),\")\");logMessage(source,message,!0),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else{var _message=\"Invalid event type or listener passed to addEventListener:\\n type: \".concat(convertTypeToString(type),\"\\n listener: \").concat(convertTypeToString(listener));logMessage(source,_message,!0)}var context=this;this&&\"Window\"===(null===(_this$constructor=this.constructor)||void 0===_this$constructor?void 0:_this$constructor.name)&&this!==window&&(context=window);for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return nativeAddEventListener.apply(context,[type,listener,...args])}var descriptor={configurable:!0,set:function(){},get:function(){return addEventListenerWrapper}};Object.defineProperty(window.EventTarget.prototype,\"addEventListener\",descriptor),Object.defineProperty(window,\"addEventListener\",descriptor),Object.defineProperty(document,\"addEventListener\",descriptor)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function logAddEventListener(source,args){function convertTypeToString(value){return void 0===value?\"undefined\":\"object\"==typeof value?null===value?\"null\":objectToString(value):String(value)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var nativeAddEventListener=window.EventTarget.prototype.addEventListener;function addEventListenerWrapper(type,listener){var _this$constructor;if(function(type){return void 0!==type}(type)&&function(listener){return void 0!==listener&&(\"function\"==typeof listener||\"object\"==typeof listener&&null!==listener&&\"handleEvent\"in listener&&\"function\"==typeof listener.handleEvent)}(listener)){var message='addEventListener(\"'.concat(type,'\", ').concat(function(listener){return\"function\"==typeof listener?listener.toString():listener.handleEvent.toString()}(listener),\")\");logMessage(source,message,!0),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else{var _message=\"Invalid event type or listener passed to addEventListener:\\n type: \".concat(convertTypeToString(type),\"\\n listener: \").concat(convertTypeToString(listener));logMessage(source,_message,!0)}var context=this;this&&\"Window\"===(null===(_this$constructor=this.constructor)||void 0===_this$constructor?void 0:_this$constructor.name)&&this!==window&&(context=window);for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return nativeAddEventListener.apply(context,[type,listener,...args])}var descriptor={configurable:!0,set:function(){},get:function(){return addEventListenerWrapper}};Object.defineProperty(window.EventTarget.prototype,\"addEventListener\",descriptor),Object.defineProperty(window,\"addEventListener\",descriptor),Object.defineProperty(document,\"addEventListener\",descriptor)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "log-eval" ], - "scriptlet": "function logEval(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var nativeEval=window.eval;window.eval=function(str){return hit(source),logMessage(source,'eval(\"'.concat(str,'\")'),!0),nativeEval(str)};var nativeFunction=window.Function;function FunctionWrapper(){hit(source);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];return logMessage(source,\"new Function(\".concat(args.join(\", \"),\")\"),!0),nativeFunction.apply(this,[...args])}FunctionWrapper.prototype=Object.create(nativeFunction.prototype),FunctionWrapper.prototype.constructor=FunctionWrapper,window.Function=FunctionWrapper}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function logEval(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var nativeEval=window.eval;window.eval=function(str){return hit(source),logMessage(source,'eval(\"'.concat(str,'\")'),!0),nativeEval(str)};var nativeFunction=window.Function;function FunctionWrapper(){hit(source);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];return logMessage(source,\"new Function(\".concat(args.join(\", \"),\")\"),!0),nativeFunction.apply(this,[...args])}FunctionWrapper.prototype=Object.create(nativeFunction.prototype),FunctionWrapper.prototype.constructor=FunctionWrapper,window.Function=FunctionWrapper}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -198,7 +198,7 @@ "ubo-noeval", "ubo-silent-noeval" ], - "scriptlet": "function noeval(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){window.eval=function(s){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"AdGuard has prevented eval:\\n\".concat(s),!0)}.bind()}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function noeval(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){window.eval=function(s){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"AdGuard has prevented eval:\\n\".concat(s),!0)}.bind()}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -207,7 +207,7 @@ "ubo-noeval-if.js", "ubo-noeval-if" ], - "scriptlet": "function preventEvalIf(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,search){var searchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(search),nativeEval=window.eval;window.eval=function(payload){if(!searchRegexp.test(payload.toString()))return nativeEval.call(window,payload);!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}.bind(window)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventEvalIf(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,search){var searchRegexp=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(search),nativeEval=window.eval;window.eval=function(payload){if(!searchRegexp.test(payload.toString()))return nativeEval.call(window,payload);!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}.bind(window)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -218,7 +218,7 @@ "ubo-fuckadblock.js-3.2.0", "ubo-nofab" ], - "scriptlet": "function preventFab(source,args){function noopFunc(){}function noopThis(){return this}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);var Fab=function(){};Fab.prototype.check=noopFunc,Fab.prototype.clearEvent=noopFunc,Fab.prototype.emitEvent=noopFunc,Fab.prototype.on=function(a,b){return a||b(),this},Fab.prototype.onDetected=noopThis,Fab.prototype.onNotDetected=function(a){return a(),this},Fab.prototype.setOption=noopFunc,Fab.prototype.options={set:noopFunc,get:noopFunc};var fab=new Fab,getSetFab={get:()=>Fab,set(){}},getsetfab={get:()=>fab,set(){}};Object.prototype.hasOwnProperty.call(window,\"FuckAdBlock\")?window.FuckAdBlock=Fab:Object.defineProperty(window,\"FuckAdBlock\",getSetFab),Object.prototype.hasOwnProperty.call(window,\"BlockAdBlock\")?window.BlockAdBlock=Fab:Object.defineProperty(window,\"BlockAdBlock\",getSetFab),Object.prototype.hasOwnProperty.call(window,\"SniffAdBlock\")?window.SniffAdBlock=Fab:Object.defineProperty(window,\"SniffAdBlock\",getSetFab),Object.prototype.hasOwnProperty.call(window,\"fuckAdBlock\")?window.fuckAdBlock=fab:Object.defineProperty(window,\"fuckAdBlock\",getsetfab),Object.prototype.hasOwnProperty.call(window,\"blockAdBlock\")?window.blockAdBlock=fab:Object.defineProperty(window,\"blockAdBlock\",getsetfab),Object.prototype.hasOwnProperty.call(window,\"sniffAdBlock\")?window.sniffAdBlock=fab:Object.defineProperty(window,\"sniffAdBlock\",getsetfab)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventFab(source,args){function noopFunc(){}function noopThis(){return this}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);var Fab=function(){};Fab.prototype.check=noopFunc,Fab.prototype.clearEvent=noopFunc,Fab.prototype.emitEvent=noopFunc,Fab.prototype.on=function(a,b){return a||b(),this},Fab.prototype.onDetected=noopThis,Fab.prototype.onNotDetected=function(a){return a(),this},Fab.prototype.setOption=noopFunc,Fab.prototype.options={set:noopFunc,get:noopFunc};var fab=new Fab,getSetFab={get:()=>Fab,set(){}},getsetfab={get:()=>fab,set(){}};Object.prototype.hasOwnProperty.call(window,\"FuckAdBlock\")?window.FuckAdBlock=Fab:Object.defineProperty(window,\"FuckAdBlock\",getSetFab),Object.prototype.hasOwnProperty.call(window,\"BlockAdBlock\")?window.BlockAdBlock=Fab:Object.defineProperty(window,\"BlockAdBlock\",getSetFab),Object.prototype.hasOwnProperty.call(window,\"SniffAdBlock\")?window.SniffAdBlock=Fab:Object.defineProperty(window,\"SniffAdBlock\",getSetFab),Object.prototype.hasOwnProperty.call(window,\"fuckAdBlock\")?window.fuckAdBlock=fab:Object.defineProperty(window,\"fuckAdBlock\",getsetfab),Object.prototype.hasOwnProperty.call(window,\"blockAdBlock\")?window.blockAdBlock=fab:Object.defineProperty(window,\"blockAdBlock\",getsetfab),Object.prototype.hasOwnProperty.call(window,\"sniffAdBlock\")?window.sniffAdBlock=fab:Object.defineProperty(window,\"sniffAdBlock\",getsetfab)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -227,7 +227,7 @@ "ubo-popads-dummy.js", "ubo-popads-dummy" ], - "scriptlet": "function setPopadsDummy(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){delete window.PopAds,delete window.popns,Object.defineProperties(window,{PopAds:{get:function(){return hit(source),{}}},popns:{get:function(){return hit(source),{}}}})}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function setPopadsDummy(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){delete window.PopAds,delete window.popns,Object.defineProperties(window,{PopAds:{get:function(){return hit(source),{}}},popns:{get:function(){return hit(source),{}}}})}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -236,7 +236,7 @@ "ubo-popads.net.js", "ubo-popads.net" ], - "scriptlet": "function preventPopadsNet(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var rid=Math.random().toString(36).slice(2,9),throwError=function(){throw new ReferenceError(rid)};delete window.PopAds,delete window.popns,Object.defineProperties(window,{PopAds:{set:throwError},popns:{set:throwError}}),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind(),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventPopadsNet(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var rid=Math.random().toString(36).slice(2,9),throwError=function(){throw new ReferenceError(rid)};delete window.PopAds,delete window.popns,Object.defineProperties(window,{PopAds:{set:throwError},popns:{set:throwError}}),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind(),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -245,25 +245,25 @@ "ubo-adfly-defuser.js", "ubo-adfly-defuser" ], - "scriptlet": "function preventAdfly(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var val,isDigit=function(data){return/^\\d$/.test(data)},applyHandler=!0;object=window,property=\"ysmm\",descriptor={configurable:!1,set:function(value){if(applyHandler){applyHandler=!1;try{\"string\"==typeof value&&function(encodedURL){for(var evenChars=\"\",oddChars=\"\",i=0;i2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"Failed to set up prevent-adfly scriptlet\"):function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);var object,property,descriptor,currentDescriptor}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventAdfly(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var val,isDigit=function(data){return/^\\d$/.test(data)},applyHandler=!0;object=window,property=\"ysmm\",descriptor={configurable:!1,set:function(value){if(applyHandler){applyHandler=!1;try{\"string\"==typeof value&&function(encodedURL){for(var evenChars=\"\",oddChars=\"\",i=0;i2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"Failed to set up prevent-adfly scriptlet\"):function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);var object,property,descriptor,currentDescriptor}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "debug-on-property-read" ], - "scriptlet": "function debugOnPropertyRead(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var rid=Math.random().toString(36).slice(2,9),abort=function(){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);debugger};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;chain?Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}}):function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:abort,set:noopFunc})}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function debugOnPropertyRead(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var rid=Math.random().toString(36).slice(2,9),abort=function(){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);debugger};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;chain?Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}}):function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:abort,set:noopFunc})}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "debug-on-property-write" ], - "scriptlet": "function debugOnPropertyWrite(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var rid=Math.random().toString(36).slice(2,9),abort=function(){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);debugger};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;chain?Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}}):function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{set:abort})}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function debugOnPropertyWrite(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var rid=Math.random().toString(36).slice(2,9),abort=function(){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);debugger};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;chain?Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}}):function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{set:abort})}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "debug-current-inline-script" ], - "scriptlet": "function debugCurrentInlineScript(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,search){var searchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(search),rid=Math.random().toString(36).slice(2,9),getCurrentScript=function(){if(\"currentScript\"in document)return document.currentScript;var scripts=document.getElementsByTagName(\"script\");return scripts[scripts.length-1]},ourScript=getCurrentScript(),abort=function(){var scriptEl=getCurrentScript();if(scriptEl){var content=scriptEl.textContent;try{content=Object.getOwnPropertyDescriptor(Node.prototype,\"textContent\").get.call(scriptEl)}catch(e){}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);debugger}}};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object!=0||null!==base)if(chain)Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}});else{var currentValue=base[prop];!function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{set:function(value){abort(),currentValue=value},get:function(){return abort(),currentValue}})}else{var props=property.split(\".\"),propIndex=props.indexOf(prop),baseName=props[propIndex-1];!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(\"The scriptlet had been executed before the \".concat(baseName,\" was loaded.\"),source.verbose)}}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function debugCurrentInlineScript(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,search){var searchRegexp=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(search),rid=Math.random().toString(36).slice(2,9),getCurrentScript=function(){if(\"currentScript\"in document)return document.currentScript;var scripts=document.getElementsByTagName(\"script\");return scripts[scripts.length-1]},ourScript=getCurrentScript(),abort=function(){var scriptEl=getCurrentScript();if(scriptEl){var content=scriptEl.textContent;try{content=Object.getOwnPropertyDescriptor(Node.prototype,\"textContent\").get.call(scriptEl)}catch(e){}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);debugger}}};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object!=0||null!==base)if(chain)Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}});else{var currentValue=base[prop];!function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{set:function(value){abort(),currentValue=value},get:function(){return abort(),currentValue}})}else{var props=property.split(\".\"),propIndex=props.indexOf(prop),baseName=props[propIndex-1];!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(\"The scriptlet had been executed before the \".concat(baseName,\" was loaded.\"),source.verbose)}}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -275,7 +275,7 @@ "ubo-remove-attr", "ubo-ra" ], - "scriptlet": "function removeAttr(source,args){function observeDOMChanges(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=function(){disconnect(),callback(),connect()},delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};connect()}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,attrs,selector){var applying=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"asap stay\";if(attrs){attrs=attrs.split(/\\s*\\|\\s*/),selector||(selector=\"[\".concat(attrs.join(\"],[\"),\"]\"));var rmattr=function(){var nodes=[];try{nodes=[].slice.call(document.querySelectorAll(selector))}catch(e){!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"Invalid selector arg: '\".concat(selector,\"'\"))}var removed=!1;nodes.forEach((function(node){attrs.forEach((function(attr){node.removeAttribute(attr),removed=!0}))})),removed&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)},flags=function(flags){var FLAGS_DIVIDER=\" \",ASAP_FLAG=\"asap\",COMPLETE_FLAG=\"complete\",STAY_FLAG=\"stay\",VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG],passedFlags=flags.trim().split(FLAGS_DIVIDER).filter((function(f){return VALID_FLAGS.includes(f)}));return{ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag:flag=>passedFlags.includes(flag)}}(applying);flags.hasFlag(flags.ASAP)&&(\"loading\"===document.readyState?window.addEventListener(\"DOMContentLoaded\",rmattr,{once:!0}):rmattr()),\"complete\"!==document.readyState&&flags.hasFlag(flags.COMPLETE)?window.addEventListener(\"load\",(function(){rmattr(),flags.hasFlag(flags.STAY)&&observeDOMChanges(rmattr,!0)}),{once:!0}):flags.hasFlag(flags.STAY)&&(applying.includes(\" \")||rmattr(),observeDOMChanges(rmattr,!0))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function removeAttr(source,args){function observeDOMChanges(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=function(){disconnect(),callback(),connect()},delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};connect()}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,attrs,selector){var applying=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"asap stay\";if(attrs){attrs=attrs.split(/\\s*\\|\\s*/),selector||(selector=\"[\".concat(attrs.join(\"],[\"),\"]\"));var rmattr=function(){var nodes=[];try{nodes=[].slice.call(document.querySelectorAll(selector))}catch(e){!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"Invalid selector arg: '\".concat(selector,\"'\"))}var removed=!1;nodes.forEach((function(node){attrs.forEach((function(attr){node.removeAttribute(attr),removed=!0}))})),removed&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)},flags=function(flags){var FLAGS_DIVIDER=\" \",ASAP_FLAG=\"asap\",COMPLETE_FLAG=\"complete\",STAY_FLAG=\"stay\",VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG],passedFlags=flags.trim().split(FLAGS_DIVIDER).filter((function(f){return VALID_FLAGS.includes(f)}));return{ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag:flag=>passedFlags.includes(flag)}}(applying);flags.hasFlag(flags.ASAP)&&(\"loading\"===document.readyState?window.addEventListener(\"DOMContentLoaded\",rmattr,{once:!0}):rmattr()),\"complete\"!==document.readyState&&flags.hasFlag(flags.COMPLETE)?window.addEventListener(\"load\",(function(){rmattr(),flags.hasFlag(flags.STAY)&&observeDOMChanges(rmattr,!0)}),{once:!0}):flags.hasFlag(flags.STAY)&&(applying.includes(\" \")||rmattr(),observeDOMChanges(rmattr,!0))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -284,7 +284,7 @@ "ubo-set-attr.js", "ubo-set-attr" ], - "scriptlet": "function setAttr(source,args){function setAttributeBySelector(source,selector,attribute,value){var elements,attributeSetter=arguments.length>4&&void 0!==arguments[4]?arguments[4]:defaultAttributeSetter;try{elements=document.querySelectorAll(selector)}catch(_unused){return void logMessage(source,'Failed to find elements matching selector \"'.concat(selector,'\"'))}if(elements&&0!==elements.length)try{elements.forEach((function(elem){return attributeSetter(elem,attribute,value)})),function(source){if(!0!==source.verbose)return;try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}(source)}catch(_unused2){logMessage(source,\"Failed to set [\".concat(attribute,'=\"').concat(value,'\"] to each of selected elements.'))}}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector,attr){var value=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";if(selector&&attr){var num,attributeHandler,shouldCopyValue=value.startsWith(\"[\")&&value.endsWith(\"]\"),isValidValue=0===value.length||(num=parseInt(value,10),!(Number.isNaN||window.isNaN)(num)&&parseInt(value,10)>0&&parseInt(value,10)<32767)||[\"true\",\"false\"].includes(value.toLowerCase());shouldCopyValue||isValidValue?(shouldCopyValue&&(attributeHandler=function(elem,attr,value){var valueToCopy=elem.getAttribute(value.slice(1,-1));null===valueToCopy&&logMessage(source,\"No element attribute found to copy value from: \".concat(value)),elem.setAttribute(attr,valueToCopy)}),setAttributeBySelector(source,selector,attr,value,attributeHandler),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}((function(){return setAttributeBySelector(source,selector,attr,value,attributeHandler)}),!0)):logMessage(source,\"Invalid attribute value provided: '\".concat(function(value){return void 0===value?\"undefined\":\"object\"==typeof value?null===value?\"null\":objectToString(value):String(value)}(value),\"'\"))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function setAttr(source,args){function setAttributeBySelector(source,selector,attribute,value){var elements,attributeSetter=arguments.length>4&&void 0!==arguments[4]?arguments[4]:defaultAttributeSetter;try{elements=document.querySelectorAll(selector)}catch(_unused){return void logMessage(source,'Failed to find elements matching selector \"'.concat(selector,'\"'))}if(elements&&0!==elements.length)try{elements.forEach((function(elem){return attributeSetter(elem,attribute,value)})),function(source){if(!0!==source.verbose)return;try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}(source)}catch(_unused2){logMessage(source,\"Failed to set [\".concat(attribute,'=\"').concat(value,'\"] to each of selected elements.'))}}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector,attr){var value=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";if(selector&&attr){var num,attributeHandler,shouldCopyValue=value.startsWith(\"[\")&&value.endsWith(\"]\"),isValidValue=0===value.length||(num=parseInt(value,10),!(Number.isNaN||window.isNaN)(num)&&parseInt(value,10)>=0&&parseInt(value,10)<=32767)||[\"true\",\"false\"].includes(value.toLowerCase());shouldCopyValue||isValidValue?(shouldCopyValue&&(attributeHandler=function(elem,attr,value){var valueToCopy=elem.getAttribute(value.slice(1,-1));null===valueToCopy&&logMessage(source,\"No element attribute found to copy value from: \".concat(value)),elem.setAttribute(attr,valueToCopy)}),setAttributeBySelector(source,selector,attr,value,attributeHandler),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}((function(){return setAttributeBySelector(source,selector,attr,value,attributeHandler)}),!0)):logMessage(source,\"Invalid attribute value provided: '\".concat(function(value){return void 0===value?\"undefined\":\"object\"==typeof value?null===value?\"null\":objectToString(value):String(value)}(value),\"'\"))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -296,7 +296,7 @@ "ubo-remove-class", "ubo-rc" ], - "scriptlet": "function removeClass(source,args){function observeDOMChanges(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=function(){disconnect(),callback(),connect()},delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};connect()}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,classNames,selector){var applying=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"asap stay\";if(classNames){classNames=classNames.split(/\\s*\\|\\s*/);var selectors=[];selector||(selectors=classNames.map((function(className){return\".\".concat(className)})));var removeClassHandler=function(){var nodes=new Set;if(selector){var foundNodes=[];try{foundNodes=[].slice.call(document.querySelectorAll(selector))}catch(e){!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"Invalid selector arg: '\".concat(selector,\"'\"))}foundNodes.forEach((function(n){return nodes.add(n)}))}else selectors.length>0&&selectors.forEach((function(s){for(var elements=document.querySelectorAll(s),i=0;ipassedFlags.includes(flag)}}(applying);flags.hasFlag(flags.ASAP)&&(\"loading\"===document.readyState?window.addEventListener(\"DOMContentLoaded\",removeClassHandler,{once:!0}):removeClassHandler()),\"complete\"!==document.readyState&&flags.hasFlag(flags.COMPLETE)?window.addEventListener(\"load\",(function(){removeClassHandler(),flags.hasFlag(flags.STAY)&&observeDOMChanges(removeClassHandler,!0,CLASS_ATTR_NAME)}),{once:!0}):flags.hasFlag(flags.STAY)&&(applying.includes(\" \")||removeClassHandler(),observeDOMChanges(removeClassHandler,!0,CLASS_ATTR_NAME))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function removeClass(source,args){function observeDOMChanges(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=function(){disconnect(),callback(),connect()},delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};connect()}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,classNames,selector){var applying=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"asap stay\";if(classNames){classNames=classNames.split(/\\s*\\|\\s*/);var selectors=[];selector||(selectors=classNames.map((function(className){return\".\".concat(className)})));var removeClassHandler=function(){var nodes=new Set;if(selector){var foundNodes=[];try{foundNodes=[].slice.call(document.querySelectorAll(selector))}catch(e){!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"Invalid selector arg: '\".concat(selector,\"'\"))}foundNodes.forEach((function(n){return nodes.add(n)}))}else selectors.length>0&&selectors.forEach((function(s){for(var elements=document.querySelectorAll(s),i=0;ipassedFlags.includes(flag)}}(applying);flags.hasFlag(flags.ASAP)&&(\"loading\"===document.readyState?window.addEventListener(\"DOMContentLoaded\",removeClassHandler,{once:!0}):removeClassHandler()),\"complete\"!==document.readyState&&flags.hasFlag(flags.COMPLETE)?window.addEventListener(\"load\",(function(){removeClassHandler(),flags.hasFlag(flags.STAY)&&observeDOMChanges(removeClassHandler,!0,CLASS_ATTR_NAME)}),{once:!0}):flags.hasFlag(flags.STAY)&&(applying.includes(\" \")||removeClassHandler(),observeDOMChanges(removeClassHandler,!0,CLASS_ATTR_NAME))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -305,7 +305,7 @@ "ubo-disable-newtab-links.js", "ubo-disable-newtab-links" ], - "scriptlet": "function disableNewtabLinks(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){document.addEventListener(\"click\",(function(ev){for(var target=ev.target;null!==target;){if(\"a\"===target.localName&&target.hasAttribute(\"target\")){ev.stopPropagation(),ev.preventDefault(),hit(source);break}target=target.parentNode}}))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function disableNewtabLinks(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){document.addEventListener(\"click\",(function(ev){for(var target=ev.target;null!==target;){if(\"a\"===target.localName&&target.hasAttribute(\"target\")){ev.stopPropagation(),ev.preventDefault(),hit(source);break}target=target.parentNode}}))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -320,7 +320,7 @@ "ubo-nano-sib", "ubo-adjust-setInterval" ], - "scriptlet": "function adjustSetInterval(source,args){function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,matchCallback,matchDelay,boost){var nativeSetInterval=window.setInterval,matchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchCallback);window.setInterval=function(callback,delay){if(function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback))matchRegexp.test(callback.toString())&&(realDelay=delay,function(delay){return\"*\"===delay}(inputDelay=matchDelay)||realDelay===function(delay){var DEFAULT_DELAY=1e3,parsedDelay=parseInt(delay,10);return nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay}(inputDelay))&&(delay*=function(boost){var num,DEFAULT_MULTIPLIER=.05,MIN_MULTIPLIER=.001,MAX_MULTIPLIER=50,parsedBoost=parseFloat(boost),boostMultiplier=nativeIsNaN(parsedBoost)||(num=parsedBoost,!(Number.isFinite||window.isFinite)(num))?DEFAULT_MULTIPLIER:parsedBoost;return boostMultiplierMAX_MULTIPLIER&&(boostMultiplier=MAX_MULTIPLIER),boostMultiplier}(boost),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source));else{var message=\"Scriptlet can't be applied because of invalid callback: '\".concat(String(callback),\"'\");!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message)}for(var inputDelay,realDelay,_len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return nativeSetInterval.apply(window,[callback,delay,...args])}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function adjustSetInterval(source,args){function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,matchCallback,matchDelay,boost){var nativeSetInterval=window.setInterval,matchRegexp=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchCallback);window.setInterval=function(callback,delay){if(function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback))matchRegexp.test(callback.toString())&&(realDelay=delay,function(delay){return\"*\"===delay}(inputDelay=matchDelay)||realDelay===function(delay){var DEFAULT_DELAY=1e3,parsedDelay=parseInt(delay,10);return nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay}(inputDelay))&&(delay*=function(boost){var num,DEFAULT_MULTIPLIER=.05,MIN_MULTIPLIER=.001,MAX_MULTIPLIER=50,parsedBoost=parseFloat(boost),boostMultiplier=nativeIsNaN(parsedBoost)||(num=parsedBoost,!(Number.isFinite||window.isFinite)(num))?DEFAULT_MULTIPLIER:parsedBoost;return boostMultiplierMAX_MULTIPLIER&&(boostMultiplier=MAX_MULTIPLIER),boostMultiplier}(boost),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source));else{var message=\"Scriptlet can't be applied because of invalid callback: '\".concat(String(callback),\"'\");!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message)}for(var inputDelay,realDelay,_len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return nativeSetInterval.apply(window,[callback,delay,...args])}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -335,13 +335,13 @@ "ubo-nano-setTimeout-booster", "ubo-nano-stb" ], - "scriptlet": "function adjustSetTimeout(source,args){function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,matchCallback,matchDelay,boost){var nativeSetTimeout=window.setTimeout,matchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchCallback);window.setTimeout=function(callback,delay){if(function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback))matchRegexp.test(callback.toString())&&(realDelay=delay,function(delay){return\"*\"===delay}(inputDelay=matchDelay)||realDelay===function(delay){var DEFAULT_DELAY=1e3,parsedDelay=parseInt(delay,10);return nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay}(inputDelay))&&(delay*=function(boost){var num,DEFAULT_MULTIPLIER=.05,MIN_MULTIPLIER=.001,MAX_MULTIPLIER=50,parsedBoost=parseFloat(boost),boostMultiplier=nativeIsNaN(parsedBoost)||(num=parsedBoost,!(Number.isFinite||window.isFinite)(num))?DEFAULT_MULTIPLIER:parsedBoost;return boostMultiplierMAX_MULTIPLIER&&(boostMultiplier=MAX_MULTIPLIER),boostMultiplier}(boost),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source));else{var message=\"Scriptlet can't be applied because of invalid callback: '\".concat(String(callback),\"'\");!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message)}for(var inputDelay,realDelay,_len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return nativeSetTimeout.apply(window,[callback,delay,...args])}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function adjustSetTimeout(source,args){function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,matchCallback,matchDelay,boost){var nativeSetTimeout=window.setTimeout,matchRegexp=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchCallback);window.setTimeout=function(callback,delay){if(function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback))matchRegexp.test(callback.toString())&&(realDelay=delay,function(delay){return\"*\"===delay}(inputDelay=matchDelay)||realDelay===function(delay){var DEFAULT_DELAY=1e3,parsedDelay=parseInt(delay,10);return nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay}(inputDelay))&&(delay*=function(boost){var num,DEFAULT_MULTIPLIER=.05,MIN_MULTIPLIER=.001,MAX_MULTIPLIER=50,parsedBoost=parseFloat(boost),boostMultiplier=nativeIsNaN(parsedBoost)||(num=parsedBoost,!(Number.isFinite||window.isFinite)(num))?DEFAULT_MULTIPLIER:parsedBoost;return boostMultiplierMAX_MULTIPLIER&&(boostMultiplier=MAX_MULTIPLIER),boostMultiplier}(boost),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source));else{var message=\"Scriptlet can't be applied because of invalid callback: '\".concat(String(callback),\"'\");!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,message)}for(var inputDelay,realDelay,_len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return nativeSetTimeout.apply(window,[callback,delay,...args])}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "dir-string" ], - "scriptlet": "function dirString(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,times){var dir=console.dir;console.dir=function(object){\"function\"==typeof dir&&dir.call(this,object),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function dirString(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,times){var dir=console.dir;console.dir=function(object){\"function\"==typeof dir&&dir.call(this,object),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -351,7 +351,7 @@ "ubo-json-prune", "abp-json-prune" ], - "scriptlet": "function jsonPrune(source,args){function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackSteps=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})),stackLines=stackSteps.map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!matchStackTrace(stack,(new Error).stack||\"\"))return shouldProcess=!1;for(var wildcardSymbols=[\".*.\",\"*.\",\".*\",\".[].\",\"[].\",\".[]\"],_loop=function(){var requiredPath=requiredPaths[i],lastNestedPropName=requiredPath.split(\".\").pop(),hasWildcard=wildcardSymbols.some((function(symbol){return requiredPath.includes(symbol)})),details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length)return{v:shouldProcess=!1};shouldProcess=!hasWildcard;for(var j=0;j0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove,requiredInitialProps){var stack=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(requiredInitialProps),nativeObjects={nativeStringify:window.JSON.stringify},nativeJSONParse=JSON.parse,jsonParseWrapper=function(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];var root=nativeJSONParse.apply(JSON,args);return jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects)};jsonParseWrapper.toString=nativeJSONParse.toString.bind(nativeJSONParse),JSON.parse=jsonParseWrapper;var nativeResponseJson=Response.prototype.json;\"undefined\"!=typeof Response&&(Response.prototype.json=function(){return nativeResponseJson.apply(this).then((function(obj){return jsonPruner(source,obj,prunePaths,requiredPaths,stack,nativeObjects)}))})}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function jsonPrune(source,args){function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackSteps=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})),stackLines=stackSteps.map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!matchStackTrace(stack,(new Error).stack||\"\"))return shouldProcess=!1;for(var wildcardSymbols=[\".*.\",\"*.\",\".*\",\".[].\",\"[].\",\".[]\"],_loop=function(){var requiredPath=requiredPaths[i],lastNestedPropName=requiredPath.split(\".\").pop(),hasWildcard=wildcardSymbols.some((function(symbol){return requiredPath.includes(symbol)})),details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length)return{v:shouldProcess=!1};shouldProcess=!hasWildcard;for(var j=0;j3&&void 0!==arguments[3]?arguments[3]:\"\",prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(requiredInitialProps),nativeObjects={nativeStringify:window.JSON.stringify},nativeJSONParse=JSON.parse,jsonParseWrapper=function(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];var root=nativeJSONParse.apply(JSON,args);return jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects)};jsonParseWrapper.toString=nativeJSONParse.toString.bind(nativeJSONParse),JSON.parse=jsonParseWrapper;var nativeResponseJson=Response.prototype.json;\"undefined\"!=typeof Response&&(Response.prototype.json=function(){return nativeResponseJson.apply(this).then((function(obj){return jsonPruner(source,obj,prunePaths,requiredPaths,stack,nativeObjects)}))})}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -363,7 +363,7 @@ "ubo-no-requestAnimationFrame-if", "ubo-norafif" ], - "scriptlet": "function preventRequestAnimationFrame(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,match){var nativeRequestAnimationFrame=window.requestAnimationFrame,shouldLog=void 0===match,_parseMatchArg=function(match){var INVERT_MARKER=\"!\",isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(INVERT_MARKER)),matchValue=isInvertedMatch?match.slice(1):match,matchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchValue);return{isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue}}(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;window.requestAnimationFrame=function(callback){var shouldPrevent=!1;if(shouldLog?(hit(source),function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"requestAnimationFrame(\".concat(String(callback),\")\"),!0)):function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback)&&function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(match)&&(shouldPrevent=matchRegexp.test(callback.toString())!==isInvertedMatch),shouldPrevent)return hit(source),nativeRequestAnimationFrame(noopFunc);for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeRequestAnimationFrame.apply(window,[callback,...args])}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventRequestAnimationFrame(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,match){var nativeRequestAnimationFrame=window.requestAnimationFrame,shouldLog=void 0===match,_parseMatchArg=function(match){var INVERT_MARKER=\"!\",isInvertedMatch=!!match&&(null==match?void 0:match.startsWith(INVERT_MARKER)),matchValue=isInvertedMatch?match.slice(1):match;return{isInvertedMatch:isInvertedMatch,matchRegexp:function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(matchValue),matchValue:matchValue}}(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;window.requestAnimationFrame=function(callback){var shouldPrevent=!1;if(shouldLog?(hit(source),function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"requestAnimationFrame(\".concat(String(callback),\")\"),!0)):function(callback){return callback instanceof Function||\"string\"==typeof callback}(callback)&&function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(match)&&(shouldPrevent=matchRegexp.test(callback.toString())!==isInvertedMatch),shouldPrevent)return hit(source),nativeRequestAnimationFrame(noopFunc);for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeRequestAnimationFrame.apply(window,[callback,...args])}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -372,7 +372,7 @@ "ubo-set-cookie.js", "ubo-set-cookie" ], - "scriptlet": "function setCookie(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,name,value){var rawPath,path=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"/\",domain=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\",validValue=function(value){if(!value)return null;var validValue,num;if(new Set([\"true\",\"t\",\"false\",\"f\",\"yes\",\"y\",\"no\",\"n\",\"ok\",\"on\",\"off\",\"accept\",\"accepted\",\"notaccepted\",\"reject\",\"rejected\",\"allow\",\"allowed\",\"disallow\",\"deny\",\"enable\",\"enabled\",\"disable\",\"disabled\",\"necessary\",\"required\"]).has(value.toLowerCase()))validValue=value;else{if(!/^\\d+$/.test(value))return null;if(num=validValue=parseFloat(value),(Number.isNaN||window.isNaN)(num))return null;if(Math.abs(validValue)<0||Math.abs(validValue)>32767)return null}return validValue}(value);if(null!==validValue)if(\"/\"===(rawPath=path)||\"none\"===rawPath)if(document.location.origin.includes(domain)){var cookieToSet=function(name,rawValue,rawPath){var domainValue=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",shouldEncodeValue=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],COOKIE_BREAKER=\";\";if(!shouldEncodeValue&&\"\".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER))return null;var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue,resultCookie=\"\".concat(name,\"=\").concat(value),path=function(rawPath){return\"/\"===rawPath?\"path=/\":\"\"}(rawPath);return path&&(resultCookie+=\"; \".concat(path)),domainValue&&(resultCookie+=\"; domain=\".concat(domainValue)),resultCookie}(name,validValue,path,domain);cookieToSet?(function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),document.cookie=cookieToSet):logMessage(source,\"Invalid cookie name or value\")}else logMessage(source,\"Cookie domain not matched by origin: '\".concat(domain,\"'\"));else logMessage(source,\"Invalid cookie path: '\".concat(path,\"'\"));else logMessage(source,\"Invalid cookie value: '\".concat(validValue,\"'\"))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function setCookie(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,name,value){var rawPath,path=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"/\",domain=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\",validValue=function(value){if(!value)return null;var validValue,num;if(new Set([\"true\",\"t\",\"false\",\"f\",\"yes\",\"y\",\"no\",\"n\",\"ok\",\"on\",\"off\",\"accept\",\"accepted\",\"notaccepted\",\"reject\",\"rejected\",\"allow\",\"allowed\",\"disallow\",\"deny\",\"enable\",\"enabled\",\"disable\",\"disabled\",\"necessary\",\"required\"]).has(value.toLowerCase()))validValue=value;else{if(!/^\\d+$/.test(value))return null;if(num=validValue=parseFloat(value),(Number.isNaN||window.isNaN)(num))return null;if(Math.abs(validValue)<0||Math.abs(validValue)>32767)return null}return validValue}(value);if(null!==validValue)if(\"/\"===(rawPath=path)||\"none\"===rawPath)if(document.location.origin.includes(domain)){var cookieToSet=function(name,rawValue,rawPath){var domainValue=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",shouldEncodeValue=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],COOKIE_BREAKER=\";\";if(!shouldEncodeValue&&\"\".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER))return null;var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue,resultCookie=\"\".concat(name,\"=\").concat(value),path=function(rawPath){return\"/\"===rawPath?\"path=/\":\"\"}(rawPath);return path&&(resultCookie+=\"; \".concat(path)),domainValue&&(resultCookie+=\"; domain=\".concat(domainValue)),resultCookie}(name,validValue,path,domain);cookieToSet?(function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),document.cookie=cookieToSet):logMessage(source,\"Invalid cookie name or value\")}else logMessage(source,\"Cookie domain not matched by origin: '\".concat(domain,\"'\"));else logMessage(source,\"Invalid cookie path: '\".concat(path,\"'\"));else logMessage(source,\"Invalid cookie value: '\".concat(validValue,\"'\"))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -381,19 +381,19 @@ "ubo-set-cookie-reload.js", "ubo-set-cookie-reload" ], - "scriptlet": "function setCookieReload(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(\";\").some((function(cookieStr){var pos=cookieStr.indexOf(\"=\");if(-1===pos)return!1;var cookieName=cookieStr.slice(0,pos).trim(),cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue}))}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,name,value){var path=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"/\",domain=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(!isCookieSetWithValue(document.cookie,name,value)){var rawPath,validValue=function(value){if(!value)return null;var validValue,num;if(new Set([\"true\",\"t\",\"false\",\"f\",\"yes\",\"y\",\"no\",\"n\",\"ok\",\"on\",\"off\",\"accept\",\"accepted\",\"notaccepted\",\"reject\",\"rejected\",\"allow\",\"allowed\",\"disallow\",\"deny\",\"enable\",\"enabled\",\"disable\",\"disabled\",\"necessary\",\"required\"]).has(value.toLowerCase()))validValue=value;else{if(!/^\\d+$/.test(value))return null;if(num=validValue=parseFloat(value),(Number.isNaN||window.isNaN)(num))return null;if(Math.abs(validValue)<0||Math.abs(validValue)>32767)return null}return validValue}(value);if(null!==validValue)if(\"/\"===(rawPath=path)||\"none\"===rawPath)if(document.location.origin.includes(domain)){var cookieToSet=function(name,rawValue,rawPath){var domainValue=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",shouldEncodeValue=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],COOKIE_BREAKER=\";\";if(!shouldEncodeValue&&\"\".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER))return null;var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue,resultCookie=\"\".concat(name,\"=\").concat(value),path=function(rawPath){return\"/\"===rawPath?\"path=/\":\"\"}(rawPath);return path&&(resultCookie+=\"; \".concat(path)),domainValue&&(resultCookie+=\"; domain=\".concat(domainValue)),resultCookie}(name,validValue,path,domain);cookieToSet?(document.cookie=cookieToSet,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),isCookieSetWithValue(document.cookie,name,value)&&window.location.reload()):logMessage(source,\"Invalid cookie name or value\")}else logMessage(source,\"Cookie domain not matched by origin: '\".concat(domain,\"'\"));else logMessage(source,\"Invalid cookie path: '\".concat(path,\"'\"));else logMessage(source,\"Invalid cookie value: '\".concat(value,\"'\"))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function setCookieReload(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(\";\").some((function(cookieStr){var pos=cookieStr.indexOf(\"=\");if(-1===pos)return!1;var cookieName=cookieStr.slice(0,pos).trim(),cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue}))}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,name,value){var path=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"/\",domain=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(!isCookieSetWithValue(document.cookie,name,value)){var rawPath,validValue=function(value){if(!value)return null;var validValue,num;if(new Set([\"true\",\"t\",\"false\",\"f\",\"yes\",\"y\",\"no\",\"n\",\"ok\",\"on\",\"off\",\"accept\",\"accepted\",\"notaccepted\",\"reject\",\"rejected\",\"allow\",\"allowed\",\"disallow\",\"deny\",\"enable\",\"enabled\",\"disable\",\"disabled\",\"necessary\",\"required\"]).has(value.toLowerCase()))validValue=value;else{if(!/^\\d+$/.test(value))return null;if(num=validValue=parseFloat(value),(Number.isNaN||window.isNaN)(num))return null;if(Math.abs(validValue)<0||Math.abs(validValue)>32767)return null}return validValue}(value);if(null!==validValue)if(\"/\"===(rawPath=path)||\"none\"===rawPath)if(document.location.origin.includes(domain)){var cookieToSet=function(name,rawValue,rawPath){var domainValue=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",shouldEncodeValue=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],COOKIE_BREAKER=\";\";if(!shouldEncodeValue&&\"\".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER))return null;var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue,resultCookie=\"\".concat(name,\"=\").concat(value),path=function(rawPath){return\"/\"===rawPath?\"path=/\":\"\"}(rawPath);return path&&(resultCookie+=\"; \".concat(path)),domainValue&&(resultCookie+=\"; domain=\".concat(domainValue)),resultCookie}(name,validValue,path,domain);cookieToSet?(document.cookie=cookieToSet,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),isCookieSetWithValue(document.cookie,name,value)&&window.location.reload()):logMessage(source,\"Invalid cookie name or value\")}else logMessage(source,\"Cookie domain not matched by origin: '\".concat(domain,\"'\"));else logMessage(source,\"Invalid cookie path: '\".concat(path,\"'\"));else logMessage(source,\"Invalid cookie value: '\".concat(value,\"'\"))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "hide-in-shadow-dom" ], - "scriptlet": "function hideInShadowDom(source,args){function findHostElements(rootElement){var hosts=[];rootElement&&rootElement.querySelectorAll(\"*\").forEach((function(el){el.shadowRoot&&hosts.push(el)}));return hosts}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector,baseSelector){if(Element.prototype.attachShadow){var hideHandler=function(){for(var hostElements=baseSelector?document.querySelectorAll(baseSelector):findHostElements(document.documentElement),_loop=function(){var isHidden=!1,_pierceShadowDom=function(selector,hostElements){var targets=[],innerHostsAcc=[];hostElements.forEach((function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot,shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren)),innerHostsAcc.push(findHostElements(shadowRootElem))}));var innerHosts=function(input){var stack=[];input.forEach((function(el){return stack.push(el)}));for(var res=[];stack.length;){var next=stack.pop();Array.isArray(next)?next.forEach((function(el){return stack.push(el)})):res.push(next)}return res.reverse()}(innerHostsAcc);return{targets:targets,innerHosts:innerHosts}}(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach((function(targetEl){targetEl.style.cssText=\"display:none!important;\",isHidden=!0})),isHidden&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),hostElements=innerHosts};0!==hostElements.length;)_loop()};hideHandler(),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}(hideHandler,!0)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function hideInShadowDom(source,args){function findHostElements(rootElement){var hosts=[];rootElement&&rootElement.querySelectorAll(\"*\").forEach((function(el){el.shadowRoot&&hosts.push(el)}));return hosts}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector,baseSelector){if(Element.prototype.attachShadow){var hideHandler=function(){for(var hostElements=baseSelector?document.querySelectorAll(baseSelector):findHostElements(document.documentElement),_loop=function(){var isHidden=!1,_pierceShadowDom=function(selector,hostElements){var targets=[],innerHostsAcc=[];hostElements.forEach((function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot,shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren)),innerHostsAcc.push(findHostElements(shadowRootElem))}));var innerHosts=function(input){var stack=[];input.forEach((function(el){return stack.push(el)}));for(var res=[];stack.length;){var next=stack.pop();Array.isArray(next)?next.forEach((function(el){return stack.push(el)})):res.push(next)}return res.reverse()}(innerHostsAcc);return{targets:targets,innerHosts:innerHosts}}(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach((function(targetEl){targetEl.style.cssText=\"display:none!important;\",isHidden=!0})),isHidden&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),hostElements=innerHosts};0!==hostElements.length;)_loop()};hideHandler(),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}(hideHandler,!0)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "remove-in-shadow-dom" ], - "scriptlet": "function removeInShadowDom(source,args){function findHostElements(rootElement){var hosts=[];rootElement&&rootElement.querySelectorAll(\"*\").forEach((function(el){el.shadowRoot&&hosts.push(el)}));return hosts}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector,baseSelector){if(Element.prototype.attachShadow){var removeHandler=function(){for(var hostElements=baseSelector?document.querySelectorAll(baseSelector):findHostElements(document.documentElement),_loop=function(){var isRemoved=!1,_pierceShadowDom=function(selector,hostElements){var targets=[],innerHostsAcc=[];hostElements.forEach((function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot,shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren)),innerHostsAcc.push(findHostElements(shadowRootElem))}));var innerHosts=function(input){var stack=[];input.forEach((function(el){return stack.push(el)}));for(var res=[];stack.length;){var next=stack.pop();Array.isArray(next)?next.forEach((function(el){return stack.push(el)})):res.push(next)}return res.reverse()}(innerHostsAcc);return{targets:targets,innerHosts:innerHosts}}(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach((function(targetEl){targetEl.remove(),isRemoved=!0})),isRemoved&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),hostElements=innerHosts};0!==hostElements.length;)_loop()};removeHandler(),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}(removeHandler,!0)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function removeInShadowDom(source,args){function findHostElements(rootElement){var hosts=[];rootElement&&rootElement.querySelectorAll(\"*\").forEach((function(el){el.shadowRoot&&hosts.push(el)}));return hosts}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector,baseSelector){if(Element.prototype.attachShadow){var removeHandler=function(){for(var hostElements=baseSelector?document.querySelectorAll(baseSelector):findHostElements(document.documentElement),_loop=function(){var isRemoved=!1,_pierceShadowDom=function(selector,hostElements){var targets=[],innerHostsAcc=[];hostElements.forEach((function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot,shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren)),innerHostsAcc.push(findHostElements(shadowRootElem))}));var innerHosts=function(input){var stack=[];input.forEach((function(el){return stack.push(el)}));for(var res=[];stack.length;){var next=stack.pop();Array.isArray(next)?next.forEach((function(el){return stack.push(el)})):res.push(next)}return res.reverse()}(innerHostsAcc);return{targets:targets,innerHosts:innerHosts}}(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach((function(targetEl){targetEl.remove(),isRemoved=!0})),isRemoved&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),hostElements=innerHosts};0!==hostElements.length;)_loop()};removeHandler(),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}(removeHandler,!0)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -402,7 +402,7 @@ "ubo-no-fetch-if.js", "ubo-no-fetch-if" ], - "scriptlet": "function preventFetch(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function noopPromiseResolve(){var responseUrl=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",responseType=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"basic\";if(\"undefined\"!=typeof Response){var response=new Response(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"{}\",{status:200,statusText:\"OK\"});return\"opaque\"===responseType?Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:\"\"},url:{value:\"\"},type:{value:responseType}}):Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}}),Promise.resolve(response)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToMatch){var responseBody=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"emptyObj\",responseType=arguments.length>3?arguments[3]:void 0;if(\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response){var strResponseBody,nativeRequestClone=Request.prototype.clone;if(\"\"===responseBody||\"emptyObj\"===responseBody)strResponseBody=\"{}\";else if(\"emptyArr\"===responseBody)strResponseBody=\"[]\";else{if(\"emptyStr\"!==responseBody)return void logMessage(source,\"Invalid responseBody parameter: '\".concat(responseBody,\"'\"));strResponseBody=\"\"}if(void 0===responseType||function(responseType){return[\"basic\",\"cors\",\"opaque\"].includes(responseType)}(responseType)){var fetchHandler={apply:async function(target,thisArg,args){var shouldPrevent,fetchData=function(args,nativeRequestClone){var fetchUrl,fetchInit,request,entries,fetchPropsObj={},resource=args[0];if(resource instanceof Request){var realData=nativeRequestClone.call(resource),requestData=(request=realData,entries=[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].map((function(key){return[key,request[key]]})),Object.fromEntries(entries));fetchUrl=requestData.url,fetchInit=requestData}else fetchUrl=resource,fetchInit=args[1];return fetchPropsObj.url=fetchUrl,fetchInit instanceof Object&&Object.keys(fetchInit).forEach((function(prop){fetchPropsObj[prop]=fetchInit[prop]})),fetchPropsObj}(args,nativeRequestClone);if(void 0===propsToMatch)return logMessage(source,\"fetch( \".concat(objectToString(fetchData),\" )\"),!0),hit(source),Reflect.apply(target,thisArg,args);if(shouldPrevent=function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,fetchData),shouldPrevent){var finalResponseType;hit(source);try{finalResponseType=responseType||function(request){try{var mode=request.mode;if(void 0===mode||\"cors\"===mode||\"no-cors\"===mode)return new URL(request.url).origin===document.location.origin?\"basic\":\"no-cors\"===mode?\"opaque\":\"cors\"}catch(error){logMessage(source,\"Could not determine response type: \".concat(error))}}(fetchData);var origResponse=await Reflect.apply(target,thisArg,args);return origResponse.ok?function(origResponse){var _origResponse$headers,replacement=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{body:\"{}\"},headers={};null==origResponse||null===(_origResponse$headers=origResponse.headers)||void 0===_origResponse$headers||_origResponse$headers.forEach((function(value,key){headers[key]=value}));var modifiedResponse=new Response(replacement.body,{status:origResponse.status,statusText:origResponse.statusText,headers:headers});return Object.defineProperties(modifiedResponse,{url:{value:origResponse.url},type:{value:replacement.type||origResponse.type}}),modifiedResponse}(origResponse,{body:strResponseBody,type:finalResponseType}):noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType)}catch(ex){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType)}}return Reflect.apply(target,thisArg,args)}};fetch=new Proxy(fetch,fetchHandler)}else logMessage(source,\"Invalid responseType parameter: '\".concat(responseType,\"'\"))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventFetch(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function noopPromiseResolve(){var responseUrl=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",responseType=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"basic\";if(\"undefined\"!=typeof Response){var response=new Response(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"{}\",{status:200,statusText:\"OK\"});return\"opaque\"===responseType?Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:\"\"},url:{value:\"\"},type:{value:responseType}}):Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}}),Promise.resolve(response)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToMatch){var responseBody=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"emptyObj\",responseType=arguments.length>3?arguments[3]:void 0;if(\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response){var strResponseBody,nativeRequestClone=Request.prototype.clone;if(\"\"===responseBody||\"emptyObj\"===responseBody)strResponseBody=\"{}\";else if(\"emptyArr\"===responseBody)strResponseBody=\"[]\";else{if(\"emptyStr\"!==responseBody)return void logMessage(source,\"Invalid responseBody parameter: '\".concat(responseBody,\"'\"));strResponseBody=\"\"}if(void 0===responseType||function(responseType){return[\"basic\",\"cors\",\"opaque\"].includes(responseType)}(responseType)){var fetchHandler={apply:async function(target,thisArg,args){var shouldPrevent,fetchData=function(args,nativeRequestClone){var fetchUrl,fetchInit,request,entries,fetchPropsObj={},resource=args[0];if(resource instanceof Request){var realData=nativeRequestClone.call(resource),requestData=(request=realData,entries=[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].map((function(key){return[key,request[key]]})),Object.fromEntries(entries));fetchUrl=requestData.url,fetchInit=requestData}else fetchUrl=resource,fetchInit=args[1];return fetchPropsObj.url=fetchUrl,fetchInit instanceof Object&&Object.keys(fetchInit).forEach((function(prop){fetchPropsObj[prop]=fetchInit[prop]})),fetchPropsObj}(args,nativeRequestClone);if(void 0===propsToMatch)return logMessage(source,\"fetch( \".concat(objectToString(fetchData),\" )\"),!0),hit(source),Reflect.apply(target,thisArg,args);if(shouldPrevent=function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,fetchData),shouldPrevent){var finalResponseType;hit(source);try{finalResponseType=responseType||function(request){try{var mode=request.mode;if(void 0===mode||\"cors\"===mode||\"no-cors\"===mode)return new URL(request.url).origin===document.location.origin?\"basic\":\"no-cors\"===mode?\"opaque\":\"cors\"}catch(error){logMessage(source,\"Could not determine response type: \".concat(error))}}(fetchData);var origResponse=await Reflect.apply(target,thisArg,args);return origResponse.ok?function(origResponse){var _origResponse$headers,replacement=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{body:\"{}\"},headers={};null==origResponse||null===(_origResponse$headers=origResponse.headers)||void 0===_origResponse$headers||_origResponse$headers.forEach((function(value,key){headers[key]=value}));var modifiedResponse=new Response(replacement.body,{status:origResponse.status,statusText:origResponse.statusText,headers:headers});return Object.defineProperties(modifiedResponse,{url:{value:origResponse.url},type:{value:replacement.type||origResponse.type}}),modifiedResponse}(origResponse,{body:strResponseBody,type:finalResponseType}):noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType)}catch(ex){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType)}}return Reflect.apply(target,thisArg,args)}};fetch=new Proxy(fetch,fetchHandler)}else logMessage(source,\"Invalid responseType parameter: '\".concat(responseType,\"'\"))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -411,7 +411,7 @@ "ubo-set-local-storage-item.js", "ubo-set-local-storage-item" ], - "scriptlet": "function setLocalStorageItem(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,key,value){if(void 0!==key){var validValue;try{validValue=function(value){if(\"string\"!=typeof value)throw new Error(\"Invalid value\");var validValue,num;if(new Set([\"undefined\",\"false\",\"true\",\"null\",\"\",\"yes\",\"no\",\"on\",\"off\"]).has(value.toLowerCase()))validValue=value;else if(\"emptyArr\"===value)validValue=\"[]\";else if(\"emptyObj\"===value)validValue=\"{}\";else if(/^\\d+$/.test(value)){if(num=validValue=parseFloat(value),(Number.isNaN||window.isNaN)(num))throw new Error(\"Invalid value\");if(Math.abs(validValue)>32767)throw new Error(\"Invalid value\")}else{if(\"$remove$\"!==value)throw new Error(\"Invalid value\");validValue=\"$remove$\"}return validValue}(value)}catch(_unused){return void logMessage(source,\"Invalid storage item value: '\".concat(value,\"'\"))}var localStorage=window.localStorage;\"$remove$\"===validValue?function(source,storage,key){try{if(key.startsWith(\"/\")&&(key.endsWith(\"/\")||key.endsWith(\"/i\"))&&function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(key)){var regExpKey=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(key);Object.keys(storage).forEach((function(storageKey){regExpKey.test(storageKey)&&storage.removeItem(storageKey)}))}else storage.removeItem(key)}catch(e){logMessage(source,\"Unable to remove storage item due to: \".concat(e.message))}}(source,localStorage,key):function(source,storage,key,value){try{storage.setItem(key,value)}catch(e){logMessage(source,\"Unable to set sessionStorage item due to: \".concat(e.message))}}(source,localStorage,key,validValue),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else logMessage(source,\"Item key should be specified.\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function setLocalStorageItem(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,key,value){if(void 0!==key){var validValue;try{validValue=function(value){if(\"string\"!=typeof value)throw new Error(\"Invalid value\");var validValue,num;if(new Set([\"undefined\",\"false\",\"true\",\"null\",\"\",\"yes\",\"no\",\"on\",\"off\"]).has(value.toLowerCase()))validValue=value;else if(\"emptyArr\"===value)validValue=\"[]\";else if(\"emptyObj\"===value)validValue=\"{}\";else if(/^\\d+$/.test(value)){if(num=validValue=parseFloat(value),(Number.isNaN||window.isNaN)(num))throw new Error(\"Invalid value\");if(Math.abs(validValue)>32767)throw new Error(\"Invalid value\")}else{if(\"$remove$\"!==value)throw new Error(\"Invalid value\");validValue=\"$remove$\"}return validValue}(value)}catch(_unused){return void logMessage(source,\"Invalid storage item value: '\".concat(value,\"'\"))}var localStorage=window.localStorage;\"$remove$\"===validValue?function(source,storage,key){try{if(key.startsWith(\"/\")&&(key.endsWith(\"/\")||key.endsWith(\"/i\"))&&function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(key)){var regExpKey=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(key);Object.keys(storage).forEach((function(storageKey){regExpKey.test(storageKey)&&storage.removeItem(storageKey)}))}else storage.removeItem(key)}catch(e){logMessage(source,\"Unable to remove storage item due to: \".concat(e.message))}}(source,localStorage,key):function(source,storage,key,value){try{storage.setItem(key,value)}catch(e){logMessage(source,\"Unable to set sessionStorage item due to: \".concat(e.message))}}(source,localStorage,key,validValue),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else logMessage(source,\"Item key should be specified.\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -420,7 +420,7 @@ "ubo-set-session-storage-item.js", "ubo-set-session-storage-item" ], - "scriptlet": "function setSessionStorageItem(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,key,value){if(void 0!==key){var validValue;try{validValue=function(value){if(\"string\"!=typeof value)throw new Error(\"Invalid value\");var validValue,num;if(new Set([\"undefined\",\"false\",\"true\",\"null\",\"\",\"yes\",\"no\",\"on\",\"off\"]).has(value.toLowerCase()))validValue=value;else if(\"emptyArr\"===value)validValue=\"[]\";else if(\"emptyObj\"===value)validValue=\"{}\";else if(/^\\d+$/.test(value)){if(num=validValue=parseFloat(value),(Number.isNaN||window.isNaN)(num))throw new Error(\"Invalid value\");if(Math.abs(validValue)>32767)throw new Error(\"Invalid value\")}else{if(\"$remove$\"!==value)throw new Error(\"Invalid value\");validValue=\"$remove$\"}return validValue}(value)}catch(_unused){return void logMessage(source,\"Invalid storage item value: '\".concat(value,\"'\"))}var sessionStorage=window.sessionStorage;\"$remove$\"===validValue?function(source,storage,key){try{if(key.startsWith(\"/\")&&(key.endsWith(\"/\")||key.endsWith(\"/i\"))&&function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(key)){var regExpKey=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(key);Object.keys(storage).forEach((function(storageKey){regExpKey.test(storageKey)&&storage.removeItem(storageKey)}))}else storage.removeItem(key)}catch(e){logMessage(source,\"Unable to remove storage item due to: \".concat(e.message))}}(source,sessionStorage,key):function(source,storage,key,value){try{storage.setItem(key,value)}catch(e){logMessage(source,\"Unable to set sessionStorage item due to: \".concat(e.message))}}(source,sessionStorage,key,validValue),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else logMessage(source,\"Item key should be specified.\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function setSessionStorageItem(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,key,value){if(void 0!==key){var validValue;try{validValue=function(value){if(\"string\"!=typeof value)throw new Error(\"Invalid value\");var validValue,num;if(new Set([\"undefined\",\"false\",\"true\",\"null\",\"\",\"yes\",\"no\",\"on\",\"off\"]).has(value.toLowerCase()))validValue=value;else if(\"emptyArr\"===value)validValue=\"[]\";else if(\"emptyObj\"===value)validValue=\"{}\";else if(/^\\d+$/.test(value)){if(num=validValue=parseFloat(value),(Number.isNaN||window.isNaN)(num))throw new Error(\"Invalid value\");if(Math.abs(validValue)>32767)throw new Error(\"Invalid value\")}else{if(\"$remove$\"!==value)throw new Error(\"Invalid value\");validValue=\"$remove$\"}return validValue}(value)}catch(_unused){return void logMessage(source,\"Invalid storage item value: '\".concat(value,\"'\"))}var sessionStorage=window.sessionStorage;\"$remove$\"===validValue?function(source,storage,key){try{if(key.startsWith(\"/\")&&(key.endsWith(\"/\")||key.endsWith(\"/i\"))&&function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(key)){var regExpKey=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(key);Object.keys(storage).forEach((function(storageKey){regExpKey.test(storageKey)&&storage.removeItem(storageKey)}))}else storage.removeItem(key)}catch(e){logMessage(source,\"Unable to remove storage item due to: \".concat(e.message))}}(source,sessionStorage,key):function(source,storage,key,value){try{storage.setItem(key,value)}catch(e){logMessage(source,\"Unable to set sessionStorage item due to: \".concat(e.message))}}(source,sessionStorage,key,validValue),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else logMessage(source,\"Item key should be specified.\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -433,13 +433,13 @@ "ubo-aost", "abp-abort-on-stack-trace" ], - "scriptlet": "function abortOnStackTrace(source,args){function randomId(){return Math.random().toString(36).slice(2,9)}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackSteps=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})),stackLines=stackSteps.map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index0&&void 0!==arguments[0]?arguments[0]:\"\",DEFAULT_VALUE=\".?\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(DEFAULT_VALUE);var delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(regExpStr=regExpPart,flagsStr=flagsPart,regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");var regExpStr,flagsStr;if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){return new RegExp((flags?regExpPart:input).slice(1,-1),flags)}var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(stackMatch),refinedStackTrace=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).join(\"\\n\");return function(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,\"test\"),nativeRegexTest=null==descriptor?void 0:descriptor.value;if(descriptor&&\"function\"==typeof descriptor.value)return nativeRegexTest;throw new Error(\"RegExp.prototype.test is not a function\")}().call(stackRegexp,refinedStackTrace)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,stack){if(property&&stack){var rid=randomId(),abort=function(){throw function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),new ReferenceError(rid)};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;if(chain)Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}});else if(stack.match(/^(inlineScript|injectedScript)$/)||function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(stack)){var descriptorWrapper=Object.assign({isAbortingSuspended:!1,isolateCallback(cb){this.isAbortingSuspended=!0;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];var result=cb(...args);return this.isAbortingSuspended=!1,result}catch(_unused){var rid=randomId();throw this.isAbortingSuspended=!1,new ReferenceError(rid)}}},{value:base[prop],get(){return!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,(new Error).stack)&&abort(),this.value},set(newValue){!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,(new Error).stack)&&abort(),this.value=newValue}});!function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:()=>descriptorWrapper.get.call(descriptorWrapper),set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue)}})}else!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"Invalid parameter: \".concat(stack))}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function abortOnStackTrace(source,args){function randomId(){return Math.random().toString(36).slice(2,9)}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackSteps=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})),stackLines=stackSteps.map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];var result=cb(...args);return this.isAbortingSuspended=!1,result}catch(_unused){var rid=randomId();throw this.isAbortingSuspended=!1,new ReferenceError(rid)}}},{value:base[prop],get(){return!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,(new Error).stack)&&abort(),this.value},set(newValue){!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,(new Error).stack)&&abort(),this.value=newValue}});!function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:()=>descriptorWrapper.get.call(descriptorWrapper),set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue)}})}else!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,\"Invalid parameter: \".concat(stack))}(window,property),window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid).bind()}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "log-on-stack-trace" ], - "scriptlet": "function logOnStacktrace(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var refineStackTrace=function(stackString){var logInfoArray=stackString.split(\"\\n\").slice(2).map((function(line){return line.replace(/ {4}at /,\"\")})).map((function(line){var funcName,funcFullPath,reg=/\\(([^\\)]+)\\)/,regFirefox=/(.*?@)(\\S+)(:\\d+):\\d+\\)?$/;return line.match(reg)?(funcName=line.split(\" \").slice(0,-1).join(\" \"),funcFullPath=line.match(reg)[1]):line.match(regFirefox)?(funcName=line.split(\"@\").slice(0,-1).join(\" \"),funcFullPath=line.match(regFirefox)[2]):(funcName=\"function name is not available\",funcFullPath=line),[funcName,funcFullPath]})),logInfoObject={};return logInfoArray.forEach((function(pair){logInfoObject[pair[0]]=pair[1]})),logInfoObject};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;if(chain)Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}});else{var value=base[prop];!function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:()=>(hit(source),logMessage(source,\"Get \".concat(prop),!0),console.table(refineStackTrace((new Error).stack)),value),set(newValue){hit(source),logMessage(source,\"Set \".concat(prop),!0),console.table(refineStackTrace((new Error).stack)),value=newValue}})}}(window,property)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function logOnStacktrace(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property){if(property){var refineStackTrace=function(stackString){var logInfoArray=stackString.split(\"\\n\").slice(2).map((function(line){return line.replace(/ {4}at /,\"\")})).map((function(line){var funcName,funcFullPath,reg=/\\(([^\\)]+)\\)/,regFirefox=/(.*?@)(\\S+)(:\\d+):\\d+\\)?$/;return line.match(reg)?(funcName=line.split(\" \").slice(0,-1).join(\" \"),funcFullPath=line.match(reg)[1]):line.match(regFirefox)?(funcName=line.split(\"@\").slice(0,-1).join(\" \"),funcFullPath=line.match(regFirefox)[2]):(funcName=\"function name is not available\",funcFullPath=line),[funcName,funcFullPath]})),logInfoObject={};return logInfoArray.forEach((function(pair){logInfoObject[pair[0]]=pair[1]})),logInfoObject};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain;if(chain)Object.defineProperty(owner,prop,{get:function(){return base},set:function(a){base=a,a instanceof Object&&setChainPropAccess(a,chain)}});else{var value=base[prop];!function(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable)return!1;Object.defineProperty(object,property,descriptor)}(base,prop,{get:()=>(hit(source),logMessage(source,\"Get \".concat(prop),!0),console.table(refineStackTrace((new Error).stack)),value),set(newValue){hit(source),logMessage(source,\"Set \".concat(prop),!0),console.table(refineStackTrace((new Error).stack)),value=newValue}})}}(window,property)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -448,7 +448,7 @@ "ubo-no-xhr-if.js", "ubo-no-xhr-if" ], - "scriptlet": "function preventXHR(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getNumberFromString(rawString){var num,parsedDelay=parseInt(rawString,10);return num=parsedDelay,(Number.isNaN||window.isNaN)(num)?null:parsedDelay}function nativeIsFinite(num){return(Number.isFinite||window.isFinite)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToMatch,customResponseText){if(\"undefined\"!=typeof Proxy){var xhrData,nativeOpen=window.XMLHttpRequest.prototype.open,nativeSend=window.XMLHttpRequest.prototype.send,nativeGetResponseHeader=window.XMLHttpRequest.prototype.getResponseHeader,nativeGetAllResponseHeaders=window.XMLHttpRequest.prototype.getAllResponseHeaders,modifiedResponse=\"\",modifiedResponseText=\"\",openHandler={apply:function(target,thisArg,args){if(xhrData=getXhrData.apply(null,args),void 0===propsToMatch?(logMessage(source,\"xhr( \".concat(objectToString(xhrData),\" )\"),!0),hit(source)):function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,xhrData)&&(thisArg.shouldBePrevented=!0,thisArg.xhrData=xhrData),thisArg.shouldBePrevented){thisArg.collectedHeaders=[];var setRequestHeaderHandler={apply:function(target,thisArg,args){return thisArg.collectedHeaders.push(args),Reflect.apply(target,thisArg,args)}};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler)}return Reflect.apply(target,thisArg,args)}},sendHandler={apply:function(target,thisArg,args){if(!thisArg.shouldBePrevented)return Reflect.apply(target,thisArg,args);if(\"blob\"===thisArg.responseType&&(modifiedResponse=new Blob),\"arraybuffer\"===thisArg.responseType&&(modifiedResponse=new ArrayBuffer),customResponseText){var randomText=function(customResponseText){var customResponse=customResponseText;if(\"true\"===customResponse)return Math.random().toString(36).slice(-10);if(customResponse=customResponse.replace(\"length:\",\"\"),!/^\\d+-\\d+$/.test(customResponse))return null;var min,max,rangeMin=getNumberFromString(customResponse.split(\"-\")[0]),rangeMax=getNumberFromString(customResponse.split(\"-\")[1]);if(!nativeIsFinite(rangeMin)||!nativeIsFinite(rangeMax))return null;if(rangeMin>rangeMax){var temp=rangeMin;rangeMin=rangeMax,rangeMax=temp}return rangeMax>5e5?null:function(length){for(var result=\"\",characters=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+=~\",charactersLength=characters.length,i=0;i2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getNumberFromString(rawString){var num,parsedDelay=parseInt(rawString,10);return num=parsedDelay,(Number.isNaN||window.isNaN)(num)?null:parsedDelay}function nativeIsFinite(num){return(Number.isFinite||window.isFinite)(num)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToMatch,customResponseText){if(\"undefined\"!=typeof Proxy){var xhrData,nativeOpen=window.XMLHttpRequest.prototype.open,nativeSend=window.XMLHttpRequest.prototype.send,nativeGetResponseHeader=window.XMLHttpRequest.prototype.getResponseHeader,nativeGetAllResponseHeaders=window.XMLHttpRequest.prototype.getAllResponseHeaders,modifiedResponse=\"\",modifiedResponseText=\"\",openHandler={apply:function(target,thisArg,args){if(xhrData=getXhrData.apply(null,args),void 0===propsToMatch?(logMessage(source,\"xhr( \".concat(objectToString(xhrData),\" )\"),!0),hit(source)):function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,xhrData)&&(thisArg.shouldBePrevented=!0,thisArg.xhrData=xhrData),thisArg.shouldBePrevented){thisArg.collectedHeaders=[];var setRequestHeaderHandler={apply:function(target,thisArg,args){return thisArg.collectedHeaders.push(args),Reflect.apply(target,thisArg,args)}};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler)}return Reflect.apply(target,thisArg,args)}},sendHandler={apply:function(target,thisArg,args){if(!thisArg.shouldBePrevented)return Reflect.apply(target,thisArg,args);if(\"blob\"===thisArg.responseType&&(modifiedResponse=new Blob),\"arraybuffer\"===thisArg.responseType&&(modifiedResponse=new ArrayBuffer),customResponseText){var randomText=function(customResponseText){var customResponse=customResponseText;if(\"true\"===customResponse)return Math.random().toString(36).slice(-10);if(customResponse=customResponse.replace(\"length:\",\"\"),!/^\\d+-\\d+$/.test(customResponse))return null;var min,max,rangeMin=getNumberFromString(customResponse.split(\"-\")[0]),rangeMax=getNumberFromString(customResponse.split(\"-\")[1]);if(!nativeIsFinite(rangeMin)||!nativeIsFinite(rangeMax))return null;if(rangeMin>rangeMax){var temp=rangeMin;rangeMin=rangeMax,rangeMax=temp}return rangeMax>5e5?null:function(length){for(var result=\"\",characters=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+=~\",charactersLength=characters.length,i=0;i2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var extCall,path=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\";\"function\"==typeof window.close?function(){if(\"\"===path)return!0;var pathRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(path),currentPath=\"\".concat(window.location.pathname).concat(window.location.search);return pathRegexp.test(currentPath)}()&&(function(){try{!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),window.close()}catch(e){logMessage(source,e)}}(),navigator.userAgent.includes(\"Chrome\")&&(extCall=function(){dispatchEvent(new Event(\"adguard:scriptlet-close-window\"))},window.addEventListener(\"adguard:subscribed-to-close-window\",extCall,{once:!0}),setTimeout((function(){window.removeEventListener(\"adguard:subscribed-to-close-window\",extCall,{once:!0})}),5e3))):logMessage(source,\"window.close() is not a function so 'close-window' scriptlet is unavailable\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function forceWindowClose(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var extCall,path=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\";\"function\"==typeof window.close?function(){if(\"\"===path)return!0;var pathRegexp=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(path),currentPath=\"\".concat(window.location.pathname).concat(window.location.search);return pathRegexp.test(currentPath)}()&&(function(){try{!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),window.close()}catch(e){logMessage(source,e)}}(),navigator.userAgent.includes(\"Chrome\")&&(extCall=function(){dispatchEvent(new Event(\"adguard:scriptlet-close-window\"))},window.addEventListener(\"adguard:subscribed-to-close-window\",extCall,{once:!0}),setTimeout((function(){window.removeEventListener(\"adguard:subscribed-to-close-window\",extCall,{once:!0})}),5e3))):logMessage(source,\"window.close() is not a function so 'close-window' scriptlet is unavailable\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -473,25 +473,25 @@ "ubo-refresh-defuser.js", "ubo-refresh-defuser" ], - "scriptlet": "function preventRefresh(source,args){function getNumberFromString(rawString){var num,parsedDelay=parseInt(rawString,10);return num=parsedDelay,(Number.isNaN||window.isNaN)(num)?null:parsedDelay}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,delaySec){var getMetaElements=function(){var metaNodes=[];try{metaNodes=document.querySelectorAll('meta[http-equiv=\"refresh\" i][content]')}catch(e){try{metaNodes=document.querySelectorAll('meta[http-equiv=\"refresh\"][content]')}catch(e){!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,e)}}return Array.from(metaNodes)},stop=function(){var metaElements=getMetaElements();if(0!==metaElements.length){var secondsToRun=getNumberFromString(delaySec);null===secondsToRun&&(secondsToRun=function(metaElements){var delays=metaElements.map((function(meta){var contentString=meta.getAttribute(\"content\");if(0===contentString.length)return null;var limiterIndex=contentString.indexOf(\";\");return getNumberFromString(-1!==limiterIndex?contentString.substring(0,limiterIndex):contentString)})).filter((function(delay){return null!==delay}));return delays.length?delays.reduce((function(a,b){return Math.min(a,b)})):null}(metaElements)),null!==secondsToRun&&setTimeout((function(){window.stop(),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}),1e3*secondsToRun)}};\"loading\"===document.readyState?document.addEventListener(\"DOMContentLoaded\",stop,{once:!0}):stop()}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventRefresh(source,args){function getNumberFromString(rawString){var num,parsedDelay=parseInt(rawString,10);return num=parsedDelay,(Number.isNaN||window.isNaN)(num)?null:parsedDelay}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,delaySec){var getMetaElements=function(){var metaNodes=[];try{metaNodes=document.querySelectorAll('meta[http-equiv=\"refresh\" i][content]')}catch(e){try{metaNodes=document.querySelectorAll('meta[http-equiv=\"refresh\"][content]')}catch(e){!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,e)}}return Array.from(metaNodes)},stop=function(){var metaElements=getMetaElements();if(0!==metaElements.length){var secondsToRun=getNumberFromString(delaySec);null===secondsToRun&&(secondsToRun=function(metaElements){var delays=metaElements.map((function(meta){var contentString=meta.getAttribute(\"content\");if(0===contentString.length)return null;var limiterIndex=contentString.indexOf(\";\");return getNumberFromString(-1!==limiterIndex?contentString.substring(0,limiterIndex):contentString)})).filter((function(delay){return null!==delay}));return delays.length?delays.reduce((function(a,b){return Math.min(a,b)})):null}(metaElements)),null!==secondsToRun&&setTimeout((function(){window.stop(),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}),1e3*secondsToRun)}};\"loading\"===document.readyState?document.addEventListener(\"DOMContentLoaded\",stop,{once:!0}):stop()}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "prevent-element-src-loading" ], - "scriptlet": "function preventElementSrcLoading(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function safeGetDescriptor(obj,prop){var descriptor=Object.getOwnPropertyDescriptor(obj,prop);return descriptor&&descriptor.configurable?descriptor:null}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,tagName,match){if(\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Reflect){var instance,policy,srcMockData={script:\"data:text/javascript;base64,KCk9Pnt9\",img:\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\",iframe:\"data:text/html;base64, PGRpdj48L2Rpdj4=\",link:\"data:text/plain;base64,\"};if(\"script\"===tagName)instance=HTMLScriptElement;else if(\"img\"===tagName)instance=HTMLImageElement;else if(\"iframe\"===tagName)instance=HTMLIFrameElement;else{if(\"link\"!==tagName)return;instance=HTMLLinkElement}window.trustedTypes&&\"function\"==typeof window.trustedTypes.createPolicy&&(policy=window.trustedTypes.createPolicy(\"AGPolicy\",{createScriptURL:function(arg){return arg}}));var SOURCE_PROPERTY_NAME=\"link\"===tagName?\"href\":\"src\",searchRegexp=function(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(match),setMatchedAttribute=function(elem){return elem.setAttribute(source.name,\"matched\")},setAttributeHandler={apply:function(target,thisArg,args){if(!args[0]||!args[1])return Reflect.apply(target,thisArg,args);var nodeName=thisArg.nodeName.toLowerCase(),attrName=args[0].toLowerCase(),attrValue=args[1];return attrName===SOURCE_PROPERTY_NAME&&tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(attrValue)?(hit(source),setMatchedAttribute(thisArg),Reflect.apply(target,thisArg,[attrName,srcMockData[nodeName]])):Reflect.apply(target,thisArg,args)}};instance.prototype.setAttribute=new Proxy(Element.prototype.setAttribute,setAttributeHandler);var origSrcDescriptor=safeGetDescriptor(instance.prototype,SOURCE_PROPERTY_NAME);if(origSrcDescriptor){Object.defineProperty(instance.prototype,SOURCE_PROPERTY_NAME,{enumerable:!0,configurable:!0,get(){return origSrcDescriptor.get.call(this)},set(urlValue){var nodeName=this.nodeName.toLowerCase();if(tagName.toLowerCase()!==nodeName||!srcMockData[nodeName]||!searchRegexp.test(urlValue))return origSrcDescriptor.set.call(this,urlValue),!0;if(policy&&urlValue instanceof TrustedScriptURL){var trustedSrc=policy.createScriptURL(urlValue);return origSrcDescriptor.set.call(this,trustedSrc),void hit(source)}setMatchedAttribute(this),origSrcDescriptor.set.call(this,srcMockData[nodeName]),hit(source)}});var origOnerrorDescriptor=safeGetDescriptor(HTMLElement.prototype,\"onerror\");if(origOnerrorDescriptor){Object.defineProperty(HTMLElement.prototype,\"onerror\",{enumerable:!0,configurable:!0,get(){return origOnerrorDescriptor.get.call(this)},set(cb){return\"matched\"===this.getAttribute(source.name)?(origOnerrorDescriptor.set.call(this,noopFunc),!0):(origOnerrorDescriptor.set.call(this,cb),!0)}});var addEventListenerHandler={apply:function(target,thisArg,args){if(!args[0]||!args[1]||!thisArg)return Reflect.apply(target,thisArg,args);var eventName=args[0];return\"function\"==typeof thisArg.getAttribute&&\"matched\"===thisArg.getAttribute(source.name)&&\"error\"===eventName?Reflect.apply(target,thisArg,[eventName,noopFunc]):Reflect.apply(target,thisArg,args)}};EventTarget.prototype.addEventListener=new Proxy(EventTarget.prototype.addEventListener,addEventListenerHandler),function(tagName,src){window.addEventListener(\"error\",(function(event){event.target&&event.target.nodeName&&event.target.nodeName.toLowerCase()===tagName&&event.target.src&&src.test(event.target.src)&&(hit(source),\"function\"!=typeof event.target.onload?event.target.onerror=noopFunc:event.target.onerror=event.target.onload)}),!0)}(tagName,searchRegexp)}}}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function preventElementSrcLoading(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function safeGetDescriptor(obj,prop){var descriptor=Object.getOwnPropertyDescriptor(obj,prop);return descriptor&&descriptor.configurable?descriptor:null}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,tagName,match){if(\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Reflect){var instance,policy,srcMockData={script:\"data:text/javascript;base64,KCk9Pnt9\",img:\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\",iframe:\"data:text/html;base64, PGRpdj48L2Rpdj4=\",link:\"data:text/plain;base64,\"};if(\"script\"===tagName)instance=HTMLScriptElement;else if(\"img\"===tagName)instance=HTMLImageElement;else if(\"iframe\"===tagName)instance=HTMLIFrameElement;else{if(\"link\"!==tagName)return;instance=HTMLLinkElement}window.trustedTypes&&\"function\"==typeof window.trustedTypes.createPolicy&&(policy=window.trustedTypes.createPolicy(\"AGPolicy\",{createScriptURL:function(arg){return arg}}));var SOURCE_PROPERTY_NAME=\"link\"===tagName?\"href\":\"src\",searchRegexp=function(rawInput){var input=rawInput||\"\",FORWARD_SLASH=\"/\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(FORWARD_SLASH),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),isValidRegExpFlag=function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}},flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith(\"\\\\/\")&&isValidRegExpFlag(flagsStr)?flagsStr:\"\");if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}(match),setMatchedAttribute=function(elem){return elem.setAttribute(source.name,\"matched\")},setAttributeHandler={apply:function(target,thisArg,args){if(!args[0]||!args[1])return Reflect.apply(target,thisArg,args);var nodeName=thisArg.nodeName.toLowerCase(),attrName=args[0].toLowerCase(),attrValue=args[1];return attrName===SOURCE_PROPERTY_NAME&&tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(attrValue)?(hit(source),setMatchedAttribute(thisArg),Reflect.apply(target,thisArg,[attrName,srcMockData[nodeName]])):Reflect.apply(target,thisArg,args)}};instance.prototype.setAttribute=new Proxy(Element.prototype.setAttribute,setAttributeHandler);var origSrcDescriptor=safeGetDescriptor(instance.prototype,SOURCE_PROPERTY_NAME);if(origSrcDescriptor){Object.defineProperty(instance.prototype,SOURCE_PROPERTY_NAME,{enumerable:!0,configurable:!0,get(){return origSrcDescriptor.get.call(this)},set(urlValue){var nodeName=this.nodeName.toLowerCase();if(tagName.toLowerCase()!==nodeName||!srcMockData[nodeName]||!searchRegexp.test(urlValue))return origSrcDescriptor.set.call(this,urlValue),!0;if(policy&&urlValue instanceof TrustedScriptURL){var trustedSrc=policy.createScriptURL(urlValue);return origSrcDescriptor.set.call(this,trustedSrc),void hit(source)}setMatchedAttribute(this),origSrcDescriptor.set.call(this,srcMockData[nodeName]),hit(source)}});var origOnerrorDescriptor=safeGetDescriptor(HTMLElement.prototype,\"onerror\");if(origOnerrorDescriptor){Object.defineProperty(HTMLElement.prototype,\"onerror\",{enumerable:!0,configurable:!0,get(){return origOnerrorDescriptor.get.call(this)},set(cb){return\"matched\"===this.getAttribute(source.name)?(origOnerrorDescriptor.set.call(this,noopFunc),!0):(origOnerrorDescriptor.set.call(this,cb),!0)}});var addEventListenerHandler={apply:function(target,thisArg,args){if(!args[0]||!args[1]||!thisArg)return Reflect.apply(target,thisArg,args);var eventName=args[0];return\"function\"==typeof thisArg.getAttribute&&\"matched\"===thisArg.getAttribute(source.name)&&\"error\"===eventName?Reflect.apply(target,thisArg,[eventName,noopFunc]):Reflect.apply(target,thisArg,args)}};EventTarget.prototype.addEventListener=new Proxy(EventTarget.prototype.addEventListener,addEventListenerHandler),function(tagName,src){window.addEventListener(\"error\",(function(event){event.target&&event.target.nodeName&&event.target.nodeName.toLowerCase()===tagName&&event.target.src&&src.test(event.target.src)&&(hit(source),\"function\"!=typeof event.target.onload?event.target.onerror=noopFunc:event.target.onerror=event.target.onload)}),!0)}(tagName,searchRegexp)}}}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "no-topics" ], - "scriptlet": "function noTopics(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){Document instanceof Object!=0&&Object.prototype.hasOwnProperty.call(Document.prototype,\"browsingTopics\")&&Document.prototype.browsingTopics instanceof Function!=0&&(Document.prototype.browsingTopics=function(){return function(){var responseUrl=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",responseType=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"basic\";if(\"undefined\"!=typeof Response){var response=new Response(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"{}\",{status:200,statusText:\"OK\"});return\"opaque\"===responseType?Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:\"\"},url:{value:\"\"},type:{value:responseType}}):Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}}),Promise.resolve(response)}}(\"[]\")},function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function noTopics(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){Document instanceof Object!=0&&Object.prototype.hasOwnProperty.call(Document.prototype,\"browsingTopics\")&&Document.prototype.browsingTopics instanceof Function!=0&&(Document.prototype.browsingTopics=function(){return function(){var responseUrl=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",responseType=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"basic\";if(\"undefined\"!=typeof Response){var response=new Response(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"{}\",{status:200,statusText:\"OK\"});return\"opaque\"===responseType?Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:\"\"},url:{value:\"\"},type:{value:responseType}}):Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}}),Promise.resolve(response)}}(\"[]\")},function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "trusted-replace-xhr-response" ], - "scriptlet": "function trustedReplaceXhrResponse(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var pattern=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",replacement=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",propsToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";if(\"undefined\"!=typeof Proxy)if(\"\"!==pattern||\"\"===replacement){var xhrData,shouldLog=\"\"===pattern&&\"\"===replacement,nativeOpen=window.XMLHttpRequest.prototype.open,nativeSend=window.XMLHttpRequest.prototype.send,openHandler={apply:function(target,thisArg,args){if(xhrData=getXhrData.apply(null,args),shouldLog){var _message=\"xhr( \".concat(objectToString(xhrData),\" )\");return logMessage(source,_message,!0),hit(source),Reflect.apply(target,thisArg,args)}if(function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,xhrData)&&(thisArg.shouldBePrevented=!0,thisArg.headersReceived=!!thisArg.headersReceived),thisArg.shouldBePrevented&&!thisArg.headersReceived){thisArg.headersReceived=!0,thisArg.collectedHeaders=[];var setRequestHeaderHandler={apply:function(target,thisArg,args){return thisArg.collectedHeaders.push(args),Reflect.apply(target,thisArg,args)}};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler)}return Reflect.apply(target,thisArg,args)}},sendHandler={apply:function(target,thisArg,args){if(!thisArg.shouldBePrevented)return Reflect.apply(target,thisArg,args);var forgedRequest=new XMLHttpRequest;forgedRequest.addEventListener(\"readystatechange\",(function(){if(4===forgedRequest.readyState){var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText,content=responseText||response;if(\"string\"==typeof content){var patternRegexp=\"*\"===pattern?/(\\n|.)*/:toRegExp(pattern),modifiedContent=content.replace(patternRegexp,replacement);Object.defineProperties(thisArg,{readyState:{value:readyState,writable:!1},responseURL:{value:responseURL,writable:!1},responseXML:{value:responseXML,writable:!1},status:{value:status,writable:!1},statusText:{value:statusText,writable:!1},response:{value:modifiedContent,writable:!1},responseText:{value:modifiedContent,writable:!1}}),setTimeout((function(){var stateEvent=new Event(\"readystatechange\");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event(\"load\");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event(\"loadend\");thisArg.dispatchEvent(loadEndEvent)}),1),hit(source)}}})),nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]),thisArg.collectedHeaders.forEach((function(header){var name=header[0],value=header[1];forgedRequest.setRequestHeader(name,value)})),thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args)}catch(_unused){return Reflect.apply(target,thisArg,args)}}};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler),XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler)}else logMessage(source,\"Pattern argument should not be empty string.\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedReplaceXhrResponse(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var pattern=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",replacement=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",propsToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";if(\"undefined\"!=typeof Proxy)if(\"\"!==pattern||\"\"===replacement){var xhrData,shouldLog=\"\"===pattern&&\"\"===replacement,nativeOpen=window.XMLHttpRequest.prototype.open,nativeSend=window.XMLHttpRequest.prototype.send,openHandler={apply:function(target,thisArg,args){if(xhrData=getXhrData.apply(null,args),shouldLog){var _message=\"xhr( \".concat(objectToString(xhrData),\" )\");return logMessage(source,_message,!0),hit(source),Reflect.apply(target,thisArg,args)}if(function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,xhrData)&&(thisArg.shouldBePrevented=!0,thisArg.headersReceived=!!thisArg.headersReceived),thisArg.shouldBePrevented&&!thisArg.headersReceived){thisArg.headersReceived=!0,thisArg.collectedHeaders=[];var setRequestHeaderHandler={apply:function(target,thisArg,args){return thisArg.collectedHeaders.push(args),Reflect.apply(target,thisArg,args)}};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler)}return Reflect.apply(target,thisArg,args)}},sendHandler={apply:function(target,thisArg,args){if(!thisArg.shouldBePrevented)return Reflect.apply(target,thisArg,args);var forgedRequest=new XMLHttpRequest;forgedRequest.addEventListener(\"readystatechange\",(function(){if(4===forgedRequest.readyState){var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText,content=responseText||response;if(\"string\"==typeof content){var patternRegexp=\"*\"===pattern?/(\\n|.)*/:toRegExp(pattern),modifiedContent=content.replace(patternRegexp,replacement);Object.defineProperties(thisArg,{readyState:{value:readyState,writable:!1},responseURL:{value:responseURL,writable:!1},responseXML:{value:responseXML,writable:!1},status:{value:status,writable:!1},statusText:{value:statusText,writable:!1},response:{value:modifiedContent,writable:!1},responseText:{value:modifiedContent,writable:!1}}),setTimeout((function(){var stateEvent=new Event(\"readystatechange\");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event(\"load\");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event(\"loadend\");thisArg.dispatchEvent(loadEndEvent)}),1),hit(source)}}})),nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]),thisArg.collectedHeaders.forEach((function(header){var name=header[0],value=header[1];forgedRequest.setRequestHeader(name,value)})),thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args)}catch(_unused){return Reflect.apply(target,thisArg,args)}}};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler),XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler)}else logMessage(source,\"Pattern argument should not be empty string.\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -500,7 +500,7 @@ "ubo-xml-prune.js", "ubo-xml-prune" ], - "scriptlet": "function xmlPrune(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove){var optionalProp=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",urlToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";if(\"undefined\"!=typeof Reflect&&\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response){var xhrData,shouldPruneResponse=!1,urlMatchRegexp=toRegExp(urlToMatch),isXpath=propsToRemove&&propsToRemove.startsWith(\"xpath(\"),getXPathElements=function(contextNode){var matchedElements=[];try{for(var elementsToRemove=propsToRemove.slice(6,-1),xpathResult=contextNode.evaluate(elementsToRemove,contextNode,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null),i=0;i\"))return!0}return!1},createXMLDocument=function(text){return(new DOMParser).parseFromString(text,\"text/xml\")},isPruningNeeded=function(response,propsToRemove){if(!isXML(response))return!1;var docXML=createXMLDocument(response);return isXpath?getXPathElements(docXML):!!docXML.querySelector(propsToRemove)},pruneXML=function(text){if(!isXML(text))return shouldPruneResponse=!1,text;var xmlDoc=createXMLDocument(text);if(xmlDoc.querySelector(\"parsererror\"))return text;if(\"\"!==optionalProp&&null===xmlDoc.querySelector(optionalProp))return shouldPruneResponse=!1,text;var elements=isXpath?getXPathElements(xmlDoc):xmlDoc.querySelectorAll(propsToRemove);return elements.length?(isXpath?elements.forEach((function(element){1===element.nodeType?element.remove():2===element.nodeType&&element.ownerElement.removeAttribute(element.nodeName)})):elements.forEach((function(elem){elem.remove()})),text=(new XMLSerializer).serializeToString(xmlDoc)):(shouldPruneResponse=!1,text)},nativeOpen=window.XMLHttpRequest.prototype.open,nativeSend=window.XMLHttpRequest.prototype.send,openHandler={apply:function(target,thisArg,args){if(xhrData=getXhrData.apply(null,args),function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,urlToMatch,xhrData)&&(thisArg.shouldBePruned=!0),thisArg.shouldBePruned){thisArg.collectedHeaders=[];var setRequestHeaderHandler={apply:function(target,thisArg,args){return thisArg.collectedHeaders.push(args),Reflect.apply(target,thisArg,args)}};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler)}return Reflect.apply(target,thisArg,args)}},sendHandler={apply:function(target,thisArg,args){if(!thisArg.shouldBePruned||![\"\",\"text\"].includes(thisArg.responseType))return Reflect.apply(target,thisArg,args);var forgedRequest=new XMLHttpRequest;forgedRequest.addEventListener(\"readystatechange\",(function(){if(4===forgedRequest.readyState){var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;if(\"string\"==typeof(responseText||response)){if(propsToRemove)shouldPruneResponse=isPruningNeeded(response,propsToRemove);else if(isXML(response)){var message=\"XMLHttpRequest.open() URL: \".concat(responseURL,\"\\nresponse: \").concat(response);logMessage(source,message),logMessage(source,createXMLDocument(response),!0,!1)}var responseContent=shouldPruneResponse?pruneXML(response):response;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:!1},responseURL:{value:responseURL,writable:!1},responseXML:{value:responseXML,writable:!1},status:{value:status,writable:!1},statusText:{value:statusText,writable:!1},response:{value:responseContent,writable:!1},responseText:{value:responseContent,writable:!1}}),setTimeout((function(){var stateEvent=new Event(\"readystatechange\");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event(\"load\");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event(\"loadend\");thisArg.dispatchEvent(loadEndEvent)}),1),hit(source)}}})),nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]),thisArg.collectedHeaders.forEach((function(header){var name=header[0],value=header[1];forgedRequest.setRequestHeader(name,value)})),thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args)}catch(_unused){return Reflect.apply(target,thisArg,args)}}};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler),XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);var nativeFetch=window.fetch,fetchHandler={apply:async function(target,thisArg,args){var fetchURL=args[0]instanceof Request?args[0].url:args[0];if(\"string\"!=typeof fetchURL||0===fetchURL.length)return Reflect.apply(target,thisArg,args);if(urlMatchRegexp.test(fetchURL)){var response=await nativeFetch(...args),clonedResponse=response.clone(),responseText=await response.text();if(!(shouldPruneResponse=isPruningNeeded(responseText,propsToRemove))){var message=\"fetch URL: \".concat(fetchURL,\"\\nresponse text: \").concat(responseText);return logMessage(source,message),logMessage(source,createXMLDocument(responseText),!0,!1),clonedResponse}var prunedText=pruneXML(responseText);return shouldPruneResponse?(hit(source),new Response(prunedText,{status:response.status,statusText:response.statusText,headers:response.headers})):clonedResponse}return Reflect.apply(target,thisArg,args)}};window.fetch=new Proxy(window.fetch,fetchHandler)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function xmlPrune(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove){var optionalProp=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",urlToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";if(\"undefined\"!=typeof Reflect&&\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response){var xhrData,shouldPruneResponse=!1,urlMatchRegexp=toRegExp(urlToMatch),isXpath=propsToRemove&&propsToRemove.startsWith(\"xpath(\"),getXPathElements=function(contextNode){var matchedElements=[];try{for(var elementsToRemove=propsToRemove.slice(6,-1),xpathResult=contextNode.evaluate(elementsToRemove,contextNode,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null),i=0;i\"))return!0}return!1},createXMLDocument=function(text){return(new DOMParser).parseFromString(text,\"text/xml\")},isPruningNeeded=function(response,propsToRemove){if(!isXML(response))return!1;var docXML=createXMLDocument(response);return isXpath?getXPathElements(docXML):!!docXML.querySelector(propsToRemove)},pruneXML=function(text){if(!isXML(text))return shouldPruneResponse=!1,text;var xmlDoc=createXMLDocument(text);if(xmlDoc.querySelector(\"parsererror\"))return text;if(\"\"!==optionalProp&&null===xmlDoc.querySelector(optionalProp))return shouldPruneResponse=!1,text;var elements=isXpath?getXPathElements(xmlDoc):xmlDoc.querySelectorAll(propsToRemove);return elements.length?(isXpath?elements.forEach((function(element){1===element.nodeType?element.remove():2===element.nodeType&&element.ownerElement.removeAttribute(element.nodeName)})):elements.forEach((function(elem){elem.remove()})),text=(new XMLSerializer).serializeToString(xmlDoc)):(shouldPruneResponse=!1,text)},nativeOpen=window.XMLHttpRequest.prototype.open,nativeSend=window.XMLHttpRequest.prototype.send,openHandler={apply:function(target,thisArg,args){if(xhrData=getXhrData.apply(null,args),function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,urlToMatch,xhrData)&&(thisArg.shouldBePruned=!0),thisArg.shouldBePruned){thisArg.collectedHeaders=[];var setRequestHeaderHandler={apply:function(target,thisArg,args){return thisArg.collectedHeaders.push(args),Reflect.apply(target,thisArg,args)}};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler)}return Reflect.apply(target,thisArg,args)}},sendHandler={apply:function(target,thisArg,args){if(!thisArg.shouldBePruned||![\"\",\"text\"].includes(thisArg.responseType))return Reflect.apply(target,thisArg,args);var forgedRequest=new XMLHttpRequest;forgedRequest.addEventListener(\"readystatechange\",(function(){if(4===forgedRequest.readyState){var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;if(\"string\"==typeof(responseText||response)){if(propsToRemove)shouldPruneResponse=isPruningNeeded(response,propsToRemove);else if(isXML(response)){var message=\"XMLHttpRequest.open() URL: \".concat(responseURL,\"\\nresponse: \").concat(response);logMessage(source,message),logMessage(source,createXMLDocument(response),!0,!1)}var responseContent=shouldPruneResponse?pruneXML(response):response;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:!1},responseURL:{value:responseURL,writable:!1},responseXML:{value:responseXML,writable:!1},status:{value:status,writable:!1},statusText:{value:statusText,writable:!1},response:{value:responseContent,writable:!1},responseText:{value:responseContent,writable:!1}}),setTimeout((function(){var stateEvent=new Event(\"readystatechange\");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event(\"load\");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event(\"loadend\");thisArg.dispatchEvent(loadEndEvent)}),1),hit(source)}}})),nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]),thisArg.collectedHeaders.forEach((function(header){var name=header[0],value=header[1];forgedRequest.setRequestHeader(name,value)})),thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args)}catch(_unused){return Reflect.apply(target,thisArg,args)}}};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler),XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);var nativeFetch=window.fetch,fetchHandler={apply:async function(target,thisArg,args){var fetchURL=args[0]instanceof Request?args[0].url:args[0];if(\"string\"!=typeof fetchURL||0===fetchURL.length)return Reflect.apply(target,thisArg,args);if(urlMatchRegexp.test(fetchURL)){var response=await nativeFetch(...args),clonedResponse=response.clone(),responseText=await response.text();if(!(shouldPruneResponse=isPruningNeeded(responseText,propsToRemove))){var message=\"fetch URL: \".concat(fetchURL,\"\\nresponse text: \").concat(responseText);return logMessage(source,message),logMessage(source,createXMLDocument(responseText),!0,!1),clonedResponse}var prunedText=pruneXML(responseText);return shouldPruneResponse?(hit(source),new Response(prunedText,{status:response.status,statusText:response.statusText,headers:response.headers})):clonedResponse}return Reflect.apply(target,thisArg,args)}};window.fetch=new Proxy(window.fetch,fetchHandler)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -509,43 +509,43 @@ "ubo-m3u-prune.js", "ubo-m3u-prune" ], - "scriptlet": "function m3uPrune(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove){var urlToMatch=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\";if(\"undefined\"!=typeof Reflect&&\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response){var xhrData,shouldPruneResponse=!1,urlMatchRegexp=toRegExp(urlToMatch),AD_MARKER_ASSET=\"#EXT-X-ASSET:\",AD_MARKER_CUE=\"#EXT-X-CUE:\",AD_MARKER_CUE_IN=\"#EXT-X-CUE-IN\",AD_MARKER_DISCONTINUITY=\"#EXT-X-DISCONTINUITY\",AD_MARKER_EXTINF=\"#EXTINF\",AD_MARKER_EXTM3U=\"#EXTM3U\",AD_MARKER_SCTE35=\"#EXT-X-SCTE35:\",COMCAST_AD_MARKER_AD=\"-AD-\",COMCAST_AD_MARKER_VAST=\"-VAST-\",COMCAST_AD_MARKER_VMAP_AD=\"-VMAP-AD-\",COMCAST_AD_MARKER_VMAP_AD_BREAK=\"#EXT-X-VMAP-AD-BREAK:\",TAGS_ALLOWLIST=[\"#EXT-X-TARGETDURATION\",\"#EXT-X-MEDIA-SEQUENCE\",\"#EXT-X-DISCONTINUITY-SEQUENCE\",\"#EXT-X-ENDLIST\",\"#EXT-X-PLAYLIST-TYPE\",\"#EXT-X-I-FRAMES-ONLY\",\"#EXT-X-MEDIA\",\"#EXT-X-STREAM-INF\",\"#EXT-X-I-FRAME-STREAM-INF\",\"#EXT-X-SESSION-DATA\",\"#EXT-X-SESSION-KEY\",\"#EXT-X-INDEPENDENT-SEGMENTS\",\"#EXT-X-START\"],isAllowedTag=function(str){return TAGS_ALLOWLIST.some((function(el){return str.startsWith(el)}))},pruneExtinfFromVmapBlock=function pruneExtinfFromVmapBlock(lines,i){var array=lines.slice(),index=i;if(array[index].includes(AD_MARKER_EXTINF)&&(array[index]=void 0,array[index+=1].includes(AD_MARKER_DISCONTINUITY))){array[index]=void 0;var prunedExtinf=pruneExtinfFromVmapBlock(array,index+=1);array=prunedExtinf.array,index=prunedExtinf.index}return{array:array,index:index}},removeM3ULineRegexp=toRegExp(propsToRemove),isM3U=function(text){if(\"string\"==typeof text){var trimmedText=text.trim();return trimmedText.startsWith(AD_MARKER_EXTM3U)||trimmedText.startsWith(COMCAST_AD_MARKER_VMAP_AD_BREAK)}return!1},isPruningNeeded=function(text,regexp){return isM3U(text)&®exp.test(text)},pruneM3U=function(text){var lines=text.split(/\\r?\\n/);return text.includes(COMCAST_AD_MARKER_VMAP_AD_BREAK)?(lines=function(lines){for(var array=lines.slice(),i=0;i2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove){var urlToMatch=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\";if(\"undefined\"!=typeof Reflect&&\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response){var xhrData,shouldPruneResponse=!1,urlMatchRegexp=toRegExp(urlToMatch),AD_MARKER_ASSET=\"#EXT-X-ASSET:\",AD_MARKER_CUE=\"#EXT-X-CUE:\",AD_MARKER_CUE_IN=\"#EXT-X-CUE-IN\",AD_MARKER_DISCONTINUITY=\"#EXT-X-DISCONTINUITY\",AD_MARKER_EXTINF=\"#EXTINF\",AD_MARKER_EXTM3U=\"#EXTM3U\",AD_MARKER_SCTE35=\"#EXT-X-SCTE35:\",COMCAST_AD_MARKER_AD=\"-AD-\",COMCAST_AD_MARKER_VAST=\"-VAST-\",COMCAST_AD_MARKER_VMAP_AD=\"-VMAP-AD-\",COMCAST_AD_MARKER_VMAP_AD_BREAK=\"#EXT-X-VMAP-AD-BREAK:\",TAGS_ALLOWLIST=[\"#EXT-X-TARGETDURATION\",\"#EXT-X-MEDIA-SEQUENCE\",\"#EXT-X-DISCONTINUITY-SEQUENCE\",\"#EXT-X-ENDLIST\",\"#EXT-X-PLAYLIST-TYPE\",\"#EXT-X-I-FRAMES-ONLY\",\"#EXT-X-MEDIA\",\"#EXT-X-STREAM-INF\",\"#EXT-X-I-FRAME-STREAM-INF\",\"#EXT-X-SESSION-DATA\",\"#EXT-X-SESSION-KEY\",\"#EXT-X-INDEPENDENT-SEGMENTS\",\"#EXT-X-START\"],isAllowedTag=function(str){return TAGS_ALLOWLIST.some((function(el){return str.startsWith(el)}))},pruneExtinfFromVmapBlock=function pruneExtinfFromVmapBlock(lines,i){var array=lines.slice(),index=i;if(array[index].includes(AD_MARKER_EXTINF)&&(array[index]=void 0,array[index+=1].includes(AD_MARKER_DISCONTINUITY))){array[index]=void 0;var prunedExtinf=pruneExtinfFromVmapBlock(array,index+=1);array=prunedExtinf.array,index=prunedExtinf.index}return{array:array,index:index}},removeM3ULineRegexp=toRegExp(propsToRemove),isM3U=function(text){if(\"string\"==typeof text){var trimmedText=text.trim();return trimmedText.startsWith(AD_MARKER_EXTM3U)||trimmedText.startsWith(COMCAST_AD_MARKER_VMAP_AD_BREAK)}return!1},isPruningNeeded=function(text,regexp){return isM3U(text)&®exp.test(text)},pruneM3U=function(text){var lines=text.split(/\\r?\\n/);return text.includes(COMCAST_AD_MARKER_VMAP_AD_BREAK)?(lines=function(lines){for(var array=lines.slice(),i=0;i2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,name,value){var offsetExpiresSec=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",path=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"/\",domain=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"\";if(void 0!==name)if(void 0!==value){var rawPath,parsedValue=function(rawValue){var CURRENT_DATE_KEYWORD=\"$currentDate$\",parsedValue=rawValue;return\"$now$\"===rawValue?parsedValue=Date.now().toString():rawValue===CURRENT_DATE_KEYWORD&&(parsedValue=Date()),parsedValue}(value);if(\"/\"===(rawPath=path)||\"none\"===rawPath)if(document.location.origin.includes(domain)){var cookieToSet=function(name,rawValue,rawPath){var domainValue=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",shouldEncodeValue=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],COOKIE_BREAKER=\";\";if(!shouldEncodeValue&&\"\".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER))return null;var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue,resultCookie=\"\".concat(name,\"=\").concat(value),path=function(rawPath){return\"/\"===rawPath?\"path=/\":\"\"}(rawPath);return path&&(resultCookie+=\"; \".concat(path)),domainValue&&(resultCookie+=\"; domain=\".concat(domainValue)),resultCookie}(name,parsedValue,path,domain,!1);if(cookieToSet){if(offsetExpiresSec){var parsedOffsetMs=function(offsetExpiresSec){var parsedSec,MS_IN_SEC=1e3;if(\"1year\"===offsetExpiresSec)parsedSec=31536e3;else if(offsetExpiresSec===\"1day\")parsedSec=86400;else if(parsedSec=Number.parseInt(offsetExpiresSec,10),Number.isNaN(parsedSec))return null;return parsedSec*MS_IN_SEC}(offsetExpiresSec);if(!parsedOffsetMs)return void logMessage(source,\"Invalid offsetExpiresSec value: \".concat(offsetExpiresSec));var expires=Date.now()+parsedOffsetMs;cookieToSet+=\"; expires=\".concat(new Date(expires).toUTCString())}document.cookie=cookieToSet,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else logMessage(source,\"Invalid cookie name or value\")}else logMessage(source,\"Cookie domain not matched by origin: '\".concat(domain,\"'\"));else logMessage(source,\"Invalid cookie path: '\".concat(path,\"'\"))}else logMessage(source,\"Cookie value should be specified\");else logMessage(source,\"Cookie name should be specified\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedSetCookie(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,name,value){var offsetExpiresSec=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",path=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"/\",domain=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"\";if(void 0!==name)if(void 0!==value){var rawPath,parsedValue=function(rawValue){var CURRENT_DATE_KEYWORD=\"$currentDate$\",parsedValue=rawValue;return\"$now$\"===rawValue?parsedValue=Date.now().toString():rawValue===CURRENT_DATE_KEYWORD&&(parsedValue=Date()),parsedValue}(value);if(\"/\"===(rawPath=path)||\"none\"===rawPath)if(document.location.origin.includes(domain)){var cookieToSet=function(name,rawValue,rawPath){var domainValue=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",shouldEncodeValue=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],COOKIE_BREAKER=\";\";if(!shouldEncodeValue&&\"\".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER))return null;var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue,resultCookie=\"\".concat(name,\"=\").concat(value),path=function(rawPath){return\"/\"===rawPath?\"path=/\":\"\"}(rawPath);return path&&(resultCookie+=\"; \".concat(path)),domainValue&&(resultCookie+=\"; domain=\".concat(domainValue)),resultCookie}(name,parsedValue,path,domain,!1);if(cookieToSet){if(offsetExpiresSec){var parsedOffsetMs=function(offsetExpiresSec){var parsedSec,MS_IN_SEC=1e3;if(\"1year\"===offsetExpiresSec)parsedSec=31536e3;else if(offsetExpiresSec===\"1day\")parsedSec=86400;else if(parsedSec=Number.parseInt(offsetExpiresSec,10),Number.isNaN(parsedSec))return null;return parsedSec*MS_IN_SEC}(offsetExpiresSec);if(!parsedOffsetMs)return void logMessage(source,\"Invalid offsetExpiresSec value: \".concat(offsetExpiresSec));var expires=Date.now()+parsedOffsetMs;cookieToSet+=\"; expires=\".concat(new Date(expires).toUTCString())}document.cookie=cookieToSet,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else logMessage(source,\"Invalid cookie name or value\")}else logMessage(source,\"Cookie domain not matched by origin: '\".concat(domain,\"'\"));else logMessage(source,\"Invalid cookie path: '\".concat(path,\"'\"))}else logMessage(source,\"Cookie value should be specified\");else logMessage(source,\"Cookie name should be specified\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "trusted-set-cookie-reload" ], - "scriptlet": "function trustedSetCookieReload(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(\";\").some((function(cookieStr){var pos=cookieStr.indexOf(\"=\");if(-1===pos)return!1;var cookieName=cookieStr.slice(0,pos).trim(),cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue}))}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,name,value){var offsetExpiresSec=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",path=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"/\",domain=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"\";if(void 0!==name)if(void 0!==value){if(!isCookieSetWithValue(document.cookie,name,value)){var rawPath,parsedValue=function(rawValue){var CURRENT_DATE_KEYWORD=\"$currentDate$\",parsedValue=rawValue;return\"$now$\"===rawValue?parsedValue=Date.now().toString():rawValue===CURRENT_DATE_KEYWORD&&(parsedValue=Date()),parsedValue}(value);if(\"/\"===(rawPath=path)||\"none\"===rawPath)if(document.location.origin.includes(domain)){var cookieToSet=function(name,rawValue,rawPath){var domainValue=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",shouldEncodeValue=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],COOKIE_BREAKER=\";\";if(!shouldEncodeValue&&\"\".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER))return null;var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue,resultCookie=\"\".concat(name,\"=\").concat(value),path=function(rawPath){return\"/\"===rawPath?\"path=/\":\"\"}(rawPath);return path&&(resultCookie+=\"; \".concat(path)),domainValue&&(resultCookie+=\"; domain=\".concat(domainValue)),resultCookie}(name,parsedValue,path,domain,!1);if(cookieToSet){if(offsetExpiresSec){var parsedOffsetMs=function(offsetExpiresSec){var parsedSec,MS_IN_SEC=1e3;if(\"1year\"===offsetExpiresSec)parsedSec=31536e3;else if(offsetExpiresSec===\"1day\")parsedSec=86400;else if(parsedSec=Number.parseInt(offsetExpiresSec,10),Number.isNaN(parsedSec))return null;return parsedSec*MS_IN_SEC}(offsetExpiresSec);if(!parsedOffsetMs)return void logMessage(source,\"Invalid offsetExpiresSec value: \".concat(offsetExpiresSec));var expires=Date.now()+parsedOffsetMs;cookieToSet+=\"; expires=\".concat(new Date(expires).toUTCString())}document.cookie=cookieToSet,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);var cookieString,COOKIE_DELIMITER,COOKIE_PAIRS_DELIMITER,cookieChunks,cookieData,cookieValueToCheck=(cookieString=document.cookie,COOKIE_DELIMITER=\"=\",COOKIE_PAIRS_DELIMITER=\";\",cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER),cookieData={},cookieChunks.forEach((function(singleCookie){var cookieKey,cookieValue=\"\",delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);-1===delimiterIndex?cookieKey=singleCookie.trim():(cookieKey=singleCookie.slice(0,delimiterIndex).trim(),cookieValue=singleCookie.slice(delimiterIndex+1)),cookieData[cookieKey]=cookieValue||null})),cookieData)[name];isCookieSetWithValue(document.cookie,name,cookieValueToCheck)&&window.location.reload()}else logMessage(source,\"Invalid cookie name or value\")}else logMessage(source,\"Cookie domain not matched by origin: '\".concat(domain,\"'\"));else logMessage(source,\"Invalid cookie path: '\".concat(path,\"'\"))}}else logMessage(source,\"Cookie value should be specified\");else logMessage(source,\"Cookie name should be specified\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedSetCookieReload(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(\";\").some((function(cookieStr){var pos=cookieStr.indexOf(\"=\");if(-1===pos)return!1;var cookieName=cookieStr.slice(0,pos).trim(),cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue}))}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,name,value){var offsetExpiresSec=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",path=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"/\",domain=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"\";if(void 0!==name)if(void 0!==value){if(!isCookieSetWithValue(document.cookie,name,value)){var rawPath,parsedValue=function(rawValue){var CURRENT_DATE_KEYWORD=\"$currentDate$\",parsedValue=rawValue;return\"$now$\"===rawValue?parsedValue=Date.now().toString():rawValue===CURRENT_DATE_KEYWORD&&(parsedValue=Date()),parsedValue}(value);if(\"/\"===(rawPath=path)||\"none\"===rawPath)if(document.location.origin.includes(domain)){var cookieToSet=function(name,rawValue,rawPath){var domainValue=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",shouldEncodeValue=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],COOKIE_BREAKER=\";\";if(!shouldEncodeValue&&\"\".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER))return null;var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue,resultCookie=\"\".concat(name,\"=\").concat(value),path=function(rawPath){return\"/\"===rawPath?\"path=/\":\"\"}(rawPath);return path&&(resultCookie+=\"; \".concat(path)),domainValue&&(resultCookie+=\"; domain=\".concat(domainValue)),resultCookie}(name,parsedValue,path,domain,!1);if(cookieToSet){if(offsetExpiresSec){var parsedOffsetMs=function(offsetExpiresSec){var parsedSec,MS_IN_SEC=1e3;if(\"1year\"===offsetExpiresSec)parsedSec=31536e3;else if(offsetExpiresSec===\"1day\")parsedSec=86400;else if(parsedSec=Number.parseInt(offsetExpiresSec,10),Number.isNaN(parsedSec))return null;return parsedSec*MS_IN_SEC}(offsetExpiresSec);if(!parsedOffsetMs)return void logMessage(source,\"Invalid offsetExpiresSec value: \".concat(offsetExpiresSec));var expires=Date.now()+parsedOffsetMs;cookieToSet+=\"; expires=\".concat(new Date(expires).toUTCString())}document.cookie=cookieToSet,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);var cookieString,COOKIE_DELIMITER,COOKIE_PAIRS_DELIMITER,cookieChunks,cookieData,cookieValueToCheck=(cookieString=document.cookie,COOKIE_DELIMITER=\"=\",COOKIE_PAIRS_DELIMITER=\";\",cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER),cookieData={},cookieChunks.forEach((function(singleCookie){var cookieKey,cookieValue=\"\",delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);-1===delimiterIndex?cookieKey=singleCookie.trim():(cookieKey=singleCookie.slice(0,delimiterIndex).trim(),cookieValue=singleCookie.slice(delimiterIndex+1)),cookieData[cookieKey]=cookieValue||null})),cookieData)[name];isCookieSetWithValue(document.cookie,name,cookieValueToCheck)&&window.location.reload()}else logMessage(source,\"Invalid cookie name or value\")}else logMessage(source,\"Cookie domain not matched by origin: '\".concat(domain,\"'\"));else logMessage(source,\"Invalid cookie path: '\".concat(path,\"'\"))}}else logMessage(source,\"Cookie value should be specified\");else logMessage(source,\"Cookie name should be specified\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "trusted-replace-fetch-response" ], - "scriptlet": "function trustedReplaceFetchResponse(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var pattern=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",replacement=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",propsToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";if(\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response)if(\"\"!==pattern||\"\"===replacement){var fetchData,shouldLog=\"\"===pattern&&\"\"===replacement,nativeRequestClone=Request.prototype.clone,nativeFetch=fetch,shouldReplace=!1,fetchHandler={apply:function(target,thisArg,args){return fetchData=function(args,nativeRequestClone){var fetchUrl,fetchInit,request,entries,fetchPropsObj={},resource=args[0];if(resource instanceof Request){var realData=nativeRequestClone.call(resource),requestData=(request=realData,entries=[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].map((function(key){return[key,request[key]]})),Object.fromEntries(entries));fetchUrl=requestData.url,fetchInit=requestData}else fetchUrl=resource,fetchInit=args[1];return fetchPropsObj.url=fetchUrl,fetchInit instanceof Object&&Object.keys(fetchInit).forEach((function(prop){fetchPropsObj[prop]=fetchInit[prop]})),fetchPropsObj}(args,nativeRequestClone),shouldLog?(logMessage(source,\"fetch( \".concat(objectToString(fetchData),\" )\"),!0),hit(source),Reflect.apply(target,thisArg,args)):(shouldReplace=function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,fetchData),shouldReplace?nativeFetch.apply(null,args).then((function(response){return response.text().then((function(bodyText){var patternRegexp=\"*\"===pattern?/(\\n|.)*/:toRegExp(pattern),modifiedTextContent=bodyText.replace(patternRegexp,replacement),forgedResponse=function(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url,forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});return Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}}),forgedResponse}(response,modifiedTextContent);return hit(source),forgedResponse})).catch((function(){var fetchDataStr=objectToString(fetchData),message=\"Response body can't be converted to text: \".concat(fetchDataStr);return logMessage(source,message),Reflect.apply(target,thisArg,args)}))})).catch((function(){return Reflect.apply(target,thisArg,args)})):Reflect.apply(target,thisArg,args))}};fetch=new Proxy(fetch,fetchHandler)}else logMessage(source,\"Pattern argument should not be empty string\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedReplaceFetchResponse(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var pattern=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",replacement=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",propsToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";if(\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response)if(\"\"!==pattern||\"\"===replacement){var fetchData,shouldLog=\"\"===pattern&&\"\"===replacement,nativeRequestClone=Request.prototype.clone,nativeFetch=fetch,shouldReplace=!1,fetchHandler={apply:function(target,thisArg,args){return fetchData=function(args,nativeRequestClone){var fetchUrl,fetchInit,request,entries,fetchPropsObj={},resource=args[0];if(resource instanceof Request){var realData=nativeRequestClone.call(resource),requestData=(request=realData,entries=[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].map((function(key){return[key,request[key]]})),Object.fromEntries(entries));fetchUrl=requestData.url,fetchInit=requestData}else fetchUrl=resource,fetchInit=args[1];return fetchPropsObj.url=fetchUrl,fetchInit instanceof Object&&Object.keys(fetchInit).forEach((function(prop){fetchPropsObj[prop]=fetchInit[prop]})),fetchPropsObj}(args,nativeRequestClone),shouldLog?(logMessage(source,\"fetch( \".concat(objectToString(fetchData),\" )\"),!0),hit(source),Reflect.apply(target,thisArg,args)):(shouldReplace=function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,fetchData),shouldReplace?nativeFetch.apply(null,args).then((function(response){return response.text().then((function(bodyText){var patternRegexp=\"*\"===pattern?/(\\n|.)*/:toRegExp(pattern),modifiedTextContent=bodyText.replace(patternRegexp,replacement),forgedResponse=function(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url,forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});return Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}}),forgedResponse}(response,modifiedTextContent);return hit(source),forgedResponse})).catch((function(){var fetchDataStr=objectToString(fetchData),message=\"Response body can't be converted to text: \".concat(fetchDataStr);return logMessage(source,message),Reflect.apply(target,thisArg,args)}))})).catch((function(){return Reflect.apply(target,thisArg,args)})):Reflect.apply(target,thisArg,args))}};fetch=new Proxy(fetch,fetchHandler)}else logMessage(source,\"Pattern argument should not be empty string\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "trusted-set-local-storage-item" ], - "scriptlet": "function trustedSetLocalStorageItem(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,key,value){if(void 0!==key)if(void 0!==value){var parsedValue=function(rawValue){var CURRENT_DATE_KEYWORD=\"$currentDate$\",parsedValue=rawValue;return\"$now$\"===rawValue?parsedValue=Date.now().toString():rawValue===CURRENT_DATE_KEYWORD&&(parsedValue=Date()),parsedValue}(value);!function(source,storage,key,value){try{storage.setItem(key,value)}catch(e){logMessage(source,\"Unable to set sessionStorage item due to: \".concat(e.message))}}(source,window.localStorage,key,parsedValue),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else logMessage(source,\"Item value should be specified\");else logMessage(source,\"Item key should be specified\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedSetLocalStorageItem(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,key,value){if(void 0!==key)if(void 0!==value){var parsedValue=function(rawValue){var CURRENT_DATE_KEYWORD=\"$currentDate$\",parsedValue=rawValue;return\"$now$\"===rawValue?parsedValue=Date.now().toString():rawValue===CURRENT_DATE_KEYWORD&&(parsedValue=Date()),parsedValue}(value);!function(source,storage,key,value){try{storage.setItem(key,value)}catch(e){logMessage(source,\"Unable to set sessionStorage item due to: \".concat(e.message))}}(source,window.localStorage,key,parsedValue),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}else logMessage(source,\"Item value should be specified\");else logMessage(source,\"Item key should be specified\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "trusted-set-constant" ], - "scriptlet": "function trustedSetConstant(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&isEmptyObject(base)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function isEmptyObject(obj){return 0===Object.keys(obj).length&&!obj.prototype}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,value,stack){if(property&&function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;indexMAX_ALLOWED_NUM)throw new Error(\"number values bigger than 32767 are not allowed\");return numVal}var errorMessage=\"'\".concat(value,\"' value type can't be inferred\");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||\"string\"==typeof parsableVal)return parsableVal}catch(e){errorMessage+=\": \".concat(e)}throw new TypeError(errorMessage)}}(value)}catch(e){return void logMessage(source,e)}var canceled=!1,mustCancel=function(value){return canceled||(canceled=void 0!==value&&void 0!==constantValue&&typeof value!=typeof constantValue&&null!==value)},trapProp=function(base,prop,configurable,handler){if(!handler.init(base[prop]))return!1;var prevSetter,origDescriptor=Object.getOwnPropertyDescriptor(base,prop);if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message=\"Property '\".concat(prop,\"' is not configurable\");return logMessage(source,message),!1}base[prop]=constantValue,origDescriptor.set instanceof Function&&(prevSetter=origDescriptor.set)}return Object.defineProperty(base,prop,{configurable:configurable,get:()=>handler.get(),set(a){void 0!==prevSetter&&prevSetter(a),handler.set(a)}}),!0};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain,inChainPropHandler={factValue:void 0,init(a){return this.factValue=a,!0},get(){return this.factValue},set(a){this.factValue!==a&&(this.factValue=a,a instanceof Object&&setChainPropAccess(a,chain))}},endPropHandler={init:a=>!mustCancel(a),get:()=>constantValue,set(a){mustCancel(a)&&(constantValue=a)}};if(chain)if(void 0===base||null!==base[prop]){(base instanceof Object||\"object\"==typeof base)&&isEmptyObject(base)&&trapProp(base,prop,!0,inChainPropHandler);var propValue=owner[prop];(propValue instanceof Object||\"object\"==typeof propValue&&null!==propValue)&&setChainPropAccess(propValue,chain),trapProp(base,prop,!0,inChainPropHandler)}else trapProp(base,prop,!0,inChainPropHandler);else trapProp(base,prop,!1,endPropHandler)&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}(window,property)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedSetConstant(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&isEmptyObject(base)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function isEmptyObject(obj){return 0===Object.keys(obj).length&&!obj.prototype}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,property,value,stack){if(property&&function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;indexMAX_ALLOWED_NUM)throw new Error(\"number values bigger than 32767 are not allowed\");return numVal}var errorMessage=\"'\".concat(value,\"' value type can't be inferred\");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||\"string\"==typeof parsableVal)return parsableVal}catch(e){errorMessage+=\": \".concat(e)}throw new TypeError(errorMessage)}}(value)}catch(e){return void logMessage(source,e)}var canceled=!1,mustCancel=function(value){return canceled||(canceled=void 0!==value&&void 0!==constantValue&&typeof value!=typeof constantValue&&null!==value)},trapProp=function(base,prop,configurable,handler){if(!handler.init(base[prop]))return!1;var prevSetter,origDescriptor=Object.getOwnPropertyDescriptor(base,prop);if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message=\"Property '\".concat(prop,\"' is not configurable\");return logMessage(source,message),!1}base[prop]=constantValue,origDescriptor.set instanceof Function&&(prevSetter=origDescriptor.set)}return Object.defineProperty(base,prop,{configurable:configurable,get:()=>handler.get(),set(a){void 0!==prevSetter&&prevSetter(a),handler.set(a)}}),!0};!function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property),base=chainInfo.base,prop=chainInfo.prop,chain=chainInfo.chain,inChainPropHandler={factValue:void 0,init(a){return this.factValue=a,!0},get(){return this.factValue},set(a){this.factValue!==a&&(this.factValue=a,a instanceof Object&&setChainPropAccess(a,chain))}},endPropHandler={init:a=>!mustCancel(a),get:()=>constantValue,set(a){mustCancel(a)&&(constantValue=a)}};if(chain)if(void 0===base||null!==base[prop]){(base instanceof Object||\"object\"==typeof base)&&isEmptyObject(base)&&trapProp(base,prop,!0,inChainPropHandler);var propValue=owner[prop];(propValue instanceof Object||\"object\"==typeof propValue&&null!==propValue)&&setChainPropAccess(propValue,chain),trapProp(base,prop,!0,inChainPropHandler)}else trapProp(base,prop,!0,inChainPropHandler);else trapProp(base,prop,!1,endPropHandler)&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}(window,property)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "inject-css-in-shadow-dom" ], - "scriptlet": "function injectCssInShadowDom(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,cssRule){var hostSelector=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\";Element.prototype.attachShadow&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Reflect&&(cssRule.match(/(url|image-set)\\(.*\\)/i)?logMessage(source,'\"url()\" function is not allowed for css rules'):function(context,hostSelector,callback){var handlerWrapper=function(target,thisArg,args){var shadowRoot=Reflect.apply(target,thisArg,args);return thisArg&&thisArg.matches(hostSelector||\"*\")&&callback(shadowRoot),shadowRoot},attachShadowHandler={apply:handlerWrapper};context.Element.prototype.attachShadow=new Proxy(context.Element.prototype.attachShadow,attachShadowHandler)}(window,hostSelector,(function(shadowRoot){try{var stylesheet=new CSSStyleSheet;try{stylesheet.insertRule(cssRule)}catch(e){return void logMessage(source,\"Unable to apply the rule '\".concat(cssRule,\"' due to: \\n'\").concat(e.message,\"'\"))}shadowRoot.adoptedStyleSheets=[...shadowRoot.adoptedStyleSheets,stylesheet]}catch(_unused){var styleTag=document.createElement(\"style\");styleTag.innerText=cssRule,shadowRoot.appendChild(styleTag)}!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)})))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function injectCssInShadowDom(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,cssRule){var hostSelector=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\";Element.prototype.attachShadow&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Reflect&&(cssRule.match(/(url|image-set)\\(.*\\)/i)?logMessage(source,'\"url()\" function is not allowed for css rules'):function(context,hostSelector,callback){var handlerWrapper=function(target,thisArg,args){var shadowRoot=Reflect.apply(target,thisArg,args);return thisArg&&thisArg.matches(hostSelector||\"*\")&&callback(shadowRoot),shadowRoot},attachShadowHandler={apply:handlerWrapper};context.Element.prototype.attachShadow=new Proxy(context.Element.prototype.attachShadow,attachShadowHandler)}(window,hostSelector,(function(shadowRoot){try{var stylesheet=new CSSStyleSheet;try{stylesheet.insertRule(cssRule)}catch(e){return void logMessage(source,\"Unable to apply the rule '\".concat(cssRule,\"' due to: \\n'\").concat(e.message,\"'\"))}shadowRoot.adoptedStyleSheets=[...shadowRoot.adoptedStyleSheets,stylesheet]}catch(_unused){var styleTag=document.createElement(\"style\");styleTag.innerText=cssRule,shadowRoot.appendChild(styleTag)}!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)})))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -557,13 +557,13 @@ "ubo-remove-node-text", "ubo-rmnt" ], - "scriptlet": "function removeNodeText(source,args){function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,nodeName,textMatch){var _parseNodeTextParams=function(nodeName,textMatch){var patternMatch,pattern=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,REGEXP_START_MARKER=\"/\",isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER)),selector=isStringNameMatch?nodeName:\"*\",nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName),textContentMatch=textMatch.startsWith(REGEXP_START_MARKER)?toRegExp(textMatch):textMatch;return pattern&&(patternMatch=pattern.startsWith(REGEXP_START_MARKER)?toRegExp(pattern):pattern),{selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch}}(nodeName,textMatch),selector=_parseNodeTextParams.selector,nodeNameMatch=_parseNodeTextParams.nodeNameMatch,textContentMatch=_parseNodeTextParams.textContentMatch,handleNodes=function(nodes){return nodes.forEach((function(node){var shouldReplace=function(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent,nodeNameLowerCase=nodeName.toLowerCase();return null!==textContent&&\"\"!==textContent&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch))}(node,nodeNameMatch,textContentMatch);shouldReplace&&function(source,node,pattern,replacement){var textContent=node.textContent;textContent&&(node.textContent=textContent.replace(pattern,replacement),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source))}(source,node,/^[\\s\\S]*$/,\"\")}))};document.documentElement&&function(selector,handler){var nodes=function(nodeList){for(var nodes=[],i=0;i1&&void 0!==arguments[1]?arguments[1]:{subtree:!0,childList:!0},timeout=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e4,documentObserver=new MutationObserver((function(mutations,observer){observer.disconnect(),callback(mutations,observer),observer.observe(document.documentElement,options)}));documentObserver.observe(document.documentElement,options),\"number\"==typeof timeout&&setTimeout((function(){return documentObserver.disconnect()}),timeout)}((function(mutations){return function(mutations,handler){var addedNodes=function(mutations){for(var nodes=[],i=0;i2&&void 0!==arguments[2]?arguments[2]:null,REGEXP_START_MARKER=\"/\",isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER)),selector=isStringNameMatch?nodeName:\"*\",nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName),textContentMatch=textMatch.startsWith(REGEXP_START_MARKER)?toRegExp(textMatch):textMatch;return pattern&&(patternMatch=pattern.startsWith(REGEXP_START_MARKER)?toRegExp(pattern):pattern),{selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch}}(nodeName,textMatch),selector=_parseNodeTextParams.selector,nodeNameMatch=_parseNodeTextParams.nodeNameMatch,textContentMatch=_parseNodeTextParams.textContentMatch,handleNodes=function(nodes){return nodes.forEach((function(node){var shouldReplace=function(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent,nodeNameLowerCase=nodeName.toLowerCase();return null!==textContent&&\"\"!==textContent&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch))}(node,nodeNameMatch,textContentMatch);shouldReplace&&function(source,node,pattern,replacement){var textContent=node.textContent;textContent&&(node.textContent=textContent.replace(pattern,replacement),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source))}(source,node,/^[\\s\\S]*$/,\"\")}))};document.documentElement&&function(selector,handler){var nodes=function(nodeList){for(var nodes=[],i=0;i1&&void 0!==arguments[1]?arguments[1]:{subtree:!0,childList:!0},timeout=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e4,documentObserver=new MutationObserver((function(mutations,observer){observer.disconnect(),callback(mutations,observer),observer.observe(document.documentElement,options)}));documentObserver.observe(document.documentElement,options),\"number\"==typeof timeout&&setTimeout((function(){return documentObserver.disconnect()}),timeout)}((function(mutations){return function(mutations,handler){var addedNodes=function(mutations){for(var nodes=[],i=0;i0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,nodeName,textMatch,pattern,replacement){if([\"replace-node-text.js\",\"rpnt.js\",\"sed.js\"].includes(source.name)){replacement=pattern,pattern=textMatch;for(var _len=arguments.length,extraArgs=new Array(_len>5?_len-5:0),_key=5;_key<_len;_key++)extraArgs[_key-5]=arguments[_key];for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:null,REGEXP_START_MARKER=\"/\",isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER)),selector=isStringNameMatch?nodeName:\"*\",nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName),textContentMatch=textMatch.startsWith(REGEXP_START_MARKER)?toRegExp(textMatch):textMatch;return pattern&&(patternMatch=pattern.startsWith(REGEXP_START_MARKER)?toRegExp(pattern):pattern),{selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch}}(nodeName,textMatch,pattern),selector=_parseNodeTextParams.selector,nodeNameMatch=_parseNodeTextParams.nodeNameMatch,textContentMatch=_parseNodeTextParams.textContentMatch,patternMatch=_parseNodeTextParams.patternMatch,handleNodes=function(nodes){return nodes.forEach((function(node){var shouldReplace=function(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent,nodeNameLowerCase=nodeName.toLowerCase();return null!==textContent&&\"\"!==textContent&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch))}(node,nodeNameMatch,textContentMatch);shouldReplace&&function(source,node,pattern,replacement){var textContent=node.textContent;textContent&&(node.textContent=textContent.replace(pattern,replacement),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source))}(source,node,patternMatch,replacement)}))};document.documentElement&&function(selector,handler){var nodes=function(nodeList){for(var nodes=[],i=0;i1&&void 0!==arguments[1]?arguments[1]:{subtree:!0,childList:!0},timeout=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e4,documentObserver=new MutationObserver((function(mutations,observer){observer.disconnect(),callback(mutations,observer),observer.observe(document.documentElement,options)}));documentObserver.observe(document.documentElement,options),\"number\"==typeof timeout&&setTimeout((function(){return documentObserver.disconnect()}),timeout)}((function(mutations){return function(mutations,handler){var addedNodes=function(mutations){for(var nodes=[],i=0;i5?_len-5:0),_key=5;_key<_len;_key++)extraArgs[_key-5]=arguments[_key];for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:null,REGEXP_START_MARKER=\"/\",isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER)),selector=isStringNameMatch?nodeName:\"*\",nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName),textContentMatch=textMatch.startsWith(REGEXP_START_MARKER)?toRegExp(textMatch):textMatch;return pattern&&(patternMatch=pattern.startsWith(REGEXP_START_MARKER)?toRegExp(pattern):pattern),{selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch}}(nodeName,textMatch,pattern),selector=_parseNodeTextParams.selector,nodeNameMatch=_parseNodeTextParams.nodeNameMatch,textContentMatch=_parseNodeTextParams.textContentMatch,patternMatch=_parseNodeTextParams.patternMatch,handleNodes=function(nodes){return nodes.forEach((function(node){var shouldReplace=function(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent,nodeNameLowerCase=nodeName.toLowerCase();return null!==textContent&&\"\"!==textContent&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch))}(node,nodeNameMatch,textContentMatch);shouldReplace&&function(source,node,pattern,replacement){var textContent=node.textContent;textContent&&(node.textContent=textContent.replace(pattern,replacement),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source))}(source,node,patternMatch,replacement)}))};document.documentElement&&function(selector,handler){var nodes=function(nodeList){for(var nodes=[],i=0;i1&&void 0!==arguments[1]?arguments[1]:{subtree:!0,childList:!0},timeout=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e4,documentObserver=new MutationObserver((function(mutations,observer){observer.disconnect(),callback(mutations,observer),observer.observe(document.documentElement,options)}));documentObserver.observe(document.documentElement,options),\"number\"==typeof timeout&&setTimeout((function(){return documentObserver.disconnect()}),timeout)}((function(mutations){return function(mutations,handler){var addedNodes=function(mutations){for(var nodes=[],i=0;i2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getPrunePath(props){return\"string\"==typeof props&&void 0!==props&&\"\"!==props?props.split(/ +/):[]}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove,requiredInitialProps,stack){var prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(requiredInitialProps),nativeObjects={nativeStringify:window.JSON.stringify},evalHandler={apply:function(target,thisArg,args){var data=Reflect.apply(target,thisArg,args);return\"object\"==typeof data&&(data=function(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getPrunePath(props){return\"string\"==typeof props&&void 0!==props&&\"\"!==props?props.split(/ +/):[]}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove,requiredInitialProps,stack){var prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(requiredInitialProps),nativeObjects={nativeStringify:window.JSON.stringify},evalHandler={apply:function(target,thisArg,args){var data=Reflect.apply(target,thisArg,args);return\"object\"==typeof data&&(data=function(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getPrunePath(props){return\"string\"==typeof props&&void 0!==props&&\"\"!==props?props.split(/ +/):[]}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,functionName,propsToRemove,requiredInitialProps){var stack=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(functionName){var nativeObjects={nativeStringify:window.JSON.stringify},_getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(base&&prop&&\"function\"==typeof base[prop]){var prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(requiredInitialProps),objectHandler={apply:function(target,thisArg,args){var data=args[0];return\"object\"==typeof data&&(data=function(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getPrunePath(props){return\"string\"==typeof props&&void 0!==props&&\"\"!==props?props.split(/ +/):[]}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,functionName,propsToRemove,requiredInitialProps){var stack=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(functionName){var nativeObjects={nativeStringify:window.JSON.stringify},_getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(base&&prop&&\"function\"==typeof base[prop]){var prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(requiredInitialProps),objectHandler={apply:function(target,thisArg,args){var data=args[0];return\"object\"==typeof data&&(data=function(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index4&&void 0!==arguments[4]?arguments[4]:defaultAttributeSetter;try{elements=document.querySelectorAll(selector)}catch(_unused){return void logMessage(source,'Failed to find elements matching selector \"'.concat(selector,'\"'))}if(elements&&0!==elements.length)try{elements.forEach((function(elem){return attributeSetter(elem,attribute,value)})),function(source){if(!0!==source.verbose)return;try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}(source)}catch(_unused2){logMessage(source,\"Failed to set [\".concat(attribute,'=\"').concat(value,'\"] to each of selected elements.'))}}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector,attr){var value=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";selector&&attr&&(setAttributeBySelector(source,selector,attr,value),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}((function(){return setAttributeBySelector(source,selector,attr,value)}),!0))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedSetAttr(source,args){function setAttributeBySelector(source,selector,attribute,value){var elements,attributeSetter=arguments.length>4&&void 0!==arguments[4]?arguments[4]:defaultAttributeSetter;try{elements=document.querySelectorAll(selector)}catch(_unused){return void logMessage(source,'Failed to find elements matching selector \"'.concat(selector,'\"'))}if(elements&&0!==elements.length)try{elements.forEach((function(elem){return attributeSetter(elem,attribute,value)})),function(source){if(!0!==source.verbose)return;try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}(source)}catch(_unused2){logMessage(source,\"Failed to set [\".concat(attribute,'=\"').concat(value,'\"] to each of selected elements.'))}}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value)}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector,attr){var value=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\";selector&&attr&&(setAttributeBySelector(source,selector,attr,value),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}((function(){return setAttributeBySelector(source,selector,attr,value)}),!0))}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -593,7 +593,7 @@ "ubo-spoof-css.js", "ubo-spoof-css" ], - "scriptlet": "function spoofCSS(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selectors,cssPropertyName,cssPropertyValue){if(selectors){var shouldDebug=!(\"debug\"!==cssPropertyName||!cssPropertyValue),propToValueMap=new Map;if([\"spoof-css.js\",\"ubo-spoof-css.js\",\"ubo-spoof-css\"].includes(source.name)){var args=source.args,arrayOfProperties=[];arrayOfProperties=\"debug\"===args.at(-2)?args.slice(1,-2):args.slice(1);for(var i=0;ipropToValueMap.has(prop)?{configurable:!0,enumerable:!0,value:propToValueMap.get(prop),writable:!0}:Reflect.getOwnPropertyDescriptor(target,prop)});return hit(source),proxiedStyle},get:getter};window.getComputedStyle=new Proxy(window.getComputedStyle,getComputedStyleHandler);var getBoundingClientRectHandler={apply:function(target,thisArg,args){if(shouldDebug)debugger;var rect=Reflect.apply(target,thisArg,args);if(!thisArg.matches(selectors))return rect;var top=rect.top,bottom=rect.bottom,height=rect.height,width=rect.width,left=rect.left,right=rect.right,newDOMRect=new window.DOMRect(rect.x,rect.y,top,bottom,width,height,left,right);return propToValueMap.has(\"top\")&&setRectValue(newDOMRect,\"top\",propToValueMap.get(\"top\")),propToValueMap.has(\"bottom\")&&setRectValue(newDOMRect,\"bottom\",propToValueMap.get(\"bottom\")),propToValueMap.has(\"left\")&&setRectValue(newDOMRect,\"left\",propToValueMap.get(\"left\")),propToValueMap.has(\"right\")&&setRectValue(newDOMRect,\"right\",propToValueMap.get(\"right\")),propToValueMap.has(\"height\")&&setRectValue(newDOMRect,\"height\",propToValueMap.get(\"height\")),propToValueMap.has(\"width\")&&setRectValue(newDOMRect,\"width\",propToValueMap.get(\"width\")),hit(source),newDOMRect},get:getter};window.Element.prototype.getBoundingClientRect=new Proxy(window.Element.prototype.getBoundingClientRect,getBoundingClientRectHandler)}function convertToCamelCase(cssProperty){if(!cssProperty.includes(\"-\"))return cssProperty;var splittedProperty=cssProperty.split(\"-\"),firstPart=splittedProperty[0],secondPart=splittedProperty[1];return\"\".concat(firstPart).concat(secondPart[0].toUpperCase()).concat(secondPart.slice(1))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function spoofCSS(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selectors,cssPropertyName,cssPropertyValue){if(selectors){var shouldDebug=!(\"debug\"!==cssPropertyName||!cssPropertyValue),propToValueMap=new Map;if([\"spoof-css.js\",\"ubo-spoof-css.js\",\"ubo-spoof-css\"].includes(source.name)){var args=source.args,arrayOfProperties=[];arrayOfProperties=\"debug\"===args.at(-2)?args.slice(1,-2):args.slice(1);for(var i=0;ipropToValueMap.has(prop)?{configurable:!0,enumerable:!0,value:propToValueMap.get(prop),writable:!0}:Reflect.getOwnPropertyDescriptor(target,prop)});return hit(source),proxiedStyle},get:getter};window.getComputedStyle=new Proxy(window.getComputedStyle,getComputedStyleHandler);var getBoundingClientRectHandler={apply:function(target,thisArg,args){if(shouldDebug)debugger;var rect=Reflect.apply(target,thisArg,args);if(!thisArg.matches(selectors))return rect;var top=rect.top,bottom=rect.bottom,height=rect.height,width=rect.width,left=rect.left,right=rect.right,newDOMRect=new window.DOMRect(rect.x,rect.y,top,bottom,width,height,left,right);return propToValueMap.has(\"top\")&&setRectValue(newDOMRect,\"top\",propToValueMap.get(\"top\")),propToValueMap.has(\"bottom\")&&setRectValue(newDOMRect,\"bottom\",propToValueMap.get(\"bottom\")),propToValueMap.has(\"left\")&&setRectValue(newDOMRect,\"left\",propToValueMap.get(\"left\")),propToValueMap.has(\"right\")&&setRectValue(newDOMRect,\"right\",propToValueMap.get(\"right\")),propToValueMap.has(\"height\")&&setRectValue(newDOMRect,\"height\",propToValueMap.get(\"height\")),propToValueMap.has(\"width\")&&setRectValue(newDOMRect,\"width\",propToValueMap.get(\"width\")),hit(source),newDOMRect},get:getter};window.Element.prototype.getBoundingClientRect=new Proxy(window.Element.prototype.getBoundingClientRect,getBoundingClientRectHandler)}function convertToCamelCase(cssProperty){if(!cssProperty.includes(\"-\"))return cssProperty;var splittedProperty=cssProperty.split(\"-\"),firstPart=splittedProperty[0],secondPart=splittedProperty[1];return\"\".concat(firstPart).concat(secondPart[0].toUpperCase()).concat(secondPart.slice(1))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -602,13 +602,13 @@ "ubo-call-nothrow.js", "ubo-call-nothrow" ], - "scriptlet": "function callNoThrow(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,functionName){if(functionName){var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(base&&prop&&\"function\"==typeof base[prop]){var objectHandler={apply:function(){var result;try{result=Reflect.apply(...arguments)}catch(e){var _message=\"Error calling \".concat(functionName,\": \").concat(e.message);logMessage(source,_message)}return function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),result}};base[prop]=new Proxy(base[prop],objectHandler)}else{var message=\"\".concat(functionName,\" is not a function\");logMessage(source,message)}}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function callNoThrow(source,args){function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,functionName){if(functionName){var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(base&&prop&&\"function\"==typeof base[prop]){var objectHandler={apply:function(){var result;try{result=Reflect.apply(...arguments)}catch(e){var _message=\"Error calling \".concat(functionName,\": \").concat(e.message);logMessage(source,_message)}return function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source),result}};base[prop]=new Proxy(base[prop],objectHandler)}else{var message=\"\".concat(functionName,\" is not a function\");logMessage(source,message)}}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "trusted-create-element" ], - "scriptlet": "function trustedCreateElement(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,parentSelector,tagName){var attributePairs=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",textContent=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\",cleanupDelayMs=arguments.length>5&&void 0!==arguments[5]?arguments[5]:NaN;if(parentSelector&&tagName&&\"trusted-create-element-window\"!==window.name){var element,logError=function(prefix,error){logMessage(source,\"\".concat(prefix,\" due to \").concat(function(error){if(\"object\"==typeof(e=error)&&null!==e&&\"message\"in e&&\"string\"==typeof e.message)return error.message;var e;try{return new Error(JSON.stringify(error)).message}catch(_unused){return new Error(String(error)).message}}(error)))};try{(element=document.createElement(tagName)).textContent=textContent}catch(e){return void logError(\"Cannot create element with tag name '\".concat(tagName,\"'\"),e)}var timerId,attributes=[];try{attributes=function(input){if(!input)return[];for(var NAME_VALUE_SEPARATOR=\"=\",PAIRS_SEPARATOR=\" \",SINGLE_QUOTE=\"'\",DOUBLE_QUOTE='\"',BACKSLASH=\"\\\\\",pairs=[],i=0;i1&&void 0!==arguments[1]?arguments[1]:{subtree:!0,childList:!0},timeout=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e4,documentObserver=new MutationObserver((function(mutations,observer){observer.disconnect(),callback(mutations,observer),observer.observe(document.documentElement,options)}));documentObserver.observe(document.documentElement,options),\"number\"==typeof timeout&&setTimeout((function(){return documentObserver.disconnect()}),timeout)}((function(mutations,observer){findParentAndAppendEl(parentSelector,element,cleanupDelayMs)&&observer.disconnect()}))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function trustedCreateElement(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,parentSelector,tagName){var attributePairs=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",textContent=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\",cleanupDelayMs=arguments.length>5&&void 0!==arguments[5]?arguments[5]:NaN;if(parentSelector&&tagName&&\"trusted-create-element-window\"!==window.name){var element,logError=function(prefix,error){logMessage(source,\"\".concat(prefix,\" due to \").concat(function(error){if(\"object\"==typeof(e=error)&&null!==e&&\"message\"in e&&\"string\"==typeof e.message)return error.message;var e;try{return new Error(JSON.stringify(error)).message}catch(_unused){return new Error(String(error)).message}}(error)))};try{(element=document.createElement(tagName)).textContent=textContent}catch(e){return void logError(\"Cannot create element with tag name '\".concat(tagName,\"'\"),e)}var timerId,attributes=[];try{attributes=function(input){if(!input)return[];for(var NAME_VALUE_SEPARATOR=\"=\",PAIRS_SEPARATOR=\" \",SINGLE_QUOTE=\"'\",DOUBLE_QUOTE='\"',BACKSLASH=\"\\\\\",pairs=[],i=0;i1&&void 0!==arguments[1]?arguments[1]:{subtree:!0,childList:!0},timeout=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e4,documentObserver=new MutationObserver((function(mutations,observer){observer.disconnect(),callback(mutations,observer),observer.observe(document.documentElement,options)}));documentObserver.observe(document.documentElement,options),\"number\"==typeof timeout&&setTimeout((function(){return documentObserver.disconnect()}),timeout)}((function(mutations,observer){findParentAndAppendEl(parentSelector,element,cleanupDelayMs)&&observer.disconnect()}))}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -617,7 +617,7 @@ "ubo-href-sanitizer.js", "ubo-href-sanitizer" ], - "scriptlet": "function hrefSanitizer(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector){var attribute=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"text\";if(selector){var regexpNotValidAtStart=/^(?:[\\0- \\x7F-\\xA9\\xAB-\\xB4\\xB6-\\xB9\\xBB-\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u036F\\u0375\\u0378\\u0379\\u037E\\u0380-\\u0385\\u0387\\u038B\\u038D\\u03A2\\u03F6\\u0482-\\u0489\\u0530\\u0557\\u0558\\u055A-\\u055F\\u0589-\\u05CF\\u05EB-\\u05EE\\u05F3-\\u061F\\u064B-\\u066D\\u0670\\u06D4\\u06D6-\\u06E4\\u06E7-\\u06ED\\u06F0-\\u06F9\\u06FD\\u06FE\\u0700-\\u070F\\u0711\\u0730-\\u074C\\u07A6-\\u07B0\\u07B2-\\u07C9\\u07EB-\\u07F3\\u07F6-\\u07F9\\u07FB-\\u07FF\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u083F\\u0859-\\u085F\\u086B-\\u086F\\u0888\\u088F-\\u089F\\u08CA-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962-\\u0970\\u0981-\\u0984\\u098D\\u098E\\u0991\\u0992\\u09A9\\u09B1\\u09B3-\\u09B5\\u09BA-\\u09BC\\u09BE-\\u09CD\\u09CF-\\u09DB\\u09DE\\u09E2-\\u09EF\\u09F2-\\u09FB\\u09FD-\\u0A04\\u0A0B-\\u0A0E\\u0A11\\u0A12\\u0A29\\u0A31\\u0A34\\u0A37\\u0A3A-\\u0A58\\u0A5D\\u0A5F-\\u0A71\\u0A75-\\u0A84\\u0A8E\\u0A92\\u0AA9\\u0AB1\\u0AB4\\u0ABA-\\u0ABC\\u0ABE-\\u0ACF\\u0AD1-\\u0ADF\\u0AE2-\\u0AF8\\u0AFA-\\u0B04\\u0B0D\\u0B0E\\u0B11\\u0B12\\u0B29\\u0B31\\u0B34\\u0B3A-\\u0B3C\\u0B3E-\\u0B5B\\u0B5E\\u0B62-\\u0B70\\u0B72-\\u0B82\\u0B84\\u0B8B-\\u0B8D\\u0B91\\u0B96-\\u0B98\\u0B9B\\u0B9D\\u0BA0-\\u0BA2\\u0BA5-\\u0BA7\\u0BAB-\\u0BAD\\u0BBA-\\u0BCF\\u0BD1-\\u0C04\\u0C0D\\u0C11\\u0C29\\u0C3A-\\u0C3C\\u0C3E-\\u0C57\\u0C5B\\u0C5C\\u0C5E\\u0C5F\\u0C62-\\u0C7F\\u0C81-\\u0C84\\u0C8D\\u0C91\\u0CA9\\u0CB4\\u0CBA-\\u0CBC\\u0CBE-\\u0CDC\\u0CDF\\u0CE2-\\u0CF0\\u0CF3-\\u0D03\\u0D0D\\u0D11\\u0D3B\\u0D3C\\u0D3E-\\u0D4D\\u0D4F-\\u0D53\\u0D57-\\u0D5E\\u0D62-\\u0D79\\u0D80-\\u0D84\\u0D97-\\u0D99\\u0DB2\\u0DBC\\u0DBE\\u0DBF\\u0DC7-\\u0E00\\u0E31\\u0E34-\\u0E3F\\u0E47-\\u0E80\\u0E83\\u0E85\\u0E8B\\u0EA4\\u0EA6\\u0EB1\\u0EB4-\\u0EBC\\u0EBE\\u0EBF\\u0EC5\\u0EC7-\\u0EDB\\u0EE0-\\u0EFF\\u0F01-\\u0F3F\\u0F48\\u0F6D-\\u0F87\\u0F8D-\\u0FFF\\u102B-\\u103E\\u1040-\\u104F\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F-\\u109F\\u10C6\\u10C8-\\u10CC\\u10CE\\u10CF\\u10FB\\u1249\\u124E\\u124F\\u1257\\u1259\\u125E\\u125F\\u1289\\u128E\\u128F\\u12B1\\u12B6\\u12B7\\u12BF\\u12C1\\u12C6\\u12C7\\u12D7\\u1311\\u1316\\u1317\\u135B-\\u137F\\u1390-\\u139F\\u13F6\\u13F7\\u13FE-\\u1400\\u166D\\u166E\\u1680\\u169B-\\u169F\\u16EB-\\u16F0\\u16F9-\\u16FF\\u1712-\\u171E\\u1732-\\u173F\\u1752-\\u175F\\u176D\\u1771-\\u177F\\u17B4-\\u17D6\\u17D8-\\u17DB\\u17DD-\\u181F\\u1879-\\u187F\\u1885\\u1886\\u18A9\\u18AB-\\u18AF\\u18F6-\\u18FF\\u191F-\\u194F\\u196E\\u196F\\u1975-\\u197F\\u19AC-\\u19AF\\u19CA-\\u19FF\\u1A17-\\u1A1F\\u1A55-\\u1AA6\\u1AA8-\\u1B04\\u1B34-\\u1B44\\u1B4D-\\u1B82\\u1BA1-\\u1BAD\\u1BB0-\\u1BB9\\u1BE6-\\u1BFF\\u1C24-\\u1C4C\\u1C50-\\u1C59\\u1C7E\\u1C7F\\u1C89-\\u1C8F\\u1CBB\\u1CBC\\u1CC0-\\u1CE8\\u1CED\\u1CF4\\u1CF7-\\u1CF9\\u1CFB-\\u1CFF\\u1DC0-\\u1DFF\\u1F16\\u1F17\\u1F1E\\u1F1F\\u1F46\\u1F47\\u1F4E\\u1F4F\\u1F58\\u1F5A\\u1F5C\\u1F5E\\u1F7E\\u1F7F\\u1FB5\\u1FBD\\u1FBF-\\u1FC1\\u1FC5\\u1FCD-\\u1FCF\\u1FD4\\u1FD5\\u1FDC-\\u1FDF\\u1FED-\\u1FF1\\u1FF5\\u1FFD-\\u2070\\u2072-\\u207E\\u2080-\\u208F\\u209D-\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F-\\u2182\\u2185-\\u2BFF\\u2CE5-\\u2CEA\\u2CEF-\\u2CF1\\u2CF4-\\u2CFF\\u2D26\\u2D28-\\u2D2C\\u2D2E\\u2D2F\\u2D68-\\u2D6E\\u2D70-\\u2D7F\\u2D97-\\u2D9F\\u2DA7\\u2DAF\\u2DB7\\u2DBF\\u2DC7\\u2DCF\\u2DD7\\u2DDF-\\u2E2E\\u2E30-\\u3004\\u3007-\\u3030\\u3036-\\u303A\\u303D-\\u3040\\u3097-\\u309C\\u30A0\\u30FB\\u3100-\\u3104\\u3130\\u318F-\\u319F\\u31C0-\\u31EF\\u3200-\\u33FF\\u4DC0-\\u4DFF\\uA48D-\\uA4CF\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA620-\\uA629\\uA62C-\\uA63F\\uA66F-\\uA67E\\uA69E\\uA69F\\uA6E6-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA7CB-\\uA7CF\\uA7D2\\uA7D4\\uA7DA-\\uA7F1\\uA802\\uA806\\uA80B\\uA823-\\uA83F\\uA874-\\uA881\\uA8B4-\\uA8F1\\uA8F8-\\uA8FA\\uA8FC\\uA8FF-\\uA909\\uA926-\\uA92F\\uA947-\\uA95F\\uA97D-\\uA983\\uA9B3-\\uA9CE\\uA9D0-\\uA9DF\\uA9E5\\uA9F0-\\uA9F9\\uA9FF\\uAA29-\\uAA3F\\uAA43\\uAA4C-\\uAA5F\\uAA77-\\uAA79\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAC3-\\uAADA\\uAADE\\uAADF\\uAAEB-\\uAAF1\\uAAF5-\\uAB00\\uAB07\\uAB08\\uAB0F\\uAB10\\uAB17-\\uAB1F\\uAB27\\uAB2F\\uAB5B\\uAB6A-\\uAB6F\\uABE3-\\uABFF\\uD7A4-\\uD7AF\\uD7C7-\\uD7CA\\uD7FC-\\uD7FF\\uE000-\\uF8FF\\uFA6E\\uFA6F\\uFADA-\\uFAFF\\uFB07-\\uFB12\\uFB18-\\uFB1C\\uFB1E\\uFB29\\uFB37\\uFB3D\\uFB3F\\uFB42\\uFB45\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDEF\\uFDFC-\\uFE6F\\uFE75\\uFEFD-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFBF-\\uFFC1\\uFFC8\\uFFC9\\uFFD0\\uFFD1\\uFFD8\\uFFD9\\uFFDD-\\uFFFF]|\\uD800[\\uDC0C\\uDC27\\uDC3B\\uDC3E\\uDC4E\\uDC4F\\uDC5E-\\uDC7F\\uDCFB-\\uDE7F\\uDE9D-\\uDE9F\\uDED1-\\uDEFF\\uDF20-\\uDF2C\\uDF41\\uDF4A-\\uDF4F\\uDF76-\\uDF7F\\uDF9E\\uDF9F\\uDFC4-\\uDFC7\\uDFD0-\\uDFFF]|\\uD801[\\uDC9E-\\uDCAF\\uDCD4-\\uDCD7\\uDCFC-\\uDCFF\\uDD28-\\uDD2F\\uDD64-\\uDD6F\\uDD7B\\uDD8B\\uDD93\\uDD96\\uDDA2\\uDDB2\\uDDBA\\uDDBD-\\uDDFF\\uDF37-\\uDF3F\\uDF56-\\uDF5F\\uDF68-\\uDF7F\\uDF86\\uDFB1\\uDFBB-\\uDFFF]|\\uD802[\\uDC06\\uDC07\\uDC09\\uDC36\\uDC39-\\uDC3B\\uDC3D\\uDC3E\\uDC56-\\uDC5F\\uDC77-\\uDC7F\\uDC9F-\\uDCDF\\uDCF3\\uDCF6-\\uDCFF\\uDD16-\\uDD1F\\uDD3A-\\uDD7F\\uDDB8-\\uDDBD\\uDDC0-\\uDDFF\\uDE01-\\uDE0F\\uDE14\\uDE18\\uDE36-\\uDE5F\\uDE7D-\\uDE7F\\uDE9D-\\uDEBF\\uDEC8\\uDEE5-\\uDEFF\\uDF36-\\uDF3F\\uDF56-\\uDF5F\\uDF73-\\uDF7F\\uDF92-\\uDFFF]|\\uD803[\\uDC49-\\uDC7F\\uDCB3-\\uDCBF\\uDCF3-\\uDCFF\\uDD24-\\uDE7F\\uDEAA-\\uDEAF\\uDEB2-\\uDEFF\\uDF1D-\\uDF26\\uDF28-\\uDF2F\\uDF46-\\uDF6F\\uDF82-\\uDFAF\\uDFC5-\\uDFDF\\uDFF7-\\uDFFF]|\\uD804[\\uDC00-\\uDC02\\uDC38-\\uDC70\\uDC73\\uDC74\\uDC76-\\uDC82\\uDCB0-\\uDCCF\\uDCE9-\\uDD02\\uDD27-\\uDD43\\uDD45\\uDD46\\uDD48-\\uDD4F\\uDD73-\\uDD75\\uDD77-\\uDD82\\uDDB3-\\uDDC0\\uDDC5-\\uDDD9\\uDDDB\\uDDDD-\\uDDFF\\uDE12\\uDE2C-\\uDE3E\\uDE41-\\uDE7F\\uDE87\\uDE89\\uDE8E\\uDE9E\\uDEA9-\\uDEAF\\uDEDF-\\uDF04\\uDF0D\\uDF0E\\uDF11\\uDF12\\uDF29\\uDF31\\uDF34\\uDF3A-\\uDF3C\\uDF3E-\\uDF4F\\uDF51-\\uDF5C\\uDF62-\\uDFFF]|\\uD805[\\uDC35-\\uDC46\\uDC4B-\\uDC5E\\uDC62-\\uDC7F\\uDCB0-\\uDCC3\\uDCC6\\uDCC8-\\uDD7F\\uDDAF-\\uDDD7\\uDDDC-\\uDDFF\\uDE30-\\uDE43\\uDE45-\\uDE7F\\uDEAB-\\uDEB7\\uDEB9-\\uDEFF\\uDF1B-\\uDF3F\\uDF47-\\uDFFF]|\\uD806[\\uDC2C-\\uDC9F\\uDCE0-\\uDCFE\\uDD07\\uDD08\\uDD0A\\uDD0B\\uDD14\\uDD17\\uDD30-\\uDD3E\\uDD40\\uDD42-\\uDD9F\\uDDA8\\uDDA9\\uDDD1-\\uDDE0\\uDDE2\\uDDE4-\\uDDFF\\uDE01-\\uDE0A\\uDE33-\\uDE39\\uDE3B-\\uDE4F\\uDE51-\\uDE5B\\uDE8A-\\uDE9C\\uDE9E-\\uDEAF\\uDEF9-\\uDFFF]|\\uD807[\\uDC09\\uDC2F-\\uDC3F\\uDC41-\\uDC71\\uDC90-\\uDCFF\\uDD07\\uDD0A\\uDD31-\\uDD45\\uDD47-\\uDD5F\\uDD66\\uDD69\\uDD8A-\\uDD97\\uDD99-\\uDEDF\\uDEF3-\\uDF01\\uDF03\\uDF11\\uDF34-\\uDFAF\\uDFB1-\\uDFFF]|\\uD808[\\uDF9A-\\uDFFF]|\\uD809[\\uDC00-\\uDC7F\\uDD44-\\uDFFF]|[\\uD80A\\uD80E-\\uD810\\uD812-\\uD819\\uD824-\\uD82A\\uD82D\\uD82E\\uD830-\\uD834\\uD836\\uD83C-\\uD83F\\uD87B-\\uD87D\\uD87F\\uD889-\\uDBFF][\\uDC00-\\uDFFF]|\\uD80B[\\uDC00-\\uDF8F\\uDFF1-\\uDFFF]|\\uD80D[\\uDC30-\\uDC40\\uDC47-\\uDFFF]|\\uD811[\\uDE47-\\uDFFF]|\\uD81A[\\uDE39-\\uDE3F\\uDE5F-\\uDE6F\\uDEBF-\\uDECF\\uDEEE-\\uDEFF\\uDF30-\\uDF3F\\uDF44-\\uDF62\\uDF78-\\uDF7C\\uDF90-\\uDFFF]|\\uD81B[\\uDC00-\\uDE3F\\uDE80-\\uDEFF\\uDF4B-\\uDF4F\\uDF51-\\uDF92\\uDFA0-\\uDFDF\\uDFE2\\uDFE4-\\uDFFF]|\\uD821[\\uDFF8-\\uDFFF]|\\uD823[\\uDCD6-\\uDCFF\\uDD09-\\uDFFF]|\\uD82B[\\uDC00-\\uDFEF\\uDFF4\\uDFFC\\uDFFF]|\\uD82C[\\uDD23-\\uDD31\\uDD33-\\uDD4F\\uDD53\\uDD54\\uDD56-\\uDD63\\uDD68-\\uDD6F\\uDEFC-\\uDFFF]|\\uD82F[\\uDC6B-\\uDC6F\\uDC7D-\\uDC7F\\uDC89-\\uDC8F\\uDC9A-\\uDFFF]|\\uD835[\\uDC55\\uDC9D\\uDCA0\\uDCA1\\uDCA3\\uDCA4\\uDCA7\\uDCA8\\uDCAD\\uDCBA\\uDCBC\\uDCC4\\uDD06\\uDD0B\\uDD0C\\uDD15\\uDD1D\\uDD3A\\uDD3F\\uDD45\\uDD47-\\uDD49\\uDD51\\uDEA6\\uDEA7\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3\\uDFCC-\\uDFFF]|\\uD837[\\uDC00-\\uDEFF\\uDF1F-\\uDF24\\uDF2B-\\uDFFF]|\\uD838[\\uDC00-\\uDC2F\\uDC6E-\\uDCFF\\uDD2D-\\uDD36\\uDD3E-\\uDD4D\\uDD4F-\\uDE8F\\uDEAE-\\uDEBF\\uDEEC-\\uDFFF]|\\uD839[\\uDC00-\\uDCCF\\uDCEC-\\uDFDF\\uDFE7\\uDFEC\\uDFEF\\uDFFF]|\\uD83A[\\uDCC5-\\uDCFF\\uDD44-\\uDD4A\\uDD4C-\\uDFFF]|\\uD83B[\\uDC00-\\uDDFF\\uDE04\\uDE20\\uDE23\\uDE25\\uDE26\\uDE28\\uDE33\\uDE38\\uDE3A\\uDE3C-\\uDE41\\uDE43-\\uDE46\\uDE48\\uDE4A\\uDE4C\\uDE50\\uDE53\\uDE55\\uDE56\\uDE58\\uDE5A\\uDE5C\\uDE5E\\uDE60\\uDE63\\uDE65\\uDE66\\uDE6B\\uDE73\\uDE78\\uDE7D\\uDE7F\\uDE8A\\uDE9C-\\uDEA0\\uDEA4\\uDEAA\\uDEBC-\\uDFFF]|\\uD869[\\uDEE0-\\uDEFF]|\\uD86D[\\uDF3A-\\uDF3F]|\\uD86E[\\uDC1E\\uDC1F]|\\uD873[\\uDEA2-\\uDEAF]|\\uD87A[\\uDFE1-\\uDFFF]|\\uD87E[\\uDE1E-\\uDFFF]|\\uD884[\\uDF4B-\\uDF4F]|\\uD888[\\uDFB0-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+/,regexpNotValidAtEnd=/(?:[\\0- \\x7F-\\xA9\\xAB-\\xB4\\xB6-\\xB9\\xBB-\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u036F\\u0375\\u0378\\u0379\\u037E\\u0380-\\u0385\\u0387\\u038B\\u038D\\u03A2\\u03F6\\u0482-\\u0489\\u0530\\u0557\\u0558\\u055A-\\u055F\\u0589-\\u05CF\\u05EB-\\u05EE\\u05F3-\\u061F\\u064B-\\u066D\\u0670\\u06D4\\u06D6-\\u06E4\\u06E7-\\u06ED\\u06F0-\\u06F9\\u06FD\\u06FE\\u0700-\\u070F\\u0711\\u0730-\\u074C\\u07A6-\\u07B0\\u07B2-\\u07C9\\u07EB-\\u07F3\\u07F6-\\u07F9\\u07FB-\\u07FF\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u083F\\u0859-\\u085F\\u086B-\\u086F\\u0888\\u088F-\\u089F\\u08CA-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962-\\u0970\\u0981-\\u0984\\u098D\\u098E\\u0991\\u0992\\u09A9\\u09B1\\u09B3-\\u09B5\\u09BA-\\u09BC\\u09BE-\\u09CD\\u09CF-\\u09DB\\u09DE\\u09E2-\\u09EF\\u09F2-\\u09FB\\u09FD-\\u0A04\\u0A0B-\\u0A0E\\u0A11\\u0A12\\u0A29\\u0A31\\u0A34\\u0A37\\u0A3A-\\u0A58\\u0A5D\\u0A5F-\\u0A71\\u0A75-\\u0A84\\u0A8E\\u0A92\\u0AA9\\u0AB1\\u0AB4\\u0ABA-\\u0ABC\\u0ABE-\\u0ACF\\u0AD1-\\u0ADF\\u0AE2-\\u0AF8\\u0AFA-\\u0B04\\u0B0D\\u0B0E\\u0B11\\u0B12\\u0B29\\u0B31\\u0B34\\u0B3A-\\u0B3C\\u0B3E-\\u0B5B\\u0B5E\\u0B62-\\u0B70\\u0B72-\\u0B82\\u0B84\\u0B8B-\\u0B8D\\u0B91\\u0B96-\\u0B98\\u0B9B\\u0B9D\\u0BA0-\\u0BA2\\u0BA5-\\u0BA7\\u0BAB-\\u0BAD\\u0BBA-\\u0BCF\\u0BD1-\\u0C04\\u0C0D\\u0C11\\u0C29\\u0C3A-\\u0C3C\\u0C3E-\\u0C57\\u0C5B\\u0C5C\\u0C5E\\u0C5F\\u0C62-\\u0C7F\\u0C81-\\u0C84\\u0C8D\\u0C91\\u0CA9\\u0CB4\\u0CBA-\\u0CBC\\u0CBE-\\u0CDC\\u0CDF\\u0CE2-\\u0CF0\\u0CF3-\\u0D03\\u0D0D\\u0D11\\u0D3B\\u0D3C\\u0D3E-\\u0D4D\\u0D4F-\\u0D53\\u0D57-\\u0D5E\\u0D62-\\u0D79\\u0D80-\\u0D84\\u0D97-\\u0D99\\u0DB2\\u0DBC\\u0DBE\\u0DBF\\u0DC7-\\u0E00\\u0E31\\u0E34-\\u0E3F\\u0E47-\\u0E80\\u0E83\\u0E85\\u0E8B\\u0EA4\\u0EA6\\u0EB1\\u0EB4-\\u0EBC\\u0EBE\\u0EBF\\u0EC5\\u0EC7-\\u0EDB\\u0EE0-\\u0EFF\\u0F01-\\u0F3F\\u0F48\\u0F6D-\\u0F87\\u0F8D-\\u0FFF\\u102B-\\u103E\\u1040-\\u104F\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F-\\u109F\\u10C6\\u10C8-\\u10CC\\u10CE\\u10CF\\u10FB\\u1249\\u124E\\u124F\\u1257\\u1259\\u125E\\u125F\\u1289\\u128E\\u128F\\u12B1\\u12B6\\u12B7\\u12BF\\u12C1\\u12C6\\u12C7\\u12D7\\u1311\\u1316\\u1317\\u135B-\\u137F\\u1390-\\u139F\\u13F6\\u13F7\\u13FE-\\u1400\\u166D\\u166E\\u1680\\u169B-\\u169F\\u16EB-\\u16F0\\u16F9-\\u16FF\\u1712-\\u171E\\u1732-\\u173F\\u1752-\\u175F\\u176D\\u1771-\\u177F\\u17B4-\\u17D6\\u17D8-\\u17DB\\u17DD-\\u181F\\u1879-\\u187F\\u1885\\u1886\\u18A9\\u18AB-\\u18AF\\u18F6-\\u18FF\\u191F-\\u194F\\u196E\\u196F\\u1975-\\u197F\\u19AC-\\u19AF\\u19CA-\\u19FF\\u1A17-\\u1A1F\\u1A55-\\u1AA6\\u1AA8-\\u1B04\\u1B34-\\u1B44\\u1B4D-\\u1B82\\u1BA1-\\u1BAD\\u1BB0-\\u1BB9\\u1BE6-\\u1BFF\\u1C24-\\u1C4C\\u1C50-\\u1C59\\u1C7E\\u1C7F\\u1C89-\\u1C8F\\u1CBB\\u1CBC\\u1CC0-\\u1CE8\\u1CED\\u1CF4\\u1CF7-\\u1CF9\\u1CFB-\\u1CFF\\u1DC0-\\u1DFF\\u1F16\\u1F17\\u1F1E\\u1F1F\\u1F46\\u1F47\\u1F4E\\u1F4F\\u1F58\\u1F5A\\u1F5C\\u1F5E\\u1F7E\\u1F7F\\u1FB5\\u1FBD\\u1FBF-\\u1FC1\\u1FC5\\u1FCD-\\u1FCF\\u1FD4\\u1FD5\\u1FDC-\\u1FDF\\u1FED-\\u1FF1\\u1FF5\\u1FFD-\\u2070\\u2072-\\u207E\\u2080-\\u208F\\u209D-\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F-\\u2182\\u2185-\\u2BFF\\u2CE5-\\u2CEA\\u2CEF-\\u2CF1\\u2CF4-\\u2CFF\\u2D26\\u2D28-\\u2D2C\\u2D2E\\u2D2F\\u2D68-\\u2D6E\\u2D70-\\u2D7F\\u2D97-\\u2D9F\\u2DA7\\u2DAF\\u2DB7\\u2DBF\\u2DC7\\u2DCF\\u2DD7\\u2DDF-\\u2E2E\\u2E30-\\u3004\\u3007-\\u3030\\u3036-\\u303A\\u303D-\\u3040\\u3097-\\u309C\\u30A0\\u30FB\\u3100-\\u3104\\u3130\\u318F-\\u319F\\u31C0-\\u31EF\\u3200-\\u33FF\\u4DC0-\\u4DFF\\uA48D-\\uA4CF\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA620-\\uA629\\uA62C-\\uA63F\\uA66F-\\uA67E\\uA69E\\uA69F\\uA6E6-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA7CB-\\uA7CF\\uA7D2\\uA7D4\\uA7DA-\\uA7F1\\uA802\\uA806\\uA80B\\uA823-\\uA83F\\uA874-\\uA881\\uA8B4-\\uA8F1\\uA8F8-\\uA8FA\\uA8FC\\uA8FF-\\uA909\\uA926-\\uA92F\\uA947-\\uA95F\\uA97D-\\uA983\\uA9B3-\\uA9CE\\uA9D0-\\uA9DF\\uA9E5\\uA9F0-\\uA9F9\\uA9FF\\uAA29-\\uAA3F\\uAA43\\uAA4C-\\uAA5F\\uAA77-\\uAA79\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAC3-\\uAADA\\uAADE\\uAADF\\uAAEB-\\uAAF1\\uAAF5-\\uAB00\\uAB07\\uAB08\\uAB0F\\uAB10\\uAB17-\\uAB1F\\uAB27\\uAB2F\\uAB5B\\uAB6A-\\uAB6F\\uABE3-\\uABFF\\uD7A4-\\uD7AF\\uD7C7-\\uD7CA\\uD7FC-\\uD7FF\\uE000-\\uF8FF\\uFA6E\\uFA6F\\uFADA-\\uFAFF\\uFB07-\\uFB12\\uFB18-\\uFB1C\\uFB1E\\uFB29\\uFB37\\uFB3D\\uFB3F\\uFB42\\uFB45\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDEF\\uFDFC-\\uFE6F\\uFE75\\uFEFD-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFBF-\\uFFC1\\uFFC8\\uFFC9\\uFFD0\\uFFD1\\uFFD8\\uFFD9\\uFFDD-\\uFFFF]|\\uD800[\\uDC0C\\uDC27\\uDC3B\\uDC3E\\uDC4E\\uDC4F\\uDC5E-\\uDC7F\\uDCFB-\\uDE7F\\uDE9D-\\uDE9F\\uDED1-\\uDEFF\\uDF20-\\uDF2C\\uDF41\\uDF4A-\\uDF4F\\uDF76-\\uDF7F\\uDF9E\\uDF9F\\uDFC4-\\uDFC7\\uDFD0-\\uDFFF]|\\uD801[\\uDC9E-\\uDCAF\\uDCD4-\\uDCD7\\uDCFC-\\uDCFF\\uDD28-\\uDD2F\\uDD64-\\uDD6F\\uDD7B\\uDD8B\\uDD93\\uDD96\\uDDA2\\uDDB2\\uDDBA\\uDDBD-\\uDDFF\\uDF37-\\uDF3F\\uDF56-\\uDF5F\\uDF68-\\uDF7F\\uDF86\\uDFB1\\uDFBB-\\uDFFF]|\\uD802[\\uDC06\\uDC07\\uDC09\\uDC36\\uDC39-\\uDC3B\\uDC3D\\uDC3E\\uDC56-\\uDC5F\\uDC77-\\uDC7F\\uDC9F-\\uDCDF\\uDCF3\\uDCF6-\\uDCFF\\uDD16-\\uDD1F\\uDD3A-\\uDD7F\\uDDB8-\\uDDBD\\uDDC0-\\uDDFF\\uDE01-\\uDE0F\\uDE14\\uDE18\\uDE36-\\uDE5F\\uDE7D-\\uDE7F\\uDE9D-\\uDEBF\\uDEC8\\uDEE5-\\uDEFF\\uDF36-\\uDF3F\\uDF56-\\uDF5F\\uDF73-\\uDF7F\\uDF92-\\uDFFF]|\\uD803[\\uDC49-\\uDC7F\\uDCB3-\\uDCBF\\uDCF3-\\uDCFF\\uDD24-\\uDE7F\\uDEAA-\\uDEAF\\uDEB2-\\uDEFF\\uDF1D-\\uDF26\\uDF28-\\uDF2F\\uDF46-\\uDF6F\\uDF82-\\uDFAF\\uDFC5-\\uDFDF\\uDFF7-\\uDFFF]|\\uD804[\\uDC00-\\uDC02\\uDC38-\\uDC70\\uDC73\\uDC74\\uDC76-\\uDC82\\uDCB0-\\uDCCF\\uDCE9-\\uDD02\\uDD27-\\uDD43\\uDD45\\uDD46\\uDD48-\\uDD4F\\uDD73-\\uDD75\\uDD77-\\uDD82\\uDDB3-\\uDDC0\\uDDC5-\\uDDD9\\uDDDB\\uDDDD-\\uDDFF\\uDE12\\uDE2C-\\uDE3E\\uDE41-\\uDE7F\\uDE87\\uDE89\\uDE8E\\uDE9E\\uDEA9-\\uDEAF\\uDEDF-\\uDF04\\uDF0D\\uDF0E\\uDF11\\uDF12\\uDF29\\uDF31\\uDF34\\uDF3A-\\uDF3C\\uDF3E-\\uDF4F\\uDF51-\\uDF5C\\uDF62-\\uDFFF]|\\uD805[\\uDC35-\\uDC46\\uDC4B-\\uDC5E\\uDC62-\\uDC7F\\uDCB0-\\uDCC3\\uDCC6\\uDCC8-\\uDD7F\\uDDAF-\\uDDD7\\uDDDC-\\uDDFF\\uDE30-\\uDE43\\uDE45-\\uDE7F\\uDEAB-\\uDEB7\\uDEB9-\\uDEFF\\uDF1B-\\uDF3F\\uDF47-\\uDFFF]|\\uD806[\\uDC2C-\\uDC9F\\uDCE0-\\uDCFE\\uDD07\\uDD08\\uDD0A\\uDD0B\\uDD14\\uDD17\\uDD30-\\uDD3E\\uDD40\\uDD42-\\uDD9F\\uDDA8\\uDDA9\\uDDD1-\\uDDE0\\uDDE2\\uDDE4-\\uDDFF\\uDE01-\\uDE0A\\uDE33-\\uDE39\\uDE3B-\\uDE4F\\uDE51-\\uDE5B\\uDE8A-\\uDE9C\\uDE9E-\\uDEAF\\uDEF9-\\uDFFF]|\\uD807[\\uDC09\\uDC2F-\\uDC3F\\uDC41-\\uDC71\\uDC90-\\uDCFF\\uDD07\\uDD0A\\uDD31-\\uDD45\\uDD47-\\uDD5F\\uDD66\\uDD69\\uDD8A-\\uDD97\\uDD99-\\uDEDF\\uDEF3-\\uDF01\\uDF03\\uDF11\\uDF34-\\uDFAF\\uDFB1-\\uDFFF]|\\uD808[\\uDF9A-\\uDFFF]|\\uD809[\\uDC00-\\uDC7F\\uDD44-\\uDFFF]|[\\uD80A\\uD80E-\\uD810\\uD812-\\uD819\\uD824-\\uD82A\\uD82D\\uD82E\\uD830-\\uD834\\uD836\\uD83C-\\uD83F\\uD87B-\\uD87D\\uD87F\\uD889-\\uDBFF][\\uDC00-\\uDFFF]|\\uD80B[\\uDC00-\\uDF8F\\uDFF1-\\uDFFF]|\\uD80D[\\uDC30-\\uDC40\\uDC47-\\uDFFF]|\\uD811[\\uDE47-\\uDFFF]|\\uD81A[\\uDE39-\\uDE3F\\uDE5F-\\uDE6F\\uDEBF-\\uDECF\\uDEEE-\\uDEFF\\uDF30-\\uDF3F\\uDF44-\\uDF62\\uDF78-\\uDF7C\\uDF90-\\uDFFF]|\\uD81B[\\uDC00-\\uDE3F\\uDE80-\\uDEFF\\uDF4B-\\uDF4F\\uDF51-\\uDF92\\uDFA0-\\uDFDF\\uDFE2\\uDFE4-\\uDFFF]|\\uD821[\\uDFF8-\\uDFFF]|\\uD823[\\uDCD6-\\uDCFF\\uDD09-\\uDFFF]|\\uD82B[\\uDC00-\\uDFEF\\uDFF4\\uDFFC\\uDFFF]|\\uD82C[\\uDD23-\\uDD31\\uDD33-\\uDD4F\\uDD53\\uDD54\\uDD56-\\uDD63\\uDD68-\\uDD6F\\uDEFC-\\uDFFF]|\\uD82F[\\uDC6B-\\uDC6F\\uDC7D-\\uDC7F\\uDC89-\\uDC8F\\uDC9A-\\uDFFF]|\\uD835[\\uDC55\\uDC9D\\uDCA0\\uDCA1\\uDCA3\\uDCA4\\uDCA7\\uDCA8\\uDCAD\\uDCBA\\uDCBC\\uDCC4\\uDD06\\uDD0B\\uDD0C\\uDD15\\uDD1D\\uDD3A\\uDD3F\\uDD45\\uDD47-\\uDD49\\uDD51\\uDEA6\\uDEA7\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3\\uDFCC-\\uDFFF]|\\uD837[\\uDC00-\\uDEFF\\uDF1F-\\uDF24\\uDF2B-\\uDFFF]|\\uD838[\\uDC00-\\uDC2F\\uDC6E-\\uDCFF\\uDD2D-\\uDD36\\uDD3E-\\uDD4D\\uDD4F-\\uDE8F\\uDEAE-\\uDEBF\\uDEEC-\\uDFFF]|\\uD839[\\uDC00-\\uDCCF\\uDCEC-\\uDFDF\\uDFE7\\uDFEC\\uDFEF\\uDFFF]|\\uD83A[\\uDCC5-\\uDCFF\\uDD44-\\uDD4A\\uDD4C-\\uDFFF]|\\uD83B[\\uDC00-\\uDDFF\\uDE04\\uDE20\\uDE23\\uDE25\\uDE26\\uDE28\\uDE33\\uDE38\\uDE3A\\uDE3C-\\uDE41\\uDE43-\\uDE46\\uDE48\\uDE4A\\uDE4C\\uDE50\\uDE53\\uDE55\\uDE56\\uDE58\\uDE5A\\uDE5C\\uDE5E\\uDE60\\uDE63\\uDE65\\uDE66\\uDE6B\\uDE73\\uDE78\\uDE7D\\uDE7F\\uDE8A\\uDE9C-\\uDEA0\\uDEA4\\uDEAA\\uDEBC-\\uDFFF]|\\uD869[\\uDEE0-\\uDEFF]|\\uD86D[\\uDF3A-\\uDF3F]|\\uD86E[\\uDC1E\\uDC1F]|\\uD873[\\uDEA2-\\uDEAF]|\\uD87A[\\uDFE1-\\uDFFF]|\\uD87E[\\uDE1E-\\uDFFF]|\\uD884[\\uDF4B-\\uDF4F]|\\uD888[\\uDFB0-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+$/,sanitize=function(elementSelector){var elements;try{elements=document.querySelectorAll(elementSelector)}catch(e){return void logMessage(source,'Invalid selector \"'.concat(elementSelector,'\"'))}elements.forEach((function(elem){try{if(\"a\"!==(element=elem).nodeName.toLowerCase()||!element.hasAttribute(\"href\"))return;var newHref=function(anchor,attr){if(\"text\"===attr)return anchor.textContent?anchor.textContent.replace(regexpNotValidAtStart,\"\").replace(regexpNotValidAtEnd,\"\"):\"\";if(attr.startsWith(\"?\"))try{return new URL(anchor.href,document.location.href).searchParams.get(attr.slice(1))||\"\"}catch(ex){return logMessage(source,\"Cannot retrieve the parameter '\".concat(attr.slice(1),\"' from the URL '\").concat(anchor.href)),\"\"}return attr.startsWith(\"[\")&&attr.endsWith(\"]\")&&anchor.getAttribute(attr.slice(1,-1))||\"\"}(elem,attribute),newValidHref=function(text){if(!text)return null;try{var _URL=new URL(text,document.location.href),href=_URL.href,protocol=_URL.protocol;return\"http:\"!==protocol&&\"https:\"!==protocol?(logMessage(source,'Protocol not allowed: \"'.concat(protocol,'\", from URL: \"').concat(href,'\"')),null):href}catch(_unused){return null}}(newHref);if(!newValidHref)return void logMessage(source,\"Invalid URL: \".concat(newHref));var oldHref=elem.href;elem.setAttribute(\"href\",newValidHref),newValidHref!==oldHref&&logMessage(source,'Sanitized \"'.concat(oldHref,'\" to \"').concat(newValidHref,'\".'))}catch(ex){logMessage(source,\"Failed to sanitize \".concat(elem,\".\"))}var element})),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)},run=function(){sanitize(selector),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}((function(){return sanitize(selector)}),!0)};\"loading\"===document.readyState?window.addEventListener(\"DOMContentLoaded\",run,{once:!0}):run()}else logMessage(source,\"Selector is required.\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function hrefSanitizer(source,args){function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,selector){var attribute=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"text\";if(selector){var regexpNotValidAtStart=/^(?:[\\0- \\x7F-\\xA9\\xAB-\\xB4\\xB6-\\xB9\\xBB-\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u036F\\u0375\\u0378\\u0379\\u037E\\u0380-\\u0385\\u0387\\u038B\\u038D\\u03A2\\u03F6\\u0482-\\u0489\\u0530\\u0557\\u0558\\u055A-\\u055F\\u0589-\\u05CF\\u05EB-\\u05EE\\u05F3-\\u061F\\u064B-\\u066D\\u0670\\u06D4\\u06D6-\\u06E4\\u06E7-\\u06ED\\u06F0-\\u06F9\\u06FD\\u06FE\\u0700-\\u070F\\u0711\\u0730-\\u074C\\u07A6-\\u07B0\\u07B2-\\u07C9\\u07EB-\\u07F3\\u07F6-\\u07F9\\u07FB-\\u07FF\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u083F\\u0859-\\u085F\\u086B-\\u086F\\u0888\\u088F-\\u089F\\u08CA-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962-\\u0970\\u0981-\\u0984\\u098D\\u098E\\u0991\\u0992\\u09A9\\u09B1\\u09B3-\\u09B5\\u09BA-\\u09BC\\u09BE-\\u09CD\\u09CF-\\u09DB\\u09DE\\u09E2-\\u09EF\\u09F2-\\u09FB\\u09FD-\\u0A04\\u0A0B-\\u0A0E\\u0A11\\u0A12\\u0A29\\u0A31\\u0A34\\u0A37\\u0A3A-\\u0A58\\u0A5D\\u0A5F-\\u0A71\\u0A75-\\u0A84\\u0A8E\\u0A92\\u0AA9\\u0AB1\\u0AB4\\u0ABA-\\u0ABC\\u0ABE-\\u0ACF\\u0AD1-\\u0ADF\\u0AE2-\\u0AF8\\u0AFA-\\u0B04\\u0B0D\\u0B0E\\u0B11\\u0B12\\u0B29\\u0B31\\u0B34\\u0B3A-\\u0B3C\\u0B3E-\\u0B5B\\u0B5E\\u0B62-\\u0B70\\u0B72-\\u0B82\\u0B84\\u0B8B-\\u0B8D\\u0B91\\u0B96-\\u0B98\\u0B9B\\u0B9D\\u0BA0-\\u0BA2\\u0BA5-\\u0BA7\\u0BAB-\\u0BAD\\u0BBA-\\u0BCF\\u0BD1-\\u0C04\\u0C0D\\u0C11\\u0C29\\u0C3A-\\u0C3C\\u0C3E-\\u0C57\\u0C5B\\u0C5C\\u0C5E\\u0C5F\\u0C62-\\u0C7F\\u0C81-\\u0C84\\u0C8D\\u0C91\\u0CA9\\u0CB4\\u0CBA-\\u0CBC\\u0CBE-\\u0CDC\\u0CDF\\u0CE2-\\u0CF0\\u0CF3-\\u0D03\\u0D0D\\u0D11\\u0D3B\\u0D3C\\u0D3E-\\u0D4D\\u0D4F-\\u0D53\\u0D57-\\u0D5E\\u0D62-\\u0D79\\u0D80-\\u0D84\\u0D97-\\u0D99\\u0DB2\\u0DBC\\u0DBE\\u0DBF\\u0DC7-\\u0E00\\u0E31\\u0E34-\\u0E3F\\u0E47-\\u0E80\\u0E83\\u0E85\\u0E8B\\u0EA4\\u0EA6\\u0EB1\\u0EB4-\\u0EBC\\u0EBE\\u0EBF\\u0EC5\\u0EC7-\\u0EDB\\u0EE0-\\u0EFF\\u0F01-\\u0F3F\\u0F48\\u0F6D-\\u0F87\\u0F8D-\\u0FFF\\u102B-\\u103E\\u1040-\\u104F\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F-\\u109F\\u10C6\\u10C8-\\u10CC\\u10CE\\u10CF\\u10FB\\u1249\\u124E\\u124F\\u1257\\u1259\\u125E\\u125F\\u1289\\u128E\\u128F\\u12B1\\u12B6\\u12B7\\u12BF\\u12C1\\u12C6\\u12C7\\u12D7\\u1311\\u1316\\u1317\\u135B-\\u137F\\u1390-\\u139F\\u13F6\\u13F7\\u13FE-\\u1400\\u166D\\u166E\\u1680\\u169B-\\u169F\\u16EB-\\u16F0\\u16F9-\\u16FF\\u1712-\\u171E\\u1732-\\u173F\\u1752-\\u175F\\u176D\\u1771-\\u177F\\u17B4-\\u17D6\\u17D8-\\u17DB\\u17DD-\\u181F\\u1879-\\u187F\\u1885\\u1886\\u18A9\\u18AB-\\u18AF\\u18F6-\\u18FF\\u191F-\\u194F\\u196E\\u196F\\u1975-\\u197F\\u19AC-\\u19AF\\u19CA-\\u19FF\\u1A17-\\u1A1F\\u1A55-\\u1AA6\\u1AA8-\\u1B04\\u1B34-\\u1B44\\u1B4D-\\u1B82\\u1BA1-\\u1BAD\\u1BB0-\\u1BB9\\u1BE6-\\u1BFF\\u1C24-\\u1C4C\\u1C50-\\u1C59\\u1C7E\\u1C7F\\u1C89-\\u1C8F\\u1CBB\\u1CBC\\u1CC0-\\u1CE8\\u1CED\\u1CF4\\u1CF7-\\u1CF9\\u1CFB-\\u1CFF\\u1DC0-\\u1DFF\\u1F16\\u1F17\\u1F1E\\u1F1F\\u1F46\\u1F47\\u1F4E\\u1F4F\\u1F58\\u1F5A\\u1F5C\\u1F5E\\u1F7E\\u1F7F\\u1FB5\\u1FBD\\u1FBF-\\u1FC1\\u1FC5\\u1FCD-\\u1FCF\\u1FD4\\u1FD5\\u1FDC-\\u1FDF\\u1FED-\\u1FF1\\u1FF5\\u1FFD-\\u2070\\u2072-\\u207E\\u2080-\\u208F\\u209D-\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F-\\u2182\\u2185-\\u2BFF\\u2CE5-\\u2CEA\\u2CEF-\\u2CF1\\u2CF4-\\u2CFF\\u2D26\\u2D28-\\u2D2C\\u2D2E\\u2D2F\\u2D68-\\u2D6E\\u2D70-\\u2D7F\\u2D97-\\u2D9F\\u2DA7\\u2DAF\\u2DB7\\u2DBF\\u2DC7\\u2DCF\\u2DD7\\u2DDF-\\u2E2E\\u2E30-\\u3004\\u3007-\\u3030\\u3036-\\u303A\\u303D-\\u3040\\u3097-\\u309C\\u30A0\\u30FB\\u3100-\\u3104\\u3130\\u318F-\\u319F\\u31C0-\\u31EF\\u3200-\\u33FF\\u4DC0-\\u4DFF\\uA48D-\\uA4CF\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA620-\\uA629\\uA62C-\\uA63F\\uA66F-\\uA67E\\uA69E\\uA69F\\uA6E6-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA7CB-\\uA7CF\\uA7D2\\uA7D4\\uA7DA-\\uA7F1\\uA802\\uA806\\uA80B\\uA823-\\uA83F\\uA874-\\uA881\\uA8B4-\\uA8F1\\uA8F8-\\uA8FA\\uA8FC\\uA8FF-\\uA909\\uA926-\\uA92F\\uA947-\\uA95F\\uA97D-\\uA983\\uA9B3-\\uA9CE\\uA9D0-\\uA9DF\\uA9E5\\uA9F0-\\uA9F9\\uA9FF\\uAA29-\\uAA3F\\uAA43\\uAA4C-\\uAA5F\\uAA77-\\uAA79\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAC3-\\uAADA\\uAADE\\uAADF\\uAAEB-\\uAAF1\\uAAF5-\\uAB00\\uAB07\\uAB08\\uAB0F\\uAB10\\uAB17-\\uAB1F\\uAB27\\uAB2F\\uAB5B\\uAB6A-\\uAB6F\\uABE3-\\uABFF\\uD7A4-\\uD7AF\\uD7C7-\\uD7CA\\uD7FC-\\uD7FF\\uE000-\\uF8FF\\uFA6E\\uFA6F\\uFADA-\\uFAFF\\uFB07-\\uFB12\\uFB18-\\uFB1C\\uFB1E\\uFB29\\uFB37\\uFB3D\\uFB3F\\uFB42\\uFB45\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDEF\\uFDFC-\\uFE6F\\uFE75\\uFEFD-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFBF-\\uFFC1\\uFFC8\\uFFC9\\uFFD0\\uFFD1\\uFFD8\\uFFD9\\uFFDD-\\uFFFF]|\\uD800[\\uDC0C\\uDC27\\uDC3B\\uDC3E\\uDC4E\\uDC4F\\uDC5E-\\uDC7F\\uDCFB-\\uDE7F\\uDE9D-\\uDE9F\\uDED1-\\uDEFF\\uDF20-\\uDF2C\\uDF41\\uDF4A-\\uDF4F\\uDF76-\\uDF7F\\uDF9E\\uDF9F\\uDFC4-\\uDFC7\\uDFD0-\\uDFFF]|\\uD801[\\uDC9E-\\uDCAF\\uDCD4-\\uDCD7\\uDCFC-\\uDCFF\\uDD28-\\uDD2F\\uDD64-\\uDD6F\\uDD7B\\uDD8B\\uDD93\\uDD96\\uDDA2\\uDDB2\\uDDBA\\uDDBD-\\uDDFF\\uDF37-\\uDF3F\\uDF56-\\uDF5F\\uDF68-\\uDF7F\\uDF86\\uDFB1\\uDFBB-\\uDFFF]|\\uD802[\\uDC06\\uDC07\\uDC09\\uDC36\\uDC39-\\uDC3B\\uDC3D\\uDC3E\\uDC56-\\uDC5F\\uDC77-\\uDC7F\\uDC9F-\\uDCDF\\uDCF3\\uDCF6-\\uDCFF\\uDD16-\\uDD1F\\uDD3A-\\uDD7F\\uDDB8-\\uDDBD\\uDDC0-\\uDDFF\\uDE01-\\uDE0F\\uDE14\\uDE18\\uDE36-\\uDE5F\\uDE7D-\\uDE7F\\uDE9D-\\uDEBF\\uDEC8\\uDEE5-\\uDEFF\\uDF36-\\uDF3F\\uDF56-\\uDF5F\\uDF73-\\uDF7F\\uDF92-\\uDFFF]|\\uD803[\\uDC49-\\uDC7F\\uDCB3-\\uDCBF\\uDCF3-\\uDCFF\\uDD24-\\uDE7F\\uDEAA-\\uDEAF\\uDEB2-\\uDEFF\\uDF1D-\\uDF26\\uDF28-\\uDF2F\\uDF46-\\uDF6F\\uDF82-\\uDFAF\\uDFC5-\\uDFDF\\uDFF7-\\uDFFF]|\\uD804[\\uDC00-\\uDC02\\uDC38-\\uDC70\\uDC73\\uDC74\\uDC76-\\uDC82\\uDCB0-\\uDCCF\\uDCE9-\\uDD02\\uDD27-\\uDD43\\uDD45\\uDD46\\uDD48-\\uDD4F\\uDD73-\\uDD75\\uDD77-\\uDD82\\uDDB3-\\uDDC0\\uDDC5-\\uDDD9\\uDDDB\\uDDDD-\\uDDFF\\uDE12\\uDE2C-\\uDE3E\\uDE41-\\uDE7F\\uDE87\\uDE89\\uDE8E\\uDE9E\\uDEA9-\\uDEAF\\uDEDF-\\uDF04\\uDF0D\\uDF0E\\uDF11\\uDF12\\uDF29\\uDF31\\uDF34\\uDF3A-\\uDF3C\\uDF3E-\\uDF4F\\uDF51-\\uDF5C\\uDF62-\\uDFFF]|\\uD805[\\uDC35-\\uDC46\\uDC4B-\\uDC5E\\uDC62-\\uDC7F\\uDCB0-\\uDCC3\\uDCC6\\uDCC8-\\uDD7F\\uDDAF-\\uDDD7\\uDDDC-\\uDDFF\\uDE30-\\uDE43\\uDE45-\\uDE7F\\uDEAB-\\uDEB7\\uDEB9-\\uDEFF\\uDF1B-\\uDF3F\\uDF47-\\uDFFF]|\\uD806[\\uDC2C-\\uDC9F\\uDCE0-\\uDCFE\\uDD07\\uDD08\\uDD0A\\uDD0B\\uDD14\\uDD17\\uDD30-\\uDD3E\\uDD40\\uDD42-\\uDD9F\\uDDA8\\uDDA9\\uDDD1-\\uDDE0\\uDDE2\\uDDE4-\\uDDFF\\uDE01-\\uDE0A\\uDE33-\\uDE39\\uDE3B-\\uDE4F\\uDE51-\\uDE5B\\uDE8A-\\uDE9C\\uDE9E-\\uDEAF\\uDEF9-\\uDFFF]|\\uD807[\\uDC09\\uDC2F-\\uDC3F\\uDC41-\\uDC71\\uDC90-\\uDCFF\\uDD07\\uDD0A\\uDD31-\\uDD45\\uDD47-\\uDD5F\\uDD66\\uDD69\\uDD8A-\\uDD97\\uDD99-\\uDEDF\\uDEF3-\\uDF01\\uDF03\\uDF11\\uDF34-\\uDFAF\\uDFB1-\\uDFFF]|\\uD808[\\uDF9A-\\uDFFF]|\\uD809[\\uDC00-\\uDC7F\\uDD44-\\uDFFF]|[\\uD80A\\uD80E-\\uD810\\uD812-\\uD819\\uD824-\\uD82A\\uD82D\\uD82E\\uD830-\\uD834\\uD836\\uD83C-\\uD83F\\uD87B-\\uD87D\\uD87F\\uD889-\\uDBFF][\\uDC00-\\uDFFF]|\\uD80B[\\uDC00-\\uDF8F\\uDFF1-\\uDFFF]|\\uD80D[\\uDC30-\\uDC40\\uDC47-\\uDFFF]|\\uD811[\\uDE47-\\uDFFF]|\\uD81A[\\uDE39-\\uDE3F\\uDE5F-\\uDE6F\\uDEBF-\\uDECF\\uDEEE-\\uDEFF\\uDF30-\\uDF3F\\uDF44-\\uDF62\\uDF78-\\uDF7C\\uDF90-\\uDFFF]|\\uD81B[\\uDC00-\\uDE3F\\uDE80-\\uDEFF\\uDF4B-\\uDF4F\\uDF51-\\uDF92\\uDFA0-\\uDFDF\\uDFE2\\uDFE4-\\uDFFF]|\\uD821[\\uDFF8-\\uDFFF]|\\uD823[\\uDCD6-\\uDCFF\\uDD09-\\uDFFF]|\\uD82B[\\uDC00-\\uDFEF\\uDFF4\\uDFFC\\uDFFF]|\\uD82C[\\uDD23-\\uDD31\\uDD33-\\uDD4F\\uDD53\\uDD54\\uDD56-\\uDD63\\uDD68-\\uDD6F\\uDEFC-\\uDFFF]|\\uD82F[\\uDC6B-\\uDC6F\\uDC7D-\\uDC7F\\uDC89-\\uDC8F\\uDC9A-\\uDFFF]|\\uD835[\\uDC55\\uDC9D\\uDCA0\\uDCA1\\uDCA3\\uDCA4\\uDCA7\\uDCA8\\uDCAD\\uDCBA\\uDCBC\\uDCC4\\uDD06\\uDD0B\\uDD0C\\uDD15\\uDD1D\\uDD3A\\uDD3F\\uDD45\\uDD47-\\uDD49\\uDD51\\uDEA6\\uDEA7\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3\\uDFCC-\\uDFFF]|\\uD837[\\uDC00-\\uDEFF\\uDF1F-\\uDF24\\uDF2B-\\uDFFF]|\\uD838[\\uDC00-\\uDC2F\\uDC6E-\\uDCFF\\uDD2D-\\uDD36\\uDD3E-\\uDD4D\\uDD4F-\\uDE8F\\uDEAE-\\uDEBF\\uDEEC-\\uDFFF]|\\uD839[\\uDC00-\\uDCCF\\uDCEC-\\uDFDF\\uDFE7\\uDFEC\\uDFEF\\uDFFF]|\\uD83A[\\uDCC5-\\uDCFF\\uDD44-\\uDD4A\\uDD4C-\\uDFFF]|\\uD83B[\\uDC00-\\uDDFF\\uDE04\\uDE20\\uDE23\\uDE25\\uDE26\\uDE28\\uDE33\\uDE38\\uDE3A\\uDE3C-\\uDE41\\uDE43-\\uDE46\\uDE48\\uDE4A\\uDE4C\\uDE50\\uDE53\\uDE55\\uDE56\\uDE58\\uDE5A\\uDE5C\\uDE5E\\uDE60\\uDE63\\uDE65\\uDE66\\uDE6B\\uDE73\\uDE78\\uDE7D\\uDE7F\\uDE8A\\uDE9C-\\uDEA0\\uDEA4\\uDEAA\\uDEBC-\\uDFFF]|\\uD869[\\uDEE0-\\uDEFF]|\\uD86D[\\uDF3A-\\uDF3F]|\\uD86E[\\uDC1E\\uDC1F]|\\uD873[\\uDEA2-\\uDEAF]|\\uD87A[\\uDFE1-\\uDFFF]|\\uD87E[\\uDE1E-\\uDFFF]|\\uD884[\\uDF4B-\\uDF4F]|\\uD888[\\uDFB0-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+/,regexpNotValidAtEnd=/(?:[\\0- \\x7F-\\xA9\\xAB-\\xB4\\xB6-\\xB9\\xBB-\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u036F\\u0375\\u0378\\u0379\\u037E\\u0380-\\u0385\\u0387\\u038B\\u038D\\u03A2\\u03F6\\u0482-\\u0489\\u0530\\u0557\\u0558\\u055A-\\u055F\\u0589-\\u05CF\\u05EB-\\u05EE\\u05F3-\\u061F\\u064B-\\u066D\\u0670\\u06D4\\u06D6-\\u06E4\\u06E7-\\u06ED\\u06F0-\\u06F9\\u06FD\\u06FE\\u0700-\\u070F\\u0711\\u0730-\\u074C\\u07A6-\\u07B0\\u07B2-\\u07C9\\u07EB-\\u07F3\\u07F6-\\u07F9\\u07FB-\\u07FF\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u083F\\u0859-\\u085F\\u086B-\\u086F\\u0888\\u088F-\\u089F\\u08CA-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962-\\u0970\\u0981-\\u0984\\u098D\\u098E\\u0991\\u0992\\u09A9\\u09B1\\u09B3-\\u09B5\\u09BA-\\u09BC\\u09BE-\\u09CD\\u09CF-\\u09DB\\u09DE\\u09E2-\\u09EF\\u09F2-\\u09FB\\u09FD-\\u0A04\\u0A0B-\\u0A0E\\u0A11\\u0A12\\u0A29\\u0A31\\u0A34\\u0A37\\u0A3A-\\u0A58\\u0A5D\\u0A5F-\\u0A71\\u0A75-\\u0A84\\u0A8E\\u0A92\\u0AA9\\u0AB1\\u0AB4\\u0ABA-\\u0ABC\\u0ABE-\\u0ACF\\u0AD1-\\u0ADF\\u0AE2-\\u0AF8\\u0AFA-\\u0B04\\u0B0D\\u0B0E\\u0B11\\u0B12\\u0B29\\u0B31\\u0B34\\u0B3A-\\u0B3C\\u0B3E-\\u0B5B\\u0B5E\\u0B62-\\u0B70\\u0B72-\\u0B82\\u0B84\\u0B8B-\\u0B8D\\u0B91\\u0B96-\\u0B98\\u0B9B\\u0B9D\\u0BA0-\\u0BA2\\u0BA5-\\u0BA7\\u0BAB-\\u0BAD\\u0BBA-\\u0BCF\\u0BD1-\\u0C04\\u0C0D\\u0C11\\u0C29\\u0C3A-\\u0C3C\\u0C3E-\\u0C57\\u0C5B\\u0C5C\\u0C5E\\u0C5F\\u0C62-\\u0C7F\\u0C81-\\u0C84\\u0C8D\\u0C91\\u0CA9\\u0CB4\\u0CBA-\\u0CBC\\u0CBE-\\u0CDC\\u0CDF\\u0CE2-\\u0CF0\\u0CF3-\\u0D03\\u0D0D\\u0D11\\u0D3B\\u0D3C\\u0D3E-\\u0D4D\\u0D4F-\\u0D53\\u0D57-\\u0D5E\\u0D62-\\u0D79\\u0D80-\\u0D84\\u0D97-\\u0D99\\u0DB2\\u0DBC\\u0DBE\\u0DBF\\u0DC7-\\u0E00\\u0E31\\u0E34-\\u0E3F\\u0E47-\\u0E80\\u0E83\\u0E85\\u0E8B\\u0EA4\\u0EA6\\u0EB1\\u0EB4-\\u0EBC\\u0EBE\\u0EBF\\u0EC5\\u0EC7-\\u0EDB\\u0EE0-\\u0EFF\\u0F01-\\u0F3F\\u0F48\\u0F6D-\\u0F87\\u0F8D-\\u0FFF\\u102B-\\u103E\\u1040-\\u104F\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F-\\u109F\\u10C6\\u10C8-\\u10CC\\u10CE\\u10CF\\u10FB\\u1249\\u124E\\u124F\\u1257\\u1259\\u125E\\u125F\\u1289\\u128E\\u128F\\u12B1\\u12B6\\u12B7\\u12BF\\u12C1\\u12C6\\u12C7\\u12D7\\u1311\\u1316\\u1317\\u135B-\\u137F\\u1390-\\u139F\\u13F6\\u13F7\\u13FE-\\u1400\\u166D\\u166E\\u1680\\u169B-\\u169F\\u16EB-\\u16F0\\u16F9-\\u16FF\\u1712-\\u171E\\u1732-\\u173F\\u1752-\\u175F\\u176D\\u1771-\\u177F\\u17B4-\\u17D6\\u17D8-\\u17DB\\u17DD-\\u181F\\u1879-\\u187F\\u1885\\u1886\\u18A9\\u18AB-\\u18AF\\u18F6-\\u18FF\\u191F-\\u194F\\u196E\\u196F\\u1975-\\u197F\\u19AC-\\u19AF\\u19CA-\\u19FF\\u1A17-\\u1A1F\\u1A55-\\u1AA6\\u1AA8-\\u1B04\\u1B34-\\u1B44\\u1B4D-\\u1B82\\u1BA1-\\u1BAD\\u1BB0-\\u1BB9\\u1BE6-\\u1BFF\\u1C24-\\u1C4C\\u1C50-\\u1C59\\u1C7E\\u1C7F\\u1C89-\\u1C8F\\u1CBB\\u1CBC\\u1CC0-\\u1CE8\\u1CED\\u1CF4\\u1CF7-\\u1CF9\\u1CFB-\\u1CFF\\u1DC0-\\u1DFF\\u1F16\\u1F17\\u1F1E\\u1F1F\\u1F46\\u1F47\\u1F4E\\u1F4F\\u1F58\\u1F5A\\u1F5C\\u1F5E\\u1F7E\\u1F7F\\u1FB5\\u1FBD\\u1FBF-\\u1FC1\\u1FC5\\u1FCD-\\u1FCF\\u1FD4\\u1FD5\\u1FDC-\\u1FDF\\u1FED-\\u1FF1\\u1FF5\\u1FFD-\\u2070\\u2072-\\u207E\\u2080-\\u208F\\u209D-\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F-\\u2182\\u2185-\\u2BFF\\u2CE5-\\u2CEA\\u2CEF-\\u2CF1\\u2CF4-\\u2CFF\\u2D26\\u2D28-\\u2D2C\\u2D2E\\u2D2F\\u2D68-\\u2D6E\\u2D70-\\u2D7F\\u2D97-\\u2D9F\\u2DA7\\u2DAF\\u2DB7\\u2DBF\\u2DC7\\u2DCF\\u2DD7\\u2DDF-\\u2E2E\\u2E30-\\u3004\\u3007-\\u3030\\u3036-\\u303A\\u303D-\\u3040\\u3097-\\u309C\\u30A0\\u30FB\\u3100-\\u3104\\u3130\\u318F-\\u319F\\u31C0-\\u31EF\\u3200-\\u33FF\\u4DC0-\\u4DFF\\uA48D-\\uA4CF\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA620-\\uA629\\uA62C-\\uA63F\\uA66F-\\uA67E\\uA69E\\uA69F\\uA6E6-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA7CB-\\uA7CF\\uA7D2\\uA7D4\\uA7DA-\\uA7F1\\uA802\\uA806\\uA80B\\uA823-\\uA83F\\uA874-\\uA881\\uA8B4-\\uA8F1\\uA8F8-\\uA8FA\\uA8FC\\uA8FF-\\uA909\\uA926-\\uA92F\\uA947-\\uA95F\\uA97D-\\uA983\\uA9B3-\\uA9CE\\uA9D0-\\uA9DF\\uA9E5\\uA9F0-\\uA9F9\\uA9FF\\uAA29-\\uAA3F\\uAA43\\uAA4C-\\uAA5F\\uAA77-\\uAA79\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAC3-\\uAADA\\uAADE\\uAADF\\uAAEB-\\uAAF1\\uAAF5-\\uAB00\\uAB07\\uAB08\\uAB0F\\uAB10\\uAB17-\\uAB1F\\uAB27\\uAB2F\\uAB5B\\uAB6A-\\uAB6F\\uABE3-\\uABFF\\uD7A4-\\uD7AF\\uD7C7-\\uD7CA\\uD7FC-\\uD7FF\\uE000-\\uF8FF\\uFA6E\\uFA6F\\uFADA-\\uFAFF\\uFB07-\\uFB12\\uFB18-\\uFB1C\\uFB1E\\uFB29\\uFB37\\uFB3D\\uFB3F\\uFB42\\uFB45\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDEF\\uFDFC-\\uFE6F\\uFE75\\uFEFD-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFBF-\\uFFC1\\uFFC8\\uFFC9\\uFFD0\\uFFD1\\uFFD8\\uFFD9\\uFFDD-\\uFFFF]|\\uD800[\\uDC0C\\uDC27\\uDC3B\\uDC3E\\uDC4E\\uDC4F\\uDC5E-\\uDC7F\\uDCFB-\\uDE7F\\uDE9D-\\uDE9F\\uDED1-\\uDEFF\\uDF20-\\uDF2C\\uDF41\\uDF4A-\\uDF4F\\uDF76-\\uDF7F\\uDF9E\\uDF9F\\uDFC4-\\uDFC7\\uDFD0-\\uDFFF]|\\uD801[\\uDC9E-\\uDCAF\\uDCD4-\\uDCD7\\uDCFC-\\uDCFF\\uDD28-\\uDD2F\\uDD64-\\uDD6F\\uDD7B\\uDD8B\\uDD93\\uDD96\\uDDA2\\uDDB2\\uDDBA\\uDDBD-\\uDDFF\\uDF37-\\uDF3F\\uDF56-\\uDF5F\\uDF68-\\uDF7F\\uDF86\\uDFB1\\uDFBB-\\uDFFF]|\\uD802[\\uDC06\\uDC07\\uDC09\\uDC36\\uDC39-\\uDC3B\\uDC3D\\uDC3E\\uDC56-\\uDC5F\\uDC77-\\uDC7F\\uDC9F-\\uDCDF\\uDCF3\\uDCF6-\\uDCFF\\uDD16-\\uDD1F\\uDD3A-\\uDD7F\\uDDB8-\\uDDBD\\uDDC0-\\uDDFF\\uDE01-\\uDE0F\\uDE14\\uDE18\\uDE36-\\uDE5F\\uDE7D-\\uDE7F\\uDE9D-\\uDEBF\\uDEC8\\uDEE5-\\uDEFF\\uDF36-\\uDF3F\\uDF56-\\uDF5F\\uDF73-\\uDF7F\\uDF92-\\uDFFF]|\\uD803[\\uDC49-\\uDC7F\\uDCB3-\\uDCBF\\uDCF3-\\uDCFF\\uDD24-\\uDE7F\\uDEAA-\\uDEAF\\uDEB2-\\uDEFF\\uDF1D-\\uDF26\\uDF28-\\uDF2F\\uDF46-\\uDF6F\\uDF82-\\uDFAF\\uDFC5-\\uDFDF\\uDFF7-\\uDFFF]|\\uD804[\\uDC00-\\uDC02\\uDC38-\\uDC70\\uDC73\\uDC74\\uDC76-\\uDC82\\uDCB0-\\uDCCF\\uDCE9-\\uDD02\\uDD27-\\uDD43\\uDD45\\uDD46\\uDD48-\\uDD4F\\uDD73-\\uDD75\\uDD77-\\uDD82\\uDDB3-\\uDDC0\\uDDC5-\\uDDD9\\uDDDB\\uDDDD-\\uDDFF\\uDE12\\uDE2C-\\uDE3E\\uDE41-\\uDE7F\\uDE87\\uDE89\\uDE8E\\uDE9E\\uDEA9-\\uDEAF\\uDEDF-\\uDF04\\uDF0D\\uDF0E\\uDF11\\uDF12\\uDF29\\uDF31\\uDF34\\uDF3A-\\uDF3C\\uDF3E-\\uDF4F\\uDF51-\\uDF5C\\uDF62-\\uDFFF]|\\uD805[\\uDC35-\\uDC46\\uDC4B-\\uDC5E\\uDC62-\\uDC7F\\uDCB0-\\uDCC3\\uDCC6\\uDCC8-\\uDD7F\\uDDAF-\\uDDD7\\uDDDC-\\uDDFF\\uDE30-\\uDE43\\uDE45-\\uDE7F\\uDEAB-\\uDEB7\\uDEB9-\\uDEFF\\uDF1B-\\uDF3F\\uDF47-\\uDFFF]|\\uD806[\\uDC2C-\\uDC9F\\uDCE0-\\uDCFE\\uDD07\\uDD08\\uDD0A\\uDD0B\\uDD14\\uDD17\\uDD30-\\uDD3E\\uDD40\\uDD42-\\uDD9F\\uDDA8\\uDDA9\\uDDD1-\\uDDE0\\uDDE2\\uDDE4-\\uDDFF\\uDE01-\\uDE0A\\uDE33-\\uDE39\\uDE3B-\\uDE4F\\uDE51-\\uDE5B\\uDE8A-\\uDE9C\\uDE9E-\\uDEAF\\uDEF9-\\uDFFF]|\\uD807[\\uDC09\\uDC2F-\\uDC3F\\uDC41-\\uDC71\\uDC90-\\uDCFF\\uDD07\\uDD0A\\uDD31-\\uDD45\\uDD47-\\uDD5F\\uDD66\\uDD69\\uDD8A-\\uDD97\\uDD99-\\uDEDF\\uDEF3-\\uDF01\\uDF03\\uDF11\\uDF34-\\uDFAF\\uDFB1-\\uDFFF]|\\uD808[\\uDF9A-\\uDFFF]|\\uD809[\\uDC00-\\uDC7F\\uDD44-\\uDFFF]|[\\uD80A\\uD80E-\\uD810\\uD812-\\uD819\\uD824-\\uD82A\\uD82D\\uD82E\\uD830-\\uD834\\uD836\\uD83C-\\uD83F\\uD87B-\\uD87D\\uD87F\\uD889-\\uDBFF][\\uDC00-\\uDFFF]|\\uD80B[\\uDC00-\\uDF8F\\uDFF1-\\uDFFF]|\\uD80D[\\uDC30-\\uDC40\\uDC47-\\uDFFF]|\\uD811[\\uDE47-\\uDFFF]|\\uD81A[\\uDE39-\\uDE3F\\uDE5F-\\uDE6F\\uDEBF-\\uDECF\\uDEEE-\\uDEFF\\uDF30-\\uDF3F\\uDF44-\\uDF62\\uDF78-\\uDF7C\\uDF90-\\uDFFF]|\\uD81B[\\uDC00-\\uDE3F\\uDE80-\\uDEFF\\uDF4B-\\uDF4F\\uDF51-\\uDF92\\uDFA0-\\uDFDF\\uDFE2\\uDFE4-\\uDFFF]|\\uD821[\\uDFF8-\\uDFFF]|\\uD823[\\uDCD6-\\uDCFF\\uDD09-\\uDFFF]|\\uD82B[\\uDC00-\\uDFEF\\uDFF4\\uDFFC\\uDFFF]|\\uD82C[\\uDD23-\\uDD31\\uDD33-\\uDD4F\\uDD53\\uDD54\\uDD56-\\uDD63\\uDD68-\\uDD6F\\uDEFC-\\uDFFF]|\\uD82F[\\uDC6B-\\uDC6F\\uDC7D-\\uDC7F\\uDC89-\\uDC8F\\uDC9A-\\uDFFF]|\\uD835[\\uDC55\\uDC9D\\uDCA0\\uDCA1\\uDCA3\\uDCA4\\uDCA7\\uDCA8\\uDCAD\\uDCBA\\uDCBC\\uDCC4\\uDD06\\uDD0B\\uDD0C\\uDD15\\uDD1D\\uDD3A\\uDD3F\\uDD45\\uDD47-\\uDD49\\uDD51\\uDEA6\\uDEA7\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3\\uDFCC-\\uDFFF]|\\uD837[\\uDC00-\\uDEFF\\uDF1F-\\uDF24\\uDF2B-\\uDFFF]|\\uD838[\\uDC00-\\uDC2F\\uDC6E-\\uDCFF\\uDD2D-\\uDD36\\uDD3E-\\uDD4D\\uDD4F-\\uDE8F\\uDEAE-\\uDEBF\\uDEEC-\\uDFFF]|\\uD839[\\uDC00-\\uDCCF\\uDCEC-\\uDFDF\\uDFE7\\uDFEC\\uDFEF\\uDFFF]|\\uD83A[\\uDCC5-\\uDCFF\\uDD44-\\uDD4A\\uDD4C-\\uDFFF]|\\uD83B[\\uDC00-\\uDDFF\\uDE04\\uDE20\\uDE23\\uDE25\\uDE26\\uDE28\\uDE33\\uDE38\\uDE3A\\uDE3C-\\uDE41\\uDE43-\\uDE46\\uDE48\\uDE4A\\uDE4C\\uDE50\\uDE53\\uDE55\\uDE56\\uDE58\\uDE5A\\uDE5C\\uDE5E\\uDE60\\uDE63\\uDE65\\uDE66\\uDE6B\\uDE73\\uDE78\\uDE7D\\uDE7F\\uDE8A\\uDE9C-\\uDEA0\\uDEA4\\uDEAA\\uDEBC-\\uDFFF]|\\uD869[\\uDEE0-\\uDEFF]|\\uD86D[\\uDF3A-\\uDF3F]|\\uD86E[\\uDC1E\\uDC1F]|\\uD873[\\uDEA2-\\uDEAF]|\\uD87A[\\uDFE1-\\uDFFF]|\\uD87E[\\uDE1E-\\uDFFF]|\\uD884[\\uDF4B-\\uDF4F]|\\uD888[\\uDFB0-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+$/,sanitize=function(elementSelector){var elements;try{elements=document.querySelectorAll(elementSelector)}catch(e){return void logMessage(source,'Invalid selector \"'.concat(elementSelector,'\"'))}elements.forEach((function(elem){try{if(\"a\"!==(element=elem).nodeName.toLowerCase()||!element.hasAttribute(\"href\"))return;var newHref=function(anchor,attr){if(\"text\"===attr)return anchor.textContent?anchor.textContent.replace(regexpNotValidAtStart,\"\").replace(regexpNotValidAtEnd,\"\"):\"\";if(attr.startsWith(\"?\"))try{return new URL(anchor.href,document.location.href).searchParams.get(attr.slice(1))||\"\"}catch(ex){return logMessage(source,\"Cannot retrieve the parameter '\".concat(attr.slice(1),\"' from the URL '\").concat(anchor.href)),\"\"}return attr.startsWith(\"[\")&&attr.endsWith(\"]\")&&anchor.getAttribute(attr.slice(1,-1))||\"\"}(elem,attribute),newValidHref=function(text){if(!text)return null;try{var _URL=new URL(text,document.location.href),href=_URL.href,protocol=_URL.protocol;return\"http:\"!==protocol&&\"https:\"!==protocol?(logMessage(source,'Protocol not allowed: \"'.concat(protocol,'\", from URL: \"').concat(href,'\"')),null):href}catch(_unused){return null}}(newHref);if(!newValidHref)return void logMessage(source,\"Invalid URL: \".concat(newHref));var oldHref=elem.href;elem.setAttribute(\"href\",newValidHref),newValidHref!==oldHref&&logMessage(source,'Sanitized \"'.concat(oldHref,'\" to \"').concat(newValidHref,'\".'))}catch(ex){logMessage(source,\"Failed to sanitize \".concat(elem,\".\"))}var element})),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)},run=function(){sanitize(selector),function(callback){var cb,delay,savedArgs,wait,wrapper,observeAttrs=arguments.length>1&&void 0!==arguments[1]&&arguments[1],attrsToObserve=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],observer=new MutationObserver((cb=callbackWrapper,delay=20,wait=!1,wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];wait?savedArgs=args:(cb(...args),wait=!0,setTimeout((function(){wait=!1,savedArgs&&(wrapper(...savedArgs),savedArgs=null)}),delay))},wrapper)),connect=function(){attrsToObserve.length>0?observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs,attributeFilter:attrsToObserve}):observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:observeAttrs})},disconnect=function(){observer.disconnect()};function callbackWrapper(){disconnect(),callback(),connect()}connect()}((function(){return sanitize(selector)}),!0)};\"loading\"===document.readyState?window.addEventListener(\"DOMContentLoaded\",run,{once:!0}):run()}else logMessage(source,\"Selector is required.\")}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -626,19 +626,19 @@ "ubo-json-prune-fetch-response.js", "ubo-json-prune-fetch-response" ], - "scriptlet": "function jsonPruneFetchResponse(source,args){function hit(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex;source.ruleText.includes(\"#%#//\")?ruleStartIndex=source.ruleText.indexOf(\"#%#//\"):source.ruleText.includes(\"##+js\")&&(ruleStartIndex=source.ruleText.indexOf(\"##+js\"));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function getPrunePath(props){return\"string\"==typeof props&&void 0!==props&&\"\"!==props?props.split(/ +/):[]}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove,obligatoryProps){var propsToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",stack=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response){var prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(obligatoryProps),nativeStringify=window.JSON.stringify,nativeRequestClone=window.Request.prototype.clone,nativeResponseClone=window.Response.prototype.clone,nativeFetch=window.fetch,fetchHandler={apply:async function(target,thisArg,args){var originalResponse,clonedResponse,json,fetchData=function(args,nativeRequestClone){var fetchUrl,fetchInit,request,entries,fetchPropsObj={},resource=args[0];if(resource instanceof Request){var realData=nativeRequestClone.call(resource),requestData=(request=realData,entries=[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].map((function(key){return[key,request[key]]})),Object.fromEntries(entries));fetchUrl=requestData.url,fetchInit=requestData}else fetchUrl=resource,fetchInit=args[1];return fetchPropsObj.url=fetchUrl,fetchInit instanceof Object&&Object.keys(fetchInit).forEach((function(prop){fetchPropsObj[prop]=fetchInit[prop]})),fetchPropsObj}(args,nativeRequestClone);if(!function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,fetchData))return Reflect.apply(target,thisArg,args);try{originalResponse=await nativeFetch.apply(null,args),clonedResponse=nativeResponseClone.call(originalResponse)}catch(_unused){return logMessage(source,\"Could not make an original fetch request: \".concat(fetchData.url)),Reflect.apply(target,thisArg,args)}try{json=await originalResponse.json()}catch(e){var message=\"Response body can't be converted to json: \".concat(objectToString(fetchData));return logMessage(source,message),clonedResponse}var modifiedJson=function(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function objectToString(obj){return obj&&\"object\"==typeof obj?function(obj){return 0===Object.keys(obj).length&&!obj.prototype}(obj)?\"{}\":Object.entries(obj).map((function(pair){var key=pair[0],value=pair[1],recordValueStr=value;return value instanceof Object&&(recordValueStr=\"{ \".concat(objectToString(value),\" }\")),\"\".concat(key,':\"').concat(recordValueStr,'\"')})).join(\" \"):String(obj)}function getPrunePath(props){return\"string\"==typeof props&&void 0!==props&&\"\"!==props?props.split(/ +/):[]}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove,obligatoryProps){var propsToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",stack=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(\"undefined\"!=typeof fetch&&\"undefined\"!=typeof Proxy&&\"undefined\"!=typeof Response){var prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(obligatoryProps),nativeStringify=window.JSON.stringify,nativeRequestClone=window.Request.prototype.clone,nativeResponseClone=window.Response.prototype.clone,nativeFetch=window.fetch,fetchHandler={apply:async function(target,thisArg,args){var originalResponse,clonedResponse,json,fetchData=function(args,nativeRequestClone){var fetchUrl,fetchInit,request,entries,fetchPropsObj={},resource=args[0];if(resource instanceof Request){var realData=nativeRequestClone.call(resource),requestData=(request=realData,entries=[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].map((function(key){return[key,request[key]]})),Object.fromEntries(entries));fetchUrl=requestData.url,fetchInit=requestData}else fetchUrl=resource,fetchInit=args[1];return fetchPropsObj.url=fetchUrl,fetchInit instanceof Object&&Object.keys(fetchInit).forEach((function(prop){fetchPropsObj[prop]=fetchInit[prop]})),fetchPropsObj}(args,nativeRequestClone);if(!function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,fetchData))return Reflect.apply(target,thisArg,args);try{originalResponse=await nativeFetch.apply(null,args),clonedResponse=nativeResponseClone.call(originalResponse)}catch(_unused){return logMessage(source,\"Could not make an original fetch request: \".concat(fetchData.url)),Reflect.apply(target,thisArg,args)}try{json=await originalResponse.json()}catch(e){var message=\"Response body can't be converted to json: \".concat(objectToString(fetchData));return logMessage(source,message),clonedResponse}var modifiedJson=function(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function isValueMatched(value,matcher){return\"function\"!=typeof value&&(nativeIsNaN(value)?nativeIsNaN(matcher):null==value||\"number\"==typeof value||\"boolean\"==typeof value?value===matcher:\"string\"==typeof value?(\"string\"==typeof matcher||matcher instanceof RegExp)&&function(str,matcher){if(\"string\"==typeof matcher)return\"\"===matcher?str===matcher:str.includes(matcher);if(matcher instanceof RegExp)return matcher.test(str);return!1}(value,matcher):Array.isArray(value)&&Array.isArray(matcher)?function(array,matcher){if(0===array.length)return 0===matcher.length;if(0===matcher.length)return!1;for(var _loop=function(){var matcherValue=matcher[i];return array.some((function(arrItem){return isValueMatched(arrItem,matcherValue)}))?\"continue\":{v:!1}},i=0;i0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function nativeIsNaN(num){return(Number.isNaN||window.isNaN)(num)}function isArbitraryObject(value){return!(null===value||\"object\"!=typeof value||Array.isArray(value)||value instanceof RegExp)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,methodPath,signatureStr){var stack=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(methodPath&&signatureStr){var rid,isErrorHandlerSet,signatureMatcher,IGNORE_ARG_SYMBOL=\" \",suppress=\"abort\"===(arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"abort\")?(rid=Math.random().toString(36).slice(2,9),isErrorHandlerSet=!1,function(){throw isErrorHandlerSet||(window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid),isErrorHandlerSet=!0),new ReferenceError(rid)}):function(){};try{signatureMatcher=signatureStr.split(\"|\").map((function(value){return value===IGNORE_ARG_SYMBOL?value:function(value){if(\"undefined\"!==value){if(\"false\"===value)return!1;if(\"true\"===value)return!0;if(\"null\"===value)return null;if(\"NaN\"===value)return NaN;if(value.startsWith(\"/\")&&value.endsWith(\"/\"))return toRegExp(value);var MAX_ALLOWED_NUM=32767,numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM)throw new Error(\"number values bigger than 32767 are not allowed\");return numVal}var errorMessage=\"'\".concat(value,\"' value type can't be inferred\");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||\"string\"==typeof parsableVal)return parsableVal}catch(e){errorMessage+=\": \".concat(e)}throw new TypeError(errorMessage)}}(value)}))}catch(e){return void logMessage(source,\"Could not parse the signature matcher: \".concat(function(error){var isErrorWithMessage=function(e){return\"object\"==typeof e&&null!==e&&\"message\"in e&&\"string\"==typeof e.message};if(isErrorWithMessage(error))return error.message;try{return new Error(JSON.stringify(error)).message}catch(_unused){return new Error(String(error)).message}}(e)))}var _getPathParts=getPropertyInChain(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(void 0===chain){var nativeMethod=base[prop];if(nativeMethod&&\"function\"==typeof nativeMethod){var isMatchingSuspended=!1;base[prop]=new Proxy(nativeMethod,{apply:function(target,thisArg,argumentsList){if(isMatchingSuspended)return Reflect.apply(target,thisArg,argumentsList);if(isMatchingSuspended=!0,stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function getPropertyInChain(base,chain){var pos=chain.indexOf(\".\");if(-1===pos)return{base:base,prop:chain};var prop=chain.slice(0,pos);if(null===base)return{base:base,prop:prop,chain:chain};var obj,nextBase=base[prop];return chain=chain.slice(pos+1),(base instanceof Object||\"object\"==typeof base)&&(obj=base,0===Object.keys(obj).length&&!obj.prototype)||null===nextBase?{base:base,prop:prop,chain:chain}:void 0!==nextBase?getPropertyInChain(nextBase,chain):(Object.defineProperty(base,prop,{configurable:!0}),{base:base,prop:prop,chain:chain})}function isValueMatched(value,matcher){return\"function\"!=typeof value&&(nativeIsNaN(value)?nativeIsNaN(matcher):null==value||\"number\"==typeof value||\"boolean\"==typeof value?value===matcher:\"string\"==typeof value?(\"string\"==typeof matcher||matcher instanceof RegExp)&&function(str,matcher){if(\"string\"==typeof matcher)return\"\"===matcher?str===matcher:str.includes(matcher);if(matcher instanceof RegExp)return matcher.test(str);return!1}(value,matcher):Array.isArray(value)&&Array.isArray(matcher)?function(array,matcher){if(0===array.length)return 0===matcher.length;if(0===matcher.length)return!1;for(var _loop=function(){var matcherValue=matcher[i];return array.some((function(arrItem){return isValueMatched(arrItem,matcherValue)}))?\"continue\":{v:!1}},i=0;i4&&void 0!==arguments[4]?arguments[4]:\"\";if(methodPath&&signatureStr){var rid,isErrorHandlerSet,signatureMatcher,IGNORE_ARG_SYMBOL=\" \",suppress=\"abort\"===(arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"abort\")?(rid=Math.random().toString(36).slice(2,9),isErrorHandlerSet=!1,function(){throw isErrorHandlerSet||(window.onerror=function(rid){var nativeOnError=window.onerror;return function(error){if(\"string\"==typeof error&&error.includes(rid))return!0;if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];return nativeOnError.apply(window,[error,...args])}return!1}}(rid),isErrorHandlerSet=!0),new ReferenceError(rid)}):function(){};try{signatureMatcher=signatureStr.split(\"|\").map((function(value){return value===IGNORE_ARG_SYMBOL?value:function(value){if(\"undefined\"!==value){if(\"false\"===value)return!1;if(\"true\"===value)return!0;if(\"null\"===value)return null;if(\"NaN\"===value)return NaN;if(value.startsWith(\"/\")&&value.endsWith(\"/\"))return toRegExp(value);var MAX_ALLOWED_NUM=32767,numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM)throw new Error(\"number values bigger than 32767 are not allowed\");return numVal}var errorMessage=\"'\".concat(value,\"' value type can't be inferred\");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||\"string\"==typeof parsableVal)return parsableVal}catch(e){errorMessage+=\": \".concat(e)}throw new TypeError(errorMessage)}}(value)}))}catch(e){return void logMessage(source,\"Could not parse the signature matcher: \".concat(function(error){var isErrorWithMessage=function(e){return\"object\"==typeof e&&null!==e&&\"message\"in e&&\"string\"==typeof e.message};if(isErrorWithMessage(error))return error.message;try{return new Error(JSON.stringify(error)).message}catch(_unused){return new Error(String(error)).message}}(e)))}var _getPathParts=getPropertyInChain(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(void 0===chain){var nativeMethod=base[prop];if(nativeMethod&&\"function\"==typeof nativeMethod){var isMatchingSuspended=!1;base[prop]=new Proxy(nativeMethod,{apply:function(target,thisArg,argumentsList){if(isMatchingSuspended)return Reflect.apply(target,thisArg,argumentsList);if(isMatchingSuspended=!0,stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(){var input=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getPrunePath(props){return\"string\"==typeof props&&void 0!==props&&\"\"!==props?props.split(/ +/):[]}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackSteps=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})),stackLines=stackSteps.map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove,obligatoryProps){var propsToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",stack=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(\"undefined\"!=typeof Proxy){var xhrData,shouldLog=!propsToRemove&&!obligatoryProps,prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(obligatoryProps),nativeParse=window.JSON.parse,nativeStringify=window.JSON.stringify,nativeOpen=window.XMLHttpRequest.prototype.open,nativeSend=window.XMLHttpRequest.prototype.send,setRequestHeaderHandler={apply:function(setRequestHeader,thisArgument,argsList){return thisArgument.collectedHeaders.push(argsList),Reflect.apply(setRequestHeader,thisArgument,argsList)}},openHandler={apply:function(target,thisArg,args){return xhrData=getXhrData.apply(null,args),(function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,xhrData)||shouldLog)&&(thisArg.xhrShouldBePruned=!0,thisArg.headersReceived=!!thisArg.headersReceived),thisArg.xhrShouldBePruned&&!thisArg.headersReceived&&(thisArg.headersReceived=!0,thisArg.collectedHeaders=[],thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler)),Reflect.apply(target,thisArg,args)}},sendHandler={apply:function(target,thisArg,args){var stackTrace=(new Error).stack||\"\";if(!thisArg.xhrShouldBePruned||stack&&!matchStackTrace(stack,stackTrace))return Reflect.apply(target,thisArg,args);var forgedRequest=new XMLHttpRequest;forgedRequest.addEventListener(\"readystatechange\",(function(){if(4===forgedRequest.readyState){var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText,content=responseText||response;if(\"string\"==typeof content||\"object\"==typeof content){var modifiedContent;if(\"string\"==typeof content)try{var jsonContent=nativeParse(content);if(shouldLog)logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(jsonContent,null,2),\"\\nStack trace:\\n\").concat(stackTrace),!0),logMessage(source,jsonContent,!0,!1),modifiedContent=content;else{modifiedContent=function(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!matchStackTrace(stack,(new Error).stack||\"\"))return shouldProcess=!1;for(var wildcardSymbols=[\".*.\",\"*.\",\".*\",\".[].\",\"[].\",\".[]\"],_loop=function(){var requiredPath=requiredPaths[i],lastNestedPropName=requiredPath.split(\".\").pop(),hasWildcard=wildcardSymbols.some((function(symbol){return requiredPath.includes(symbol)})),details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length)return{v:shouldProcess=!1};shouldProcess=!hasWildcard;for(var j=0;j2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}function getPrunePath(props){return\"string\"==typeof props&&void 0!==props&&\"\"!==props?props.split(/ +/):[]}function getXhrData(method,url,async,user,password){return{method:method,url:url,async:async,user:user,password:password}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackSteps=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})),stackLines=stackSteps.map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index2&&void 0!==arguments[2]&&arguments[2],output=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],pos=chain.indexOf(\".\");if(-1===pos){if(\"*\"===chain||\"[]\"===chain)for(var key in base)Object.prototype.hasOwnProperty.call(base,key)&&output.push({base:base,prop:key});else output.push({base:base,prop:chain});return output}var prop=chain.slice(0,pos);if(\"[]\"===prop&&Array.isArray(base)||\"*\"===prop&&base instanceof Object){var nextProp=chain.slice(pos+1);Object.keys(base).forEach((function(key){getWildcardPropertyInChain(base[key],nextProp,lookThrough,output)}))}Array.isArray(base)&&base.forEach((function(key){void 0!==key&&getWildcardPropertyInChain(key,chain,lookThrough,output)}));var nextBase=base[prop];return chain=chain.slice(pos+1),void 0!==nextBase&&getWildcardPropertyInChain(nextBase,chain,lookThrough,output),output}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,propsToRemove,obligatoryProps){var propsToMatch=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",stack=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\";if(\"undefined\"!=typeof Proxy){var xhrData,shouldLog=!propsToRemove&&!obligatoryProps,prunePaths=getPrunePath(propsToRemove),requiredPaths=getPrunePath(obligatoryProps),nativeParse=window.JSON.parse,nativeStringify=window.JSON.stringify,nativeOpen=window.XMLHttpRequest.prototype.open,nativeSend=window.XMLHttpRequest.prototype.send,setRequestHeaderHandler={apply:function(setRequestHeader,thisArgument,argsList){return thisArgument.collectedHeaders.push(argsList),Reflect.apply(setRequestHeader,thisArgument,argsList)}},openHandler={apply:function(target,thisArg,args){return xhrData=getXhrData.apply(null,args),(function(source,propsToMatch,requestData){if(\"\"===propsToMatch||\"*\"===propsToMatch)return!0;var isMatched,PROPS_DIVIDER,PAIRS_MARKER,isRequestProp,propsObj,data,parsedData=(PROPS_DIVIDER=\" \",PAIRS_MARKER=\":\",isRequestProp=function(prop){return[\"url\",\"method\",\"headers\",\"body\",\"credentials\",\"cache\",\"redirect\",\"referrer\",\"referrerPolicy\",\"integrity\",\"keepalive\",\"signal\",\"mode\"].includes(prop)},propsObj={},propsToMatch.split(PROPS_DIVIDER).forEach((function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER),key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value}else propsObj.url=prop})),propsObj);if(data=parsedData,Object.values(data).every((function(value){return function(input){var isValid,FORWARD_SLASH=\"/\",str=function(str){return str.replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}(input);input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH&&(str=input.slice(1,-1));try{isValid=new RegExp(str),isValid=!0}catch(e){isValid=!1}return isValid}(value)}))){var matchData=function(data){var matchData={};return Object.keys(data).forEach((function(key){matchData[key]=toRegExp(data[key])})),matchData}(parsedData);isMatched=Object.keys(matchData).every((function(matchKey){var matchValue=matchData[matchKey],dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&\"string\"==typeof dataValue&&(null==matchValue?void 0:matchValue.test(dataValue))}))}else logMessage(source,\"Invalid parameter: \".concat(propsToMatch)),isMatched=!1;return isMatched}(source,propsToMatch,xhrData)||shouldLog)&&(thisArg.xhrShouldBePruned=!0,thisArg.headersReceived=!!thisArg.headersReceived),thisArg.xhrShouldBePruned&&!thisArg.headersReceived&&(thisArg.headersReceived=!0,thisArg.collectedHeaders=[],thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler)),Reflect.apply(target,thisArg,args)}},sendHandler={apply:function(target,thisArg,args){var stackTrace=(new Error).stack||\"\";if(!thisArg.xhrShouldBePruned||stack&&!matchStackTrace(stack,stackTrace))return Reflect.apply(target,thisArg,args);var forgedRequest=new XMLHttpRequest;forgedRequest.addEventListener(\"readystatechange\",(function(){if(4===forgedRequest.readyState){var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText,content=responseText||response;if(\"string\"==typeof content||\"object\"==typeof content){var modifiedContent;if(\"string\"==typeof content)try{var jsonContent=nativeParse(content);if(shouldLog)logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(jsonContent,null,2),\"\\nStack trace:\\n\").concat(stackTrace),!0),logMessage(source,jsonContent,!0,!1),modifiedContent=content;else{modifiedContent=function(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&0===requiredPaths.length)return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),root;try{if(!1===function(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root)return!1;var shouldProcess,nativeStringify=nativeObjects.nativeStringify;if(0===prunePaths.length&&requiredPaths.length>0){var rootString=nativeStringify(root);if(toRegExp(requiredPaths.join(\"\")).test(rootString))return logMessage(source,\"\".concat(window.location.hostname,\"\\n\").concat(nativeStringify(root,null,2),\"\\nStack trace:\\n\").concat((new Error).stack),!0),root&&\"object\"==typeof root&&logMessage(source,root,!0,!1),shouldProcess=!1}if(stack&&!matchStackTrace(stack,(new Error).stack||\"\"))return shouldProcess=!1;for(var wildcardSymbols=[\".*.\",\"*.\",\".*\",\".[].\",\"[].\",\".[]\"],_loop=function(){var requiredPath=requiredPaths[i],lastNestedPropName=requiredPath.split(\".\").pop(),hasWildcard=wildcardSymbols.some((function(symbol){return requiredPath.includes(symbol)})),details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length)return{v:shouldProcess=!1};shouldProcess=!hasWildcard;for(var j=0;j2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}function toRegExp(rawInput){var input=rawInput||\"\";if(\"\"===input)return new RegExp(\".?\");var regExpStr,flagsStr,delimiterIndex=input.lastIndexOf(\"/\"),flagsPart=input.substring(delimiterIndex+1),regExpPart=input.substring(0,delimiterIndex+1),flags=(flagsStr=flagsPart,(regExpStr=regExpPart).startsWith(\"/\")&®ExpStr.endsWith(\"/\")&&!regExpStr.endsWith(\"\\\\/\")&&function(flag){if(!flag)return!1;try{return new RegExp(\"\",flag),!0}catch(ex){return!1}}(flagsStr)?flagsStr:\"\");if(input.startsWith(\"/\")&&input.endsWith(\"/\")||flags)return new RegExp((flags?regExpPart:input).slice(1,-1),flags);var escaped=input.replace(/\\\\'/g,\"'\").replace(/\\\\\"/g,'\"').replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\");return new RegExp(escaped)}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source,methodPath){var textToReplace=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",replacement=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"\",decodeMethod=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"\",stack=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"\",logContent=arguments.length>6&&void 0!==arguments[6]?arguments[6]:\"\";if(methodPath){var _getPathParts=getPropertyInChain(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(void 0===chain){var nativeMethod=base[prop];if(nativeMethod&&\"function\"==typeof nativeMethod){var decodeAndReplaceContent=function(content,pattern,textReplacement,decode,log){if(\"base64\"===decode)try{if(!function(str){try{if(\"\"===str)return!1;var decodedString=atob(str),encodedString=btoa(decodedString),stringWithoutPadding=str.replace(/=+$/,\"\");return encodedString.replace(/=+$/,\"\")===stringWithoutPadding}catch(e){return!1}}(content))return logMessage(source,\"Text content is not a valid base64 encoded string: \".concat(content)),content;var decodedContent=atob(content);log&&logMessage(source,\"Decoded text content: \".concat(decodedContent));var modifiedContent=textToReplace?decodedContent.replace(pattern,textReplacement):decodedContent;if(log){var message=modifiedContent!==decodedContent?\"Modified decoded text content: \".concat(modifiedContent):\"Decoded text content was not modified\";logMessage(source,message)}return btoa(modifiedContent)}catch(e){return content}return content.replace(pattern,textReplacement)},logOriginalContent=!textToReplace||!!logContent,logModifiedContent=!!logContent,logDecodedContent=!!decodeMethod&&!!logContent,isMatchingSuspended=!1,objectHandler={apply:function(target,thisArg,argumentsList){if(isMatchingSuspended)return Reflect.apply(target,thisArg,argumentsList);isMatchingSuspended=!0,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source);var result=Reflect.apply(target,thisArg,argumentsList);if(stack&&!function(stackMatch,stackTrace){if(!stackMatch||\"\"===stackMatch)return!0;if(function(stackMatch,stackTrace){var INLINE_SCRIPT_STRING=\"inlineScript\",INJECTED_SCRIPT_STRING=\"injectedScript\",INJECTED_SCRIPT_MARKER=\"\",isInlineScript=function(match){return match.includes(INLINE_SCRIPT_STRING)},isInjectedScript=function(match){return match.includes(INJECTED_SCRIPT_STRING)};if(!isInlineScript(stackMatch)&&!isInjectedScript(stackMatch))return!1;var documentURL=window.location.href,pos=documentURL.indexOf(\"#\");-1!==pos&&(documentURL=documentURL.slice(0,pos));var stackLines=stackTrace.split(\"\\n\").slice(2).map((function(line){return line.trim()})).map((function(line){var stack,getStackTraceURL=/(.*?@)?(\\S+)(:\\d+):\\d+\\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2,stackURL=getStackTraceURL[2];if(null!==(_stackURL=stackURL)&&void 0!==_stackURL&&_stackURL.startsWith(\"(\")&&(stackURL=stackURL.slice(1)),null!==(_stackURL2=stackURL)&&void 0!==_stackURL2&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=void 0!==getStackTraceURL[1]?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();null!==(_stackFunction=stackFunction)&&void 0!==_stackFunction&&_stackFunction.startsWith(\"at\")&&(stackFunction=stackFunction.slice(2).trim()),stack=\"\".concat(stackFunction,\" \").concat(stackURL).trim()}else stack=stackURL}else stack=line;return stack}));if(stackLines)for(var index=0;index({actions:{},emitter:{},services:{},store:{}}),shouldConsentBeCollected:falseFunc,getUserConsentStatusForAll:noopFunc,getObservableOnUserConsentStatusForVendor:()=>new UserConsentStatusForVendor};window.Didomi=DidomiWrapper,window.didomiState={didomiExperimentId:\"\",didomiExperimentUserGroup:\"\",didomiGDPRApplies:1,didomiIABConsent:\"\",didomiPurposesConsent:\"\",didomiPurposesConsentDenied:\"\",didomiPurposesConsentUnknown:\"\",didomiVendorsConsent:\"\",didomiVendorsConsentDenied:\"\",didomiVendorsConsentUnknown:\"\",didomiVendorsRawConsent:\"\",didomiVendorsRawConsentDenied:\"\",didomiVendorsRawConsentUnknown:\"\"};var tcData={eventStatus:\"tcloaded\",gdprApplies:!1,listenerId:noopFunc,vendor:{consents:[]},purpose:{consents:[]}};window.__tcfapi=function(command,version,callback){\"function\"==typeof callback&&\"removeEventListener\"!==command&&callback(tcData,!0)};var didomiEventListenersWrapper={stub:!0,push:noopFunc};window.didomiEventListeners=didomiEventListenersWrapper;var didomiOnReadyWrapper={stub:!0,push(arg){\"function\"==typeof arg&&(\"complete\"!==document.readyState?window.addEventListener(\"load\",(function(){setTimeout(arg(window.Didomi))})):setTimeout(arg(window.Didomi)))}};window.didomiOnReady=window.didomiOnReady||didomiOnReadyWrapper,Array.isArray(window.didomiOnReady)&&window.didomiOnReady.forEach((function(arg){if(\"function\"==typeof arg)try{setTimeout(arg(window.Didomi))}catch(e){}})),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function DidomiLoader(source,args){function noopFunc(){}function noopArray(){return[]}function trueFunc(){return!0}function falseFunc(){return!1}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){function UserConsentStatusForVendorSubscribe(){}function UserConsentStatusForVendor(){}UserConsentStatusForVendorSubscribe.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe},UserConsentStatusForVendorSubscribe.prototype.subscribe=noopFunc,UserConsentStatusForVendor.prototype.first=function(){return new UserConsentStatusForVendorSubscribe},UserConsentStatusForVendor.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe},UserConsentStatusForVendor.prototype.subscribe=noopFunc;var DidomiWrapper={isConsentRequired:falseFunc,getUserConsentStatusForPurpose:trueFunc,getUserConsentStatus:trueFunc,getUserStatus:noopFunc,getRequiredPurposes:noopArray,getUserConsentStatusForVendor:trueFunc,Purposes:{Cookies:\"cookies\"},notice:{configure:noopFunc,hide:noopFunc,isVisible:falseFunc,show:noopFunc,showDataProcessing:trueFunc},isUserConsentStatusPartial:falseFunc,on:()=>({actions:{},emitter:{},services:{},store:{}}),shouldConsentBeCollected:falseFunc,getUserConsentStatusForAll:noopFunc,getObservableOnUserConsentStatusForVendor:()=>new UserConsentStatusForVendor};window.Didomi=DidomiWrapper,window.didomiState={didomiExperimentId:\"\",didomiExperimentUserGroup:\"\",didomiGDPRApplies:1,didomiIABConsent:\"\",didomiPurposesConsent:\"\",didomiPurposesConsentDenied:\"\",didomiPurposesConsentUnknown:\"\",didomiVendorsConsent:\"\",didomiVendorsConsentDenied:\"\",didomiVendorsConsentUnknown:\"\",didomiVendorsRawConsent:\"\",didomiVendorsRawConsentDenied:\"\",didomiVendorsRawConsentUnknown:\"\"};var tcData={eventStatus:\"tcloaded\",gdprApplies:!1,listenerId:noopFunc,vendor:{consents:[]},purpose:{consents:[]}};window.__tcfapi=function(command,version,callback){\"function\"==typeof callback&&\"removeEventListener\"!==command&&callback(tcData,!0)};var didomiEventListenersWrapper={stub:!0,push:noopFunc};window.didomiEventListeners=didomiEventListenersWrapper;var didomiOnReadyWrapper={stub:!0,push(arg){\"function\"==typeof arg&&(\"complete\"!==document.readyState?window.addEventListener(\"load\",(function(){setTimeout(arg(window.Didomi))})):setTimeout(arg(window.Didomi)))}};window.didomiOnReady=window.didomiOnReady||didomiOnReadyWrapper,Array.isArray(window.didomiOnReady)&&window.didomiOnReady.forEach((function(arg){if(\"function\"==typeof arg)try{setTimeout(arg(window.Didomi))}catch(e){}})),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -669,7 +681,7 @@ "ubo-fingerprint2.js", "fingerprint2.js" ], - "scriptlet": "function Fingerprintjs2(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){for(var browserId=\"\",i=0;i<8;i+=1)browserId+=(65536*Math.random()+4096).toString(16).slice(-4);var Fingerprint2=function(){};Fingerprint2.prototype={get:Fingerprint2.get=function(options,callback){callback||(callback=options),setTimeout((function(){callback&&callback(browserId,[])}),1)}},window.Fingerprint2=Fingerprint2,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function Fingerprintjs2(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){for(var browserId=\"\",i=0;i<8;i+=1)browserId+=(65536*Math.random()+4096).toString(16).slice(-4);var Fingerprint2=function(){};Fingerprint2.prototype={get:Fingerprint2.get=function(options,callback){callback||(callback=options),setTimeout((function(){callback&&callback(browserId,[])}),1)}},window.Fingerprint2=Fingerprint2,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -677,13 +689,13 @@ "ubo-fingerprint3.js", "fingerprint3.js" ], - "scriptlet": "function Fingerprintjs3(source,args){function noopStr(){return\"\"}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var visitorId=function(){for(var id=\"\",i=0;i<8;i+=1)id+=(65536*Math.random()+4096).toString(16).slice(-4);return id}(),FingerprintJS=function(){};FingerprintJS.prototype={load:()=>Promise.resolve(new FingerprintJS),get:()=>Promise.resolve({visitorId:visitorId}),hashComponents:noopStr},window.FingerprintJS=new FingerprintJS,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function Fingerprintjs3(source,args){function noopStr(){return\"\"}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var visitorId=function(){for(var id=\"\",i=0;i<8;i+=1)id+=(65536*Math.random()+4096).toString(16).slice(-4);return id}(),FingerprintJS=function(){};FingerprintJS.prototype={load:()=>Promise.resolve(new FingerprintJS),get:()=>Promise.resolve({visitorId:visitorId}),hashComponents:noopStr},window.FingerprintJS=new FingerprintJS,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "gemius" ], - "scriptlet": "function Gemius(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var GemiusPlayer=function(){};GemiusPlayer.prototype={setVideoObject:noopFunc,newProgram:noopFunc,programEvent:noopFunc,newAd:noopFunc,adEvent:noopFunc},window.GemiusPlayer=GemiusPlayer,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function Gemius(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var GemiusPlayer=function(){};GemiusPlayer.prototype={setVideoObject:noopFunc,newProgram:noopFunc,programEvent:noopFunc,newAd:noopFunc,adEvent:noopFunc},window.GemiusPlayer=GemiusPlayer,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -694,7 +706,7 @@ "ubo-googletagmanager_gtm.js", "googletagmanager_gtm.js" ], - "scriptlet": "function GoogleAnalytics(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var _window$googleAnalyti,Tracker=function(){},proto=Tracker.prototype;proto.get=noopFunc,proto.set=noopFunc,proto.send=noopFunc;var googleAnalyticsName=window.GoogleAnalyticsObject||\"ga\",queue=null===(_window$googleAnalyti=window[googleAnalyticsName])||void 0===_window$googleAnalyti?void 0:_window$googleAnalyti.q;function ga(a){var len=arguments.length;if(0!==len){var replacer,lastArg=arguments[len-1];lastArg instanceof Object&&null!==lastArg&&\"function\"==typeof lastArg.hitCallback?replacer=lastArg.hitCallback:\"function\"==typeof lastArg&&(replacer=function(){lastArg(ga.create())});try{setTimeout(replacer,1)}catch(ex){}}}if(ga.create=function(){return new Tracker},ga.getByName=function(){return new Tracker},ga.getAll=function(){return[new Tracker]},ga.remove=noopFunc,ga.loaded=!0,window[googleAnalyticsName]=ga,Array.isArray(queue)){var push=function(arg){ga(...arg)};queue.push=push,queue.forEach(push)}var _window=window,dataLayer=_window.dataLayer,google_optimize=_window.google_optimize;if(dataLayer instanceof Object!=0){dataLayer.hide instanceof Object&&\"function\"==typeof dataLayer.hide.end&&dataLayer.hide.end();var handleCallback=function(dataObj,funcName){dataObj&&\"function\"==typeof dataObj[funcName]&&setTimeout(dataObj[funcName])};if(\"function\"==typeof dataLayer.push&&(dataLayer.push=function(data){if(data instanceof Object){for(var key in handleCallback(data,\"eventCallback\"),data)handleCallback(data[key],\"event_callback\");data.hasOwnProperty(\"eventCallback\")||data.hasOwnProperty(\"eventCallback\")||[].push.call(window.dataLayer,data)}return Array.isArray(data)&&data.forEach((function(arg){handleCallback(arg,\"callback\")})),noopFunc}),google_optimize instanceof Object&&\"function\"==typeof google_optimize.get){var googleOptimizeWrapper={get:noopFunc};window.google_optimize=googleOptimizeWrapper}!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function GoogleAnalytics(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var _window$googleAnalyti,Tracker=function(){},proto=Tracker.prototype;proto.get=noopFunc,proto.set=noopFunc,proto.send=noopFunc;var googleAnalyticsName=window.GoogleAnalyticsObject||\"ga\",queue=null===(_window$googleAnalyti=window[googleAnalyticsName])||void 0===_window$googleAnalyti?void 0:_window$googleAnalyti.q;function ga(a){var len=arguments.length;if(0!==len){var replacer,lastArg=arguments[len-1];lastArg instanceof Object&&null!==lastArg&&\"function\"==typeof lastArg.hitCallback?replacer=lastArg.hitCallback:\"function\"==typeof lastArg&&(replacer=function(){lastArg(ga.create())});try{setTimeout(replacer,1)}catch(ex){}}}if(ga.create=function(){return new Tracker},ga.getByName=function(){return new Tracker},ga.getAll=function(){return[new Tracker]},ga.remove=noopFunc,ga.loaded=!0,window[googleAnalyticsName]=ga,Array.isArray(queue)){var push=function(arg){ga(...arg)};queue.push=push,queue.forEach(push)}var _window=window,dataLayer=_window.dataLayer,google_optimize=_window.google_optimize;if(dataLayer instanceof Object!=0){dataLayer.hide instanceof Object&&\"function\"==typeof dataLayer.hide.end&&dataLayer.hide.end();var handleCallback=function(dataObj,funcName){dataObj&&\"function\"==typeof dataObj[funcName]&&setTimeout(dataObj[funcName])};if(\"function\"==typeof dataLayer.push&&(dataLayer.push=function(data){if(data instanceof Object){for(var key in handleCallback(data,\"eventCallback\"),data)handleCallback(data[key],\"event_callback\");data.hasOwnProperty(\"eventCallback\")||data.hasOwnProperty(\"eventCallback\")||[].push.call(window.dataLayer,data)}return Array.isArray(data)&&data.forEach((function(arg){handleCallback(arg,\"callback\")})),noopFunc}),google_optimize instanceof Object&&\"function\"==typeof google_optimize.get){var googleOptimizeWrapper={get:noopFunc};window.google_optimize=googleOptimizeWrapper}!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -702,7 +714,7 @@ "ubo-google-analytics_ga.js", "google-analytics_ga.js" ], - "scriptlet": "function GoogleAnalyticsGa(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){function Gaq(){}Gaq.prototype.Na=noopFunc,Gaq.prototype.O=noopFunc,Gaq.prototype.Sa=noopFunc,Gaq.prototype.Ta=noopFunc,Gaq.prototype.Va=noopFunc,Gaq.prototype._createAsyncTracker=noopFunc,Gaq.prototype._getAsyncTracker=noopFunc,Gaq.prototype._getPlugin=noopFunc,Gaq.prototype.push=function(data){\"function\"!=typeof data?!1!==Array.isArray(data)&&(\"string\"==typeof data[0]&&/(^|\\.)_link$/.test(data[0])&&\"string\"==typeof data[1]&&window.location.assign(data[1]),\"_set\"===data[0]&&\"hitCallback\"===data[1]&&\"function\"==typeof data[2]&&data[2]()):data()};var gaq=new Gaq,asyncTrackers=window._gaq||[];if(Array.isArray(asyncTrackers))for(;asyncTrackers[0];)gaq.push(asyncTrackers.shift());function Gat(){}window._gaq=gaq.qf=gaq;var tracker=[\"_addIgnoredOrganic\",\"_addIgnoredRef\",\"_addItem\",\"_addOrganic\",\"_addTrans\",\"_clearIgnoredOrganic\",\"_clearIgnoredRef\",\"_clearOrganic\",\"_cookiePathCopy\",\"_deleteCustomVar\",\"_getName\",\"_setAccount\",\"_getAccount\",\"_getClientInfo\",\"_getDetectFlash\",\"_getDetectTitle\",\"_getLinkerUrl\",\"_getLocalGifPath\",\"_getServiceMode\",\"_getVersion\",\"_getVisitorCustomVar\",\"_initData\",\"_link\",\"_linkByPost\",\"_setAllowAnchor\",\"_setAllowHash\",\"_setAllowLinker\",\"_setCampContentKey\",\"_setCampMediumKey\",\"_setCampNameKey\",\"_setCampNOKey\",\"_setCampSourceKey\",\"_setCampTermKey\",\"_setCampaignCookieTimeout\",\"_setCampaignTrack\",\"_setClientInfo\",\"_setCookiePath\",\"_setCookiePersistence\",\"_setCookieTimeout\",\"_setCustomVar\",\"_setDetectFlash\",\"_setDetectTitle\",\"_setDomainName\",\"_setLocalGifPath\",\"_setLocalRemoteServerMode\",\"_setLocalServerMode\",\"_setReferrerOverride\",\"_setRemoteServerMode\",\"_setSampleRate\",\"_setSessionTimeout\",\"_setSiteSpeedSampleRate\",\"_setSessionCookieTimeout\",\"_setVar\",\"_setVisitorCookieTimeout\",\"_trackEvent\",\"_trackPageLoadTime\",\"_trackPageview\",\"_trackSocial\",\"_trackTiming\",\"_trackTrans\",\"_visitCode\"].reduce((function(res,funcName){return res[funcName]=noopFunc,res}),{});tracker._getLinkerUrl=function(a){return a},tracker._link=function(url){if(\"string\"==typeof url)try{window.location.assign(url)}catch(e){!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,e)}},Gat.prototype._anonymizeIP=noopFunc,Gat.prototype._createTracker=noopFunc,Gat.prototype._forceSSL=noopFunc,Gat.prototype._getPlugin=noopFunc,Gat.prototype._getTracker=function(){return tracker},Gat.prototype._getTrackerByName=function(){return tracker},Gat.prototype._getTrackers=noopFunc,Gat.prototype.aa=noopFunc,Gat.prototype.ab=noopFunc,Gat.prototype.hb=noopFunc,Gat.prototype.la=noopFunc,Gat.prototype.oa=noopFunc,Gat.prototype.pa=noopFunc,Gat.prototype.u=noopFunc;var gat=new Gat;window._gat=gat,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function GoogleAnalyticsGa(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){function Gaq(){}Gaq.prototype.Na=noopFunc,Gaq.prototype.O=noopFunc,Gaq.prototype.Sa=noopFunc,Gaq.prototype.Ta=noopFunc,Gaq.prototype.Va=noopFunc,Gaq.prototype._createAsyncTracker=noopFunc,Gaq.prototype._getAsyncTracker=noopFunc,Gaq.prototype._getPlugin=noopFunc,Gaq.prototype.push=function(data){\"function\"!=typeof data?!1!==Array.isArray(data)&&(\"string\"==typeof data[0]&&/(^|\\.)_link$/.test(data[0])&&\"string\"==typeof data[1]&&window.location.assign(data[1]),\"_set\"===data[0]&&\"hitCallback\"===data[1]&&\"function\"==typeof data[2]&&data[2]()):data()};var gaq=new Gaq,asyncTrackers=window._gaq||[];if(Array.isArray(asyncTrackers))for(;asyncTrackers[0];)gaq.push(asyncTrackers.shift());function Gat(){}window._gaq=gaq.qf=gaq;var tracker=[\"_addIgnoredOrganic\",\"_addIgnoredRef\",\"_addItem\",\"_addOrganic\",\"_addTrans\",\"_clearIgnoredOrganic\",\"_clearIgnoredRef\",\"_clearOrganic\",\"_cookiePathCopy\",\"_deleteCustomVar\",\"_getName\",\"_setAccount\",\"_getAccount\",\"_getClientInfo\",\"_getDetectFlash\",\"_getDetectTitle\",\"_getLinkerUrl\",\"_getLocalGifPath\",\"_getServiceMode\",\"_getVersion\",\"_getVisitorCustomVar\",\"_initData\",\"_link\",\"_linkByPost\",\"_setAllowAnchor\",\"_setAllowHash\",\"_setAllowLinker\",\"_setCampContentKey\",\"_setCampMediumKey\",\"_setCampNameKey\",\"_setCampNOKey\",\"_setCampSourceKey\",\"_setCampTermKey\",\"_setCampaignCookieTimeout\",\"_setCampaignTrack\",\"_setClientInfo\",\"_setCookiePath\",\"_setCookiePersistence\",\"_setCookieTimeout\",\"_setCustomVar\",\"_setDetectFlash\",\"_setDetectTitle\",\"_setDomainName\",\"_setLocalGifPath\",\"_setLocalRemoteServerMode\",\"_setLocalServerMode\",\"_setReferrerOverride\",\"_setRemoteServerMode\",\"_setSampleRate\",\"_setSessionTimeout\",\"_setSiteSpeedSampleRate\",\"_setSessionCookieTimeout\",\"_setVar\",\"_setVisitorCookieTimeout\",\"_trackEvent\",\"_trackPageLoadTime\",\"_trackPageview\",\"_trackSocial\",\"_trackTiming\",\"_trackTrans\",\"_visitCode\"].reduce((function(res,funcName){return res[funcName]=noopFunc,res}),{});tracker._getLinkerUrl=function(a){return a},tracker._link=function(url){if(\"string\"==typeof url)try{window.location.assign(url)}catch(e){!function(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}(source,e)}},Gat.prototype._anonymizeIP=noopFunc,Gat.prototype._createTracker=noopFunc,Gat.prototype._forceSSL=noopFunc,Gat.prototype._getPlugin=noopFunc,Gat.prototype._getTracker=function(){return tracker},Gat.prototype._getTrackerByName=function(){return tracker},Gat.prototype._getTrackers=noopFunc,Gat.prototype.aa=noopFunc,Gat.prototype.ab=noopFunc,Gat.prototype.hb=noopFunc,Gat.prototype.la=noopFunc,Gat.prototype.oa=noopFunc,Gat.prototype.pa=noopFunc,Gat.prototype.u=noopFunc;var gat=new Gat;window._gat=gat,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -710,7 +722,7 @@ "ubo-google-ima.js", "google-ima.js" ], - "scriptlet": "function GoogleIma3(source,args){function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var _window$google$ima,ima={},AdDisplayContainer=function(containerElement){var divElement=document.createElement(\"div\");divElement.style.setProperty(\"display\",\"none\",\"important\"),divElement.style.setProperty(\"visibility\",\"collapse\",\"important\"),containerElement&&containerElement.appendChild(divElement)};AdDisplayContainer.prototype.destroy=noopFunc,AdDisplayContainer.prototype.initialize=noopFunc;var ImaSdkSettings=function(){};ImaSdkSettings.CompanionBackfillMode={ALWAYS:\"always\",ON_MASTER_AD:\"on_master_ad\"},ImaSdkSettings.VpaidMode={DISABLED:0,ENABLED:1,INSECURE:2},ImaSdkSettings.prototype={c:!0,f:{},i:!1,l:\"\",p:\"\",r:0,t:\"\",v:\"\",getCompanionBackfill:noopFunc,getDisableCustomPlaybackForIOS10Plus(){return this.i},getDisabledFlashAds:function(){return!0},getFeatureFlags(){return this.f},getLocale(){return this.l},getNumRedirects(){return this.r},getPlayerType(){return this.t},getPlayerVersion(){return this.v},getPpid(){return this.p},getVpaidMode(){return this.C},isCookiesEnabled(){return this.c},isVpaidAdapter(){return this.M},setCompanionBackfill:noopFunc,setAutoPlayAdBreaks(a){this.K=a},setCookiesEnabled(c){this.c=!!c},setDisableCustomPlaybackForIOS10Plus(i){this.i=!!i},setDisableFlashAds:noopFunc,setFeatureFlags(f){this.f=!!f},setIsVpaidAdapter(a){this.M=a},setLocale(l){this.l=!!l},setNumRedirects(r){this.r=!!r},setPageCorrelator(a){this.R=a},setPlayerType(t){this.t=!!t},setPlayerVersion(v){this.v=!!v},setPpid(p){this.p=!!p},setVpaidMode(a){this.C=a},setSessionId:noopFunc,setStreamCorrelator:noopFunc,setVpaidAllowed:noopFunc,CompanionBackfillMode:{ALWAYS:\"always\",ON_MASTER_AD:\"on_master_ad\"},VpaidMode:{DISABLED:0,ENABLED:1,INSECURE:2}};var EventHandler=function(){this.listeners=new Map,this._dispatch=function(e){var listeners=this.listeners.get(e.type);listeners=listeners?listeners.values():[];for(var _i=0,_Array$from=Array.from(listeners);_i<_Array$from.length;_i++){var listener=_Array$from[_i];try{listener(e)}catch(r){logMessage(source,r)}}},this.addEventListener=function(types,callback,options,context){Array.isArray(types)||(types=[types]);for(var i=0;i!0};var CompanionAd=function(){};CompanionAd.prototype={getAdSlotId:function(){return\"\"},getContent:function(){return\"\"},getContentType:function(){return\"\"},getHeight:function(){return 1},getWidth:function(){return 1}};var AdError=function(type,code,vast,message,adsRequest,userRequestContext){this.errorCode=code,this.message=message,this.type=type,this.adsRequest=adsRequest,this.userRequestContext=userRequestContext,this.getErrorCode=function(){return this.errorCode},this.getInnerError=function(){return null},this.getMessage=function(){return this.message},this.getType=function(){return this.type},this.getVastErrorCode=function(){return this.vastErrorCode},this.toString=function(){return\"AdError \".concat(this.errorCode,\": \").concat(this.message)}};AdError.ErrorCode={},AdError.Type={};var currentAd=function(){try{for(var _i3=0,_Object$values=Object.values(window.vidible._getContexts());_i3<_Object$values.length;_i3++){var _ctx$getPlayer,_ctx$getPlayer$div;if(null!==(_ctx$getPlayer=_Object$values[_i3].getPlayer())&&void 0!==_ctx$getPlayer&&null!==(_ctx$getPlayer$div=_ctx$getPlayer.div)&&void 0!==_ctx$getPlayer$div&&_ctx$getPlayer$div.innerHTML.includes(\"www.engadget.com\"))return!0}}catch(e){}return!1}()?void 0:new Ad,AdEvent=function(type){this.type=type};AdEvent.prototype={getAd:function(){return currentAd},getAdData:function(){}},AdEvent.Type={AD_BREAK_READY:\"adBreakReady\",AD_BUFFERING:\"adBuffering\",AD_CAN_PLAY:\"adCanPlay\",AD_METADATA:\"adMetadata\",AD_PROGRESS:\"adProgress\",ALL_ADS_COMPLETED:\"allAdsCompleted\",CLICK:\"click\",COMPLETE:\"complete\",CONTENT_PAUSE_REQUESTED:\"contentPauseRequested\",CONTENT_RESUME_REQUESTED:\"contentResumeRequested\",DURATION_CHANGE:\"durationChange\",EXPANDED_CHANGED:\"expandedChanged\",FIRST_QUARTILE:\"firstQuartile\",IMPRESSION:\"impression\",INTERACTION:\"interaction\",LINEAR_CHANGE:\"linearChange\",LINEAR_CHANGED:\"linearChanged\",LOADED:\"loaded\",LOG:\"log\",MIDPOINT:\"midpoint\",PAUSED:\"pause\",RESUMED:\"resume\",SKIPPABLE_STATE_CHANGED:\"skippableStateChanged\",SKIPPED:\"skip\",STARTED:\"start\",THIRD_QUARTILE:\"thirdQuartile\",USER_CLOSE:\"userClose\",VIDEO_CLICKED:\"videoClicked\",VIDEO_ICON_CLICKED:\"videoIconClicked\",VIEWABLE_IMPRESSION:\"viewable_impression\",VOLUME_CHANGED:\"volumeChange\",VOLUME_MUTED:\"mute\"};var AdErrorEvent=function(error){this.error=error,this.type=\"adError\",this.getError=function(){return this.error},this.getUserRequestContext=function(){var _this$error;return null!==(_this$error=this.error)&&void 0!==_this$error&&_this$error.userRequestContext?this.error.userRequestContext:{}}};AdErrorEvent.Type={AD_ERROR:\"adError\"};var CustomContentLoadedEvent=function(){};CustomContentLoadedEvent.Type={CUSTOM_CONTENT_LOADED:\"deprecated-event\"};var CompanionAdSelectionSettings=function(){};CompanionAdSelectionSettings.CreativeType={ALL:\"All\",FLASH:\"Flash\",IMAGE:\"Image\"},CompanionAdSelectionSettings.ResourceType={ALL:\"All\",HTML:\"Html\",IFRAME:\"IFrame\",STATIC:\"Static\"},CompanionAdSelectionSettings.SizeCriteria={IGNORE:\"IgnoreSize\",SELECT_EXACT_MATCH:\"SelectExactMatch\",SELECT_NEAR_MATCH:\"SelectNearMatch\"};var AdCuePoints=function(){};AdCuePoints.prototype={getCuePoints:function(){return[]},getAdIdRegistry:function(){return\"\"},getAdIdValue:function(){return\"\"}};var AdProgressData=noopFunc;Object.assign(ima,{AdCuePoints:AdCuePoints,AdDisplayContainer:AdDisplayContainer,AdError:AdError,AdErrorEvent:AdErrorEvent,AdEvent:AdEvent,AdPodInfo:AdPodInfo,AdProgressData:AdProgressData,AdsLoader:AdsLoader,AdsManager:manager,AdsManagerLoadedEvent:AdsManagerLoadedEvent,AdsRenderingSettings:AdsRenderingSettings,AdsRequest:AdsRequest,CompanionAd:CompanionAd,CompanionAdSelectionSettings:CompanionAdSelectionSettings,CustomContentLoadedEvent:CustomContentLoadedEvent,gptProxyInstance:{},ImaSdkSettings:ImaSdkSettings,OmidAccessMode:{DOMAIN:\"domain\",FULL:\"full\",LIMITED:\"limited\"},OmidVerificationVendor:{1:\"OTHER\",2:\"MOAT\",3:\"DOUBLEVERIFY\",4:\"INTEGRAL_AD_SCIENCE\",5:\"PIXELATE\",6:\"NIELSEN\",7:\"COMSCORE\",8:\"MEETRICS\",9:\"GOOGLE\",OTHER:1,MOAT:2,DOUBLEVERIFY:3,INTEGRAL_AD_SCIENCE:4,PIXELATE:5,NIELSEN:6,COMSCORE:7,MEETRICS:8,GOOGLE:9},settings:new ImaSdkSettings,UiElements:{AD_ATTRIBUTION:\"adAttribution\",COUNTDOWN:\"countdown\"},UniversalAdIdInfo:UniversalAdIdInfo,VERSION:\"3.453.0\",ViewMode:{FULLSCREEN:\"fullscreen\",NORMAL:\"normal\"}}),window.google||(window.google={}),null!==(_window$google$ima=window.google.ima)&&void 0!==_window$google$ima&&_window$google$ima.dai&&(ima.dai=window.google.ima.dai),window.google.ima=ima,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function GoogleIma3(source,args){function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&void 0!==arguments[2]&&arguments[2],convertMessageToString=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],name=source.name,verbose=source.verbose;if(forced||verbose){var nativeConsole=console.log;convertMessageToString?nativeConsole(\"\".concat(name,\": \").concat(message)):nativeConsole(\"\".concat(name,\":\"),message)}}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var _window$google$ima,ima={},AdDisplayContainer=function(containerElement){var divElement=document.createElement(\"div\");divElement.style.setProperty(\"display\",\"none\",\"important\"),divElement.style.setProperty(\"visibility\",\"collapse\",\"important\"),containerElement&&containerElement.appendChild(divElement)};AdDisplayContainer.prototype.destroy=noopFunc,AdDisplayContainer.prototype.initialize=noopFunc;var ImaSdkSettings=function(){};ImaSdkSettings.CompanionBackfillMode={ALWAYS:\"always\",ON_MASTER_AD:\"on_master_ad\"},ImaSdkSettings.VpaidMode={DISABLED:0,ENABLED:1,INSECURE:2},ImaSdkSettings.prototype={c:!0,f:{},i:!1,l:\"\",p:\"\",r:0,t:\"\",v:\"\",getCompanionBackfill:noopFunc,getDisableCustomPlaybackForIOS10Plus(){return this.i},getDisabledFlashAds:function(){return!0},getFeatureFlags(){return this.f},getLocale(){return this.l},getNumRedirects(){return this.r},getPlayerType(){return this.t},getPlayerVersion(){return this.v},getPpid(){return this.p},getVpaidMode(){return this.C},isCookiesEnabled(){return this.c},isVpaidAdapter(){return this.M},setCompanionBackfill:noopFunc,setAutoPlayAdBreaks(a){this.K=a},setCookiesEnabled(c){this.c=!!c},setDisableCustomPlaybackForIOS10Plus(i){this.i=!!i},setDisableFlashAds:noopFunc,setFeatureFlags(f){this.f=!!f},setIsVpaidAdapter(a){this.M=a},setLocale(l){this.l=!!l},setNumRedirects(r){this.r=!!r},setPageCorrelator(a){this.R=a},setPlayerType(t){this.t=!!t},setPlayerVersion(v){this.v=!!v},setPpid(p){this.p=!!p},setVpaidMode(a){this.C=a},setSessionId:noopFunc,setStreamCorrelator:noopFunc,setVpaidAllowed:noopFunc,CompanionBackfillMode:{ALWAYS:\"always\",ON_MASTER_AD:\"on_master_ad\"},VpaidMode:{DISABLED:0,ENABLED:1,INSECURE:2}};var EventHandler=function(){this.listeners=new Map,this._dispatch=function(e){var listeners=this.listeners.get(e.type);listeners=listeners?listeners.values():[];for(var _i=0,_Array$from=Array.from(listeners);_i<_Array$from.length;_i++){var listener=_Array$from[_i];try{listener(e)}catch(r){logMessage(source,r)}}},this.addEventListener=function(types,callback,options,context){Array.isArray(types)||(types=[types]);for(var i=0;i!0};var CompanionAd=function(){};CompanionAd.prototype={getAdSlotId:function(){return\"\"},getContent:function(){return\"\"},getContentType:function(){return\"\"},getHeight:function(){return 1},getWidth:function(){return 1}};var AdError=function(type,code,vast,message,adsRequest,userRequestContext){this.errorCode=code,this.message=message,this.type=type,this.adsRequest=adsRequest,this.userRequestContext=userRequestContext,this.getErrorCode=function(){return this.errorCode},this.getInnerError=function(){return null},this.getMessage=function(){return this.message},this.getType=function(){return this.type},this.getVastErrorCode=function(){return this.vastErrorCode},this.toString=function(){return\"AdError \".concat(this.errorCode,\": \").concat(this.message)}};AdError.ErrorCode={},AdError.Type={};var currentAd=function(){try{for(var _i3=0,_Object$values=Object.values(window.vidible._getContexts());_i3<_Object$values.length;_i3++){var _ctx$getPlayer,_ctx$getPlayer$div;if(null!==(_ctx$getPlayer=_Object$values[_i3].getPlayer())&&void 0!==_ctx$getPlayer&&null!==(_ctx$getPlayer$div=_ctx$getPlayer.div)&&void 0!==_ctx$getPlayer$div&&_ctx$getPlayer$div.innerHTML.includes(\"www.engadget.com\"))return!0}}catch(e){}return!1}()?void 0:new Ad,AdEvent=function(type){this.type=type};AdEvent.prototype={getAd:function(){return currentAd},getAdData:function(){}},AdEvent.Type={AD_BREAK_READY:\"adBreakReady\",AD_BUFFERING:\"adBuffering\",AD_CAN_PLAY:\"adCanPlay\",AD_METADATA:\"adMetadata\",AD_PROGRESS:\"adProgress\",ALL_ADS_COMPLETED:\"allAdsCompleted\",CLICK:\"click\",COMPLETE:\"complete\",CONTENT_PAUSE_REQUESTED:\"contentPauseRequested\",CONTENT_RESUME_REQUESTED:\"contentResumeRequested\",DURATION_CHANGE:\"durationChange\",EXPANDED_CHANGED:\"expandedChanged\",FIRST_QUARTILE:\"firstQuartile\",IMPRESSION:\"impression\",INTERACTION:\"interaction\",LINEAR_CHANGE:\"linearChange\",LINEAR_CHANGED:\"linearChanged\",LOADED:\"loaded\",LOG:\"log\",MIDPOINT:\"midpoint\",PAUSED:\"pause\",RESUMED:\"resume\",SKIPPABLE_STATE_CHANGED:\"skippableStateChanged\",SKIPPED:\"skip\",STARTED:\"start\",THIRD_QUARTILE:\"thirdQuartile\",USER_CLOSE:\"userClose\",VIDEO_CLICKED:\"videoClicked\",VIDEO_ICON_CLICKED:\"videoIconClicked\",VIEWABLE_IMPRESSION:\"viewable_impression\",VOLUME_CHANGED:\"volumeChange\",VOLUME_MUTED:\"mute\"};var AdErrorEvent=function(error){this.error=error,this.type=\"adError\",this.getError=function(){return this.error},this.getUserRequestContext=function(){var _this$error;return null!==(_this$error=this.error)&&void 0!==_this$error&&_this$error.userRequestContext?this.error.userRequestContext:{}}};AdErrorEvent.Type={AD_ERROR:\"adError\"};var CustomContentLoadedEvent=function(){};CustomContentLoadedEvent.Type={CUSTOM_CONTENT_LOADED:\"deprecated-event\"};var CompanionAdSelectionSettings=function(){};CompanionAdSelectionSettings.CreativeType={ALL:\"All\",FLASH:\"Flash\",IMAGE:\"Image\"},CompanionAdSelectionSettings.ResourceType={ALL:\"All\",HTML:\"Html\",IFRAME:\"IFrame\",STATIC:\"Static\"},CompanionAdSelectionSettings.SizeCriteria={IGNORE:\"IgnoreSize\",SELECT_EXACT_MATCH:\"SelectExactMatch\",SELECT_NEAR_MATCH:\"SelectNearMatch\"};var AdCuePoints=function(){};AdCuePoints.prototype={getCuePoints:function(){return[]},getAdIdRegistry:function(){return\"\"},getAdIdValue:function(){return\"\"}};var AdProgressData=noopFunc;Object.assign(ima,{AdCuePoints:AdCuePoints,AdDisplayContainer:AdDisplayContainer,AdError:AdError,AdErrorEvent:AdErrorEvent,AdEvent:AdEvent,AdPodInfo:AdPodInfo,AdProgressData:AdProgressData,AdsLoader:AdsLoader,AdsManager:manager,AdsManagerLoadedEvent:AdsManagerLoadedEvent,AdsRenderingSettings:AdsRenderingSettings,AdsRequest:AdsRequest,CompanionAd:CompanionAd,CompanionAdSelectionSettings:CompanionAdSelectionSettings,CustomContentLoadedEvent:CustomContentLoadedEvent,gptProxyInstance:{},ImaSdkSettings:ImaSdkSettings,OmidAccessMode:{DOMAIN:\"domain\",FULL:\"full\",LIMITED:\"limited\"},OmidVerificationVendor:{1:\"OTHER\",2:\"MOAT\",3:\"DOUBLEVERIFY\",4:\"INTEGRAL_AD_SCIENCE\",5:\"PIXELATE\",6:\"NIELSEN\",7:\"COMSCORE\",8:\"MEETRICS\",9:\"GOOGLE\",OTHER:1,MOAT:2,DOUBLEVERIFY:3,INTEGRAL_AD_SCIENCE:4,PIXELATE:5,NIELSEN:6,COMSCORE:7,MEETRICS:8,GOOGLE:9},settings:new ImaSdkSettings,UiElements:{AD_ATTRIBUTION:\"adAttribution\",COUNTDOWN:\"countdown\"},UniversalAdIdInfo:UniversalAdIdInfo,VERSION:\"3.453.0\",ViewMode:{FULLSCREEN:\"fullscreen\",NORMAL:\"normal\"}}),window.google||(window.google={}),null!==(_window$google$ima=window.google.ima)&&void 0!==_window$google$ima&&_window$google$ima.dai&&(ima.dai=window.google.ima.dai),window.google.ima=ima,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -718,7 +730,7 @@ "ubo-googlesyndication_adsbygoogle.js", "googlesyndication_adsbygoogle.js" ], - "scriptlet": "function GoogleSyndicationAdsByGoogle(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){window.adsbygoogle={loaded:!0,push(arg){if(void 0===this.length&&(this.length=0,this.length+=1),null!==arg&&arg instanceof Object&&\"Object\"===arg.constructor.name)for(var _i=0,_Object$keys=Object.keys(arg);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];if(\"function\"==typeof arg[key])try{arg[key].call(this,{})}catch(_unused){}}}};for(var adElems=document.querySelectorAll(\".adsbygoogle\"),css=\"height:1px!important;max-height:1px!important;max-width:1px!important;width:1px!important;\",executed=!1,i=0;i0&&(areIframesDefined=2===childNodesQuantity&&\"iframe\"===adElemChildNodes[0].nodeName.toLowerCase()&&adElemChildNodes[0].id.includes(\"aswift_\")&&\"iframe\"===adElemChildNodes[1].nodeName.toLowerCase()&&adElemChildNodes[1].id.includes(\"google_ads_iframe_\")),!areIframesDefined){adElems[i].setAttribute(\"data-adsbygoogle-status\",\"done\");var aswiftIframe=document.createElement(\"iframe\");aswiftIframe.id=\"\".concat(\"aswift_\").concat(i),aswiftIframe.style=css,adElems[i].appendChild(aswiftIframe);var innerAswiftIframe=document.createElement(\"iframe\");aswiftIframe.contentWindow.document.body.appendChild(innerAswiftIframe);var googleadsIframe=document.createElement(\"iframe\");googleadsIframe.id=\"\".concat(\"google_ads_iframe_\").concat(i),googleadsIframe.style=css,adElems[i].appendChild(googleadsIframe);var innerGoogleadsIframe=document.createElement(\"iframe\");googleadsIframe.contentWindow.document.body.appendChild(innerGoogleadsIframe),executed=!0}}executed&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function GoogleSyndicationAdsByGoogle(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){window.adsbygoogle={loaded:!0,push(arg){if(void 0===this.length&&(this.length=0,this.length+=1),null!==arg&&arg instanceof Object&&\"Object\"===arg.constructor.name)for(var _i=0,_Object$keys=Object.keys(arg);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];if(\"function\"==typeof arg[key])try{arg[key].call(this,{})}catch(_unused){}}}};for(var adElems=document.querySelectorAll(\".adsbygoogle\"),css=\"height:1px!important;max-height:1px!important;max-width:1px!important;width:1px!important;\",executed=!1,i=0;i0&&(areIframesDefined=2===childNodesQuantity&&\"iframe\"===adElemChildNodes[0].nodeName.toLowerCase()&&adElemChildNodes[0].id.includes(\"aswift_\")&&\"iframe\"===adElemChildNodes[1].nodeName.toLowerCase()&&adElemChildNodes[1].id.includes(\"google_ads_iframe_\")),!areIframesDefined){adElems[i].setAttribute(\"data-adsbygoogle-status\",\"done\");var aswiftIframe=document.createElement(\"iframe\");aswiftIframe.id=\"\".concat(\"aswift_\").concat(i),aswiftIframe.style=css,adElems[i].appendChild(aswiftIframe);var innerAswiftIframe=document.createElement(\"iframe\");aswiftIframe.contentWindow.document.body.appendChild(innerAswiftIframe);var googleadsIframe=document.createElement(\"iframe\");googleadsIframe.id=\"\".concat(\"google_ads_iframe_\").concat(i),googleadsIframe.style=css,adElems[i].appendChild(googleadsIframe);var innerGoogleadsIframe=document.createElement(\"iframe\");googleadsIframe.contentWindow.document.body.appendChild(innerGoogleadsIframe),executed=!0}}executed&&function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -726,43 +738,43 @@ "ubo-googletagservices_gpt.js", "googletagservices_gpt.js" ], - "scriptlet": "function GoogleTagServicesGpt(source,args){function noopFunc(){}function noopThis(){return this}function noopNull(){return null}function noopArray(){return[]}function noopStr(){return\"\"}function trueFunc(){return!0}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var slots=new Map,slotsById=new Map,slotsPerPath=new Map,slotCreatives=new Map,eventCallbacks=new Map,gTargeting=new Map,addEventListener=function(name,listener){return eventCallbacks.has(name)||eventCallbacks.set(name,new Set),eventCallbacks.get(name).add(listener),this},removeEventListener=function(name,listener){return!!eventCallbacks.has(name)&&eventCallbacks.get(name).delete(listener)},fireSlotEvent=function(name,slot){return new Promise((function(resolve){requestAnimationFrame((function(){for(var size=[0,0],callbacksSet=eventCallbacks.get(name)||[],callbackArray=Array.from(callbacksSet),i=0;i\",f.style=\"position:absolute; width:0; height:0; left:0; right:0; z-index:-1; border:0\",f.setAttribute(\"width\",0),f.setAttribute(\"height\",0),f.setAttribute(\"data-load-complete\",!0),f.setAttribute(\"data-google-container-id\",!0),f.setAttribute(\"sandbox\",\"\"),node.appendChild(f)}}(slot),fireSlotEvent(\"slotRenderEnded\",slot),fireSlotEvent(\"slotRequested\",slot),fireSlotEvent(\"slotResponseReceived\",slot),fireSlotEvent(\"slotOnload\",slot),fireSlotEvent(\"impressionViewable\",slot)}}},companionAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,enableSyncLoading:noopFunc,setRefreshUnfilledSlots:noopFunc,getSlots:noopArray},contentService={addEventListener:addEventListener,removeEventListener:removeEventListener,setContent:noopFunc};function PassbackSlot(){}function SizeMappingBuilder(){}PassbackSlot.prototype.display=noopFunc,PassbackSlot.prototype.get=noopNull,PassbackSlot.prototype.set=noopThis,PassbackSlot.prototype.setClickUrl=noopThis,PassbackSlot.prototype.setTagForChildDirectedTreatment=noopThis,PassbackSlot.prototype.setTargeting=noopThis,PassbackSlot.prototype.updateTargetingFromMap=noopThis,SizeMappingBuilder.prototype.addSize=noopThis,SizeMappingBuilder.prototype.build=noopNull;var getTargetingValue=function(v){if(\"string\"==typeof v)return[v];try{return Array.prototype.flat.call(v)}catch(_unused){}return[]},defineSlot=function(adUnitPath,creatives,optDiv){var _document$getElementB2;if(slotsById.has(optDiv))return null===(_document$getElementB2=document.getElementById(optDiv))||void 0===_document$getElementB2||_document$getElementB2.remove(),slotsById.get(optDiv);var attributes=new Map,targeting=new Map,exclusions=new Set,response={advertiserId:void 0,campaignId:void 0,creativeId:void 0,creativeTemplateId:void 0,lineItemId:void 0},sizes=[{getHeight:function(){return 2},getWidth:function(){return 2}}],num=(slotsPerPath.get(adUnitPath)||0)+1;slotsPerPath.set(adUnitPath,num);var id=\"\".concat(adUnitPath,\"_\").concat(num),clickUrl=\"\",collapseEmptyDiv=null,services=new Set,slot={addService:e=>(services.add(e),slot),clearCategoryExclusions:noopThis,clearTargeting(k){void 0===k?targeting.clear():targeting.delete(k)},defineSizeMapping(mapping){return slotCreatives.set(optDiv,mapping),this},get:function(k){return attributes.get(k)},getAdUnitPath:function(){return adUnitPath},getAttributeKeys:function(){return Array.from(attributes.keys())},getCategoryExclusions:function(){return Array.from(exclusions)},getClickUrl:function(){return clickUrl},getCollapseEmptyDiv:function(){return collapseEmptyDiv},getContentUrl:function(){return\"\"},getDivStartsCollapsed:function(){return null},getDomId:function(){return optDiv},getEscapedQemQueryId:function(){return\"\"},getFirstLook:function(){return 0},getId:function(){return id},getHtml:function(){return\"\"},getName:function(){return id},getOutOfPage:function(){return!1},getResponseInformation:function(){return response},getServices:function(){return Array.from(services)},getSizes:function(){return sizes},getSlotElementId:function(){return optDiv},getSlotId:function(){return slot},getTargeting:function(k){return targeting.get(k)||gTargeting.get(k)||[]},getTargetingKeys:function(){return Array.from(new Set(Array.of(...gTargeting.keys(),...targeting.keys())))},getTargetingMap:function(){return Object.assign(Object.fromEntries(gTargeting.entries()),Object.fromEntries(targeting.entries()))},set:(k,v)=>(attributes.set(k,v),slot),setCategoryExclusion:e=>(exclusions.add(e),slot),setClickUrl:u=>(clickUrl=u,slot),setCollapseEmptyDiv:v=>(collapseEmptyDiv=!!v,slot),setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting:(k,v)=>(targeting.set(k,getTargetingValue(v)),slot),toString:function(){return id},updateTargetingFromMap:map=>(function(targeting,map){if(\"object\"==typeof map)for(var key in map)Object.prototype.hasOwnProperty.call(map,key)&&targeting.set(key,getTargetingValue(map[key]))}(targeting,map),slot)};return slots.set(adUnitPath,slot),slotsById.set(optDiv,slot),slotCreatives.set(optDiv,creatives),slot},pubAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,clear:noopFunc,clearCategoryExclusions:noopThis,clearTagForChildDirectedTreatment:noopThis,clearTargeting(k){void 0===k?gTargeting.clear():gTargeting.delete(k)},collapseEmptyDivs:noopFunc,defineOutOfPagePassback:()=>new PassbackSlot,definePassback:()=>new PassbackSlot,disableInitialLoad:noopFunc,display:noopFunc,enableAsyncRendering:noopFunc,enableLazyLoad:noopFunc,enableSingleRequest:noopFunc,enableSyncRendering:noopFunc,enableVideoAds:noopFunc,get:noopNull,getAttributeKeys:noopArray,getTargeting:noopArray,getTargetingKeys:noopArray,getSlots:noopArray,isInitialLoadDisabled:trueFunc,refresh:noopFunc,set:noopThis,setCategoryExclusion:noopThis,setCentering:noopFunc,setCookieOptions:noopThis,setForceSafeFrame:noopThis,setLocation:noopThis,setPrivacySettings:noopThis,setPublisherProvidedId:noopThis,setRequestNonPersonalizedAds:noopThis,setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting:noopThis,setVideoContent:noopThis,updateCorrelator:noopFunc},_window$googletag=window.googletag,googletag=void 0===_window$googletag?{}:_window$googletag,_googletag$cmd=googletag.cmd,cmd=void 0===_googletag$cmd?[]:_googletag$cmd;for(googletag.apiReady=!0,googletag.cmd=[],googletag.cmd.push=function(a){try{a()}catch(ex){}return 1},googletag.companionAds=function(){return companionAdsService},googletag.content=function(){return contentService},googletag.defineOutOfPageSlot=defineSlot,googletag.defineSlot=defineSlot,googletag.destroySlots=function(){slots.clear(),slotsById.clear()},googletag.disablePublisherConsole=noopFunc,googletag.display=function(arg){var id;id=null!=arg&&arg.getSlotElementId?arg.getSlotElementId():null!=arg&&arg.nodeType?arg.id:String(arg),displaySlot(slotsById.get(id))},googletag.enableServices=noopFunc,googletag.getVersion=noopStr,googletag.pubads=function(){return pubAdsService},googletag.pubadsReady=!0,googletag.setAdIframeTitle=noopFunc,googletag.sizeMapping=function(){return new SizeMappingBuilder},window.googletag=googletag;0!==cmd.length;)googletag.cmd.push(cmd.shift());!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function GoogleTagServicesGpt(source,args){function noopFunc(){}function noopThis(){return this}function noopNull(){return null}function noopArray(){return[]}function noopStr(){return\"\"}function trueFunc(){return!0}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var slots=new Map,slotsById=new Map,slotsPerPath=new Map,slotCreatives=new Map,eventCallbacks=new Map,gTargeting=new Map,addEventListener=function(name,listener){return eventCallbacks.has(name)||eventCallbacks.set(name,new Set),eventCallbacks.get(name).add(listener),this},removeEventListener=function(name,listener){return!!eventCallbacks.has(name)&&eventCallbacks.get(name).delete(listener)},fireSlotEvent=function(name,slot){return new Promise((function(resolve){requestAnimationFrame((function(){for(var size=[0,0],callbacksSet=eventCallbacks.get(name)||[],callbackArray=Array.from(callbacksSet),i=0;i\",f.style=\"position:absolute; width:0; height:0; left:0; right:0; z-index:-1; border:0\",f.setAttribute(\"width\",0),f.setAttribute(\"height\",0),f.setAttribute(\"data-load-complete\",!0),f.setAttribute(\"data-google-container-id\",!0),f.setAttribute(\"sandbox\",\"\"),node.appendChild(f)}}(slot),fireSlotEvent(\"slotRenderEnded\",slot),fireSlotEvent(\"slotRequested\",slot),fireSlotEvent(\"slotResponseReceived\",slot),fireSlotEvent(\"slotOnload\",slot),fireSlotEvent(\"impressionViewable\",slot)}}},companionAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,enableSyncLoading:noopFunc,setRefreshUnfilledSlots:noopFunc,getSlots:noopArray},contentService={addEventListener:addEventListener,removeEventListener:removeEventListener,setContent:noopFunc};function PassbackSlot(){}function SizeMappingBuilder(){}PassbackSlot.prototype.display=noopFunc,PassbackSlot.prototype.get=noopNull,PassbackSlot.prototype.set=noopThis,PassbackSlot.prototype.setClickUrl=noopThis,PassbackSlot.prototype.setTagForChildDirectedTreatment=noopThis,PassbackSlot.prototype.setTargeting=noopThis,PassbackSlot.prototype.updateTargetingFromMap=noopThis,SizeMappingBuilder.prototype.addSize=noopThis,SizeMappingBuilder.prototype.build=noopNull;var getTargetingValue=function(v){if(\"string\"==typeof v)return[v];try{return Array.prototype.flat.call(v)}catch(_unused){}return[]},defineSlot=function(adUnitPath,creatives,optDiv){var _document$getElementB2;if(slotsById.has(optDiv))return null===(_document$getElementB2=document.getElementById(optDiv))||void 0===_document$getElementB2||_document$getElementB2.remove(),slotsById.get(optDiv);var attributes=new Map,targeting=new Map,exclusions=new Set,response={advertiserId:void 0,campaignId:void 0,creativeId:void 0,creativeTemplateId:void 0,lineItemId:void 0},sizes=[{getHeight:function(){return 2},getWidth:function(){return 2}}],num=(slotsPerPath.get(adUnitPath)||0)+1;slotsPerPath.set(adUnitPath,num);var id=\"\".concat(adUnitPath,\"_\").concat(num),clickUrl=\"\",collapseEmptyDiv=null,services=new Set,slot={addService:e=>(services.add(e),slot),clearCategoryExclusions:noopThis,clearTargeting(k){void 0===k?targeting.clear():targeting.delete(k)},defineSizeMapping(mapping){return slotCreatives.set(optDiv,mapping),this},get:function(k){return attributes.get(k)},getAdUnitPath:function(){return adUnitPath},getAttributeKeys:function(){return Array.from(attributes.keys())},getCategoryExclusions:function(){return Array.from(exclusions)},getClickUrl:function(){return clickUrl},getCollapseEmptyDiv:function(){return collapseEmptyDiv},getContentUrl:function(){return\"\"},getDivStartsCollapsed:function(){return null},getDomId:function(){return optDiv},getEscapedQemQueryId:function(){return\"\"},getFirstLook:function(){return 0},getId:function(){return id},getHtml:function(){return\"\"},getName:function(){return id},getOutOfPage:function(){return!1},getResponseInformation:function(){return response},getServices:function(){return Array.from(services)},getSizes:function(){return sizes},getSlotElementId:function(){return optDiv},getSlotId:function(){return slot},getTargeting:function(k){return targeting.get(k)||gTargeting.get(k)||[]},getTargetingKeys:function(){return Array.from(new Set(Array.of(...gTargeting.keys(),...targeting.keys())))},getTargetingMap:function(){return Object.assign(Object.fromEntries(gTargeting.entries()),Object.fromEntries(targeting.entries()))},set:(k,v)=>(attributes.set(k,v),slot),setCategoryExclusion:e=>(exclusions.add(e),slot),setClickUrl:u=>(clickUrl=u,slot),setCollapseEmptyDiv:v=>(collapseEmptyDiv=!!v,slot),setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting:(k,v)=>(targeting.set(k,getTargetingValue(v)),slot),toString:function(){return id},updateTargetingFromMap:map=>(function(targeting,map){if(\"object\"==typeof map)for(var key in map)Object.prototype.hasOwnProperty.call(map,key)&&targeting.set(key,getTargetingValue(map[key]))}(targeting,map),slot)};return slots.set(adUnitPath,slot),slotsById.set(optDiv,slot),slotCreatives.set(optDiv,creatives),slot},pubAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,clear:noopFunc,clearCategoryExclusions:noopThis,clearTagForChildDirectedTreatment:noopThis,clearTargeting(k){void 0===k?gTargeting.clear():gTargeting.delete(k)},collapseEmptyDivs:noopFunc,defineOutOfPagePassback:()=>new PassbackSlot,definePassback:()=>new PassbackSlot,disableInitialLoad:noopFunc,display:noopFunc,enableAsyncRendering:noopFunc,enableLazyLoad:noopFunc,enableSingleRequest:noopFunc,enableSyncRendering:noopFunc,enableVideoAds:noopFunc,get:noopNull,getAttributeKeys:noopArray,getTargeting:noopArray,getTargetingKeys:noopArray,getSlots:noopArray,isInitialLoadDisabled:trueFunc,refresh:noopFunc,set:noopThis,setCategoryExclusion:noopThis,setCentering:noopFunc,setCookieOptions:noopThis,setForceSafeFrame:noopThis,setLocation:noopThis,setPrivacySettings:noopThis,setPublisherProvidedId:noopThis,setRequestNonPersonalizedAds:noopThis,setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting:noopThis,setVideoContent:noopThis,updateCorrelator:noopFunc},_window$googletag=window.googletag,googletag=void 0===_window$googletag?{}:_window$googletag,_googletag$cmd=googletag.cmd,cmd=void 0===_googletag$cmd?[]:_googletag$cmd;for(googletag.apiReady=!0,googletag.cmd=[],googletag.cmd.push=function(a){try{a()}catch(ex){}return 1},googletag.companionAds=function(){return companionAdsService},googletag.content=function(){return contentService},googletag.defineOutOfPageSlot=defineSlot,googletag.defineSlot=defineSlot,googletag.destroySlots=function(){slots.clear(),slotsById.clear()},googletag.disablePublisherConsole=noopFunc,googletag.display=function(arg){var id;id=null!=arg&&arg.getSlotElementId?arg.getSlotElementId():null!=arg&&arg.nodeType?arg.id:String(arg),displaySlot(slotsById.get(id))},googletag.enableServices=noopFunc,googletag.getVersion=noopStr,googletag.pubads=function(){return pubAdsService},googletag.pubadsReady=!0,googletag.setAdIframeTitle=noopFunc,googletag.sizeMapping=function(){return new SizeMappingBuilder},window.googletag=googletag;0!==cmd.length;)googletag.cmd.push(cmd.shift());!function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "matomo" ], - "scriptlet": "function Matomo(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var Tracker=function(){};Tracker.prototype.setDoNotTrack=noopFunc,Tracker.prototype.setDomains=noopFunc,Tracker.prototype.setCustomDimension=noopFunc,Tracker.prototype.trackPageView=noopFunc;var AsyncTracker=function(){};AsyncTracker.prototype.addListener=noopFunc;var matomoWrapper={getTracker:Tracker,getAsyncTracker:AsyncTracker};window.Piwik=matomoWrapper,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function Matomo(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var Tracker=function(){};Tracker.prototype.setDoNotTrack=noopFunc,Tracker.prototype.setDomains=noopFunc,Tracker.prototype.setCustomDimension=noopFunc,Tracker.prototype.trackPageView=noopFunc;var AsyncTracker=function(){};AsyncTracker.prototype.addListener=noopFunc;var matomoWrapper={getTracker:Tracker,getAsyncTracker:AsyncTracker};window.Piwik=matomoWrapper,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "metrika-yandex-tag" ], - "scriptlet": "function metrikaYandexTag(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var asyncCallbackFromOptions=function(id,param){var options=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},callback=options.callback,ctx=options.ctx;\"function\"==typeof callback&&(callback=void 0!==ctx?callback.bind(ctx):callback,setTimeout((function(){return callback()})))},api={addFileExtension:noopFunc,extLink:asyncCallbackFromOptions,file:asyncCallbackFromOptions,getClientID:function(id,cb){cb&&setTimeout(cb(null))},hit:asyncCallbackFromOptions,notBounce:asyncCallbackFromOptions,params:noopFunc,reachGoal:function(id,target,params,callback,ctx){asyncCallbackFromOptions(null,null,{callback:callback,ctx:ctx})},setUserID:noopFunc,userParams:noopFunc,destruct:noopFunc};function ym(id,funcName){for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return api[funcName]&&api[funcName](id,...args)}void 0===window.ym?(window.ym=ym,ym.a=[]):window.ym&&window.ym.a&&(ym.a=window.ym.a,window.ym=ym,window.ym.a.forEach((function(params){var id;id=params[0],window[\"yaCounter\".concat(id)]=api,document.dispatchEvent(new Event(\"yacounter\".concat(id,\"inited\")))}))),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function metrikaYandexTag(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var asyncCallbackFromOptions=function(id,param){var options=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},callback=options.callback,ctx=options.ctx;\"function\"==typeof callback&&(callback=void 0!==ctx?callback.bind(ctx):callback,setTimeout((function(){return callback()})))},api={addFileExtension:noopFunc,extLink:asyncCallbackFromOptions,file:asyncCallbackFromOptions,getClientID:function(id,cb){cb&&setTimeout(cb(null))},hit:asyncCallbackFromOptions,notBounce:asyncCallbackFromOptions,params:noopFunc,reachGoal:function(id,target,params,callback,ctx){asyncCallbackFromOptions(null,null,{callback:callback,ctx:ctx})},setUserID:noopFunc,userParams:noopFunc,destruct:noopFunc};function ym(id,funcName){for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++)args[_key-2]=arguments[_key];return api[funcName]&&api[funcName](id,...args)}void 0===window.ym?(window.ym=ym,ym.a=[]):window.ym&&window.ym.a&&(ym.a=window.ym.a,window.ym=ym,window.ym.a.forEach((function(params){var id;id=params[0],window[\"yaCounter\".concat(id)]=api,document.dispatchEvent(new Event(\"yacounter\".concat(id,\"inited\")))}))),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "metrika-yandex-watch" ], - "scriptlet": "function metrikaYandexWatch(source,args){function noopFunc(){}function noopArray(){return[]}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var cbName=\"yandex_metrika_callbacks\",asyncCallbackFromOptions=function(){var options=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},callback=options.callback,ctx=options.ctx;\"function\"==typeof callback&&(callback=void 0!==ctx?callback.bind(ctx):callback,setTimeout((function(){return callback()})))};function Metrika(){}Metrika.counters=noopArray,Metrika.prototype.addFileExtension=noopFunc,Metrika.prototype.getClientID=noopFunc,Metrika.prototype.setUserID=noopFunc,Metrika.prototype.userParams=noopFunc,Metrika.prototype.params=noopFunc,Metrika.prototype.counters=noopArray,Metrika.prototype.extLink=function(url,options){asyncCallbackFromOptions(options)},Metrika.prototype.file=function(url,options){asyncCallbackFromOptions(options)},Metrika.prototype.hit=function(url,options){asyncCallbackFromOptions(options)},Metrika.prototype.reachGoal=function(target,params,cb,ctx){asyncCallbackFromOptions({callback:cb,ctx:ctx})},Metrika.prototype.notBounce=asyncCallbackFromOptions,window.Ya?window.Ya.Metrika=Metrika:window.Ya={Metrika:Metrika},window[cbName]&&Array.isArray(window[cbName])&&window[cbName].forEach((function(func){\"function\"==typeof func&&func()})),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function metrikaYandexWatch(source,args){function noopFunc(){}function noopArray(){return[]}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var cbName=\"yandex_metrika_callbacks\",asyncCallbackFromOptions=function(){var options=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},callback=options.callback,ctx=options.ctx;\"function\"==typeof callback&&(callback=void 0!==ctx?callback.bind(ctx):callback,setTimeout((function(){return callback()})))};function Metrika(){}Metrika.counters=noopArray,Metrika.prototype.addFileExtension=noopFunc,Metrika.prototype.getClientID=noopFunc,Metrika.prototype.setUserID=noopFunc,Metrika.prototype.userParams=noopFunc,Metrika.prototype.params=noopFunc,Metrika.prototype.counters=noopArray,Metrika.prototype.extLink=function(url,options){asyncCallbackFromOptions(options)},Metrika.prototype.file=function(url,options){asyncCallbackFromOptions(options)},Metrika.prototype.hit=function(url,options){asyncCallbackFromOptions(options)},Metrika.prototype.reachGoal=function(target,params,cb,ctx){asyncCallbackFromOptions({callback:cb,ctx:ctx})},Metrika.prototype.notBounce=asyncCallbackFromOptions,window.Ya?window.Ya.Metrika=Metrika:window.Ya={Metrika:Metrika},window[cbName]&&Array.isArray(window[cbName])&&window[cbName].forEach((function(func){\"function\"==typeof func&&func()})),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "naver-wcslog" ], - "scriptlet": "function NaverWcslog(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){window.wcs_add={},window.wcs_do=noopFunc,window.wcs={inflow:noopFunc},function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function NaverWcslog(source,args){function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){window.wcs_add={},window.wcs_do=noopFunc,window.wcs={inflow:noopFunc},function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "pardot-1.0" ], - "scriptlet": "function Pardot(source,args){function noopFunc(){}function noopStr(){return\"\"}function noopNull(){return null}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){function piTracker(){window.pi={tracker:{visitor_id:\"\",visitor_id_sign:\"\",pi_opt_in:\"\",campaign_id:\"\"}},window.piScriptNum+=1}window.piVersion=\"1.0.2\",window.piScriptNum=0,window.piScriptObj=[],window.checkNamespace=noopFunc,window.getPardotUrl=noopStr,window.piGetParameter=noopNull,window.piSetCookie=noopFunc,window.piGetCookie=noopStr,window.piResponse=noopFunc,window.piTracker=piTracker,piTracker(),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function Pardot(source,args){function noopFunc(){}function noopStr(){return\"\"}function noopNull(){return null}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){function piTracker(){window.pi={tracker:{visitor_id:\"\",visitor_id_sign:\"\",pi_opt_in:\"\",campaign_id:\"\"}},window.piScriptNum+=1}window.piVersion=\"1.0.2\",window.piScriptNum=0,window.piScriptObj=[],window.checkNamespace=noopFunc,window.getPardotUrl=noopStr,window.piGetParameter=noopNull,window.piSetCookie=noopFunc,window.piGetCookie=noopStr,window.piResponse=noopFunc,window.piTracker=piTracker,piTracker(),function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ "prebid" ], - "scriptlet": "function Prebid(source,args){function noopStr(){return\"\"}function noopArray(){return[]}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var pushFunction=function(arg){if(\"function\"==typeof arg)try{arg.call()}catch(ex){}},pbjsWrapper={addAdUnits(){},adServers:{dfp:{buildVideoUrl:noopStr}},adUnits:[],aliasBidder(){},cmd:[],enableAnalytics(){},getHighestCpmBids:noopArray,libLoaded:!0,que:[],requestBids(arg){if(arg instanceof Object&&arg.bidsBackHandler)try{arg.bidsBackHandler.call()}catch(ex){}},removeAdUnit(){},setBidderConfig(){},setConfig(){},setTargetingForGPTAsync(){}};pbjsWrapper.cmd.push=pushFunction,pbjsWrapper.que.push=pushFunction,window.pbjs=pbjsWrapper,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function Prebid(source,args){function noopStr(){return\"\"}function noopArray(){return[]}var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){var pushFunction=function(arg){if(\"function\"==typeof arg)try{arg.call()}catch(ex){}},pbjsWrapper={addAdUnits(){},adServers:{dfp:{buildVideoUrl:noopStr}},adUnits:[],aliasBidder(){},cmd:[],enableAnalytics(){},getHighestCpmBids:noopArray,libLoaded:!0,que:[],requestBids(arg){if(arg instanceof Object&&arg.bidsBackHandler)try{arg.bidsBackHandler.call()}catch(ex){}},removeAdUnit(){},setBidderConfig(){},setConfig(){},setTargetingForGPTAsync(){}};pbjsWrapper.cmd.push=pushFunction,pbjsWrapper.que.push=pushFunction,window.pbjs=pbjsWrapper,function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" }, { "names": [ @@ -770,7 +782,7 @@ "ubo-scorecardresearch_beacon.js", "scorecardresearch_beacon.js" ], - "scriptlet": "function ScoreCardResearchBeacon(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){window.COMSCORE={purge(){window._comscore=[]},beacon(){}},function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=source.ruleText||\"\";if(source.domainName){var ruleStartIndex,AG_SCRIPTLET_MARKER=\"#%#//\",UBO_SCRIPTLET_MARKER=\"##+js\";source.ruleText.includes(AG_SCRIPTLET_MARKER)?ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER):source.ruleText.includes(UBO_SCRIPTLET_MARKER)&&(ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER));var rulePart=source.ruleText.slice(ruleStartIndex);prefix=\"\".concat(source.domainName).concat(rulePart)}log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" + "scriptlet": "function ScoreCardResearchBeacon(source,args){var updatedArgs=args?[].concat(source).concat(args):[source];try{(function(source){window.COMSCORE={purge(){window._comscore=[]},beacon(){}},function(source){if(!0===source.verbose){try{var log=console.log.bind(console),trace=console.trace.bind(console),prefix=\"\";source.domainName&&(prefix+=\"\".concat(source.domainName)),prefix+=\"#%#//scriptlet('\".concat(source.name,\"', '\").concat(source.args.join(\", \"),\"')\"),log(\"\".concat(prefix,\" trace start\")),trace&&trace(),log(\"\".concat(prefix,\" trace end\"))}catch(e){}\"function\"==typeof window.__debug&&window.__debug(source)}}(source)}).apply(this,updatedArgs)}catch(e){console.log(e)}}" } ] } \ No newline at end of file diff --git a/dist/scriptlets.js b/dist/scriptlets.js index 0f74ca84..ff1321ba 100644 --- a/dist/scriptlets.js +++ b/dist/scriptlets.js @@ -1,7 +1,7 @@ /** * AdGuard Scriptlets - * Version 1.10.25 + * Version 1.11.1 */ (function () { @@ -210,11 +210,11 @@ * if string contains valid regexp flags it will be converted to regexp with flags * TODO think about nested dependencies, but be careful with dependency loops * - * @param input literal string or regexp pattern; defaults to '' (empty string) + * @param rawInput literal string or regexp pattern; defaults to '' (empty string) * @returns regular expression; defaults to /.?/ */ - var toRegExp = function toRegExp() { - var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; + var toRegExp = function toRegExp(rawInput) { + var input = rawInput || ''; var DEFAULT_VALUE = '.?'; var FORWARD_SLASH = '/'; if (input === '') { @@ -973,21 +973,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ''; + var prefix = ''; if (source.domainName) { - var AG_SCRIPTLET_MARKER = '#%#//'; - var UBO_SCRIPTLET_MARKER = '##+js'; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - // delete all domains from ruleText and leave just rule part - var rulePart = source.ruleText.slice(ruleStartIndex); - // prepare applied scriptlet rule for specific domain - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(', '), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2987,14 +2977,16 @@ * ``` * * - `selectors` — required, string with query selectors delimited by comma. The scriptlet supports `>>>` combinator to select elements inside open shadow DOM. For usage, see example below. - * - `extraMatch` — optional, extra condition to check on a page; allows to match `cookie` and `localStorage`; + * - `extraMatch` — optional, extra condition to check on a page; + * allows to match `cookie`, `localStorage` and specified text; * can be set as `name:key[=value]` where `value` is optional. * If `cookie`/`localStorage` starts with `!` then the element will only be clicked - * if specified cookie/localStorage item does not exist. + * if specified `cookie`/`localStorage` item does not exist. * Multiple conditions are allowed inside one `extraMatch` but they should be delimited by comma - * and each of them should match the syntax. Possible `name`s: + * and each of them should match the syntax. Possible `names`: * - `cookie` — test string or regex against cookies on a page * - `localStorage` — check if localStorage item is present + * - `containsText` — check if clicked element contains specified text * - `delay` — optional, time in ms to delay scriptlet execution, defaults to instant execution. * * @@ -3045,6 +3037,12 @@ * example.com#%#//scriptlet('trusted-click-element', 'button[name="agree"], input[type="submit"][value="akkoord"]', 'cookie:cmpconsent, localStorage:promo', '250') * ``` * + * 1. Click element only if clicked element contains text `Accept cookie` + * + * ```adblock + * example.com#%#//scriptlet('trusted-click-element', 'button', 'containsText:Accept cookie') + * ``` + * * 1. Click element only if cookie with name `cmpconsent` does not exist * * ```adblock @@ -3074,23 +3072,41 @@ if (!selectors) { return; } + var SHADOW_COMBINATOR = ' >>> '; var OBSERVER_TIMEOUT_MS = 10000; var THROTTLE_DELAY_MS = 20; var STATIC_CLICK_DELAY_MS = 150; var COOKIE_MATCH_MARKER = 'cookie:'; var LOCAL_STORAGE_MATCH_MARKER = 'localStorage:'; + var TEXT_MATCH_MARKER = 'containsText:'; var SELECTORS_DELIMITER = ','; var COOKIE_STRING_DELIMITER = ';'; // Regex to split match pairs by commas, avoiding the ones included in regexes - var EXTRA_MATCH_DELIMITER = /(,\s*){1}(?=!?cookie:|!?localStorage:)/; + var EXTRA_MATCH_DELIMITER = /(,\s*){1}(?=!?cookie:|!?localStorage:|containsText:)/; var sleep = function sleep(delayMs) { return new Promise(function (resolve) { return setTimeout(resolve, delayMs); }); }; + + // If shadow combinator is present in selector, then override attachShadow and set mode to 'open' + if (selectors.includes(SHADOW_COMBINATOR)) { + var attachShadowWrapper = function attachShadowWrapper(target, thisArg, argumentsList) { + var _argumentsList$; + var mode = (_argumentsList$ = argumentsList[0]) === null || _argumentsList$ === void 0 ? void 0 : _argumentsList$.mode; + if (mode === 'closed') { + argumentsList[0].mode = 'open'; + } + return Reflect.apply(target, thisArg, argumentsList); + }; + var attachShadowHandler = { + apply: attachShadowWrapper + }; + window.Element.prototype.attachShadow = new Proxy(window.Element.prototype.attachShadow, attachShadowHandler); + } var parsedDelay; if (delay) { - parsedDelay = parseInt(delay, 10); + parsedDelay = parseInt(String(delay), 10); var isValidDelay = !Number.isNaN(parsedDelay) || parsedDelay < OBSERVER_TIMEOUT_MS; if (!isValidDelay) { // eslint-disable-next-line max-len @@ -3102,6 +3118,7 @@ var canClick = !parsedDelay; var cookieMatches = []; var localStorageMatches = []; + var textMatches = ''; var isInvertedMatchCookie = false; var isInvertedMatchLocalStorage = false; if (extraMatch) { @@ -3128,6 +3145,12 @@ var localStorageMatch = _matchValue.replace(LOCAL_STORAGE_MATCH_MARKER, ''); localStorageMatches.push(localStorageMatch); } + if (matchStr.includes(TEXT_MATCH_MARKER)) { + var _parseMatchArg3 = parseMatchArg(matchStr), + _matchValue2 = _parseMatchArg3.matchValue; + var textMatch = _matchValue2.replace(TEXT_MATCH_MARKER, ''); + textMatches = textMatch; + } }); } if (cookieMatches.length > 0) { @@ -3143,8 +3166,8 @@ // on which cookie parsing will return cookieKey:undefined pair var valueMatch = parsedCookieMatches[key] ? toRegExp(parsedCookieMatches[key]) : null; var keyMatch = toRegExp(key); - return cookieKeys.some(function (key) { - var keysMatched = keyMatch.test(key); + return cookieKeys.some(function (cookieKey) { + var keysMatched = keyMatch.test(cookieKey); if (!keysMatched) { return false; } @@ -3153,7 +3176,11 @@ if (!valueMatch) { return true; } - return valueMatch.test(parsedCookies[key]); + var parsedCookieValue = parsedCookies[cookieKey]; + if (!parsedCookieValue) { + return false; + } + return valueMatch.test(parsedCookieValue); }); }); var shouldRun = cookiesMatched !== isInvertedMatchCookie; @@ -3171,6 +3198,22 @@ return; } } + var textMatchRegexp = textMatches ? toRegExp(textMatches) : null; + + /** + * Checks if an element contains the specified text. + * + * @param element - The element to check. + * @param matchRegexp - The text to match. + * @returns True if the element contains the specified text, otherwise false. + */ + var doesElementContainText = function doesElementContainText(element, matchRegexp) { + var textContent = element.textContent; + if (!textContent) { + return false; + } + return matchRegexp.test(textContent); + }; /** * Create selectors array and swap selectors to null on finding it's element @@ -3189,7 +3232,7 @@ clicked: false }; }; - var elementsSequence = Array(selectorsSequence.length).fill(createElementObj()); + var elementsSequence = Array(selectorsSequence.length).fill(createElementObj(null)); /** * Go through elementsSequence from left to right, clicking on found elements @@ -3211,6 +3254,9 @@ } // Skip already clicked elements if (!elementObj.clicked) { + if (textMatchRegexp && !doesElementContainText(elementObj.element, textMatchRegexp)) { + continue; + } elementObj.element.click(); elementObj.clicked = true; } @@ -3255,7 +3301,7 @@ // selectorsSequence should be modified after the loop to not break loop indexation selectorsSequence = selectorsSequence.map(function (selector) { - return fulfilledSelectors.includes(selector) ? null : selector; + return selector && fulfilledSelectors.includes(selector) ? null : selector; }); // Disconnect observer after finding all elements @@ -5836,7 +5882,7 @@ } var allowedValues = ['true', 'false']; var shouldCopyValue = value.startsWith('[') && value.endsWith(']'); - var isValidValue = value.length === 0 || !nativeIsNaN(parseInt(value, 10)) && parseInt(value, 10) > 0 && parseInt(value, 10) < 32767 || allowedValues.includes(value.toLowerCase()); + var isValidValue = value.length === 0 || !nativeIsNaN(parseInt(value, 10)) && parseInt(value, 10) >= 0 && parseInt(value, 10) <= 32767 || allowedValues.includes(value.toLowerCase()); if (!shouldCopyValue && !isValidValue) { logMessage(source, "Invalid attribute value provided: '".concat(convertTypeToString(value), "'")); return; @@ -11163,7 +11209,7 @@ * * ``` * - * v1.10.25. + * @added v1.10.25. */ function hrefSanitizer$1(source, selector) { @@ -11391,7 +11437,7 @@ * example.org#%#//scriptlet('json-prune-fetch-response') * ``` * - * v1.10.25. + * @added v1.10.25. */ function jsonPruneFetchResponse$1(source, propsToRemove, obligatoryProps) { var propsToMatch = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : ''; @@ -11464,7 +11510,7 @@ * example.org#%#//scriptlet('no-protected-audience') * ``` * - * v1.10.25. + * @added v1.10.25. */ function noProtectedAudience$1(source) { // Prevent XMLDocuments from being tampered with generic scriptlet rule @@ -11575,7 +11621,7 @@ * * * - * v1.10.25. + * @added v1.10.25. */ /* eslint-enable max-len */ function trustedSuppressNativeMethod$1(source, methodPath, signatureStr) { @@ -11751,7 +11797,7 @@ * example.org#%#//scriptlet('json-prune-xhr-response') * ``` * - * v1.10.25. + * @added v1.10.25. */ function jsonPruneXhrResponse$1(source, propsToRemove, obligatoryProps) { @@ -11947,6 +11993,321 @@ 'json-prune-xhr-response.js', 'ubo-json-prune-xhr-response.js', 'ubo-json-prune-xhr-response']; jsonPruneXhrResponse$1.injections = [hit, logMessage, toRegExp, jsonPruner, getPrunePath, objectToString$1, matchRequestProps, getXhrData, isPruningNeeded, matchStackTrace, getMatchPropsData, getRequestProps, isValidParsedData, parseMatchProps, isValidStrPattern, escapeRegExp, isEmptyObject, getWildcardPropertyInChain, shouldAbortInlineOrInjectedScript, getNativeRegexpTest]; + /** + * @trustedScriptlet trusted-dispatch-event + * + * @description + * Dispatches a custom event on a specified target. + * + * ### Syntax + * + * ```text + * example.org#%#//scriptlet('trusted-dispatch-event', event[, target]) + * ``` + * + * - `event` — required, name of the event to dispatch + * - `target` — optional, target on which event will be invoked. Possible values: + * - CSS selector — dispatch event on the element with the specified selector + * - `window` — dispatch event on the window object + * - if not set, then "document" is used — it's default value + * + * ### Examples + * + * 1. Dispatches a custom event "click" on the document. + * + * ```adblock + * example.org#%#//scriptlet('trusted-dispatch-event', 'click') + * ``` + * + * 2. Dispatches a custom event "submit" on the element with the class "test". + * + * ```adblock + * example.org#%#//scriptlet('trusted-dispatch-event', 'submit', '.test') + * ``` + * + * 3. Dispatches a custom event "load" on the window object. + * + * ```adblock + * example.org#%#//scriptlet('trusted-dispatch-event', 'load', 'window') + * ``` + * + * @added v1.11.1. + */ + + function trustedDispatchEvent$1(source, event, target) { + if (!event) { + return; + } + var hasBeenDispatched = false; + var eventTarget = document; + if (target === 'window') { + eventTarget = window; + } + var events = new Set(); + var dispatch = function dispatch() { + var customEvent = new Event(event); + if (typeof target === 'string' && target !== 'window') { + eventTarget = document.querySelector(target); + } + var isEventAdded = events.has(event); + if (!hasBeenDispatched && isEventAdded && eventTarget) { + hasBeenDispatched = true; + hit(source); + eventTarget.dispatchEvent(customEvent); + } + }; + var wrapper = function wrapper(eventListener, thisArg, args) { + var eventName = args[0]; + if (thisArg && eventName) { + events.add(eventName); + setTimeout(function () { + dispatch(); + }, 1); + } + return Reflect.apply(eventListener, thisArg, args); + }; + var handler = { + apply: wrapper + }; + EventTarget.prototype.addEventListener = new Proxy(EventTarget.prototype.addEventListener, handler); + } + trustedDispatchEvent$1.names = ['trusted-dispatch-event']; + trustedDispatchEvent$1.injections = [hit]; + + /* eslint-disable max-len */ + /** + * @trustedScriptlet trusted-replace-outbound-text + * + * @description + * Replace the text in the outbound function call. + * + * Related UBO scriptlet: + * https://github.com/gorhill/uBlock/commit/21e1ee30ee36c1b9a7a3c9f43ac97e52d8e79661 + * + * ### Syntax + * + * + * ```text + * example.org#%#//scriptlet('trusted-replace-outbound-text', methodPath[, textToReplace[, replacement[, decodeMethod[, stack[, logContent]]]]]) + * ``` + * + * + * - `methodPath` — required, the name of the function to trap, it must have an object as an argument. + * Call with only `methodPath` as an argument will log all text content of the specified function to console, + * but only if function call returns a string, otherwise it will log information that content is not a string. + * - `textToReplace` — optional, string or regular expression which should be replaced. + * By default it's set to `''`. If it's not set to other value and `logContent` is set, it will log the original content. + * - `replacement` — optional, string which replace the matched text. + * By default it's set to '', so matched content will removed. + * - `decodeMethod` — optional, string which specifies the method used to decode the content. + * For now supported value is 'base64'. By default it's set to `''` and no decoding is performed. + * If it's set and `logContent` is also set and `textToReplace` and `replacement` are not set, + * then it will log the decoded content. + * - `stack` — optional, string or regular expression that must match the current function call stack trace. + * If regular expression is invalid it will be skipped. + * - `logContent` — optional, if set to any value, the original and modified content will be logged. + * By default it's set to '' and no content will be logged. + * + * > Logging content may be useful for debugging but it is not allowed for prod versions of filter lists. + * + * ### Examples + * + * + * + * 1. Replace `foo` with 'bar' from the payload of the atob call: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob', 'foo', 'bar') + * ``` + * + * For instance, the following call will return `bar` + * + * ```html + * const text = btoa('foo'); + * atob(text); + * ``` + * + * 1. Replace `disable_ads:false` with 'disable_ads:true' from the payload of the `Array.prototype.join` if content is encoded in base64: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'Array.prototype.join', 'disable_ads:false', 'disable_ads:true', 'base64') + * ``` + * + * For instance, the following call will return `ZGlzYWJsZV9hZHM6dHJ1ZQ==` which is `'disable_ads:true'` after decoding + * + * ```html + * const arrayBase64 = ['ZGlzYWJsZV9h','ZHM6ZmFsc2U=']; // `ZGlzYWJsZV9hZHM6ZmFsc2U=` after decoding is `disable_ads:false` + * arrayBase64.join(''); + * ``` + * + * 1. Replace `"loadAds":true` with `"loadAds":false` from the payload of the JSON.stringify if the stack trace contains `testStackFunction`: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'JSON.stringify', '"loadAds":true', '"loadAds":false', '', 'testStackFunction') + * ``` + * + * For instance, the following call will return `'{"loadAds":false,"content":"bar"}'` + * + * ```html + * const testStackFunction = () => JSON.stringify({ loadAds: true, content: 'bar' }); + * testStackFunction(); + * ``` + * + * 1. Call with `decodeMethod` and `logContent` arguments will log original and decoded text content of the specified function: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'Array.prototype.join', '', '', 'base64' , '', 'true') + * ``` + * + * 1. Call with only first argument will log text content of the specified function: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob') + * ``` + * + * 1. Call with `logContent` argument will log original and modified text content of the specified function: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob', 'foo', 'bar', '', '', 'true') + * ``` + * + * + * + * @added v1.11.1. + */ + /* eslint-enable max-len */ + function trustedReplaceOutboundText$1(source, methodPath) { + var textToReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ''; + var replacement = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : ''; + var decodeMethod = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : ''; + var stack = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : ''; + var logContent = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : ''; + if (!methodPath) { + return; + } + var getPathParts = getPropertyInChain; + var _getPathParts = getPathParts(window, methodPath), + base = _getPathParts.base, + chain = _getPathParts.chain, + prop = _getPathParts.prop; + if (typeof chain !== 'undefined') { + logMessage(source, "Could not reach the end of the prop chain: ".concat(methodPath)); + return; + } + var nativeMethod = base[prop]; + if (!nativeMethod || typeof nativeMethod !== 'function') { + logMessage(source, "Could not retrieve the method: ".concat(methodPath)); + return; + } + + /** + * A simple check if a string is a valid base64 encoded string. + * If after decoding and encoding the string is not the same as the original string, + * then the string is not a valid base64 encoded string. + * + * @param str - The string to be checked. + * @returns A boolean indicating whether the string is a valid base64 encoded string. + */ + var isValidBase64 = function isValidBase64(str) { + try { + if (str === '') { + return false; + } + var decodedString = atob(str); + var encodedString = btoa(decodedString); + // Encoded string may contains padding characters, so it's necessary to remove it before comparison + var stringWithoutPadding = str.replace(/=+$/, ''); + var encodedStringWithoutPadding = encodedString.replace(/=+$/, ''); + return encodedStringWithoutPadding === stringWithoutPadding; + } catch (e) { + return false; + } + }; + + /** + * Decodes the content, replaces the matched pattern with the specified text replacement, + * and returns the modified content. + * If the decode method is not specified, then content is modified without decoding. + * + * @param content - The original content to be decoded and replaced. + * @param pattern - The regular expression pattern to match. + * @param textReplacement - The text to replace the matched pattern. + * @param decode - The method used to decode the content. For now only supported value is 'base64'. + * @param log - The string, if set, decoded content should be logged. + * @returns The content after modifying. + */ + var decodeAndReplaceContent = function decodeAndReplaceContent(content, pattern, textReplacement, decode, log) { + switch (decode) { + case 'base64': + try { + if (!isValidBase64(content)) { + logMessage(source, "Text content is not a valid base64 encoded string: ".concat(content)); + return content; + } + var decodedContent = atob(content); + if (log) { + logMessage(source, "Decoded text content: ".concat(decodedContent)); + } + var modifiedContent = textToReplace ? decodedContent.replace(pattern, textReplacement) : decodedContent; + if (log) { + var message = modifiedContent !== decodedContent ? "Modified decoded text content: ".concat(modifiedContent) : 'Decoded text content was not modified'; + logMessage(source, message); + } + var encodedContent = btoa(modifiedContent); + return encodedContent; + } catch (e) { + return content; + } + default: + return content.replace(pattern, textReplacement); + } + }; + var logOriginalContent = !textToReplace || !!logContent; + var logModifiedContent = !!logContent; + var logDecodedContent = !!decodeMethod && !!logContent; + + // This flag allows to prevent infinite loops when trapping props that are used by scriptlet's own code. + var isMatchingSuspended = false; + var objectWrapper = function objectWrapper(target, thisArg, argumentsList) { + if (isMatchingSuspended) { + return Reflect.apply(target, thisArg, argumentsList); + } + isMatchingSuspended = true; + hit(source); + var result = Reflect.apply(target, thisArg, argumentsList); + if (stack && !matchStackTrace(stack, new Error().stack || '')) { + return result; + } + if (typeof result === 'string') { + if (logOriginalContent) { + logMessage(source, "Original text content: ".concat(result)); + } + var patternRegexp = toRegExp(textToReplace); + var modifiedContent = textToReplace || logDecodedContent ? decodeAndReplaceContent(result, patternRegexp, replacement, decodeMethod, logContent) : result; + if (logModifiedContent) { + var message = modifiedContent !== result ? "Modified text content: ".concat(modifiedContent) : 'Text content was not modified'; + logMessage(source, message); + } + isMatchingSuspended = false; + return modifiedContent; + } + isMatchingSuspended = false; + logMessage(source, 'Content is not a string'); + return result; + }; + var objectHandler = { + apply: objectWrapper + }; + base[prop] = new Proxy(nativeMethod, objectHandler); + } + trustedReplaceOutboundText$1.names = ['trusted-replace-outbound-text' + // trusted scriptlets support no aliases + ]; + + trustedReplaceOutboundText$1.injections = [hit, matchStackTrace, getPropertyInChain, getWildcardPropertyInChain, logMessage, + // following helpers are needed for helpers above + shouldAbortInlineOrInjectedScript, getNativeRegexpTest, toRegExp, isEmptyObject]; + /** * @redirect amazon-apstag * @@ -14130,9 +14491,11 @@ spoofCSS: spoofCSS$1, trustedClickElement: trustedClickElement$1, trustedCreateElement: trustedCreateElement$1, + trustedDispatchEvent: trustedDispatchEvent$1, trustedPruneInboundObject: trustedPruneInboundObject$1, trustedReplaceFetchResponse: trustedReplaceFetchResponse$1, trustedReplaceNodeText: trustedReplaceNodeText$1, + trustedReplaceOutboundText: trustedReplaceOutboundText$1, trustedReplaceXhrResponse: trustedReplaceXhrResponse$1, trustedSetAttr: trustedSetAttr$1, trustedSetConstant: trustedSetConstant$1, @@ -14667,6 +15030,16 @@ return isRedirectRuleByType(rule, RedirectRuleType.ValidAdg); }; + /** + * Checks if the specified redirect resource is compatible with AdGuard + * + * @param redirectName - Redirect resource name to check + * @returns - true if the redirect resource is compatible with AdGuard + */ + var isRedirectResourceCompatibleWithAdg = function isRedirectResourceCompatibleWithAdg(redirectName) { + return Object.keys(validAdgCompatibility).includes(redirectName); + }; + /** * Checks if the AdGuard redirect `rule` has Ubo analog. Needed for Adg->Ubo conversion * @@ -14742,6 +15115,7 @@ ABSENT_SOURCE_TYPE_REPLACEMENT, isAdgRedirectRule, isValidAdgRedirectRule, + isRedirectResourceCompatibleWithAdg, isAdgRedirectCompatibleWithUbo, isUboRedirectCompatibleWithAdg, isAbpRedirectCompatibleWithAdg, @@ -15303,7 +15677,7 @@ * @param modifiers rule modifiers * @param redirectsData validator.REDIRECT_RULE_TYPES.(UBO|ADG) * @param rule rule string - * @returns merker data object + * @returns marker data object */ var getMarkerData = function getMarkerData(modifiers, redirectsData, rule) { var redirectRuleMarker = redirectsData.redirectRuleMarker, @@ -19128,6 +19502,7 @@ getCode: getRedirectCode, isAdgRedirectRule: validator.isAdgRedirectRule, isValidAdgRedirectRule: validator.isValidAdgRedirectRule, + isRedirectResourceCompatibleWithAdg: validator.isRedirectResourceCompatibleWithAdg, isAdgRedirectCompatibleWithUbo: validator.isAdgRedirectCompatibleWithUbo, isUboRedirectCompatibleWithAdg: validator.isUboRedirectCompatibleWithAdg, isAbpRedirectCompatibleWithAdg: validator.isAbpRedirectCompatibleWithAdg, @@ -19138,9 +19513,9 @@ convertAdgRedirectToUbo }; - var version = "1.10.25"; + var version = "1.11.1"; - function AmazonApstag(source,args){function AmazonApstag(source){var apstagWrapper={fetchBids(a,b){if(typeof b==="function"){b([]);}},init:noopFunc,setDisplayBids:noopFunc,targetingKeys:noopFunc};window.apstag=apstagWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{AmazonApstag.apply(this,updatedArgs);}catch(e){console.log(e);}}function DidomiLoader(source,args){function DidomiLoader(source){function UserConsentStatusForVendorSubscribe(){}UserConsentStatusForVendorSubscribe.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendorSubscribe.prototype.subscribe=noopFunc;function UserConsentStatusForVendor(){}UserConsentStatusForVendor.prototype.first=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendor.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendor.prototype.subscribe=noopFunc;var DidomiWrapper={isConsentRequired:falseFunc,getUserConsentStatusForPurpose:trueFunc,getUserConsentStatus:trueFunc,getUserStatus:noopFunc,getRequiredPurposes:noopArray,getUserConsentStatusForVendor:trueFunc,Purposes:{Cookies:"cookies"},notice:{configure:noopFunc,hide:noopFunc,isVisible:falseFunc,show:noopFunc,showDataProcessing:trueFunc},isUserConsentStatusPartial:falseFunc,on(){return {actions:{},emitter:{},services:{},store:{}};},shouldConsentBeCollected:falseFunc,getUserConsentStatusForAll:noopFunc,getObservableOnUserConsentStatusForVendor(){return new UserConsentStatusForVendor();}};window.Didomi=DidomiWrapper;var didomiStateWrapper={didomiExperimentId:"",didomiExperimentUserGroup:"",didomiGDPRApplies:1,didomiIABConsent:"",didomiPurposesConsent:"",didomiPurposesConsentDenied:"",didomiPurposesConsentUnknown:"",didomiVendorsConsent:"",didomiVendorsConsentDenied:"",didomiVendorsConsentUnknown:"",didomiVendorsRawConsent:"",didomiVendorsRawConsentDenied:"",didomiVendorsRawConsentUnknown:""};window.didomiState=didomiStateWrapper;var tcData={eventStatus:"tcloaded",gdprApplies:false,listenerId:noopFunc,vendor:{consents:[]},purpose:{consents:[]}};var __tcfapiWrapper=function __tcfapiWrapper(command,version,callback){if(typeof callback!=="function"||command==="removeEventListener"){return;}callback(tcData,true);};window.__tcfapi=__tcfapiWrapper;var didomiEventListenersWrapper={stub:true,push:noopFunc};window.didomiEventListeners=didomiEventListenersWrapper;var didomiOnReadyWrapper={stub:true,push(arg){if(typeof arg!=="function"){return;}if(document.readyState!=="complete"){window.addEventListener("load",function(){setTimeout(arg(window.Didomi));});}else {setTimeout(arg(window.Didomi));}}};window.didomiOnReady=window.didomiOnReady||didomiOnReadyWrapper;if(Array.isArray(window.didomiOnReady)){window.didomiOnReady.forEach(function(arg){if(typeof arg==="function"){try{setTimeout(arg(window.Didomi));}catch(e){}}});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopArray(){return [];}function trueFunc(){return true;}function falseFunc(){return false;}var updatedArgs=args?[].concat(source).concat(args):[source];try{DidomiLoader.apply(this,updatedArgs);}catch(e){console.log(e);}}function Fingerprintjs2(source,args){function Fingerprintjs2(source){var browserId="";for(var i=0;i<8;i+=1){browserId+=(Math.random()*65536+4096).toString(16).slice(-4);}var Fingerprint2=function Fingerprint2(){};Fingerprint2.get=function(options,callback){if(!callback){callback=options;}setTimeout(function(){if(callback){callback(browserId,[]);}},1);};Fingerprint2.prototype={get:Fingerprint2.get};window.Fingerprint2=Fingerprint2;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{Fingerprintjs2.apply(this,updatedArgs);}catch(e){console.log(e);}}function Fingerprintjs3(source,args){function Fingerprintjs3(source){var visitorId=function(){var id="";for(var i=0;i<8;i+=1){id+=(Math.random()*65536+4096).toString(16).slice(-4);}return id;}();var FingerprintJS=function FingerprintJS(){};FingerprintJS.prototype={load(){return Promise.resolve(new FingerprintJS());},get(){return Promise.resolve({visitorId:visitorId});},hashComponents:noopStr};window.FingerprintJS=new FingerprintJS();hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{Fingerprintjs3.apply(this,updatedArgs);}catch(e){console.log(e);}}function Gemius(source,args){function Gemius(source){var GemiusPlayer=function GemiusPlayer(){};GemiusPlayer.prototype={setVideoObject:noopFunc,newProgram:noopFunc,programEvent:noopFunc,newAd:noopFunc,adEvent:noopFunc};window.GemiusPlayer=GemiusPlayer;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{Gemius.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleAnalytics(source,args){function GoogleAnalytics(source){var _window$googleAnalyti;var Tracker=function Tracker(){};var proto=Tracker.prototype;proto.get=noopFunc;proto.set=noopFunc;proto.send=noopFunc;var googleAnalyticsName=window.GoogleAnalyticsObject||"ga";var queue=(_window$googleAnalyti=window[googleAnalyticsName])===null||_window$googleAnalyti===void 0?void 0:_window$googleAnalyti.q;function ga(a){var len=arguments.length;if(len===0){return;}var lastArg=arguments[len-1];var replacer;if(lastArg instanceof Object&&lastArg!==null&&typeof lastArg.hitCallback==="function"){replacer=lastArg.hitCallback;}else if(typeof lastArg==="function"){replacer=function replacer(){lastArg(ga.create());};}try{setTimeout(replacer,1);}catch(ex){}}ga.create=function(){return new Tracker();};ga.getByName=function(){return new Tracker();};ga.getAll=function(){return [new Tracker()];};ga.remove=noopFunc;ga.loaded=true;window[googleAnalyticsName]=ga;if(Array.isArray(queue)){var push=function push(arg){ga(...arg);};queue.push=push;queue.forEach(push);}var _window=window,dataLayer=_window.dataLayer,google_optimize=_window.google_optimize;if(dataLayer instanceof Object===false){return;}if(dataLayer.hide instanceof Object&&typeof dataLayer.hide.end==="function"){dataLayer.hide.end();}var handleCallback=function handleCallback(dataObj,funcName){if(dataObj&&typeof dataObj[funcName]==="function"){setTimeout(dataObj[funcName]);}};if(typeof dataLayer.push==="function"){dataLayer.push=function(data){if(data instanceof Object){handleCallback(data,"eventCallback");for(var key in data){handleCallback(data[key],"event_callback");}if(!data.hasOwnProperty("eventCallback")&&!data.hasOwnProperty("eventCallback")){[].push.call(window.dataLayer,data);}}if(Array.isArray(data)){data.forEach(function(arg){handleCallback(arg,"callback");});}return noopFunc;};}if(google_optimize instanceof Object&&typeof google_optimize.get==="function"){var googleOptimizeWrapper={get:noopFunc};window.google_optimize=googleOptimizeWrapper;}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleAnalytics.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleAnalyticsGa(source,args){function GoogleAnalyticsGa(source){function Gaq(){}Gaq.prototype.Na=noopFunc;Gaq.prototype.O=noopFunc;Gaq.prototype.Sa=noopFunc;Gaq.prototype.Ta=noopFunc;Gaq.prototype.Va=noopFunc;Gaq.prototype._createAsyncTracker=noopFunc;Gaq.prototype._getAsyncTracker=noopFunc;Gaq.prototype._getPlugin=noopFunc;Gaq.prototype.push=function(data){if(typeof data==="function"){data();return;}if(Array.isArray(data)===false){return;}if(typeof data[0]==="string"&&/(^|\.)_link$/.test(data[0])&&typeof data[1]==="string"){window.location.assign(data[1]);}if(data[0]==="_set"&&data[1]==="hitCallback"&&typeof data[2]==="function"){data[2]();}};var gaq=new Gaq();var asyncTrackers=window._gaq||[];if(Array.isArray(asyncTrackers)){while(asyncTrackers[0]){gaq.push(asyncTrackers.shift());}}window._gaq=gaq.qf=gaq;function Gat(){}var api=["_addIgnoredOrganic","_addIgnoredRef","_addItem","_addOrganic","_addTrans","_clearIgnoredOrganic","_clearIgnoredRef","_clearOrganic","_cookiePathCopy","_deleteCustomVar","_getName","_setAccount","_getAccount","_getClientInfo","_getDetectFlash","_getDetectTitle","_getLinkerUrl","_getLocalGifPath","_getServiceMode","_getVersion","_getVisitorCustomVar","_initData","_link","_linkByPost","_setAllowAnchor","_setAllowHash","_setAllowLinker","_setCampContentKey","_setCampMediumKey","_setCampNameKey","_setCampNOKey","_setCampSourceKey","_setCampTermKey","_setCampaignCookieTimeout","_setCampaignTrack","_setClientInfo","_setCookiePath","_setCookiePersistence","_setCookieTimeout","_setCustomVar","_setDetectFlash","_setDetectTitle","_setDomainName","_setLocalGifPath","_setLocalRemoteServerMode","_setLocalServerMode","_setReferrerOverride","_setRemoteServerMode","_setSampleRate","_setSessionTimeout","_setSiteSpeedSampleRate","_setSessionCookieTimeout","_setVar","_setVisitorCookieTimeout","_trackEvent","_trackPageLoadTime","_trackPageview","_trackSocial","_trackTiming","_trackTrans","_visitCode"];var tracker=api.reduce(function(res,funcName){res[funcName]=noopFunc;return res;},{});tracker._getLinkerUrl=function(a){return a;};tracker._link=function(url){if(typeof url!=="string"){return;}try{window.location.assign(url);}catch(e){logMessage(source,e);}};Gat.prototype._anonymizeIP=noopFunc;Gat.prototype._createTracker=noopFunc;Gat.prototype._forceSSL=noopFunc;Gat.prototype._getPlugin=noopFunc;Gat.prototype._getTracker=function(){return tracker;};Gat.prototype._getTrackerByName=function(){return tracker;};Gat.prototype._getTrackers=noopFunc;Gat.prototype.aa=noopFunc;Gat.prototype.ab=noopFunc;Gat.prototype.hb=noopFunc;Gat.prototype.la=noopFunc;Gat.prototype.oa=noopFunc;Gat.prototype.pa=noopFunc;Gat.prototype.u=noopFunc;var gat=new Gat();window._gat=gat;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleAnalyticsGa.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleIma3(source,args){function GoogleIma3(source){var _window$google$ima;var VERSION="3.453.0";var ima={};var AdDisplayContainer=function AdDisplayContainer(containerElement){var divElement=document.createElement("div");divElement.style.setProperty("display","none","important");divElement.style.setProperty("visibility","collapse","important");if(containerElement){containerElement.appendChild(divElement);}};AdDisplayContainer.prototype.destroy=noopFunc;AdDisplayContainer.prototype.initialize=noopFunc;var ImaSdkSettings=function ImaSdkSettings(){};ImaSdkSettings.CompanionBackfillMode={ALWAYS:"always",ON_MASTER_AD:"on_master_ad"};ImaSdkSettings.VpaidMode={DISABLED:0,ENABLED:1,INSECURE:2};ImaSdkSettings.prototype={c:true,f:{},i:false,l:"",p:"",r:0,t:"",v:"",getCompanionBackfill:noopFunc,getDisableCustomPlaybackForIOS10Plus(){return this.i;},getDisabledFlashAds:function getDisabledFlashAds(){return true;},getFeatureFlags(){return this.f;},getLocale(){return this.l;},getNumRedirects(){return this.r;},getPlayerType(){return this.t;},getPlayerVersion(){return this.v;},getPpid(){return this.p;},getVpaidMode(){return this.C;},isCookiesEnabled(){return this.c;},isVpaidAdapter(){return this.M;},setCompanionBackfill:noopFunc,setAutoPlayAdBreaks(a){this.K=a;},setCookiesEnabled(c){this.c=!!c;},setDisableCustomPlaybackForIOS10Plus(i){this.i=!!i;},setDisableFlashAds:noopFunc,setFeatureFlags(f){this.f=!!f;},setIsVpaidAdapter(a){this.M=a;},setLocale(l){this.l=!!l;},setNumRedirects(r){this.r=!!r;},setPageCorrelator(a){this.R=a;},setPlayerType(t){this.t=!!t;},setPlayerVersion(v){this.v=!!v;},setPpid(p){this.p=!!p;},setVpaidMode(a){this.C=a;},setSessionId:noopFunc,setStreamCorrelator:noopFunc,setVpaidAllowed:noopFunc,CompanionBackfillMode:{ALWAYS:"always",ON_MASTER_AD:"on_master_ad"},VpaidMode:{DISABLED:0,ENABLED:1,INSECURE:2}};var EventHandler=function EventHandler(){this.listeners=new Map();this._dispatch=function(e){var listeners=this.listeners.get(e.type);listeners=listeners?listeners.values():[];for(var _i=0,_Array$from=Array.from(listeners);_i<_Array$from.length;_i++){var listener=_Array$from[_i];try{listener(e);}catch(r){logMessage(source,r);}}};this.addEventListener=function(types,callback,options,context){if(!Array.isArray(types)){types=[types];}for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleIma3.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleSyndicationAdsByGoogle(source,args){function GoogleSyndicationAdsByGoogle(source){window.adsbygoogle={loaded:true,push(arg){if(typeof this.length==="undefined"){this.length=0;this.length+=1;}if(arg!==null&&arg instanceof Object&&arg.constructor.name==="Object"){for(var _i=0,_Object$keys=Object.keys(arg);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];if(typeof arg[key]==="function"){try{arg[key].call(this,{});}catch(_unused){}}}}}};var adElems=document.querySelectorAll(".adsbygoogle");var css="height:1px!important;max-height:1px!important;max-width:1px!important;width:1px!important;";var statusAttrName="data-adsbygoogle-status";var ASWIFT_IFRAME_MARKER="aswift_";var GOOGLE_ADS_IFRAME_MARKER="google_ads_iframe_";var executed=false;for(var i=0;i0){areIframesDefined=childNodesQuantity===2&&adElemChildNodes[0].nodeName.toLowerCase()==="iframe"&&adElemChildNodes[0].id.includes(ASWIFT_IFRAME_MARKER)&&adElemChildNodes[1].nodeName.toLowerCase()==="iframe"&&adElemChildNodes[1].id.includes(GOOGLE_ADS_IFRAME_MARKER);}if(!areIframesDefined){adElems[i].setAttribute(statusAttrName,"done");var aswiftIframe=document.createElement("iframe");aswiftIframe.id="".concat(ASWIFT_IFRAME_MARKER).concat(i);aswiftIframe.style=css;adElems[i].appendChild(aswiftIframe);var innerAswiftIframe=document.createElement("iframe");aswiftIframe.contentWindow.document.body.appendChild(innerAswiftIframe);var googleadsIframe=document.createElement("iframe");googleadsIframe.id="".concat(GOOGLE_ADS_IFRAME_MARKER).concat(i);googleadsIframe.style=css;adElems[i].appendChild(googleadsIframe);var innerGoogleadsIframe=document.createElement("iframe");googleadsIframe.contentWindow.document.body.appendChild(innerGoogleadsIframe);executed=true;}}if(executed){hit(source);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleSyndicationAdsByGoogle.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleTagServicesGpt(source,args){function GoogleTagServicesGpt(source){var slots=new Map();var slotsById=new Map();var slotsPerPath=new Map();var slotCreatives=new Map();var eventCallbacks=new Map();var gTargeting=new Map();var addEventListener=function addEventListener(name,listener){if(!eventCallbacks.has(name)){eventCallbacks.set(name,new Set());}eventCallbacks.get(name).add(listener);return this;};var removeEventListener=function removeEventListener(name,listener){if(eventCallbacks.has(name)){return eventCallbacks.get(name).delete(listener);}return false;};var fireSlotEvent=function fireSlotEvent(name,slot){return new Promise(function(resolve){requestAnimationFrame(function(){var size=[0,0];var callbacksSet=eventCallbacks.get(name)||[];var callbackArray=Array.from(callbacksSet);for(var i=0;i";f.style="position:absolute; width:0; height:0; left:0; right:0; z-index:-1; border:0";f.setAttribute("width",0);f.setAttribute("height",0);f.setAttribute("data-load-complete",true);f.setAttribute("data-google-container-id",true);f.setAttribute("sandbox","");node.appendChild(f);}};var displaySlot=function displaySlot(slot){if(!slot){return;}var id=slot.getSlotElementId();if(!document.getElementById(id)){return;}var parent=document.getElementById(id);if(parent){parent.appendChild(document.createElement("div"));}emptySlotElement(slot);recreateIframeForSlot(slot);fireSlotEvent("slotRenderEnded",slot);fireSlotEvent("slotRequested",slot);fireSlotEvent("slotResponseReceived",slot);fireSlotEvent("slotOnload",slot);fireSlotEvent("impressionViewable",slot);};var companionAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,enableSyncLoading:noopFunc,setRefreshUnfilledSlots:noopFunc,getSlots:noopArray};var contentService={addEventListener:addEventListener,removeEventListener:removeEventListener,setContent:noopFunc};function PassbackSlot(){}PassbackSlot.prototype.display=noopFunc;PassbackSlot.prototype.get=noopNull;PassbackSlot.prototype.set=noopThis;PassbackSlot.prototype.setClickUrl=noopThis;PassbackSlot.prototype.setTagForChildDirectedTreatment=noopThis;PassbackSlot.prototype.setTargeting=noopThis;PassbackSlot.prototype.updateTargetingFromMap=noopThis;function SizeMappingBuilder(){}SizeMappingBuilder.prototype.addSize=noopThis;SizeMappingBuilder.prototype.build=noopNull;var getTargetingValue=function getTargetingValue(v){if(typeof v==="string"){return [v];}try{return Array.prototype.flat.call(v);}catch(_unused){}return [];};var updateTargeting=function updateTargeting(targeting,map){if(typeof map==="object"){for(var key in map){if(Object.prototype.hasOwnProperty.call(map,key)){targeting.set(key,getTargetingValue(map[key]));}}}};var defineSlot=function defineSlot(adUnitPath,creatives,optDiv){if(slotsById.has(optDiv)){var _document$getElementB2;(_document$getElementB2=document.getElementById(optDiv))===null||_document$getElementB2===void 0?void 0:_document$getElementB2.remove();return slotsById.get(optDiv);}var attributes=new Map();var targeting=new Map();var exclusions=new Set();var response={advertiserId:undefined,campaignId:undefined,creativeId:undefined,creativeTemplateId:undefined,lineItemId:undefined};var sizes=[{getHeight:function getHeight(){return 2;},getWidth:function getWidth(){return 2;}}];var num=(slotsPerPath.get(adUnitPath)||0)+1;slotsPerPath.set(adUnitPath,num);var id="".concat(adUnitPath,"_").concat(num);var clickUrl="";var collapseEmptyDiv=null;var services=new Set();var slot={addService(e){services.add(e);return slot;},clearCategoryExclusions:noopThis,clearTargeting(k){if(k===undefined){targeting.clear();}else {targeting.delete(k);}},defineSizeMapping(mapping){slotCreatives.set(optDiv,mapping);return this;},get:function get(k){return attributes.get(k);},getAdUnitPath:function getAdUnitPath(){return adUnitPath;},getAttributeKeys:function getAttributeKeys(){return Array.from(attributes.keys());},getCategoryExclusions:function getCategoryExclusions(){return Array.from(exclusions);},getClickUrl:function getClickUrl(){return clickUrl;},getCollapseEmptyDiv:function getCollapseEmptyDiv(){return collapseEmptyDiv;},getContentUrl:function getContentUrl(){return "";},getDivStartsCollapsed:function getDivStartsCollapsed(){return null;},getDomId:function getDomId(){return optDiv;},getEscapedQemQueryId:function getEscapedQemQueryId(){return "";},getFirstLook:function getFirstLook(){return 0;},getId:function getId(){return id;},getHtml:function getHtml(){return "";},getName:function getName(){return id;},getOutOfPage:function getOutOfPage(){return false;},getResponseInformation:function getResponseInformation(){return response;},getServices:function getServices(){return Array.from(services);},getSizes:function getSizes(){return sizes;},getSlotElementId:function getSlotElementId(){return optDiv;},getSlotId:function getSlotId(){return slot;},getTargeting:function getTargeting(k){return targeting.get(k)||gTargeting.get(k)||[];},getTargetingKeys:function getTargetingKeys(){return Array.from(new Set(Array.of(...gTargeting.keys(),...targeting.keys())));},getTargetingMap:function getTargetingMap(){return Object.assign(Object.fromEntries(gTargeting.entries()),Object.fromEntries(targeting.entries()));},set(k,v){attributes.set(k,v);return slot;},setCategoryExclusion(e){exclusions.add(e);return slot;},setClickUrl(u){clickUrl=u;return slot;},setCollapseEmptyDiv(v){collapseEmptyDiv=!!v;return slot;},setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting(k,v){targeting.set(k,getTargetingValue(v));return slot;},toString:function toString(){return id;},updateTargetingFromMap(map){updateTargeting(targeting,map);return slot;}};slots.set(adUnitPath,slot);slotsById.set(optDiv,slot);slotCreatives.set(optDiv,creatives);return slot;};var pubAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,clear:noopFunc,clearCategoryExclusions:noopThis,clearTagForChildDirectedTreatment:noopThis,clearTargeting(k){if(k===undefined){gTargeting.clear();}else {gTargeting.delete(k);}},collapseEmptyDivs:noopFunc,defineOutOfPagePassback(){return new PassbackSlot();},definePassback(){return new PassbackSlot();},disableInitialLoad:noopFunc,display:noopFunc,enableAsyncRendering:noopFunc,enableLazyLoad:noopFunc,enableSingleRequest:noopFunc,enableSyncRendering:noopFunc,enableVideoAds:noopFunc,get:noopNull,getAttributeKeys:noopArray,getTargeting:noopArray,getTargetingKeys:noopArray,getSlots:noopArray,isInitialLoadDisabled:trueFunc,refresh:noopFunc,set:noopThis,setCategoryExclusion:noopThis,setCentering:noopFunc,setCookieOptions:noopThis,setForceSafeFrame:noopThis,setLocation:noopThis,setPrivacySettings:noopThis,setPublisherProvidedId:noopThis,setRequestNonPersonalizedAds:noopThis,setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting:noopThis,setVideoContent:noopThis,updateCorrelator:noopFunc};var _window=window,_window$googletag=_window.googletag,googletag=_window$googletag===void 0?{}:_window$googletag;var _googletag$cmd=googletag.cmd,cmd=_googletag$cmd===void 0?[]:_googletag$cmd;googletag.apiReady=true;googletag.cmd=[];googletag.cmd.push=function(a){try{a();}catch(ex){}return 1;};googletag.companionAds=function(){return companionAdsService;};googletag.content=function(){return contentService;};googletag.defineOutOfPageSlot=defineSlot;googletag.defineSlot=defineSlot;googletag.destroySlots=function(){slots.clear();slotsById.clear();};googletag.disablePublisherConsole=noopFunc;googletag.display=function(arg){var id;if(arg!==null&&arg!==void 0&&arg.getSlotElementId){id=arg.getSlotElementId();}else if(arg!==null&&arg!==void 0&&arg.nodeType){id=arg.id;}else {id=String(arg);}displaySlot(slotsById.get(id));};googletag.enableServices=noopFunc;googletag.getVersion=noopStr;googletag.pubads=function(){return pubAdsService;};googletag.pubadsReady=true;googletag.setAdIframeTitle=noopFunc;googletag.sizeMapping=function(){return new SizeMappingBuilder();};window.googletag=googletag;while(cmd.length!==0){googletag.cmd.push(cmd.shift());}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopThis(){return this;}function noopNull(){return null;}function noopArray(){return [];}function noopStr(){return "";}function trueFunc(){return true;}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleTagServicesGpt.apply(this,updatedArgs);}catch(e){console.log(e);}}function Matomo(source,args){function Matomo(source){var Tracker=function Tracker(){};Tracker.prototype.setDoNotTrack=noopFunc;Tracker.prototype.setDomains=noopFunc;Tracker.prototype.setCustomDimension=noopFunc;Tracker.prototype.trackPageView=noopFunc;var AsyncTracker=function AsyncTracker(){};AsyncTracker.prototype.addListener=noopFunc;var matomoWrapper={getTracker:Tracker,getAsyncTracker:AsyncTracker};window.Piwik=matomoWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{Matomo.apply(this,updatedArgs);}catch(e){console.log(e);}}function NaverWcslog(source,args){function NaverWcslog(source){window.wcs_add={};window.wcs_do=noopFunc;window.wcs={inflow:noopFunc};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{NaverWcslog.apply(this,updatedArgs);}catch(e){console.log(e);}}function Pardot(source,args){function Pardot(source){window.piVersion="1.0.2";window.piScriptNum=0;window.piScriptObj=[];window.checkNamespace=noopFunc;window.getPardotUrl=noopStr;window.piGetParameter=noopNull;window.piSetCookie=noopFunc;window.piGetCookie=noopStr;function piTracker(){window.pi={tracker:{visitor_id:"",visitor_id_sign:"",pi_opt_in:"",campaign_id:""}};window.piScriptNum+=1;}window.piResponse=noopFunc;window.piTracker=piTracker;piTracker();hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopStr(){return "";}function noopNull(){return null;}var updatedArgs=args?[].concat(source).concat(args):[source];try{Pardot.apply(this,updatedArgs);}catch(e){console.log(e);}}function Prebid(source,args){function Prebid(source){var pushFunction=function pushFunction(arg){if(typeof arg==="function"){try{arg.call();}catch(ex){}}};var pbjsWrapper={addAdUnits(){},adServers:{dfp:{buildVideoUrl:noopStr}},adUnits:[],aliasBidder(){},cmd:[],enableAnalytics(){},getHighestCpmBids:noopArray,libLoaded:true,que:[],requestBids(arg){if(arg instanceof Object&&arg.bidsBackHandler){try{arg.bidsBackHandler.call();}catch(ex){}}},removeAdUnit(){},setBidderConfig(){},setConfig(){},setTargetingForGPTAsync(){}};pbjsWrapper.cmd.push=pushFunction;pbjsWrapper.que.push=pushFunction;window.pbjs=pbjsWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}function noopArray(){return [];}var updatedArgs=args?[].concat(source).concat(args):[source];try{Prebid.apply(this,updatedArgs);}catch(e){console.log(e);}}function ScoreCardResearchBeacon(source,args){function ScoreCardResearchBeacon(source){window.COMSCORE={purge(){window._comscore=[];},beacon(){}};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{ScoreCardResearchBeacon.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortCurrentInlineScript(source,args){function abortCurrentInlineScript(source,property,search){var searchRegexp=toRegExp(search);var rid=randomId();var SRC_DATA_MARKER="data:text/javascript;base64,";var getCurrentScript=function getCurrentScript(){if("currentScript"in document){return document.currentScript;}var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1];};var ourScript=getCurrentScript();var abort=function abort(){var _scriptEl$src;var scriptEl=getCurrentScript();if(!scriptEl){return;}var content=scriptEl.textContent;try{var textContentGetter=Object.getOwnPropertyDescriptor(Node.prototype,"textContent").get;content=textContentGetter.call(scriptEl);}catch(e){}if(content.length===0&&typeof scriptEl.src!=="undefined"&&(_scriptEl$src=scriptEl.src)!==null&&_scriptEl$src!==void 0&&_scriptEl$src.startsWith(SRC_DATA_MARKER)){var encodedContent=scriptEl.src.slice(SRC_DATA_MARKER.length);content=window.atob(encodedContent);}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){hit(source);throw new ReferenceError(rid);}};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object===false&&base===null){var props=property.split(".");var propIndex=props.indexOf(prop);var baseName=props[propIndex-1];var message="The scriptlet had been executed before the ".concat(baseName," was loaded.");logMessage(source,message);return;}if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var currentValue=base[prop];var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);if(origDescriptor instanceof Object===false||origDescriptor.get instanceof Function===false){currentValue=base[prop];origDescriptor=undefined;}var descriptorWrapper=Object.assign(getDescriptorAddon(),{currentValue:currentValue,get(){if(!this.isAbortingSuspended){this.isolateCallback(abort);}if(origDescriptor instanceof Object){return origDescriptor.get.call(base);}return this.currentValue;},set(newValue){if(!this.isAbortingSuspended){this.isolateCallback(abort);}if(origDescriptor instanceof Object){origDescriptor.set.call(base,newValue);}else {this.currentValue=newValue;}}});setPropertyAccess(base,prop,{get(){return descriptorWrapper.get.call(descriptorWrapper);},set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue);}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getDescriptorAddon(){return {isAbortingSuspended:false,isolateCallback(cb){this.isAbortingSuspended=true;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}var result=cb(...args);this.isAbortingSuspended=false;return result;}catch(_unused){var rid=randomId();this.isAbortingSuspended=false;throw new ReferenceError(rid);}}};}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortCurrentInlineScript.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnPropertyRead(source,args){function abortOnPropertyRead(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{get:abort,set:function set(){}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortOnPropertyRead.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnPropertyWrite(source,args){function abortOnPropertyWrite(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{set:abort});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortOnPropertyWrite.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnStackTrace(source,args){function abortOnStackTrace(source,property,stack){if(!property||!stack){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}if(!stack.match(/^(inlineScript|injectedScript)$/)&&!isValidStrPattern(stack)){logMessage(source,"Invalid parameter: ".concat(stack));return;}var descriptorWrapper=Object.assign(getDescriptorAddon(),{value:base[prop],get(){if(!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,new Error().stack)){abort();}return this.value;},set(newValue){if(!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,new Error().stack)){abort();}this.value=newValue;}});setPropertyAccess(base,prop,{get(){return descriptorWrapper.get.call(descriptorWrapper);},set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue);}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getDescriptorAddon(){return {isAbortingSuspended:false,isolateCallback(cb){this.isAbortingSuspended=true;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}var result=cb(...args);this.isAbortingSuspended=false;return result;}catch(_unused){var rid=randomId();this.isAbortingSuspended=false;throw new ReferenceError(rid);}}};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeSetInterval.apply(window,[callback,delay,...args]);};window.setInterval=intervalWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getBoostMultiplier(boost){var DEFAULT_MULTIPLIER=.05;var MIN_MULTIPLIER=.001;var MAX_MULTIPLIER=50;var parsedBoost=parseFloat(boost);var boostMultiplier=nativeIsNaN(parsedBoost)||!nativeIsFinite(parsedBoost)?DEFAULT_MULTIPLIER:parsedBoost;if(boostMultiplierMAX_MULTIPLIER){boostMultiplier=MAX_MULTIPLIER;}return boostMultiplier;}function isDelayMatched(inputDelay,realDelay){return shouldMatchAnyDelay(inputDelay)||realDelay===getMatchDelay(inputDelay);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function getMatchDelay(delay){var DEFAULT_DELAY=1e3;var parsedDelay=parseInt(delay,10);var delayMatch=nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay;return delayMatch;}function shouldMatchAnyDelay(delay){return delay==="*";}var updatedArgs=args?[].concat(source).concat(args):[source];try{adjustSetInterval.apply(this,updatedArgs);}catch(e){console.log(e);}}function adjustSetTimeout(source,args){function adjustSetTimeout(source,matchCallback,matchDelay,boost){var nativeSetTimeout=window.setTimeout;var matchRegexp=toRegExp(matchCallback);var timeoutWrapper=function timeoutWrapper(callback,delay){if(!isValidCallback(callback)){var message="Scriptlet can't be applied because of invalid callback: '".concat(String(callback),"'");logMessage(source,message);}else if(matchRegexp.test(callback.toString())&&isDelayMatched(matchDelay,delay)){delay*=getBoostMultiplier(boost);hit(source);}for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeSetTimeout.apply(window,[callback,delay,...args]);};window.setTimeout=timeoutWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getBoostMultiplier(boost){var DEFAULT_MULTIPLIER=.05;var MIN_MULTIPLIER=.001;var MAX_MULTIPLIER=50;var parsedBoost=parseFloat(boost);var boostMultiplier=nativeIsNaN(parsedBoost)||!nativeIsFinite(parsedBoost)?DEFAULT_MULTIPLIER:parsedBoost;if(boostMultiplierMAX_MULTIPLIER){boostMultiplier=MAX_MULTIPLIER;}return boostMultiplier;}function isDelayMatched(inputDelay,realDelay){return shouldMatchAnyDelay(inputDelay)||realDelay===getMatchDelay(inputDelay);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function getMatchDelay(delay){var DEFAULT_DELAY=1e3;var parsedDelay=parseInt(delay,10);var delayMatch=nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay;return delayMatch;}function shouldMatchAnyDelay(delay){return delay==="*";}var updatedArgs=args?[].concat(source).concat(args):[source];try{adjustSetTimeout.apply(this,updatedArgs);}catch(e){console.log(e);}}function callNoThrow(source,args){function callNoThrow(source,functionName){if(!functionName){return;}var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(!base||!prop||typeof base[prop]!=="function"){var message="".concat(functionName," is not a function");logMessage(source,message);return;}var objectWrapper=function objectWrapper(){var result;try{result=Reflect.apply(...arguments);}catch(e){var _message="Error calling ".concat(functionName,": ").concat(e.message);logMessage(source,_message);}hit(source);return result;};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(base[prop],objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{callNoThrow.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugCurrentInlineScript(source,args){function debugCurrentInlineScript(source,property,search){var searchRegexp=toRegExp(search);var rid=randomId();var getCurrentScript=function getCurrentScript(){if("currentScript"in document){return document.currentScript;}var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1];};var ourScript=getCurrentScript();var abort=function abort(){var scriptEl=getCurrentScript();if(!scriptEl){return;}var content=scriptEl.textContent;try{var textContentGetter=Object.getOwnPropertyDescriptor(Node.prototype,"textContent").get;content=textContentGetter.call(scriptEl);}catch(e){}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){hit(source);debugger;}};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object===false&&base===null){var props=property.split(".");var propIndex=props.indexOf(prop);var baseName=props[propIndex-1];var message="The scriptlet had been executed before the ".concat(baseName," was loaded.");logMessage(message,source.verbose);return;}if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var currentValue=base[prop];setPropertyAccess(base,prop,{set:function set(value){abort();currentValue=value;},get:function get(){abort();return currentValue;}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugCurrentInlineScript.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugOnPropertyRead(source,args){function debugOnPropertyRead(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);debugger;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{get:abort,set:noopFunc});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugOnPropertyRead.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugOnPropertyWrite(source,args){function debugOnPropertyWrite(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);debugger;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{set:abort});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugOnPropertyWrite.apply(this,updatedArgs);}catch(e){console.log(e);}}function dirString(source,args){function dirString(source,times){var _console=console,dir=_console.dir;function dirWrapper(object){if(typeof dir==="function"){dir.call(this,object);}hit(source);}console.dir=dirWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{dirString.apply(this,updatedArgs);}catch(e){console.log(e);}}function disableNewtabLinks(source,args){function disableNewtabLinks(source){document.addEventListener("click",function(ev){var target=ev.target;while(target!==null){if(target.localName==="a"&&target.hasAttribute("target")){ev.stopPropagation();ev.preventDefault();hit(source);break;}target=target.parentNode;}});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{disableNewtabLinks.apply(this,updatedArgs);}catch(e){console.log(e);}}function evalDataPrune(source,args){function evalDataPrune(source,propsToRemove,requiredInitialProps,stack){var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var nativeObjects={nativeStringify:window.JSON.stringify};var evalWrapper=function evalWrapper(target,thisArg,args){var data=Reflect.apply(target,thisArg,args);if(typeof data==="object"){data=jsonPruner(source,data,prunePaths,requiredPaths,stack,nativeObjects);}return data;};var evalHandler={apply:evalWrapper};window.eval=new Proxy(window.eval,evalHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j1&&arguments[1]!==undefined?arguments[1]:"";if(typeof window.close!=="function"){var message="window.close() is not a function so 'close-window' scriptlet is unavailable";logMessage(source,message);return;}var closeImmediately=function closeImmediately(){try{hit(source);window.close();}catch(e){logMessage(source,e);}};var closeByExtension=function closeByExtension(){var extCall=function extCall(){dispatchEvent(new Event("adguard:scriptlet-close-window"));};window.addEventListener("adguard:subscribed-to-close-window",extCall,{once:true});setTimeout(function(){window.removeEventListener("adguard:subscribed-to-close-window",extCall,{once:true});},5e3);};var shouldClose=function shouldClose(){if(path===""){return true;}var pathRegexp=toRegExp(path);var currentPath="".concat(window.location.pathname).concat(window.location.search);return pathRegexp.test(currentPath);};if(shouldClose()){closeImmediately();if(navigator.userAgent.includes("Chrome")){closeByExtension();}}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{forceWindowClose.apply(this,updatedArgs);}catch(e){console.log(e);}}function hideInShadowDom(source,args){function hideInShadowDom(source,selector,baseSelector){if(!Element.prototype.attachShadow){return;}var hideElement=function hideElement(targetElement){var DISPLAY_NONE_CSS="display:none!important;";targetElement.style.cssText=DISPLAY_NONE_CSS;};var hideHandler=function hideHandler(){var hostElements=!baseSelector?findHostElements(document.documentElement):document.querySelectorAll(baseSelector);var _loop=function _loop(){var isHidden=false;var _pierceShadowDom=pierceShadowDom(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach(function(targetEl){hideElement(targetEl);isHidden=true;});if(isHidden){hit(source);}hostElements=innerHosts;};while(hostElements.length!==0){_loop();}};hideHandler();observeDOMChanges(hideHandler,true);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function findHostElements(rootElement){var hosts=[];if(rootElement){var domElems=rootElement.querySelectorAll("*");domElems.forEach(function(el){if(el.shadowRoot){hosts.push(el);}});}return hosts;}function pierceShadowDom(selector,hostElements){var targets=[];var innerHostsAcc=[];hostElements.forEach(function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot;var shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren));innerHostsAcc.push(findHostElements(shadowRootElem));});var innerHosts=flatten(innerHostsAcc);return {targets:targets,innerHosts:innerHosts};}function flatten(input){var stack=[];input.forEach(function(el){return stack.push(el);});var res=[];while(stack.length){var next=stack.pop();if(Array.isArray(next)){next.forEach(function(el){return stack.push(el);});}else {res.push(next);}}return res.reverse();}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{hideInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function hrefSanitizer(source,args){function hrefSanitizer(source,selector){var attribute=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"text";if(!selector){logMessage(source,"Selector is required.");return;}var regexpNotValidAtStart=/^(?:[\0- \x7F-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u036F\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482-\u0489\u0530\u0557\u0558\u055A-\u055F\u0589-\u05CF\u05EB-\u05EE\u05F3-\u061F\u064B-\u066D\u0670\u06D4\u06D6-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u06FD\u06FE\u0700-\u070F\u0711\u0730-\u074C\u07A6-\u07B0\u07B2-\u07C9\u07EB-\u07F3\u07F6-\u07F9\u07FB-\u07FF\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u083F\u0859-\u085F\u086B-\u086F\u0888\u088F-\u089F\u08CA-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962-\u0970\u0981-\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BC\u09BE-\u09CD\u09CF-\u09DB\u09DE\u09E2-\u09EF\u09F2-\u09FB\u09FD-\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A58\u0A5D\u0A5F-\u0A71\u0A75-\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABC\u0ABE-\u0ACF\u0AD1-\u0ADF\u0AE2-\u0AF8\u0AFA-\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3C\u0B3E-\u0B5B\u0B5E\u0B62-\u0B70\u0B72-\u0B82\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BCF\u0BD1-\u0C04\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C3E-\u0C57\u0C5B\u0C5C\u0C5E\u0C5F\u0C62-\u0C7F\u0C81-\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBC\u0CBE-\u0CDC\u0CDF\u0CE2-\u0CF0\u0CF3-\u0D03\u0D0D\u0D11\u0D3B\u0D3C\u0D3E-\u0D4D\u0D4F-\u0D53\u0D57-\u0D5E\u0D62-\u0D79\u0D80-\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0E00\u0E31\u0E34-\u0E3F\u0E47-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EB1\u0EB4-\u0EBC\u0EBE\u0EBF\u0EC5\u0EC7-\u0EDB\u0EE0-\u0EFF\u0F01-\u0F3F\u0F48\u0F6D-\u0F87\u0F8D-\u0FFF\u102B-\u103E\u1040-\u104F\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16F0\u16F9-\u16FF\u1712-\u171E\u1732-\u173F\u1752-\u175F\u176D\u1771-\u177F\u17B4-\u17D6\u17D8-\u17DB\u17DD-\u181F\u1879-\u187F\u1885\u1886\u18A9\u18AB-\u18AF\u18F6-\u18FF\u191F-\u194F\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19FF\u1A17-\u1A1F\u1A55-\u1AA6\u1AA8-\u1B04\u1B34-\u1B44\u1B4D-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BFF\u1C24-\u1C4C\u1C50-\u1C59\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1CFB-\u1CFF\u1DC0-\u1DFF\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u2182\u2185-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF-\u2E2E\u2E30-\u3004\u3007-\u3030\u3036-\u303A\u303D-\u3040\u3097-\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA620-\uA629\uA62C-\uA63F\uA66F-\uA67E\uA69E\uA69F\uA6E6-\uA716\uA720\uA721\uA789\uA78A\uA7CB-\uA7CF\uA7D2\uA7D4\uA7DA-\uA7F1\uA802\uA806\uA80B\uA823-\uA83F\uA874-\uA881\uA8B4-\uA8F1\uA8F8-\uA8FA\uA8FC\uA8FF-\uA909\uA926-\uA92F\uA947-\uA95F\uA97D-\uA983\uA9B3-\uA9CE\uA9D0-\uA9DF\uA9E5\uA9F0-\uA9F9\uA9FF\uAA29-\uAA3F\uAA43\uAA4C-\uAA5F\uAA77-\uAA79\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAC3-\uAADA\uAADE\uAADF\uAAEB-\uAAF1\uAAF5-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABE3-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB1E\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFE6F\uFE75\uFEFD-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEFF\uDF20-\uDF2C\uDF41\uDF4A-\uDF4F\uDF76-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0-\uDFFF]|\uD801[\uDC9E-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6F\uDD7B\uDD8B\uDD93\uDD96\uDDA2\uDDB2\uDDBA\uDDBD-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDF7F\uDF86\uDFB1\uDFBB-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE01-\uDE0F\uDE14\uDE18\uDE36-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE5-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD24-\uDE7F\uDEAA-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF46-\uDF6F\uDF82-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC00-\uDC02\uDC38-\uDC70\uDC73\uDC74\uDC76-\uDC82\uDCB0-\uDCCF\uDCE9-\uDD02\uDD27-\uDD43\uDD45\uDD46\uDD48-\uDD4F\uDD73-\uDD75\uDD77-\uDD82\uDDB3-\uDDC0\uDDC5-\uDDD9\uDDDB\uDDDD-\uDDFF\uDE12\uDE2C-\uDE3E\uDE41-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEDF-\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A-\uDF3C\uDF3E-\uDF4F\uDF51-\uDF5C\uDF62-\uDFFF]|\uD805[\uDC35-\uDC46\uDC4B-\uDC5E\uDC62-\uDC7F\uDCB0-\uDCC3\uDCC6\uDCC8-\uDD7F\uDDAF-\uDDD7\uDDDC-\uDDFF\uDE30-\uDE43\uDE45-\uDE7F\uDEAB-\uDEB7\uDEB9-\uDEFF\uDF1B-\uDF3F\uDF47-\uDFFF]|\uD806[\uDC2C-\uDC9F\uDCE0-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD30-\uDD3E\uDD40\uDD42-\uDD9F\uDDA8\uDDA9\uDDD1-\uDDE0\uDDE2\uDDE4-\uDDFF\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE4F\uDE51-\uDE5B\uDE8A-\uDE9C\uDE9E-\uDEAF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC2F-\uDC3F\uDC41-\uDC71\uDC90-\uDCFF\uDD07\uDD0A\uDD31-\uDD45\uDD47-\uDD5F\uDD66\uDD69\uDD8A-\uDD97\uDD99-\uDEDF\uDEF3-\uDF01\uDF03\uDF11\uDF34-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC00-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80E-\uD810\uD812-\uD819\uD824-\uD82A\uD82D\uD82E\uD830-\uD834\uD836\uD83C-\uD83F\uD87B-\uD87D\uD87F\uD889-\uDBFF][\uDC00-\uDFFF]|\uD80B[\uDC00-\uDF8F\uDFF1-\uDFFF]|\uD80D[\uDC30-\uDC40\uDC47-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F-\uDE6F\uDEBF-\uDECF\uDEEE-\uDEFF\uDF30-\uDF3F\uDF44-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4F\uDF51-\uDF92\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82B[\uDC00-\uDFEF\uDFF4\uDFFC\uDFFF]|\uD82C[\uDD23-\uDD31\uDD33-\uDD4F\uDD53\uDD54\uDD56-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC-\uDFFF]|\uD837[\uDC00-\uDEFF\uDF1F-\uDF24\uDF2B-\uDFFF]|\uD838[\uDC00-\uDC2F\uDC6E-\uDCFF\uDD2D-\uDD36\uDD3E-\uDD4D\uDD4F-\uDE8F\uDEAE-\uDEBF\uDEEC-\uDFFF]|\uD839[\uDC00-\uDCCF\uDCEC-\uDFDF\uDFE7\uDFEC\uDFEF\uDFFF]|\uD83A[\uDCC5-\uDCFF\uDD44-\uDD4A\uDD4C-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD869[\uDEE0-\uDEFF]|\uD86D[\uDF3A-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDF4F]|\uD888[\uDFB0-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+/;var regexpNotValidAtEnd=/(?:[\0- \x7F-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u036F\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482-\u0489\u0530\u0557\u0558\u055A-\u055F\u0589-\u05CF\u05EB-\u05EE\u05F3-\u061F\u064B-\u066D\u0670\u06D4\u06D6-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u06FD\u06FE\u0700-\u070F\u0711\u0730-\u074C\u07A6-\u07B0\u07B2-\u07C9\u07EB-\u07F3\u07F6-\u07F9\u07FB-\u07FF\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u083F\u0859-\u085F\u086B-\u086F\u0888\u088F-\u089F\u08CA-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962-\u0970\u0981-\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BC\u09BE-\u09CD\u09CF-\u09DB\u09DE\u09E2-\u09EF\u09F2-\u09FB\u09FD-\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A58\u0A5D\u0A5F-\u0A71\u0A75-\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABC\u0ABE-\u0ACF\u0AD1-\u0ADF\u0AE2-\u0AF8\u0AFA-\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3C\u0B3E-\u0B5B\u0B5E\u0B62-\u0B70\u0B72-\u0B82\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BCF\u0BD1-\u0C04\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C3E-\u0C57\u0C5B\u0C5C\u0C5E\u0C5F\u0C62-\u0C7F\u0C81-\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBC\u0CBE-\u0CDC\u0CDF\u0CE2-\u0CF0\u0CF3-\u0D03\u0D0D\u0D11\u0D3B\u0D3C\u0D3E-\u0D4D\u0D4F-\u0D53\u0D57-\u0D5E\u0D62-\u0D79\u0D80-\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0E00\u0E31\u0E34-\u0E3F\u0E47-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EB1\u0EB4-\u0EBC\u0EBE\u0EBF\u0EC5\u0EC7-\u0EDB\u0EE0-\u0EFF\u0F01-\u0F3F\u0F48\u0F6D-\u0F87\u0F8D-\u0FFF\u102B-\u103E\u1040-\u104F\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16F0\u16F9-\u16FF\u1712-\u171E\u1732-\u173F\u1752-\u175F\u176D\u1771-\u177F\u17B4-\u17D6\u17D8-\u17DB\u17DD-\u181F\u1879-\u187F\u1885\u1886\u18A9\u18AB-\u18AF\u18F6-\u18FF\u191F-\u194F\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19FF\u1A17-\u1A1F\u1A55-\u1AA6\u1AA8-\u1B04\u1B34-\u1B44\u1B4D-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BFF\u1C24-\u1C4C\u1C50-\u1C59\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1CFB-\u1CFF\u1DC0-\u1DFF\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u2182\u2185-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF-\u2E2E\u2E30-\u3004\u3007-\u3030\u3036-\u303A\u303D-\u3040\u3097-\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA620-\uA629\uA62C-\uA63F\uA66F-\uA67E\uA69E\uA69F\uA6E6-\uA716\uA720\uA721\uA789\uA78A\uA7CB-\uA7CF\uA7D2\uA7D4\uA7DA-\uA7F1\uA802\uA806\uA80B\uA823-\uA83F\uA874-\uA881\uA8B4-\uA8F1\uA8F8-\uA8FA\uA8FC\uA8FF-\uA909\uA926-\uA92F\uA947-\uA95F\uA97D-\uA983\uA9B3-\uA9CE\uA9D0-\uA9DF\uA9E5\uA9F0-\uA9F9\uA9FF\uAA29-\uAA3F\uAA43\uAA4C-\uAA5F\uAA77-\uAA79\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAC3-\uAADA\uAADE\uAADF\uAAEB-\uAAF1\uAAF5-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABE3-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB1E\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFE6F\uFE75\uFEFD-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEFF\uDF20-\uDF2C\uDF41\uDF4A-\uDF4F\uDF76-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0-\uDFFF]|\uD801[\uDC9E-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6F\uDD7B\uDD8B\uDD93\uDD96\uDDA2\uDDB2\uDDBA\uDDBD-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDF7F\uDF86\uDFB1\uDFBB-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE01-\uDE0F\uDE14\uDE18\uDE36-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE5-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD24-\uDE7F\uDEAA-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF46-\uDF6F\uDF82-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC00-\uDC02\uDC38-\uDC70\uDC73\uDC74\uDC76-\uDC82\uDCB0-\uDCCF\uDCE9-\uDD02\uDD27-\uDD43\uDD45\uDD46\uDD48-\uDD4F\uDD73-\uDD75\uDD77-\uDD82\uDDB3-\uDDC0\uDDC5-\uDDD9\uDDDB\uDDDD-\uDDFF\uDE12\uDE2C-\uDE3E\uDE41-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEDF-\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A-\uDF3C\uDF3E-\uDF4F\uDF51-\uDF5C\uDF62-\uDFFF]|\uD805[\uDC35-\uDC46\uDC4B-\uDC5E\uDC62-\uDC7F\uDCB0-\uDCC3\uDCC6\uDCC8-\uDD7F\uDDAF-\uDDD7\uDDDC-\uDDFF\uDE30-\uDE43\uDE45-\uDE7F\uDEAB-\uDEB7\uDEB9-\uDEFF\uDF1B-\uDF3F\uDF47-\uDFFF]|\uD806[\uDC2C-\uDC9F\uDCE0-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD30-\uDD3E\uDD40\uDD42-\uDD9F\uDDA8\uDDA9\uDDD1-\uDDE0\uDDE2\uDDE4-\uDDFF\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE4F\uDE51-\uDE5B\uDE8A-\uDE9C\uDE9E-\uDEAF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC2F-\uDC3F\uDC41-\uDC71\uDC90-\uDCFF\uDD07\uDD0A\uDD31-\uDD45\uDD47-\uDD5F\uDD66\uDD69\uDD8A-\uDD97\uDD99-\uDEDF\uDEF3-\uDF01\uDF03\uDF11\uDF34-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC00-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80E-\uD810\uD812-\uD819\uD824-\uD82A\uD82D\uD82E\uD830-\uD834\uD836\uD83C-\uD83F\uD87B-\uD87D\uD87F\uD889-\uDBFF][\uDC00-\uDFFF]|\uD80B[\uDC00-\uDF8F\uDFF1-\uDFFF]|\uD80D[\uDC30-\uDC40\uDC47-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F-\uDE6F\uDEBF-\uDECF\uDEEE-\uDEFF\uDF30-\uDF3F\uDF44-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4F\uDF51-\uDF92\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82B[\uDC00-\uDFEF\uDFF4\uDFFC\uDFFF]|\uD82C[\uDD23-\uDD31\uDD33-\uDD4F\uDD53\uDD54\uDD56-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC-\uDFFF]|\uD837[\uDC00-\uDEFF\uDF1F-\uDF24\uDF2B-\uDFFF]|\uD838[\uDC00-\uDC2F\uDC6E-\uDCFF\uDD2D-\uDD36\uDD3E-\uDD4D\uDD4F-\uDE8F\uDEAE-\uDEBF\uDEEC-\uDFFF]|\uD839[\uDC00-\uDCCF\uDCEC-\uDFDF\uDFE7\uDFEC\uDFEF\uDFFF]|\uD83A[\uDCC5-\uDCFF\uDD44-\uDD4A\uDD4C-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD869[\uDEE0-\uDEFF]|\uD86D[\uDF3A-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDF4F]|\uD888[\uDFB0-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+$/;var extractNewHref=function extractNewHref(anchor,attr){if(attr==="text"){if(!anchor.textContent){return "";}return anchor.textContent.replace(regexpNotValidAtStart,"").replace(regexpNotValidAtEnd,"");}if(attr.startsWith("?")){try{var url=new URL(anchor.href,document.location.href);return url.searchParams.get(attr.slice(1))||"";}catch(ex){logMessage(source,"Cannot retrieve the parameter '".concat(attr.slice(1),"' from the URL '").concat(anchor.href));return "";}}if(attr.startsWith("[")&&attr.endsWith("]")){return anchor.getAttribute(attr.slice(1,-1))||"";}return "";};var getValidURL=function getValidURL(text){if(!text){return null;}try{var _URL=new URL(text,document.location.href),href=_URL.href,protocol=_URL.protocol;if(protocol!=="http:"&&protocol!=="https:"){logMessage(source,'Protocol not allowed: "'.concat(protocol,'", from URL: "').concat(href,'"'));return null;}return href;}catch(_unused){return null;}};var isSanitizableAnchor=function isSanitizableAnchor(element){return element.nodeName.toLowerCase()==="a"&&element.hasAttribute("href");};var sanitize=function sanitize(elementSelector){var elements;try{elements=document.querySelectorAll(elementSelector);}catch(e){logMessage(source,'Invalid selector "'.concat(elementSelector,'"'));return;}elements.forEach(function(elem){try{if(!isSanitizableAnchor(elem)){return;}var newHref=extractNewHref(elem,attribute);var newValidHref=getValidURL(newHref);if(!newValidHref){logMessage(source,"Invalid URL: ".concat(newHref));return;}var oldHref=elem.href;elem.setAttribute("href",newValidHref);if(newValidHref!==oldHref){logMessage(source,'Sanitized "'.concat(oldHref,'" to "').concat(newValidHref,'".'));}}catch(ex){logMessage(source,"Failed to sanitize ".concat(elem,"."));}});hit(source);};var run=function run(){sanitize(selector);observeDOMChanges(function(){return sanitize(selector);},true);};if(document.readyState==="loading"){window.addEventListener("DOMContentLoaded",run,{once:true});}else {run();}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{hrefSanitizer.apply(this,updatedArgs);}catch(e){console.log(e);}}function injectCssInShadowDom(source,args){function injectCssInShadowDom(source,cssRule){var hostSelector=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";if(!Element.prototype.attachShadow||typeof Proxy==="undefined"||typeof Reflect==="undefined"){return;}if(cssRule.match(/(url|image-set)\(.*\)/i)){logMessage(source,'"url()" function is not allowed for css rules');return;}var callback=function callback(shadowRoot){try{var stylesheet=new CSSStyleSheet();try{stylesheet.insertRule(cssRule);}catch(e){logMessage(source,"Unable to apply the rule '".concat(cssRule,"' due to: \n'").concat(e.message,"'"));return;}shadowRoot.adoptedStyleSheets=[...shadowRoot.adoptedStyleSheets,stylesheet];}catch(_unused){var styleTag=document.createElement("style");styleTag.innerText=cssRule;shadowRoot.appendChild(styleTag);}hit(source);};hijackAttachShadow(window,hostSelector,callback);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function hijackAttachShadow(context,hostSelector,callback){var handlerWrapper=function handlerWrapper(target,thisArg,args){var shadowRoot=Reflect.apply(target,thisArg,args);if(thisArg&&thisArg.matches(hostSelector||"*")){callback(shadowRoot);}return shadowRoot;};var attachShadowHandler={apply:handlerWrapper};context.Element.prototype.attachShadow=new Proxy(context.Element.prototype.attachShadow,attachShadowHandler);}var updatedArgs=args?[].concat(source).concat(args):[source];try{injectCssInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function jsonPrune(source,args){function jsonPrune(source,propsToRemove,requiredInitialProps){var stack=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var nativeObjects={nativeStringify:window.JSON.stringify};var nativeJSONParse=JSON.parse;var jsonParseWrapper=function jsonParseWrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}var root=nativeJSONParse.apply(JSON,args);return jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects);};jsonParseWrapper.toString=nativeJSONParse.toString.bind(nativeJSONParse);JSON.parse=jsonParseWrapper;var nativeResponseJson=Response.prototype.json;var responseJsonWrapper=function responseJsonWrapper(){var promise=nativeResponseJson.apply(this);return promise.then(function(obj){return jsonPruner(source,obj,prunePaths,requiredPaths,stack,nativeObjects);});};if(typeof Response==="undefined"){return;}Response.prototype.json=responseJsonWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(obligatoryProps);var nativeStringify=window.JSON.stringify;var nativeRequestClone=window.Request.prototype.clone;var nativeResponseClone=window.Response.prototype.clone;var nativeFetch=window.fetch;var fetchHandlerWrapper=async function fetchHandlerWrapper(target,thisArg,args){var fetchData=getFetchData(args,nativeRequestClone);if(!matchRequestProps(source,propsToMatch,fetchData)){return Reflect.apply(target,thisArg,args);}var originalResponse;var clonedResponse;try{originalResponse=await nativeFetch.apply(null,args);clonedResponse=nativeResponseClone.call(originalResponse);}catch(_unused){logMessage(source,"Could not make an original fetch request: ".concat(fetchData.url));return Reflect.apply(target,thisArg,args);}var json;try{json=await originalResponse.json();}catch(e){var message="Response body can't be converted to json: ".concat(objectToString(fetchData));logMessage(source,message);return clonedResponse;}var modifiedJson=jsonPruner(source,json,prunePaths,requiredPaths,stack,{nativeStringify:nativeStringify,nativeRequestClone:nativeRequestClone,nativeResponseClone:nativeResponseClone,nativeFetch:nativeFetch});var forgedResponse=forgeResponse(originalResponse,nativeStringify(modifiedJson));hit(source);return forgedResponse;};var fetchHandler={apply:fetchHandlerWrapper};window.fetch=new Proxy(window.fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(prunePaths.length===0&&requiredPaths.length===0){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}return root;}try{if(isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects)===false){return root;}prunePaths.forEach(function(path){var ownerObjArr=getWildcardPropertyInChain(root,path,true);ownerObjArr.forEach(function(ownerObj){if(ownerObj!==undefined&&ownerObj.base){delete ownerObj.base[ownerObj.prop];hit(source);}});});}catch(e){logMessage(source,e);}return root;}function getPrunePath(props){var validPropsString=typeof props==="string"&&props!==undefined&&props!=="";return validPropsString?props.split(/ +/):[];}function forgeResponse(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url;var forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}});return forgedResponse;}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(typeof Proxy==="undefined"){return;}var shouldLog=!propsToRemove&&!obligatoryProps;var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(obligatoryProps);var nativeParse=window.JSON.parse;var nativeStringify=window.JSON.stringify;var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var setRequestHeaderWrapper=function setRequestHeaderWrapper(setRequestHeader,thisArgument,argsList){thisArgument.collectedHeaders.push(argsList);return Reflect.apply(setRequestHeader,thisArgument,argsList);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(matchRequestProps(source,propsToMatch,xhrData)||shouldLog){thisArg.xhrShouldBePruned=true;thisArg.headersReceived=!!thisArg.headersReceived;}if(thisArg.xhrShouldBePruned&&!thisArg.headersReceived){thisArg.headersReceived=true;thisArg.collectedHeaders=[];thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){var stackTrace=new Error().stack||"";if(!thisArg.xhrShouldBePruned||stack&&!matchStackTrace(stack,stackTrace)){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"&&typeof content!=="object"){return;}var modifiedContent;if(typeof content==="string"){try{var jsonContent=nativeParse(content);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(jsonContent,null,2),"\nStack trace:\n").concat(stackTrace),true);logMessage(source,jsonContent,true,false);modifiedContent=content;}else {modifiedContent=jsonPruner(source,jsonContent,prunePaths,requiredPaths,stack="",{nativeStringify:nativeStringify});try{var responseType=thisArg.responseType;switch(responseType){case"":case"text":modifiedContent=nativeStringify(modifiedContent);break;case"arraybuffer":modifiedContent=new TextEncoder().encode(nativeStringify(modifiedContent)).buffer;break;case"blob":modifiedContent=new Blob([nativeStringify(modifiedContent)]);break;default:break;}}catch(error){var message="Response body cannot be converted to reponse type: '".concat(content,"'");logMessage(source,message);modifiedContent=content;}}}catch(error){var _message="Response body cannot be converted to json: '".concat(content,"'");logMessage(source,_message);modifiedContent=content;}}Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:modifiedContent,writable:false},responseText:{value:modifiedContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url,Boolean(xhrData.async)]);thisArg.collectedHeaders.forEach(function(header){forgedRequest.setRequestHeader(header[0],header[1]);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(prunePaths.length===0&&requiredPaths.length===0){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}return root;}try{if(isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects)===false){return root;}prunePaths.forEach(function(path){var ownerObjArr=getWildcardPropertyInChain(root,path,true);ownerObjArr.forEach(function(ownerObj){if(ownerObj!==undefined&&ownerObj.base){delete ownerObj.base[ownerObj.prop];hit(source);}});});}catch(e){logMessage(source,e);}return root;}function getPrunePath(props){var validPropsString=typeof props==="string"&&props!==undefined&&props!=="";return validPropsString?props.split(/ +/):[];}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeAddEventListener.apply(context,[type,listener,...args]);}var descriptor={configurable:true,set:function set(){},get:function get(){return addEventListenerWrapper;}};Object.defineProperty(window.EventTarget.prototype,"addEventListener",descriptor);Object.defineProperty(window,"addEventListener",descriptor);Object.defineProperty(document,"addEventListener",descriptor);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function validateType(type){return typeof type!=="undefined";}function validateListener(listener){return typeof listener!=="undefined"&&(typeof listener==="function"||typeof listener==="object"&&listener!==null&&"handleEvent"in listener&&typeof listener.handleEvent==="function");}function listenerToString(listener){return typeof listener==="function"?listener.toString():listener.handleEvent.toString();}function convertTypeToString(value){var output;if(typeof value==="undefined"){output="undefined";}else if(typeof value==="object"){if(value===null){output="null";}else {output=objectToString(value);}}else {output=String(value);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{logAddEventListener.apply(this,updatedArgs);}catch(e){console.log(e);}}function logEval(source,args){function logEval(source){var nativeEval=window.eval;function evalWrapper(str){hit(source);logMessage(source,'eval("'.concat(str,'")'),true);return nativeEval(str);}window.eval=evalWrapper;var nativeFunction=window.Function;function FunctionWrapper(){hit(source);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}logMessage(source,"new Function(".concat(args.join(", "),")"),true);return nativeFunction.apply(this,[...args]);}FunctionWrapper.prototype=Object.create(nativeFunction.prototype);FunctionWrapper.prototype.constructor=FunctionWrapper;window.Function=FunctionWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{logEval.apply(this,updatedArgs);}catch(e){console.log(e);}}function logOnStacktrace(source,args){function logOnStacktrace(source,property){if(!property){return;}var refineStackTrace=function refineStackTrace(stackString){var stackSteps=stackString.split("\n").slice(2).map(function(line){return line.replace(/ {4}at /,"");});var logInfoArray=stackSteps.map(function(line){var funcName;var funcFullPath;var reg=/\(([^\)]+)\)/;var regFirefox=/(.*?@)(\S+)(:\d+):\d+\)?$/;if(line.match(reg)){funcName=line.split(" ").slice(0,-1).join(" ");funcFullPath=line.match(reg)[1];}else if(line.match(regFirefox)){funcName=line.split("@").slice(0,-1).join(" ");funcFullPath=line.match(regFirefox)[2];}else {funcName="function name is not available";funcFullPath=line;}return [funcName,funcFullPath];});var logInfoObject={};logInfoArray.forEach(function(pair){logInfoObject[pair[0]]=pair[1];});return logInfoObject;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var value=base[prop];setPropertyAccess(base,prop,{get(){hit(source);logMessage(source,"Get ".concat(prop),true);console.table(refineStackTrace(new Error().stack));return value;},set(newValue){hit(source);logMessage(source,"Set ".concat(prop),true);console.table(refineStackTrace(new Error().stack));value=newValue;}});};setChainPropAccess(window,property);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{logOnStacktrace.apply(this,updatedArgs);}catch(e){console.log(e);}}function m3uPrune(source,args){function m3uPrune(source,propsToRemove){var urlToMatch=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";if(typeof Reflect==="undefined"||typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var shouldPruneResponse=false;var urlMatchRegexp=toRegExp(urlToMatch);var SEGMENT_MARKER="#";var AD_MARKER={ASSET:"#EXT-X-ASSET:",CUE:"#EXT-X-CUE:",CUE_IN:"#EXT-X-CUE-IN",DISCONTINUITY:"#EXT-X-DISCONTINUITY",EXTINF:"#EXTINF",EXTM3U:"#EXTM3U",SCTE35:"#EXT-X-SCTE35:"};var COMCAST_AD_MARKER={AD:"-AD-",VAST:"-VAST-",VMAP_AD:"-VMAP-AD-",VMAP_AD_BREAK:"#EXT-X-VMAP-AD-BREAK:"};var TAGS_ALLOWLIST=["#EXT-X-TARGETDURATION","#EXT-X-MEDIA-SEQUENCE","#EXT-X-DISCONTINUITY-SEQUENCE","#EXT-X-ENDLIST","#EXT-X-PLAYLIST-TYPE","#EXT-X-I-FRAMES-ONLY","#EXT-X-MEDIA","#EXT-X-STREAM-INF","#EXT-X-I-FRAME-STREAM-INF","#EXT-X-SESSION-DATA","#EXT-X-SESSION-KEY","#EXT-X-INDEPENDENT-SEGMENTS","#EXT-X-START"];var isAllowedTag=function isAllowedTag(str){return TAGS_ALLOWLIST.some(function(el){return str.startsWith(el);});};var pruneExtinfFromVmapBlock=function pruneExtinfFromVmapBlock(lines,i){var array=lines.slice();var index=i;if(array[index].includes(AD_MARKER.EXTINF)){array[index]=undefined;index+=1;if(array[index].includes(AD_MARKER.DISCONTINUITY)){array[index]=undefined;index+=1;var prunedExtinf=pruneExtinfFromVmapBlock(array,index);array=prunedExtinf.array;index=prunedExtinf.index;}}return {array:array,index:index};};var pruneVmapBlock=function pruneVmapBlock(lines){var array=lines.slice();for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{m3uPrune.apply(this,updatedArgs);}catch(e){console.log(e);}}function metrikaYandexTag(source,args){function metrikaYandexTag(source){var asyncCallbackFromOptions=function asyncCallbackFromOptions(id,param){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var callback=options.callback;var ctx=options.ctx;if(typeof callback==="function"){callback=ctx!==undefined?callback.bind(ctx):callback;setTimeout(function(){return callback();});}};var addFileExtension=noopFunc;var extLink=asyncCallbackFromOptions;var file=asyncCallbackFromOptions;var getClientID=function getClientID(id,cb){if(!cb){return;}setTimeout(cb(null));};var hitFunc=asyncCallbackFromOptions;var notBounce=asyncCallbackFromOptions;var params=noopFunc;var reachGoal=function reachGoal(id,target,params,callback,ctx){asyncCallbackFromOptions(null,null,{callback:callback,ctx:ctx});};var setUserID=noopFunc;var userParams=noopFunc;var destruct=noopFunc;var api={addFileExtension:addFileExtension,extLink:extLink,file:file,getClientID:getClientID,hit:hitFunc,notBounce:notBounce,params:params,reachGoal:reachGoal,setUserID:setUserID,userParams:userParams,destruct:destruct};function ym(id,funcName){for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return api[funcName]&&api[funcName](id,...args);}function init(id){window["yaCounter".concat(id)]=api;document.dispatchEvent(new Event("yacounter".concat(id,"inited")));}if(typeof window.ym==="undefined"){window.ym=ym;ym.a=[];}else if(window.ym&&window.ym.a){ym.a=window.ym.a;window.ym=ym;window.ym.a.forEach(function(params){var id=params[0];init(id);});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{metrikaYandexTag.apply(this,updatedArgs);}catch(e){console.log(e);}}function metrikaYandexWatch(source,args){function metrikaYandexWatch(source){var cbName="yandex_metrika_callbacks";var asyncCallbackFromOptions=function asyncCallbackFromOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var callback=options.callback;var ctx=options.ctx;if(typeof callback==="function"){callback=ctx!==undefined?callback.bind(ctx):callback;setTimeout(function(){return callback();});}};function Metrika(){}Metrika.counters=noopArray;Metrika.prototype.addFileExtension=noopFunc;Metrika.prototype.getClientID=noopFunc;Metrika.prototype.setUserID=noopFunc;Metrika.prototype.userParams=noopFunc;Metrika.prototype.params=noopFunc;Metrika.prototype.counters=noopArray;Metrika.prototype.extLink=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.file=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.hit=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.reachGoal=function(target,params,cb,ctx){asyncCallbackFromOptions({callback:cb,ctx:ctx});};Metrika.prototype.notBounce=asyncCallbackFromOptions;if(window.Ya){window.Ya.Metrika=Metrika;}else {window.Ya={Metrika:Metrika};}if(window[cbName]&&Array.isArray(window[cbName])){window[cbName].forEach(function(func){if(typeof func==="function"){func();}});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopArray(){return [];}var updatedArgs=args?[].concat(source).concat(args):[source];try{metrikaYandexWatch.apply(this,updatedArgs);}catch(e){console.log(e);}}function noProtectedAudience(source,args){function noProtectedAudience(source){if(Document instanceof Object===false){return;}var protectedAudienceMethods={joinAdInterestGroup:noopResolveVoid,runAdAuction:noopResolveNull,leaveAdInterestGroup:noopResolveVoid,clearOriginJoinedAdInterestGroups:noopResolveVoid,createAuctionNonce:noopStr,updateAdInterestGroups:noopFunc};for(var _i=0,_Object$keys=Object.keys(protectedAudienceMethods);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];var methodName=key;var prototype=Navigator.prototype;if(!Object.prototype.hasOwnProperty.call(prototype,methodName)||prototype[methodName]instanceof Function===false){continue;}prototype[methodName]=protectedAudienceMethods[methodName];}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}function noopFunc(){}function noopResolveVoid(){return Promise.resolve(undefined);}function noopResolveNull(){return Promise.resolve(null);}var updatedArgs=args?[].concat(source).concat(args):[source];try{noProtectedAudience.apply(this,updatedArgs);}catch(e){console.log(e);}}function noTopics(source,args){function noTopics(source){var TOPICS_PROPERTY_NAME="browsingTopics";if(Document instanceof Object===false){return;}if(!Object.prototype.hasOwnProperty.call(Document.prototype,TOPICS_PROPERTY_NAME)||Document.prototype[TOPICS_PROPERTY_NAME]instanceof Function===false){return;}Document.prototype[TOPICS_PROPERTY_NAME]=function(){return noopPromiseResolve("[]");};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}var updatedArgs=args?[].concat(source).concat(args):[source];try{noTopics.apply(this,updatedArgs);}catch(e){console.log(e);}}function noeval(source,args){function noeval(source){window.eval=function evalWrapper(s){hit(source);logMessage(source,"AdGuard has prevented eval:\n".concat(s),true);}.bind();}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{noeval.apply(this,updatedArgs);}catch(e){console.log(e);}}function nowebrtc(source,args){function nowebrtc(source){var propertyName="";if(window.RTCPeerConnection){propertyName="RTCPeerConnection";}else if(window.webkitRTCPeerConnection){propertyName="webkitRTCPeerConnection";}if(propertyName===""){return;}var rtcReplacement=function rtcReplacement(config){var message="Document tried to create an RTCPeerConnection: ".concat(convertRtcConfigToString(config));logMessage(source,message);hit(source);};rtcReplacement.prototype={close:noopFunc,createDataChannel:noopFunc,createOffer:noopFunc,setRemoteDescription:noopFunc};var rtc=window[propertyName];window[propertyName]=rtcReplacement;if(rtc.prototype){rtc.prototype.createDataChannel=function(a,b){return {close:noopFunc,send:noopFunc};}.bind(null);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function convertRtcConfigToString(config){var UNDEF_STR="undefined";var str=UNDEF_STR;if(config===null){str="null";}else if(config instanceof Object){var SERVERS_PROP_NAME="iceServers";var URLS_PROP_NAME="urls";if(Object.prototype.hasOwnProperty.call(config,SERVERS_PROP_NAME)&&config[SERVERS_PROP_NAME]&&Object.prototype.hasOwnProperty.call(config[SERVERS_PROP_NAME][0],URLS_PROP_NAME)&&!!config[SERVERS_PROP_NAME][0][URLS_PROP_NAME]){str=config[SERVERS_PROP_NAME][0][URLS_PROP_NAME].toString();}}return str;}var updatedArgs=args?[].concat(source).concat(args):[source];try{nowebrtc.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventAddEventListener(source,args){function preventAddEventListener(source,typeSearch,listenerSearch){var typeSearchRegexp=toRegExp(typeSearch);var listenerSearchRegexp=toRegExp(listenerSearch);var nativeAddEventListener=window.EventTarget.prototype.addEventListener;function addEventListenerWrapper(type,listener){var _this$constructor;var shouldPrevent=false;if(validateType(type)&&validateListener(listener)){shouldPrevent=typeSearchRegexp.test(type.toString())&&listenerSearchRegexp.test(listenerToString(listener));}if(shouldPrevent){hit(source);return undefined;}var context=this;if(this&&((_this$constructor=this.constructor)===null||_this$constructor===void 0?void 0:_this$constructor.name)==="Window"&&this!==window){context=window;}for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeAddEventListener.apply(context,[type,listener,...args]);}var descriptor={configurable:true,set:function set(){},get:function get(){return addEventListenerWrapper;}};Object.defineProperty(window.EventTarget.prototype,"addEventListener",descriptor);Object.defineProperty(window,"addEventListener",descriptor);Object.defineProperty(document,"addEventListener",descriptor);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function validateType(type){return typeof type!=="undefined";}function validateListener(listener){return typeof listener!=="undefined"&&(typeof listener==="function"||typeof listener==="object"&&listener!==null&&"handleEvent"in listener&&typeof listener.handleEvent==="function");}function listenerToString(listener){return typeof listener==="function"?listener.toString():listener.handleEvent.toString();}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventAddEventListener.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventAdfly(source,args){function preventAdfly(source){var isDigit=function isDigit(data){return /^\d$/.test(data);};var handler=function handler(encodedURL){var evenChars="";var oddChars="";for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventAdfly.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventBab(source,args){function preventBab(source){var nativeSetTimeout=window.setTimeout;var babRegex=/\.bab_elementid.$/;var timeoutWrapper=function timeoutWrapper(callback){if(typeof callback!=="string"||!babRegex.test(callback)){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeSetTimeout.apply(window,[callback,...args]);}hit(source);};window.setTimeout=timeoutWrapper;var signatures=[["blockadblock"],["babasbm"],[/getItem\('babn'\)/],["getElementById","String.fromCharCode","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789","charAt","DOMContentLoaded","AdBlock","addEventListener","doScroll","fromCharCode","<<2|r>>4","sessionStorage","clientWidth","localStorage","Math","random"]];var check=function check(str){if(typeof str!=="string"){return false;}for(var i=0;i=.8){return true;}}return false;};var nativeEval=window.eval;var evalWrapper=function evalWrapper(str){if(!check(str)){return nativeEval(str);}hit(source);var bodyEl=document.body;if(bodyEl){bodyEl.style.removeProperty("visibility");}var el=document.getElementById("babasbmsgx");if(el){el.parentNode.removeChild(el);}};window.eval=evalWrapper.bind(window);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventBab.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventElementSrcLoading(source,args){function preventElementSrcLoading(source,tagName,match){if(typeof Proxy==="undefined"||typeof Reflect==="undefined"){return;}var srcMockData={script:"data:text/javascript;base64,KCk9Pnt9",img:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",iframe:"data:text/html;base64, PGRpdj48L2Rpdj4=",link:"data:text/plain;base64,"};var instance;if(tagName==="script"){instance=HTMLScriptElement;}else if(tagName==="img"){instance=HTMLImageElement;}else if(tagName==="iframe"){instance=HTMLIFrameElement;}else if(tagName==="link"){instance=HTMLLinkElement;}else {return;}var hasTrustedTypes=window.trustedTypes&&typeof window.trustedTypes.createPolicy==="function";var policy;if(hasTrustedTypes){policy=window.trustedTypes.createPolicy("AGPolicy",{createScriptURL:function createScriptURL(arg){return arg;}});}var SOURCE_PROPERTY_NAME=tagName==="link"?"href":"src";var ONERROR_PROPERTY_NAME="onerror";var searchRegexp=toRegExp(match);var setMatchedAttribute=function setMatchedAttribute(elem){return elem.setAttribute(source.name,"matched");};var setAttributeWrapper=function setAttributeWrapper(target,thisArg,args){if(!args[0]||!args[1]){return Reflect.apply(target,thisArg,args);}var nodeName=thisArg.nodeName.toLowerCase();var attrName=args[0].toLowerCase();var attrValue=args[1];var isMatched=attrName===SOURCE_PROPERTY_NAME&&tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(attrValue);if(!isMatched){return Reflect.apply(target,thisArg,args);}hit(source);setMatchedAttribute(thisArg);return Reflect.apply(target,thisArg,[attrName,srcMockData[nodeName]]);};var setAttributeHandler={apply:setAttributeWrapper};instance.prototype.setAttribute=new Proxy(Element.prototype.setAttribute,setAttributeHandler);var origSrcDescriptor=safeGetDescriptor(instance.prototype,SOURCE_PROPERTY_NAME);if(!origSrcDescriptor){return;}Object.defineProperty(instance.prototype,SOURCE_PROPERTY_NAME,{enumerable:true,configurable:true,get(){return origSrcDescriptor.get.call(this);},set(urlValue){var nodeName=this.nodeName.toLowerCase();var isMatched=tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(urlValue);if(!isMatched){origSrcDescriptor.set.call(this,urlValue);return true;}if(policy&&urlValue instanceof TrustedScriptURL){var trustedSrc=policy.createScriptURL(urlValue);origSrcDescriptor.set.call(this,trustedSrc);hit(source);return;}setMatchedAttribute(this);origSrcDescriptor.set.call(this,srcMockData[nodeName]);hit(source);}});var origOnerrorDescriptor=safeGetDescriptor(HTMLElement.prototype,ONERROR_PROPERTY_NAME);if(!origOnerrorDescriptor){return;}Object.defineProperty(HTMLElement.prototype,ONERROR_PROPERTY_NAME,{enumerable:true,configurable:true,get(){return origOnerrorDescriptor.get.call(this);},set(cb){var isMatched=this.getAttribute(source.name)==="matched";if(!isMatched){origOnerrorDescriptor.set.call(this,cb);return true;}origOnerrorDescriptor.set.call(this,noopFunc);return true;}});var addEventListenerWrapper=function addEventListenerWrapper(target,thisArg,args){if(!args[0]||!args[1]||!thisArg){return Reflect.apply(target,thisArg,args);}var eventName=args[0];var isMatched=typeof thisArg.getAttribute==="function"&&thisArg.getAttribute(source.name)==="matched"&&eventName==="error";if(isMatched){return Reflect.apply(target,thisArg,[eventName,noopFunc]);}return Reflect.apply(target,thisArg,args);};var addEventListenerHandler={apply:addEventListenerWrapper};EventTarget.prototype.addEventListener=new Proxy(EventTarget.prototype.addEventListener,addEventListenerHandler);var preventInlineOnerror=function preventInlineOnerror(tagName,src){window.addEventListener("error",function(event){if(!event.target||!event.target.nodeName||event.target.nodeName.toLowerCase()!==tagName||!event.target.src||!src.test(event.target.src)){return;}hit(source);if(typeof event.target.onload==="function"){event.target.onerror=event.target.onload;return;}event.target.onerror=noopFunc;},true);};preventInlineOnerror(tagName,searchRegexp);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function safeGetDescriptor(obj,prop){var descriptor=Object.getOwnPropertyDescriptor(obj,prop);if(descriptor&&descriptor.configurable){return descriptor;}return null;}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventElementSrcLoading.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventEvalIf(source,args){function preventEvalIf(source,search){var searchRegexp=toRegExp(search);var nativeEval=window.eval;window.eval=function(payload){if(!searchRegexp.test(payload.toString())){return nativeEval.call(window,payload);}hit(source);return undefined;}.bind(window);}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventEvalIf.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventFab(source,args){function preventFab(source){hit(source);var Fab=function Fab(){};Fab.prototype.check=noopFunc;Fab.prototype.clearEvent=noopFunc;Fab.prototype.emitEvent=noopFunc;Fab.prototype.on=function(a,b){if(!a){b();}return this;};Fab.prototype.onDetected=noopThis;Fab.prototype.onNotDetected=function(a){a();return this;};Fab.prototype.setOption=noopFunc;Fab.prototype.options={set:noopFunc,get:noopFunc};var fab=new Fab();var getSetFab={get(){return Fab;},set(){}};var getsetfab={get(){return fab;},set(){}};if(Object.prototype.hasOwnProperty.call(window,"FuckAdBlock")){window.FuckAdBlock=Fab;}else {Object.defineProperty(window,"FuckAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"BlockAdBlock")){window.BlockAdBlock=Fab;}else {Object.defineProperty(window,"BlockAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"SniffAdBlock")){window.SniffAdBlock=Fab;}else {Object.defineProperty(window,"SniffAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"fuckAdBlock")){window.fuckAdBlock=fab;}else {Object.defineProperty(window,"fuckAdBlock",getsetfab);}if(Object.prototype.hasOwnProperty.call(window,"blockAdBlock")){window.blockAdBlock=fab;}else {Object.defineProperty(window,"blockAdBlock",getsetfab);}if(Object.prototype.hasOwnProperty.call(window,"sniffAdBlock")){window.sniffAdBlock=fab;}else {Object.defineProperty(window,"sniffAdBlock",getsetfab);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopThis(){return this;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventFab.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventFetch(source,args){function preventFetch(source,propsToMatch){var responseBody=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"emptyObj";var responseType=arguments.length>3?arguments[3]:undefined;if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var nativeRequestClone=Request.prototype.clone;var strResponseBody;if(responseBody===""||responseBody==="emptyObj"){strResponseBody="{}";}else if(responseBody==="emptyArr"){strResponseBody="[]";}else if(responseBody==="emptyStr"){strResponseBody="";}else {logMessage(source,"Invalid responseBody parameter: '".concat(responseBody,"'"));return;}var isResponseTypeSpecified=typeof responseType!=="undefined";var isResponseTypeSupported=function isResponseTypeSupported(responseType){var SUPPORTED_TYPES=["basic","cors","opaque"];return SUPPORTED_TYPES.includes(responseType);};if(isResponseTypeSpecified&&!isResponseTypeSupported(responseType)){logMessage(source,"Invalid responseType parameter: '".concat(responseType,"'"));return;}var getResponseType=function getResponseType(request){try{var mode=request.mode;if(mode===undefined||mode==="cors"||mode==="no-cors"){var fetchURL=new URL(request.url);if(fetchURL.origin===document.location.origin){return "basic";}return mode==="no-cors"?"opaque":"cors";}}catch(error){logMessage(source,"Could not determine response type: ".concat(error));}return undefined;};var handlerWrapper=async function handlerWrapper(target,thisArg,args){var shouldPrevent=false;var fetchData=getFetchData(args,nativeRequestClone);if(typeof propsToMatch==="undefined"){logMessage(source,"fetch( ".concat(objectToString(fetchData)," )"),true);hit(source);return Reflect.apply(target,thisArg,args);}shouldPrevent=matchRequestProps(source,propsToMatch,fetchData);if(shouldPrevent){hit(source);var finalResponseType;try{finalResponseType=responseType||getResponseType(fetchData);var origResponse=await Reflect.apply(target,thisArg,args);if(!origResponse.ok){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType);}return modifyResponse(origResponse,{body:strResponseBody,type:finalResponseType});}catch(ex){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType);}}return Reflect.apply(target,thisArg,args);};var fetchHandler={apply:handlerWrapper};fetch=new Proxy(fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}function modifyResponse(origResponse){var _origResponse$headers;var replacement=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{body:"{}"};var headers={};origResponse===null||origResponse===void 0?void 0:(_origResponse$headers=origResponse.headers)===null||_origResponse$headers===void 0?void 0:_origResponse$headers.forEach(function(value,key){headers[key]=value;});var modifiedResponse=new Response(replacement.body,{status:origResponse.status,statusText:origResponse.statusText,headers:headers});Object.defineProperties(modifiedResponse,{url:{value:origResponse.url},type:{value:replacement.type||origResponse.type}});return modifiedResponse;}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventFetch.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventPopadsNet(source,args){function preventPopadsNet(source){var rid=randomId();var throwError=function throwError(){throw new ReferenceError(rid);};delete window.PopAds;delete window.popns;Object.defineProperties(window,{PopAds:{set:throwError},popns:{set:throwError}});window.onerror=createOnErrorHandler(rid).bind();hit(source);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function randomId(){return Math.random().toString(36).slice(2,9);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventPopadsNet.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventRefresh(source,args){function preventRefresh(source,delaySec){var getMetaElements=function getMetaElements(){var metaNodes=[];try{metaNodes=document.querySelectorAll('meta[http-equiv="refresh" i][content]');}catch(e){try{metaNodes=document.querySelectorAll('meta[http-equiv="refresh"][content]');}catch(e){logMessage(source,e);}}return Array.from(metaNodes);};var getMetaContentDelay=function getMetaContentDelay(metaElements){var delays=metaElements.map(function(meta){var contentString=meta.getAttribute("content");if(contentString.length===0){return null;}var contentDelay;var limiterIndex=contentString.indexOf(";");if(limiterIndex!==-1){var delaySubstring=contentString.substring(0,limiterIndex);contentDelay=getNumberFromString(delaySubstring);}else {contentDelay=getNumberFromString(contentString);}return contentDelay;}).filter(function(delay){return delay!==null;});if(!delays.length){return null;}var minDelay=delays.reduce(function(a,b){return Math.min(a,b);});return minDelay;};var stop=function stop(){var metaElements=getMetaElements();if(metaElements.length===0){return;}var secondsToRun=getNumberFromString(delaySec);if(secondsToRun===null){secondsToRun=getMetaContentDelay(metaElements);}if(secondsToRun===null){return;}var delayMs=secondsToRun*1e3;setTimeout(function(){window.stop();hit(source);},delayMs);};if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",stop,{once:true});}else {stop();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventRefresh.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventRequestAnimationFrame(source,args){function preventRequestAnimationFrame(source,match){var nativeRequestAnimationFrame=window.requestAnimationFrame;var shouldLog=typeof match==="undefined";var _parseMatchArg=parseMatchArg(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var rafWrapper=function rafWrapper(callback){var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"requestAnimationFrame(".concat(String(callback),")"),true);}else if(isValidCallback(callback)&&isValidStrPattern(match)){shouldPrevent=matchRegexp.test(callback.toString())!==isInvertedMatch;}if(shouldPrevent){hit(source);return nativeRequestAnimationFrame(noopFunc);}for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeRequestAnimationFrame.apply(window,[callback,...args]);};window.requestAnimationFrame=rafWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventRequestAnimationFrame.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventSetInterval(source,args){function preventSetInterval(source,matchCallback,matchDelay){var shouldLog=typeof matchCallback==="undefined"&&typeof matchDelay==="undefined";var handlerWrapper=function handlerWrapper(target,thisArg,args){var callback=args[0];var delay=args[1];var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"setInterval(".concat(String(callback),", ").concat(delay,")"),true);}else {shouldPrevent=isPreventionNeeded({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay});}if(shouldPrevent){hit(source);args[0]=noopFunc;}return target.apply(thisArg,args);};var setIntervalHandler={apply:handlerWrapper};window.setInterval=new Proxy(window.setInterval,setIntervalHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isPreventionNeeded(_ref){var callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!isValidCallback(callback)){return false;}if(!isValidMatchStr(matchCallback)||matchDelay&&!isValidMatchNumber(matchDelay)){return false;}var _parseMatchArg=parseMatchArg(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var _parseDelayArg=parseDelayArg(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch;var parsedDelay=parseRawDelay(delay);var shouldPrevent=false;var callbackStr=String(callback);if(delayMatch===null){shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch;}else if(!matchCallback){shouldPrevent=parsedDelay===delayMatch!==isInvertedDelayMatch;}else {shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch;}return shouldPrevent;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function parseDelayArg(delay){var INVERT_MARKER="!";var isInvertedDelayMatch=delay===null||delay===void 0?void 0:delay.startsWith(INVERT_MARKER);var delayValue=isInvertedDelayMatch?delay.slice(1):delay;var parsedDelay=parseInt(delayValue,10);var delayMatch=nativeIsNaN(parsedDelay)?null:parsedDelay;return {isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:delayMatch};}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function isValidMatchNumber(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}var num=parseFloat(str);return !nativeIsNaN(num)&&nativeIsFinite(num);}function parseRawDelay(delay){var parsedDelay=Math.floor(parseInt(delay,10));return typeof parsedDelay==="number"&&!nativeIsNaN(parsedDelay)?parsedDelay:delay;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventSetInterval.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventSetTimeout(source,args){function preventSetTimeout(source,matchCallback,matchDelay){var shouldLog=typeof matchCallback==="undefined"&&typeof matchDelay==="undefined";var handlerWrapper=function handlerWrapper(target,thisArg,args){var callback=args[0];var delay=args[1];var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"setTimeout(".concat(String(callback),", ").concat(delay,")"),true);}else {shouldPrevent=isPreventionNeeded({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay});}if(shouldPrevent){hit(source);args[0]=noopFunc;}return target.apply(thisArg,args);};var setTimeoutHandler={apply:handlerWrapper};window.setTimeout=new Proxy(window.setTimeout,setTimeoutHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isPreventionNeeded(_ref){var callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!isValidCallback(callback)){return false;}if(!isValidMatchStr(matchCallback)||matchDelay&&!isValidMatchNumber(matchDelay)){return false;}var _parseMatchArg=parseMatchArg(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var _parseDelayArg=parseDelayArg(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch;var parsedDelay=parseRawDelay(delay);var shouldPrevent=false;var callbackStr=String(callback);if(delayMatch===null){shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch;}else if(!matchCallback){shouldPrevent=parsedDelay===delayMatch!==isInvertedDelayMatch;}else {shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch;}return shouldPrevent;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function parseDelayArg(delay){var INVERT_MARKER="!";var isInvertedDelayMatch=delay===null||delay===void 0?void 0:delay.startsWith(INVERT_MARKER);var delayValue=isInvertedDelayMatch?delay.slice(1):delay;var parsedDelay=parseInt(delayValue,10);var delayMatch=nativeIsNaN(parsedDelay)?null:parsedDelay;return {isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:delayMatch};}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function isValidMatchNumber(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}var num=parseFloat(str);return !nativeIsNaN(num)&&nativeIsFinite(num);}function parseRawDelay(delay){var parsedDelay=Math.floor(parseInt(delay,10));return typeof parsedDelay==="number"&&!nativeIsNaN(parsedDelay)?parsedDelay:delay;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventSetTimeout.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventWindowOpen(source,args){function preventWindowOpen(source){var match=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"*";var delay=arguments.length>2?arguments[2]:undefined;var replacement=arguments.length>3?arguments[3]:undefined;var nativeOpen=window.open;var isNewSyntax=match!=="0"&&match!=="1";var oldOpenWrapper=function oldOpenWrapper(str){match=Number(match)>0;for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}if(!isValidStrPattern(delay)){logMessage(source,"Invalid parameter: ".concat(delay));return nativeOpen.apply(window,[str,...args]);}var searchRegexp=toRegExp(delay);if(match!==searchRegexp.test(str)){return nativeOpen.apply(window,[str,...args]);}hit(source);return handleOldReplacement(replacement);};var newOpenWrapper=function newOpenWrapper(url){var shouldLog=replacement&&replacement.includes("log");for(var _len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++){args[_key2-1]=arguments[_key2];}if(shouldLog){var argsStr=args&&args.length>0?", ".concat(args.join(", ")):"";var message="".concat(url).concat(argsStr);logMessage(source,message,true);hit(source);}var shouldPrevent=false;if(match==="*"){shouldPrevent=true;}else if(isValidMatchStr(match)){var _parseMatchArg=parseMatchArg(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;shouldPrevent=matchRegexp.test(url)!==isInvertedMatch;}else {logMessage(source,"Invalid parameter: ".concat(match));shouldPrevent=false;}if(shouldPrevent){var parsedDelay=parseInt(delay,10);var result;if(nativeIsNaN(parsedDelay)){result=noopNull();}else {var decoyArgs={replacement:replacement,url:url,delay:parsedDelay};var decoy=createDecoy(decoyArgs);var popup=decoy.contentWindow;if(typeof popup==="object"&&popup!==null){Object.defineProperty(popup,"closed",{value:false});Object.defineProperty(popup,"opener",{value:window});Object.defineProperty(popup,"frameElement",{value:null});}else {var nativeGetter=decoy.contentWindow&&decoy.contentWindow.get;Object.defineProperty(decoy,"contentWindow",{get:getPreventGetter(nativeGetter)});popup=decoy.contentWindow;}result=popup;}hit(source);return result;}return nativeOpen.apply(window,[url,...args]);};window.open=isNewSyntax?newOpenWrapper:oldOpenWrapper;window.open.toString=nativeOpen.toString.bind(nativeOpen);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function handleOldReplacement(replacement){var result;if(!replacement){result=noopFunc;}else if(replacement==="trueFunc"){result=trueFunc;}else if(replacement.includes("=")){var isProp=replacement.startsWith("{")&&replacement.endsWith("}");if(isProp){var propertyPart=replacement.slice(1,-1);var propertyName=substringBefore(propertyPart,"=");var propertyValue=substringAfter(propertyPart,"=");if(propertyValue==="noopFunc"){result={};result[propertyName]=noopFunc;}}}return result;}function createDecoy(args){var UrlPropNameOf=function(UrlPropNameOf){UrlPropNameOf["Object"]="data";UrlPropNameOf["Iframe"]="src";return UrlPropNameOf;}({});var replacement=args.replacement,url=args.url,delay=args.delay;var tag;if(replacement==="obj"){tag="object";}else {tag="iframe";}var decoy=document.createElement(tag);if(decoy instanceof HTMLObjectElement){decoy[UrlPropNameOf.Object]=url;}else if(decoy instanceof HTMLIFrameElement){decoy[UrlPropNameOf.Iframe]=url;}decoy.style.setProperty("height","1px","important");decoy.style.setProperty("position","fixed","important");decoy.style.setProperty("top","-1px","important");decoy.style.setProperty("width","1px","important");document.body.appendChild(decoy);setTimeout(function(){return decoy.remove();},delay*1e3);return decoy;}function getPreventGetter(nativeGetter){var preventGetter=function preventGetter(target,prop){if(prop&&prop==="closed"){return false;}if(typeof nativeGetter==="function"){return noopFunc;}return prop&&target[prop];};return preventGetter;}function noopNull(){return null;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function noopFunc(){}function trueFunc(){return true;}function substringBefore(str,separator){if(!str||!separator){return str;}var index=str.indexOf(separator);return index<0?str:str.substring(0,index);}function substringAfter(str,separator){if(!str){return str;}var index=str.indexOf(separator);return index<0?"":str.substring(index+separator.length);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventWindowOpen.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventXHR(source,args){function preventXHR(source,propsToMatch,customResponseText){if(typeof Proxy==="undefined"){return;}var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var nativeGetResponseHeader=window.XMLHttpRequest.prototype.getResponseHeader;var nativeGetAllResponseHeaders=window.XMLHttpRequest.prototype.getAllResponseHeaders;var xhrData;var modifiedResponse="";var modifiedResponseText="";var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(typeof propsToMatch==="undefined"){logMessage(source,"xhr( ".concat(objectToString(xhrData)," )"),true);hit(source);}else if(matchRequestProps(source,propsToMatch,xhrData)){thisArg.shouldBePrevented=true;thisArg.xhrData=xhrData;}if(thisArg.shouldBePrevented){thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return Reflect.apply(target,thisArg,args);}if(thisArg.responseType==="blob"){modifiedResponse=new Blob();}if(thisArg.responseType==="arraybuffer"){modifiedResponse=new ArrayBuffer();}if(customResponseText){var randomText=generateRandomResponse(customResponseText);if(randomText){modifiedResponseText=randomText;}else {logMessage(source,"Invalid randomize parameter: '".concat(customResponseText,"'"));}}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,statusText=forgedRequest.statusText;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},statusText:{value:statusText,writable:false},responseURL:{value:responseURL||thisArg.xhrData.url,writable:false},responseXML:{value:responseXML,writable:false},status:{value:200,writable:false},response:{value:modifiedResponse,writable:false},responseText:{value:modifiedResponseText,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[thisArg.xhrData.method,thisArg.xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var getHeaderWrapper=function getHeaderWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return nativeGetResponseHeader.apply(thisArg,args);}if(!thisArg.collectedHeaders.length){return null;}var searchHeaderName=args[0].toLowerCase();var matchedHeader=thisArg.collectedHeaders.find(function(header){var headerName=header[0].toLowerCase();return headerName===searchHeaderName;});return matchedHeader?matchedHeader[1]:null;};var getAllHeadersWrapper=function getAllHeadersWrapper(target,thisArg){if(!thisArg.shouldBePrevented){return nativeGetAllResponseHeaders.call(thisArg);}if(!thisArg.collectedHeaders.length){return "";}var allHeadersStr=thisArg.collectedHeaders.map(function(header){var headerName=header[0];var headerValue=header[1];return "".concat(headerName.toLowerCase(),": ").concat(headerValue);}).join("\r\n");return allHeadersStr;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};var getHeaderHandler={apply:getHeaderWrapper};var getAllHeadersHandler={apply:getAllHeadersWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);XMLHttpRequest.prototype.getResponseHeader=new Proxy(XMLHttpRequest.prototype.getResponseHeader,getHeaderHandler);XMLHttpRequest.prototype.getAllResponseHeaders=new Proxy(XMLHttpRequest.prototype.getAllResponseHeaders,getAllHeadersHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function generateRandomResponse(customResponseText){var customResponse=customResponseText;if(customResponse==="true"){customResponse=Math.random().toString(36).slice(-10);return customResponse;}customResponse=customResponse.replace("length:","");var rangeRegex=/^\d+-\d+$/;if(!rangeRegex.test(customResponse)){return null;}var rangeMin=getNumberFromString(customResponse.split("-")[0]);var rangeMax=getNumberFromString(customResponse.split("-")[1]);if(!nativeIsFinite(rangeMin)||!nativeIsFinite(rangeMax)){return null;}if(rangeMin>rangeMax){var temp=rangeMin;rangeMin=rangeMax;rangeMax=temp;}var LENGTH_RANGE_LIMIT=500*1e3;if(rangeMax>LENGTH_RANGE_LIMIT){return null;}var length=getRandomIntInclusive(rangeMin,rangeMax);customResponse=getRandomStrByLength(length);return customResponse;}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function getRandomIntInclusive(min,max){min=Math.ceil(min);max=Math.floor(max);return Math.floor(Math.random()*(max-min+1)+min);}function getRandomStrByLength(length){var result="";var characters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+=~";var charactersLength=characters.length;for(var i=0;i3&&arguments[3]!==undefined?arguments[3]:"asap stay";if(!attrs){return;}attrs=attrs.split(/\s*\|\s*/);if(!selector){selector="[".concat(attrs.join("],["),"]");}var rmattr=function rmattr(){var nodes=[];try{nodes=[].slice.call(document.querySelectorAll(selector));}catch(e){logMessage(source,"Invalid selector arg: '".concat(selector,"'"));}var removed=false;nodes.forEach(function(node){attrs.forEach(function(attr){node.removeAttribute(attr);removed=true;});});if(removed){hit(source);}};var flags=parseFlags(applying);var run=function run(){rmattr();if(!flags.hasFlag(flags.STAY)){return;}observeDOMChanges(rmattr,true);};if(flags.hasFlag(flags.ASAP)){if(document.readyState==="loading"){window.addEventListener("DOMContentLoaded",rmattr,{once:true});}else {rmattr();}}if(document.readyState!=="complete"&&flags.hasFlag(flags.COMPLETE)){window.addEventListener("load",run,{once:true});}else if(flags.hasFlag(flags.STAY)){if(!applying.includes(" ")){rmattr();}observeDOMChanges(rmattr,true);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function parseFlags(flags){var FLAGS_DIVIDER=" ";var ASAP_FLAG="asap";var COMPLETE_FLAG="complete";var STAY_FLAG="stay";var VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG];var passedFlags=flags.trim().split(FLAGS_DIVIDER).filter(function(f){return VALID_FLAGS.includes(f);});return {ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag(flag){return passedFlags.includes(flag);}};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeClass(source,args){function removeClass(source,classNames,selector){var applying=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"asap stay";if(!classNames){return;}classNames=classNames.split(/\s*\|\s*/);var selectors=[];if(!selector){selectors=classNames.map(function(className){return ".".concat(className);});}var removeClassHandler=function removeClassHandler(){var nodes=new Set();if(selector){var foundNodes=[];try{foundNodes=[].slice.call(document.querySelectorAll(selector));}catch(e){logMessage(source,"Invalid selector arg: '".concat(selector,"'"));}foundNodes.forEach(function(n){return nodes.add(n);});}else if(selectors.length>0){selectors.forEach(function(s){var elements=document.querySelectorAll(s);for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function parseFlags(flags){var FLAGS_DIVIDER=" ";var ASAP_FLAG="asap";var COMPLETE_FLAG="complete";var STAY_FLAG="stay";var VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG];var passedFlags=flags.trim().split(FLAGS_DIVIDER).filter(function(f){return VALID_FLAGS.includes(f);});return {ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag(flag){return passedFlags.includes(flag);}};}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeClass.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeCookie(source,args){function removeCookie(source,match){var matchRegexp=toRegExp(match);var removeCookieFromHost=function removeCookieFromHost(cookieName,hostName){var cookieSpec="".concat(cookieName,"=");var domain1="; domain=".concat(hostName);var domain2="; domain=.".concat(hostName);var path="; path=/";var expiration="; expires=Thu, 01 Jan 1970 00:00:00 GMT";document.cookie=cookieSpec+expiration;document.cookie=cookieSpec+domain1+expiration;document.cookie=cookieSpec+domain2+expiration;document.cookie=cookieSpec+path+expiration;document.cookie=cookieSpec+domain1+path+expiration;document.cookie=cookieSpec+domain2+path+expiration;hit(source);};var rmCookie=function rmCookie(){document.cookie.split(";").forEach(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return;}var cookieName=cookieStr.slice(0,pos).trim();if(!matchRegexp.test(cookieName)){return;}var hostParts=document.location.hostname.split(".");for(var i=0;i<=hostParts.length-1;i+=1){var hostName=hostParts.slice(i).join(".");if(hostName){removeCookieFromHost(cookieName,hostName);}}});};rmCookie();window.addEventListener("beforeunload",rmCookie);}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeInShadowDom(source,args){function removeInShadowDom(source,selector,baseSelector){if(!Element.prototype.attachShadow){return;}var removeElement=function removeElement(targetElement){targetElement.remove();};var removeHandler=function removeHandler(){var hostElements=!baseSelector?findHostElements(document.documentElement):document.querySelectorAll(baseSelector);var _loop=function _loop(){var isRemoved=false;var _pierceShadowDom=pierceShadowDom(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach(function(targetEl){removeElement(targetEl);isRemoved=true;});if(isRemoved){hit(source);}hostElements=innerHosts;};while(hostElements.length!==0){_loop();}};removeHandler();observeDOMChanges(removeHandler,true);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function findHostElements(rootElement){var hosts=[];if(rootElement){var domElems=rootElement.querySelectorAll("*");domElems.forEach(function(el){if(el.shadowRoot){hosts.push(el);}});}return hosts;}function pierceShadowDom(selector,hostElements){var targets=[];var innerHostsAcc=[];hostElements.forEach(function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot;var shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren));innerHostsAcc.push(findHostElements(shadowRootElem));});var innerHosts=flatten(innerHostsAcc);return {targets:targets,innerHosts:innerHosts};}function flatten(input){var stack=[];input.forEach(function(el){return stack.push(el);});var res=[];while(stack.length){var next=stack.pop();if(Array.isArray(next)){next.forEach(function(el){return stack.push(el);});}else {res.push(next);}}return res.reverse();}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeNodeText(source,args){function removeNodeText(source,nodeName,textMatch){var _parseNodeTextParams=parseNodeTextParams(nodeName,textMatch),selector=_parseNodeTextParams.selector,nodeNameMatch=_parseNodeTextParams.nodeNameMatch,textContentMatch=_parseNodeTextParams.textContentMatch;var handleNodes=function handleNodes(nodes){return nodes.forEach(function(node){var shouldReplace=isTargetNode(node,nodeNameMatch,textContentMatch);if(shouldReplace){var ALL_TEXT_PATTERN=/^[\s\S]*$/;var REPLACEMENT="";replaceNodeText(source,node,ALL_TEXT_PATTERN,REPLACEMENT);}});};if(document.documentElement){handleExistingNodes(selector,handleNodes);}observeDocumentWithTimeout(function(mutations){return handleMutations(mutations,handleNodes);});}function observeDocumentWithTimeout(callback){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function handleExistingNodes(selector,handler){var nodeList=document.querySelectorAll(selector);var nodes=nodeListToArray(nodeList);handler(nodes);}function handleMutations(mutations,handler){var addedNodes=getAddedNodes(mutations);handler(addedNodes);}function replaceNodeText(source,node,pattern,replacement){var textContent=node.textContent;if(textContent){node.textContent=textContent.replace(pattern,replacement);hit(source);}}function isTargetNode(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent;var nodeNameLowerCase=nodeName.toLowerCase();return textContent!==null&&textContent!==""&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch));}function parseNodeTextParams(nodeName,textMatch){var pattern=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;var REGEXP_START_MARKER="/";var isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER));var selector=isStringNameMatch?nodeName:"*";var nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName);var textContentMatch=!textMatch.startsWith(REGEXP_START_MARKER)?textMatch:toRegExp(textMatch);var patternMatch;if(pattern){patternMatch=!pattern.startsWith(REGEXP_START_MARKER)?pattern:toRegExp(pattern);}return {selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function nodeListToArray(nodeList){var nodes=[];for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeNodeText.apply(this,updatedArgs);}catch(e){console.log(e);}}function setAttr(source,args){function setAttr(source,selector,attr){var value=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(!selector||!attr){return;}var allowedValues=["true","false"];var shouldCopyValue=value.startsWith("[")&&value.endsWith("]");var isValidValue=value.length===0||!nativeIsNaN(parseInt(value,10))&&parseInt(value,10)>0&&parseInt(value,10)<32767||allowedValues.includes(value.toLowerCase());if(!shouldCopyValue&&!isValidValue){logMessage(source,"Invalid attribute value provided: '".concat(convertTypeToString(value),"'"));return;}var attributeHandler;if(shouldCopyValue){attributeHandler=function attributeHandler(elem,attr,value){var valueToCopy=elem.getAttribute(value.slice(1,-1));if(valueToCopy===null){logMessage(source,"No element attribute found to copy value from: ".concat(value));}elem.setAttribute(attr,valueToCopy);};}setAttributeBySelector(source,selector,attr,value,attributeHandler);observeDOMChanges(function(){return setAttributeBySelector(source,selector,attr,value,attributeHandler);},true);}function setAttributeBySelector(source,selector,attribute,value){var attributeSetter=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultAttributeSetter;var elements;try{elements=document.querySelectorAll(selector);}catch(_unused){logMessage(source,'Failed to find elements matching selector "'.concat(selector,'"'));return;}if(!elements||elements.length===0){return;}try{elements.forEach(function(elem){return attributeSetter(elem,attribute,value);});hit(source);}catch(_unused2){logMessage(source,"Failed to set [".concat(attribute,'="').concat(value,'"] to each of selected elements.'));}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function convertTypeToString(value){var output;if(typeof value==="undefined"){output="undefined";}else if(typeof value==="object"){if(value===null){output="null";}else {output=objectToString(value);}}else {output=String(value);}return output;}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{setAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function setConstant(source,args){function setConstant(source,property,value){var stack=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var valueWrapper=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var setProxyTrap=arguments.length>5&&arguments[5]!==undefined?arguments[5]:false;var uboAliases=["set-constant.js","ubo-set-constant.js","set.js","ubo-set.js","ubo-set-constant","ubo-set"];if(uboAliases.includes(source.name)){if(stack.length!==1&&!getNumberFromString(stack)){valueWrapper=stack;}stack=undefined;}if(!property||!matchStackTrace(stack,new Error().stack)){return;}var isProxyTrapSet=false;var emptyArr=noopArray();var emptyObj=noopObject();var constantValue;if(value==="undefined"){constantValue=undefined;}else if(value==="false"){constantValue=false;}else if(value==="true"){constantValue=true;}else if(value==="null"){constantValue=null;}else if(value==="emptyArr"){constantValue=emptyArr;}else if(value==="emptyObj"){constantValue=emptyObj;}else if(value==="noopFunc"){constantValue=noopFunc;}else if(value==="noopCallbackFunc"){constantValue=noopCallbackFunc;}else if(value==="trueFunc"){constantValue=trueFunc;}else if(value==="falseFunc"){constantValue=falseFunc;}else if(value==="throwFunc"){constantValue=throwFunc;}else if(value==="noopPromiseResolve"){constantValue=noopPromiseResolve;}else if(value==="noopPromiseReject"){constantValue=noopPromiseReject;}else if(/^\d+$/.test(value)){constantValue=parseFloat(value);if(nativeIsNaN(constantValue)){return;}if(Math.abs(constantValue)>32767){return;}}else if(value==="-1"){constantValue=-1;}else if(value===""){constantValue="";}else if(value==="yes"){constantValue="yes";}else if(value==="no"){constantValue="no";}else {return;}var valueWrapperNames=["asFunction","asCallback","asResolved","asRejected"];if(valueWrapperNames.includes(valueWrapper)){var valueWrappersMap={asFunction(v){return function(){return v;};},asCallback(v){return function(){return function(){return v;};};},asResolved(v){return Promise.resolve(v);},asRejected(v){return Promise.reject(v);}};constantValue=valueWrappersMap[valueWrapper](constantValue);}var canceled=false;var mustCancel=function mustCancel(value){if(canceled){return canceled;}canceled=value!==undefined&&constantValue!==undefined&&typeof value!==typeof constantValue&&value!==null;return canceled;};var trapProp=function trapProp(base,prop,configurable,handler){if(!handler.init(base[prop])){return false;}var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);var prevSetter;if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message="Property '".concat(prop,"' is not configurable");logMessage(source,message);return false;}if(base[prop]){base[prop]=constantValue;}if(origDescriptor.set instanceof Function){prevSetter=origDescriptor.set;}}Object.defineProperty(base,prop,{configurable:configurable,get(){return handler.get();},set(a){if(prevSetter!==undefined){prevSetter(a);}if(a instanceof Object){var propertiesToCheck=property.split(".").slice(1);if(setProxyTrap&&!isProxyTrapSet){isProxyTrapSet=true;a=new Proxy(a,{get:function get(target,propertyKey,val){propertiesToCheck.reduce(function(object,currentProp,index,array){var currentObj=object===null||object===void 0?void 0:object[currentProp];if(index===array.length-1&¤tObj!==constantValue){object[currentProp]=constantValue;}return currentObj||object;},target);return Reflect.get(target,propertyKey,val);}});}}handler.set(a);}});return true;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;var inChainPropHandler={factValue:undefined,init(a){this.factValue=a;return true;},get(){return this.factValue;},set(a){if(this.factValue===a){return;}this.factValue=a;if(a instanceof Object){setChainPropAccess(a,chain);}}};var endPropHandler={init(a){if(mustCancel(a)){return false;}return true;},get(){return constantValue;},set(a){if(!mustCancel(a)){return;}constantValue=a;}};if(!chain){var isTrapped=trapProp(base,prop,false,endPropHandler);if(isTrapped){hit(source);}return;}if(base!==undefined&&base[prop]===null){trapProp(base,prop,true,inChainPropHandler);return;}if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){trapProp(base,prop,true,inChainPropHandler);}var propValue=owner[prop];if(propValue instanceof Object||typeof propValue==="object"&&propValue!==null){setChainPropAccess(propValue,chain);}trapProp(base,prop,true,inChainPropHandler);};setChainPropAccess(window,property);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function noopArray(){return [];}function noopObject(){return {};}function noopFunc(){}function noopCallbackFunc(){return noopFunc;}function trueFunc(){return true;}function falseFunc(){return false;}function throwFunc(){throw new Error();}function noopPromiseReject(){return Promise.reject();}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{setConstant.apply(this,updatedArgs);}catch(e){console.log(e);}}function setCookie(source,args){function setCookie(source,name,value){var path=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"/";var domain=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var validValue=getLimitedCookieValue(value);if(validValue===null){logMessage(source,"Invalid cookie value: '".concat(validValue,"'"));return;}if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,validValue,path,domain);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}hit(source);document.cookie=cookieToSet;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function getLimitedCookieValue(value){if(!value){return null;}var allowedCookieValues=new Set(["true","t","false","f","yes","y","no","n","ok","on","off","accept","accepted","notaccepted","reject","rejected","allow","allowed","disallow","deny","enable","enabled","disable","disabled","necessary","required"]);var validValue;if(allowedCookieValues.has(value.toLowerCase())){validValue=value;}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){return null;}if(Math.abs(validValue)<0||Math.abs(validValue)>32767){return null;}}else {return null;}return validValue;}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{setCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function setCookieReload(source,args){function setCookieReload(source,name,value){var path=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"/";var domain=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(isCookieSetWithValue(document.cookie,name,value)){return;}var validValue=getLimitedCookieValue(value);if(validValue===null){logMessage(source,"Invalid cookie value: '".concat(value,"'"));return;}if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,validValue,path,domain);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}document.cookie=cookieToSet;hit(source);if(isCookieSetWithValue(document.cookie,name,value)){window.location.reload();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(";").some(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return false;}var cookieName=cookieStr.slice(0,pos).trim();var cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue;});}function getLimitedCookieValue(value){if(!value){return null;}var allowedCookieValues=new Set(["true","t","false","f","yes","y","no","n","ok","on","off","accept","accepted","notaccepted","reject","rejected","allow","allowed","disallow","deny","enable","enabled","disable","disabled","necessary","required"]);var validValue;if(allowedCookieValues.has(value.toLowerCase())){validValue=value;}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){return null;}if(Math.abs(validValue)<0||Math.abs(validValue)>32767){return null;}}else {return null;}return validValue;}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{setCookieReload.apply(this,updatedArgs);}catch(e){console.log(e);}}function setLocalStorageItem(source,args){function setLocalStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified.");return;}var validValue;try{validValue=getLimitedStorageItemValue(value);}catch(_unused){logMessage(source,"Invalid storage item value: '".concat(value,"'"));return;}var _window=window,localStorage=_window.localStorage;if(validValue==="$remove$"){removeStorageItem(source,localStorage,key);}else {setStorageItem(source,localStorage,key,validValue);}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function removeStorageItem(source,storage,key){try{if(key.startsWith("/")&&(key.endsWith("/")||key.endsWith("/i"))&&isValidStrPattern(key)){var regExpKey=toRegExp(key);var storageKeys=Object.keys(storage);storageKeys.forEach(function(storageKey){if(regExpKey.test(storageKey)){storage.removeItem(storageKey);}});}else {storage.removeItem(key);}}catch(e){var message="Unable to remove storage item due to: ".concat(e.message);logMessage(source,message);}}function getLimitedStorageItemValue(value){if(typeof value!=="string"){throw new Error("Invalid value");}var allowedStorageValues=new Set(["undefined","false","true","null","","yes","no","on","off"]);var validValue;if(allowedStorageValues.has(value.toLowerCase())){validValue=value;}else if(value==="emptyArr"){validValue="[]";}else if(value==="emptyObj"){validValue="{}";}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){throw new Error("Invalid value");}if(Math.abs(validValue)>32767){throw new Error("Invalid value");}}else if(value==="$remove$"){validValue="$remove$";}else {throw new Error("Invalid value");}return validValue;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{setLocalStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function setPopadsDummy(source,args){function setPopadsDummy(source){delete window.PopAds;delete window.popns;Object.defineProperties(window,{PopAds:{get:function get(){hit(source);return {};}},popns:{get:function get(){hit(source);return {};}}});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{setPopadsDummy.apply(this,updatedArgs);}catch(e){console.log(e);}}function setSessionStorageItem(source,args){function setSessionStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified.");return;}var validValue;try{validValue=getLimitedStorageItemValue(value);}catch(_unused){logMessage(source,"Invalid storage item value: '".concat(value,"'"));return;}var _window=window,sessionStorage=_window.sessionStorage;if(validValue==="$remove$"){removeStorageItem(source,sessionStorage,key);}else {setStorageItem(source,sessionStorage,key,validValue);}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function removeStorageItem(source,storage,key){try{if(key.startsWith("/")&&(key.endsWith("/")||key.endsWith("/i"))&&isValidStrPattern(key)){var regExpKey=toRegExp(key);var storageKeys=Object.keys(storage);storageKeys.forEach(function(storageKey){if(regExpKey.test(storageKey)){storage.removeItem(storageKey);}});}else {storage.removeItem(key);}}catch(e){var message="Unable to remove storage item due to: ".concat(e.message);logMessage(source,message);}}function getLimitedStorageItemValue(value){if(typeof value!=="string"){throw new Error("Invalid value");}var allowedStorageValues=new Set(["undefined","false","true","null","","yes","no","on","off"]);var validValue;if(allowedStorageValues.has(value.toLowerCase())){validValue=value;}else if(value==="emptyArr"){validValue="[]";}else if(value==="emptyObj"){validValue="{}";}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){throw new Error("Invalid value");}if(Math.abs(validValue)>32767){throw new Error("Invalid value");}}else if(value==="$remove$"){validValue="$remove$";}else {throw new Error("Invalid value");}return validValue;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{setSessionStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function spoofCSS(source,args){function spoofCSS(source,selectors,cssPropertyName,cssPropertyValue){if(!selectors){return;}var uboAliases=["spoof-css.js","ubo-spoof-css.js","ubo-spoof-css"];function convertToCamelCase(cssProperty){if(!cssProperty.includes("-")){return cssProperty;}var splittedProperty=cssProperty.split("-");var firstPart=splittedProperty[0];var secondPart=splittedProperty[1];return "".concat(firstPart).concat(secondPart[0].toUpperCase()).concat(secondPart.slice(1));}var shouldDebug=!!(cssPropertyName==="debug"&&cssPropertyValue);var propToValueMap=new Map();if(uboAliases.includes(source.name)){var args=source.args;var arrayOfProperties=[];var isDebug=args.at(-2);if(isDebug==="debug"){arrayOfProperties=args.slice(1,-2);}else {arrayOfProperties=args.slice(1);}for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var delay=arguments.length>3&&arguments[3]!==undefined?arguments[3]:NaN;if(!selectors){return;}var OBSERVER_TIMEOUT_MS=1e4;var THROTTLE_DELAY_MS=20;var STATIC_CLICK_DELAY_MS=150;var COOKIE_MATCH_MARKER="cookie:";var LOCAL_STORAGE_MATCH_MARKER="localStorage:";var SELECTORS_DELIMITER=",";var COOKIE_STRING_DELIMITER=";";var EXTRA_MATCH_DELIMITER=/(,\s*){1}(?=!?cookie:|!?localStorage:)/;var sleep=function sleep(delayMs){return new Promise(function(resolve){return setTimeout(resolve,delayMs);});};var parsedDelay;if(delay){parsedDelay=parseInt(delay,10);var isValidDelay=!Number.isNaN(parsedDelay)||parsedDelay0){var parsedCookieMatches=parseCookieString(cookieMatches.join(COOKIE_STRING_DELIMITER));var parsedCookies=parseCookieString(document.cookie);var cookieKeys=Object.keys(parsedCookies);if(cookieKeys.length===0){return;}var cookiesMatched=Object.keys(parsedCookieMatches).every(function(key){var valueMatch=parsedCookieMatches[key]?toRegExp(parsedCookieMatches[key]):null;var keyMatch=toRegExp(key);return cookieKeys.some(function(key){var keysMatched=keyMatch.test(key);if(!keysMatched){return false;}if(!valueMatch){return true;}return valueMatch.test(parsedCookies[key]);});});var shouldRun=cookiesMatched!==isInvertedMatchCookie;if(!shouldRun){return;}}if(localStorageMatches.length>0){var localStorageMatched=localStorageMatches.every(function(str){var itemValue=window.localStorage.getItem(str);return itemValue||itemValue==="";});var _shouldRun=localStorageMatched!==isInvertedMatchLocalStorage;if(!_shouldRun){return;}}var selectorsSequence=selectors.split(SELECTORS_DELIMITER).map(function(selector){return selector.trim();});var createElementObj=function createElementObj(element){return {element:element||null,clicked:false};};var elementsSequence=Array(selectorsSequence.length).fill(createElementObj());var clickElementsBySequence=async function clickElementsBySequence(){for(var i=0;i=1){await sleep(STATIC_CLICK_DELAY_MS);}if(!elementObj.element){break;}if(!elementObj.clicked){elementObj.element.click();elementObj.clicked=true;}}var allElementsClicked=elementsSequence.every(function(elementObj){return elementObj.clicked===true;});if(allElementsClicked){hit(source);}};var handleElement=function handleElement(element,i){var elementObj=createElementObj(element);elementsSequence[i]=elementObj;if(canClick){clickElementsBySequence();}};var findElements=function findElements(mutations,observer){var fulfilledSelectors=[];selectorsSequence.forEach(function(selector,i){if(!selector){return;}var element=queryShadowSelector(selector);if(!element){return;}handleElement(element,i);fulfilledSelectors.push(selector);});selectorsSequence=selectorsSequence.map(function(selector){return fulfilledSelectors.includes(selector)?null:selector;});var allSelectorsFulfilled=selectorsSequence.every(function(selector){return selector===null;});if(allSelectorsFulfilled){observer.disconnect();}};var observer=new MutationObserver(throttle(findElements,THROTTLE_DELAY_MS));observer.observe(document.documentElement,{attributes:true,childList:true,subtree:true});if(parsedDelay){setTimeout(function(){clickElementsBySequence();canClick=true;},parsedDelay);}setTimeout(function(){return observer.disconnect();},OBSERVER_TIMEOUT_MS);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function parseCookieString(cookieString){var COOKIE_DELIMITER="=";var COOKIE_PAIRS_DELIMITER=";";var cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER);var cookieData={};cookieChunks.forEach(function(singleCookie){var cookieKey;var cookieValue="";var delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);if(delimiterIndex===-1){cookieKey=singleCookie.trim();}else {cookieKey=singleCookie.slice(0,delimiterIndex).trim();cookieValue=singleCookie.slice(delimiterIndex+1);}cookieData[cookieKey]=cookieValue||null;});return cookieData;}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function queryShadowSelector(selector){var context=arguments.length>1&&arguments[1]!==undefined?arguments[1]:document.documentElement;var SHADOW_COMBINATOR=" >>> ";var pos=selector.indexOf(SHADOW_COMBINATOR);if(pos===-1){return context.querySelector(selector);}var shadowHostSelector=selector.slice(0,pos).trim();var elem=context.querySelector(shadowHostSelector);if(!elem||!elem.shadowRoot){return null;}var shadowRootSelector=selector.slice(pos+SHADOW_COMBINATOR.length).trim();return queryShadowSelector(shadowRootSelector,elem.shadowRoot);}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedClickElement.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedCreateElement(source,args){function trustedCreateElement(source,parentSelector,tagName){var attributePairs=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var textContent=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var cleanupDelayMs=arguments.length>5&&arguments[5]!==undefined?arguments[5]:NaN;if(!parentSelector||!tagName){return;}var IFRAME_WINDOW_NAME="trusted-create-element-window";if(window.name===IFRAME_WINDOW_NAME){return;}var logError=function logError(prefix,error){logMessage(source,"".concat(prefix," due to ").concat(getErrorMessage(error)));};var element;try{element=document.createElement(tagName);element.textContent=textContent;}catch(e){logError("Cannot create element with tag name '".concat(tagName,"'"),e);return;}var attributes=[];try{attributes=parseAttributePairs(attributePairs);}catch(e){logError("Cannot parse attributePairs param: '".concat(attributePairs,"'"),e);return;}attributes.forEach(function(attr){try{element.setAttribute(attr.name,attr.value);}catch(e){logError("Cannot set attribute '".concat(attr.name,"' with value '").concat(attr.value,"'"),e);}});var timerId;var findParentAndAppendEl=function findParentAndAppendEl(parentElSelector,el,removeElDelayMs){var parentEl;try{parentEl=document.querySelector(parentElSelector);}catch(e){logError("Cannot find parent element by selector '".concat(parentElSelector,"'"),e);return false;}if(!parentEl){logMessage(source,"No parent element found by selector: '".concat(parentElSelector,"'"));return false;}try{parentEl.append(el);if(el instanceof HTMLIFrameElement&&el.contentWindow){el.contentWindow.name=IFRAME_WINDOW_NAME;}hit(source);}catch(e){logError("Cannot append child to parent by selector '".concat(parentElSelector,"'"),e);return false;}if(!nativeIsNaN(removeElDelayMs)){timerId=setTimeout(function(){el.remove();clearTimeout(timerId);},removeElDelayMs);}return true;};if(!findParentAndAppendEl(parentSelector,element,cleanupDelayMs)){observeDocumentWithTimeout(function(mutations,observer){if(findParentAndAppendEl(parentSelector,element,cleanupDelayMs)){observer.disconnect();}});}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function observeDocumentWithTimeout(callback){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseAttributePairs(input){if(!input){return [];}var NAME_VALUE_SEPARATOR="=";var PAIRS_SEPARATOR=" ";var SINGLE_QUOTE="'";var DOUBLE_QUOTE='"';var BACKSLASH="\\";var pairs=[];for(var i=0;i4&&arguments[4]!==undefined?arguments[4]:"";if(!functionName){return;}var nativeObjects={nativeStringify:window.JSON.stringify};var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(!base||!prop||typeof base[prop]!=="function"){var message="".concat(functionName," is not a function");logMessage(source,message);return;}var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var objectWrapper=function objectWrapper(target,thisArg,args){var data=args[0];if(typeof data==="object"){data=jsonPruner(source,data,prunePaths,requiredPaths,stack,nativeObjects);args[0]=data;}return Reflect.apply(target,thisArg,args);};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(base[prop],objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index1&&arguments[1]!==undefined?arguments[1]:"";var replacement=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";var propsToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}if(pattern===""&&replacement!==""){logMessage(source,"Pattern argument should not be empty string");return;}var shouldLog=pattern===""&&replacement==="";var nativeRequestClone=Request.prototype.clone;var nativeFetch=fetch;var shouldReplace=false;var fetchData;var handlerWrapper=function handlerWrapper(target,thisArg,args){fetchData=getFetchData(args,nativeRequestClone);if(shouldLog){logMessage(source,"fetch( ".concat(objectToString(fetchData)," )"),true);hit(source);return Reflect.apply(target,thisArg,args);}shouldReplace=matchRequestProps(source,propsToMatch,fetchData);if(!shouldReplace){return Reflect.apply(target,thisArg,args);}return nativeFetch.apply(null,args).then(function(response){return response.text().then(function(bodyText){var patternRegexp=pattern==="*"?/(\n|.)*/:toRegExp(pattern);var modifiedTextContent=bodyText.replace(patternRegexp,replacement);var forgedResponse=forgeResponse(response,modifiedTextContent);hit(source);return forgedResponse;}).catch(function(){var fetchDataStr=objectToString(fetchData);var message="Response body can't be converted to text: ".concat(fetchDataStr);logMessage(source,message);return Reflect.apply(target,thisArg,args);});}).catch(function(){return Reflect.apply(target,thisArg,args);});};var fetchHandler={apply:handlerWrapper};fetch=new Proxy(fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function forgeResponse(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url;var forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}});return forgedResponse;}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceFetchResponse.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedReplaceNodeText(source,args){function trustedReplaceNodeText(source,nodeName,textMatch,pattern,replacement){var uboAliases=["replace-node-text.js","rpnt.js","sed.js"];if(uboAliases.includes(source.name)){replacement=pattern;pattern=textMatch;for(var _len=arguments.length,extraArgs=new Array(_len>5?_len-5:0),_key=5;_key<_len;_key++){extraArgs[_key-5]=arguments[_key];}for(var i=0;i1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function handleExistingNodes(selector,handler){var nodeList=document.querySelectorAll(selector);var nodes=nodeListToArray(nodeList);handler(nodes);}function handleMutations(mutations,handler){var addedNodes=getAddedNodes(mutations);handler(addedNodes);}function replaceNodeText(source,node,pattern,replacement){var textContent=node.textContent;if(textContent){node.textContent=textContent.replace(pattern,replacement);hit(source);}}function isTargetNode(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent;var nodeNameLowerCase=nodeName.toLowerCase();return textContent!==null&&textContent!==""&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch));}function parseNodeTextParams(nodeName,textMatch){var pattern=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;var REGEXP_START_MARKER="/";var isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER));var selector=isStringNameMatch?nodeName:"*";var nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName);var textContentMatch=!textMatch.startsWith(REGEXP_START_MARKER)?textMatch:toRegExp(textMatch);var patternMatch;if(pattern){patternMatch=!pattern.startsWith(REGEXP_START_MARKER)?pattern:toRegExp(pattern);}return {selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function nodeListToArray(nodeList){var nodes=[];for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceNodeText.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedReplaceXhrResponse(source,args){function trustedReplaceXhrResponse(source){var pattern=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var replacement=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";var propsToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof Proxy==="undefined"){return;}if(pattern===""&&replacement!==""){var message="Pattern argument should not be empty string.";logMessage(source,message);return;}var shouldLog=pattern===""&&replacement==="";var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(shouldLog){var _message="xhr( ".concat(objectToString(xhrData)," )");logMessage(source,_message,true);hit(source);return Reflect.apply(target,thisArg,args);}if(matchRequestProps(source,propsToMatch,xhrData)){thisArg.shouldBePrevented=true;thisArg.headersReceived=!!thisArg.headersReceived;}if(thisArg.shouldBePrevented&&!thisArg.headersReceived){thisArg.headersReceived=true;thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"){return;}var patternRegexp=pattern==="*"?/(\n|.)*/:toRegExp(pattern);var modifiedContent=content.replace(patternRegexp,replacement);Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:modifiedContent,writable:false},responseText:{value:modifiedContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceXhrResponse.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetAttr(source,args){function trustedSetAttr(source,selector,attr){var value=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(!selector||!attr){return;}setAttributeBySelector(source,selector,attr,value);observeDOMChanges(function(){return setAttributeBySelector(source,selector,attr,value);},true);}function setAttributeBySelector(source,selector,attribute,value){var attributeSetter=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultAttributeSetter;var elements;try{elements=document.querySelectorAll(selector);}catch(_unused){logMessage(source,'Failed to find elements matching selector "'.concat(selector,'"'));return;}if(!elements||elements.length===0){return;}try{elements.forEach(function(elem){return attributeSetter(elem,attribute,value);});hit(source);}catch(_unused2){logMessage(source,"Failed to set [".concat(attribute,'="').concat(value,'"] to each of selected elements.'));}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetConstant(source,args){function trustedSetConstant(source,property,value,stack){if(!property||!matchStackTrace(stack,new Error().stack)){return;}var constantValue;try{constantValue=inferValue(value);}catch(e){logMessage(source,e);return;}var canceled=false;var mustCancel=function mustCancel(value){if(canceled){return canceled;}canceled=value!==undefined&&constantValue!==undefined&&typeof value!==typeof constantValue&&value!==null;return canceled;};var trapProp=function trapProp(base,prop,configurable,handler){if(!handler.init(base[prop])){return false;}var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);var prevSetter;if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message="Property '".concat(prop,"' is not configurable");logMessage(source,message);return false;}base[prop]=constantValue;if(origDescriptor.set instanceof Function){prevSetter=origDescriptor.set;}}Object.defineProperty(base,prop,{configurable:configurable,get(){return handler.get();},set(a){if(prevSetter!==undefined){prevSetter(a);}handler.set(a);}});return true;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;var inChainPropHandler={factValue:undefined,init(a){this.factValue=a;return true;},get(){return this.factValue;},set(a){if(this.factValue===a){return;}this.factValue=a;if(a instanceof Object){setChainPropAccess(a,chain);}}};var endPropHandler={init(a){if(mustCancel(a)){return false;}return true;},get(){return constantValue;},set(a){if(!mustCancel(a)){return;}constantValue=a;}};if(!chain){var isTrapped=trapProp(base,prop,false,endPropHandler);if(isTrapped){hit(source);}return;}if(base!==undefined&&base[prop]===null){trapProp(base,prop,true,inChainPropHandler);return;}if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){trapProp(base,prop,true,inChainPropHandler);}var propValue=owner[prop];if(propValue instanceof Object||typeof propValue==="object"&&propValue!==null){setChainPropAccess(propValue,chain);}trapProp(base,prop,true,inChainPropHandler);};setChainPropAccess(window,property);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function inferValue(value){if(value==="undefined"){return undefined;}if(value==="false"){return false;}if(value==="true"){return true;}if(value==="null"){return null;}if(value==="NaN"){return NaN;}if(value.startsWith("/")&&value.endsWith("/")){return toRegExp(value);}var MAX_ALLOWED_NUM=32767;var numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM){throw new Error("number values bigger than 32767 are not allowed");}return numVal;}var errorMessage="'".concat(value,"' value type can't be inferred");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||typeof parsableVal==="string"){return parsableVal;}}catch(e){errorMessage+=": ".concat(e);}throw new TypeError(errorMessage);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var path=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"/";var domain=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";if(typeof name==="undefined"){logMessage(source,"Cookie name should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Cookie value should be specified");return;}var parsedValue=parseKeywordValue(value);if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,parsedValue,path,domain,false);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}if(offsetExpiresSec){var parsedOffsetMs=getTrustedCookieOffsetMs(offsetExpiresSec);if(!parsedOffsetMs){logMessage(source,"Invalid offsetExpiresSec value: ".concat(offsetExpiresSec));return;}var expires=Date.now()+parsedOffsetMs;cookieToSet+="; expires=".concat(new Date(expires).toUTCString());}document.cookie=cookieToSet;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getTrustedCookieOffsetMs(offsetExpiresSec){var ONE_YEAR_EXPIRATION_KEYWORD="1year";var ONE_DAY_EXPIRATION_KEYWORD="1day";var MS_IN_SEC=1e3;var SECONDS_IN_YEAR=365*24*60*60;var SECONDS_IN_DAY=24*60*60;var parsedSec;if(offsetExpiresSec===ONE_YEAR_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_YEAR;}else if(offsetExpiresSec===ONE_DAY_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_DAY;}else {parsedSec=Number.parseInt(offsetExpiresSec,10);if(Number.isNaN(parsedSec)){return null;}}return parsedSec*MS_IN_SEC;}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetCookieReload(source,args){function trustedSetCookieReload(source,name,value){var offsetExpiresSec=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var path=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"/";var domain=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";if(typeof name==="undefined"){logMessage(source,"Cookie name should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Cookie value should be specified");return;}if(isCookieSetWithValue(document.cookie,name,value)){return;}var parsedValue=parseKeywordValue(value);if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,parsedValue,path,domain,false);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}if(offsetExpiresSec){var parsedOffsetMs=getTrustedCookieOffsetMs(offsetExpiresSec);if(!parsedOffsetMs){logMessage(source,"Invalid offsetExpiresSec value: ".concat(offsetExpiresSec));return;}var expires=Date.now()+parsedOffsetMs;cookieToSet+="; expires=".concat(new Date(expires).toUTCString());}document.cookie=cookieToSet;hit(source);var cookieValueToCheck=parseCookieString(document.cookie)[name];if(isCookieSetWithValue(document.cookie,name,cookieValueToCheck)){window.location.reload();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(";").some(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return false;}var cookieName=cookieStr.slice(0,pos).trim();var cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue;});}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getTrustedCookieOffsetMs(offsetExpiresSec){var ONE_YEAR_EXPIRATION_KEYWORD="1year";var ONE_DAY_EXPIRATION_KEYWORD="1day";var MS_IN_SEC=1e3;var SECONDS_IN_YEAR=365*24*60*60;var SECONDS_IN_DAY=24*60*60;var parsedSec;if(offsetExpiresSec===ONE_YEAR_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_YEAR;}else if(offsetExpiresSec===ONE_DAY_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_DAY;}else {parsedSec=Number.parseInt(offsetExpiresSec,10);if(Number.isNaN(parsedSec)){return null;}}return parsedSec*MS_IN_SEC;}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}function parseCookieString(cookieString){var COOKIE_DELIMITER="=";var COOKIE_PAIRS_DELIMITER=";";var cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER);var cookieData={};cookieChunks.forEach(function(singleCookie){var cookieKey;var cookieValue="";var delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);if(delimiterIndex===-1){cookieKey=singleCookie.trim();}else {cookieKey=singleCookie.slice(0,delimiterIndex).trim();cookieValue=singleCookie.slice(delimiterIndex+1);}cookieData[cookieKey]=cookieValue||null;});return cookieData;}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetCookieReload.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetLocalStorageItem(source,args){function trustedSetLocalStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Item value should be specified");return;}var parsedValue=parseKeywordValue(value);var _window=window,localStorage=_window.localStorage;setStorageItem(source,localStorage,key,parsedValue);hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetLocalStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSuppressNativeMethod(source,args){function trustedSuppressNativeMethod(source,methodPath,signatureStr){var how=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"abort";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(!methodPath||!signatureStr){return;}var IGNORE_ARG_SYMBOL=" ";var suppress=how==="abort"?getAbortFunc():function(){};var signatureMatcher;try{signatureMatcher=signatureStr.split("|").map(function(value){return value===IGNORE_ARG_SYMBOL?value:inferValue(value);});}catch(e){logMessage(source,"Could not parse the signature matcher: ".concat(getErrorMessage(e)));return;}var getPathParts=getPropertyInChain;var _getPathParts=getPathParts(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(typeof chain!=="undefined"){logMessage(source,"Could not reach the end of the prop chain: ".concat(methodPath));return;}var nativeMethod=base[prop];if(!nativeMethod||typeof nativeMethod!=="function"){logMessage(source,"Could not retrieve the method: ".concat(methodPath));return;}function matchMethodCall(nativeArguments,matchArguments){return matchArguments.every(function(matcher,i){if(matcher===IGNORE_ARG_SYMBOL){return true;}var argument=nativeArguments[i];return isValueMatched(argument,matcher);});}var isMatchingSuspended=false;function apply(target,thisArg,argumentsList){if(isMatchingSuspended){return Reflect.apply(target,thisArg,argumentsList);}isMatchingSuspended=true;if(stack&&!matchStackTrace(stack,new Error().stack||"")){return Reflect.apply(target,thisArg,argumentsList);}var isMatching=matchMethodCall(argumentsList,signatureMatcher);isMatchingSuspended=false;if(isMatching){hit(source);return suppress();}return Reflect.apply(target,thisArg,argumentsList);}base[prop]=new Proxy(nativeMethod,{apply:apply});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function inferValue(value){if(value==="undefined"){return undefined;}if(value==="false"){return false;}if(value==="true"){return true;}if(value==="null"){return null;}if(value==="NaN"){return NaN;}if(value.startsWith("/")&&value.endsWith("/")){return toRegExp(value);}var MAX_ALLOWED_NUM=32767;var numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM){throw new Error("number values bigger than 32767 are not allowed");}return numVal;}var errorMessage="'".concat(value,"' value type can't be inferred");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||typeof parsableVal==="string"){return parsableVal;}}catch(e){errorMessage+=": ".concat(e);}throw new TypeError(errorMessage);}function isValueMatched(value,matcher){if(typeof value==="function"){return false;}if(nativeIsNaN(value)){return nativeIsNaN(matcher);}if(value===null||typeof value==="undefined"||typeof value==="number"||typeof value==="boolean"){return value===matcher;}if(typeof value==="string"){if(typeof matcher==="string"||matcher instanceof RegExp){return isStringMatched(value,matcher);}return false;}if(Array.isArray(value)&&Array.isArray(matcher)){return isArrayMatched(value,matcher);}if(isArbitraryObject(value)&&isArbitraryObject(matcher)){return isObjectMatched(value,matcher);}return false;}function getAbortFunc(){var rid=randomId();var isErrorHandlerSet=false;return function abort(){if(!isErrorHandlerSet){window.onerror=createOnErrorHandler(rid);isErrorHandlerSet=true;}throw new ReferenceError(rid);};}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getErrorMessage(error){var isErrorWithMessage=function isErrorWithMessage(e){return typeof e==="object"&&e!==null&&"message"in e&&typeof e.message==="string";};if(isErrorWithMessage(error)){return error.message;}try{return new Error(JSON.stringify(error)).message;}catch(_unused){return new Error(String(error)).message;}}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function randomId(){return Math.random().toString(36).slice(2,9);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function isArbitraryObject(value){return value!==null&&typeof value==="object"&&!Array.isArray(value)&&!(value instanceof RegExp);}function isStringMatched(str,matcher){if(typeof matcher==="string"){if(matcher===""){return str===matcher;}return str.includes(matcher);}if(matcher instanceof RegExp){return matcher.test(str);}return false;}function isArrayMatched(array,matcher){if(array.length===0){return matcher.length===0;}if(matcher.length===0){return false;}var _loop=function _loop(){var matcherValue=matcher[i];var isMatching=array.some(function(arrItem){return isValueMatched(arrItem,matcherValue);});if(!isMatching){return {v:false};}return "continue";};for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var urlToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof Reflect==="undefined"||typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var shouldPruneResponse=false;var urlMatchRegexp=toRegExp(urlToMatch);var XPATH_MARKER="xpath(";var isXpath=propsToRemove&&propsToRemove.startsWith(XPATH_MARKER);var getXPathElements=function getXPathElements(contextNode){var matchedElements=[];try{var elementsToRemove=propsToRemove.slice(XPATH_MARKER.length,-1);var xpathResult=contextNode.evaluate(elementsToRemove,contextNode,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0;i")){return true;}}return false;};var createXMLDocument=function createXMLDocument(text){var xmlParser=new DOMParser();var xmlDocument=xmlParser.parseFromString(text,"text/xml");return xmlDocument;};var isPruningNeeded=function isPruningNeeded(response,propsToRemove){if(!isXML(response)){return false;}var docXML=createXMLDocument(response);return isXpath?getXPathElements(docXML):!!docXML.querySelector(propsToRemove);};var pruneXML=function pruneXML(text){if(!isXML(text)){shouldPruneResponse=false;return text;}var xmlDoc=createXMLDocument(text);var errorNode=xmlDoc.querySelector("parsererror");if(errorNode){return text;}if(optionalProp!==""&&xmlDoc.querySelector(optionalProp)===null){shouldPruneResponse=false;return text;}var elements=isXpath?getXPathElements(xmlDoc):xmlDoc.querySelectorAll(propsToRemove);if(!elements.length){shouldPruneResponse=false;return text;}if(isXpath){xPathPruning(elements);}else {elements.forEach(function(elem){elem.remove();});}var serializer=new XMLSerializer();text=serializer.serializeToString(xmlDoc);return text;};var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(matchRequestProps(source,urlToMatch,xhrData)){thisArg.shouldBePruned=true;}if(thisArg.shouldBePruned){thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){var allowedResponseTypeValues=["","text"];if(!thisArg.shouldBePruned||!allowedResponseTypeValues.includes(thisArg.responseType)){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"){return;}if(!propsToRemove){if(isXML(response)){var message="XMLHttpRequest.open() URL: ".concat(responseURL,"\nresponse: ").concat(response);logMessage(source,message);logMessage(source,createXMLDocument(response),true,false);}}else {shouldPruneResponse=isPruningNeeded(response,propsToRemove);}var responseContent=shouldPruneResponse?pruneXML(response):response;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:responseContent,writable:false},responseText:{value:responseContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);var nativeFetch=window.fetch;var fetchWrapper=async function fetchWrapper(target,thisArg,args){var fetchURL=args[0]instanceof Request?args[0].url:args[0];if(typeof fetchURL!=="string"||fetchURL.length===0){return Reflect.apply(target,thisArg,args);}if(urlMatchRegexp.test(fetchURL)){var response=await nativeFetch(...args);var clonedResponse=response.clone();var responseText=await response.text();shouldPruneResponse=isPruningNeeded(responseText,propsToRemove);if(!shouldPruneResponse){var message="fetch URL: ".concat(fetchURL,"\nresponse text: ").concat(responseText);logMessage(source,message);logMessage(source,createXMLDocument(responseText),true,false);return clonedResponse;}var prunedText=pruneXML(responseText);if(shouldPruneResponse){hit(source);return new Response(prunedText,{status:response.status,statusText:response.statusText,headers:response.headers});}return clonedResponse;}return Reflect.apply(target,thisArg,args);};var fetchHandler={apply:fetchWrapper};window.fetch=new Proxy(window.fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{xmlPrune.apply(this,updatedArgs);}catch(e){console.log(e);}}var scriptletsMap={"amazon-apstag":AmazonApstag,"ubo-amazon_apstag.js":AmazonApstag,"amazon_apstag.js":AmazonApstag,"didomi-loader":DidomiLoader,fingerprintjs2:Fingerprintjs2,"ubo-fingerprint2.js":Fingerprintjs2,"fingerprint2.js":Fingerprintjs2,fingerprintjs3:Fingerprintjs3,"ubo-fingerprint3.js":Fingerprintjs3,"fingerprint3.js":Fingerprintjs3,gemius:Gemius,"google-analytics":GoogleAnalytics,"ubo-google-analytics_analytics.js":GoogleAnalytics,"google-analytics_analytics.js":GoogleAnalytics,"googletagmanager-gtm":GoogleAnalytics,"ubo-googletagmanager_gtm.js":GoogleAnalytics,"googletagmanager_gtm.js":GoogleAnalytics,"google-analytics-ga":GoogleAnalyticsGa,"ubo-google-analytics_ga.js":GoogleAnalyticsGa,"google-analytics_ga.js":GoogleAnalyticsGa,"google-ima3":GoogleIma3,"ubo-google-ima.js":GoogleIma3,"google-ima.js":GoogleIma3,"googlesyndication-adsbygoogle":GoogleSyndicationAdsByGoogle,"ubo-googlesyndication_adsbygoogle.js":GoogleSyndicationAdsByGoogle,"googlesyndication_adsbygoogle.js":GoogleSyndicationAdsByGoogle,"googletagservices-gpt":GoogleTagServicesGpt,"ubo-googletagservices_gpt.js":GoogleTagServicesGpt,"googletagservices_gpt.js":GoogleTagServicesGpt,matomo:Matomo,"naver-wcslog":NaverWcslog,"pardot-1.0":Pardot,prebid:Prebid,"scorecardresearch-beacon":ScoreCardResearchBeacon,"ubo-scorecardresearch_beacon.js":ScoreCardResearchBeacon,"scorecardresearch_beacon.js":ScoreCardResearchBeacon,"abort-current-inline-script":abortCurrentInlineScript,"abort-current-script.js":abortCurrentInlineScript,"ubo-abort-current-script.js":abortCurrentInlineScript,"acs.js":abortCurrentInlineScript,"ubo-acs.js":abortCurrentInlineScript,"ubo-abort-current-script":abortCurrentInlineScript,"ubo-acs":abortCurrentInlineScript,"abort-current-inline-script.js":abortCurrentInlineScript,"ubo-abort-current-inline-script.js":abortCurrentInlineScript,"acis.js":abortCurrentInlineScript,"ubo-acis.js":abortCurrentInlineScript,"ubo-abort-current-inline-script":abortCurrentInlineScript,"ubo-acis":abortCurrentInlineScript,"abp-abort-current-inline-script":abortCurrentInlineScript,"abort-on-property-read":abortOnPropertyRead,"abort-on-property-read.js":abortOnPropertyRead,"ubo-abort-on-property-read.js":abortOnPropertyRead,"aopr.js":abortOnPropertyRead,"ubo-aopr.js":abortOnPropertyRead,"ubo-abort-on-property-read":abortOnPropertyRead,"ubo-aopr":abortOnPropertyRead,"abp-abort-on-property-read":abortOnPropertyRead,"abort-on-property-write":abortOnPropertyWrite,"abort-on-property-write.js":abortOnPropertyWrite,"ubo-abort-on-property-write.js":abortOnPropertyWrite,"aopw.js":abortOnPropertyWrite,"ubo-aopw.js":abortOnPropertyWrite,"ubo-abort-on-property-write":abortOnPropertyWrite,"ubo-aopw":abortOnPropertyWrite,"abp-abort-on-property-write":abortOnPropertyWrite,"abort-on-stack-trace":abortOnStackTrace,"abort-on-stack-trace.js":abortOnStackTrace,"ubo-abort-on-stack-trace.js":abortOnStackTrace,"aost.js":abortOnStackTrace,"ubo-aost.js":abortOnStackTrace,"ubo-abort-on-stack-trace":abortOnStackTrace,"ubo-aost":abortOnStackTrace,"abp-abort-on-stack-trace":abortOnStackTrace,"adjust-setInterval":adjustSetInterval,"nano-setInterval-booster.js":adjustSetInterval,"ubo-nano-setInterval-booster.js":adjustSetInterval,"nano-sib.js":adjustSetInterval,"ubo-nano-sib.js":adjustSetInterval,"adjust-setInterval.js":adjustSetInterval,"ubo-adjust-setInterval.js":adjustSetInterval,"ubo-nano-setInterval-booster":adjustSetInterval,"ubo-nano-sib":adjustSetInterval,"ubo-adjust-setInterval":adjustSetInterval,"adjust-setTimeout":adjustSetTimeout,"adjust-setTimeout.js":adjustSetTimeout,"ubo-adjust-setTimeout.js":adjustSetTimeout,"nano-setTimeout-booster.js":adjustSetTimeout,"ubo-nano-setTimeout-booster.js":adjustSetTimeout,"nano-stb.js":adjustSetTimeout,"ubo-nano-stb.js":adjustSetTimeout,"ubo-adjust-setTimeout":adjustSetTimeout,"ubo-nano-setTimeout-booster":adjustSetTimeout,"ubo-nano-stb":adjustSetTimeout,"call-nothrow":callNoThrow,"call-nothrow.js":callNoThrow,"ubo-call-nothrow.js":callNoThrow,"ubo-call-nothrow":callNoThrow,"debug-current-inline-script":debugCurrentInlineScript,"debug-on-property-read":debugOnPropertyRead,"debug-on-property-write":debugOnPropertyWrite,"dir-string":dirString,"disable-newtab-links":disableNewtabLinks,"disable-newtab-links.js":disableNewtabLinks,"ubo-disable-newtab-links.js":disableNewtabLinks,"ubo-disable-newtab-links":disableNewtabLinks,"evaldata-prune":evalDataPrune,"evaldata-prune.js":evalDataPrune,"ubo-evaldata-prune.js":evalDataPrune,"ubo-evaldata-prune":evalDataPrune,"close-window":forceWindowClose,"window-close-if.js":forceWindowClose,"ubo-window-close-if.js":forceWindowClose,"ubo-window-close-if":forceWindowClose,"close-window.js":forceWindowClose,"ubo-close-window.js":forceWindowClose,"ubo-close-window":forceWindowClose,"hide-in-shadow-dom":hideInShadowDom,"href-sanitizer":hrefSanitizer,"href-sanitizer.js":hrefSanitizer,"ubo-href-sanitizer.js":hrefSanitizer,"ubo-href-sanitizer":hrefSanitizer,"inject-css-in-shadow-dom":injectCssInShadowDom,"json-prune":jsonPrune,"json-prune.js":jsonPrune,"ubo-json-prune.js":jsonPrune,"ubo-json-prune":jsonPrune,"abp-json-prune":jsonPrune,"json-prune-fetch-response":jsonPruneFetchResponse,"json-prune-fetch-response.js":jsonPruneFetchResponse,"ubo-json-prune-fetch-response.js":jsonPruneFetchResponse,"ubo-json-prune-fetch-response":jsonPruneFetchResponse,"json-prune-xhr-response":jsonPruneXhrResponse,"json-prune-xhr-response.js":jsonPruneXhrResponse,"ubo-json-prune-xhr-response.js":jsonPruneXhrResponse,"ubo-json-prune-xhr-response":jsonPruneXhrResponse,log:log,"abp-log":log,"log-addEventListener":logAddEventListener,"addEventListener-logger.js":logAddEventListener,"ubo-addEventListener-logger.js":logAddEventListener,"aell.js":logAddEventListener,"ubo-aell.js":logAddEventListener,"ubo-addEventListener-logger":logAddEventListener,"ubo-aell":logAddEventListener,"log-eval":logEval,"log-on-stack-trace":logOnStacktrace,"m3u-prune":m3uPrune,"m3u-prune.js":m3uPrune,"ubo-m3u-prune.js":m3uPrune,"ubo-m3u-prune":m3uPrune,"metrika-yandex-tag":metrikaYandexTag,"metrika-yandex-watch":metrikaYandexWatch,"no-protected-audience":noProtectedAudience,"no-topics":noTopics,noeval:noeval,"noeval.js":noeval,"silent-noeval.js":noeval,"ubo-noeval.js":noeval,"ubo-silent-noeval.js":noeval,"ubo-noeval":noeval,"ubo-silent-noeval":noeval,nowebrtc:nowebrtc,"nowebrtc.js":nowebrtc,"ubo-nowebrtc.js":nowebrtc,"ubo-nowebrtc":nowebrtc,"prevent-addEventListener":preventAddEventListener,"addEventListener-defuser.js":preventAddEventListener,"ubo-addEventListener-defuser.js":preventAddEventListener,"aeld.js":preventAddEventListener,"ubo-aeld.js":preventAddEventListener,"ubo-addEventListener-defuser":preventAddEventListener,"ubo-aeld":preventAddEventListener,"abp-prevent-listener":preventAddEventListener,"prevent-adfly":preventAdfly,"adfly-defuser.js":preventAdfly,"ubo-adfly-defuser.js":preventAdfly,"ubo-adfly-defuser":preventAdfly,"prevent-bab":preventBab,"prevent-element-src-loading":preventElementSrcLoading,"prevent-eval-if":preventEvalIf,"noeval-if.js":preventEvalIf,"ubo-noeval-if.js":preventEvalIf,"ubo-noeval-if":preventEvalIf,"prevent-fab-3.2.0":preventFab,"nofab.js":preventFab,"ubo-nofab.js":preventFab,"fuckadblock.js-3.2.0":preventFab,"ubo-fuckadblock.js-3.2.0":preventFab,"ubo-nofab":preventFab,"prevent-fetch":preventFetch,"no-fetch-if.js":preventFetch,"ubo-no-fetch-if.js":preventFetch,"ubo-no-fetch-if":preventFetch,"prevent-popads-net":preventPopadsNet,"popads.net.js":preventPopadsNet,"ubo-popads.net.js":preventPopadsNet,"ubo-popads.net":preventPopadsNet,"prevent-refresh":preventRefresh,"prevent-refresh.js":preventRefresh,"refresh-defuser.js":preventRefresh,"refresh-defuser":preventRefresh,"ubo-prevent-refresh.js":preventRefresh,"ubo-prevent-refresh":preventRefresh,"ubo-refresh-defuser.js":preventRefresh,"ubo-refresh-defuser":preventRefresh,"prevent-requestAnimationFrame":preventRequestAnimationFrame,"no-requestAnimationFrame-if.js":preventRequestAnimationFrame,"ubo-no-requestAnimationFrame-if.js":preventRequestAnimationFrame,"norafif.js":preventRequestAnimationFrame,"ubo-norafif.js":preventRequestAnimationFrame,"ubo-no-requestAnimationFrame-if":preventRequestAnimationFrame,"ubo-norafif":preventRequestAnimationFrame,"prevent-setInterval":preventSetInterval,"no-setInterval-if.js":preventSetInterval,"ubo-no-setInterval-if.js":preventSetInterval,"setInterval-defuser.js":preventSetInterval,"ubo-setInterval-defuser.js":preventSetInterval,"nosiif.js":preventSetInterval,"ubo-nosiif.js":preventSetInterval,"sid.js":preventSetInterval,"ubo-sid.js":preventSetInterval,"ubo-no-setInterval-if":preventSetInterval,"ubo-setInterval-defuser":preventSetInterval,"ubo-nosiif":preventSetInterval,"ubo-sid":preventSetInterval,"prevent-setTimeout":preventSetTimeout,"no-setTimeout-if.js":preventSetTimeout,"ubo-no-setTimeout-if.js":preventSetTimeout,"nostif.js":preventSetTimeout,"ubo-nostif.js":preventSetTimeout,"ubo-no-setTimeout-if":preventSetTimeout,"ubo-nostif":preventSetTimeout,"setTimeout-defuser.js":preventSetTimeout,"ubo-setTimeout-defuser.js":preventSetTimeout,"ubo-setTimeout-defuser":preventSetTimeout,"std.js":preventSetTimeout,"ubo-std.js":preventSetTimeout,"ubo-std":preventSetTimeout,"prevent-window-open":preventWindowOpen,"window.open-defuser.js":preventWindowOpen,"ubo-window.open-defuser.js":preventWindowOpen,"ubo-window.open-defuser":preventWindowOpen,"nowoif.js":preventWindowOpen,"ubo-nowoif.js":preventWindowOpen,"ubo-nowoif":preventWindowOpen,"no-window-open-if.js":preventWindowOpen,"ubo-no-window-open-if.js":preventWindowOpen,"ubo-no-window-open-if":preventWindowOpen,"prevent-xhr":preventXHR,"no-xhr-if.js":preventXHR,"ubo-no-xhr-if.js":preventXHR,"ubo-no-xhr-if":preventXHR,"remove-attr":removeAttr,"remove-attr.js":removeAttr,"ubo-remove-attr.js":removeAttr,"ra.js":removeAttr,"ubo-ra.js":removeAttr,"ubo-remove-attr":removeAttr,"ubo-ra":removeAttr,"remove-class":removeClass,"remove-class.js":removeClass,"ubo-remove-class.js":removeClass,"rc.js":removeClass,"ubo-rc.js":removeClass,"ubo-remove-class":removeClass,"ubo-rc":removeClass,"remove-cookie":removeCookie,"cookie-remover.js":removeCookie,"ubo-cookie-remover.js":removeCookie,"ubo-cookie-remover":removeCookie,"remove-cookie.js":removeCookie,"ubo-remove-cookie.js":removeCookie,"ubo-remove-cookie":removeCookie,"abp-cookie-remover":removeCookie,"remove-in-shadow-dom":removeInShadowDom,"remove-node-text":removeNodeText,"remove-node-text.js":removeNodeText,"ubo-remove-node-text.js":removeNodeText,"rmnt.js":removeNodeText,"ubo-rmnt.js":removeNodeText,"ubo-remove-node-text":removeNodeText,"ubo-rmnt":removeNodeText,"set-attr":setAttr,"set-attr.js":setAttr,"ubo-set-attr.js":setAttr,"ubo-set-attr":setAttr,"set-constant":setConstant,"set-constant.js":setConstant,"ubo-set-constant.js":setConstant,"set.js":setConstant,"ubo-set.js":setConstant,"ubo-set-constant":setConstant,"ubo-set":setConstant,"abp-override-property-read":setConstant,"set-cookie":setCookie,"set-cookie.js":setCookie,"ubo-set-cookie.js":setCookie,"ubo-set-cookie":setCookie,"set-cookie-reload":setCookieReload,"set-cookie-reload.js":setCookieReload,"ubo-set-cookie-reload.js":setCookieReload,"ubo-set-cookie-reload":setCookieReload,"set-local-storage-item":setLocalStorageItem,"set-local-storage-item.js":setLocalStorageItem,"ubo-set-local-storage-item.js":setLocalStorageItem,"ubo-set-local-storage-item":setLocalStorageItem,"set-popads-dummy":setPopadsDummy,"popads-dummy.js":setPopadsDummy,"ubo-popads-dummy.js":setPopadsDummy,"ubo-popads-dummy":setPopadsDummy,"set-session-storage-item":setSessionStorageItem,"set-session-storage-item.js":setSessionStorageItem,"ubo-set-session-storage-item.js":setSessionStorageItem,"ubo-set-session-storage-item":setSessionStorageItem,"spoof-css":spoofCSS,"spoof-css.js":spoofCSS,"ubo-spoof-css.js":spoofCSS,"ubo-spoof-css":spoofCSS,"trusted-click-element":trustedClickElement,"trusted-create-element":trustedCreateElement,"trusted-prune-inbound-object":trustedPruneInboundObject,"trusted-replace-fetch-response":trustedReplaceFetchResponse,"trusted-replace-node-text":trustedReplaceNodeText,"trusted-replace-xhr-response":trustedReplaceXhrResponse,"trusted-set-attr":trustedSetAttr,"trusted-set-constant":trustedSetConstant,"trusted-set-cookie":trustedSetCookie,"trusted-set-cookie-reload":trustedSetCookieReload,"trusted-set-local-storage-item":trustedSetLocalStorageItem,"trusted-suppress-native-method":trustedSuppressNativeMethod,"xml-prune":xmlPrune,"xml-prune.js":xmlPrune,"ubo-xml-prune.js":xmlPrune,"ubo-xml-prune":xmlPrune};var getScriptletFunction=function getScriptletFunction(name){return scriptletsMap[name];}; + function AmazonApstag(source,args){function AmazonApstag(source){var apstagWrapper={fetchBids(a,b){if(typeof b==="function"){b([]);}},init:noopFunc,setDisplayBids:noopFunc,targetingKeys:noopFunc};window.apstag=apstagWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{AmazonApstag.apply(this,updatedArgs);}catch(e){console.log(e);}}function DidomiLoader(source,args){function DidomiLoader(source){function UserConsentStatusForVendorSubscribe(){}UserConsentStatusForVendorSubscribe.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendorSubscribe.prototype.subscribe=noopFunc;function UserConsentStatusForVendor(){}UserConsentStatusForVendor.prototype.first=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendor.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendor.prototype.subscribe=noopFunc;var DidomiWrapper={isConsentRequired:falseFunc,getUserConsentStatusForPurpose:trueFunc,getUserConsentStatus:trueFunc,getUserStatus:noopFunc,getRequiredPurposes:noopArray,getUserConsentStatusForVendor:trueFunc,Purposes:{Cookies:"cookies"},notice:{configure:noopFunc,hide:noopFunc,isVisible:falseFunc,show:noopFunc,showDataProcessing:trueFunc},isUserConsentStatusPartial:falseFunc,on(){return {actions:{},emitter:{},services:{},store:{}};},shouldConsentBeCollected:falseFunc,getUserConsentStatusForAll:noopFunc,getObservableOnUserConsentStatusForVendor(){return new UserConsentStatusForVendor();}};window.Didomi=DidomiWrapper;var didomiStateWrapper={didomiExperimentId:"",didomiExperimentUserGroup:"",didomiGDPRApplies:1,didomiIABConsent:"",didomiPurposesConsent:"",didomiPurposesConsentDenied:"",didomiPurposesConsentUnknown:"",didomiVendorsConsent:"",didomiVendorsConsentDenied:"",didomiVendorsConsentUnknown:"",didomiVendorsRawConsent:"",didomiVendorsRawConsentDenied:"",didomiVendorsRawConsentUnknown:""};window.didomiState=didomiStateWrapper;var tcData={eventStatus:"tcloaded",gdprApplies:false,listenerId:noopFunc,vendor:{consents:[]},purpose:{consents:[]}};var __tcfapiWrapper=function __tcfapiWrapper(command,version,callback){if(typeof callback!=="function"||command==="removeEventListener"){return;}callback(tcData,true);};window.__tcfapi=__tcfapiWrapper;var didomiEventListenersWrapper={stub:true,push:noopFunc};window.didomiEventListeners=didomiEventListenersWrapper;var didomiOnReadyWrapper={stub:true,push(arg){if(typeof arg!=="function"){return;}if(document.readyState!=="complete"){window.addEventListener("load",function(){setTimeout(arg(window.Didomi));});}else {setTimeout(arg(window.Didomi));}}};window.didomiOnReady=window.didomiOnReady||didomiOnReadyWrapper;if(Array.isArray(window.didomiOnReady)){window.didomiOnReady.forEach(function(arg){if(typeof arg==="function"){try{setTimeout(arg(window.Didomi));}catch(e){}}});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopArray(){return [];}function trueFunc(){return true;}function falseFunc(){return false;}var updatedArgs=args?[].concat(source).concat(args):[source];try{DidomiLoader.apply(this,updatedArgs);}catch(e){console.log(e);}}function Fingerprintjs2(source,args){function Fingerprintjs2(source){var browserId="";for(var i=0;i<8;i+=1){browserId+=(Math.random()*65536+4096).toString(16).slice(-4);}var Fingerprint2=function Fingerprint2(){};Fingerprint2.get=function(options,callback){if(!callback){callback=options;}setTimeout(function(){if(callback){callback(browserId,[]);}},1);};Fingerprint2.prototype={get:Fingerprint2.get};window.Fingerprint2=Fingerprint2;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{Fingerprintjs2.apply(this,updatedArgs);}catch(e){console.log(e);}}function Fingerprintjs3(source,args){function Fingerprintjs3(source){var visitorId=function(){var id="";for(var i=0;i<8;i+=1){id+=(Math.random()*65536+4096).toString(16).slice(-4);}return id;}();var FingerprintJS=function FingerprintJS(){};FingerprintJS.prototype={load(){return Promise.resolve(new FingerprintJS());},get(){return Promise.resolve({visitorId:visitorId});},hashComponents:noopStr};window.FingerprintJS=new FingerprintJS();hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{Fingerprintjs3.apply(this,updatedArgs);}catch(e){console.log(e);}}function Gemius(source,args){function Gemius(source){var GemiusPlayer=function GemiusPlayer(){};GemiusPlayer.prototype={setVideoObject:noopFunc,newProgram:noopFunc,programEvent:noopFunc,newAd:noopFunc,adEvent:noopFunc};window.GemiusPlayer=GemiusPlayer;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{Gemius.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleAnalytics(source,args){function GoogleAnalytics(source){var _window$googleAnalyti;var Tracker=function Tracker(){};var proto=Tracker.prototype;proto.get=noopFunc;proto.set=noopFunc;proto.send=noopFunc;var googleAnalyticsName=window.GoogleAnalyticsObject||"ga";var queue=(_window$googleAnalyti=window[googleAnalyticsName])===null||_window$googleAnalyti===void 0?void 0:_window$googleAnalyti.q;function ga(a){var len=arguments.length;if(len===0){return;}var lastArg=arguments[len-1];var replacer;if(lastArg instanceof Object&&lastArg!==null&&typeof lastArg.hitCallback==="function"){replacer=lastArg.hitCallback;}else if(typeof lastArg==="function"){replacer=function replacer(){lastArg(ga.create());};}try{setTimeout(replacer,1);}catch(ex){}}ga.create=function(){return new Tracker();};ga.getByName=function(){return new Tracker();};ga.getAll=function(){return [new Tracker()];};ga.remove=noopFunc;ga.loaded=true;window[googleAnalyticsName]=ga;if(Array.isArray(queue)){var push=function push(arg){ga(...arg);};queue.push=push;queue.forEach(push);}var _window=window,dataLayer=_window.dataLayer,google_optimize=_window.google_optimize;if(dataLayer instanceof Object===false){return;}if(dataLayer.hide instanceof Object&&typeof dataLayer.hide.end==="function"){dataLayer.hide.end();}var handleCallback=function handleCallback(dataObj,funcName){if(dataObj&&typeof dataObj[funcName]==="function"){setTimeout(dataObj[funcName]);}};if(typeof dataLayer.push==="function"){dataLayer.push=function(data){if(data instanceof Object){handleCallback(data,"eventCallback");for(var key in data){handleCallback(data[key],"event_callback");}if(!data.hasOwnProperty("eventCallback")&&!data.hasOwnProperty("eventCallback")){[].push.call(window.dataLayer,data);}}if(Array.isArray(data)){data.forEach(function(arg){handleCallback(arg,"callback");});}return noopFunc;};}if(google_optimize instanceof Object&&typeof google_optimize.get==="function"){var googleOptimizeWrapper={get:noopFunc};window.google_optimize=googleOptimizeWrapper;}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleAnalytics.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleAnalyticsGa(source,args){function GoogleAnalyticsGa(source){function Gaq(){}Gaq.prototype.Na=noopFunc;Gaq.prototype.O=noopFunc;Gaq.prototype.Sa=noopFunc;Gaq.prototype.Ta=noopFunc;Gaq.prototype.Va=noopFunc;Gaq.prototype._createAsyncTracker=noopFunc;Gaq.prototype._getAsyncTracker=noopFunc;Gaq.prototype._getPlugin=noopFunc;Gaq.prototype.push=function(data){if(typeof data==="function"){data();return;}if(Array.isArray(data)===false){return;}if(typeof data[0]==="string"&&/(^|\.)_link$/.test(data[0])&&typeof data[1]==="string"){window.location.assign(data[1]);}if(data[0]==="_set"&&data[1]==="hitCallback"&&typeof data[2]==="function"){data[2]();}};var gaq=new Gaq();var asyncTrackers=window._gaq||[];if(Array.isArray(asyncTrackers)){while(asyncTrackers[0]){gaq.push(asyncTrackers.shift());}}window._gaq=gaq.qf=gaq;function Gat(){}var api=["_addIgnoredOrganic","_addIgnoredRef","_addItem","_addOrganic","_addTrans","_clearIgnoredOrganic","_clearIgnoredRef","_clearOrganic","_cookiePathCopy","_deleteCustomVar","_getName","_setAccount","_getAccount","_getClientInfo","_getDetectFlash","_getDetectTitle","_getLinkerUrl","_getLocalGifPath","_getServiceMode","_getVersion","_getVisitorCustomVar","_initData","_link","_linkByPost","_setAllowAnchor","_setAllowHash","_setAllowLinker","_setCampContentKey","_setCampMediumKey","_setCampNameKey","_setCampNOKey","_setCampSourceKey","_setCampTermKey","_setCampaignCookieTimeout","_setCampaignTrack","_setClientInfo","_setCookiePath","_setCookiePersistence","_setCookieTimeout","_setCustomVar","_setDetectFlash","_setDetectTitle","_setDomainName","_setLocalGifPath","_setLocalRemoteServerMode","_setLocalServerMode","_setReferrerOverride","_setRemoteServerMode","_setSampleRate","_setSessionTimeout","_setSiteSpeedSampleRate","_setSessionCookieTimeout","_setVar","_setVisitorCookieTimeout","_trackEvent","_trackPageLoadTime","_trackPageview","_trackSocial","_trackTiming","_trackTrans","_visitCode"];var tracker=api.reduce(function(res,funcName){res[funcName]=noopFunc;return res;},{});tracker._getLinkerUrl=function(a){return a;};tracker._link=function(url){if(typeof url!=="string"){return;}try{window.location.assign(url);}catch(e){logMessage(source,e);}};Gat.prototype._anonymizeIP=noopFunc;Gat.prototype._createTracker=noopFunc;Gat.prototype._forceSSL=noopFunc;Gat.prototype._getPlugin=noopFunc;Gat.prototype._getTracker=function(){return tracker;};Gat.prototype._getTrackerByName=function(){return tracker;};Gat.prototype._getTrackers=noopFunc;Gat.prototype.aa=noopFunc;Gat.prototype.ab=noopFunc;Gat.prototype.hb=noopFunc;Gat.prototype.la=noopFunc;Gat.prototype.oa=noopFunc;Gat.prototype.pa=noopFunc;Gat.prototype.u=noopFunc;var gat=new Gat();window._gat=gat;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleAnalyticsGa.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleIma3(source,args){function GoogleIma3(source){var _window$google$ima;var VERSION="3.453.0";var ima={};var AdDisplayContainer=function AdDisplayContainer(containerElement){var divElement=document.createElement("div");divElement.style.setProperty("display","none","important");divElement.style.setProperty("visibility","collapse","important");if(containerElement){containerElement.appendChild(divElement);}};AdDisplayContainer.prototype.destroy=noopFunc;AdDisplayContainer.prototype.initialize=noopFunc;var ImaSdkSettings=function ImaSdkSettings(){};ImaSdkSettings.CompanionBackfillMode={ALWAYS:"always",ON_MASTER_AD:"on_master_ad"};ImaSdkSettings.VpaidMode={DISABLED:0,ENABLED:1,INSECURE:2};ImaSdkSettings.prototype={c:true,f:{},i:false,l:"",p:"",r:0,t:"",v:"",getCompanionBackfill:noopFunc,getDisableCustomPlaybackForIOS10Plus(){return this.i;},getDisabledFlashAds:function getDisabledFlashAds(){return true;},getFeatureFlags(){return this.f;},getLocale(){return this.l;},getNumRedirects(){return this.r;},getPlayerType(){return this.t;},getPlayerVersion(){return this.v;},getPpid(){return this.p;},getVpaidMode(){return this.C;},isCookiesEnabled(){return this.c;},isVpaidAdapter(){return this.M;},setCompanionBackfill:noopFunc,setAutoPlayAdBreaks(a){this.K=a;},setCookiesEnabled(c){this.c=!!c;},setDisableCustomPlaybackForIOS10Plus(i){this.i=!!i;},setDisableFlashAds:noopFunc,setFeatureFlags(f){this.f=!!f;},setIsVpaidAdapter(a){this.M=a;},setLocale(l){this.l=!!l;},setNumRedirects(r){this.r=!!r;},setPageCorrelator(a){this.R=a;},setPlayerType(t){this.t=!!t;},setPlayerVersion(v){this.v=!!v;},setPpid(p){this.p=!!p;},setVpaidMode(a){this.C=a;},setSessionId:noopFunc,setStreamCorrelator:noopFunc,setVpaidAllowed:noopFunc,CompanionBackfillMode:{ALWAYS:"always",ON_MASTER_AD:"on_master_ad"},VpaidMode:{DISABLED:0,ENABLED:1,INSECURE:2}};var EventHandler=function EventHandler(){this.listeners=new Map();this._dispatch=function(e){var listeners=this.listeners.get(e.type);listeners=listeners?listeners.values():[];for(var _i=0,_Array$from=Array.from(listeners);_i<_Array$from.length;_i++){var listener=_Array$from[_i];try{listener(e);}catch(r){logMessage(source,r);}}};this.addEventListener=function(types,callback,options,context){if(!Array.isArray(types)){types=[types];}for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleIma3.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleSyndicationAdsByGoogle(source,args){function GoogleSyndicationAdsByGoogle(source){window.adsbygoogle={loaded:true,push(arg){if(typeof this.length==="undefined"){this.length=0;this.length+=1;}if(arg!==null&&arg instanceof Object&&arg.constructor.name==="Object"){for(var _i=0,_Object$keys=Object.keys(arg);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];if(typeof arg[key]==="function"){try{arg[key].call(this,{});}catch(_unused){}}}}}};var adElems=document.querySelectorAll(".adsbygoogle");var css="height:1px!important;max-height:1px!important;max-width:1px!important;width:1px!important;";var statusAttrName="data-adsbygoogle-status";var ASWIFT_IFRAME_MARKER="aswift_";var GOOGLE_ADS_IFRAME_MARKER="google_ads_iframe_";var executed=false;for(var i=0;i0){areIframesDefined=childNodesQuantity===2&&adElemChildNodes[0].nodeName.toLowerCase()==="iframe"&&adElemChildNodes[0].id.includes(ASWIFT_IFRAME_MARKER)&&adElemChildNodes[1].nodeName.toLowerCase()==="iframe"&&adElemChildNodes[1].id.includes(GOOGLE_ADS_IFRAME_MARKER);}if(!areIframesDefined){adElems[i].setAttribute(statusAttrName,"done");var aswiftIframe=document.createElement("iframe");aswiftIframe.id="".concat(ASWIFT_IFRAME_MARKER).concat(i);aswiftIframe.style=css;adElems[i].appendChild(aswiftIframe);var innerAswiftIframe=document.createElement("iframe");aswiftIframe.contentWindow.document.body.appendChild(innerAswiftIframe);var googleadsIframe=document.createElement("iframe");googleadsIframe.id="".concat(GOOGLE_ADS_IFRAME_MARKER).concat(i);googleadsIframe.style=css;adElems[i].appendChild(googleadsIframe);var innerGoogleadsIframe=document.createElement("iframe");googleadsIframe.contentWindow.document.body.appendChild(innerGoogleadsIframe);executed=true;}}if(executed){hit(source);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleSyndicationAdsByGoogle.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleTagServicesGpt(source,args){function GoogleTagServicesGpt(source){var slots=new Map();var slotsById=new Map();var slotsPerPath=new Map();var slotCreatives=new Map();var eventCallbacks=new Map();var gTargeting=new Map();var addEventListener=function addEventListener(name,listener){if(!eventCallbacks.has(name)){eventCallbacks.set(name,new Set());}eventCallbacks.get(name).add(listener);return this;};var removeEventListener=function removeEventListener(name,listener){if(eventCallbacks.has(name)){return eventCallbacks.get(name).delete(listener);}return false;};var fireSlotEvent=function fireSlotEvent(name,slot){return new Promise(function(resolve){requestAnimationFrame(function(){var size=[0,0];var callbacksSet=eventCallbacks.get(name)||[];var callbackArray=Array.from(callbacksSet);for(var i=0;i";f.style="position:absolute; width:0; height:0; left:0; right:0; z-index:-1; border:0";f.setAttribute("width",0);f.setAttribute("height",0);f.setAttribute("data-load-complete",true);f.setAttribute("data-google-container-id",true);f.setAttribute("sandbox","");node.appendChild(f);}};var displaySlot=function displaySlot(slot){if(!slot){return;}var id=slot.getSlotElementId();if(!document.getElementById(id)){return;}var parent=document.getElementById(id);if(parent){parent.appendChild(document.createElement("div"));}emptySlotElement(slot);recreateIframeForSlot(slot);fireSlotEvent("slotRenderEnded",slot);fireSlotEvent("slotRequested",slot);fireSlotEvent("slotResponseReceived",slot);fireSlotEvent("slotOnload",slot);fireSlotEvent("impressionViewable",slot);};var companionAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,enableSyncLoading:noopFunc,setRefreshUnfilledSlots:noopFunc,getSlots:noopArray};var contentService={addEventListener:addEventListener,removeEventListener:removeEventListener,setContent:noopFunc};function PassbackSlot(){}PassbackSlot.prototype.display=noopFunc;PassbackSlot.prototype.get=noopNull;PassbackSlot.prototype.set=noopThis;PassbackSlot.prototype.setClickUrl=noopThis;PassbackSlot.prototype.setTagForChildDirectedTreatment=noopThis;PassbackSlot.prototype.setTargeting=noopThis;PassbackSlot.prototype.updateTargetingFromMap=noopThis;function SizeMappingBuilder(){}SizeMappingBuilder.prototype.addSize=noopThis;SizeMappingBuilder.prototype.build=noopNull;var getTargetingValue=function getTargetingValue(v){if(typeof v==="string"){return [v];}try{return Array.prototype.flat.call(v);}catch(_unused){}return [];};var updateTargeting=function updateTargeting(targeting,map){if(typeof map==="object"){for(var key in map){if(Object.prototype.hasOwnProperty.call(map,key)){targeting.set(key,getTargetingValue(map[key]));}}}};var defineSlot=function defineSlot(adUnitPath,creatives,optDiv){if(slotsById.has(optDiv)){var _document$getElementB2;(_document$getElementB2=document.getElementById(optDiv))===null||_document$getElementB2===void 0?void 0:_document$getElementB2.remove();return slotsById.get(optDiv);}var attributes=new Map();var targeting=new Map();var exclusions=new Set();var response={advertiserId:undefined,campaignId:undefined,creativeId:undefined,creativeTemplateId:undefined,lineItemId:undefined};var sizes=[{getHeight:function getHeight(){return 2;},getWidth:function getWidth(){return 2;}}];var num=(slotsPerPath.get(adUnitPath)||0)+1;slotsPerPath.set(adUnitPath,num);var id="".concat(adUnitPath,"_").concat(num);var clickUrl="";var collapseEmptyDiv=null;var services=new Set();var slot={addService(e){services.add(e);return slot;},clearCategoryExclusions:noopThis,clearTargeting(k){if(k===undefined){targeting.clear();}else {targeting.delete(k);}},defineSizeMapping(mapping){slotCreatives.set(optDiv,mapping);return this;},get:function get(k){return attributes.get(k);},getAdUnitPath:function getAdUnitPath(){return adUnitPath;},getAttributeKeys:function getAttributeKeys(){return Array.from(attributes.keys());},getCategoryExclusions:function getCategoryExclusions(){return Array.from(exclusions);},getClickUrl:function getClickUrl(){return clickUrl;},getCollapseEmptyDiv:function getCollapseEmptyDiv(){return collapseEmptyDiv;},getContentUrl:function getContentUrl(){return "";},getDivStartsCollapsed:function getDivStartsCollapsed(){return null;},getDomId:function getDomId(){return optDiv;},getEscapedQemQueryId:function getEscapedQemQueryId(){return "";},getFirstLook:function getFirstLook(){return 0;},getId:function getId(){return id;},getHtml:function getHtml(){return "";},getName:function getName(){return id;},getOutOfPage:function getOutOfPage(){return false;},getResponseInformation:function getResponseInformation(){return response;},getServices:function getServices(){return Array.from(services);},getSizes:function getSizes(){return sizes;},getSlotElementId:function getSlotElementId(){return optDiv;},getSlotId:function getSlotId(){return slot;},getTargeting:function getTargeting(k){return targeting.get(k)||gTargeting.get(k)||[];},getTargetingKeys:function getTargetingKeys(){return Array.from(new Set(Array.of(...gTargeting.keys(),...targeting.keys())));},getTargetingMap:function getTargetingMap(){return Object.assign(Object.fromEntries(gTargeting.entries()),Object.fromEntries(targeting.entries()));},set(k,v){attributes.set(k,v);return slot;},setCategoryExclusion(e){exclusions.add(e);return slot;},setClickUrl(u){clickUrl=u;return slot;},setCollapseEmptyDiv(v){collapseEmptyDiv=!!v;return slot;},setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting(k,v){targeting.set(k,getTargetingValue(v));return slot;},toString:function toString(){return id;},updateTargetingFromMap(map){updateTargeting(targeting,map);return slot;}};slots.set(adUnitPath,slot);slotsById.set(optDiv,slot);slotCreatives.set(optDiv,creatives);return slot;};var pubAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,clear:noopFunc,clearCategoryExclusions:noopThis,clearTagForChildDirectedTreatment:noopThis,clearTargeting(k){if(k===undefined){gTargeting.clear();}else {gTargeting.delete(k);}},collapseEmptyDivs:noopFunc,defineOutOfPagePassback(){return new PassbackSlot();},definePassback(){return new PassbackSlot();},disableInitialLoad:noopFunc,display:noopFunc,enableAsyncRendering:noopFunc,enableLazyLoad:noopFunc,enableSingleRequest:noopFunc,enableSyncRendering:noopFunc,enableVideoAds:noopFunc,get:noopNull,getAttributeKeys:noopArray,getTargeting:noopArray,getTargetingKeys:noopArray,getSlots:noopArray,isInitialLoadDisabled:trueFunc,refresh:noopFunc,set:noopThis,setCategoryExclusion:noopThis,setCentering:noopFunc,setCookieOptions:noopThis,setForceSafeFrame:noopThis,setLocation:noopThis,setPrivacySettings:noopThis,setPublisherProvidedId:noopThis,setRequestNonPersonalizedAds:noopThis,setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting:noopThis,setVideoContent:noopThis,updateCorrelator:noopFunc};var _window=window,_window$googletag=_window.googletag,googletag=_window$googletag===void 0?{}:_window$googletag;var _googletag$cmd=googletag.cmd,cmd=_googletag$cmd===void 0?[]:_googletag$cmd;googletag.apiReady=true;googletag.cmd=[];googletag.cmd.push=function(a){try{a();}catch(ex){}return 1;};googletag.companionAds=function(){return companionAdsService;};googletag.content=function(){return contentService;};googletag.defineOutOfPageSlot=defineSlot;googletag.defineSlot=defineSlot;googletag.destroySlots=function(){slots.clear();slotsById.clear();};googletag.disablePublisherConsole=noopFunc;googletag.display=function(arg){var id;if(arg!==null&&arg!==void 0&&arg.getSlotElementId){id=arg.getSlotElementId();}else if(arg!==null&&arg!==void 0&&arg.nodeType){id=arg.id;}else {id=String(arg);}displaySlot(slotsById.get(id));};googletag.enableServices=noopFunc;googletag.getVersion=noopStr;googletag.pubads=function(){return pubAdsService;};googletag.pubadsReady=true;googletag.setAdIframeTitle=noopFunc;googletag.sizeMapping=function(){return new SizeMappingBuilder();};window.googletag=googletag;while(cmd.length!==0){googletag.cmd.push(cmd.shift());}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopThis(){return this;}function noopNull(){return null;}function noopArray(){return [];}function noopStr(){return "";}function trueFunc(){return true;}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleTagServicesGpt.apply(this,updatedArgs);}catch(e){console.log(e);}}function Matomo(source,args){function Matomo(source){var Tracker=function Tracker(){};Tracker.prototype.setDoNotTrack=noopFunc;Tracker.prototype.setDomains=noopFunc;Tracker.prototype.setCustomDimension=noopFunc;Tracker.prototype.trackPageView=noopFunc;var AsyncTracker=function AsyncTracker(){};AsyncTracker.prototype.addListener=noopFunc;var matomoWrapper={getTracker:Tracker,getAsyncTracker:AsyncTracker};window.Piwik=matomoWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{Matomo.apply(this,updatedArgs);}catch(e){console.log(e);}}function NaverWcslog(source,args){function NaverWcslog(source){window.wcs_add={};window.wcs_do=noopFunc;window.wcs={inflow:noopFunc};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{NaverWcslog.apply(this,updatedArgs);}catch(e){console.log(e);}}function Pardot(source,args){function Pardot(source){window.piVersion="1.0.2";window.piScriptNum=0;window.piScriptObj=[];window.checkNamespace=noopFunc;window.getPardotUrl=noopStr;window.piGetParameter=noopNull;window.piSetCookie=noopFunc;window.piGetCookie=noopStr;function piTracker(){window.pi={tracker:{visitor_id:"",visitor_id_sign:"",pi_opt_in:"",campaign_id:""}};window.piScriptNum+=1;}window.piResponse=noopFunc;window.piTracker=piTracker;piTracker();hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopStr(){return "";}function noopNull(){return null;}var updatedArgs=args?[].concat(source).concat(args):[source];try{Pardot.apply(this,updatedArgs);}catch(e){console.log(e);}}function Prebid(source,args){function Prebid(source){var pushFunction=function pushFunction(arg){if(typeof arg==="function"){try{arg.call();}catch(ex){}}};var pbjsWrapper={addAdUnits(){},adServers:{dfp:{buildVideoUrl:noopStr}},adUnits:[],aliasBidder(){},cmd:[],enableAnalytics(){},getHighestCpmBids:noopArray,libLoaded:true,que:[],requestBids(arg){if(arg instanceof Object&&arg.bidsBackHandler){try{arg.bidsBackHandler.call();}catch(ex){}}},removeAdUnit(){},setBidderConfig(){},setConfig(){},setTargetingForGPTAsync(){}};pbjsWrapper.cmd.push=pushFunction;pbjsWrapper.que.push=pushFunction;window.pbjs=pbjsWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}function noopArray(){return [];}var updatedArgs=args?[].concat(source).concat(args):[source];try{Prebid.apply(this,updatedArgs);}catch(e){console.log(e);}}function ScoreCardResearchBeacon(source,args){function ScoreCardResearchBeacon(source){window.COMSCORE={purge(){window._comscore=[];},beacon(){}};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{ScoreCardResearchBeacon.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortCurrentInlineScript(source,args){function abortCurrentInlineScript(source,property,search){var searchRegexp=toRegExp(search);var rid=randomId();var SRC_DATA_MARKER="data:text/javascript;base64,";var getCurrentScript=function getCurrentScript(){if("currentScript"in document){return document.currentScript;}var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1];};var ourScript=getCurrentScript();var abort=function abort(){var _scriptEl$src;var scriptEl=getCurrentScript();if(!scriptEl){return;}var content=scriptEl.textContent;try{var textContentGetter=Object.getOwnPropertyDescriptor(Node.prototype,"textContent").get;content=textContentGetter.call(scriptEl);}catch(e){}if(content.length===0&&typeof scriptEl.src!=="undefined"&&(_scriptEl$src=scriptEl.src)!==null&&_scriptEl$src!==void 0&&_scriptEl$src.startsWith(SRC_DATA_MARKER)){var encodedContent=scriptEl.src.slice(SRC_DATA_MARKER.length);content=window.atob(encodedContent);}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){hit(source);throw new ReferenceError(rid);}};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object===false&&base===null){var props=property.split(".");var propIndex=props.indexOf(prop);var baseName=props[propIndex-1];var message="The scriptlet had been executed before the ".concat(baseName," was loaded.");logMessage(source,message);return;}if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var currentValue=base[prop];var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);if(origDescriptor instanceof Object===false||origDescriptor.get instanceof Function===false){currentValue=base[prop];origDescriptor=undefined;}var descriptorWrapper=Object.assign(getDescriptorAddon(),{currentValue:currentValue,get(){if(!this.isAbortingSuspended){this.isolateCallback(abort);}if(origDescriptor instanceof Object){return origDescriptor.get.call(base);}return this.currentValue;},set(newValue){if(!this.isAbortingSuspended){this.isolateCallback(abort);}if(origDescriptor instanceof Object){origDescriptor.set.call(base,newValue);}else {this.currentValue=newValue;}}});setPropertyAccess(base,prop,{get(){return descriptorWrapper.get.call(descriptorWrapper);},set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue);}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getDescriptorAddon(){return {isAbortingSuspended:false,isolateCallback(cb){this.isAbortingSuspended=true;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}var result=cb(...args);this.isAbortingSuspended=false;return result;}catch(_unused){var rid=randomId();this.isAbortingSuspended=false;throw new ReferenceError(rid);}}};}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortCurrentInlineScript.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnPropertyRead(source,args){function abortOnPropertyRead(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{get:abort,set:function set(){}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortOnPropertyRead.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnPropertyWrite(source,args){function abortOnPropertyWrite(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{set:abort});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortOnPropertyWrite.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnStackTrace(source,args){function abortOnStackTrace(source,property,stack){if(!property||!stack){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}if(!stack.match(/^(inlineScript|injectedScript)$/)&&!isValidStrPattern(stack)){logMessage(source,"Invalid parameter: ".concat(stack));return;}var descriptorWrapper=Object.assign(getDescriptorAddon(),{value:base[prop],get(){if(!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,new Error().stack)){abort();}return this.value;},set(newValue){if(!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,new Error().stack)){abort();}this.value=newValue;}});setPropertyAccess(base,prop,{get(){return descriptorWrapper.get.call(descriptorWrapper);},set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue);}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getDescriptorAddon(){return {isAbortingSuspended:false,isolateCallback(cb){this.isAbortingSuspended=true;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}var result=cb(...args);this.isAbortingSuspended=false;return result;}catch(_unused){var rid=randomId();this.isAbortingSuspended=false;throw new ReferenceError(rid);}}};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeSetInterval.apply(window,[callback,delay,...args]);};window.setInterval=intervalWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getBoostMultiplier(boost){var DEFAULT_MULTIPLIER=.05;var MIN_MULTIPLIER=.001;var MAX_MULTIPLIER=50;var parsedBoost=parseFloat(boost);var boostMultiplier=nativeIsNaN(parsedBoost)||!nativeIsFinite(parsedBoost)?DEFAULT_MULTIPLIER:parsedBoost;if(boostMultiplierMAX_MULTIPLIER){boostMultiplier=MAX_MULTIPLIER;}return boostMultiplier;}function isDelayMatched(inputDelay,realDelay){return shouldMatchAnyDelay(inputDelay)||realDelay===getMatchDelay(inputDelay);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function getMatchDelay(delay){var DEFAULT_DELAY=1e3;var parsedDelay=parseInt(delay,10);var delayMatch=nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay;return delayMatch;}function shouldMatchAnyDelay(delay){return delay==="*";}var updatedArgs=args?[].concat(source).concat(args):[source];try{adjustSetInterval.apply(this,updatedArgs);}catch(e){console.log(e);}}function adjustSetTimeout(source,args){function adjustSetTimeout(source,matchCallback,matchDelay,boost){var nativeSetTimeout=window.setTimeout;var matchRegexp=toRegExp(matchCallback);var timeoutWrapper=function timeoutWrapper(callback,delay){if(!isValidCallback(callback)){var message="Scriptlet can't be applied because of invalid callback: '".concat(String(callback),"'");logMessage(source,message);}else if(matchRegexp.test(callback.toString())&&isDelayMatched(matchDelay,delay)){delay*=getBoostMultiplier(boost);hit(source);}for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeSetTimeout.apply(window,[callback,delay,...args]);};window.setTimeout=timeoutWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getBoostMultiplier(boost){var DEFAULT_MULTIPLIER=.05;var MIN_MULTIPLIER=.001;var MAX_MULTIPLIER=50;var parsedBoost=parseFloat(boost);var boostMultiplier=nativeIsNaN(parsedBoost)||!nativeIsFinite(parsedBoost)?DEFAULT_MULTIPLIER:parsedBoost;if(boostMultiplierMAX_MULTIPLIER){boostMultiplier=MAX_MULTIPLIER;}return boostMultiplier;}function isDelayMatched(inputDelay,realDelay){return shouldMatchAnyDelay(inputDelay)||realDelay===getMatchDelay(inputDelay);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function getMatchDelay(delay){var DEFAULT_DELAY=1e3;var parsedDelay=parseInt(delay,10);var delayMatch=nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay;return delayMatch;}function shouldMatchAnyDelay(delay){return delay==="*";}var updatedArgs=args?[].concat(source).concat(args):[source];try{adjustSetTimeout.apply(this,updatedArgs);}catch(e){console.log(e);}}function callNoThrow(source,args){function callNoThrow(source,functionName){if(!functionName){return;}var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(!base||!prop||typeof base[prop]!=="function"){var message="".concat(functionName," is not a function");logMessage(source,message);return;}var objectWrapper=function objectWrapper(){var result;try{result=Reflect.apply(...arguments);}catch(e){var _message="Error calling ".concat(functionName,": ").concat(e.message);logMessage(source,_message);}hit(source);return result;};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(base[prop],objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{callNoThrow.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugCurrentInlineScript(source,args){function debugCurrentInlineScript(source,property,search){var searchRegexp=toRegExp(search);var rid=randomId();var getCurrentScript=function getCurrentScript(){if("currentScript"in document){return document.currentScript;}var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1];};var ourScript=getCurrentScript();var abort=function abort(){var scriptEl=getCurrentScript();if(!scriptEl){return;}var content=scriptEl.textContent;try{var textContentGetter=Object.getOwnPropertyDescriptor(Node.prototype,"textContent").get;content=textContentGetter.call(scriptEl);}catch(e){}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){hit(source);debugger;}};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object===false&&base===null){var props=property.split(".");var propIndex=props.indexOf(prop);var baseName=props[propIndex-1];var message="The scriptlet had been executed before the ".concat(baseName," was loaded.");logMessage(message,source.verbose);return;}if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var currentValue=base[prop];setPropertyAccess(base,prop,{set:function set(value){abort();currentValue=value;},get:function get(){abort();return currentValue;}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugCurrentInlineScript.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugOnPropertyRead(source,args){function debugOnPropertyRead(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);debugger;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{get:abort,set:noopFunc});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugOnPropertyRead.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugOnPropertyWrite(source,args){function debugOnPropertyWrite(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);debugger;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{set:abort});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugOnPropertyWrite.apply(this,updatedArgs);}catch(e){console.log(e);}}function dirString(source,args){function dirString(source,times){var _console=console,dir=_console.dir;function dirWrapper(object){if(typeof dir==="function"){dir.call(this,object);}hit(source);}console.dir=dirWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{dirString.apply(this,updatedArgs);}catch(e){console.log(e);}}function disableNewtabLinks(source,args){function disableNewtabLinks(source){document.addEventListener("click",function(ev){var target=ev.target;while(target!==null){if(target.localName==="a"&&target.hasAttribute("target")){ev.stopPropagation();ev.preventDefault();hit(source);break;}target=target.parentNode;}});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{disableNewtabLinks.apply(this,updatedArgs);}catch(e){console.log(e);}}function evalDataPrune(source,args){function evalDataPrune(source,propsToRemove,requiredInitialProps,stack){var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var nativeObjects={nativeStringify:window.JSON.stringify};var evalWrapper=function evalWrapper(target,thisArg,args){var data=Reflect.apply(target,thisArg,args);if(typeof data==="object"){data=jsonPruner(source,data,prunePaths,requiredPaths,stack,nativeObjects);}return data;};var evalHandler={apply:evalWrapper};window.eval=new Proxy(window.eval,evalHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j1&&arguments[1]!==undefined?arguments[1]:"";if(typeof window.close!=="function"){var message="window.close() is not a function so 'close-window' scriptlet is unavailable";logMessage(source,message);return;}var closeImmediately=function closeImmediately(){try{hit(source);window.close();}catch(e){logMessage(source,e);}};var closeByExtension=function closeByExtension(){var extCall=function extCall(){dispatchEvent(new Event("adguard:scriptlet-close-window"));};window.addEventListener("adguard:subscribed-to-close-window",extCall,{once:true});setTimeout(function(){window.removeEventListener("adguard:subscribed-to-close-window",extCall,{once:true});},5e3);};var shouldClose=function shouldClose(){if(path===""){return true;}var pathRegexp=toRegExp(path);var currentPath="".concat(window.location.pathname).concat(window.location.search);return pathRegexp.test(currentPath);};if(shouldClose()){closeImmediately();if(navigator.userAgent.includes("Chrome")){closeByExtension();}}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{forceWindowClose.apply(this,updatedArgs);}catch(e){console.log(e);}}function hideInShadowDom(source,args){function hideInShadowDom(source,selector,baseSelector){if(!Element.prototype.attachShadow){return;}var hideElement=function hideElement(targetElement){var DISPLAY_NONE_CSS="display:none!important;";targetElement.style.cssText=DISPLAY_NONE_CSS;};var hideHandler=function hideHandler(){var hostElements=!baseSelector?findHostElements(document.documentElement):document.querySelectorAll(baseSelector);var _loop=function _loop(){var isHidden=false;var _pierceShadowDom=pierceShadowDom(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach(function(targetEl){hideElement(targetEl);isHidden=true;});if(isHidden){hit(source);}hostElements=innerHosts;};while(hostElements.length!==0){_loop();}};hideHandler();observeDOMChanges(hideHandler,true);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function findHostElements(rootElement){var hosts=[];if(rootElement){var domElems=rootElement.querySelectorAll("*");domElems.forEach(function(el){if(el.shadowRoot){hosts.push(el);}});}return hosts;}function pierceShadowDom(selector,hostElements){var targets=[];var innerHostsAcc=[];hostElements.forEach(function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot;var shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren));innerHostsAcc.push(findHostElements(shadowRootElem));});var innerHosts=flatten(innerHostsAcc);return {targets:targets,innerHosts:innerHosts};}function flatten(input){var stack=[];input.forEach(function(el){return stack.push(el);});var res=[];while(stack.length){var next=stack.pop();if(Array.isArray(next)){next.forEach(function(el){return stack.push(el);});}else {res.push(next);}}return res.reverse();}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{hideInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function hrefSanitizer(source,args){function hrefSanitizer(source,selector){var attribute=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"text";if(!selector){logMessage(source,"Selector is required.");return;}var regexpNotValidAtStart=/^(?:[\0- \x7F-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u036F\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482-\u0489\u0530\u0557\u0558\u055A-\u055F\u0589-\u05CF\u05EB-\u05EE\u05F3-\u061F\u064B-\u066D\u0670\u06D4\u06D6-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u06FD\u06FE\u0700-\u070F\u0711\u0730-\u074C\u07A6-\u07B0\u07B2-\u07C9\u07EB-\u07F3\u07F6-\u07F9\u07FB-\u07FF\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u083F\u0859-\u085F\u086B-\u086F\u0888\u088F-\u089F\u08CA-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962-\u0970\u0981-\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BC\u09BE-\u09CD\u09CF-\u09DB\u09DE\u09E2-\u09EF\u09F2-\u09FB\u09FD-\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A58\u0A5D\u0A5F-\u0A71\u0A75-\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABC\u0ABE-\u0ACF\u0AD1-\u0ADF\u0AE2-\u0AF8\u0AFA-\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3C\u0B3E-\u0B5B\u0B5E\u0B62-\u0B70\u0B72-\u0B82\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BCF\u0BD1-\u0C04\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C3E-\u0C57\u0C5B\u0C5C\u0C5E\u0C5F\u0C62-\u0C7F\u0C81-\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBC\u0CBE-\u0CDC\u0CDF\u0CE2-\u0CF0\u0CF3-\u0D03\u0D0D\u0D11\u0D3B\u0D3C\u0D3E-\u0D4D\u0D4F-\u0D53\u0D57-\u0D5E\u0D62-\u0D79\u0D80-\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0E00\u0E31\u0E34-\u0E3F\u0E47-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EB1\u0EB4-\u0EBC\u0EBE\u0EBF\u0EC5\u0EC7-\u0EDB\u0EE0-\u0EFF\u0F01-\u0F3F\u0F48\u0F6D-\u0F87\u0F8D-\u0FFF\u102B-\u103E\u1040-\u104F\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16F0\u16F9-\u16FF\u1712-\u171E\u1732-\u173F\u1752-\u175F\u176D\u1771-\u177F\u17B4-\u17D6\u17D8-\u17DB\u17DD-\u181F\u1879-\u187F\u1885\u1886\u18A9\u18AB-\u18AF\u18F6-\u18FF\u191F-\u194F\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19FF\u1A17-\u1A1F\u1A55-\u1AA6\u1AA8-\u1B04\u1B34-\u1B44\u1B4D-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BFF\u1C24-\u1C4C\u1C50-\u1C59\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1CFB-\u1CFF\u1DC0-\u1DFF\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u2182\u2185-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF-\u2E2E\u2E30-\u3004\u3007-\u3030\u3036-\u303A\u303D-\u3040\u3097-\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA620-\uA629\uA62C-\uA63F\uA66F-\uA67E\uA69E\uA69F\uA6E6-\uA716\uA720\uA721\uA789\uA78A\uA7CB-\uA7CF\uA7D2\uA7D4\uA7DA-\uA7F1\uA802\uA806\uA80B\uA823-\uA83F\uA874-\uA881\uA8B4-\uA8F1\uA8F8-\uA8FA\uA8FC\uA8FF-\uA909\uA926-\uA92F\uA947-\uA95F\uA97D-\uA983\uA9B3-\uA9CE\uA9D0-\uA9DF\uA9E5\uA9F0-\uA9F9\uA9FF\uAA29-\uAA3F\uAA43\uAA4C-\uAA5F\uAA77-\uAA79\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAC3-\uAADA\uAADE\uAADF\uAAEB-\uAAF1\uAAF5-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABE3-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB1E\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFE6F\uFE75\uFEFD-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEFF\uDF20-\uDF2C\uDF41\uDF4A-\uDF4F\uDF76-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0-\uDFFF]|\uD801[\uDC9E-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6F\uDD7B\uDD8B\uDD93\uDD96\uDDA2\uDDB2\uDDBA\uDDBD-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDF7F\uDF86\uDFB1\uDFBB-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE01-\uDE0F\uDE14\uDE18\uDE36-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE5-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD24-\uDE7F\uDEAA-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF46-\uDF6F\uDF82-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC00-\uDC02\uDC38-\uDC70\uDC73\uDC74\uDC76-\uDC82\uDCB0-\uDCCF\uDCE9-\uDD02\uDD27-\uDD43\uDD45\uDD46\uDD48-\uDD4F\uDD73-\uDD75\uDD77-\uDD82\uDDB3-\uDDC0\uDDC5-\uDDD9\uDDDB\uDDDD-\uDDFF\uDE12\uDE2C-\uDE3E\uDE41-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEDF-\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A-\uDF3C\uDF3E-\uDF4F\uDF51-\uDF5C\uDF62-\uDFFF]|\uD805[\uDC35-\uDC46\uDC4B-\uDC5E\uDC62-\uDC7F\uDCB0-\uDCC3\uDCC6\uDCC8-\uDD7F\uDDAF-\uDDD7\uDDDC-\uDDFF\uDE30-\uDE43\uDE45-\uDE7F\uDEAB-\uDEB7\uDEB9-\uDEFF\uDF1B-\uDF3F\uDF47-\uDFFF]|\uD806[\uDC2C-\uDC9F\uDCE0-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD30-\uDD3E\uDD40\uDD42-\uDD9F\uDDA8\uDDA9\uDDD1-\uDDE0\uDDE2\uDDE4-\uDDFF\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE4F\uDE51-\uDE5B\uDE8A-\uDE9C\uDE9E-\uDEAF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC2F-\uDC3F\uDC41-\uDC71\uDC90-\uDCFF\uDD07\uDD0A\uDD31-\uDD45\uDD47-\uDD5F\uDD66\uDD69\uDD8A-\uDD97\uDD99-\uDEDF\uDEF3-\uDF01\uDF03\uDF11\uDF34-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC00-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80E-\uD810\uD812-\uD819\uD824-\uD82A\uD82D\uD82E\uD830-\uD834\uD836\uD83C-\uD83F\uD87B-\uD87D\uD87F\uD889-\uDBFF][\uDC00-\uDFFF]|\uD80B[\uDC00-\uDF8F\uDFF1-\uDFFF]|\uD80D[\uDC30-\uDC40\uDC47-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F-\uDE6F\uDEBF-\uDECF\uDEEE-\uDEFF\uDF30-\uDF3F\uDF44-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4F\uDF51-\uDF92\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82B[\uDC00-\uDFEF\uDFF4\uDFFC\uDFFF]|\uD82C[\uDD23-\uDD31\uDD33-\uDD4F\uDD53\uDD54\uDD56-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC-\uDFFF]|\uD837[\uDC00-\uDEFF\uDF1F-\uDF24\uDF2B-\uDFFF]|\uD838[\uDC00-\uDC2F\uDC6E-\uDCFF\uDD2D-\uDD36\uDD3E-\uDD4D\uDD4F-\uDE8F\uDEAE-\uDEBF\uDEEC-\uDFFF]|\uD839[\uDC00-\uDCCF\uDCEC-\uDFDF\uDFE7\uDFEC\uDFEF\uDFFF]|\uD83A[\uDCC5-\uDCFF\uDD44-\uDD4A\uDD4C-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD869[\uDEE0-\uDEFF]|\uD86D[\uDF3A-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDF4F]|\uD888[\uDFB0-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+/;var regexpNotValidAtEnd=/(?:[\0- \x7F-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u036F\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482-\u0489\u0530\u0557\u0558\u055A-\u055F\u0589-\u05CF\u05EB-\u05EE\u05F3-\u061F\u064B-\u066D\u0670\u06D4\u06D6-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u06FD\u06FE\u0700-\u070F\u0711\u0730-\u074C\u07A6-\u07B0\u07B2-\u07C9\u07EB-\u07F3\u07F6-\u07F9\u07FB-\u07FF\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u083F\u0859-\u085F\u086B-\u086F\u0888\u088F-\u089F\u08CA-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962-\u0970\u0981-\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BC\u09BE-\u09CD\u09CF-\u09DB\u09DE\u09E2-\u09EF\u09F2-\u09FB\u09FD-\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A58\u0A5D\u0A5F-\u0A71\u0A75-\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABC\u0ABE-\u0ACF\u0AD1-\u0ADF\u0AE2-\u0AF8\u0AFA-\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3C\u0B3E-\u0B5B\u0B5E\u0B62-\u0B70\u0B72-\u0B82\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BCF\u0BD1-\u0C04\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C3E-\u0C57\u0C5B\u0C5C\u0C5E\u0C5F\u0C62-\u0C7F\u0C81-\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBC\u0CBE-\u0CDC\u0CDF\u0CE2-\u0CF0\u0CF3-\u0D03\u0D0D\u0D11\u0D3B\u0D3C\u0D3E-\u0D4D\u0D4F-\u0D53\u0D57-\u0D5E\u0D62-\u0D79\u0D80-\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0E00\u0E31\u0E34-\u0E3F\u0E47-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EB1\u0EB4-\u0EBC\u0EBE\u0EBF\u0EC5\u0EC7-\u0EDB\u0EE0-\u0EFF\u0F01-\u0F3F\u0F48\u0F6D-\u0F87\u0F8D-\u0FFF\u102B-\u103E\u1040-\u104F\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16F0\u16F9-\u16FF\u1712-\u171E\u1732-\u173F\u1752-\u175F\u176D\u1771-\u177F\u17B4-\u17D6\u17D8-\u17DB\u17DD-\u181F\u1879-\u187F\u1885\u1886\u18A9\u18AB-\u18AF\u18F6-\u18FF\u191F-\u194F\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19FF\u1A17-\u1A1F\u1A55-\u1AA6\u1AA8-\u1B04\u1B34-\u1B44\u1B4D-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BFF\u1C24-\u1C4C\u1C50-\u1C59\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1CFB-\u1CFF\u1DC0-\u1DFF\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u2182\u2185-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF-\u2E2E\u2E30-\u3004\u3007-\u3030\u3036-\u303A\u303D-\u3040\u3097-\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA620-\uA629\uA62C-\uA63F\uA66F-\uA67E\uA69E\uA69F\uA6E6-\uA716\uA720\uA721\uA789\uA78A\uA7CB-\uA7CF\uA7D2\uA7D4\uA7DA-\uA7F1\uA802\uA806\uA80B\uA823-\uA83F\uA874-\uA881\uA8B4-\uA8F1\uA8F8-\uA8FA\uA8FC\uA8FF-\uA909\uA926-\uA92F\uA947-\uA95F\uA97D-\uA983\uA9B3-\uA9CE\uA9D0-\uA9DF\uA9E5\uA9F0-\uA9F9\uA9FF\uAA29-\uAA3F\uAA43\uAA4C-\uAA5F\uAA77-\uAA79\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAC3-\uAADA\uAADE\uAADF\uAAEB-\uAAF1\uAAF5-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABE3-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB1E\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFE6F\uFE75\uFEFD-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEFF\uDF20-\uDF2C\uDF41\uDF4A-\uDF4F\uDF76-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0-\uDFFF]|\uD801[\uDC9E-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6F\uDD7B\uDD8B\uDD93\uDD96\uDDA2\uDDB2\uDDBA\uDDBD-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDF7F\uDF86\uDFB1\uDFBB-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE01-\uDE0F\uDE14\uDE18\uDE36-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE5-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD24-\uDE7F\uDEAA-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF46-\uDF6F\uDF82-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC00-\uDC02\uDC38-\uDC70\uDC73\uDC74\uDC76-\uDC82\uDCB0-\uDCCF\uDCE9-\uDD02\uDD27-\uDD43\uDD45\uDD46\uDD48-\uDD4F\uDD73-\uDD75\uDD77-\uDD82\uDDB3-\uDDC0\uDDC5-\uDDD9\uDDDB\uDDDD-\uDDFF\uDE12\uDE2C-\uDE3E\uDE41-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEDF-\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A-\uDF3C\uDF3E-\uDF4F\uDF51-\uDF5C\uDF62-\uDFFF]|\uD805[\uDC35-\uDC46\uDC4B-\uDC5E\uDC62-\uDC7F\uDCB0-\uDCC3\uDCC6\uDCC8-\uDD7F\uDDAF-\uDDD7\uDDDC-\uDDFF\uDE30-\uDE43\uDE45-\uDE7F\uDEAB-\uDEB7\uDEB9-\uDEFF\uDF1B-\uDF3F\uDF47-\uDFFF]|\uD806[\uDC2C-\uDC9F\uDCE0-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD30-\uDD3E\uDD40\uDD42-\uDD9F\uDDA8\uDDA9\uDDD1-\uDDE0\uDDE2\uDDE4-\uDDFF\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE4F\uDE51-\uDE5B\uDE8A-\uDE9C\uDE9E-\uDEAF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC2F-\uDC3F\uDC41-\uDC71\uDC90-\uDCFF\uDD07\uDD0A\uDD31-\uDD45\uDD47-\uDD5F\uDD66\uDD69\uDD8A-\uDD97\uDD99-\uDEDF\uDEF3-\uDF01\uDF03\uDF11\uDF34-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC00-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80E-\uD810\uD812-\uD819\uD824-\uD82A\uD82D\uD82E\uD830-\uD834\uD836\uD83C-\uD83F\uD87B-\uD87D\uD87F\uD889-\uDBFF][\uDC00-\uDFFF]|\uD80B[\uDC00-\uDF8F\uDFF1-\uDFFF]|\uD80D[\uDC30-\uDC40\uDC47-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F-\uDE6F\uDEBF-\uDECF\uDEEE-\uDEFF\uDF30-\uDF3F\uDF44-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4F\uDF51-\uDF92\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82B[\uDC00-\uDFEF\uDFF4\uDFFC\uDFFF]|\uD82C[\uDD23-\uDD31\uDD33-\uDD4F\uDD53\uDD54\uDD56-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC-\uDFFF]|\uD837[\uDC00-\uDEFF\uDF1F-\uDF24\uDF2B-\uDFFF]|\uD838[\uDC00-\uDC2F\uDC6E-\uDCFF\uDD2D-\uDD36\uDD3E-\uDD4D\uDD4F-\uDE8F\uDEAE-\uDEBF\uDEEC-\uDFFF]|\uD839[\uDC00-\uDCCF\uDCEC-\uDFDF\uDFE7\uDFEC\uDFEF\uDFFF]|\uD83A[\uDCC5-\uDCFF\uDD44-\uDD4A\uDD4C-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD869[\uDEE0-\uDEFF]|\uD86D[\uDF3A-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDF4F]|\uD888[\uDFB0-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+$/;var extractNewHref=function extractNewHref(anchor,attr){if(attr==="text"){if(!anchor.textContent){return "";}return anchor.textContent.replace(regexpNotValidAtStart,"").replace(regexpNotValidAtEnd,"");}if(attr.startsWith("?")){try{var url=new URL(anchor.href,document.location.href);return url.searchParams.get(attr.slice(1))||"";}catch(ex){logMessage(source,"Cannot retrieve the parameter '".concat(attr.slice(1),"' from the URL '").concat(anchor.href));return "";}}if(attr.startsWith("[")&&attr.endsWith("]")){return anchor.getAttribute(attr.slice(1,-1))||"";}return "";};var getValidURL=function getValidURL(text){if(!text){return null;}try{var _URL=new URL(text,document.location.href),href=_URL.href,protocol=_URL.protocol;if(protocol!=="http:"&&protocol!=="https:"){logMessage(source,'Protocol not allowed: "'.concat(protocol,'", from URL: "').concat(href,'"'));return null;}return href;}catch(_unused){return null;}};var isSanitizableAnchor=function isSanitizableAnchor(element){return element.nodeName.toLowerCase()==="a"&&element.hasAttribute("href");};var sanitize=function sanitize(elementSelector){var elements;try{elements=document.querySelectorAll(elementSelector);}catch(e){logMessage(source,'Invalid selector "'.concat(elementSelector,'"'));return;}elements.forEach(function(elem){try{if(!isSanitizableAnchor(elem)){return;}var newHref=extractNewHref(elem,attribute);var newValidHref=getValidURL(newHref);if(!newValidHref){logMessage(source,"Invalid URL: ".concat(newHref));return;}var oldHref=elem.href;elem.setAttribute("href",newValidHref);if(newValidHref!==oldHref){logMessage(source,'Sanitized "'.concat(oldHref,'" to "').concat(newValidHref,'".'));}}catch(ex){logMessage(source,"Failed to sanitize ".concat(elem,"."));}});hit(source);};var run=function run(){sanitize(selector);observeDOMChanges(function(){return sanitize(selector);},true);};if(document.readyState==="loading"){window.addEventListener("DOMContentLoaded",run,{once:true});}else {run();}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{hrefSanitizer.apply(this,updatedArgs);}catch(e){console.log(e);}}function injectCssInShadowDom(source,args){function injectCssInShadowDom(source,cssRule){var hostSelector=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";if(!Element.prototype.attachShadow||typeof Proxy==="undefined"||typeof Reflect==="undefined"){return;}if(cssRule.match(/(url|image-set)\(.*\)/i)){logMessage(source,'"url()" function is not allowed for css rules');return;}var callback=function callback(shadowRoot){try{var stylesheet=new CSSStyleSheet();try{stylesheet.insertRule(cssRule);}catch(e){logMessage(source,"Unable to apply the rule '".concat(cssRule,"' due to: \n'").concat(e.message,"'"));return;}shadowRoot.adoptedStyleSheets=[...shadowRoot.adoptedStyleSheets,stylesheet];}catch(_unused){var styleTag=document.createElement("style");styleTag.innerText=cssRule;shadowRoot.appendChild(styleTag);}hit(source);};hijackAttachShadow(window,hostSelector,callback);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function hijackAttachShadow(context,hostSelector,callback){var handlerWrapper=function handlerWrapper(target,thisArg,args){var shadowRoot=Reflect.apply(target,thisArg,args);if(thisArg&&thisArg.matches(hostSelector||"*")){callback(shadowRoot);}return shadowRoot;};var attachShadowHandler={apply:handlerWrapper};context.Element.prototype.attachShadow=new Proxy(context.Element.prototype.attachShadow,attachShadowHandler);}var updatedArgs=args?[].concat(source).concat(args):[source];try{injectCssInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function jsonPrune(source,args){function jsonPrune(source,propsToRemove,requiredInitialProps){var stack=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var nativeObjects={nativeStringify:window.JSON.stringify};var nativeJSONParse=JSON.parse;var jsonParseWrapper=function jsonParseWrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}var root=nativeJSONParse.apply(JSON,args);return jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects);};jsonParseWrapper.toString=nativeJSONParse.toString.bind(nativeJSONParse);JSON.parse=jsonParseWrapper;var nativeResponseJson=Response.prototype.json;var responseJsonWrapper=function responseJsonWrapper(){var promise=nativeResponseJson.apply(this);return promise.then(function(obj){return jsonPruner(source,obj,prunePaths,requiredPaths,stack,nativeObjects);});};if(typeof Response==="undefined"){return;}Response.prototype.json=responseJsonWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j3&&arguments[3]!==undefined?arguments[3]:"";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(obligatoryProps);var nativeStringify=window.JSON.stringify;var nativeRequestClone=window.Request.prototype.clone;var nativeResponseClone=window.Response.prototype.clone;var nativeFetch=window.fetch;var fetchHandlerWrapper=async function fetchHandlerWrapper(target,thisArg,args){var fetchData=getFetchData(args,nativeRequestClone);if(!matchRequestProps(source,propsToMatch,fetchData)){return Reflect.apply(target,thisArg,args);}var originalResponse;var clonedResponse;try{originalResponse=await nativeFetch.apply(null,args);clonedResponse=nativeResponseClone.call(originalResponse);}catch(_unused){logMessage(source,"Could not make an original fetch request: ".concat(fetchData.url));return Reflect.apply(target,thisArg,args);}var json;try{json=await originalResponse.json();}catch(e){var message="Response body can't be converted to json: ".concat(objectToString(fetchData));logMessage(source,message);return clonedResponse;}var modifiedJson=jsonPruner(source,json,prunePaths,requiredPaths,stack,{nativeStringify:nativeStringify,nativeRequestClone:nativeRequestClone,nativeResponseClone:nativeResponseClone,nativeFetch:nativeFetch});var forgedResponse=forgeResponse(originalResponse,nativeStringify(modifiedJson));hit(source);return forgedResponse;};var fetchHandler={apply:fetchHandlerWrapper};window.fetch=new Proxy(window.fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(prunePaths.length===0&&requiredPaths.length===0){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}return root;}try{if(isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects)===false){return root;}prunePaths.forEach(function(path){var ownerObjArr=getWildcardPropertyInChain(root,path,true);ownerObjArr.forEach(function(ownerObj){if(ownerObj!==undefined&&ownerObj.base){delete ownerObj.base[ownerObj.prop];hit(source);}});});}catch(e){logMessage(source,e);}return root;}function getPrunePath(props){var validPropsString=typeof props==="string"&&props!==undefined&&props!=="";return validPropsString?props.split(/ +/):[];}function forgeResponse(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url;var forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}});return forgedResponse;}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(typeof Proxy==="undefined"){return;}var shouldLog=!propsToRemove&&!obligatoryProps;var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(obligatoryProps);var nativeParse=window.JSON.parse;var nativeStringify=window.JSON.stringify;var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var setRequestHeaderWrapper=function setRequestHeaderWrapper(setRequestHeader,thisArgument,argsList){thisArgument.collectedHeaders.push(argsList);return Reflect.apply(setRequestHeader,thisArgument,argsList);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(matchRequestProps(source,propsToMatch,xhrData)||shouldLog){thisArg.xhrShouldBePruned=true;thisArg.headersReceived=!!thisArg.headersReceived;}if(thisArg.xhrShouldBePruned&&!thisArg.headersReceived){thisArg.headersReceived=true;thisArg.collectedHeaders=[];thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){var stackTrace=new Error().stack||"";if(!thisArg.xhrShouldBePruned||stack&&!matchStackTrace(stack,stackTrace)){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"&&typeof content!=="object"){return;}var modifiedContent;if(typeof content==="string"){try{var jsonContent=nativeParse(content);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(jsonContent,null,2),"\nStack trace:\n").concat(stackTrace),true);logMessage(source,jsonContent,true,false);modifiedContent=content;}else {modifiedContent=jsonPruner(source,jsonContent,prunePaths,requiredPaths,stack="",{nativeStringify:nativeStringify});try{var responseType=thisArg.responseType;switch(responseType){case"":case"text":modifiedContent=nativeStringify(modifiedContent);break;case"arraybuffer":modifiedContent=new TextEncoder().encode(nativeStringify(modifiedContent)).buffer;break;case"blob":modifiedContent=new Blob([nativeStringify(modifiedContent)]);break;default:break;}}catch(error){var message="Response body cannot be converted to reponse type: '".concat(content,"'");logMessage(source,message);modifiedContent=content;}}}catch(error){var _message="Response body cannot be converted to json: '".concat(content,"'");logMessage(source,_message);modifiedContent=content;}}Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:modifiedContent,writable:false},responseText:{value:modifiedContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url,Boolean(xhrData.async)]);thisArg.collectedHeaders.forEach(function(header){forgedRequest.setRequestHeader(header[0],header[1]);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(prunePaths.length===0&&requiredPaths.length===0){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}return root;}try{if(isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects)===false){return root;}prunePaths.forEach(function(path){var ownerObjArr=getWildcardPropertyInChain(root,path,true);ownerObjArr.forEach(function(ownerObj){if(ownerObj!==undefined&&ownerObj.base){delete ownerObj.base[ownerObj.prop];hit(source);}});});}catch(e){logMessage(source,e);}return root;}function getPrunePath(props){var validPropsString=typeof props==="string"&&props!==undefined&&props!=="";return validPropsString?props.split(/ +/):[];}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeAddEventListener.apply(context,[type,listener,...args]);}var descriptor={configurable:true,set:function set(){},get:function get(){return addEventListenerWrapper;}};Object.defineProperty(window.EventTarget.prototype,"addEventListener",descriptor);Object.defineProperty(window,"addEventListener",descriptor);Object.defineProperty(document,"addEventListener",descriptor);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function validateType(type){return typeof type!=="undefined";}function validateListener(listener){return typeof listener!=="undefined"&&(typeof listener==="function"||typeof listener==="object"&&listener!==null&&"handleEvent"in listener&&typeof listener.handleEvent==="function");}function listenerToString(listener){return typeof listener==="function"?listener.toString():listener.handleEvent.toString();}function convertTypeToString(value){var output;if(typeof value==="undefined"){output="undefined";}else if(typeof value==="object"){if(value===null){output="null";}else {output=objectToString(value);}}else {output=String(value);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{logAddEventListener.apply(this,updatedArgs);}catch(e){console.log(e);}}function logEval(source,args){function logEval(source){var nativeEval=window.eval;function evalWrapper(str){hit(source);logMessage(source,'eval("'.concat(str,'")'),true);return nativeEval(str);}window.eval=evalWrapper;var nativeFunction=window.Function;function FunctionWrapper(){hit(source);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}logMessage(source,"new Function(".concat(args.join(", "),")"),true);return nativeFunction.apply(this,[...args]);}FunctionWrapper.prototype=Object.create(nativeFunction.prototype);FunctionWrapper.prototype.constructor=FunctionWrapper;window.Function=FunctionWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{logEval.apply(this,updatedArgs);}catch(e){console.log(e);}}function logOnStacktrace(source,args){function logOnStacktrace(source,property){if(!property){return;}var refineStackTrace=function refineStackTrace(stackString){var stackSteps=stackString.split("\n").slice(2).map(function(line){return line.replace(/ {4}at /,"");});var logInfoArray=stackSteps.map(function(line){var funcName;var funcFullPath;var reg=/\(([^\)]+)\)/;var regFirefox=/(.*?@)(\S+)(:\d+):\d+\)?$/;if(line.match(reg)){funcName=line.split(" ").slice(0,-1).join(" ");funcFullPath=line.match(reg)[1];}else if(line.match(regFirefox)){funcName=line.split("@").slice(0,-1).join(" ");funcFullPath=line.match(regFirefox)[2];}else {funcName="function name is not available";funcFullPath=line;}return [funcName,funcFullPath];});var logInfoObject={};logInfoArray.forEach(function(pair){logInfoObject[pair[0]]=pair[1];});return logInfoObject;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var value=base[prop];setPropertyAccess(base,prop,{get(){hit(source);logMessage(source,"Get ".concat(prop),true);console.table(refineStackTrace(new Error().stack));return value;},set(newValue){hit(source);logMessage(source,"Set ".concat(prop),true);console.table(refineStackTrace(new Error().stack));value=newValue;}});};setChainPropAccess(window,property);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{logOnStacktrace.apply(this,updatedArgs);}catch(e){console.log(e);}}function m3uPrune(source,args){function m3uPrune(source,propsToRemove){var urlToMatch=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";if(typeof Reflect==="undefined"||typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var shouldPruneResponse=false;var urlMatchRegexp=toRegExp(urlToMatch);var SEGMENT_MARKER="#";var AD_MARKER={ASSET:"#EXT-X-ASSET:",CUE:"#EXT-X-CUE:",CUE_IN:"#EXT-X-CUE-IN",DISCONTINUITY:"#EXT-X-DISCONTINUITY",EXTINF:"#EXTINF",EXTM3U:"#EXTM3U",SCTE35:"#EXT-X-SCTE35:"};var COMCAST_AD_MARKER={AD:"-AD-",VAST:"-VAST-",VMAP_AD:"-VMAP-AD-",VMAP_AD_BREAK:"#EXT-X-VMAP-AD-BREAK:"};var TAGS_ALLOWLIST=["#EXT-X-TARGETDURATION","#EXT-X-MEDIA-SEQUENCE","#EXT-X-DISCONTINUITY-SEQUENCE","#EXT-X-ENDLIST","#EXT-X-PLAYLIST-TYPE","#EXT-X-I-FRAMES-ONLY","#EXT-X-MEDIA","#EXT-X-STREAM-INF","#EXT-X-I-FRAME-STREAM-INF","#EXT-X-SESSION-DATA","#EXT-X-SESSION-KEY","#EXT-X-INDEPENDENT-SEGMENTS","#EXT-X-START"];var isAllowedTag=function isAllowedTag(str){return TAGS_ALLOWLIST.some(function(el){return str.startsWith(el);});};var pruneExtinfFromVmapBlock=function pruneExtinfFromVmapBlock(lines,i){var array=lines.slice();var index=i;if(array[index].includes(AD_MARKER.EXTINF)){array[index]=undefined;index+=1;if(array[index].includes(AD_MARKER.DISCONTINUITY)){array[index]=undefined;index+=1;var prunedExtinf=pruneExtinfFromVmapBlock(array,index);array=prunedExtinf.array;index=prunedExtinf.index;}}return {array:array,index:index};};var pruneVmapBlock=function pruneVmapBlock(lines){var array=lines.slice();for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{m3uPrune.apply(this,updatedArgs);}catch(e){console.log(e);}}function metrikaYandexTag(source,args){function metrikaYandexTag(source){var asyncCallbackFromOptions=function asyncCallbackFromOptions(id,param){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var callback=options.callback;var ctx=options.ctx;if(typeof callback==="function"){callback=ctx!==undefined?callback.bind(ctx):callback;setTimeout(function(){return callback();});}};var addFileExtension=noopFunc;var extLink=asyncCallbackFromOptions;var file=asyncCallbackFromOptions;var getClientID=function getClientID(id,cb){if(!cb){return;}setTimeout(cb(null));};var hitFunc=asyncCallbackFromOptions;var notBounce=asyncCallbackFromOptions;var params=noopFunc;var reachGoal=function reachGoal(id,target,params,callback,ctx){asyncCallbackFromOptions(null,null,{callback:callback,ctx:ctx});};var setUserID=noopFunc;var userParams=noopFunc;var destruct=noopFunc;var api={addFileExtension:addFileExtension,extLink:extLink,file:file,getClientID:getClientID,hit:hitFunc,notBounce:notBounce,params:params,reachGoal:reachGoal,setUserID:setUserID,userParams:userParams,destruct:destruct};function ym(id,funcName){for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return api[funcName]&&api[funcName](id,...args);}function init(id){window["yaCounter".concat(id)]=api;document.dispatchEvent(new Event("yacounter".concat(id,"inited")));}if(typeof window.ym==="undefined"){window.ym=ym;ym.a=[];}else if(window.ym&&window.ym.a){ym.a=window.ym.a;window.ym=ym;window.ym.a.forEach(function(params){var id=params[0];init(id);});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{metrikaYandexTag.apply(this,updatedArgs);}catch(e){console.log(e);}}function metrikaYandexWatch(source,args){function metrikaYandexWatch(source){var cbName="yandex_metrika_callbacks";var asyncCallbackFromOptions=function asyncCallbackFromOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var callback=options.callback;var ctx=options.ctx;if(typeof callback==="function"){callback=ctx!==undefined?callback.bind(ctx):callback;setTimeout(function(){return callback();});}};function Metrika(){}Metrika.counters=noopArray;Metrika.prototype.addFileExtension=noopFunc;Metrika.prototype.getClientID=noopFunc;Metrika.prototype.setUserID=noopFunc;Metrika.prototype.userParams=noopFunc;Metrika.prototype.params=noopFunc;Metrika.prototype.counters=noopArray;Metrika.prototype.extLink=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.file=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.hit=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.reachGoal=function(target,params,cb,ctx){asyncCallbackFromOptions({callback:cb,ctx:ctx});};Metrika.prototype.notBounce=asyncCallbackFromOptions;if(window.Ya){window.Ya.Metrika=Metrika;}else {window.Ya={Metrika:Metrika};}if(window[cbName]&&Array.isArray(window[cbName])){window[cbName].forEach(function(func){if(typeof func==="function"){func();}});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopArray(){return [];}var updatedArgs=args?[].concat(source).concat(args):[source];try{metrikaYandexWatch.apply(this,updatedArgs);}catch(e){console.log(e);}}function noProtectedAudience(source,args){function noProtectedAudience(source){if(Document instanceof Object===false){return;}var protectedAudienceMethods={joinAdInterestGroup:noopResolveVoid,runAdAuction:noopResolveNull,leaveAdInterestGroup:noopResolveVoid,clearOriginJoinedAdInterestGroups:noopResolveVoid,createAuctionNonce:noopStr,updateAdInterestGroups:noopFunc};for(var _i=0,_Object$keys=Object.keys(protectedAudienceMethods);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];var methodName=key;var prototype=Navigator.prototype;if(!Object.prototype.hasOwnProperty.call(prototype,methodName)||prototype[methodName]instanceof Function===false){continue;}prototype[methodName]=protectedAudienceMethods[methodName];}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}function noopFunc(){}function noopResolveVoid(){return Promise.resolve(undefined);}function noopResolveNull(){return Promise.resolve(null);}var updatedArgs=args?[].concat(source).concat(args):[source];try{noProtectedAudience.apply(this,updatedArgs);}catch(e){console.log(e);}}function noTopics(source,args){function noTopics(source){var TOPICS_PROPERTY_NAME="browsingTopics";if(Document instanceof Object===false){return;}if(!Object.prototype.hasOwnProperty.call(Document.prototype,TOPICS_PROPERTY_NAME)||Document.prototype[TOPICS_PROPERTY_NAME]instanceof Function===false){return;}Document.prototype[TOPICS_PROPERTY_NAME]=function(){return noopPromiseResolve("[]");};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}var updatedArgs=args?[].concat(source).concat(args):[source];try{noTopics.apply(this,updatedArgs);}catch(e){console.log(e);}}function noeval(source,args){function noeval(source){window.eval=function evalWrapper(s){hit(source);logMessage(source,"AdGuard has prevented eval:\n".concat(s),true);}.bind();}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{noeval.apply(this,updatedArgs);}catch(e){console.log(e);}}function nowebrtc(source,args){function nowebrtc(source){var propertyName="";if(window.RTCPeerConnection){propertyName="RTCPeerConnection";}else if(window.webkitRTCPeerConnection){propertyName="webkitRTCPeerConnection";}if(propertyName===""){return;}var rtcReplacement=function rtcReplacement(config){var message="Document tried to create an RTCPeerConnection: ".concat(convertRtcConfigToString(config));logMessage(source,message);hit(source);};rtcReplacement.prototype={close:noopFunc,createDataChannel:noopFunc,createOffer:noopFunc,setRemoteDescription:noopFunc};var rtc=window[propertyName];window[propertyName]=rtcReplacement;if(rtc.prototype){rtc.prototype.createDataChannel=function(a,b){return {close:noopFunc,send:noopFunc};}.bind(null);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function convertRtcConfigToString(config){var UNDEF_STR="undefined";var str=UNDEF_STR;if(config===null){str="null";}else if(config instanceof Object){var SERVERS_PROP_NAME="iceServers";var URLS_PROP_NAME="urls";if(Object.prototype.hasOwnProperty.call(config,SERVERS_PROP_NAME)&&config[SERVERS_PROP_NAME]&&Object.prototype.hasOwnProperty.call(config[SERVERS_PROP_NAME][0],URLS_PROP_NAME)&&!!config[SERVERS_PROP_NAME][0][URLS_PROP_NAME]){str=config[SERVERS_PROP_NAME][0][URLS_PROP_NAME].toString();}}return str;}var updatedArgs=args?[].concat(source).concat(args):[source];try{nowebrtc.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventAddEventListener(source,args){function preventAddEventListener(source,typeSearch,listenerSearch){var typeSearchRegexp=toRegExp(typeSearch);var listenerSearchRegexp=toRegExp(listenerSearch);var nativeAddEventListener=window.EventTarget.prototype.addEventListener;function addEventListenerWrapper(type,listener){var _this$constructor;var shouldPrevent=false;if(validateType(type)&&validateListener(listener)){shouldPrevent=typeSearchRegexp.test(type.toString())&&listenerSearchRegexp.test(listenerToString(listener));}if(shouldPrevent){hit(source);return undefined;}var context=this;if(this&&((_this$constructor=this.constructor)===null||_this$constructor===void 0?void 0:_this$constructor.name)==="Window"&&this!==window){context=window;}for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeAddEventListener.apply(context,[type,listener,...args]);}var descriptor={configurable:true,set:function set(){},get:function get(){return addEventListenerWrapper;}};Object.defineProperty(window.EventTarget.prototype,"addEventListener",descriptor);Object.defineProperty(window,"addEventListener",descriptor);Object.defineProperty(document,"addEventListener",descriptor);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function validateType(type){return typeof type!=="undefined";}function validateListener(listener){return typeof listener!=="undefined"&&(typeof listener==="function"||typeof listener==="object"&&listener!==null&&"handleEvent"in listener&&typeof listener.handleEvent==="function");}function listenerToString(listener){return typeof listener==="function"?listener.toString():listener.handleEvent.toString();}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventAddEventListener.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventAdfly(source,args){function preventAdfly(source){var isDigit=function isDigit(data){return /^\d$/.test(data);};var handler=function handler(encodedURL){var evenChars="";var oddChars="";for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventAdfly.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventBab(source,args){function preventBab(source){var nativeSetTimeout=window.setTimeout;var babRegex=/\.bab_elementid.$/;var timeoutWrapper=function timeoutWrapper(callback){if(typeof callback!=="string"||!babRegex.test(callback)){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeSetTimeout.apply(window,[callback,...args]);}hit(source);};window.setTimeout=timeoutWrapper;var signatures=[["blockadblock"],["babasbm"],[/getItem\('babn'\)/],["getElementById","String.fromCharCode","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789","charAt","DOMContentLoaded","AdBlock","addEventListener","doScroll","fromCharCode","<<2|r>>4","sessionStorage","clientWidth","localStorage","Math","random"]];var check=function check(str){if(typeof str!=="string"){return false;}for(var i=0;i=.8){return true;}}return false;};var nativeEval=window.eval;var evalWrapper=function evalWrapper(str){if(!check(str)){return nativeEval(str);}hit(source);var bodyEl=document.body;if(bodyEl){bodyEl.style.removeProperty("visibility");}var el=document.getElementById("babasbmsgx");if(el){el.parentNode.removeChild(el);}};window.eval=evalWrapper.bind(window);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventBab.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventElementSrcLoading(source,args){function preventElementSrcLoading(source,tagName,match){if(typeof Proxy==="undefined"||typeof Reflect==="undefined"){return;}var srcMockData={script:"data:text/javascript;base64,KCk9Pnt9",img:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",iframe:"data:text/html;base64, PGRpdj48L2Rpdj4=",link:"data:text/plain;base64,"};var instance;if(tagName==="script"){instance=HTMLScriptElement;}else if(tagName==="img"){instance=HTMLImageElement;}else if(tagName==="iframe"){instance=HTMLIFrameElement;}else if(tagName==="link"){instance=HTMLLinkElement;}else {return;}var hasTrustedTypes=window.trustedTypes&&typeof window.trustedTypes.createPolicy==="function";var policy;if(hasTrustedTypes){policy=window.trustedTypes.createPolicy("AGPolicy",{createScriptURL:function createScriptURL(arg){return arg;}});}var SOURCE_PROPERTY_NAME=tagName==="link"?"href":"src";var ONERROR_PROPERTY_NAME="onerror";var searchRegexp=toRegExp(match);var setMatchedAttribute=function setMatchedAttribute(elem){return elem.setAttribute(source.name,"matched");};var setAttributeWrapper=function setAttributeWrapper(target,thisArg,args){if(!args[0]||!args[1]){return Reflect.apply(target,thisArg,args);}var nodeName=thisArg.nodeName.toLowerCase();var attrName=args[0].toLowerCase();var attrValue=args[1];var isMatched=attrName===SOURCE_PROPERTY_NAME&&tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(attrValue);if(!isMatched){return Reflect.apply(target,thisArg,args);}hit(source);setMatchedAttribute(thisArg);return Reflect.apply(target,thisArg,[attrName,srcMockData[nodeName]]);};var setAttributeHandler={apply:setAttributeWrapper};instance.prototype.setAttribute=new Proxy(Element.prototype.setAttribute,setAttributeHandler);var origSrcDescriptor=safeGetDescriptor(instance.prototype,SOURCE_PROPERTY_NAME);if(!origSrcDescriptor){return;}Object.defineProperty(instance.prototype,SOURCE_PROPERTY_NAME,{enumerable:true,configurable:true,get(){return origSrcDescriptor.get.call(this);},set(urlValue){var nodeName=this.nodeName.toLowerCase();var isMatched=tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(urlValue);if(!isMatched){origSrcDescriptor.set.call(this,urlValue);return true;}if(policy&&urlValue instanceof TrustedScriptURL){var trustedSrc=policy.createScriptURL(urlValue);origSrcDescriptor.set.call(this,trustedSrc);hit(source);return;}setMatchedAttribute(this);origSrcDescriptor.set.call(this,srcMockData[nodeName]);hit(source);}});var origOnerrorDescriptor=safeGetDescriptor(HTMLElement.prototype,ONERROR_PROPERTY_NAME);if(!origOnerrorDescriptor){return;}Object.defineProperty(HTMLElement.prototype,ONERROR_PROPERTY_NAME,{enumerable:true,configurable:true,get(){return origOnerrorDescriptor.get.call(this);},set(cb){var isMatched=this.getAttribute(source.name)==="matched";if(!isMatched){origOnerrorDescriptor.set.call(this,cb);return true;}origOnerrorDescriptor.set.call(this,noopFunc);return true;}});var addEventListenerWrapper=function addEventListenerWrapper(target,thisArg,args){if(!args[0]||!args[1]||!thisArg){return Reflect.apply(target,thisArg,args);}var eventName=args[0];var isMatched=typeof thisArg.getAttribute==="function"&&thisArg.getAttribute(source.name)==="matched"&&eventName==="error";if(isMatched){return Reflect.apply(target,thisArg,[eventName,noopFunc]);}return Reflect.apply(target,thisArg,args);};var addEventListenerHandler={apply:addEventListenerWrapper};EventTarget.prototype.addEventListener=new Proxy(EventTarget.prototype.addEventListener,addEventListenerHandler);var preventInlineOnerror=function preventInlineOnerror(tagName,src){window.addEventListener("error",function(event){if(!event.target||!event.target.nodeName||event.target.nodeName.toLowerCase()!==tagName||!event.target.src||!src.test(event.target.src)){return;}hit(source);if(typeof event.target.onload==="function"){event.target.onerror=event.target.onload;return;}event.target.onerror=noopFunc;},true);};preventInlineOnerror(tagName,searchRegexp);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function safeGetDescriptor(obj,prop){var descriptor=Object.getOwnPropertyDescriptor(obj,prop);if(descriptor&&descriptor.configurable){return descriptor;}return null;}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventElementSrcLoading.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventEvalIf(source,args){function preventEvalIf(source,search){var searchRegexp=toRegExp(search);var nativeEval=window.eval;window.eval=function(payload){if(!searchRegexp.test(payload.toString())){return nativeEval.call(window,payload);}hit(source);return undefined;}.bind(window);}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventEvalIf.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventFab(source,args){function preventFab(source){hit(source);var Fab=function Fab(){};Fab.prototype.check=noopFunc;Fab.prototype.clearEvent=noopFunc;Fab.prototype.emitEvent=noopFunc;Fab.prototype.on=function(a,b){if(!a){b();}return this;};Fab.prototype.onDetected=noopThis;Fab.prototype.onNotDetected=function(a){a();return this;};Fab.prototype.setOption=noopFunc;Fab.prototype.options={set:noopFunc,get:noopFunc};var fab=new Fab();var getSetFab={get(){return Fab;},set(){}};var getsetfab={get(){return fab;},set(){}};if(Object.prototype.hasOwnProperty.call(window,"FuckAdBlock")){window.FuckAdBlock=Fab;}else {Object.defineProperty(window,"FuckAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"BlockAdBlock")){window.BlockAdBlock=Fab;}else {Object.defineProperty(window,"BlockAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"SniffAdBlock")){window.SniffAdBlock=Fab;}else {Object.defineProperty(window,"SniffAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"fuckAdBlock")){window.fuckAdBlock=fab;}else {Object.defineProperty(window,"fuckAdBlock",getsetfab);}if(Object.prototype.hasOwnProperty.call(window,"blockAdBlock")){window.blockAdBlock=fab;}else {Object.defineProperty(window,"blockAdBlock",getsetfab);}if(Object.prototype.hasOwnProperty.call(window,"sniffAdBlock")){window.sniffAdBlock=fab;}else {Object.defineProperty(window,"sniffAdBlock",getsetfab);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopThis(){return this;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventFab.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventFetch(source,args){function preventFetch(source,propsToMatch){var responseBody=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"emptyObj";var responseType=arguments.length>3?arguments[3]:undefined;if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var nativeRequestClone=Request.prototype.clone;var strResponseBody;if(responseBody===""||responseBody==="emptyObj"){strResponseBody="{}";}else if(responseBody==="emptyArr"){strResponseBody="[]";}else if(responseBody==="emptyStr"){strResponseBody="";}else {logMessage(source,"Invalid responseBody parameter: '".concat(responseBody,"'"));return;}var isResponseTypeSpecified=typeof responseType!=="undefined";var isResponseTypeSupported=function isResponseTypeSupported(responseType){var SUPPORTED_TYPES=["basic","cors","opaque"];return SUPPORTED_TYPES.includes(responseType);};if(isResponseTypeSpecified&&!isResponseTypeSupported(responseType)){logMessage(source,"Invalid responseType parameter: '".concat(responseType,"'"));return;}var getResponseType=function getResponseType(request){try{var mode=request.mode;if(mode===undefined||mode==="cors"||mode==="no-cors"){var fetchURL=new URL(request.url);if(fetchURL.origin===document.location.origin){return "basic";}return mode==="no-cors"?"opaque":"cors";}}catch(error){logMessage(source,"Could not determine response type: ".concat(error));}return undefined;};var handlerWrapper=async function handlerWrapper(target,thisArg,args){var shouldPrevent=false;var fetchData=getFetchData(args,nativeRequestClone);if(typeof propsToMatch==="undefined"){logMessage(source,"fetch( ".concat(objectToString(fetchData)," )"),true);hit(source);return Reflect.apply(target,thisArg,args);}shouldPrevent=matchRequestProps(source,propsToMatch,fetchData);if(shouldPrevent){hit(source);var finalResponseType;try{finalResponseType=responseType||getResponseType(fetchData);var origResponse=await Reflect.apply(target,thisArg,args);if(!origResponse.ok){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType);}return modifyResponse(origResponse,{body:strResponseBody,type:finalResponseType});}catch(ex){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType);}}return Reflect.apply(target,thisArg,args);};var fetchHandler={apply:handlerWrapper};fetch=new Proxy(fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}function modifyResponse(origResponse){var _origResponse$headers;var replacement=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{body:"{}"};var headers={};origResponse===null||origResponse===void 0?void 0:(_origResponse$headers=origResponse.headers)===null||_origResponse$headers===void 0?void 0:_origResponse$headers.forEach(function(value,key){headers[key]=value;});var modifiedResponse=new Response(replacement.body,{status:origResponse.status,statusText:origResponse.statusText,headers:headers});Object.defineProperties(modifiedResponse,{url:{value:origResponse.url},type:{value:replacement.type||origResponse.type}});return modifiedResponse;}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventFetch.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventPopadsNet(source,args){function preventPopadsNet(source){var rid=randomId();var throwError=function throwError(){throw new ReferenceError(rid);};delete window.PopAds;delete window.popns;Object.defineProperties(window,{PopAds:{set:throwError},popns:{set:throwError}});window.onerror=createOnErrorHandler(rid).bind();hit(source);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function randomId(){return Math.random().toString(36).slice(2,9);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventPopadsNet.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventRefresh(source,args){function preventRefresh(source,delaySec){var getMetaElements=function getMetaElements(){var metaNodes=[];try{metaNodes=document.querySelectorAll('meta[http-equiv="refresh" i][content]');}catch(e){try{metaNodes=document.querySelectorAll('meta[http-equiv="refresh"][content]');}catch(e){logMessage(source,e);}}return Array.from(metaNodes);};var getMetaContentDelay=function getMetaContentDelay(metaElements){var delays=metaElements.map(function(meta){var contentString=meta.getAttribute("content");if(contentString.length===0){return null;}var contentDelay;var limiterIndex=contentString.indexOf(";");if(limiterIndex!==-1){var delaySubstring=contentString.substring(0,limiterIndex);contentDelay=getNumberFromString(delaySubstring);}else {contentDelay=getNumberFromString(contentString);}return contentDelay;}).filter(function(delay){return delay!==null;});if(!delays.length){return null;}var minDelay=delays.reduce(function(a,b){return Math.min(a,b);});return minDelay;};var stop=function stop(){var metaElements=getMetaElements();if(metaElements.length===0){return;}var secondsToRun=getNumberFromString(delaySec);if(secondsToRun===null){secondsToRun=getMetaContentDelay(metaElements);}if(secondsToRun===null){return;}var delayMs=secondsToRun*1e3;setTimeout(function(){window.stop();hit(source);},delayMs);};if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",stop,{once:true});}else {stop();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventRefresh.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventRequestAnimationFrame(source,args){function preventRequestAnimationFrame(source,match){var nativeRequestAnimationFrame=window.requestAnimationFrame;var shouldLog=typeof match==="undefined";var _parseMatchArg=parseMatchArg(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var rafWrapper=function rafWrapper(callback){var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"requestAnimationFrame(".concat(String(callback),")"),true);}else if(isValidCallback(callback)&&isValidStrPattern(match)){shouldPrevent=matchRegexp.test(callback.toString())!==isInvertedMatch;}if(shouldPrevent){hit(source);return nativeRequestAnimationFrame(noopFunc);}for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeRequestAnimationFrame.apply(window,[callback,...args]);};window.requestAnimationFrame=rafWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventRequestAnimationFrame.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventSetInterval(source,args){function preventSetInterval(source,matchCallback,matchDelay){var shouldLog=typeof matchCallback==="undefined"&&typeof matchDelay==="undefined";var handlerWrapper=function handlerWrapper(target,thisArg,args){var callback=args[0];var delay=args[1];var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"setInterval(".concat(String(callback),", ").concat(delay,")"),true);}else {shouldPrevent=isPreventionNeeded({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay});}if(shouldPrevent){hit(source);args[0]=noopFunc;}return target.apply(thisArg,args);};var setIntervalHandler={apply:handlerWrapper};window.setInterval=new Proxy(window.setInterval,setIntervalHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isPreventionNeeded(_ref){var callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!isValidCallback(callback)){return false;}if(!isValidMatchStr(matchCallback)||matchDelay&&!isValidMatchNumber(matchDelay)){return false;}var _parseMatchArg=parseMatchArg(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var _parseDelayArg=parseDelayArg(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch;var parsedDelay=parseRawDelay(delay);var shouldPrevent=false;var callbackStr=String(callback);if(delayMatch===null){shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch;}else if(!matchCallback){shouldPrevent=parsedDelay===delayMatch!==isInvertedDelayMatch;}else {shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch;}return shouldPrevent;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function parseDelayArg(delay){var INVERT_MARKER="!";var isInvertedDelayMatch=delay===null||delay===void 0?void 0:delay.startsWith(INVERT_MARKER);var delayValue=isInvertedDelayMatch?delay.slice(1):delay;var parsedDelay=parseInt(delayValue,10);var delayMatch=nativeIsNaN(parsedDelay)?null:parsedDelay;return {isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:delayMatch};}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function isValidMatchNumber(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}var num=parseFloat(str);return !nativeIsNaN(num)&&nativeIsFinite(num);}function parseRawDelay(delay){var parsedDelay=Math.floor(parseInt(delay,10));return typeof parsedDelay==="number"&&!nativeIsNaN(parsedDelay)?parsedDelay:delay;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventSetInterval.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventSetTimeout(source,args){function preventSetTimeout(source,matchCallback,matchDelay){var shouldLog=typeof matchCallback==="undefined"&&typeof matchDelay==="undefined";var handlerWrapper=function handlerWrapper(target,thisArg,args){var callback=args[0];var delay=args[1];var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"setTimeout(".concat(String(callback),", ").concat(delay,")"),true);}else {shouldPrevent=isPreventionNeeded({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay});}if(shouldPrevent){hit(source);args[0]=noopFunc;}return target.apply(thisArg,args);};var setTimeoutHandler={apply:handlerWrapper};window.setTimeout=new Proxy(window.setTimeout,setTimeoutHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isPreventionNeeded(_ref){var callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!isValidCallback(callback)){return false;}if(!isValidMatchStr(matchCallback)||matchDelay&&!isValidMatchNumber(matchDelay)){return false;}var _parseMatchArg=parseMatchArg(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var _parseDelayArg=parseDelayArg(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch;var parsedDelay=parseRawDelay(delay);var shouldPrevent=false;var callbackStr=String(callback);if(delayMatch===null){shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch;}else if(!matchCallback){shouldPrevent=parsedDelay===delayMatch!==isInvertedDelayMatch;}else {shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch;}return shouldPrevent;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function parseDelayArg(delay){var INVERT_MARKER="!";var isInvertedDelayMatch=delay===null||delay===void 0?void 0:delay.startsWith(INVERT_MARKER);var delayValue=isInvertedDelayMatch?delay.slice(1):delay;var parsedDelay=parseInt(delayValue,10);var delayMatch=nativeIsNaN(parsedDelay)?null:parsedDelay;return {isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:delayMatch};}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function isValidMatchNumber(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}var num=parseFloat(str);return !nativeIsNaN(num)&&nativeIsFinite(num);}function parseRawDelay(delay){var parsedDelay=Math.floor(parseInt(delay,10));return typeof parsedDelay==="number"&&!nativeIsNaN(parsedDelay)?parsedDelay:delay;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventSetTimeout.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventWindowOpen(source,args){function preventWindowOpen(source){var match=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"*";var delay=arguments.length>2?arguments[2]:undefined;var replacement=arguments.length>3?arguments[3]:undefined;var nativeOpen=window.open;var isNewSyntax=match!=="0"&&match!=="1";var oldOpenWrapper=function oldOpenWrapper(str){match=Number(match)>0;for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}if(!isValidStrPattern(delay)){logMessage(source,"Invalid parameter: ".concat(delay));return nativeOpen.apply(window,[str,...args]);}var searchRegexp=toRegExp(delay);if(match!==searchRegexp.test(str)){return nativeOpen.apply(window,[str,...args]);}hit(source);return handleOldReplacement(replacement);};var newOpenWrapper=function newOpenWrapper(url){var shouldLog=replacement&&replacement.includes("log");for(var _len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++){args[_key2-1]=arguments[_key2];}if(shouldLog){var argsStr=args&&args.length>0?", ".concat(args.join(", ")):"";var message="".concat(url).concat(argsStr);logMessage(source,message,true);hit(source);}var shouldPrevent=false;if(match==="*"){shouldPrevent=true;}else if(isValidMatchStr(match)){var _parseMatchArg=parseMatchArg(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;shouldPrevent=matchRegexp.test(url)!==isInvertedMatch;}else {logMessage(source,"Invalid parameter: ".concat(match));shouldPrevent=false;}if(shouldPrevent){var parsedDelay=parseInt(delay,10);var result;if(nativeIsNaN(parsedDelay)){result=noopNull();}else {var decoyArgs={replacement:replacement,url:url,delay:parsedDelay};var decoy=createDecoy(decoyArgs);var popup=decoy.contentWindow;if(typeof popup==="object"&&popup!==null){Object.defineProperty(popup,"closed",{value:false});Object.defineProperty(popup,"opener",{value:window});Object.defineProperty(popup,"frameElement",{value:null});}else {var nativeGetter=decoy.contentWindow&&decoy.contentWindow.get;Object.defineProperty(decoy,"contentWindow",{get:getPreventGetter(nativeGetter)});popup=decoy.contentWindow;}result=popup;}hit(source);return result;}return nativeOpen.apply(window,[url,...args]);};window.open=isNewSyntax?newOpenWrapper:oldOpenWrapper;window.open.toString=nativeOpen.toString.bind(nativeOpen);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function handleOldReplacement(replacement){var result;if(!replacement){result=noopFunc;}else if(replacement==="trueFunc"){result=trueFunc;}else if(replacement.includes("=")){var isProp=replacement.startsWith("{")&&replacement.endsWith("}");if(isProp){var propertyPart=replacement.slice(1,-1);var propertyName=substringBefore(propertyPart,"=");var propertyValue=substringAfter(propertyPart,"=");if(propertyValue==="noopFunc"){result={};result[propertyName]=noopFunc;}}}return result;}function createDecoy(args){var UrlPropNameOf=function(UrlPropNameOf){UrlPropNameOf["Object"]="data";UrlPropNameOf["Iframe"]="src";return UrlPropNameOf;}({});var replacement=args.replacement,url=args.url,delay=args.delay;var tag;if(replacement==="obj"){tag="object";}else {tag="iframe";}var decoy=document.createElement(tag);if(decoy instanceof HTMLObjectElement){decoy[UrlPropNameOf.Object]=url;}else if(decoy instanceof HTMLIFrameElement){decoy[UrlPropNameOf.Iframe]=url;}decoy.style.setProperty("height","1px","important");decoy.style.setProperty("position","fixed","important");decoy.style.setProperty("top","-1px","important");decoy.style.setProperty("width","1px","important");document.body.appendChild(decoy);setTimeout(function(){return decoy.remove();},delay*1e3);return decoy;}function getPreventGetter(nativeGetter){var preventGetter=function preventGetter(target,prop){if(prop&&prop==="closed"){return false;}if(typeof nativeGetter==="function"){return noopFunc;}return prop&&target[prop];};return preventGetter;}function noopNull(){return null;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function noopFunc(){}function trueFunc(){return true;}function substringBefore(str,separator){if(!str||!separator){return str;}var index=str.indexOf(separator);return index<0?str:str.substring(0,index);}function substringAfter(str,separator){if(!str){return str;}var index=str.indexOf(separator);return index<0?"":str.substring(index+separator.length);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventWindowOpen.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventXHR(source,args){function preventXHR(source,propsToMatch,customResponseText){if(typeof Proxy==="undefined"){return;}var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var nativeGetResponseHeader=window.XMLHttpRequest.prototype.getResponseHeader;var nativeGetAllResponseHeaders=window.XMLHttpRequest.prototype.getAllResponseHeaders;var xhrData;var modifiedResponse="";var modifiedResponseText="";var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(typeof propsToMatch==="undefined"){logMessage(source,"xhr( ".concat(objectToString(xhrData)," )"),true);hit(source);}else if(matchRequestProps(source,propsToMatch,xhrData)){thisArg.shouldBePrevented=true;thisArg.xhrData=xhrData;}if(thisArg.shouldBePrevented){thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return Reflect.apply(target,thisArg,args);}if(thisArg.responseType==="blob"){modifiedResponse=new Blob();}if(thisArg.responseType==="arraybuffer"){modifiedResponse=new ArrayBuffer();}if(customResponseText){var randomText=generateRandomResponse(customResponseText);if(randomText){modifiedResponseText=randomText;}else {logMessage(source,"Invalid randomize parameter: '".concat(customResponseText,"'"));}}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,statusText=forgedRequest.statusText;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},statusText:{value:statusText,writable:false},responseURL:{value:responseURL||thisArg.xhrData.url,writable:false},responseXML:{value:responseXML,writable:false},status:{value:200,writable:false},response:{value:modifiedResponse,writable:false},responseText:{value:modifiedResponseText,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[thisArg.xhrData.method,thisArg.xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var getHeaderWrapper=function getHeaderWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return nativeGetResponseHeader.apply(thisArg,args);}if(!thisArg.collectedHeaders.length){return null;}var searchHeaderName=args[0].toLowerCase();var matchedHeader=thisArg.collectedHeaders.find(function(header){var headerName=header[0].toLowerCase();return headerName===searchHeaderName;});return matchedHeader?matchedHeader[1]:null;};var getAllHeadersWrapper=function getAllHeadersWrapper(target,thisArg){if(!thisArg.shouldBePrevented){return nativeGetAllResponseHeaders.call(thisArg);}if(!thisArg.collectedHeaders.length){return "";}var allHeadersStr=thisArg.collectedHeaders.map(function(header){var headerName=header[0];var headerValue=header[1];return "".concat(headerName.toLowerCase(),": ").concat(headerValue);}).join("\r\n");return allHeadersStr;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};var getHeaderHandler={apply:getHeaderWrapper};var getAllHeadersHandler={apply:getAllHeadersWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);XMLHttpRequest.prototype.getResponseHeader=new Proxy(XMLHttpRequest.prototype.getResponseHeader,getHeaderHandler);XMLHttpRequest.prototype.getAllResponseHeaders=new Proxy(XMLHttpRequest.prototype.getAllResponseHeaders,getAllHeadersHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function generateRandomResponse(customResponseText){var customResponse=customResponseText;if(customResponse==="true"){customResponse=Math.random().toString(36).slice(-10);return customResponse;}customResponse=customResponse.replace("length:","");var rangeRegex=/^\d+-\d+$/;if(!rangeRegex.test(customResponse)){return null;}var rangeMin=getNumberFromString(customResponse.split("-")[0]);var rangeMax=getNumberFromString(customResponse.split("-")[1]);if(!nativeIsFinite(rangeMin)||!nativeIsFinite(rangeMax)){return null;}if(rangeMin>rangeMax){var temp=rangeMin;rangeMin=rangeMax;rangeMax=temp;}var LENGTH_RANGE_LIMIT=500*1e3;if(rangeMax>LENGTH_RANGE_LIMIT){return null;}var length=getRandomIntInclusive(rangeMin,rangeMax);customResponse=getRandomStrByLength(length);return customResponse;}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function getRandomIntInclusive(min,max){min=Math.ceil(min);max=Math.floor(max);return Math.floor(Math.random()*(max-min+1)+min);}function getRandomStrByLength(length){var result="";var characters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+=~";var charactersLength=characters.length;for(var i=0;i3&&arguments[3]!==undefined?arguments[3]:"asap stay";if(!attrs){return;}attrs=attrs.split(/\s*\|\s*/);if(!selector){selector="[".concat(attrs.join("],["),"]");}var rmattr=function rmattr(){var nodes=[];try{nodes=[].slice.call(document.querySelectorAll(selector));}catch(e){logMessage(source,"Invalid selector arg: '".concat(selector,"'"));}var removed=false;nodes.forEach(function(node){attrs.forEach(function(attr){node.removeAttribute(attr);removed=true;});});if(removed){hit(source);}};var flags=parseFlags(applying);var run=function run(){rmattr();if(!flags.hasFlag(flags.STAY)){return;}observeDOMChanges(rmattr,true);};if(flags.hasFlag(flags.ASAP)){if(document.readyState==="loading"){window.addEventListener("DOMContentLoaded",rmattr,{once:true});}else {rmattr();}}if(document.readyState!=="complete"&&flags.hasFlag(flags.COMPLETE)){window.addEventListener("load",run,{once:true});}else if(flags.hasFlag(flags.STAY)){if(!applying.includes(" ")){rmattr();}observeDOMChanges(rmattr,true);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function parseFlags(flags){var FLAGS_DIVIDER=" ";var ASAP_FLAG="asap";var COMPLETE_FLAG="complete";var STAY_FLAG="stay";var VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG];var passedFlags=flags.trim().split(FLAGS_DIVIDER).filter(function(f){return VALID_FLAGS.includes(f);});return {ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag(flag){return passedFlags.includes(flag);}};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeClass(source,args){function removeClass(source,classNames,selector){var applying=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"asap stay";if(!classNames){return;}classNames=classNames.split(/\s*\|\s*/);var selectors=[];if(!selector){selectors=classNames.map(function(className){return ".".concat(className);});}var removeClassHandler=function removeClassHandler(){var nodes=new Set();if(selector){var foundNodes=[];try{foundNodes=[].slice.call(document.querySelectorAll(selector));}catch(e){logMessage(source,"Invalid selector arg: '".concat(selector,"'"));}foundNodes.forEach(function(n){return nodes.add(n);});}else if(selectors.length>0){selectors.forEach(function(s){var elements=document.querySelectorAll(s);for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function parseFlags(flags){var FLAGS_DIVIDER=" ";var ASAP_FLAG="asap";var COMPLETE_FLAG="complete";var STAY_FLAG="stay";var VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG];var passedFlags=flags.trim().split(FLAGS_DIVIDER).filter(function(f){return VALID_FLAGS.includes(f);});return {ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag(flag){return passedFlags.includes(flag);}};}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeClass.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeCookie(source,args){function removeCookie(source,match){var matchRegexp=toRegExp(match);var removeCookieFromHost=function removeCookieFromHost(cookieName,hostName){var cookieSpec="".concat(cookieName,"=");var domain1="; domain=".concat(hostName);var domain2="; domain=.".concat(hostName);var path="; path=/";var expiration="; expires=Thu, 01 Jan 1970 00:00:00 GMT";document.cookie=cookieSpec+expiration;document.cookie=cookieSpec+domain1+expiration;document.cookie=cookieSpec+domain2+expiration;document.cookie=cookieSpec+path+expiration;document.cookie=cookieSpec+domain1+path+expiration;document.cookie=cookieSpec+domain2+path+expiration;hit(source);};var rmCookie=function rmCookie(){document.cookie.split(";").forEach(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return;}var cookieName=cookieStr.slice(0,pos).trim();if(!matchRegexp.test(cookieName)){return;}var hostParts=document.location.hostname.split(".");for(var i=0;i<=hostParts.length-1;i+=1){var hostName=hostParts.slice(i).join(".");if(hostName){removeCookieFromHost(cookieName,hostName);}}});};rmCookie();window.addEventListener("beforeunload",rmCookie);}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeInShadowDom(source,args){function removeInShadowDom(source,selector,baseSelector){if(!Element.prototype.attachShadow){return;}var removeElement=function removeElement(targetElement){targetElement.remove();};var removeHandler=function removeHandler(){var hostElements=!baseSelector?findHostElements(document.documentElement):document.querySelectorAll(baseSelector);var _loop=function _loop(){var isRemoved=false;var _pierceShadowDom=pierceShadowDom(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach(function(targetEl){removeElement(targetEl);isRemoved=true;});if(isRemoved){hit(source);}hostElements=innerHosts;};while(hostElements.length!==0){_loop();}};removeHandler();observeDOMChanges(removeHandler,true);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function findHostElements(rootElement){var hosts=[];if(rootElement){var domElems=rootElement.querySelectorAll("*");domElems.forEach(function(el){if(el.shadowRoot){hosts.push(el);}});}return hosts;}function pierceShadowDom(selector,hostElements){var targets=[];var innerHostsAcc=[];hostElements.forEach(function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot;var shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren));innerHostsAcc.push(findHostElements(shadowRootElem));});var innerHosts=flatten(innerHostsAcc);return {targets:targets,innerHosts:innerHosts};}function flatten(input){var stack=[];input.forEach(function(el){return stack.push(el);});var res=[];while(stack.length){var next=stack.pop();if(Array.isArray(next)){next.forEach(function(el){return stack.push(el);});}else {res.push(next);}}return res.reverse();}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeNodeText(source,args){function removeNodeText(source,nodeName,textMatch){var _parseNodeTextParams=parseNodeTextParams(nodeName,textMatch),selector=_parseNodeTextParams.selector,nodeNameMatch=_parseNodeTextParams.nodeNameMatch,textContentMatch=_parseNodeTextParams.textContentMatch;var handleNodes=function handleNodes(nodes){return nodes.forEach(function(node){var shouldReplace=isTargetNode(node,nodeNameMatch,textContentMatch);if(shouldReplace){var ALL_TEXT_PATTERN=/^[\s\S]*$/;var REPLACEMENT="";replaceNodeText(source,node,ALL_TEXT_PATTERN,REPLACEMENT);}});};if(document.documentElement){handleExistingNodes(selector,handleNodes);}observeDocumentWithTimeout(function(mutations){return handleMutations(mutations,handleNodes);});}function observeDocumentWithTimeout(callback){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function handleExistingNodes(selector,handler){var nodeList=document.querySelectorAll(selector);var nodes=nodeListToArray(nodeList);handler(nodes);}function handleMutations(mutations,handler){var addedNodes=getAddedNodes(mutations);handler(addedNodes);}function replaceNodeText(source,node,pattern,replacement){var textContent=node.textContent;if(textContent){node.textContent=textContent.replace(pattern,replacement);hit(source);}}function isTargetNode(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent;var nodeNameLowerCase=nodeName.toLowerCase();return textContent!==null&&textContent!==""&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch));}function parseNodeTextParams(nodeName,textMatch){var pattern=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;var REGEXP_START_MARKER="/";var isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER));var selector=isStringNameMatch?nodeName:"*";var nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName);var textContentMatch=!textMatch.startsWith(REGEXP_START_MARKER)?textMatch:toRegExp(textMatch);var patternMatch;if(pattern){patternMatch=!pattern.startsWith(REGEXP_START_MARKER)?pattern:toRegExp(pattern);}return {selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function nodeListToArray(nodeList){var nodes=[];for(var i=0;i3&&arguments[3]!==undefined?arguments[3]:"";if(!selector||!attr){return;}var allowedValues=["true","false"];var shouldCopyValue=value.startsWith("[")&&value.endsWith("]");var isValidValue=value.length===0||!nativeIsNaN(parseInt(value,10))&&parseInt(value,10)>=0&&parseInt(value,10)<=32767||allowedValues.includes(value.toLowerCase());if(!shouldCopyValue&&!isValidValue){logMessage(source,"Invalid attribute value provided: '".concat(convertTypeToString(value),"'"));return;}var attributeHandler;if(shouldCopyValue){attributeHandler=function attributeHandler(elem,attr,value){var valueToCopy=elem.getAttribute(value.slice(1,-1));if(valueToCopy===null){logMessage(source,"No element attribute found to copy value from: ".concat(value));}elem.setAttribute(attr,valueToCopy);};}setAttributeBySelector(source,selector,attr,value,attributeHandler);observeDOMChanges(function(){return setAttributeBySelector(source,selector,attr,value,attributeHandler);},true);}function setAttributeBySelector(source,selector,attribute,value){var attributeSetter=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultAttributeSetter;var elements;try{elements=document.querySelectorAll(selector);}catch(_unused){logMessage(source,'Failed to find elements matching selector "'.concat(selector,'"'));return;}if(!elements||elements.length===0){return;}try{elements.forEach(function(elem){return attributeSetter(elem,attribute,value);});hit(source);}catch(_unused2){logMessage(source,"Failed to set [".concat(attribute,'="').concat(value,'"] to each of selected elements.'));}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function convertTypeToString(value){var output;if(typeof value==="undefined"){output="undefined";}else if(typeof value==="object"){if(value===null){output="null";}else {output=objectToString(value);}}else {output=String(value);}return output;}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{setAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function setConstant(source,args){function setConstant(source,property,value){var stack=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var valueWrapper=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var setProxyTrap=arguments.length>5&&arguments[5]!==undefined?arguments[5]:false;var uboAliases=["set-constant.js","ubo-set-constant.js","set.js","ubo-set.js","ubo-set-constant","ubo-set"];if(uboAliases.includes(source.name)){if(stack.length!==1&&!getNumberFromString(stack)){valueWrapper=stack;}stack=undefined;}if(!property||!matchStackTrace(stack,new Error().stack)){return;}var isProxyTrapSet=false;var emptyArr=noopArray();var emptyObj=noopObject();var constantValue;if(value==="undefined"){constantValue=undefined;}else if(value==="false"){constantValue=false;}else if(value==="true"){constantValue=true;}else if(value==="null"){constantValue=null;}else if(value==="emptyArr"){constantValue=emptyArr;}else if(value==="emptyObj"){constantValue=emptyObj;}else if(value==="noopFunc"){constantValue=noopFunc;}else if(value==="noopCallbackFunc"){constantValue=noopCallbackFunc;}else if(value==="trueFunc"){constantValue=trueFunc;}else if(value==="falseFunc"){constantValue=falseFunc;}else if(value==="throwFunc"){constantValue=throwFunc;}else if(value==="noopPromiseResolve"){constantValue=noopPromiseResolve;}else if(value==="noopPromiseReject"){constantValue=noopPromiseReject;}else if(/^\d+$/.test(value)){constantValue=parseFloat(value);if(nativeIsNaN(constantValue)){return;}if(Math.abs(constantValue)>32767){return;}}else if(value==="-1"){constantValue=-1;}else if(value===""){constantValue="";}else if(value==="yes"){constantValue="yes";}else if(value==="no"){constantValue="no";}else {return;}var valueWrapperNames=["asFunction","asCallback","asResolved","asRejected"];if(valueWrapperNames.includes(valueWrapper)){var valueWrappersMap={asFunction(v){return function(){return v;};},asCallback(v){return function(){return function(){return v;};};},asResolved(v){return Promise.resolve(v);},asRejected(v){return Promise.reject(v);}};constantValue=valueWrappersMap[valueWrapper](constantValue);}var canceled=false;var mustCancel=function mustCancel(value){if(canceled){return canceled;}canceled=value!==undefined&&constantValue!==undefined&&typeof value!==typeof constantValue&&value!==null;return canceled;};var trapProp=function trapProp(base,prop,configurable,handler){if(!handler.init(base[prop])){return false;}var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);var prevSetter;if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message="Property '".concat(prop,"' is not configurable");logMessage(source,message);return false;}if(base[prop]){base[prop]=constantValue;}if(origDescriptor.set instanceof Function){prevSetter=origDescriptor.set;}}Object.defineProperty(base,prop,{configurable:configurable,get(){return handler.get();},set(a){if(prevSetter!==undefined){prevSetter(a);}if(a instanceof Object){var propertiesToCheck=property.split(".").slice(1);if(setProxyTrap&&!isProxyTrapSet){isProxyTrapSet=true;a=new Proxy(a,{get:function get(target,propertyKey,val){propertiesToCheck.reduce(function(object,currentProp,index,array){var currentObj=object===null||object===void 0?void 0:object[currentProp];if(index===array.length-1&¤tObj!==constantValue){object[currentProp]=constantValue;}return currentObj||object;},target);return Reflect.get(target,propertyKey,val);}});}}handler.set(a);}});return true;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;var inChainPropHandler={factValue:undefined,init(a){this.factValue=a;return true;},get(){return this.factValue;},set(a){if(this.factValue===a){return;}this.factValue=a;if(a instanceof Object){setChainPropAccess(a,chain);}}};var endPropHandler={init(a){if(mustCancel(a)){return false;}return true;},get(){return constantValue;},set(a){if(!mustCancel(a)){return;}constantValue=a;}};if(!chain){var isTrapped=trapProp(base,prop,false,endPropHandler);if(isTrapped){hit(source);}return;}if(base!==undefined&&base[prop]===null){trapProp(base,prop,true,inChainPropHandler);return;}if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){trapProp(base,prop,true,inChainPropHandler);}var propValue=owner[prop];if(propValue instanceof Object||typeof propValue==="object"&&propValue!==null){setChainPropAccess(propValue,chain);}trapProp(base,prop,true,inChainPropHandler);};setChainPropAccess(window,property);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function noopArray(){return [];}function noopObject(){return {};}function noopFunc(){}function noopCallbackFunc(){return noopFunc;}function trueFunc(){return true;}function falseFunc(){return false;}function throwFunc(){throw new Error();}function noopPromiseReject(){return Promise.reject();}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"/";var domain=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var validValue=getLimitedCookieValue(value);if(validValue===null){logMessage(source,"Invalid cookie value: '".concat(validValue,"'"));return;}if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,validValue,path,domain);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}hit(source);document.cookie=cookieToSet;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function getLimitedCookieValue(value){if(!value){return null;}var allowedCookieValues=new Set(["true","t","false","f","yes","y","no","n","ok","on","off","accept","accepted","notaccepted","reject","rejected","allow","allowed","disallow","deny","enable","enabled","disable","disabled","necessary","required"]);var validValue;if(allowedCookieValues.has(value.toLowerCase())){validValue=value;}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){return null;}if(Math.abs(validValue)<0||Math.abs(validValue)>32767){return null;}}else {return null;}return validValue;}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{setCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function setCookieReload(source,args){function setCookieReload(source,name,value){var path=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"/";var domain=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(isCookieSetWithValue(document.cookie,name,value)){return;}var validValue=getLimitedCookieValue(value);if(validValue===null){logMessage(source,"Invalid cookie value: '".concat(value,"'"));return;}if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,validValue,path,domain);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}document.cookie=cookieToSet;hit(source);if(isCookieSetWithValue(document.cookie,name,value)){window.location.reload();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(";").some(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return false;}var cookieName=cookieStr.slice(0,pos).trim();var cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue;});}function getLimitedCookieValue(value){if(!value){return null;}var allowedCookieValues=new Set(["true","t","false","f","yes","y","no","n","ok","on","off","accept","accepted","notaccepted","reject","rejected","allow","allowed","disallow","deny","enable","enabled","disable","disabled","necessary","required"]);var validValue;if(allowedCookieValues.has(value.toLowerCase())){validValue=value;}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){return null;}if(Math.abs(validValue)<0||Math.abs(validValue)>32767){return null;}}else {return null;}return validValue;}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{setCookieReload.apply(this,updatedArgs);}catch(e){console.log(e);}}function setLocalStorageItem(source,args){function setLocalStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified.");return;}var validValue;try{validValue=getLimitedStorageItemValue(value);}catch(_unused){logMessage(source,"Invalid storage item value: '".concat(value,"'"));return;}var _window=window,localStorage=_window.localStorage;if(validValue==="$remove$"){removeStorageItem(source,localStorage,key);}else {setStorageItem(source,localStorage,key,validValue);}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function removeStorageItem(source,storage,key){try{if(key.startsWith("/")&&(key.endsWith("/")||key.endsWith("/i"))&&isValidStrPattern(key)){var regExpKey=toRegExp(key);var storageKeys=Object.keys(storage);storageKeys.forEach(function(storageKey){if(regExpKey.test(storageKey)){storage.removeItem(storageKey);}});}else {storage.removeItem(key);}}catch(e){var message="Unable to remove storage item due to: ".concat(e.message);logMessage(source,message);}}function getLimitedStorageItemValue(value){if(typeof value!=="string"){throw new Error("Invalid value");}var allowedStorageValues=new Set(["undefined","false","true","null","","yes","no","on","off"]);var validValue;if(allowedStorageValues.has(value.toLowerCase())){validValue=value;}else if(value==="emptyArr"){validValue="[]";}else if(value==="emptyObj"){validValue="{}";}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){throw new Error("Invalid value");}if(Math.abs(validValue)>32767){throw new Error("Invalid value");}}else if(value==="$remove$"){validValue="$remove$";}else {throw new Error("Invalid value");}return validValue;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{setLocalStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function setPopadsDummy(source,args){function setPopadsDummy(source){delete window.PopAds;delete window.popns;Object.defineProperties(window,{PopAds:{get:function get(){hit(source);return {};}},popns:{get:function get(){hit(source);return {};}}});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{setPopadsDummy.apply(this,updatedArgs);}catch(e){console.log(e);}}function setSessionStorageItem(source,args){function setSessionStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified.");return;}var validValue;try{validValue=getLimitedStorageItemValue(value);}catch(_unused){logMessage(source,"Invalid storage item value: '".concat(value,"'"));return;}var _window=window,sessionStorage=_window.sessionStorage;if(validValue==="$remove$"){removeStorageItem(source,sessionStorage,key);}else {setStorageItem(source,sessionStorage,key,validValue);}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function removeStorageItem(source,storage,key){try{if(key.startsWith("/")&&(key.endsWith("/")||key.endsWith("/i"))&&isValidStrPattern(key)){var regExpKey=toRegExp(key);var storageKeys=Object.keys(storage);storageKeys.forEach(function(storageKey){if(regExpKey.test(storageKey)){storage.removeItem(storageKey);}});}else {storage.removeItem(key);}}catch(e){var message="Unable to remove storage item due to: ".concat(e.message);logMessage(source,message);}}function getLimitedStorageItemValue(value){if(typeof value!=="string"){throw new Error("Invalid value");}var allowedStorageValues=new Set(["undefined","false","true","null","","yes","no","on","off"]);var validValue;if(allowedStorageValues.has(value.toLowerCase())){validValue=value;}else if(value==="emptyArr"){validValue="[]";}else if(value==="emptyObj"){validValue="{}";}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){throw new Error("Invalid value");}if(Math.abs(validValue)>32767){throw new Error("Invalid value");}}else if(value==="$remove$"){validValue="$remove$";}else {throw new Error("Invalid value");}return validValue;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{setSessionStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function spoofCSS(source,args){function spoofCSS(source,selectors,cssPropertyName,cssPropertyValue){if(!selectors){return;}var uboAliases=["spoof-css.js","ubo-spoof-css.js","ubo-spoof-css"];function convertToCamelCase(cssProperty){if(!cssProperty.includes("-")){return cssProperty;}var splittedProperty=cssProperty.split("-");var firstPart=splittedProperty[0];var secondPart=splittedProperty[1];return "".concat(firstPart).concat(secondPart[0].toUpperCase()).concat(secondPart.slice(1));}var shouldDebug=!!(cssPropertyName==="debug"&&cssPropertyValue);var propToValueMap=new Map();if(uboAliases.includes(source.name)){var args=source.args;var arrayOfProperties=[];var isDebug=args.at(-2);if(isDebug==="debug"){arrayOfProperties=args.slice(1,-2);}else {arrayOfProperties=args.slice(1);}for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var delay=arguments.length>3&&arguments[3]!==undefined?arguments[3]:NaN;if(!selectors){return;}var SHADOW_COMBINATOR=" >>> ";var OBSERVER_TIMEOUT_MS=1e4;var THROTTLE_DELAY_MS=20;var STATIC_CLICK_DELAY_MS=150;var COOKIE_MATCH_MARKER="cookie:";var LOCAL_STORAGE_MATCH_MARKER="localStorage:";var TEXT_MATCH_MARKER="containsText:";var SELECTORS_DELIMITER=",";var COOKIE_STRING_DELIMITER=";";var EXTRA_MATCH_DELIMITER=/(,\s*){1}(?=!?cookie:|!?localStorage:|containsText:)/;var sleep=function sleep(delayMs){return new Promise(function(resolve){return setTimeout(resolve,delayMs);});};if(selectors.includes(SHADOW_COMBINATOR)){var attachShadowWrapper=function attachShadowWrapper(target,thisArg,argumentsList){var _argumentsList$;var mode=(_argumentsList$=argumentsList[0])===null||_argumentsList$===void 0?void 0:_argumentsList$.mode;if(mode==="closed"){argumentsList[0].mode="open";}return Reflect.apply(target,thisArg,argumentsList);};var attachShadowHandler={apply:attachShadowWrapper};window.Element.prototype.attachShadow=new Proxy(window.Element.prototype.attachShadow,attachShadowHandler);}var parsedDelay;if(delay){parsedDelay=parseInt(String(delay),10);var isValidDelay=!Number.isNaN(parsedDelay)||parsedDelay0){var parsedCookieMatches=parseCookieString(cookieMatches.join(COOKIE_STRING_DELIMITER));var parsedCookies=parseCookieString(document.cookie);var cookieKeys=Object.keys(parsedCookies);if(cookieKeys.length===0){return;}var cookiesMatched=Object.keys(parsedCookieMatches).every(function(key){var valueMatch=parsedCookieMatches[key]?toRegExp(parsedCookieMatches[key]):null;var keyMatch=toRegExp(key);return cookieKeys.some(function(cookieKey){var keysMatched=keyMatch.test(cookieKey);if(!keysMatched){return false;}if(!valueMatch){return true;}var parsedCookieValue=parsedCookies[cookieKey];if(!parsedCookieValue){return false;}return valueMatch.test(parsedCookieValue);});});var shouldRun=cookiesMatched!==isInvertedMatchCookie;if(!shouldRun){return;}}if(localStorageMatches.length>0){var localStorageMatched=localStorageMatches.every(function(str){var itemValue=window.localStorage.getItem(str);return itemValue||itemValue==="";});var _shouldRun=localStorageMatched!==isInvertedMatchLocalStorage;if(!_shouldRun){return;}}var textMatchRegexp=textMatches?toRegExp(textMatches):null;var doesElementContainText=function doesElementContainText(element,matchRegexp){var textContent=element.textContent;if(!textContent){return false;}return matchRegexp.test(textContent);};var selectorsSequence=selectors.split(SELECTORS_DELIMITER).map(function(selector){return selector.trim();});var createElementObj=function createElementObj(element){return {element:element||null,clicked:false};};var elementsSequence=Array(selectorsSequence.length).fill(createElementObj(null));var clickElementsBySequence=async function clickElementsBySequence(){for(var i=0;i=1){await sleep(STATIC_CLICK_DELAY_MS);}if(!elementObj.element){break;}if(!elementObj.clicked){if(textMatchRegexp&&!doesElementContainText(elementObj.element,textMatchRegexp)){continue;}elementObj.element.click();elementObj.clicked=true;}}var allElementsClicked=elementsSequence.every(function(elementObj){return elementObj.clicked===true;});if(allElementsClicked){hit(source);}};var handleElement=function handleElement(element,i){var elementObj=createElementObj(element);elementsSequence[i]=elementObj;if(canClick){clickElementsBySequence();}};var findElements=function findElements(mutations,observer){var fulfilledSelectors=[];selectorsSequence.forEach(function(selector,i){if(!selector){return;}var element=queryShadowSelector(selector);if(!element){return;}handleElement(element,i);fulfilledSelectors.push(selector);});selectorsSequence=selectorsSequence.map(function(selector){return selector&&fulfilledSelectors.includes(selector)?null:selector;});var allSelectorsFulfilled=selectorsSequence.every(function(selector){return selector===null;});if(allSelectorsFulfilled){observer.disconnect();}};var observer=new MutationObserver(throttle(findElements,THROTTLE_DELAY_MS));observer.observe(document.documentElement,{attributes:true,childList:true,subtree:true});if(parsedDelay){setTimeout(function(){clickElementsBySequence();canClick=true;},parsedDelay);}setTimeout(function(){return observer.disconnect();},OBSERVER_TIMEOUT_MS);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function parseCookieString(cookieString){var COOKIE_DELIMITER="=";var COOKIE_PAIRS_DELIMITER=";";var cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER);var cookieData={};cookieChunks.forEach(function(singleCookie){var cookieKey;var cookieValue="";var delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);if(delimiterIndex===-1){cookieKey=singleCookie.trim();}else {cookieKey=singleCookie.slice(0,delimiterIndex).trim();cookieValue=singleCookie.slice(delimiterIndex+1);}cookieData[cookieKey]=cookieValue||null;});return cookieData;}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function queryShadowSelector(selector){var context=arguments.length>1&&arguments[1]!==undefined?arguments[1]:document.documentElement;var SHADOW_COMBINATOR=" >>> ";var pos=selector.indexOf(SHADOW_COMBINATOR);if(pos===-1){return context.querySelector(selector);}var shadowHostSelector=selector.slice(0,pos).trim();var elem=context.querySelector(shadowHostSelector);if(!elem||!elem.shadowRoot){return null;}var shadowRootSelector=selector.slice(pos+SHADOW_COMBINATOR.length).trim();return queryShadowSelector(shadowRootSelector,elem.shadowRoot);}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedClickElement.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedCreateElement(source,args){function trustedCreateElement(source,parentSelector,tagName){var attributePairs=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var textContent=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var cleanupDelayMs=arguments.length>5&&arguments[5]!==undefined?arguments[5]:NaN;if(!parentSelector||!tagName){return;}var IFRAME_WINDOW_NAME="trusted-create-element-window";if(window.name===IFRAME_WINDOW_NAME){return;}var logError=function logError(prefix,error){logMessage(source,"".concat(prefix," due to ").concat(getErrorMessage(error)));};var element;try{element=document.createElement(tagName);element.textContent=textContent;}catch(e){logError("Cannot create element with tag name '".concat(tagName,"'"),e);return;}var attributes=[];try{attributes=parseAttributePairs(attributePairs);}catch(e){logError("Cannot parse attributePairs param: '".concat(attributePairs,"'"),e);return;}attributes.forEach(function(attr){try{element.setAttribute(attr.name,attr.value);}catch(e){logError("Cannot set attribute '".concat(attr.name,"' with value '").concat(attr.value,"'"),e);}});var timerId;var findParentAndAppendEl=function findParentAndAppendEl(parentElSelector,el,removeElDelayMs){var parentEl;try{parentEl=document.querySelector(parentElSelector);}catch(e){logError("Cannot find parent element by selector '".concat(parentElSelector,"'"),e);return false;}if(!parentEl){logMessage(source,"No parent element found by selector: '".concat(parentElSelector,"'"));return false;}try{parentEl.append(el);if(el instanceof HTMLIFrameElement&&el.contentWindow){el.contentWindow.name=IFRAME_WINDOW_NAME;}hit(source);}catch(e){logError("Cannot append child to parent by selector '".concat(parentElSelector,"'"),e);return false;}if(!nativeIsNaN(removeElDelayMs)){timerId=setTimeout(function(){el.remove();clearTimeout(timerId);},removeElDelayMs);}return true;};if(!findParentAndAppendEl(parentSelector,element,cleanupDelayMs)){observeDocumentWithTimeout(function(mutations,observer){if(findParentAndAppendEl(parentSelector,element,cleanupDelayMs)){observer.disconnect();}});}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function observeDocumentWithTimeout(callback){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseAttributePairs(input){if(!input){return [];}var NAME_VALUE_SEPARATOR="=";var PAIRS_SEPARATOR=" ";var SINGLE_QUOTE="'";var DOUBLE_QUOTE='"';var BACKSLASH="\\";var pairs=[];for(var i=0;i4&&arguments[4]!==undefined?arguments[4]:"";if(!functionName){return;}var nativeObjects={nativeStringify:window.JSON.stringify};var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(!base||!prop||typeof base[prop]!=="function"){var message="".concat(functionName," is not a function");logMessage(source,message);return;}var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var objectWrapper=function objectWrapper(target,thisArg,args){var data=args[0];if(typeof data==="object"){data=jsonPruner(source,data,prunePaths,requiredPaths,stack,nativeObjects);args[0]=data;}return Reflect.apply(target,thisArg,args);};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(base[prop],objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j1&&arguments[1]!==undefined?arguments[1]:"";var replacement=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";var propsToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}if(pattern===""&&replacement!==""){logMessage(source,"Pattern argument should not be empty string");return;}var shouldLog=pattern===""&&replacement==="";var nativeRequestClone=Request.prototype.clone;var nativeFetch=fetch;var shouldReplace=false;var fetchData;var handlerWrapper=function handlerWrapper(target,thisArg,args){fetchData=getFetchData(args,nativeRequestClone);if(shouldLog){logMessage(source,"fetch( ".concat(objectToString(fetchData)," )"),true);hit(source);return Reflect.apply(target,thisArg,args);}shouldReplace=matchRequestProps(source,propsToMatch,fetchData);if(!shouldReplace){return Reflect.apply(target,thisArg,args);}return nativeFetch.apply(null,args).then(function(response){return response.text().then(function(bodyText){var patternRegexp=pattern==="*"?/(\n|.)*/:toRegExp(pattern);var modifiedTextContent=bodyText.replace(patternRegexp,replacement);var forgedResponse=forgeResponse(response,modifiedTextContent);hit(source);return forgedResponse;}).catch(function(){var fetchDataStr=objectToString(fetchData);var message="Response body can't be converted to text: ".concat(fetchDataStr);logMessage(source,message);return Reflect.apply(target,thisArg,args);});}).catch(function(){return Reflect.apply(target,thisArg,args);});};var fetchHandler={apply:handlerWrapper};fetch=new Proxy(fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function forgeResponse(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url;var forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}});return forgedResponse;}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceFetchResponse.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedReplaceNodeText(source,args){function trustedReplaceNodeText(source,nodeName,textMatch,pattern,replacement){var uboAliases=["replace-node-text.js","rpnt.js","sed.js"];if(uboAliases.includes(source.name)){replacement=pattern;pattern=textMatch;for(var _len=arguments.length,extraArgs=new Array(_len>5?_len-5:0),_key=5;_key<_len;_key++){extraArgs[_key-5]=arguments[_key];}for(var i=0;i1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function handleExistingNodes(selector,handler){var nodeList=document.querySelectorAll(selector);var nodes=nodeListToArray(nodeList);handler(nodes);}function handleMutations(mutations,handler){var addedNodes=getAddedNodes(mutations);handler(addedNodes);}function replaceNodeText(source,node,pattern,replacement){var textContent=node.textContent;if(textContent){node.textContent=textContent.replace(pattern,replacement);hit(source);}}function isTargetNode(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent;var nodeNameLowerCase=nodeName.toLowerCase();return textContent!==null&&textContent!==""&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch));}function parseNodeTextParams(nodeName,textMatch){var pattern=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;var REGEXP_START_MARKER="/";var isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER));var selector=isStringNameMatch?nodeName:"*";var nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName);var textContentMatch=!textMatch.startsWith(REGEXP_START_MARKER)?textMatch:toRegExp(textMatch);var patternMatch;if(pattern){patternMatch=!pattern.startsWith(REGEXP_START_MARKER)?pattern:toRegExp(pattern);}return {selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function nodeListToArray(nodeList){var nodes=[];for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var replacement=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var decodeMethod=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var stack=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";var logContent=arguments.length>6&&arguments[6]!==undefined?arguments[6]:"";if(!methodPath){return;}var getPathParts=getPropertyInChain;var _getPathParts=getPathParts(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(typeof chain!=="undefined"){logMessage(source,"Could not reach the end of the prop chain: ".concat(methodPath));return;}var nativeMethod=base[prop];if(!nativeMethod||typeof nativeMethod!=="function"){logMessage(source,"Could not retrieve the method: ".concat(methodPath));return;}var isValidBase64=function isValidBase64(str){try{if(str===""){return false;}var decodedString=atob(str);var encodedString=btoa(decodedString);var stringWithoutPadding=str.replace(/=+$/,"");var encodedStringWithoutPadding=encodedString.replace(/=+$/,"");return encodedStringWithoutPadding===stringWithoutPadding;}catch(e){return false;}};var decodeAndReplaceContent=function decodeAndReplaceContent(content,pattern,textReplacement,decode,log){switch(decode){case"base64":try{if(!isValidBase64(content)){logMessage(source,"Text content is not a valid base64 encoded string: ".concat(content));return content;}var decodedContent=atob(content);if(log){logMessage(source,"Decoded text content: ".concat(decodedContent));}var modifiedContent=textToReplace?decodedContent.replace(pattern,textReplacement):decodedContent;if(log){var message=modifiedContent!==decodedContent?"Modified decoded text content: ".concat(modifiedContent):"Decoded text content was not modified";logMessage(source,message);}var encodedContent=btoa(modifiedContent);return encodedContent;}catch(e){return content;}default:return content.replace(pattern,textReplacement);}};var logOriginalContent=!textToReplace||!!logContent;var logModifiedContent=!!logContent;var logDecodedContent=!!decodeMethod&&!!logContent;var isMatchingSuspended=false;var objectWrapper=function objectWrapper(target,thisArg,argumentsList){if(isMatchingSuspended){return Reflect.apply(target,thisArg,argumentsList);}isMatchingSuspended=true;hit(source);var result=Reflect.apply(target,thisArg,argumentsList);if(stack&&!matchStackTrace(stack,new Error().stack||"")){return result;}if(typeof result==="string"){if(logOriginalContent){logMessage(source,"Original text content: ".concat(result));}var patternRegexp=toRegExp(textToReplace);var modifiedContent=textToReplace||logDecodedContent?decodeAndReplaceContent(result,patternRegexp,replacement,decodeMethod,logContent):result;if(logModifiedContent){var message=modifiedContent!==result?"Modified text content: ".concat(modifiedContent):"Text content was not modified";logMessage(source,message);}isMatchingSuspended=false;return modifiedContent;}isMatchingSuspended=false;logMessage(source,"Content is not a string");return result;};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(nativeMethod,objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index1&&arguments[1]!==undefined?arguments[1]:"";var replacement=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";var propsToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof Proxy==="undefined"){return;}if(pattern===""&&replacement!==""){var message="Pattern argument should not be empty string.";logMessage(source,message);return;}var shouldLog=pattern===""&&replacement==="";var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(shouldLog){var _message="xhr( ".concat(objectToString(xhrData)," )");logMessage(source,_message,true);hit(source);return Reflect.apply(target,thisArg,args);}if(matchRequestProps(source,propsToMatch,xhrData)){thisArg.shouldBePrevented=true;thisArg.headersReceived=!!thisArg.headersReceived;}if(thisArg.shouldBePrevented&&!thisArg.headersReceived){thisArg.headersReceived=true;thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"){return;}var patternRegexp=pattern==="*"?/(\n|.)*/:toRegExp(pattern);var modifiedContent=content.replace(patternRegexp,replacement);Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:modifiedContent,writable:false},responseText:{value:modifiedContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceXhrResponse.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetAttr(source,args){function trustedSetAttr(source,selector,attr){var value=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(!selector||!attr){return;}setAttributeBySelector(source,selector,attr,value);observeDOMChanges(function(){return setAttributeBySelector(source,selector,attr,value);},true);}function setAttributeBySelector(source,selector,attribute,value){var attributeSetter=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultAttributeSetter;var elements;try{elements=document.querySelectorAll(selector);}catch(_unused){logMessage(source,'Failed to find elements matching selector "'.concat(selector,'"'));return;}if(!elements||elements.length===0){return;}try{elements.forEach(function(elem){return attributeSetter(elem,attribute,value);});hit(source);}catch(_unused2){logMessage(source,"Failed to set [".concat(attribute,'="').concat(value,'"] to each of selected elements.'));}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetConstant(source,args){function trustedSetConstant(source,property,value,stack){if(!property||!matchStackTrace(stack,new Error().stack)){return;}var constantValue;try{constantValue=inferValue(value);}catch(e){logMessage(source,e);return;}var canceled=false;var mustCancel=function mustCancel(value){if(canceled){return canceled;}canceled=value!==undefined&&constantValue!==undefined&&typeof value!==typeof constantValue&&value!==null;return canceled;};var trapProp=function trapProp(base,prop,configurable,handler){if(!handler.init(base[prop])){return false;}var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);var prevSetter;if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message="Property '".concat(prop,"' is not configurable");logMessage(source,message);return false;}base[prop]=constantValue;if(origDescriptor.set instanceof Function){prevSetter=origDescriptor.set;}}Object.defineProperty(base,prop,{configurable:configurable,get(){return handler.get();},set(a){if(prevSetter!==undefined){prevSetter(a);}handler.set(a);}});return true;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;var inChainPropHandler={factValue:undefined,init(a){this.factValue=a;return true;},get(){return this.factValue;},set(a){if(this.factValue===a){return;}this.factValue=a;if(a instanceof Object){setChainPropAccess(a,chain);}}};var endPropHandler={init(a){if(mustCancel(a)){return false;}return true;},get(){return constantValue;},set(a){if(!mustCancel(a)){return;}constantValue=a;}};if(!chain){var isTrapped=trapProp(base,prop,false,endPropHandler);if(isTrapped){hit(source);}return;}if(base!==undefined&&base[prop]===null){trapProp(base,prop,true,inChainPropHandler);return;}if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){trapProp(base,prop,true,inChainPropHandler);}var propValue=owner[prop];if(propValue instanceof Object||typeof propValue==="object"&&propValue!==null){setChainPropAccess(propValue,chain);}trapProp(base,prop,true,inChainPropHandler);};setChainPropAccess(window,property);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function inferValue(value){if(value==="undefined"){return undefined;}if(value==="false"){return false;}if(value==="true"){return true;}if(value==="null"){return null;}if(value==="NaN"){return NaN;}if(value.startsWith("/")&&value.endsWith("/")){return toRegExp(value);}var MAX_ALLOWED_NUM=32767;var numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM){throw new Error("number values bigger than 32767 are not allowed");}return numVal;}var errorMessage="'".concat(value,"' value type can't be inferred");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||typeof parsableVal==="string"){return parsableVal;}}catch(e){errorMessage+=": ".concat(e);}throw new TypeError(errorMessage);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var path=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"/";var domain=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";if(typeof name==="undefined"){logMessage(source,"Cookie name should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Cookie value should be specified");return;}var parsedValue=parseKeywordValue(value);if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,parsedValue,path,domain,false);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}if(offsetExpiresSec){var parsedOffsetMs=getTrustedCookieOffsetMs(offsetExpiresSec);if(!parsedOffsetMs){logMessage(source,"Invalid offsetExpiresSec value: ".concat(offsetExpiresSec));return;}var expires=Date.now()+parsedOffsetMs;cookieToSet+="; expires=".concat(new Date(expires).toUTCString());}document.cookie=cookieToSet;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getTrustedCookieOffsetMs(offsetExpiresSec){var ONE_YEAR_EXPIRATION_KEYWORD="1year";var ONE_DAY_EXPIRATION_KEYWORD="1day";var MS_IN_SEC=1e3;var SECONDS_IN_YEAR=365*24*60*60;var SECONDS_IN_DAY=24*60*60;var parsedSec;if(offsetExpiresSec===ONE_YEAR_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_YEAR;}else if(offsetExpiresSec===ONE_DAY_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_DAY;}else {parsedSec=Number.parseInt(offsetExpiresSec,10);if(Number.isNaN(parsedSec)){return null;}}return parsedSec*MS_IN_SEC;}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetCookieReload(source,args){function trustedSetCookieReload(source,name,value){var offsetExpiresSec=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var path=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"/";var domain=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";if(typeof name==="undefined"){logMessage(source,"Cookie name should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Cookie value should be specified");return;}if(isCookieSetWithValue(document.cookie,name,value)){return;}var parsedValue=parseKeywordValue(value);if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,parsedValue,path,domain,false);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}if(offsetExpiresSec){var parsedOffsetMs=getTrustedCookieOffsetMs(offsetExpiresSec);if(!parsedOffsetMs){logMessage(source,"Invalid offsetExpiresSec value: ".concat(offsetExpiresSec));return;}var expires=Date.now()+parsedOffsetMs;cookieToSet+="; expires=".concat(new Date(expires).toUTCString());}document.cookie=cookieToSet;hit(source);var cookieValueToCheck=parseCookieString(document.cookie)[name];if(isCookieSetWithValue(document.cookie,name,cookieValueToCheck)){window.location.reload();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(";").some(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return false;}var cookieName=cookieStr.slice(0,pos).trim();var cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue;});}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getTrustedCookieOffsetMs(offsetExpiresSec){var ONE_YEAR_EXPIRATION_KEYWORD="1year";var ONE_DAY_EXPIRATION_KEYWORD="1day";var MS_IN_SEC=1e3;var SECONDS_IN_YEAR=365*24*60*60;var SECONDS_IN_DAY=24*60*60;var parsedSec;if(offsetExpiresSec===ONE_YEAR_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_YEAR;}else if(offsetExpiresSec===ONE_DAY_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_DAY;}else {parsedSec=Number.parseInt(offsetExpiresSec,10);if(Number.isNaN(parsedSec)){return null;}}return parsedSec*MS_IN_SEC;}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}function parseCookieString(cookieString){var COOKIE_DELIMITER="=";var COOKIE_PAIRS_DELIMITER=";";var cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER);var cookieData={};cookieChunks.forEach(function(singleCookie){var cookieKey;var cookieValue="";var delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);if(delimiterIndex===-1){cookieKey=singleCookie.trim();}else {cookieKey=singleCookie.slice(0,delimiterIndex).trim();cookieValue=singleCookie.slice(delimiterIndex+1);}cookieData[cookieKey]=cookieValue||null;});return cookieData;}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetCookieReload.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetLocalStorageItem(source,args){function trustedSetLocalStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Item value should be specified");return;}var parsedValue=parseKeywordValue(value);var _window=window,localStorage=_window.localStorage;setStorageItem(source,localStorage,key,parsedValue);hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetLocalStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSuppressNativeMethod(source,args){function trustedSuppressNativeMethod(source,methodPath,signatureStr){var how=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"abort";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(!methodPath||!signatureStr){return;}var IGNORE_ARG_SYMBOL=" ";var suppress=how==="abort"?getAbortFunc():function(){};var signatureMatcher;try{signatureMatcher=signatureStr.split("|").map(function(value){return value===IGNORE_ARG_SYMBOL?value:inferValue(value);});}catch(e){logMessage(source,"Could not parse the signature matcher: ".concat(getErrorMessage(e)));return;}var getPathParts=getPropertyInChain;var _getPathParts=getPathParts(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(typeof chain!=="undefined"){logMessage(source,"Could not reach the end of the prop chain: ".concat(methodPath));return;}var nativeMethod=base[prop];if(!nativeMethod||typeof nativeMethod!=="function"){logMessage(source,"Could not retrieve the method: ".concat(methodPath));return;}function matchMethodCall(nativeArguments,matchArguments){return matchArguments.every(function(matcher,i){if(matcher===IGNORE_ARG_SYMBOL){return true;}var argument=nativeArguments[i];return isValueMatched(argument,matcher);});}var isMatchingSuspended=false;function apply(target,thisArg,argumentsList){if(isMatchingSuspended){return Reflect.apply(target,thisArg,argumentsList);}isMatchingSuspended=true;if(stack&&!matchStackTrace(stack,new Error().stack||"")){return Reflect.apply(target,thisArg,argumentsList);}var isMatching=matchMethodCall(argumentsList,signatureMatcher);isMatchingSuspended=false;if(isMatching){hit(source);return suppress();}return Reflect.apply(target,thisArg,argumentsList);}base[prop]=new Proxy(nativeMethod,{apply:apply});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function inferValue(value){if(value==="undefined"){return undefined;}if(value==="false"){return false;}if(value==="true"){return true;}if(value==="null"){return null;}if(value==="NaN"){return NaN;}if(value.startsWith("/")&&value.endsWith("/")){return toRegExp(value);}var MAX_ALLOWED_NUM=32767;var numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM){throw new Error("number values bigger than 32767 are not allowed");}return numVal;}var errorMessage="'".concat(value,"' value type can't be inferred");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||typeof parsableVal==="string"){return parsableVal;}}catch(e){errorMessage+=": ".concat(e);}throw new TypeError(errorMessage);}function isValueMatched(value,matcher){if(typeof value==="function"){return false;}if(nativeIsNaN(value)){return nativeIsNaN(matcher);}if(value===null||typeof value==="undefined"||typeof value==="number"||typeof value==="boolean"){return value===matcher;}if(typeof value==="string"){if(typeof matcher==="string"||matcher instanceof RegExp){return isStringMatched(value,matcher);}return false;}if(Array.isArray(value)&&Array.isArray(matcher)){return isArrayMatched(value,matcher);}if(isArbitraryObject(value)&&isArbitraryObject(matcher)){return isObjectMatched(value,matcher);}return false;}function getAbortFunc(){var rid=randomId();var isErrorHandlerSet=false;return function abort(){if(!isErrorHandlerSet){window.onerror=createOnErrorHandler(rid);isErrorHandlerSet=true;}throw new ReferenceError(rid);};}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getErrorMessage(error){var isErrorWithMessage=function isErrorWithMessage(e){return typeof e==="object"&&e!==null&&"message"in e&&typeof e.message==="string";};if(isErrorWithMessage(error)){return error.message;}try{return new Error(JSON.stringify(error)).message;}catch(_unused){return new Error(String(error)).message;}}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function isArbitraryObject(value){return value!==null&&typeof value==="object"&&!Array.isArray(value)&&!(value instanceof RegExp);}function isStringMatched(str,matcher){if(typeof matcher==="string"){if(matcher===""){return str===matcher;}return str.includes(matcher);}if(matcher instanceof RegExp){return matcher.test(str);}return false;}function isArrayMatched(array,matcher){if(array.length===0){return matcher.length===0;}if(matcher.length===0){return false;}var _loop=function _loop(){var matcherValue=matcher[i];var isMatching=array.some(function(arrItem){return isValueMatched(arrItem,matcherValue);});if(!isMatching){return {v:false};}return "continue";};for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var urlToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof Reflect==="undefined"||typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var shouldPruneResponse=false;var urlMatchRegexp=toRegExp(urlToMatch);var XPATH_MARKER="xpath(";var isXpath=propsToRemove&&propsToRemove.startsWith(XPATH_MARKER);var getXPathElements=function getXPathElements(contextNode){var matchedElements=[];try{var elementsToRemove=propsToRemove.slice(XPATH_MARKER.length,-1);var xpathResult=contextNode.evaluate(elementsToRemove,contextNode,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0;i")){return true;}}return false;};var createXMLDocument=function createXMLDocument(text){var xmlParser=new DOMParser();var xmlDocument=xmlParser.parseFromString(text,"text/xml");return xmlDocument;};var isPruningNeeded=function isPruningNeeded(response,propsToRemove){if(!isXML(response)){return false;}var docXML=createXMLDocument(response);return isXpath?getXPathElements(docXML):!!docXML.querySelector(propsToRemove);};var pruneXML=function pruneXML(text){if(!isXML(text)){shouldPruneResponse=false;return text;}var xmlDoc=createXMLDocument(text);var errorNode=xmlDoc.querySelector("parsererror");if(errorNode){return text;}if(optionalProp!==""&&xmlDoc.querySelector(optionalProp)===null){shouldPruneResponse=false;return text;}var elements=isXpath?getXPathElements(xmlDoc):xmlDoc.querySelectorAll(propsToRemove);if(!elements.length){shouldPruneResponse=false;return text;}if(isXpath){xPathPruning(elements);}else {elements.forEach(function(elem){elem.remove();});}var serializer=new XMLSerializer();text=serializer.serializeToString(xmlDoc);return text;};var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(matchRequestProps(source,urlToMatch,xhrData)){thisArg.shouldBePruned=true;}if(thisArg.shouldBePruned){thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){var allowedResponseTypeValues=["","text"];if(!thisArg.shouldBePruned||!allowedResponseTypeValues.includes(thisArg.responseType)){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"){return;}if(!propsToRemove){if(isXML(response)){var message="XMLHttpRequest.open() URL: ".concat(responseURL,"\nresponse: ").concat(response);logMessage(source,message);logMessage(source,createXMLDocument(response),true,false);}}else {shouldPruneResponse=isPruningNeeded(response,propsToRemove);}var responseContent=shouldPruneResponse?pruneXML(response):response;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:responseContent,writable:false},responseText:{value:responseContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);var nativeFetch=window.fetch;var fetchWrapper=async function fetchWrapper(target,thisArg,args){var fetchURL=args[0]instanceof Request?args[0].url:args[0];if(typeof fetchURL!=="string"||fetchURL.length===0){return Reflect.apply(target,thisArg,args);}if(urlMatchRegexp.test(fetchURL)){var response=await nativeFetch(...args);var clonedResponse=response.clone();var responseText=await response.text();shouldPruneResponse=isPruningNeeded(responseText,propsToRemove);if(!shouldPruneResponse){var message="fetch URL: ".concat(fetchURL,"\nresponse text: ").concat(responseText);logMessage(source,message);logMessage(source,createXMLDocument(responseText),true,false);return clonedResponse;}var prunedText=pruneXML(responseText);if(shouldPruneResponse){hit(source);return new Response(prunedText,{status:response.status,statusText:response.statusText,headers:response.headers});}return clonedResponse;}return Reflect.apply(target,thisArg,args);};var fetchHandler={apply:fetchWrapper};window.fetch=new Proxy(window.fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{xmlPrune.apply(this,updatedArgs);}catch(e){console.log(e);}}var scriptletsMap={"amazon-apstag":AmazonApstag,"ubo-amazon_apstag.js":AmazonApstag,"amazon_apstag.js":AmazonApstag,"didomi-loader":DidomiLoader,fingerprintjs2:Fingerprintjs2,"ubo-fingerprint2.js":Fingerprintjs2,"fingerprint2.js":Fingerprintjs2,fingerprintjs3:Fingerprintjs3,"ubo-fingerprint3.js":Fingerprintjs3,"fingerprint3.js":Fingerprintjs3,gemius:Gemius,"google-analytics":GoogleAnalytics,"ubo-google-analytics_analytics.js":GoogleAnalytics,"google-analytics_analytics.js":GoogleAnalytics,"googletagmanager-gtm":GoogleAnalytics,"ubo-googletagmanager_gtm.js":GoogleAnalytics,"googletagmanager_gtm.js":GoogleAnalytics,"google-analytics-ga":GoogleAnalyticsGa,"ubo-google-analytics_ga.js":GoogleAnalyticsGa,"google-analytics_ga.js":GoogleAnalyticsGa,"google-ima3":GoogleIma3,"ubo-google-ima.js":GoogleIma3,"google-ima.js":GoogleIma3,"googlesyndication-adsbygoogle":GoogleSyndicationAdsByGoogle,"ubo-googlesyndication_adsbygoogle.js":GoogleSyndicationAdsByGoogle,"googlesyndication_adsbygoogle.js":GoogleSyndicationAdsByGoogle,"googletagservices-gpt":GoogleTagServicesGpt,"ubo-googletagservices_gpt.js":GoogleTagServicesGpt,"googletagservices_gpt.js":GoogleTagServicesGpt,matomo:Matomo,"naver-wcslog":NaverWcslog,"pardot-1.0":Pardot,prebid:Prebid,"scorecardresearch-beacon":ScoreCardResearchBeacon,"ubo-scorecardresearch_beacon.js":ScoreCardResearchBeacon,"scorecardresearch_beacon.js":ScoreCardResearchBeacon,"abort-current-inline-script":abortCurrentInlineScript,"abort-current-script.js":abortCurrentInlineScript,"ubo-abort-current-script.js":abortCurrentInlineScript,"acs.js":abortCurrentInlineScript,"ubo-acs.js":abortCurrentInlineScript,"ubo-abort-current-script":abortCurrentInlineScript,"ubo-acs":abortCurrentInlineScript,"abort-current-inline-script.js":abortCurrentInlineScript,"ubo-abort-current-inline-script.js":abortCurrentInlineScript,"acis.js":abortCurrentInlineScript,"ubo-acis.js":abortCurrentInlineScript,"ubo-abort-current-inline-script":abortCurrentInlineScript,"ubo-acis":abortCurrentInlineScript,"abp-abort-current-inline-script":abortCurrentInlineScript,"abort-on-property-read":abortOnPropertyRead,"abort-on-property-read.js":abortOnPropertyRead,"ubo-abort-on-property-read.js":abortOnPropertyRead,"aopr.js":abortOnPropertyRead,"ubo-aopr.js":abortOnPropertyRead,"ubo-abort-on-property-read":abortOnPropertyRead,"ubo-aopr":abortOnPropertyRead,"abp-abort-on-property-read":abortOnPropertyRead,"abort-on-property-write":abortOnPropertyWrite,"abort-on-property-write.js":abortOnPropertyWrite,"ubo-abort-on-property-write.js":abortOnPropertyWrite,"aopw.js":abortOnPropertyWrite,"ubo-aopw.js":abortOnPropertyWrite,"ubo-abort-on-property-write":abortOnPropertyWrite,"ubo-aopw":abortOnPropertyWrite,"abp-abort-on-property-write":abortOnPropertyWrite,"abort-on-stack-trace":abortOnStackTrace,"abort-on-stack-trace.js":abortOnStackTrace,"ubo-abort-on-stack-trace.js":abortOnStackTrace,"aost.js":abortOnStackTrace,"ubo-aost.js":abortOnStackTrace,"ubo-abort-on-stack-trace":abortOnStackTrace,"ubo-aost":abortOnStackTrace,"abp-abort-on-stack-trace":abortOnStackTrace,"adjust-setInterval":adjustSetInterval,"nano-setInterval-booster.js":adjustSetInterval,"ubo-nano-setInterval-booster.js":adjustSetInterval,"nano-sib.js":adjustSetInterval,"ubo-nano-sib.js":adjustSetInterval,"adjust-setInterval.js":adjustSetInterval,"ubo-adjust-setInterval.js":adjustSetInterval,"ubo-nano-setInterval-booster":adjustSetInterval,"ubo-nano-sib":adjustSetInterval,"ubo-adjust-setInterval":adjustSetInterval,"adjust-setTimeout":adjustSetTimeout,"adjust-setTimeout.js":adjustSetTimeout,"ubo-adjust-setTimeout.js":adjustSetTimeout,"nano-setTimeout-booster.js":adjustSetTimeout,"ubo-nano-setTimeout-booster.js":adjustSetTimeout,"nano-stb.js":adjustSetTimeout,"ubo-nano-stb.js":adjustSetTimeout,"ubo-adjust-setTimeout":adjustSetTimeout,"ubo-nano-setTimeout-booster":adjustSetTimeout,"ubo-nano-stb":adjustSetTimeout,"call-nothrow":callNoThrow,"call-nothrow.js":callNoThrow,"ubo-call-nothrow.js":callNoThrow,"ubo-call-nothrow":callNoThrow,"debug-current-inline-script":debugCurrentInlineScript,"debug-on-property-read":debugOnPropertyRead,"debug-on-property-write":debugOnPropertyWrite,"dir-string":dirString,"disable-newtab-links":disableNewtabLinks,"disable-newtab-links.js":disableNewtabLinks,"ubo-disable-newtab-links.js":disableNewtabLinks,"ubo-disable-newtab-links":disableNewtabLinks,"evaldata-prune":evalDataPrune,"evaldata-prune.js":evalDataPrune,"ubo-evaldata-prune.js":evalDataPrune,"ubo-evaldata-prune":evalDataPrune,"close-window":forceWindowClose,"window-close-if.js":forceWindowClose,"ubo-window-close-if.js":forceWindowClose,"ubo-window-close-if":forceWindowClose,"close-window.js":forceWindowClose,"ubo-close-window.js":forceWindowClose,"ubo-close-window":forceWindowClose,"hide-in-shadow-dom":hideInShadowDom,"href-sanitizer":hrefSanitizer,"href-sanitizer.js":hrefSanitizer,"ubo-href-sanitizer.js":hrefSanitizer,"ubo-href-sanitizer":hrefSanitizer,"inject-css-in-shadow-dom":injectCssInShadowDom,"json-prune":jsonPrune,"json-prune.js":jsonPrune,"ubo-json-prune.js":jsonPrune,"ubo-json-prune":jsonPrune,"abp-json-prune":jsonPrune,"json-prune-fetch-response":jsonPruneFetchResponse,"json-prune-fetch-response.js":jsonPruneFetchResponse,"ubo-json-prune-fetch-response.js":jsonPruneFetchResponse,"ubo-json-prune-fetch-response":jsonPruneFetchResponse,"json-prune-xhr-response":jsonPruneXhrResponse,"json-prune-xhr-response.js":jsonPruneXhrResponse,"ubo-json-prune-xhr-response.js":jsonPruneXhrResponse,"ubo-json-prune-xhr-response":jsonPruneXhrResponse,log:log,"abp-log":log,"log-addEventListener":logAddEventListener,"addEventListener-logger.js":logAddEventListener,"ubo-addEventListener-logger.js":logAddEventListener,"aell.js":logAddEventListener,"ubo-aell.js":logAddEventListener,"ubo-addEventListener-logger":logAddEventListener,"ubo-aell":logAddEventListener,"log-eval":logEval,"log-on-stack-trace":logOnStacktrace,"m3u-prune":m3uPrune,"m3u-prune.js":m3uPrune,"ubo-m3u-prune.js":m3uPrune,"ubo-m3u-prune":m3uPrune,"metrika-yandex-tag":metrikaYandexTag,"metrika-yandex-watch":metrikaYandexWatch,"no-protected-audience":noProtectedAudience,"no-topics":noTopics,noeval:noeval,"noeval.js":noeval,"silent-noeval.js":noeval,"ubo-noeval.js":noeval,"ubo-silent-noeval.js":noeval,"ubo-noeval":noeval,"ubo-silent-noeval":noeval,nowebrtc:nowebrtc,"nowebrtc.js":nowebrtc,"ubo-nowebrtc.js":nowebrtc,"ubo-nowebrtc":nowebrtc,"prevent-addEventListener":preventAddEventListener,"addEventListener-defuser.js":preventAddEventListener,"ubo-addEventListener-defuser.js":preventAddEventListener,"aeld.js":preventAddEventListener,"ubo-aeld.js":preventAddEventListener,"ubo-addEventListener-defuser":preventAddEventListener,"ubo-aeld":preventAddEventListener,"abp-prevent-listener":preventAddEventListener,"prevent-adfly":preventAdfly,"adfly-defuser.js":preventAdfly,"ubo-adfly-defuser.js":preventAdfly,"ubo-adfly-defuser":preventAdfly,"prevent-bab":preventBab,"prevent-element-src-loading":preventElementSrcLoading,"prevent-eval-if":preventEvalIf,"noeval-if.js":preventEvalIf,"ubo-noeval-if.js":preventEvalIf,"ubo-noeval-if":preventEvalIf,"prevent-fab-3.2.0":preventFab,"nofab.js":preventFab,"ubo-nofab.js":preventFab,"fuckadblock.js-3.2.0":preventFab,"ubo-fuckadblock.js-3.2.0":preventFab,"ubo-nofab":preventFab,"prevent-fetch":preventFetch,"no-fetch-if.js":preventFetch,"ubo-no-fetch-if.js":preventFetch,"ubo-no-fetch-if":preventFetch,"prevent-popads-net":preventPopadsNet,"popads.net.js":preventPopadsNet,"ubo-popads.net.js":preventPopadsNet,"ubo-popads.net":preventPopadsNet,"prevent-refresh":preventRefresh,"prevent-refresh.js":preventRefresh,"refresh-defuser.js":preventRefresh,"refresh-defuser":preventRefresh,"ubo-prevent-refresh.js":preventRefresh,"ubo-prevent-refresh":preventRefresh,"ubo-refresh-defuser.js":preventRefresh,"ubo-refresh-defuser":preventRefresh,"prevent-requestAnimationFrame":preventRequestAnimationFrame,"no-requestAnimationFrame-if.js":preventRequestAnimationFrame,"ubo-no-requestAnimationFrame-if.js":preventRequestAnimationFrame,"norafif.js":preventRequestAnimationFrame,"ubo-norafif.js":preventRequestAnimationFrame,"ubo-no-requestAnimationFrame-if":preventRequestAnimationFrame,"ubo-norafif":preventRequestAnimationFrame,"prevent-setInterval":preventSetInterval,"no-setInterval-if.js":preventSetInterval,"ubo-no-setInterval-if.js":preventSetInterval,"setInterval-defuser.js":preventSetInterval,"ubo-setInterval-defuser.js":preventSetInterval,"nosiif.js":preventSetInterval,"ubo-nosiif.js":preventSetInterval,"sid.js":preventSetInterval,"ubo-sid.js":preventSetInterval,"ubo-no-setInterval-if":preventSetInterval,"ubo-setInterval-defuser":preventSetInterval,"ubo-nosiif":preventSetInterval,"ubo-sid":preventSetInterval,"prevent-setTimeout":preventSetTimeout,"no-setTimeout-if.js":preventSetTimeout,"ubo-no-setTimeout-if.js":preventSetTimeout,"nostif.js":preventSetTimeout,"ubo-nostif.js":preventSetTimeout,"ubo-no-setTimeout-if":preventSetTimeout,"ubo-nostif":preventSetTimeout,"setTimeout-defuser.js":preventSetTimeout,"ubo-setTimeout-defuser.js":preventSetTimeout,"ubo-setTimeout-defuser":preventSetTimeout,"std.js":preventSetTimeout,"ubo-std.js":preventSetTimeout,"ubo-std":preventSetTimeout,"prevent-window-open":preventWindowOpen,"window.open-defuser.js":preventWindowOpen,"ubo-window.open-defuser.js":preventWindowOpen,"ubo-window.open-defuser":preventWindowOpen,"nowoif.js":preventWindowOpen,"ubo-nowoif.js":preventWindowOpen,"ubo-nowoif":preventWindowOpen,"no-window-open-if.js":preventWindowOpen,"ubo-no-window-open-if.js":preventWindowOpen,"ubo-no-window-open-if":preventWindowOpen,"prevent-xhr":preventXHR,"no-xhr-if.js":preventXHR,"ubo-no-xhr-if.js":preventXHR,"ubo-no-xhr-if":preventXHR,"remove-attr":removeAttr,"remove-attr.js":removeAttr,"ubo-remove-attr.js":removeAttr,"ra.js":removeAttr,"ubo-ra.js":removeAttr,"ubo-remove-attr":removeAttr,"ubo-ra":removeAttr,"remove-class":removeClass,"remove-class.js":removeClass,"ubo-remove-class.js":removeClass,"rc.js":removeClass,"ubo-rc.js":removeClass,"ubo-remove-class":removeClass,"ubo-rc":removeClass,"remove-cookie":removeCookie,"cookie-remover.js":removeCookie,"ubo-cookie-remover.js":removeCookie,"ubo-cookie-remover":removeCookie,"remove-cookie.js":removeCookie,"ubo-remove-cookie.js":removeCookie,"ubo-remove-cookie":removeCookie,"abp-cookie-remover":removeCookie,"remove-in-shadow-dom":removeInShadowDom,"remove-node-text":removeNodeText,"remove-node-text.js":removeNodeText,"ubo-remove-node-text.js":removeNodeText,"rmnt.js":removeNodeText,"ubo-rmnt.js":removeNodeText,"ubo-remove-node-text":removeNodeText,"ubo-rmnt":removeNodeText,"set-attr":setAttr,"set-attr.js":setAttr,"ubo-set-attr.js":setAttr,"ubo-set-attr":setAttr,"set-constant":setConstant,"set-constant.js":setConstant,"ubo-set-constant.js":setConstant,"set.js":setConstant,"ubo-set.js":setConstant,"ubo-set-constant":setConstant,"ubo-set":setConstant,"abp-override-property-read":setConstant,"set-cookie":setCookie,"set-cookie.js":setCookie,"ubo-set-cookie.js":setCookie,"ubo-set-cookie":setCookie,"set-cookie-reload":setCookieReload,"set-cookie-reload.js":setCookieReload,"ubo-set-cookie-reload.js":setCookieReload,"ubo-set-cookie-reload":setCookieReload,"set-local-storage-item":setLocalStorageItem,"set-local-storage-item.js":setLocalStorageItem,"ubo-set-local-storage-item.js":setLocalStorageItem,"ubo-set-local-storage-item":setLocalStorageItem,"set-popads-dummy":setPopadsDummy,"popads-dummy.js":setPopadsDummy,"ubo-popads-dummy.js":setPopadsDummy,"ubo-popads-dummy":setPopadsDummy,"set-session-storage-item":setSessionStorageItem,"set-session-storage-item.js":setSessionStorageItem,"ubo-set-session-storage-item.js":setSessionStorageItem,"ubo-set-session-storage-item":setSessionStorageItem,"spoof-css":spoofCSS,"spoof-css.js":spoofCSS,"ubo-spoof-css.js":spoofCSS,"ubo-spoof-css":spoofCSS,"trusted-click-element":trustedClickElement,"trusted-create-element":trustedCreateElement,"trusted-dispatch-event":trustedDispatchEvent,"trusted-prune-inbound-object":trustedPruneInboundObject,"trusted-replace-fetch-response":trustedReplaceFetchResponse,"trusted-replace-node-text":trustedReplaceNodeText,"trusted-replace-outbound-text":trustedReplaceOutboundText,"trusted-replace-xhr-response":trustedReplaceXhrResponse,"trusted-set-attr":trustedSetAttr,"trusted-set-constant":trustedSetConstant,"trusted-set-cookie":trustedSetCookie,"trusted-set-cookie-reload":trustedSetCookieReload,"trusted-set-local-storage-item":trustedSetLocalStorageItem,"trusted-suppress-native-method":trustedSuppressNativeMethod,"xml-prune":xmlPrune,"xml-prune.js":xmlPrune,"ubo-xml-prune.js":xmlPrune,"ubo-xml-prune":xmlPrune};var getScriptletFunction=function getScriptletFunction(name){return scriptletsMap[name];}; /** * @typedef {object} Source Scriptlet properties. diff --git a/dist/umd/scriptlets.d.ts b/dist/umd/scriptlets.d.ts index 4d30f307..6e032f5a 100644 --- a/dist/umd/scriptlets.d.ts +++ b/dist/umd/scriptlets.d.ts @@ -35,9 +35,11 @@ declare module '@adguard/scriptlets' { verbose: boolean; /** - * Source rule text is used for debugging purposes + * Source rule text is used for debugging purposes. + * + * @deprecated since it is not used in the code anymore. */ - ruleText: string; + ruleText?: string; /** * Domain name, used to improve logging @@ -168,6 +170,14 @@ declare module '@adguard/scriptlets' { */ isAdgRedirectRule(rule: string): boolean; + /** + * Checks if the specified redirect resource is compatible with AdGuard + * + * @param redirectName - Redirect resource name to check + * @returns - true if the redirect resource is compatible with AdGuard + */ + isRedirectResourceCompatibleWithAdg(redirectName: string): boolean; + /** * Checks if the `rule` is **valid** AdGuard redirect resource rule * diff --git a/dist/umd/scriptlets.umd.js b/dist/umd/scriptlets.umd.js index 784d820d..caa8a2e1 100644 --- a/dist/umd/scriptlets.umd.js +++ b/dist/umd/scriptlets.umd.js @@ -1,7 +1,7 @@ /** * AdGuard Scriptlets - * Version 1.10.25 + * Version 1.11.1 */ (function (factory) { @@ -212,11 +212,11 @@ * if string contains valid regexp flags it will be converted to regexp with flags * TODO think about nested dependencies, but be careful with dependency loops * - * @param input literal string or regexp pattern; defaults to '' (empty string) + * @param rawInput literal string or regexp pattern; defaults to '' (empty string) * @returns regular expression; defaults to /.?/ */ - var toRegExp = function toRegExp() { - var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; + var toRegExp = function toRegExp(rawInput) { + var input = rawInput || ''; var DEFAULT_VALUE = '.?'; var FORWARD_SLASH = '/'; if (input === '') { @@ -975,21 +975,11 @@ try { var log = console.log.bind(console); var trace = console.trace.bind(console); - var prefix = source.ruleText || ''; + var prefix = ''; if (source.domainName) { - var AG_SCRIPTLET_MARKER = '#%#//'; - var UBO_SCRIPTLET_MARKER = '##+js'; - var ruleStartIndex; - if (source.ruleText.includes(AG_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(AG_SCRIPTLET_MARKER); - } else if (source.ruleText.includes(UBO_SCRIPTLET_MARKER)) { - ruleStartIndex = source.ruleText.indexOf(UBO_SCRIPTLET_MARKER); - } - // delete all domains from ruleText and leave just rule part - var rulePart = source.ruleText.slice(ruleStartIndex); - // prepare applied scriptlet rule for specific domain - prefix = "".concat(source.domainName).concat(rulePart); + prefix += "".concat(source.domainName); } + prefix += "#%#//scriptlet('".concat(source.name, "', '").concat(source.args.join(', '), "')"); log("".concat(prefix, " trace start")); if (trace) { trace(); @@ -2989,14 +2979,16 @@ * ``` * * - `selectors` — required, string with query selectors delimited by comma. The scriptlet supports `>>>` combinator to select elements inside open shadow DOM. For usage, see example below. - * - `extraMatch` — optional, extra condition to check on a page; allows to match `cookie` and `localStorage`; + * - `extraMatch` — optional, extra condition to check on a page; + * allows to match `cookie`, `localStorage` and specified text; * can be set as `name:key[=value]` where `value` is optional. * If `cookie`/`localStorage` starts with `!` then the element will only be clicked - * if specified cookie/localStorage item does not exist. + * if specified `cookie`/`localStorage` item does not exist. * Multiple conditions are allowed inside one `extraMatch` but they should be delimited by comma - * and each of them should match the syntax. Possible `name`s: + * and each of them should match the syntax. Possible `names`: * - `cookie` — test string or regex against cookies on a page * - `localStorage` — check if localStorage item is present + * - `containsText` — check if clicked element contains specified text * - `delay` — optional, time in ms to delay scriptlet execution, defaults to instant execution. * * @@ -3047,6 +3039,12 @@ * example.com#%#//scriptlet('trusted-click-element', 'button[name="agree"], input[type="submit"][value="akkoord"]', 'cookie:cmpconsent, localStorage:promo', '250') * ``` * + * 1. Click element only if clicked element contains text `Accept cookie` + * + * ```adblock + * example.com#%#//scriptlet('trusted-click-element', 'button', 'containsText:Accept cookie') + * ``` + * * 1. Click element only if cookie with name `cmpconsent` does not exist * * ```adblock @@ -3076,23 +3074,41 @@ if (!selectors) { return; } + var SHADOW_COMBINATOR = ' >>> '; var OBSERVER_TIMEOUT_MS = 10000; var THROTTLE_DELAY_MS = 20; var STATIC_CLICK_DELAY_MS = 150; var COOKIE_MATCH_MARKER = 'cookie:'; var LOCAL_STORAGE_MATCH_MARKER = 'localStorage:'; + var TEXT_MATCH_MARKER = 'containsText:'; var SELECTORS_DELIMITER = ','; var COOKIE_STRING_DELIMITER = ';'; // Regex to split match pairs by commas, avoiding the ones included in regexes - var EXTRA_MATCH_DELIMITER = /(,\s*){1}(?=!?cookie:|!?localStorage:)/; + var EXTRA_MATCH_DELIMITER = /(,\s*){1}(?=!?cookie:|!?localStorage:|containsText:)/; var sleep = function sleep(delayMs) { return new Promise(function (resolve) { return setTimeout(resolve, delayMs); }); }; + + // If shadow combinator is present in selector, then override attachShadow and set mode to 'open' + if (selectors.includes(SHADOW_COMBINATOR)) { + var attachShadowWrapper = function attachShadowWrapper(target, thisArg, argumentsList) { + var _argumentsList$; + var mode = (_argumentsList$ = argumentsList[0]) === null || _argumentsList$ === void 0 ? void 0 : _argumentsList$.mode; + if (mode === 'closed') { + argumentsList[0].mode = 'open'; + } + return Reflect.apply(target, thisArg, argumentsList); + }; + var attachShadowHandler = { + apply: attachShadowWrapper + }; + window.Element.prototype.attachShadow = new Proxy(window.Element.prototype.attachShadow, attachShadowHandler); + } var parsedDelay; if (delay) { - parsedDelay = parseInt(delay, 10); + parsedDelay = parseInt(String(delay), 10); var isValidDelay = !Number.isNaN(parsedDelay) || parsedDelay < OBSERVER_TIMEOUT_MS; if (!isValidDelay) { // eslint-disable-next-line max-len @@ -3104,6 +3120,7 @@ var canClick = !parsedDelay; var cookieMatches = []; var localStorageMatches = []; + var textMatches = ''; var isInvertedMatchCookie = false; var isInvertedMatchLocalStorage = false; if (extraMatch) { @@ -3130,6 +3147,12 @@ var localStorageMatch = _matchValue.replace(LOCAL_STORAGE_MATCH_MARKER, ''); localStorageMatches.push(localStorageMatch); } + if (matchStr.includes(TEXT_MATCH_MARKER)) { + var _parseMatchArg3 = parseMatchArg(matchStr), + _matchValue2 = _parseMatchArg3.matchValue; + var textMatch = _matchValue2.replace(TEXT_MATCH_MARKER, ''); + textMatches = textMatch; + } }); } if (cookieMatches.length > 0) { @@ -3145,8 +3168,8 @@ // on which cookie parsing will return cookieKey:undefined pair var valueMatch = parsedCookieMatches[key] ? toRegExp(parsedCookieMatches[key]) : null; var keyMatch = toRegExp(key); - return cookieKeys.some(function (key) { - var keysMatched = keyMatch.test(key); + return cookieKeys.some(function (cookieKey) { + var keysMatched = keyMatch.test(cookieKey); if (!keysMatched) { return false; } @@ -3155,7 +3178,11 @@ if (!valueMatch) { return true; } - return valueMatch.test(parsedCookies[key]); + var parsedCookieValue = parsedCookies[cookieKey]; + if (!parsedCookieValue) { + return false; + } + return valueMatch.test(parsedCookieValue); }); }); var shouldRun = cookiesMatched !== isInvertedMatchCookie; @@ -3173,6 +3200,22 @@ return; } } + var textMatchRegexp = textMatches ? toRegExp(textMatches) : null; + + /** + * Checks if an element contains the specified text. + * + * @param element - The element to check. + * @param matchRegexp - The text to match. + * @returns True if the element contains the specified text, otherwise false. + */ + var doesElementContainText = function doesElementContainText(element, matchRegexp) { + var textContent = element.textContent; + if (!textContent) { + return false; + } + return matchRegexp.test(textContent); + }; /** * Create selectors array and swap selectors to null on finding it's element @@ -3191,7 +3234,7 @@ clicked: false }; }; - var elementsSequence = Array(selectorsSequence.length).fill(createElementObj()); + var elementsSequence = Array(selectorsSequence.length).fill(createElementObj(null)); /** * Go through elementsSequence from left to right, clicking on found elements @@ -3213,6 +3256,9 @@ } // Skip already clicked elements if (!elementObj.clicked) { + if (textMatchRegexp && !doesElementContainText(elementObj.element, textMatchRegexp)) { + continue; + } elementObj.element.click(); elementObj.clicked = true; } @@ -3257,7 +3303,7 @@ // selectorsSequence should be modified after the loop to not break loop indexation selectorsSequence = selectorsSequence.map(function (selector) { - return fulfilledSelectors.includes(selector) ? null : selector; + return selector && fulfilledSelectors.includes(selector) ? null : selector; }); // Disconnect observer after finding all elements @@ -5838,7 +5884,7 @@ } var allowedValues = ['true', 'false']; var shouldCopyValue = value.startsWith('[') && value.endsWith(']'); - var isValidValue = value.length === 0 || !nativeIsNaN(parseInt(value, 10)) && parseInt(value, 10) > 0 && parseInt(value, 10) < 32767 || allowedValues.includes(value.toLowerCase()); + var isValidValue = value.length === 0 || !nativeIsNaN(parseInt(value, 10)) && parseInt(value, 10) >= 0 && parseInt(value, 10) <= 32767 || allowedValues.includes(value.toLowerCase()); if (!shouldCopyValue && !isValidValue) { logMessage(source, "Invalid attribute value provided: '".concat(convertTypeToString(value), "'")); return; @@ -11165,7 +11211,7 @@ * * ``` * - * v1.10.25. + * @added v1.10.25. */ function hrefSanitizer$1(source, selector) { @@ -11393,7 +11439,7 @@ * example.org#%#//scriptlet('json-prune-fetch-response') * ``` * - * v1.10.25. + * @added v1.10.25. */ function jsonPruneFetchResponse$1(source, propsToRemove, obligatoryProps) { var propsToMatch = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : ''; @@ -11466,7 +11512,7 @@ * example.org#%#//scriptlet('no-protected-audience') * ``` * - * v1.10.25. + * @added v1.10.25. */ function noProtectedAudience$1(source) { // Prevent XMLDocuments from being tampered with generic scriptlet rule @@ -11577,7 +11623,7 @@ * * * - * v1.10.25. + * @added v1.10.25. */ /* eslint-enable max-len */ function trustedSuppressNativeMethod$1(source, methodPath, signatureStr) { @@ -11753,7 +11799,7 @@ * example.org#%#//scriptlet('json-prune-xhr-response') * ``` * - * v1.10.25. + * @added v1.10.25. */ function jsonPruneXhrResponse$1(source, propsToRemove, obligatoryProps) { @@ -11949,6 +11995,321 @@ 'json-prune-xhr-response.js', 'ubo-json-prune-xhr-response.js', 'ubo-json-prune-xhr-response']; jsonPruneXhrResponse$1.injections = [hit, logMessage, toRegExp, jsonPruner, getPrunePath, objectToString$1, matchRequestProps, getXhrData, isPruningNeeded, matchStackTrace, getMatchPropsData, getRequestProps, isValidParsedData, parseMatchProps, isValidStrPattern, escapeRegExp, isEmptyObject, getWildcardPropertyInChain, shouldAbortInlineOrInjectedScript, getNativeRegexpTest]; + /** + * @trustedScriptlet trusted-dispatch-event + * + * @description + * Dispatches a custom event on a specified target. + * + * ### Syntax + * + * ```text + * example.org#%#//scriptlet('trusted-dispatch-event', event[, target]) + * ``` + * + * - `event` — required, name of the event to dispatch + * - `target` — optional, target on which event will be invoked. Possible values: + * - CSS selector — dispatch event on the element with the specified selector + * - `window` — dispatch event on the window object + * - if not set, then "document" is used — it's default value + * + * ### Examples + * + * 1. Dispatches a custom event "click" on the document. + * + * ```adblock + * example.org#%#//scriptlet('trusted-dispatch-event', 'click') + * ``` + * + * 2. Dispatches a custom event "submit" on the element with the class "test". + * + * ```adblock + * example.org#%#//scriptlet('trusted-dispatch-event', 'submit', '.test') + * ``` + * + * 3. Dispatches a custom event "load" on the window object. + * + * ```adblock + * example.org#%#//scriptlet('trusted-dispatch-event', 'load', 'window') + * ``` + * + * @added v1.11.1. + */ + + function trustedDispatchEvent$1(source, event, target) { + if (!event) { + return; + } + var hasBeenDispatched = false; + var eventTarget = document; + if (target === 'window') { + eventTarget = window; + } + var events = new Set(); + var dispatch = function dispatch() { + var customEvent = new Event(event); + if (typeof target === 'string' && target !== 'window') { + eventTarget = document.querySelector(target); + } + var isEventAdded = events.has(event); + if (!hasBeenDispatched && isEventAdded && eventTarget) { + hasBeenDispatched = true; + hit(source); + eventTarget.dispatchEvent(customEvent); + } + }; + var wrapper = function wrapper(eventListener, thisArg, args) { + var eventName = args[0]; + if (thisArg && eventName) { + events.add(eventName); + setTimeout(function () { + dispatch(); + }, 1); + } + return Reflect.apply(eventListener, thisArg, args); + }; + var handler = { + apply: wrapper + }; + EventTarget.prototype.addEventListener = new Proxy(EventTarget.prototype.addEventListener, handler); + } + trustedDispatchEvent$1.names = ['trusted-dispatch-event']; + trustedDispatchEvent$1.injections = [hit]; + + /* eslint-disable max-len */ + /** + * @trustedScriptlet trusted-replace-outbound-text + * + * @description + * Replace the text in the outbound function call. + * + * Related UBO scriptlet: + * https://github.com/gorhill/uBlock/commit/21e1ee30ee36c1b9a7a3c9f43ac97e52d8e79661 + * + * ### Syntax + * + * + * ```text + * example.org#%#//scriptlet('trusted-replace-outbound-text', methodPath[, textToReplace[, replacement[, decodeMethod[, stack[, logContent]]]]]) + * ``` + * + * + * - `methodPath` — required, the name of the function to trap, it must have an object as an argument. + * Call with only `methodPath` as an argument will log all text content of the specified function to console, + * but only if function call returns a string, otherwise it will log information that content is not a string. + * - `textToReplace` — optional, string or regular expression which should be replaced. + * By default it's set to `''`. If it's not set to other value and `logContent` is set, it will log the original content. + * - `replacement` — optional, string which replace the matched text. + * By default it's set to '', so matched content will removed. + * - `decodeMethod` — optional, string which specifies the method used to decode the content. + * For now supported value is 'base64'. By default it's set to `''` and no decoding is performed. + * If it's set and `logContent` is also set and `textToReplace` and `replacement` are not set, + * then it will log the decoded content. + * - `stack` — optional, string or regular expression that must match the current function call stack trace. + * If regular expression is invalid it will be skipped. + * - `logContent` — optional, if set to any value, the original and modified content will be logged. + * By default it's set to '' and no content will be logged. + * + * > Logging content may be useful for debugging but it is not allowed for prod versions of filter lists. + * + * ### Examples + * + * + * + * 1. Replace `foo` with 'bar' from the payload of the atob call: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob', 'foo', 'bar') + * ``` + * + * For instance, the following call will return `bar` + * + * ```html + * const text = btoa('foo'); + * atob(text); + * ``` + * + * 1. Replace `disable_ads:false` with 'disable_ads:true' from the payload of the `Array.prototype.join` if content is encoded in base64: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'Array.prototype.join', 'disable_ads:false', 'disable_ads:true', 'base64') + * ``` + * + * For instance, the following call will return `ZGlzYWJsZV9hZHM6dHJ1ZQ==` which is `'disable_ads:true'` after decoding + * + * ```html + * const arrayBase64 = ['ZGlzYWJsZV9h','ZHM6ZmFsc2U=']; // `ZGlzYWJsZV9hZHM6ZmFsc2U=` after decoding is `disable_ads:false` + * arrayBase64.join(''); + * ``` + * + * 1. Replace `"loadAds":true` with `"loadAds":false` from the payload of the JSON.stringify if the stack trace contains `testStackFunction`: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'JSON.stringify', '"loadAds":true', '"loadAds":false', '', 'testStackFunction') + * ``` + * + * For instance, the following call will return `'{"loadAds":false,"content":"bar"}'` + * + * ```html + * const testStackFunction = () => JSON.stringify({ loadAds: true, content: 'bar' }); + * testStackFunction(); + * ``` + * + * 1. Call with `decodeMethod` and `logContent` arguments will log original and decoded text content of the specified function: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'Array.prototype.join', '', '', 'base64' , '', 'true') + * ``` + * + * 1. Call with only first argument will log text content of the specified function: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob') + * ``` + * + * 1. Call with `logContent` argument will log original and modified text content of the specified function: + * + * ```adblock + * example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob', 'foo', 'bar', '', '', 'true') + * ``` + * + * + * + * @added v1.11.1. + */ + /* eslint-enable max-len */ + function trustedReplaceOutboundText$1(source, methodPath) { + var textToReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ''; + var replacement = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : ''; + var decodeMethod = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : ''; + var stack = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : ''; + var logContent = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : ''; + if (!methodPath) { + return; + } + var getPathParts = getPropertyInChain; + var _getPathParts = getPathParts(window, methodPath), + base = _getPathParts.base, + chain = _getPathParts.chain, + prop = _getPathParts.prop; + if (typeof chain !== 'undefined') { + logMessage(source, "Could not reach the end of the prop chain: ".concat(methodPath)); + return; + } + var nativeMethod = base[prop]; + if (!nativeMethod || typeof nativeMethod !== 'function') { + logMessage(source, "Could not retrieve the method: ".concat(methodPath)); + return; + } + + /** + * A simple check if a string is a valid base64 encoded string. + * If after decoding and encoding the string is not the same as the original string, + * then the string is not a valid base64 encoded string. + * + * @param str - The string to be checked. + * @returns A boolean indicating whether the string is a valid base64 encoded string. + */ + var isValidBase64 = function isValidBase64(str) { + try { + if (str === '') { + return false; + } + var decodedString = atob(str); + var encodedString = btoa(decodedString); + // Encoded string may contains padding characters, so it's necessary to remove it before comparison + var stringWithoutPadding = str.replace(/=+$/, ''); + var encodedStringWithoutPadding = encodedString.replace(/=+$/, ''); + return encodedStringWithoutPadding === stringWithoutPadding; + } catch (e) { + return false; + } + }; + + /** + * Decodes the content, replaces the matched pattern with the specified text replacement, + * and returns the modified content. + * If the decode method is not specified, then content is modified without decoding. + * + * @param content - The original content to be decoded and replaced. + * @param pattern - The regular expression pattern to match. + * @param textReplacement - The text to replace the matched pattern. + * @param decode - The method used to decode the content. For now only supported value is 'base64'. + * @param log - The string, if set, decoded content should be logged. + * @returns The content after modifying. + */ + var decodeAndReplaceContent = function decodeAndReplaceContent(content, pattern, textReplacement, decode, log) { + switch (decode) { + case 'base64': + try { + if (!isValidBase64(content)) { + logMessage(source, "Text content is not a valid base64 encoded string: ".concat(content)); + return content; + } + var decodedContent = atob(content); + if (log) { + logMessage(source, "Decoded text content: ".concat(decodedContent)); + } + var modifiedContent = textToReplace ? decodedContent.replace(pattern, textReplacement) : decodedContent; + if (log) { + var message = modifiedContent !== decodedContent ? "Modified decoded text content: ".concat(modifiedContent) : 'Decoded text content was not modified'; + logMessage(source, message); + } + var encodedContent = btoa(modifiedContent); + return encodedContent; + } catch (e) { + return content; + } + default: + return content.replace(pattern, textReplacement); + } + }; + var logOriginalContent = !textToReplace || !!logContent; + var logModifiedContent = !!logContent; + var logDecodedContent = !!decodeMethod && !!logContent; + + // This flag allows to prevent infinite loops when trapping props that are used by scriptlet's own code. + var isMatchingSuspended = false; + var objectWrapper = function objectWrapper(target, thisArg, argumentsList) { + if (isMatchingSuspended) { + return Reflect.apply(target, thisArg, argumentsList); + } + isMatchingSuspended = true; + hit(source); + var result = Reflect.apply(target, thisArg, argumentsList); + if (stack && !matchStackTrace(stack, new Error().stack || '')) { + return result; + } + if (typeof result === 'string') { + if (logOriginalContent) { + logMessage(source, "Original text content: ".concat(result)); + } + var patternRegexp = toRegExp(textToReplace); + var modifiedContent = textToReplace || logDecodedContent ? decodeAndReplaceContent(result, patternRegexp, replacement, decodeMethod, logContent) : result; + if (logModifiedContent) { + var message = modifiedContent !== result ? "Modified text content: ".concat(modifiedContent) : 'Text content was not modified'; + logMessage(source, message); + } + isMatchingSuspended = false; + return modifiedContent; + } + isMatchingSuspended = false; + logMessage(source, 'Content is not a string'); + return result; + }; + var objectHandler = { + apply: objectWrapper + }; + base[prop] = new Proxy(nativeMethod, objectHandler); + } + trustedReplaceOutboundText$1.names = ['trusted-replace-outbound-text' + // trusted scriptlets support no aliases + ]; + + trustedReplaceOutboundText$1.injections = [hit, matchStackTrace, getPropertyInChain, getWildcardPropertyInChain, logMessage, + // following helpers are needed for helpers above + shouldAbortInlineOrInjectedScript, getNativeRegexpTest, toRegExp, isEmptyObject]; + /** * @redirect amazon-apstag * @@ -14132,9 +14493,11 @@ spoofCSS: spoofCSS$1, trustedClickElement: trustedClickElement$1, trustedCreateElement: trustedCreateElement$1, + trustedDispatchEvent: trustedDispatchEvent$1, trustedPruneInboundObject: trustedPruneInboundObject$1, trustedReplaceFetchResponse: trustedReplaceFetchResponse$1, trustedReplaceNodeText: trustedReplaceNodeText$1, + trustedReplaceOutboundText: trustedReplaceOutboundText$1, trustedReplaceXhrResponse: trustedReplaceXhrResponse$1, trustedSetAttr: trustedSetAttr$1, trustedSetConstant: trustedSetConstant$1, @@ -14669,6 +15032,16 @@ return isRedirectRuleByType(rule, RedirectRuleType.ValidAdg); }; + /** + * Checks if the specified redirect resource is compatible with AdGuard + * + * @param redirectName - Redirect resource name to check + * @returns - true if the redirect resource is compatible with AdGuard + */ + var isRedirectResourceCompatibleWithAdg = function isRedirectResourceCompatibleWithAdg(redirectName) { + return Object.keys(validAdgCompatibility).includes(redirectName); + }; + /** * Checks if the AdGuard redirect `rule` has Ubo analog. Needed for Adg->Ubo conversion * @@ -14744,6 +15117,7 @@ ABSENT_SOURCE_TYPE_REPLACEMENT, isAdgRedirectRule, isValidAdgRedirectRule, + isRedirectResourceCompatibleWithAdg, isAdgRedirectCompatibleWithUbo, isUboRedirectCompatibleWithAdg, isAbpRedirectCompatibleWithAdg, @@ -15305,7 +15679,7 @@ * @param modifiers rule modifiers * @param redirectsData validator.REDIRECT_RULE_TYPES.(UBO|ADG) * @param rule rule string - * @returns merker data object + * @returns marker data object */ var getMarkerData = function getMarkerData(modifiers, redirectsData, rule) { var redirectRuleMarker = redirectsData.redirectRuleMarker, @@ -19130,6 +19504,7 @@ getCode: getRedirectCode, isAdgRedirectRule: validator.isAdgRedirectRule, isValidAdgRedirectRule: validator.isValidAdgRedirectRule, + isRedirectResourceCompatibleWithAdg: validator.isRedirectResourceCompatibleWithAdg, isAdgRedirectCompatibleWithUbo: validator.isAdgRedirectCompatibleWithUbo, isUboRedirectCompatibleWithAdg: validator.isUboRedirectCompatibleWithAdg, isAbpRedirectCompatibleWithAdg: validator.isAbpRedirectCompatibleWithAdg, @@ -19140,9 +19515,9 @@ convertAdgRedirectToUbo }; - var version = "1.10.25"; + var version = "1.11.1"; - function AmazonApstag(source,args){function AmazonApstag(source){var apstagWrapper={fetchBids(a,b){if(typeof b==="function"){b([]);}},init:noopFunc,setDisplayBids:noopFunc,targetingKeys:noopFunc};window.apstag=apstagWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{AmazonApstag.apply(this,updatedArgs);}catch(e){console.log(e);}}function DidomiLoader(source,args){function DidomiLoader(source){function UserConsentStatusForVendorSubscribe(){}UserConsentStatusForVendorSubscribe.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendorSubscribe.prototype.subscribe=noopFunc;function UserConsentStatusForVendor(){}UserConsentStatusForVendor.prototype.first=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendor.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendor.prototype.subscribe=noopFunc;var DidomiWrapper={isConsentRequired:falseFunc,getUserConsentStatusForPurpose:trueFunc,getUserConsentStatus:trueFunc,getUserStatus:noopFunc,getRequiredPurposes:noopArray,getUserConsentStatusForVendor:trueFunc,Purposes:{Cookies:"cookies"},notice:{configure:noopFunc,hide:noopFunc,isVisible:falseFunc,show:noopFunc,showDataProcessing:trueFunc},isUserConsentStatusPartial:falseFunc,on(){return {actions:{},emitter:{},services:{},store:{}};},shouldConsentBeCollected:falseFunc,getUserConsentStatusForAll:noopFunc,getObservableOnUserConsentStatusForVendor(){return new UserConsentStatusForVendor();}};window.Didomi=DidomiWrapper;var didomiStateWrapper={didomiExperimentId:"",didomiExperimentUserGroup:"",didomiGDPRApplies:1,didomiIABConsent:"",didomiPurposesConsent:"",didomiPurposesConsentDenied:"",didomiPurposesConsentUnknown:"",didomiVendorsConsent:"",didomiVendorsConsentDenied:"",didomiVendorsConsentUnknown:"",didomiVendorsRawConsent:"",didomiVendorsRawConsentDenied:"",didomiVendorsRawConsentUnknown:""};window.didomiState=didomiStateWrapper;var tcData={eventStatus:"tcloaded",gdprApplies:false,listenerId:noopFunc,vendor:{consents:[]},purpose:{consents:[]}};var __tcfapiWrapper=function __tcfapiWrapper(command,version,callback){if(typeof callback!=="function"||command==="removeEventListener"){return;}callback(tcData,true);};window.__tcfapi=__tcfapiWrapper;var didomiEventListenersWrapper={stub:true,push:noopFunc};window.didomiEventListeners=didomiEventListenersWrapper;var didomiOnReadyWrapper={stub:true,push(arg){if(typeof arg!=="function"){return;}if(document.readyState!=="complete"){window.addEventListener("load",function(){setTimeout(arg(window.Didomi));});}else {setTimeout(arg(window.Didomi));}}};window.didomiOnReady=window.didomiOnReady||didomiOnReadyWrapper;if(Array.isArray(window.didomiOnReady)){window.didomiOnReady.forEach(function(arg){if(typeof arg==="function"){try{setTimeout(arg(window.Didomi));}catch(e){}}});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopArray(){return [];}function trueFunc(){return true;}function falseFunc(){return false;}var updatedArgs=args?[].concat(source).concat(args):[source];try{DidomiLoader.apply(this,updatedArgs);}catch(e){console.log(e);}}function Fingerprintjs2(source,args){function Fingerprintjs2(source){var browserId="";for(var i=0;i<8;i+=1){browserId+=(Math.random()*65536+4096).toString(16).slice(-4);}var Fingerprint2=function Fingerprint2(){};Fingerprint2.get=function(options,callback){if(!callback){callback=options;}setTimeout(function(){if(callback){callback(browserId,[]);}},1);};Fingerprint2.prototype={get:Fingerprint2.get};window.Fingerprint2=Fingerprint2;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{Fingerprintjs2.apply(this,updatedArgs);}catch(e){console.log(e);}}function Fingerprintjs3(source,args){function Fingerprintjs3(source){var visitorId=function(){var id="";for(var i=0;i<8;i+=1){id+=(Math.random()*65536+4096).toString(16).slice(-4);}return id;}();var FingerprintJS=function FingerprintJS(){};FingerprintJS.prototype={load(){return Promise.resolve(new FingerprintJS());},get(){return Promise.resolve({visitorId:visitorId});},hashComponents:noopStr};window.FingerprintJS=new FingerprintJS();hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{Fingerprintjs3.apply(this,updatedArgs);}catch(e){console.log(e);}}function Gemius(source,args){function Gemius(source){var GemiusPlayer=function GemiusPlayer(){};GemiusPlayer.prototype={setVideoObject:noopFunc,newProgram:noopFunc,programEvent:noopFunc,newAd:noopFunc,adEvent:noopFunc};window.GemiusPlayer=GemiusPlayer;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{Gemius.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleAnalytics(source,args){function GoogleAnalytics(source){var _window$googleAnalyti;var Tracker=function Tracker(){};var proto=Tracker.prototype;proto.get=noopFunc;proto.set=noopFunc;proto.send=noopFunc;var googleAnalyticsName=window.GoogleAnalyticsObject||"ga";var queue=(_window$googleAnalyti=window[googleAnalyticsName])===null||_window$googleAnalyti===void 0?void 0:_window$googleAnalyti.q;function ga(a){var len=arguments.length;if(len===0){return;}var lastArg=arguments[len-1];var replacer;if(lastArg instanceof Object&&lastArg!==null&&typeof lastArg.hitCallback==="function"){replacer=lastArg.hitCallback;}else if(typeof lastArg==="function"){replacer=function replacer(){lastArg(ga.create());};}try{setTimeout(replacer,1);}catch(ex){}}ga.create=function(){return new Tracker();};ga.getByName=function(){return new Tracker();};ga.getAll=function(){return [new Tracker()];};ga.remove=noopFunc;ga.loaded=true;window[googleAnalyticsName]=ga;if(Array.isArray(queue)){var push=function push(arg){ga(...arg);};queue.push=push;queue.forEach(push);}var _window=window,dataLayer=_window.dataLayer,google_optimize=_window.google_optimize;if(dataLayer instanceof Object===false){return;}if(dataLayer.hide instanceof Object&&typeof dataLayer.hide.end==="function"){dataLayer.hide.end();}var handleCallback=function handleCallback(dataObj,funcName){if(dataObj&&typeof dataObj[funcName]==="function"){setTimeout(dataObj[funcName]);}};if(typeof dataLayer.push==="function"){dataLayer.push=function(data){if(data instanceof Object){handleCallback(data,"eventCallback");for(var key in data){handleCallback(data[key],"event_callback");}if(!data.hasOwnProperty("eventCallback")&&!data.hasOwnProperty("eventCallback")){[].push.call(window.dataLayer,data);}}if(Array.isArray(data)){data.forEach(function(arg){handleCallback(arg,"callback");});}return noopFunc;};}if(google_optimize instanceof Object&&typeof google_optimize.get==="function"){var googleOptimizeWrapper={get:noopFunc};window.google_optimize=googleOptimizeWrapper;}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleAnalytics.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleAnalyticsGa(source,args){function GoogleAnalyticsGa(source){function Gaq(){}Gaq.prototype.Na=noopFunc;Gaq.prototype.O=noopFunc;Gaq.prototype.Sa=noopFunc;Gaq.prototype.Ta=noopFunc;Gaq.prototype.Va=noopFunc;Gaq.prototype._createAsyncTracker=noopFunc;Gaq.prototype._getAsyncTracker=noopFunc;Gaq.prototype._getPlugin=noopFunc;Gaq.prototype.push=function(data){if(typeof data==="function"){data();return;}if(Array.isArray(data)===false){return;}if(typeof data[0]==="string"&&/(^|\.)_link$/.test(data[0])&&typeof data[1]==="string"){window.location.assign(data[1]);}if(data[0]==="_set"&&data[1]==="hitCallback"&&typeof data[2]==="function"){data[2]();}};var gaq=new Gaq();var asyncTrackers=window._gaq||[];if(Array.isArray(asyncTrackers)){while(asyncTrackers[0]){gaq.push(asyncTrackers.shift());}}window._gaq=gaq.qf=gaq;function Gat(){}var api=["_addIgnoredOrganic","_addIgnoredRef","_addItem","_addOrganic","_addTrans","_clearIgnoredOrganic","_clearIgnoredRef","_clearOrganic","_cookiePathCopy","_deleteCustomVar","_getName","_setAccount","_getAccount","_getClientInfo","_getDetectFlash","_getDetectTitle","_getLinkerUrl","_getLocalGifPath","_getServiceMode","_getVersion","_getVisitorCustomVar","_initData","_link","_linkByPost","_setAllowAnchor","_setAllowHash","_setAllowLinker","_setCampContentKey","_setCampMediumKey","_setCampNameKey","_setCampNOKey","_setCampSourceKey","_setCampTermKey","_setCampaignCookieTimeout","_setCampaignTrack","_setClientInfo","_setCookiePath","_setCookiePersistence","_setCookieTimeout","_setCustomVar","_setDetectFlash","_setDetectTitle","_setDomainName","_setLocalGifPath","_setLocalRemoteServerMode","_setLocalServerMode","_setReferrerOverride","_setRemoteServerMode","_setSampleRate","_setSessionTimeout","_setSiteSpeedSampleRate","_setSessionCookieTimeout","_setVar","_setVisitorCookieTimeout","_trackEvent","_trackPageLoadTime","_trackPageview","_trackSocial","_trackTiming","_trackTrans","_visitCode"];var tracker=api.reduce(function(res,funcName){res[funcName]=noopFunc;return res;},{});tracker._getLinkerUrl=function(a){return a;};tracker._link=function(url){if(typeof url!=="string"){return;}try{window.location.assign(url);}catch(e){logMessage(source,e);}};Gat.prototype._anonymizeIP=noopFunc;Gat.prototype._createTracker=noopFunc;Gat.prototype._forceSSL=noopFunc;Gat.prototype._getPlugin=noopFunc;Gat.prototype._getTracker=function(){return tracker;};Gat.prototype._getTrackerByName=function(){return tracker;};Gat.prototype._getTrackers=noopFunc;Gat.prototype.aa=noopFunc;Gat.prototype.ab=noopFunc;Gat.prototype.hb=noopFunc;Gat.prototype.la=noopFunc;Gat.prototype.oa=noopFunc;Gat.prototype.pa=noopFunc;Gat.prototype.u=noopFunc;var gat=new Gat();window._gat=gat;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleAnalyticsGa.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleIma3(source,args){function GoogleIma3(source){var _window$google$ima;var VERSION="3.453.0";var ima={};var AdDisplayContainer=function AdDisplayContainer(containerElement){var divElement=document.createElement("div");divElement.style.setProperty("display","none","important");divElement.style.setProperty("visibility","collapse","important");if(containerElement){containerElement.appendChild(divElement);}};AdDisplayContainer.prototype.destroy=noopFunc;AdDisplayContainer.prototype.initialize=noopFunc;var ImaSdkSettings=function ImaSdkSettings(){};ImaSdkSettings.CompanionBackfillMode={ALWAYS:"always",ON_MASTER_AD:"on_master_ad"};ImaSdkSettings.VpaidMode={DISABLED:0,ENABLED:1,INSECURE:2};ImaSdkSettings.prototype={c:true,f:{},i:false,l:"",p:"",r:0,t:"",v:"",getCompanionBackfill:noopFunc,getDisableCustomPlaybackForIOS10Plus(){return this.i;},getDisabledFlashAds:function getDisabledFlashAds(){return true;},getFeatureFlags(){return this.f;},getLocale(){return this.l;},getNumRedirects(){return this.r;},getPlayerType(){return this.t;},getPlayerVersion(){return this.v;},getPpid(){return this.p;},getVpaidMode(){return this.C;},isCookiesEnabled(){return this.c;},isVpaidAdapter(){return this.M;},setCompanionBackfill:noopFunc,setAutoPlayAdBreaks(a){this.K=a;},setCookiesEnabled(c){this.c=!!c;},setDisableCustomPlaybackForIOS10Plus(i){this.i=!!i;},setDisableFlashAds:noopFunc,setFeatureFlags(f){this.f=!!f;},setIsVpaidAdapter(a){this.M=a;},setLocale(l){this.l=!!l;},setNumRedirects(r){this.r=!!r;},setPageCorrelator(a){this.R=a;},setPlayerType(t){this.t=!!t;},setPlayerVersion(v){this.v=!!v;},setPpid(p){this.p=!!p;},setVpaidMode(a){this.C=a;},setSessionId:noopFunc,setStreamCorrelator:noopFunc,setVpaidAllowed:noopFunc,CompanionBackfillMode:{ALWAYS:"always",ON_MASTER_AD:"on_master_ad"},VpaidMode:{DISABLED:0,ENABLED:1,INSECURE:2}};var EventHandler=function EventHandler(){this.listeners=new Map();this._dispatch=function(e){var listeners=this.listeners.get(e.type);listeners=listeners?listeners.values():[];for(var _i=0,_Array$from=Array.from(listeners);_i<_Array$from.length;_i++){var listener=_Array$from[_i];try{listener(e);}catch(r){logMessage(source,r);}}};this.addEventListener=function(types,callback,options,context){if(!Array.isArray(types)){types=[types];}for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleIma3.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleSyndicationAdsByGoogle(source,args){function GoogleSyndicationAdsByGoogle(source){window.adsbygoogle={loaded:true,push(arg){if(typeof this.length==="undefined"){this.length=0;this.length+=1;}if(arg!==null&&arg instanceof Object&&arg.constructor.name==="Object"){for(var _i=0,_Object$keys=Object.keys(arg);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];if(typeof arg[key]==="function"){try{arg[key].call(this,{});}catch(_unused){}}}}}};var adElems=document.querySelectorAll(".adsbygoogle");var css="height:1px!important;max-height:1px!important;max-width:1px!important;width:1px!important;";var statusAttrName="data-adsbygoogle-status";var ASWIFT_IFRAME_MARKER="aswift_";var GOOGLE_ADS_IFRAME_MARKER="google_ads_iframe_";var executed=false;for(var i=0;i0){areIframesDefined=childNodesQuantity===2&&adElemChildNodes[0].nodeName.toLowerCase()==="iframe"&&adElemChildNodes[0].id.includes(ASWIFT_IFRAME_MARKER)&&adElemChildNodes[1].nodeName.toLowerCase()==="iframe"&&adElemChildNodes[1].id.includes(GOOGLE_ADS_IFRAME_MARKER);}if(!areIframesDefined){adElems[i].setAttribute(statusAttrName,"done");var aswiftIframe=document.createElement("iframe");aswiftIframe.id="".concat(ASWIFT_IFRAME_MARKER).concat(i);aswiftIframe.style=css;adElems[i].appendChild(aswiftIframe);var innerAswiftIframe=document.createElement("iframe");aswiftIframe.contentWindow.document.body.appendChild(innerAswiftIframe);var googleadsIframe=document.createElement("iframe");googleadsIframe.id="".concat(GOOGLE_ADS_IFRAME_MARKER).concat(i);googleadsIframe.style=css;adElems[i].appendChild(googleadsIframe);var innerGoogleadsIframe=document.createElement("iframe");googleadsIframe.contentWindow.document.body.appendChild(innerGoogleadsIframe);executed=true;}}if(executed){hit(source);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleSyndicationAdsByGoogle.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleTagServicesGpt(source,args){function GoogleTagServicesGpt(source){var slots=new Map();var slotsById=new Map();var slotsPerPath=new Map();var slotCreatives=new Map();var eventCallbacks=new Map();var gTargeting=new Map();var addEventListener=function addEventListener(name,listener){if(!eventCallbacks.has(name)){eventCallbacks.set(name,new Set());}eventCallbacks.get(name).add(listener);return this;};var removeEventListener=function removeEventListener(name,listener){if(eventCallbacks.has(name)){return eventCallbacks.get(name).delete(listener);}return false;};var fireSlotEvent=function fireSlotEvent(name,slot){return new Promise(function(resolve){requestAnimationFrame(function(){var size=[0,0];var callbacksSet=eventCallbacks.get(name)||[];var callbackArray=Array.from(callbacksSet);for(var i=0;i";f.style="position:absolute; width:0; height:0; left:0; right:0; z-index:-1; border:0";f.setAttribute("width",0);f.setAttribute("height",0);f.setAttribute("data-load-complete",true);f.setAttribute("data-google-container-id",true);f.setAttribute("sandbox","");node.appendChild(f);}};var displaySlot=function displaySlot(slot){if(!slot){return;}var id=slot.getSlotElementId();if(!document.getElementById(id)){return;}var parent=document.getElementById(id);if(parent){parent.appendChild(document.createElement("div"));}emptySlotElement(slot);recreateIframeForSlot(slot);fireSlotEvent("slotRenderEnded",slot);fireSlotEvent("slotRequested",slot);fireSlotEvent("slotResponseReceived",slot);fireSlotEvent("slotOnload",slot);fireSlotEvent("impressionViewable",slot);};var companionAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,enableSyncLoading:noopFunc,setRefreshUnfilledSlots:noopFunc,getSlots:noopArray};var contentService={addEventListener:addEventListener,removeEventListener:removeEventListener,setContent:noopFunc};function PassbackSlot(){}PassbackSlot.prototype.display=noopFunc;PassbackSlot.prototype.get=noopNull;PassbackSlot.prototype.set=noopThis;PassbackSlot.prototype.setClickUrl=noopThis;PassbackSlot.prototype.setTagForChildDirectedTreatment=noopThis;PassbackSlot.prototype.setTargeting=noopThis;PassbackSlot.prototype.updateTargetingFromMap=noopThis;function SizeMappingBuilder(){}SizeMappingBuilder.prototype.addSize=noopThis;SizeMappingBuilder.prototype.build=noopNull;var getTargetingValue=function getTargetingValue(v){if(typeof v==="string"){return [v];}try{return Array.prototype.flat.call(v);}catch(_unused){}return [];};var updateTargeting=function updateTargeting(targeting,map){if(typeof map==="object"){for(var key in map){if(Object.prototype.hasOwnProperty.call(map,key)){targeting.set(key,getTargetingValue(map[key]));}}}};var defineSlot=function defineSlot(adUnitPath,creatives,optDiv){if(slotsById.has(optDiv)){var _document$getElementB2;(_document$getElementB2=document.getElementById(optDiv))===null||_document$getElementB2===void 0?void 0:_document$getElementB2.remove();return slotsById.get(optDiv);}var attributes=new Map();var targeting=new Map();var exclusions=new Set();var response={advertiserId:undefined,campaignId:undefined,creativeId:undefined,creativeTemplateId:undefined,lineItemId:undefined};var sizes=[{getHeight:function getHeight(){return 2;},getWidth:function getWidth(){return 2;}}];var num=(slotsPerPath.get(adUnitPath)||0)+1;slotsPerPath.set(adUnitPath,num);var id="".concat(adUnitPath,"_").concat(num);var clickUrl="";var collapseEmptyDiv=null;var services=new Set();var slot={addService(e){services.add(e);return slot;},clearCategoryExclusions:noopThis,clearTargeting(k){if(k===undefined){targeting.clear();}else {targeting.delete(k);}},defineSizeMapping(mapping){slotCreatives.set(optDiv,mapping);return this;},get:function get(k){return attributes.get(k);},getAdUnitPath:function getAdUnitPath(){return adUnitPath;},getAttributeKeys:function getAttributeKeys(){return Array.from(attributes.keys());},getCategoryExclusions:function getCategoryExclusions(){return Array.from(exclusions);},getClickUrl:function getClickUrl(){return clickUrl;},getCollapseEmptyDiv:function getCollapseEmptyDiv(){return collapseEmptyDiv;},getContentUrl:function getContentUrl(){return "";},getDivStartsCollapsed:function getDivStartsCollapsed(){return null;},getDomId:function getDomId(){return optDiv;},getEscapedQemQueryId:function getEscapedQemQueryId(){return "";},getFirstLook:function getFirstLook(){return 0;},getId:function getId(){return id;},getHtml:function getHtml(){return "";},getName:function getName(){return id;},getOutOfPage:function getOutOfPage(){return false;},getResponseInformation:function getResponseInformation(){return response;},getServices:function getServices(){return Array.from(services);},getSizes:function getSizes(){return sizes;},getSlotElementId:function getSlotElementId(){return optDiv;},getSlotId:function getSlotId(){return slot;},getTargeting:function getTargeting(k){return targeting.get(k)||gTargeting.get(k)||[];},getTargetingKeys:function getTargetingKeys(){return Array.from(new Set(Array.of(...gTargeting.keys(),...targeting.keys())));},getTargetingMap:function getTargetingMap(){return Object.assign(Object.fromEntries(gTargeting.entries()),Object.fromEntries(targeting.entries()));},set(k,v){attributes.set(k,v);return slot;},setCategoryExclusion(e){exclusions.add(e);return slot;},setClickUrl(u){clickUrl=u;return slot;},setCollapseEmptyDiv(v){collapseEmptyDiv=!!v;return slot;},setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting(k,v){targeting.set(k,getTargetingValue(v));return slot;},toString:function toString(){return id;},updateTargetingFromMap(map){updateTargeting(targeting,map);return slot;}};slots.set(adUnitPath,slot);slotsById.set(optDiv,slot);slotCreatives.set(optDiv,creatives);return slot;};var pubAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,clear:noopFunc,clearCategoryExclusions:noopThis,clearTagForChildDirectedTreatment:noopThis,clearTargeting(k){if(k===undefined){gTargeting.clear();}else {gTargeting.delete(k);}},collapseEmptyDivs:noopFunc,defineOutOfPagePassback(){return new PassbackSlot();},definePassback(){return new PassbackSlot();},disableInitialLoad:noopFunc,display:noopFunc,enableAsyncRendering:noopFunc,enableLazyLoad:noopFunc,enableSingleRequest:noopFunc,enableSyncRendering:noopFunc,enableVideoAds:noopFunc,get:noopNull,getAttributeKeys:noopArray,getTargeting:noopArray,getTargetingKeys:noopArray,getSlots:noopArray,isInitialLoadDisabled:trueFunc,refresh:noopFunc,set:noopThis,setCategoryExclusion:noopThis,setCentering:noopFunc,setCookieOptions:noopThis,setForceSafeFrame:noopThis,setLocation:noopThis,setPrivacySettings:noopThis,setPublisherProvidedId:noopThis,setRequestNonPersonalizedAds:noopThis,setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting:noopThis,setVideoContent:noopThis,updateCorrelator:noopFunc};var _window=window,_window$googletag=_window.googletag,googletag=_window$googletag===void 0?{}:_window$googletag;var _googletag$cmd=googletag.cmd,cmd=_googletag$cmd===void 0?[]:_googletag$cmd;googletag.apiReady=true;googletag.cmd=[];googletag.cmd.push=function(a){try{a();}catch(ex){}return 1;};googletag.companionAds=function(){return companionAdsService;};googletag.content=function(){return contentService;};googletag.defineOutOfPageSlot=defineSlot;googletag.defineSlot=defineSlot;googletag.destroySlots=function(){slots.clear();slotsById.clear();};googletag.disablePublisherConsole=noopFunc;googletag.display=function(arg){var id;if(arg!==null&&arg!==void 0&&arg.getSlotElementId){id=arg.getSlotElementId();}else if(arg!==null&&arg!==void 0&&arg.nodeType){id=arg.id;}else {id=String(arg);}displaySlot(slotsById.get(id));};googletag.enableServices=noopFunc;googletag.getVersion=noopStr;googletag.pubads=function(){return pubAdsService;};googletag.pubadsReady=true;googletag.setAdIframeTitle=noopFunc;googletag.sizeMapping=function(){return new SizeMappingBuilder();};window.googletag=googletag;while(cmd.length!==0){googletag.cmd.push(cmd.shift());}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopThis(){return this;}function noopNull(){return null;}function noopArray(){return [];}function noopStr(){return "";}function trueFunc(){return true;}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleTagServicesGpt.apply(this,updatedArgs);}catch(e){console.log(e);}}function Matomo(source,args){function Matomo(source){var Tracker=function Tracker(){};Tracker.prototype.setDoNotTrack=noopFunc;Tracker.prototype.setDomains=noopFunc;Tracker.prototype.setCustomDimension=noopFunc;Tracker.prototype.trackPageView=noopFunc;var AsyncTracker=function AsyncTracker(){};AsyncTracker.prototype.addListener=noopFunc;var matomoWrapper={getTracker:Tracker,getAsyncTracker:AsyncTracker};window.Piwik=matomoWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{Matomo.apply(this,updatedArgs);}catch(e){console.log(e);}}function NaverWcslog(source,args){function NaverWcslog(source){window.wcs_add={};window.wcs_do=noopFunc;window.wcs={inflow:noopFunc};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{NaverWcslog.apply(this,updatedArgs);}catch(e){console.log(e);}}function Pardot(source,args){function Pardot(source){window.piVersion="1.0.2";window.piScriptNum=0;window.piScriptObj=[];window.checkNamespace=noopFunc;window.getPardotUrl=noopStr;window.piGetParameter=noopNull;window.piSetCookie=noopFunc;window.piGetCookie=noopStr;function piTracker(){window.pi={tracker:{visitor_id:"",visitor_id_sign:"",pi_opt_in:"",campaign_id:""}};window.piScriptNum+=1;}window.piResponse=noopFunc;window.piTracker=piTracker;piTracker();hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopStr(){return "";}function noopNull(){return null;}var updatedArgs=args?[].concat(source).concat(args):[source];try{Pardot.apply(this,updatedArgs);}catch(e){console.log(e);}}function Prebid(source,args){function Prebid(source){var pushFunction=function pushFunction(arg){if(typeof arg==="function"){try{arg.call();}catch(ex){}}};var pbjsWrapper={addAdUnits(){},adServers:{dfp:{buildVideoUrl:noopStr}},adUnits:[],aliasBidder(){},cmd:[],enableAnalytics(){},getHighestCpmBids:noopArray,libLoaded:true,que:[],requestBids(arg){if(arg instanceof Object&&arg.bidsBackHandler){try{arg.bidsBackHandler.call();}catch(ex){}}},removeAdUnit(){},setBidderConfig(){},setConfig(){},setTargetingForGPTAsync(){}};pbjsWrapper.cmd.push=pushFunction;pbjsWrapper.que.push=pushFunction;window.pbjs=pbjsWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}function noopArray(){return [];}var updatedArgs=args?[].concat(source).concat(args):[source];try{Prebid.apply(this,updatedArgs);}catch(e){console.log(e);}}function ScoreCardResearchBeacon(source,args){function ScoreCardResearchBeacon(source){window.COMSCORE={purge(){window._comscore=[];},beacon(){}};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{ScoreCardResearchBeacon.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortCurrentInlineScript(source,args){function abortCurrentInlineScript(source,property,search){var searchRegexp=toRegExp(search);var rid=randomId();var SRC_DATA_MARKER="data:text/javascript;base64,";var getCurrentScript=function getCurrentScript(){if("currentScript"in document){return document.currentScript;}var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1];};var ourScript=getCurrentScript();var abort=function abort(){var _scriptEl$src;var scriptEl=getCurrentScript();if(!scriptEl){return;}var content=scriptEl.textContent;try{var textContentGetter=Object.getOwnPropertyDescriptor(Node.prototype,"textContent").get;content=textContentGetter.call(scriptEl);}catch(e){}if(content.length===0&&typeof scriptEl.src!=="undefined"&&(_scriptEl$src=scriptEl.src)!==null&&_scriptEl$src!==void 0&&_scriptEl$src.startsWith(SRC_DATA_MARKER)){var encodedContent=scriptEl.src.slice(SRC_DATA_MARKER.length);content=window.atob(encodedContent);}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){hit(source);throw new ReferenceError(rid);}};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object===false&&base===null){var props=property.split(".");var propIndex=props.indexOf(prop);var baseName=props[propIndex-1];var message="The scriptlet had been executed before the ".concat(baseName," was loaded.");logMessage(source,message);return;}if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var currentValue=base[prop];var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);if(origDescriptor instanceof Object===false||origDescriptor.get instanceof Function===false){currentValue=base[prop];origDescriptor=undefined;}var descriptorWrapper=Object.assign(getDescriptorAddon(),{currentValue:currentValue,get(){if(!this.isAbortingSuspended){this.isolateCallback(abort);}if(origDescriptor instanceof Object){return origDescriptor.get.call(base);}return this.currentValue;},set(newValue){if(!this.isAbortingSuspended){this.isolateCallback(abort);}if(origDescriptor instanceof Object){origDescriptor.set.call(base,newValue);}else {this.currentValue=newValue;}}});setPropertyAccess(base,prop,{get(){return descriptorWrapper.get.call(descriptorWrapper);},set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue);}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getDescriptorAddon(){return {isAbortingSuspended:false,isolateCallback(cb){this.isAbortingSuspended=true;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}var result=cb(...args);this.isAbortingSuspended=false;return result;}catch(_unused){var rid=randomId();this.isAbortingSuspended=false;throw new ReferenceError(rid);}}};}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortCurrentInlineScript.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnPropertyRead(source,args){function abortOnPropertyRead(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{get:abort,set:function set(){}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortOnPropertyRead.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnPropertyWrite(source,args){function abortOnPropertyWrite(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{set:abort});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortOnPropertyWrite.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnStackTrace(source,args){function abortOnStackTrace(source,property,stack){if(!property||!stack){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}if(!stack.match(/^(inlineScript|injectedScript)$/)&&!isValidStrPattern(stack)){logMessage(source,"Invalid parameter: ".concat(stack));return;}var descriptorWrapper=Object.assign(getDescriptorAddon(),{value:base[prop],get(){if(!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,new Error().stack)){abort();}return this.value;},set(newValue){if(!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,new Error().stack)){abort();}this.value=newValue;}});setPropertyAccess(base,prop,{get(){return descriptorWrapper.get.call(descriptorWrapper);},set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue);}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getDescriptorAddon(){return {isAbortingSuspended:false,isolateCallback(cb){this.isAbortingSuspended=true;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}var result=cb(...args);this.isAbortingSuspended=false;return result;}catch(_unused){var rid=randomId();this.isAbortingSuspended=false;throw new ReferenceError(rid);}}};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeSetInterval.apply(window,[callback,delay,...args]);};window.setInterval=intervalWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getBoostMultiplier(boost){var DEFAULT_MULTIPLIER=.05;var MIN_MULTIPLIER=.001;var MAX_MULTIPLIER=50;var parsedBoost=parseFloat(boost);var boostMultiplier=nativeIsNaN(parsedBoost)||!nativeIsFinite(parsedBoost)?DEFAULT_MULTIPLIER:parsedBoost;if(boostMultiplierMAX_MULTIPLIER){boostMultiplier=MAX_MULTIPLIER;}return boostMultiplier;}function isDelayMatched(inputDelay,realDelay){return shouldMatchAnyDelay(inputDelay)||realDelay===getMatchDelay(inputDelay);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function getMatchDelay(delay){var DEFAULT_DELAY=1e3;var parsedDelay=parseInt(delay,10);var delayMatch=nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay;return delayMatch;}function shouldMatchAnyDelay(delay){return delay==="*";}var updatedArgs=args?[].concat(source).concat(args):[source];try{adjustSetInterval.apply(this,updatedArgs);}catch(e){console.log(e);}}function adjustSetTimeout(source,args){function adjustSetTimeout(source,matchCallback,matchDelay,boost){var nativeSetTimeout=window.setTimeout;var matchRegexp=toRegExp(matchCallback);var timeoutWrapper=function timeoutWrapper(callback,delay){if(!isValidCallback(callback)){var message="Scriptlet can't be applied because of invalid callback: '".concat(String(callback),"'");logMessage(source,message);}else if(matchRegexp.test(callback.toString())&&isDelayMatched(matchDelay,delay)){delay*=getBoostMultiplier(boost);hit(source);}for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeSetTimeout.apply(window,[callback,delay,...args]);};window.setTimeout=timeoutWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getBoostMultiplier(boost){var DEFAULT_MULTIPLIER=.05;var MIN_MULTIPLIER=.001;var MAX_MULTIPLIER=50;var parsedBoost=parseFloat(boost);var boostMultiplier=nativeIsNaN(parsedBoost)||!nativeIsFinite(parsedBoost)?DEFAULT_MULTIPLIER:parsedBoost;if(boostMultiplierMAX_MULTIPLIER){boostMultiplier=MAX_MULTIPLIER;}return boostMultiplier;}function isDelayMatched(inputDelay,realDelay){return shouldMatchAnyDelay(inputDelay)||realDelay===getMatchDelay(inputDelay);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function getMatchDelay(delay){var DEFAULT_DELAY=1e3;var parsedDelay=parseInt(delay,10);var delayMatch=nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay;return delayMatch;}function shouldMatchAnyDelay(delay){return delay==="*";}var updatedArgs=args?[].concat(source).concat(args):[source];try{adjustSetTimeout.apply(this,updatedArgs);}catch(e){console.log(e);}}function callNoThrow(source,args){function callNoThrow(source,functionName){if(!functionName){return;}var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(!base||!prop||typeof base[prop]!=="function"){var message="".concat(functionName," is not a function");logMessage(source,message);return;}var objectWrapper=function objectWrapper(){var result;try{result=Reflect.apply(...arguments);}catch(e){var _message="Error calling ".concat(functionName,": ").concat(e.message);logMessage(source,_message);}hit(source);return result;};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(base[prop],objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{callNoThrow.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugCurrentInlineScript(source,args){function debugCurrentInlineScript(source,property,search){var searchRegexp=toRegExp(search);var rid=randomId();var getCurrentScript=function getCurrentScript(){if("currentScript"in document){return document.currentScript;}var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1];};var ourScript=getCurrentScript();var abort=function abort(){var scriptEl=getCurrentScript();if(!scriptEl){return;}var content=scriptEl.textContent;try{var textContentGetter=Object.getOwnPropertyDescriptor(Node.prototype,"textContent").get;content=textContentGetter.call(scriptEl);}catch(e){}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){hit(source);debugger;}};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object===false&&base===null){var props=property.split(".");var propIndex=props.indexOf(prop);var baseName=props[propIndex-1];var message="The scriptlet had been executed before the ".concat(baseName," was loaded.");logMessage(message,source.verbose);return;}if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var currentValue=base[prop];setPropertyAccess(base,prop,{set:function set(value){abort();currentValue=value;},get:function get(){abort();return currentValue;}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugCurrentInlineScript.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugOnPropertyRead(source,args){function debugOnPropertyRead(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);debugger;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{get:abort,set:noopFunc});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugOnPropertyRead.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugOnPropertyWrite(source,args){function debugOnPropertyWrite(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);debugger;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{set:abort});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugOnPropertyWrite.apply(this,updatedArgs);}catch(e){console.log(e);}}function dirString(source,args){function dirString(source,times){var _console=console,dir=_console.dir;function dirWrapper(object){if(typeof dir==="function"){dir.call(this,object);}hit(source);}console.dir=dirWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{dirString.apply(this,updatedArgs);}catch(e){console.log(e);}}function disableNewtabLinks(source,args){function disableNewtabLinks(source){document.addEventListener("click",function(ev){var target=ev.target;while(target!==null){if(target.localName==="a"&&target.hasAttribute("target")){ev.stopPropagation();ev.preventDefault();hit(source);break;}target=target.parentNode;}});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{disableNewtabLinks.apply(this,updatedArgs);}catch(e){console.log(e);}}function evalDataPrune(source,args){function evalDataPrune(source,propsToRemove,requiredInitialProps,stack){var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var nativeObjects={nativeStringify:window.JSON.stringify};var evalWrapper=function evalWrapper(target,thisArg,args){var data=Reflect.apply(target,thisArg,args);if(typeof data==="object"){data=jsonPruner(source,data,prunePaths,requiredPaths,stack,nativeObjects);}return data;};var evalHandler={apply:evalWrapper};window.eval=new Proxy(window.eval,evalHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j1&&arguments[1]!==undefined?arguments[1]:"";if(typeof window.close!=="function"){var message="window.close() is not a function so 'close-window' scriptlet is unavailable";logMessage(source,message);return;}var closeImmediately=function closeImmediately(){try{hit(source);window.close();}catch(e){logMessage(source,e);}};var closeByExtension=function closeByExtension(){var extCall=function extCall(){dispatchEvent(new Event("adguard:scriptlet-close-window"));};window.addEventListener("adguard:subscribed-to-close-window",extCall,{once:true});setTimeout(function(){window.removeEventListener("adguard:subscribed-to-close-window",extCall,{once:true});},5e3);};var shouldClose=function shouldClose(){if(path===""){return true;}var pathRegexp=toRegExp(path);var currentPath="".concat(window.location.pathname).concat(window.location.search);return pathRegexp.test(currentPath);};if(shouldClose()){closeImmediately();if(navigator.userAgent.includes("Chrome")){closeByExtension();}}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{forceWindowClose.apply(this,updatedArgs);}catch(e){console.log(e);}}function hideInShadowDom(source,args){function hideInShadowDom(source,selector,baseSelector){if(!Element.prototype.attachShadow){return;}var hideElement=function hideElement(targetElement){var DISPLAY_NONE_CSS="display:none!important;";targetElement.style.cssText=DISPLAY_NONE_CSS;};var hideHandler=function hideHandler(){var hostElements=!baseSelector?findHostElements(document.documentElement):document.querySelectorAll(baseSelector);var _loop=function _loop(){var isHidden=false;var _pierceShadowDom=pierceShadowDom(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach(function(targetEl){hideElement(targetEl);isHidden=true;});if(isHidden){hit(source);}hostElements=innerHosts;};while(hostElements.length!==0){_loop();}};hideHandler();observeDOMChanges(hideHandler,true);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function findHostElements(rootElement){var hosts=[];if(rootElement){var domElems=rootElement.querySelectorAll("*");domElems.forEach(function(el){if(el.shadowRoot){hosts.push(el);}});}return hosts;}function pierceShadowDom(selector,hostElements){var targets=[];var innerHostsAcc=[];hostElements.forEach(function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot;var shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren));innerHostsAcc.push(findHostElements(shadowRootElem));});var innerHosts=flatten(innerHostsAcc);return {targets:targets,innerHosts:innerHosts};}function flatten(input){var stack=[];input.forEach(function(el){return stack.push(el);});var res=[];while(stack.length){var next=stack.pop();if(Array.isArray(next)){next.forEach(function(el){return stack.push(el);});}else {res.push(next);}}return res.reverse();}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{hideInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function hrefSanitizer(source,args){function hrefSanitizer(source,selector){var attribute=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"text";if(!selector){logMessage(source,"Selector is required.");return;}var regexpNotValidAtStart=/^(?:[\0- \x7F-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u036F\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482-\u0489\u0530\u0557\u0558\u055A-\u055F\u0589-\u05CF\u05EB-\u05EE\u05F3-\u061F\u064B-\u066D\u0670\u06D4\u06D6-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u06FD\u06FE\u0700-\u070F\u0711\u0730-\u074C\u07A6-\u07B0\u07B2-\u07C9\u07EB-\u07F3\u07F6-\u07F9\u07FB-\u07FF\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u083F\u0859-\u085F\u086B-\u086F\u0888\u088F-\u089F\u08CA-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962-\u0970\u0981-\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BC\u09BE-\u09CD\u09CF-\u09DB\u09DE\u09E2-\u09EF\u09F2-\u09FB\u09FD-\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A58\u0A5D\u0A5F-\u0A71\u0A75-\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABC\u0ABE-\u0ACF\u0AD1-\u0ADF\u0AE2-\u0AF8\u0AFA-\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3C\u0B3E-\u0B5B\u0B5E\u0B62-\u0B70\u0B72-\u0B82\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BCF\u0BD1-\u0C04\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C3E-\u0C57\u0C5B\u0C5C\u0C5E\u0C5F\u0C62-\u0C7F\u0C81-\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBC\u0CBE-\u0CDC\u0CDF\u0CE2-\u0CF0\u0CF3-\u0D03\u0D0D\u0D11\u0D3B\u0D3C\u0D3E-\u0D4D\u0D4F-\u0D53\u0D57-\u0D5E\u0D62-\u0D79\u0D80-\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0E00\u0E31\u0E34-\u0E3F\u0E47-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EB1\u0EB4-\u0EBC\u0EBE\u0EBF\u0EC5\u0EC7-\u0EDB\u0EE0-\u0EFF\u0F01-\u0F3F\u0F48\u0F6D-\u0F87\u0F8D-\u0FFF\u102B-\u103E\u1040-\u104F\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16F0\u16F9-\u16FF\u1712-\u171E\u1732-\u173F\u1752-\u175F\u176D\u1771-\u177F\u17B4-\u17D6\u17D8-\u17DB\u17DD-\u181F\u1879-\u187F\u1885\u1886\u18A9\u18AB-\u18AF\u18F6-\u18FF\u191F-\u194F\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19FF\u1A17-\u1A1F\u1A55-\u1AA6\u1AA8-\u1B04\u1B34-\u1B44\u1B4D-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BFF\u1C24-\u1C4C\u1C50-\u1C59\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1CFB-\u1CFF\u1DC0-\u1DFF\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u2182\u2185-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF-\u2E2E\u2E30-\u3004\u3007-\u3030\u3036-\u303A\u303D-\u3040\u3097-\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA620-\uA629\uA62C-\uA63F\uA66F-\uA67E\uA69E\uA69F\uA6E6-\uA716\uA720\uA721\uA789\uA78A\uA7CB-\uA7CF\uA7D2\uA7D4\uA7DA-\uA7F1\uA802\uA806\uA80B\uA823-\uA83F\uA874-\uA881\uA8B4-\uA8F1\uA8F8-\uA8FA\uA8FC\uA8FF-\uA909\uA926-\uA92F\uA947-\uA95F\uA97D-\uA983\uA9B3-\uA9CE\uA9D0-\uA9DF\uA9E5\uA9F0-\uA9F9\uA9FF\uAA29-\uAA3F\uAA43\uAA4C-\uAA5F\uAA77-\uAA79\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAC3-\uAADA\uAADE\uAADF\uAAEB-\uAAF1\uAAF5-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABE3-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB1E\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFE6F\uFE75\uFEFD-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEFF\uDF20-\uDF2C\uDF41\uDF4A-\uDF4F\uDF76-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0-\uDFFF]|\uD801[\uDC9E-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6F\uDD7B\uDD8B\uDD93\uDD96\uDDA2\uDDB2\uDDBA\uDDBD-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDF7F\uDF86\uDFB1\uDFBB-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE01-\uDE0F\uDE14\uDE18\uDE36-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE5-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD24-\uDE7F\uDEAA-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF46-\uDF6F\uDF82-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC00-\uDC02\uDC38-\uDC70\uDC73\uDC74\uDC76-\uDC82\uDCB0-\uDCCF\uDCE9-\uDD02\uDD27-\uDD43\uDD45\uDD46\uDD48-\uDD4F\uDD73-\uDD75\uDD77-\uDD82\uDDB3-\uDDC0\uDDC5-\uDDD9\uDDDB\uDDDD-\uDDFF\uDE12\uDE2C-\uDE3E\uDE41-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEDF-\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A-\uDF3C\uDF3E-\uDF4F\uDF51-\uDF5C\uDF62-\uDFFF]|\uD805[\uDC35-\uDC46\uDC4B-\uDC5E\uDC62-\uDC7F\uDCB0-\uDCC3\uDCC6\uDCC8-\uDD7F\uDDAF-\uDDD7\uDDDC-\uDDFF\uDE30-\uDE43\uDE45-\uDE7F\uDEAB-\uDEB7\uDEB9-\uDEFF\uDF1B-\uDF3F\uDF47-\uDFFF]|\uD806[\uDC2C-\uDC9F\uDCE0-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD30-\uDD3E\uDD40\uDD42-\uDD9F\uDDA8\uDDA9\uDDD1-\uDDE0\uDDE2\uDDE4-\uDDFF\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE4F\uDE51-\uDE5B\uDE8A-\uDE9C\uDE9E-\uDEAF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC2F-\uDC3F\uDC41-\uDC71\uDC90-\uDCFF\uDD07\uDD0A\uDD31-\uDD45\uDD47-\uDD5F\uDD66\uDD69\uDD8A-\uDD97\uDD99-\uDEDF\uDEF3-\uDF01\uDF03\uDF11\uDF34-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC00-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80E-\uD810\uD812-\uD819\uD824-\uD82A\uD82D\uD82E\uD830-\uD834\uD836\uD83C-\uD83F\uD87B-\uD87D\uD87F\uD889-\uDBFF][\uDC00-\uDFFF]|\uD80B[\uDC00-\uDF8F\uDFF1-\uDFFF]|\uD80D[\uDC30-\uDC40\uDC47-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F-\uDE6F\uDEBF-\uDECF\uDEEE-\uDEFF\uDF30-\uDF3F\uDF44-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4F\uDF51-\uDF92\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82B[\uDC00-\uDFEF\uDFF4\uDFFC\uDFFF]|\uD82C[\uDD23-\uDD31\uDD33-\uDD4F\uDD53\uDD54\uDD56-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC-\uDFFF]|\uD837[\uDC00-\uDEFF\uDF1F-\uDF24\uDF2B-\uDFFF]|\uD838[\uDC00-\uDC2F\uDC6E-\uDCFF\uDD2D-\uDD36\uDD3E-\uDD4D\uDD4F-\uDE8F\uDEAE-\uDEBF\uDEEC-\uDFFF]|\uD839[\uDC00-\uDCCF\uDCEC-\uDFDF\uDFE7\uDFEC\uDFEF\uDFFF]|\uD83A[\uDCC5-\uDCFF\uDD44-\uDD4A\uDD4C-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD869[\uDEE0-\uDEFF]|\uD86D[\uDF3A-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDF4F]|\uD888[\uDFB0-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+/;var regexpNotValidAtEnd=/(?:[\0- \x7F-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u036F\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482-\u0489\u0530\u0557\u0558\u055A-\u055F\u0589-\u05CF\u05EB-\u05EE\u05F3-\u061F\u064B-\u066D\u0670\u06D4\u06D6-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u06FD\u06FE\u0700-\u070F\u0711\u0730-\u074C\u07A6-\u07B0\u07B2-\u07C9\u07EB-\u07F3\u07F6-\u07F9\u07FB-\u07FF\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u083F\u0859-\u085F\u086B-\u086F\u0888\u088F-\u089F\u08CA-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962-\u0970\u0981-\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BC\u09BE-\u09CD\u09CF-\u09DB\u09DE\u09E2-\u09EF\u09F2-\u09FB\u09FD-\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A58\u0A5D\u0A5F-\u0A71\u0A75-\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABC\u0ABE-\u0ACF\u0AD1-\u0ADF\u0AE2-\u0AF8\u0AFA-\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3C\u0B3E-\u0B5B\u0B5E\u0B62-\u0B70\u0B72-\u0B82\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BCF\u0BD1-\u0C04\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C3E-\u0C57\u0C5B\u0C5C\u0C5E\u0C5F\u0C62-\u0C7F\u0C81-\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBC\u0CBE-\u0CDC\u0CDF\u0CE2-\u0CF0\u0CF3-\u0D03\u0D0D\u0D11\u0D3B\u0D3C\u0D3E-\u0D4D\u0D4F-\u0D53\u0D57-\u0D5E\u0D62-\u0D79\u0D80-\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0E00\u0E31\u0E34-\u0E3F\u0E47-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EB1\u0EB4-\u0EBC\u0EBE\u0EBF\u0EC5\u0EC7-\u0EDB\u0EE0-\u0EFF\u0F01-\u0F3F\u0F48\u0F6D-\u0F87\u0F8D-\u0FFF\u102B-\u103E\u1040-\u104F\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16F0\u16F9-\u16FF\u1712-\u171E\u1732-\u173F\u1752-\u175F\u176D\u1771-\u177F\u17B4-\u17D6\u17D8-\u17DB\u17DD-\u181F\u1879-\u187F\u1885\u1886\u18A9\u18AB-\u18AF\u18F6-\u18FF\u191F-\u194F\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19FF\u1A17-\u1A1F\u1A55-\u1AA6\u1AA8-\u1B04\u1B34-\u1B44\u1B4D-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BFF\u1C24-\u1C4C\u1C50-\u1C59\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1CFB-\u1CFF\u1DC0-\u1DFF\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u2182\u2185-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF-\u2E2E\u2E30-\u3004\u3007-\u3030\u3036-\u303A\u303D-\u3040\u3097-\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA620-\uA629\uA62C-\uA63F\uA66F-\uA67E\uA69E\uA69F\uA6E6-\uA716\uA720\uA721\uA789\uA78A\uA7CB-\uA7CF\uA7D2\uA7D4\uA7DA-\uA7F1\uA802\uA806\uA80B\uA823-\uA83F\uA874-\uA881\uA8B4-\uA8F1\uA8F8-\uA8FA\uA8FC\uA8FF-\uA909\uA926-\uA92F\uA947-\uA95F\uA97D-\uA983\uA9B3-\uA9CE\uA9D0-\uA9DF\uA9E5\uA9F0-\uA9F9\uA9FF\uAA29-\uAA3F\uAA43\uAA4C-\uAA5F\uAA77-\uAA79\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAC3-\uAADA\uAADE\uAADF\uAAEB-\uAAF1\uAAF5-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABE3-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB1E\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFE6F\uFE75\uFEFD-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEFF\uDF20-\uDF2C\uDF41\uDF4A-\uDF4F\uDF76-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0-\uDFFF]|\uD801[\uDC9E-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6F\uDD7B\uDD8B\uDD93\uDD96\uDDA2\uDDB2\uDDBA\uDDBD-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDF7F\uDF86\uDFB1\uDFBB-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE01-\uDE0F\uDE14\uDE18\uDE36-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE5-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD24-\uDE7F\uDEAA-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF46-\uDF6F\uDF82-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC00-\uDC02\uDC38-\uDC70\uDC73\uDC74\uDC76-\uDC82\uDCB0-\uDCCF\uDCE9-\uDD02\uDD27-\uDD43\uDD45\uDD46\uDD48-\uDD4F\uDD73-\uDD75\uDD77-\uDD82\uDDB3-\uDDC0\uDDC5-\uDDD9\uDDDB\uDDDD-\uDDFF\uDE12\uDE2C-\uDE3E\uDE41-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEDF-\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A-\uDF3C\uDF3E-\uDF4F\uDF51-\uDF5C\uDF62-\uDFFF]|\uD805[\uDC35-\uDC46\uDC4B-\uDC5E\uDC62-\uDC7F\uDCB0-\uDCC3\uDCC6\uDCC8-\uDD7F\uDDAF-\uDDD7\uDDDC-\uDDFF\uDE30-\uDE43\uDE45-\uDE7F\uDEAB-\uDEB7\uDEB9-\uDEFF\uDF1B-\uDF3F\uDF47-\uDFFF]|\uD806[\uDC2C-\uDC9F\uDCE0-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD30-\uDD3E\uDD40\uDD42-\uDD9F\uDDA8\uDDA9\uDDD1-\uDDE0\uDDE2\uDDE4-\uDDFF\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE4F\uDE51-\uDE5B\uDE8A-\uDE9C\uDE9E-\uDEAF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC2F-\uDC3F\uDC41-\uDC71\uDC90-\uDCFF\uDD07\uDD0A\uDD31-\uDD45\uDD47-\uDD5F\uDD66\uDD69\uDD8A-\uDD97\uDD99-\uDEDF\uDEF3-\uDF01\uDF03\uDF11\uDF34-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC00-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80E-\uD810\uD812-\uD819\uD824-\uD82A\uD82D\uD82E\uD830-\uD834\uD836\uD83C-\uD83F\uD87B-\uD87D\uD87F\uD889-\uDBFF][\uDC00-\uDFFF]|\uD80B[\uDC00-\uDF8F\uDFF1-\uDFFF]|\uD80D[\uDC30-\uDC40\uDC47-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F-\uDE6F\uDEBF-\uDECF\uDEEE-\uDEFF\uDF30-\uDF3F\uDF44-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4F\uDF51-\uDF92\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82B[\uDC00-\uDFEF\uDFF4\uDFFC\uDFFF]|\uD82C[\uDD23-\uDD31\uDD33-\uDD4F\uDD53\uDD54\uDD56-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC-\uDFFF]|\uD837[\uDC00-\uDEFF\uDF1F-\uDF24\uDF2B-\uDFFF]|\uD838[\uDC00-\uDC2F\uDC6E-\uDCFF\uDD2D-\uDD36\uDD3E-\uDD4D\uDD4F-\uDE8F\uDEAE-\uDEBF\uDEEC-\uDFFF]|\uD839[\uDC00-\uDCCF\uDCEC-\uDFDF\uDFE7\uDFEC\uDFEF\uDFFF]|\uD83A[\uDCC5-\uDCFF\uDD44-\uDD4A\uDD4C-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD869[\uDEE0-\uDEFF]|\uD86D[\uDF3A-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDF4F]|\uD888[\uDFB0-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+$/;var extractNewHref=function extractNewHref(anchor,attr){if(attr==="text"){if(!anchor.textContent){return "";}return anchor.textContent.replace(regexpNotValidAtStart,"").replace(regexpNotValidAtEnd,"");}if(attr.startsWith("?")){try{var url=new URL(anchor.href,document.location.href);return url.searchParams.get(attr.slice(1))||"";}catch(ex){logMessage(source,"Cannot retrieve the parameter '".concat(attr.slice(1),"' from the URL '").concat(anchor.href));return "";}}if(attr.startsWith("[")&&attr.endsWith("]")){return anchor.getAttribute(attr.slice(1,-1))||"";}return "";};var getValidURL=function getValidURL(text){if(!text){return null;}try{var _URL=new URL(text,document.location.href),href=_URL.href,protocol=_URL.protocol;if(protocol!=="http:"&&protocol!=="https:"){logMessage(source,'Protocol not allowed: "'.concat(protocol,'", from URL: "').concat(href,'"'));return null;}return href;}catch(_unused){return null;}};var isSanitizableAnchor=function isSanitizableAnchor(element){return element.nodeName.toLowerCase()==="a"&&element.hasAttribute("href");};var sanitize=function sanitize(elementSelector){var elements;try{elements=document.querySelectorAll(elementSelector);}catch(e){logMessage(source,'Invalid selector "'.concat(elementSelector,'"'));return;}elements.forEach(function(elem){try{if(!isSanitizableAnchor(elem)){return;}var newHref=extractNewHref(elem,attribute);var newValidHref=getValidURL(newHref);if(!newValidHref){logMessage(source,"Invalid URL: ".concat(newHref));return;}var oldHref=elem.href;elem.setAttribute("href",newValidHref);if(newValidHref!==oldHref){logMessage(source,'Sanitized "'.concat(oldHref,'" to "').concat(newValidHref,'".'));}}catch(ex){logMessage(source,"Failed to sanitize ".concat(elem,"."));}});hit(source);};var run=function run(){sanitize(selector);observeDOMChanges(function(){return sanitize(selector);},true);};if(document.readyState==="loading"){window.addEventListener("DOMContentLoaded",run,{once:true});}else {run();}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{hrefSanitizer.apply(this,updatedArgs);}catch(e){console.log(e);}}function injectCssInShadowDom(source,args){function injectCssInShadowDom(source,cssRule){var hostSelector=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";if(!Element.prototype.attachShadow||typeof Proxy==="undefined"||typeof Reflect==="undefined"){return;}if(cssRule.match(/(url|image-set)\(.*\)/i)){logMessage(source,'"url()" function is not allowed for css rules');return;}var callback=function callback(shadowRoot){try{var stylesheet=new CSSStyleSheet();try{stylesheet.insertRule(cssRule);}catch(e){logMessage(source,"Unable to apply the rule '".concat(cssRule,"' due to: \n'").concat(e.message,"'"));return;}shadowRoot.adoptedStyleSheets=[...shadowRoot.adoptedStyleSheets,stylesheet];}catch(_unused){var styleTag=document.createElement("style");styleTag.innerText=cssRule;shadowRoot.appendChild(styleTag);}hit(source);};hijackAttachShadow(window,hostSelector,callback);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function hijackAttachShadow(context,hostSelector,callback){var handlerWrapper=function handlerWrapper(target,thisArg,args){var shadowRoot=Reflect.apply(target,thisArg,args);if(thisArg&&thisArg.matches(hostSelector||"*")){callback(shadowRoot);}return shadowRoot;};var attachShadowHandler={apply:handlerWrapper};context.Element.prototype.attachShadow=new Proxy(context.Element.prototype.attachShadow,attachShadowHandler);}var updatedArgs=args?[].concat(source).concat(args):[source];try{injectCssInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function jsonPrune(source,args){function jsonPrune(source,propsToRemove,requiredInitialProps){var stack=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var nativeObjects={nativeStringify:window.JSON.stringify};var nativeJSONParse=JSON.parse;var jsonParseWrapper=function jsonParseWrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}var root=nativeJSONParse.apply(JSON,args);return jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects);};jsonParseWrapper.toString=nativeJSONParse.toString.bind(nativeJSONParse);JSON.parse=jsonParseWrapper;var nativeResponseJson=Response.prototype.json;var responseJsonWrapper=function responseJsonWrapper(){var promise=nativeResponseJson.apply(this);return promise.then(function(obj){return jsonPruner(source,obj,prunePaths,requiredPaths,stack,nativeObjects);});};if(typeof Response==="undefined"){return;}Response.prototype.json=responseJsonWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(obligatoryProps);var nativeStringify=window.JSON.stringify;var nativeRequestClone=window.Request.prototype.clone;var nativeResponseClone=window.Response.prototype.clone;var nativeFetch=window.fetch;var fetchHandlerWrapper=async function fetchHandlerWrapper(target,thisArg,args){var fetchData=getFetchData(args,nativeRequestClone);if(!matchRequestProps(source,propsToMatch,fetchData)){return Reflect.apply(target,thisArg,args);}var originalResponse;var clonedResponse;try{originalResponse=await nativeFetch.apply(null,args);clonedResponse=nativeResponseClone.call(originalResponse);}catch(_unused){logMessage(source,"Could not make an original fetch request: ".concat(fetchData.url));return Reflect.apply(target,thisArg,args);}var json;try{json=await originalResponse.json();}catch(e){var message="Response body can't be converted to json: ".concat(objectToString(fetchData));logMessage(source,message);return clonedResponse;}var modifiedJson=jsonPruner(source,json,prunePaths,requiredPaths,stack,{nativeStringify:nativeStringify,nativeRequestClone:nativeRequestClone,nativeResponseClone:nativeResponseClone,nativeFetch:nativeFetch});var forgedResponse=forgeResponse(originalResponse,nativeStringify(modifiedJson));hit(source);return forgedResponse;};var fetchHandler={apply:fetchHandlerWrapper};window.fetch=new Proxy(window.fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(prunePaths.length===0&&requiredPaths.length===0){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}return root;}try{if(isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects)===false){return root;}prunePaths.forEach(function(path){var ownerObjArr=getWildcardPropertyInChain(root,path,true);ownerObjArr.forEach(function(ownerObj){if(ownerObj!==undefined&&ownerObj.base){delete ownerObj.base[ownerObj.prop];hit(source);}});});}catch(e){logMessage(source,e);}return root;}function getPrunePath(props){var validPropsString=typeof props==="string"&&props!==undefined&&props!=="";return validPropsString?props.split(/ +/):[];}function forgeResponse(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url;var forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}});return forgedResponse;}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(typeof Proxy==="undefined"){return;}var shouldLog=!propsToRemove&&!obligatoryProps;var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(obligatoryProps);var nativeParse=window.JSON.parse;var nativeStringify=window.JSON.stringify;var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var setRequestHeaderWrapper=function setRequestHeaderWrapper(setRequestHeader,thisArgument,argsList){thisArgument.collectedHeaders.push(argsList);return Reflect.apply(setRequestHeader,thisArgument,argsList);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(matchRequestProps(source,propsToMatch,xhrData)||shouldLog){thisArg.xhrShouldBePruned=true;thisArg.headersReceived=!!thisArg.headersReceived;}if(thisArg.xhrShouldBePruned&&!thisArg.headersReceived){thisArg.headersReceived=true;thisArg.collectedHeaders=[];thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){var stackTrace=new Error().stack||"";if(!thisArg.xhrShouldBePruned||stack&&!matchStackTrace(stack,stackTrace)){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"&&typeof content!=="object"){return;}var modifiedContent;if(typeof content==="string"){try{var jsonContent=nativeParse(content);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(jsonContent,null,2),"\nStack trace:\n").concat(stackTrace),true);logMessage(source,jsonContent,true,false);modifiedContent=content;}else {modifiedContent=jsonPruner(source,jsonContent,prunePaths,requiredPaths,stack="",{nativeStringify:nativeStringify});try{var responseType=thisArg.responseType;switch(responseType){case"":case"text":modifiedContent=nativeStringify(modifiedContent);break;case"arraybuffer":modifiedContent=new TextEncoder().encode(nativeStringify(modifiedContent)).buffer;break;case"blob":modifiedContent=new Blob([nativeStringify(modifiedContent)]);break;default:break;}}catch(error){var message="Response body cannot be converted to reponse type: '".concat(content,"'");logMessage(source,message);modifiedContent=content;}}}catch(error){var _message="Response body cannot be converted to json: '".concat(content,"'");logMessage(source,_message);modifiedContent=content;}}Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:modifiedContent,writable:false},responseText:{value:modifiedContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url,Boolean(xhrData.async)]);thisArg.collectedHeaders.forEach(function(header){forgedRequest.setRequestHeader(header[0],header[1]);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(prunePaths.length===0&&requiredPaths.length===0){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}return root;}try{if(isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects)===false){return root;}prunePaths.forEach(function(path){var ownerObjArr=getWildcardPropertyInChain(root,path,true);ownerObjArr.forEach(function(ownerObj){if(ownerObj!==undefined&&ownerObj.base){delete ownerObj.base[ownerObj.prop];hit(source);}});});}catch(e){logMessage(source,e);}return root;}function getPrunePath(props){var validPropsString=typeof props==="string"&&props!==undefined&&props!=="";return validPropsString?props.split(/ +/):[];}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeAddEventListener.apply(context,[type,listener,...args]);}var descriptor={configurable:true,set:function set(){},get:function get(){return addEventListenerWrapper;}};Object.defineProperty(window.EventTarget.prototype,"addEventListener",descriptor);Object.defineProperty(window,"addEventListener",descriptor);Object.defineProperty(document,"addEventListener",descriptor);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function validateType(type){return typeof type!=="undefined";}function validateListener(listener){return typeof listener!=="undefined"&&(typeof listener==="function"||typeof listener==="object"&&listener!==null&&"handleEvent"in listener&&typeof listener.handleEvent==="function");}function listenerToString(listener){return typeof listener==="function"?listener.toString():listener.handleEvent.toString();}function convertTypeToString(value){var output;if(typeof value==="undefined"){output="undefined";}else if(typeof value==="object"){if(value===null){output="null";}else {output=objectToString(value);}}else {output=String(value);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{logAddEventListener.apply(this,updatedArgs);}catch(e){console.log(e);}}function logEval(source,args){function logEval(source){var nativeEval=window.eval;function evalWrapper(str){hit(source);logMessage(source,'eval("'.concat(str,'")'),true);return nativeEval(str);}window.eval=evalWrapper;var nativeFunction=window.Function;function FunctionWrapper(){hit(source);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}logMessage(source,"new Function(".concat(args.join(", "),")"),true);return nativeFunction.apply(this,[...args]);}FunctionWrapper.prototype=Object.create(nativeFunction.prototype);FunctionWrapper.prototype.constructor=FunctionWrapper;window.Function=FunctionWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{logEval.apply(this,updatedArgs);}catch(e){console.log(e);}}function logOnStacktrace(source,args){function logOnStacktrace(source,property){if(!property){return;}var refineStackTrace=function refineStackTrace(stackString){var stackSteps=stackString.split("\n").slice(2).map(function(line){return line.replace(/ {4}at /,"");});var logInfoArray=stackSteps.map(function(line){var funcName;var funcFullPath;var reg=/\(([^\)]+)\)/;var regFirefox=/(.*?@)(\S+)(:\d+):\d+\)?$/;if(line.match(reg)){funcName=line.split(" ").slice(0,-1).join(" ");funcFullPath=line.match(reg)[1];}else if(line.match(regFirefox)){funcName=line.split("@").slice(0,-1).join(" ");funcFullPath=line.match(regFirefox)[2];}else {funcName="function name is not available";funcFullPath=line;}return [funcName,funcFullPath];});var logInfoObject={};logInfoArray.forEach(function(pair){logInfoObject[pair[0]]=pair[1];});return logInfoObject;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var value=base[prop];setPropertyAccess(base,prop,{get(){hit(source);logMessage(source,"Get ".concat(prop),true);console.table(refineStackTrace(new Error().stack));return value;},set(newValue){hit(source);logMessage(source,"Set ".concat(prop),true);console.table(refineStackTrace(new Error().stack));value=newValue;}});};setChainPropAccess(window,property);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{logOnStacktrace.apply(this,updatedArgs);}catch(e){console.log(e);}}function m3uPrune(source,args){function m3uPrune(source,propsToRemove){var urlToMatch=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";if(typeof Reflect==="undefined"||typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var shouldPruneResponse=false;var urlMatchRegexp=toRegExp(urlToMatch);var SEGMENT_MARKER="#";var AD_MARKER={ASSET:"#EXT-X-ASSET:",CUE:"#EXT-X-CUE:",CUE_IN:"#EXT-X-CUE-IN",DISCONTINUITY:"#EXT-X-DISCONTINUITY",EXTINF:"#EXTINF",EXTM3U:"#EXTM3U",SCTE35:"#EXT-X-SCTE35:"};var COMCAST_AD_MARKER={AD:"-AD-",VAST:"-VAST-",VMAP_AD:"-VMAP-AD-",VMAP_AD_BREAK:"#EXT-X-VMAP-AD-BREAK:"};var TAGS_ALLOWLIST=["#EXT-X-TARGETDURATION","#EXT-X-MEDIA-SEQUENCE","#EXT-X-DISCONTINUITY-SEQUENCE","#EXT-X-ENDLIST","#EXT-X-PLAYLIST-TYPE","#EXT-X-I-FRAMES-ONLY","#EXT-X-MEDIA","#EXT-X-STREAM-INF","#EXT-X-I-FRAME-STREAM-INF","#EXT-X-SESSION-DATA","#EXT-X-SESSION-KEY","#EXT-X-INDEPENDENT-SEGMENTS","#EXT-X-START"];var isAllowedTag=function isAllowedTag(str){return TAGS_ALLOWLIST.some(function(el){return str.startsWith(el);});};var pruneExtinfFromVmapBlock=function pruneExtinfFromVmapBlock(lines,i){var array=lines.slice();var index=i;if(array[index].includes(AD_MARKER.EXTINF)){array[index]=undefined;index+=1;if(array[index].includes(AD_MARKER.DISCONTINUITY)){array[index]=undefined;index+=1;var prunedExtinf=pruneExtinfFromVmapBlock(array,index);array=prunedExtinf.array;index=prunedExtinf.index;}}return {array:array,index:index};};var pruneVmapBlock=function pruneVmapBlock(lines){var array=lines.slice();for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{m3uPrune.apply(this,updatedArgs);}catch(e){console.log(e);}}function metrikaYandexTag(source,args){function metrikaYandexTag(source){var asyncCallbackFromOptions=function asyncCallbackFromOptions(id,param){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var callback=options.callback;var ctx=options.ctx;if(typeof callback==="function"){callback=ctx!==undefined?callback.bind(ctx):callback;setTimeout(function(){return callback();});}};var addFileExtension=noopFunc;var extLink=asyncCallbackFromOptions;var file=asyncCallbackFromOptions;var getClientID=function getClientID(id,cb){if(!cb){return;}setTimeout(cb(null));};var hitFunc=asyncCallbackFromOptions;var notBounce=asyncCallbackFromOptions;var params=noopFunc;var reachGoal=function reachGoal(id,target,params,callback,ctx){asyncCallbackFromOptions(null,null,{callback:callback,ctx:ctx});};var setUserID=noopFunc;var userParams=noopFunc;var destruct=noopFunc;var api={addFileExtension:addFileExtension,extLink:extLink,file:file,getClientID:getClientID,hit:hitFunc,notBounce:notBounce,params:params,reachGoal:reachGoal,setUserID:setUserID,userParams:userParams,destruct:destruct};function ym(id,funcName){for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return api[funcName]&&api[funcName](id,...args);}function init(id){window["yaCounter".concat(id)]=api;document.dispatchEvent(new Event("yacounter".concat(id,"inited")));}if(typeof window.ym==="undefined"){window.ym=ym;ym.a=[];}else if(window.ym&&window.ym.a){ym.a=window.ym.a;window.ym=ym;window.ym.a.forEach(function(params){var id=params[0];init(id);});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{metrikaYandexTag.apply(this,updatedArgs);}catch(e){console.log(e);}}function metrikaYandexWatch(source,args){function metrikaYandexWatch(source){var cbName="yandex_metrika_callbacks";var asyncCallbackFromOptions=function asyncCallbackFromOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var callback=options.callback;var ctx=options.ctx;if(typeof callback==="function"){callback=ctx!==undefined?callback.bind(ctx):callback;setTimeout(function(){return callback();});}};function Metrika(){}Metrika.counters=noopArray;Metrika.prototype.addFileExtension=noopFunc;Metrika.prototype.getClientID=noopFunc;Metrika.prototype.setUserID=noopFunc;Metrika.prototype.userParams=noopFunc;Metrika.prototype.params=noopFunc;Metrika.prototype.counters=noopArray;Metrika.prototype.extLink=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.file=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.hit=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.reachGoal=function(target,params,cb,ctx){asyncCallbackFromOptions({callback:cb,ctx:ctx});};Metrika.prototype.notBounce=asyncCallbackFromOptions;if(window.Ya){window.Ya.Metrika=Metrika;}else {window.Ya={Metrika:Metrika};}if(window[cbName]&&Array.isArray(window[cbName])){window[cbName].forEach(function(func){if(typeof func==="function"){func();}});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopArray(){return [];}var updatedArgs=args?[].concat(source).concat(args):[source];try{metrikaYandexWatch.apply(this,updatedArgs);}catch(e){console.log(e);}}function noProtectedAudience(source,args){function noProtectedAudience(source){if(Document instanceof Object===false){return;}var protectedAudienceMethods={joinAdInterestGroup:noopResolveVoid,runAdAuction:noopResolveNull,leaveAdInterestGroup:noopResolveVoid,clearOriginJoinedAdInterestGroups:noopResolveVoid,createAuctionNonce:noopStr,updateAdInterestGroups:noopFunc};for(var _i=0,_Object$keys=Object.keys(protectedAudienceMethods);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];var methodName=key;var prototype=Navigator.prototype;if(!Object.prototype.hasOwnProperty.call(prototype,methodName)||prototype[methodName]instanceof Function===false){continue;}prototype[methodName]=protectedAudienceMethods[methodName];}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}function noopFunc(){}function noopResolveVoid(){return Promise.resolve(undefined);}function noopResolveNull(){return Promise.resolve(null);}var updatedArgs=args?[].concat(source).concat(args):[source];try{noProtectedAudience.apply(this,updatedArgs);}catch(e){console.log(e);}}function noTopics(source,args){function noTopics(source){var TOPICS_PROPERTY_NAME="browsingTopics";if(Document instanceof Object===false){return;}if(!Object.prototype.hasOwnProperty.call(Document.prototype,TOPICS_PROPERTY_NAME)||Document.prototype[TOPICS_PROPERTY_NAME]instanceof Function===false){return;}Document.prototype[TOPICS_PROPERTY_NAME]=function(){return noopPromiseResolve("[]");};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}var updatedArgs=args?[].concat(source).concat(args):[source];try{noTopics.apply(this,updatedArgs);}catch(e){console.log(e);}}function noeval(source,args){function noeval(source){window.eval=function evalWrapper(s){hit(source);logMessage(source,"AdGuard has prevented eval:\n".concat(s),true);}.bind();}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{noeval.apply(this,updatedArgs);}catch(e){console.log(e);}}function nowebrtc(source,args){function nowebrtc(source){var propertyName="";if(window.RTCPeerConnection){propertyName="RTCPeerConnection";}else if(window.webkitRTCPeerConnection){propertyName="webkitRTCPeerConnection";}if(propertyName===""){return;}var rtcReplacement=function rtcReplacement(config){var message="Document tried to create an RTCPeerConnection: ".concat(convertRtcConfigToString(config));logMessage(source,message);hit(source);};rtcReplacement.prototype={close:noopFunc,createDataChannel:noopFunc,createOffer:noopFunc,setRemoteDescription:noopFunc};var rtc=window[propertyName];window[propertyName]=rtcReplacement;if(rtc.prototype){rtc.prototype.createDataChannel=function(a,b){return {close:noopFunc,send:noopFunc};}.bind(null);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function convertRtcConfigToString(config){var UNDEF_STR="undefined";var str=UNDEF_STR;if(config===null){str="null";}else if(config instanceof Object){var SERVERS_PROP_NAME="iceServers";var URLS_PROP_NAME="urls";if(Object.prototype.hasOwnProperty.call(config,SERVERS_PROP_NAME)&&config[SERVERS_PROP_NAME]&&Object.prototype.hasOwnProperty.call(config[SERVERS_PROP_NAME][0],URLS_PROP_NAME)&&!!config[SERVERS_PROP_NAME][0][URLS_PROP_NAME]){str=config[SERVERS_PROP_NAME][0][URLS_PROP_NAME].toString();}}return str;}var updatedArgs=args?[].concat(source).concat(args):[source];try{nowebrtc.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventAddEventListener(source,args){function preventAddEventListener(source,typeSearch,listenerSearch){var typeSearchRegexp=toRegExp(typeSearch);var listenerSearchRegexp=toRegExp(listenerSearch);var nativeAddEventListener=window.EventTarget.prototype.addEventListener;function addEventListenerWrapper(type,listener){var _this$constructor;var shouldPrevent=false;if(validateType(type)&&validateListener(listener)){shouldPrevent=typeSearchRegexp.test(type.toString())&&listenerSearchRegexp.test(listenerToString(listener));}if(shouldPrevent){hit(source);return undefined;}var context=this;if(this&&((_this$constructor=this.constructor)===null||_this$constructor===void 0?void 0:_this$constructor.name)==="Window"&&this!==window){context=window;}for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeAddEventListener.apply(context,[type,listener,...args]);}var descriptor={configurable:true,set:function set(){},get:function get(){return addEventListenerWrapper;}};Object.defineProperty(window.EventTarget.prototype,"addEventListener",descriptor);Object.defineProperty(window,"addEventListener",descriptor);Object.defineProperty(document,"addEventListener",descriptor);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function validateType(type){return typeof type!=="undefined";}function validateListener(listener){return typeof listener!=="undefined"&&(typeof listener==="function"||typeof listener==="object"&&listener!==null&&"handleEvent"in listener&&typeof listener.handleEvent==="function");}function listenerToString(listener){return typeof listener==="function"?listener.toString():listener.handleEvent.toString();}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventAddEventListener.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventAdfly(source,args){function preventAdfly(source){var isDigit=function isDigit(data){return /^\d$/.test(data);};var handler=function handler(encodedURL){var evenChars="";var oddChars="";for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventAdfly.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventBab(source,args){function preventBab(source){var nativeSetTimeout=window.setTimeout;var babRegex=/\.bab_elementid.$/;var timeoutWrapper=function timeoutWrapper(callback){if(typeof callback!=="string"||!babRegex.test(callback)){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeSetTimeout.apply(window,[callback,...args]);}hit(source);};window.setTimeout=timeoutWrapper;var signatures=[["blockadblock"],["babasbm"],[/getItem\('babn'\)/],["getElementById","String.fromCharCode","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789","charAt","DOMContentLoaded","AdBlock","addEventListener","doScroll","fromCharCode","<<2|r>>4","sessionStorage","clientWidth","localStorage","Math","random"]];var check=function check(str){if(typeof str!=="string"){return false;}for(var i=0;i=.8){return true;}}return false;};var nativeEval=window.eval;var evalWrapper=function evalWrapper(str){if(!check(str)){return nativeEval(str);}hit(source);var bodyEl=document.body;if(bodyEl){bodyEl.style.removeProperty("visibility");}var el=document.getElementById("babasbmsgx");if(el){el.parentNode.removeChild(el);}};window.eval=evalWrapper.bind(window);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventBab.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventElementSrcLoading(source,args){function preventElementSrcLoading(source,tagName,match){if(typeof Proxy==="undefined"||typeof Reflect==="undefined"){return;}var srcMockData={script:"data:text/javascript;base64,KCk9Pnt9",img:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",iframe:"data:text/html;base64, PGRpdj48L2Rpdj4=",link:"data:text/plain;base64,"};var instance;if(tagName==="script"){instance=HTMLScriptElement;}else if(tagName==="img"){instance=HTMLImageElement;}else if(tagName==="iframe"){instance=HTMLIFrameElement;}else if(tagName==="link"){instance=HTMLLinkElement;}else {return;}var hasTrustedTypes=window.trustedTypes&&typeof window.trustedTypes.createPolicy==="function";var policy;if(hasTrustedTypes){policy=window.trustedTypes.createPolicy("AGPolicy",{createScriptURL:function createScriptURL(arg){return arg;}});}var SOURCE_PROPERTY_NAME=tagName==="link"?"href":"src";var ONERROR_PROPERTY_NAME="onerror";var searchRegexp=toRegExp(match);var setMatchedAttribute=function setMatchedAttribute(elem){return elem.setAttribute(source.name,"matched");};var setAttributeWrapper=function setAttributeWrapper(target,thisArg,args){if(!args[0]||!args[1]){return Reflect.apply(target,thisArg,args);}var nodeName=thisArg.nodeName.toLowerCase();var attrName=args[0].toLowerCase();var attrValue=args[1];var isMatched=attrName===SOURCE_PROPERTY_NAME&&tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(attrValue);if(!isMatched){return Reflect.apply(target,thisArg,args);}hit(source);setMatchedAttribute(thisArg);return Reflect.apply(target,thisArg,[attrName,srcMockData[nodeName]]);};var setAttributeHandler={apply:setAttributeWrapper};instance.prototype.setAttribute=new Proxy(Element.prototype.setAttribute,setAttributeHandler);var origSrcDescriptor=safeGetDescriptor(instance.prototype,SOURCE_PROPERTY_NAME);if(!origSrcDescriptor){return;}Object.defineProperty(instance.prototype,SOURCE_PROPERTY_NAME,{enumerable:true,configurable:true,get(){return origSrcDescriptor.get.call(this);},set(urlValue){var nodeName=this.nodeName.toLowerCase();var isMatched=tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(urlValue);if(!isMatched){origSrcDescriptor.set.call(this,urlValue);return true;}if(policy&&urlValue instanceof TrustedScriptURL){var trustedSrc=policy.createScriptURL(urlValue);origSrcDescriptor.set.call(this,trustedSrc);hit(source);return;}setMatchedAttribute(this);origSrcDescriptor.set.call(this,srcMockData[nodeName]);hit(source);}});var origOnerrorDescriptor=safeGetDescriptor(HTMLElement.prototype,ONERROR_PROPERTY_NAME);if(!origOnerrorDescriptor){return;}Object.defineProperty(HTMLElement.prototype,ONERROR_PROPERTY_NAME,{enumerable:true,configurable:true,get(){return origOnerrorDescriptor.get.call(this);},set(cb){var isMatched=this.getAttribute(source.name)==="matched";if(!isMatched){origOnerrorDescriptor.set.call(this,cb);return true;}origOnerrorDescriptor.set.call(this,noopFunc);return true;}});var addEventListenerWrapper=function addEventListenerWrapper(target,thisArg,args){if(!args[0]||!args[1]||!thisArg){return Reflect.apply(target,thisArg,args);}var eventName=args[0];var isMatched=typeof thisArg.getAttribute==="function"&&thisArg.getAttribute(source.name)==="matched"&&eventName==="error";if(isMatched){return Reflect.apply(target,thisArg,[eventName,noopFunc]);}return Reflect.apply(target,thisArg,args);};var addEventListenerHandler={apply:addEventListenerWrapper};EventTarget.prototype.addEventListener=new Proxy(EventTarget.prototype.addEventListener,addEventListenerHandler);var preventInlineOnerror=function preventInlineOnerror(tagName,src){window.addEventListener("error",function(event){if(!event.target||!event.target.nodeName||event.target.nodeName.toLowerCase()!==tagName||!event.target.src||!src.test(event.target.src)){return;}hit(source);if(typeof event.target.onload==="function"){event.target.onerror=event.target.onload;return;}event.target.onerror=noopFunc;},true);};preventInlineOnerror(tagName,searchRegexp);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function safeGetDescriptor(obj,prop){var descriptor=Object.getOwnPropertyDescriptor(obj,prop);if(descriptor&&descriptor.configurable){return descriptor;}return null;}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventElementSrcLoading.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventEvalIf(source,args){function preventEvalIf(source,search){var searchRegexp=toRegExp(search);var nativeEval=window.eval;window.eval=function(payload){if(!searchRegexp.test(payload.toString())){return nativeEval.call(window,payload);}hit(source);return undefined;}.bind(window);}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventEvalIf.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventFab(source,args){function preventFab(source){hit(source);var Fab=function Fab(){};Fab.prototype.check=noopFunc;Fab.prototype.clearEvent=noopFunc;Fab.prototype.emitEvent=noopFunc;Fab.prototype.on=function(a,b){if(!a){b();}return this;};Fab.prototype.onDetected=noopThis;Fab.prototype.onNotDetected=function(a){a();return this;};Fab.prototype.setOption=noopFunc;Fab.prototype.options={set:noopFunc,get:noopFunc};var fab=new Fab();var getSetFab={get(){return Fab;},set(){}};var getsetfab={get(){return fab;},set(){}};if(Object.prototype.hasOwnProperty.call(window,"FuckAdBlock")){window.FuckAdBlock=Fab;}else {Object.defineProperty(window,"FuckAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"BlockAdBlock")){window.BlockAdBlock=Fab;}else {Object.defineProperty(window,"BlockAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"SniffAdBlock")){window.SniffAdBlock=Fab;}else {Object.defineProperty(window,"SniffAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"fuckAdBlock")){window.fuckAdBlock=fab;}else {Object.defineProperty(window,"fuckAdBlock",getsetfab);}if(Object.prototype.hasOwnProperty.call(window,"blockAdBlock")){window.blockAdBlock=fab;}else {Object.defineProperty(window,"blockAdBlock",getsetfab);}if(Object.prototype.hasOwnProperty.call(window,"sniffAdBlock")){window.sniffAdBlock=fab;}else {Object.defineProperty(window,"sniffAdBlock",getsetfab);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopThis(){return this;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventFab.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventFetch(source,args){function preventFetch(source,propsToMatch){var responseBody=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"emptyObj";var responseType=arguments.length>3?arguments[3]:undefined;if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var nativeRequestClone=Request.prototype.clone;var strResponseBody;if(responseBody===""||responseBody==="emptyObj"){strResponseBody="{}";}else if(responseBody==="emptyArr"){strResponseBody="[]";}else if(responseBody==="emptyStr"){strResponseBody="";}else {logMessage(source,"Invalid responseBody parameter: '".concat(responseBody,"'"));return;}var isResponseTypeSpecified=typeof responseType!=="undefined";var isResponseTypeSupported=function isResponseTypeSupported(responseType){var SUPPORTED_TYPES=["basic","cors","opaque"];return SUPPORTED_TYPES.includes(responseType);};if(isResponseTypeSpecified&&!isResponseTypeSupported(responseType)){logMessage(source,"Invalid responseType parameter: '".concat(responseType,"'"));return;}var getResponseType=function getResponseType(request){try{var mode=request.mode;if(mode===undefined||mode==="cors"||mode==="no-cors"){var fetchURL=new URL(request.url);if(fetchURL.origin===document.location.origin){return "basic";}return mode==="no-cors"?"opaque":"cors";}}catch(error){logMessage(source,"Could not determine response type: ".concat(error));}return undefined;};var handlerWrapper=async function handlerWrapper(target,thisArg,args){var shouldPrevent=false;var fetchData=getFetchData(args,nativeRequestClone);if(typeof propsToMatch==="undefined"){logMessage(source,"fetch( ".concat(objectToString(fetchData)," )"),true);hit(source);return Reflect.apply(target,thisArg,args);}shouldPrevent=matchRequestProps(source,propsToMatch,fetchData);if(shouldPrevent){hit(source);var finalResponseType;try{finalResponseType=responseType||getResponseType(fetchData);var origResponse=await Reflect.apply(target,thisArg,args);if(!origResponse.ok){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType);}return modifyResponse(origResponse,{body:strResponseBody,type:finalResponseType});}catch(ex){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType);}}return Reflect.apply(target,thisArg,args);};var fetchHandler={apply:handlerWrapper};fetch=new Proxy(fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}function modifyResponse(origResponse){var _origResponse$headers;var replacement=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{body:"{}"};var headers={};origResponse===null||origResponse===void 0?void 0:(_origResponse$headers=origResponse.headers)===null||_origResponse$headers===void 0?void 0:_origResponse$headers.forEach(function(value,key){headers[key]=value;});var modifiedResponse=new Response(replacement.body,{status:origResponse.status,statusText:origResponse.statusText,headers:headers});Object.defineProperties(modifiedResponse,{url:{value:origResponse.url},type:{value:replacement.type||origResponse.type}});return modifiedResponse;}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventFetch.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventPopadsNet(source,args){function preventPopadsNet(source){var rid=randomId();var throwError=function throwError(){throw new ReferenceError(rid);};delete window.PopAds;delete window.popns;Object.defineProperties(window,{PopAds:{set:throwError},popns:{set:throwError}});window.onerror=createOnErrorHandler(rid).bind();hit(source);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function randomId(){return Math.random().toString(36).slice(2,9);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventPopadsNet.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventRefresh(source,args){function preventRefresh(source,delaySec){var getMetaElements=function getMetaElements(){var metaNodes=[];try{metaNodes=document.querySelectorAll('meta[http-equiv="refresh" i][content]');}catch(e){try{metaNodes=document.querySelectorAll('meta[http-equiv="refresh"][content]');}catch(e){logMessage(source,e);}}return Array.from(metaNodes);};var getMetaContentDelay=function getMetaContentDelay(metaElements){var delays=metaElements.map(function(meta){var contentString=meta.getAttribute("content");if(contentString.length===0){return null;}var contentDelay;var limiterIndex=contentString.indexOf(";");if(limiterIndex!==-1){var delaySubstring=contentString.substring(0,limiterIndex);contentDelay=getNumberFromString(delaySubstring);}else {contentDelay=getNumberFromString(contentString);}return contentDelay;}).filter(function(delay){return delay!==null;});if(!delays.length){return null;}var minDelay=delays.reduce(function(a,b){return Math.min(a,b);});return minDelay;};var stop=function stop(){var metaElements=getMetaElements();if(metaElements.length===0){return;}var secondsToRun=getNumberFromString(delaySec);if(secondsToRun===null){secondsToRun=getMetaContentDelay(metaElements);}if(secondsToRun===null){return;}var delayMs=secondsToRun*1e3;setTimeout(function(){window.stop();hit(source);},delayMs);};if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",stop,{once:true});}else {stop();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventRefresh.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventRequestAnimationFrame(source,args){function preventRequestAnimationFrame(source,match){var nativeRequestAnimationFrame=window.requestAnimationFrame;var shouldLog=typeof match==="undefined";var _parseMatchArg=parseMatchArg(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var rafWrapper=function rafWrapper(callback){var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"requestAnimationFrame(".concat(String(callback),")"),true);}else if(isValidCallback(callback)&&isValidStrPattern(match)){shouldPrevent=matchRegexp.test(callback.toString())!==isInvertedMatch;}if(shouldPrevent){hit(source);return nativeRequestAnimationFrame(noopFunc);}for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeRequestAnimationFrame.apply(window,[callback,...args]);};window.requestAnimationFrame=rafWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventRequestAnimationFrame.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventSetInterval(source,args){function preventSetInterval(source,matchCallback,matchDelay){var shouldLog=typeof matchCallback==="undefined"&&typeof matchDelay==="undefined";var handlerWrapper=function handlerWrapper(target,thisArg,args){var callback=args[0];var delay=args[1];var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"setInterval(".concat(String(callback),", ").concat(delay,")"),true);}else {shouldPrevent=isPreventionNeeded({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay});}if(shouldPrevent){hit(source);args[0]=noopFunc;}return target.apply(thisArg,args);};var setIntervalHandler={apply:handlerWrapper};window.setInterval=new Proxy(window.setInterval,setIntervalHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isPreventionNeeded(_ref){var callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!isValidCallback(callback)){return false;}if(!isValidMatchStr(matchCallback)||matchDelay&&!isValidMatchNumber(matchDelay)){return false;}var _parseMatchArg=parseMatchArg(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var _parseDelayArg=parseDelayArg(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch;var parsedDelay=parseRawDelay(delay);var shouldPrevent=false;var callbackStr=String(callback);if(delayMatch===null){shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch;}else if(!matchCallback){shouldPrevent=parsedDelay===delayMatch!==isInvertedDelayMatch;}else {shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch;}return shouldPrevent;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function parseDelayArg(delay){var INVERT_MARKER="!";var isInvertedDelayMatch=delay===null||delay===void 0?void 0:delay.startsWith(INVERT_MARKER);var delayValue=isInvertedDelayMatch?delay.slice(1):delay;var parsedDelay=parseInt(delayValue,10);var delayMatch=nativeIsNaN(parsedDelay)?null:parsedDelay;return {isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:delayMatch};}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function isValidMatchNumber(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}var num=parseFloat(str);return !nativeIsNaN(num)&&nativeIsFinite(num);}function parseRawDelay(delay){var parsedDelay=Math.floor(parseInt(delay,10));return typeof parsedDelay==="number"&&!nativeIsNaN(parsedDelay)?parsedDelay:delay;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventSetInterval.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventSetTimeout(source,args){function preventSetTimeout(source,matchCallback,matchDelay){var shouldLog=typeof matchCallback==="undefined"&&typeof matchDelay==="undefined";var handlerWrapper=function handlerWrapper(target,thisArg,args){var callback=args[0];var delay=args[1];var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"setTimeout(".concat(String(callback),", ").concat(delay,")"),true);}else {shouldPrevent=isPreventionNeeded({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay});}if(shouldPrevent){hit(source);args[0]=noopFunc;}return target.apply(thisArg,args);};var setTimeoutHandler={apply:handlerWrapper};window.setTimeout=new Proxy(window.setTimeout,setTimeoutHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isPreventionNeeded(_ref){var callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!isValidCallback(callback)){return false;}if(!isValidMatchStr(matchCallback)||matchDelay&&!isValidMatchNumber(matchDelay)){return false;}var _parseMatchArg=parseMatchArg(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var _parseDelayArg=parseDelayArg(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch;var parsedDelay=parseRawDelay(delay);var shouldPrevent=false;var callbackStr=String(callback);if(delayMatch===null){shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch;}else if(!matchCallback){shouldPrevent=parsedDelay===delayMatch!==isInvertedDelayMatch;}else {shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch;}return shouldPrevent;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function parseDelayArg(delay){var INVERT_MARKER="!";var isInvertedDelayMatch=delay===null||delay===void 0?void 0:delay.startsWith(INVERT_MARKER);var delayValue=isInvertedDelayMatch?delay.slice(1):delay;var parsedDelay=parseInt(delayValue,10);var delayMatch=nativeIsNaN(parsedDelay)?null:parsedDelay;return {isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:delayMatch};}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function isValidMatchNumber(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}var num=parseFloat(str);return !nativeIsNaN(num)&&nativeIsFinite(num);}function parseRawDelay(delay){var parsedDelay=Math.floor(parseInt(delay,10));return typeof parsedDelay==="number"&&!nativeIsNaN(parsedDelay)?parsedDelay:delay;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventSetTimeout.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventWindowOpen(source,args){function preventWindowOpen(source){var match=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"*";var delay=arguments.length>2?arguments[2]:undefined;var replacement=arguments.length>3?arguments[3]:undefined;var nativeOpen=window.open;var isNewSyntax=match!=="0"&&match!=="1";var oldOpenWrapper=function oldOpenWrapper(str){match=Number(match)>0;for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}if(!isValidStrPattern(delay)){logMessage(source,"Invalid parameter: ".concat(delay));return nativeOpen.apply(window,[str,...args]);}var searchRegexp=toRegExp(delay);if(match!==searchRegexp.test(str)){return nativeOpen.apply(window,[str,...args]);}hit(source);return handleOldReplacement(replacement);};var newOpenWrapper=function newOpenWrapper(url){var shouldLog=replacement&&replacement.includes("log");for(var _len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++){args[_key2-1]=arguments[_key2];}if(shouldLog){var argsStr=args&&args.length>0?", ".concat(args.join(", ")):"";var message="".concat(url).concat(argsStr);logMessage(source,message,true);hit(source);}var shouldPrevent=false;if(match==="*"){shouldPrevent=true;}else if(isValidMatchStr(match)){var _parseMatchArg=parseMatchArg(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;shouldPrevent=matchRegexp.test(url)!==isInvertedMatch;}else {logMessage(source,"Invalid parameter: ".concat(match));shouldPrevent=false;}if(shouldPrevent){var parsedDelay=parseInt(delay,10);var result;if(nativeIsNaN(parsedDelay)){result=noopNull();}else {var decoyArgs={replacement:replacement,url:url,delay:parsedDelay};var decoy=createDecoy(decoyArgs);var popup=decoy.contentWindow;if(typeof popup==="object"&&popup!==null){Object.defineProperty(popup,"closed",{value:false});Object.defineProperty(popup,"opener",{value:window});Object.defineProperty(popup,"frameElement",{value:null});}else {var nativeGetter=decoy.contentWindow&&decoy.contentWindow.get;Object.defineProperty(decoy,"contentWindow",{get:getPreventGetter(nativeGetter)});popup=decoy.contentWindow;}result=popup;}hit(source);return result;}return nativeOpen.apply(window,[url,...args]);};window.open=isNewSyntax?newOpenWrapper:oldOpenWrapper;window.open.toString=nativeOpen.toString.bind(nativeOpen);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function handleOldReplacement(replacement){var result;if(!replacement){result=noopFunc;}else if(replacement==="trueFunc"){result=trueFunc;}else if(replacement.includes("=")){var isProp=replacement.startsWith("{")&&replacement.endsWith("}");if(isProp){var propertyPart=replacement.slice(1,-1);var propertyName=substringBefore(propertyPart,"=");var propertyValue=substringAfter(propertyPart,"=");if(propertyValue==="noopFunc"){result={};result[propertyName]=noopFunc;}}}return result;}function createDecoy(args){var UrlPropNameOf=function(UrlPropNameOf){UrlPropNameOf["Object"]="data";UrlPropNameOf["Iframe"]="src";return UrlPropNameOf;}({});var replacement=args.replacement,url=args.url,delay=args.delay;var tag;if(replacement==="obj"){tag="object";}else {tag="iframe";}var decoy=document.createElement(tag);if(decoy instanceof HTMLObjectElement){decoy[UrlPropNameOf.Object]=url;}else if(decoy instanceof HTMLIFrameElement){decoy[UrlPropNameOf.Iframe]=url;}decoy.style.setProperty("height","1px","important");decoy.style.setProperty("position","fixed","important");decoy.style.setProperty("top","-1px","important");decoy.style.setProperty("width","1px","important");document.body.appendChild(decoy);setTimeout(function(){return decoy.remove();},delay*1e3);return decoy;}function getPreventGetter(nativeGetter){var preventGetter=function preventGetter(target,prop){if(prop&&prop==="closed"){return false;}if(typeof nativeGetter==="function"){return noopFunc;}return prop&&target[prop];};return preventGetter;}function noopNull(){return null;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function noopFunc(){}function trueFunc(){return true;}function substringBefore(str,separator){if(!str||!separator){return str;}var index=str.indexOf(separator);return index<0?str:str.substring(0,index);}function substringAfter(str,separator){if(!str){return str;}var index=str.indexOf(separator);return index<0?"":str.substring(index+separator.length);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventWindowOpen.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventXHR(source,args){function preventXHR(source,propsToMatch,customResponseText){if(typeof Proxy==="undefined"){return;}var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var nativeGetResponseHeader=window.XMLHttpRequest.prototype.getResponseHeader;var nativeGetAllResponseHeaders=window.XMLHttpRequest.prototype.getAllResponseHeaders;var xhrData;var modifiedResponse="";var modifiedResponseText="";var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(typeof propsToMatch==="undefined"){logMessage(source,"xhr( ".concat(objectToString(xhrData)," )"),true);hit(source);}else if(matchRequestProps(source,propsToMatch,xhrData)){thisArg.shouldBePrevented=true;thisArg.xhrData=xhrData;}if(thisArg.shouldBePrevented){thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return Reflect.apply(target,thisArg,args);}if(thisArg.responseType==="blob"){modifiedResponse=new Blob();}if(thisArg.responseType==="arraybuffer"){modifiedResponse=new ArrayBuffer();}if(customResponseText){var randomText=generateRandomResponse(customResponseText);if(randomText){modifiedResponseText=randomText;}else {logMessage(source,"Invalid randomize parameter: '".concat(customResponseText,"'"));}}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,statusText=forgedRequest.statusText;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},statusText:{value:statusText,writable:false},responseURL:{value:responseURL||thisArg.xhrData.url,writable:false},responseXML:{value:responseXML,writable:false},status:{value:200,writable:false},response:{value:modifiedResponse,writable:false},responseText:{value:modifiedResponseText,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[thisArg.xhrData.method,thisArg.xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var getHeaderWrapper=function getHeaderWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return nativeGetResponseHeader.apply(thisArg,args);}if(!thisArg.collectedHeaders.length){return null;}var searchHeaderName=args[0].toLowerCase();var matchedHeader=thisArg.collectedHeaders.find(function(header){var headerName=header[0].toLowerCase();return headerName===searchHeaderName;});return matchedHeader?matchedHeader[1]:null;};var getAllHeadersWrapper=function getAllHeadersWrapper(target,thisArg){if(!thisArg.shouldBePrevented){return nativeGetAllResponseHeaders.call(thisArg);}if(!thisArg.collectedHeaders.length){return "";}var allHeadersStr=thisArg.collectedHeaders.map(function(header){var headerName=header[0];var headerValue=header[1];return "".concat(headerName.toLowerCase(),": ").concat(headerValue);}).join("\r\n");return allHeadersStr;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};var getHeaderHandler={apply:getHeaderWrapper};var getAllHeadersHandler={apply:getAllHeadersWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);XMLHttpRequest.prototype.getResponseHeader=new Proxy(XMLHttpRequest.prototype.getResponseHeader,getHeaderHandler);XMLHttpRequest.prototype.getAllResponseHeaders=new Proxy(XMLHttpRequest.prototype.getAllResponseHeaders,getAllHeadersHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function generateRandomResponse(customResponseText){var customResponse=customResponseText;if(customResponse==="true"){customResponse=Math.random().toString(36).slice(-10);return customResponse;}customResponse=customResponse.replace("length:","");var rangeRegex=/^\d+-\d+$/;if(!rangeRegex.test(customResponse)){return null;}var rangeMin=getNumberFromString(customResponse.split("-")[0]);var rangeMax=getNumberFromString(customResponse.split("-")[1]);if(!nativeIsFinite(rangeMin)||!nativeIsFinite(rangeMax)){return null;}if(rangeMin>rangeMax){var temp=rangeMin;rangeMin=rangeMax;rangeMax=temp;}var LENGTH_RANGE_LIMIT=500*1e3;if(rangeMax>LENGTH_RANGE_LIMIT){return null;}var length=getRandomIntInclusive(rangeMin,rangeMax);customResponse=getRandomStrByLength(length);return customResponse;}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function getRandomIntInclusive(min,max){min=Math.ceil(min);max=Math.floor(max);return Math.floor(Math.random()*(max-min+1)+min);}function getRandomStrByLength(length){var result="";var characters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+=~";var charactersLength=characters.length;for(var i=0;i3&&arguments[3]!==undefined?arguments[3]:"asap stay";if(!attrs){return;}attrs=attrs.split(/\s*\|\s*/);if(!selector){selector="[".concat(attrs.join("],["),"]");}var rmattr=function rmattr(){var nodes=[];try{nodes=[].slice.call(document.querySelectorAll(selector));}catch(e){logMessage(source,"Invalid selector arg: '".concat(selector,"'"));}var removed=false;nodes.forEach(function(node){attrs.forEach(function(attr){node.removeAttribute(attr);removed=true;});});if(removed){hit(source);}};var flags=parseFlags(applying);var run=function run(){rmattr();if(!flags.hasFlag(flags.STAY)){return;}observeDOMChanges(rmattr,true);};if(flags.hasFlag(flags.ASAP)){if(document.readyState==="loading"){window.addEventListener("DOMContentLoaded",rmattr,{once:true});}else {rmattr();}}if(document.readyState!=="complete"&&flags.hasFlag(flags.COMPLETE)){window.addEventListener("load",run,{once:true});}else if(flags.hasFlag(flags.STAY)){if(!applying.includes(" ")){rmattr();}observeDOMChanges(rmattr,true);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function parseFlags(flags){var FLAGS_DIVIDER=" ";var ASAP_FLAG="asap";var COMPLETE_FLAG="complete";var STAY_FLAG="stay";var VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG];var passedFlags=flags.trim().split(FLAGS_DIVIDER).filter(function(f){return VALID_FLAGS.includes(f);});return {ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag(flag){return passedFlags.includes(flag);}};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeClass(source,args){function removeClass(source,classNames,selector){var applying=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"asap stay";if(!classNames){return;}classNames=classNames.split(/\s*\|\s*/);var selectors=[];if(!selector){selectors=classNames.map(function(className){return ".".concat(className);});}var removeClassHandler=function removeClassHandler(){var nodes=new Set();if(selector){var foundNodes=[];try{foundNodes=[].slice.call(document.querySelectorAll(selector));}catch(e){logMessage(source,"Invalid selector arg: '".concat(selector,"'"));}foundNodes.forEach(function(n){return nodes.add(n);});}else if(selectors.length>0){selectors.forEach(function(s){var elements=document.querySelectorAll(s);for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function parseFlags(flags){var FLAGS_DIVIDER=" ";var ASAP_FLAG="asap";var COMPLETE_FLAG="complete";var STAY_FLAG="stay";var VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG];var passedFlags=flags.trim().split(FLAGS_DIVIDER).filter(function(f){return VALID_FLAGS.includes(f);});return {ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag(flag){return passedFlags.includes(flag);}};}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeClass.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeCookie(source,args){function removeCookie(source,match){var matchRegexp=toRegExp(match);var removeCookieFromHost=function removeCookieFromHost(cookieName,hostName){var cookieSpec="".concat(cookieName,"=");var domain1="; domain=".concat(hostName);var domain2="; domain=.".concat(hostName);var path="; path=/";var expiration="; expires=Thu, 01 Jan 1970 00:00:00 GMT";document.cookie=cookieSpec+expiration;document.cookie=cookieSpec+domain1+expiration;document.cookie=cookieSpec+domain2+expiration;document.cookie=cookieSpec+path+expiration;document.cookie=cookieSpec+domain1+path+expiration;document.cookie=cookieSpec+domain2+path+expiration;hit(source);};var rmCookie=function rmCookie(){document.cookie.split(";").forEach(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return;}var cookieName=cookieStr.slice(0,pos).trim();if(!matchRegexp.test(cookieName)){return;}var hostParts=document.location.hostname.split(".");for(var i=0;i<=hostParts.length-1;i+=1){var hostName=hostParts.slice(i).join(".");if(hostName){removeCookieFromHost(cookieName,hostName);}}});};rmCookie();window.addEventListener("beforeunload",rmCookie);}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeInShadowDom(source,args){function removeInShadowDom(source,selector,baseSelector){if(!Element.prototype.attachShadow){return;}var removeElement=function removeElement(targetElement){targetElement.remove();};var removeHandler=function removeHandler(){var hostElements=!baseSelector?findHostElements(document.documentElement):document.querySelectorAll(baseSelector);var _loop=function _loop(){var isRemoved=false;var _pierceShadowDom=pierceShadowDom(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach(function(targetEl){removeElement(targetEl);isRemoved=true;});if(isRemoved){hit(source);}hostElements=innerHosts;};while(hostElements.length!==0){_loop();}};removeHandler();observeDOMChanges(removeHandler,true);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function findHostElements(rootElement){var hosts=[];if(rootElement){var domElems=rootElement.querySelectorAll("*");domElems.forEach(function(el){if(el.shadowRoot){hosts.push(el);}});}return hosts;}function pierceShadowDom(selector,hostElements){var targets=[];var innerHostsAcc=[];hostElements.forEach(function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot;var shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren));innerHostsAcc.push(findHostElements(shadowRootElem));});var innerHosts=flatten(innerHostsAcc);return {targets:targets,innerHosts:innerHosts};}function flatten(input){var stack=[];input.forEach(function(el){return stack.push(el);});var res=[];while(stack.length){var next=stack.pop();if(Array.isArray(next)){next.forEach(function(el){return stack.push(el);});}else {res.push(next);}}return res.reverse();}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeNodeText(source,args){function removeNodeText(source,nodeName,textMatch){var _parseNodeTextParams=parseNodeTextParams(nodeName,textMatch),selector=_parseNodeTextParams.selector,nodeNameMatch=_parseNodeTextParams.nodeNameMatch,textContentMatch=_parseNodeTextParams.textContentMatch;var handleNodes=function handleNodes(nodes){return nodes.forEach(function(node){var shouldReplace=isTargetNode(node,nodeNameMatch,textContentMatch);if(shouldReplace){var ALL_TEXT_PATTERN=/^[\s\S]*$/;var REPLACEMENT="";replaceNodeText(source,node,ALL_TEXT_PATTERN,REPLACEMENT);}});};if(document.documentElement){handleExistingNodes(selector,handleNodes);}observeDocumentWithTimeout(function(mutations){return handleMutations(mutations,handleNodes);});}function observeDocumentWithTimeout(callback){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function handleExistingNodes(selector,handler){var nodeList=document.querySelectorAll(selector);var nodes=nodeListToArray(nodeList);handler(nodes);}function handleMutations(mutations,handler){var addedNodes=getAddedNodes(mutations);handler(addedNodes);}function replaceNodeText(source,node,pattern,replacement){var textContent=node.textContent;if(textContent){node.textContent=textContent.replace(pattern,replacement);hit(source);}}function isTargetNode(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent;var nodeNameLowerCase=nodeName.toLowerCase();return textContent!==null&&textContent!==""&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch));}function parseNodeTextParams(nodeName,textMatch){var pattern=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;var REGEXP_START_MARKER="/";var isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER));var selector=isStringNameMatch?nodeName:"*";var nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName);var textContentMatch=!textMatch.startsWith(REGEXP_START_MARKER)?textMatch:toRegExp(textMatch);var patternMatch;if(pattern){patternMatch=!pattern.startsWith(REGEXP_START_MARKER)?pattern:toRegExp(pattern);}return {selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function nodeListToArray(nodeList){var nodes=[];for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeNodeText.apply(this,updatedArgs);}catch(e){console.log(e);}}function setAttr(source,args){function setAttr(source,selector,attr){var value=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(!selector||!attr){return;}var allowedValues=["true","false"];var shouldCopyValue=value.startsWith("[")&&value.endsWith("]");var isValidValue=value.length===0||!nativeIsNaN(parseInt(value,10))&&parseInt(value,10)>0&&parseInt(value,10)<32767||allowedValues.includes(value.toLowerCase());if(!shouldCopyValue&&!isValidValue){logMessage(source,"Invalid attribute value provided: '".concat(convertTypeToString(value),"'"));return;}var attributeHandler;if(shouldCopyValue){attributeHandler=function attributeHandler(elem,attr,value){var valueToCopy=elem.getAttribute(value.slice(1,-1));if(valueToCopy===null){logMessage(source,"No element attribute found to copy value from: ".concat(value));}elem.setAttribute(attr,valueToCopy);};}setAttributeBySelector(source,selector,attr,value,attributeHandler);observeDOMChanges(function(){return setAttributeBySelector(source,selector,attr,value,attributeHandler);},true);}function setAttributeBySelector(source,selector,attribute,value){var attributeSetter=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultAttributeSetter;var elements;try{elements=document.querySelectorAll(selector);}catch(_unused){logMessage(source,'Failed to find elements matching selector "'.concat(selector,'"'));return;}if(!elements||elements.length===0){return;}try{elements.forEach(function(elem){return attributeSetter(elem,attribute,value);});hit(source);}catch(_unused2){logMessage(source,"Failed to set [".concat(attribute,'="').concat(value,'"] to each of selected elements.'));}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function convertTypeToString(value){var output;if(typeof value==="undefined"){output="undefined";}else if(typeof value==="object"){if(value===null){output="null";}else {output=objectToString(value);}}else {output=String(value);}return output;}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{setAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function setConstant(source,args){function setConstant(source,property,value){var stack=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var valueWrapper=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var setProxyTrap=arguments.length>5&&arguments[5]!==undefined?arguments[5]:false;var uboAliases=["set-constant.js","ubo-set-constant.js","set.js","ubo-set.js","ubo-set-constant","ubo-set"];if(uboAliases.includes(source.name)){if(stack.length!==1&&!getNumberFromString(stack)){valueWrapper=stack;}stack=undefined;}if(!property||!matchStackTrace(stack,new Error().stack)){return;}var isProxyTrapSet=false;var emptyArr=noopArray();var emptyObj=noopObject();var constantValue;if(value==="undefined"){constantValue=undefined;}else if(value==="false"){constantValue=false;}else if(value==="true"){constantValue=true;}else if(value==="null"){constantValue=null;}else if(value==="emptyArr"){constantValue=emptyArr;}else if(value==="emptyObj"){constantValue=emptyObj;}else if(value==="noopFunc"){constantValue=noopFunc;}else if(value==="noopCallbackFunc"){constantValue=noopCallbackFunc;}else if(value==="trueFunc"){constantValue=trueFunc;}else if(value==="falseFunc"){constantValue=falseFunc;}else if(value==="throwFunc"){constantValue=throwFunc;}else if(value==="noopPromiseResolve"){constantValue=noopPromiseResolve;}else if(value==="noopPromiseReject"){constantValue=noopPromiseReject;}else if(/^\d+$/.test(value)){constantValue=parseFloat(value);if(nativeIsNaN(constantValue)){return;}if(Math.abs(constantValue)>32767){return;}}else if(value==="-1"){constantValue=-1;}else if(value===""){constantValue="";}else if(value==="yes"){constantValue="yes";}else if(value==="no"){constantValue="no";}else {return;}var valueWrapperNames=["asFunction","asCallback","asResolved","asRejected"];if(valueWrapperNames.includes(valueWrapper)){var valueWrappersMap={asFunction(v){return function(){return v;};},asCallback(v){return function(){return function(){return v;};};},asResolved(v){return Promise.resolve(v);},asRejected(v){return Promise.reject(v);}};constantValue=valueWrappersMap[valueWrapper](constantValue);}var canceled=false;var mustCancel=function mustCancel(value){if(canceled){return canceled;}canceled=value!==undefined&&constantValue!==undefined&&typeof value!==typeof constantValue&&value!==null;return canceled;};var trapProp=function trapProp(base,prop,configurable,handler){if(!handler.init(base[prop])){return false;}var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);var prevSetter;if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message="Property '".concat(prop,"' is not configurable");logMessage(source,message);return false;}if(base[prop]){base[prop]=constantValue;}if(origDescriptor.set instanceof Function){prevSetter=origDescriptor.set;}}Object.defineProperty(base,prop,{configurable:configurable,get(){return handler.get();},set(a){if(prevSetter!==undefined){prevSetter(a);}if(a instanceof Object){var propertiesToCheck=property.split(".").slice(1);if(setProxyTrap&&!isProxyTrapSet){isProxyTrapSet=true;a=new Proxy(a,{get:function get(target,propertyKey,val){propertiesToCheck.reduce(function(object,currentProp,index,array){var currentObj=object===null||object===void 0?void 0:object[currentProp];if(index===array.length-1&¤tObj!==constantValue){object[currentProp]=constantValue;}return currentObj||object;},target);return Reflect.get(target,propertyKey,val);}});}}handler.set(a);}});return true;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;var inChainPropHandler={factValue:undefined,init(a){this.factValue=a;return true;},get(){return this.factValue;},set(a){if(this.factValue===a){return;}this.factValue=a;if(a instanceof Object){setChainPropAccess(a,chain);}}};var endPropHandler={init(a){if(mustCancel(a)){return false;}return true;},get(){return constantValue;},set(a){if(!mustCancel(a)){return;}constantValue=a;}};if(!chain){var isTrapped=trapProp(base,prop,false,endPropHandler);if(isTrapped){hit(source);}return;}if(base!==undefined&&base[prop]===null){trapProp(base,prop,true,inChainPropHandler);return;}if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){trapProp(base,prop,true,inChainPropHandler);}var propValue=owner[prop];if(propValue instanceof Object||typeof propValue==="object"&&propValue!==null){setChainPropAccess(propValue,chain);}trapProp(base,prop,true,inChainPropHandler);};setChainPropAccess(window,property);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function noopArray(){return [];}function noopObject(){return {};}function noopFunc(){}function noopCallbackFunc(){return noopFunc;}function trueFunc(){return true;}function falseFunc(){return false;}function throwFunc(){throw new Error();}function noopPromiseReject(){return Promise.reject();}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{setConstant.apply(this,updatedArgs);}catch(e){console.log(e);}}function setCookie(source,args){function setCookie(source,name,value){var path=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"/";var domain=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var validValue=getLimitedCookieValue(value);if(validValue===null){logMessage(source,"Invalid cookie value: '".concat(validValue,"'"));return;}if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,validValue,path,domain);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}hit(source);document.cookie=cookieToSet;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function getLimitedCookieValue(value){if(!value){return null;}var allowedCookieValues=new Set(["true","t","false","f","yes","y","no","n","ok","on","off","accept","accepted","notaccepted","reject","rejected","allow","allowed","disallow","deny","enable","enabled","disable","disabled","necessary","required"]);var validValue;if(allowedCookieValues.has(value.toLowerCase())){validValue=value;}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){return null;}if(Math.abs(validValue)<0||Math.abs(validValue)>32767){return null;}}else {return null;}return validValue;}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{setCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function setCookieReload(source,args){function setCookieReload(source,name,value){var path=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"/";var domain=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(isCookieSetWithValue(document.cookie,name,value)){return;}var validValue=getLimitedCookieValue(value);if(validValue===null){logMessage(source,"Invalid cookie value: '".concat(value,"'"));return;}if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,validValue,path,domain);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}document.cookie=cookieToSet;hit(source);if(isCookieSetWithValue(document.cookie,name,value)){window.location.reload();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(";").some(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return false;}var cookieName=cookieStr.slice(0,pos).trim();var cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue;});}function getLimitedCookieValue(value){if(!value){return null;}var allowedCookieValues=new Set(["true","t","false","f","yes","y","no","n","ok","on","off","accept","accepted","notaccepted","reject","rejected","allow","allowed","disallow","deny","enable","enabled","disable","disabled","necessary","required"]);var validValue;if(allowedCookieValues.has(value.toLowerCase())){validValue=value;}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){return null;}if(Math.abs(validValue)<0||Math.abs(validValue)>32767){return null;}}else {return null;}return validValue;}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{setCookieReload.apply(this,updatedArgs);}catch(e){console.log(e);}}function setLocalStorageItem(source,args){function setLocalStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified.");return;}var validValue;try{validValue=getLimitedStorageItemValue(value);}catch(_unused){logMessage(source,"Invalid storage item value: '".concat(value,"'"));return;}var _window=window,localStorage=_window.localStorage;if(validValue==="$remove$"){removeStorageItem(source,localStorage,key);}else {setStorageItem(source,localStorage,key,validValue);}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function removeStorageItem(source,storage,key){try{if(key.startsWith("/")&&(key.endsWith("/")||key.endsWith("/i"))&&isValidStrPattern(key)){var regExpKey=toRegExp(key);var storageKeys=Object.keys(storage);storageKeys.forEach(function(storageKey){if(regExpKey.test(storageKey)){storage.removeItem(storageKey);}});}else {storage.removeItem(key);}}catch(e){var message="Unable to remove storage item due to: ".concat(e.message);logMessage(source,message);}}function getLimitedStorageItemValue(value){if(typeof value!=="string"){throw new Error("Invalid value");}var allowedStorageValues=new Set(["undefined","false","true","null","","yes","no","on","off"]);var validValue;if(allowedStorageValues.has(value.toLowerCase())){validValue=value;}else if(value==="emptyArr"){validValue="[]";}else if(value==="emptyObj"){validValue="{}";}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){throw new Error("Invalid value");}if(Math.abs(validValue)>32767){throw new Error("Invalid value");}}else if(value==="$remove$"){validValue="$remove$";}else {throw new Error("Invalid value");}return validValue;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{setLocalStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function setPopadsDummy(source,args){function setPopadsDummy(source){delete window.PopAds;delete window.popns;Object.defineProperties(window,{PopAds:{get:function get(){hit(source);return {};}},popns:{get:function get(){hit(source);return {};}}});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{setPopadsDummy.apply(this,updatedArgs);}catch(e){console.log(e);}}function setSessionStorageItem(source,args){function setSessionStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified.");return;}var validValue;try{validValue=getLimitedStorageItemValue(value);}catch(_unused){logMessage(source,"Invalid storage item value: '".concat(value,"'"));return;}var _window=window,sessionStorage=_window.sessionStorage;if(validValue==="$remove$"){removeStorageItem(source,sessionStorage,key);}else {setStorageItem(source,sessionStorage,key,validValue);}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function removeStorageItem(source,storage,key){try{if(key.startsWith("/")&&(key.endsWith("/")||key.endsWith("/i"))&&isValidStrPattern(key)){var regExpKey=toRegExp(key);var storageKeys=Object.keys(storage);storageKeys.forEach(function(storageKey){if(regExpKey.test(storageKey)){storage.removeItem(storageKey);}});}else {storage.removeItem(key);}}catch(e){var message="Unable to remove storage item due to: ".concat(e.message);logMessage(source,message);}}function getLimitedStorageItemValue(value){if(typeof value!=="string"){throw new Error("Invalid value");}var allowedStorageValues=new Set(["undefined","false","true","null","","yes","no","on","off"]);var validValue;if(allowedStorageValues.has(value.toLowerCase())){validValue=value;}else if(value==="emptyArr"){validValue="[]";}else if(value==="emptyObj"){validValue="{}";}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){throw new Error("Invalid value");}if(Math.abs(validValue)>32767){throw new Error("Invalid value");}}else if(value==="$remove$"){validValue="$remove$";}else {throw new Error("Invalid value");}return validValue;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{setSessionStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function spoofCSS(source,args){function spoofCSS(source,selectors,cssPropertyName,cssPropertyValue){if(!selectors){return;}var uboAliases=["spoof-css.js","ubo-spoof-css.js","ubo-spoof-css"];function convertToCamelCase(cssProperty){if(!cssProperty.includes("-")){return cssProperty;}var splittedProperty=cssProperty.split("-");var firstPart=splittedProperty[0];var secondPart=splittedProperty[1];return "".concat(firstPart).concat(secondPart[0].toUpperCase()).concat(secondPart.slice(1));}var shouldDebug=!!(cssPropertyName==="debug"&&cssPropertyValue);var propToValueMap=new Map();if(uboAliases.includes(source.name)){var args=source.args;var arrayOfProperties=[];var isDebug=args.at(-2);if(isDebug==="debug"){arrayOfProperties=args.slice(1,-2);}else {arrayOfProperties=args.slice(1);}for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var delay=arguments.length>3&&arguments[3]!==undefined?arguments[3]:NaN;if(!selectors){return;}var OBSERVER_TIMEOUT_MS=1e4;var THROTTLE_DELAY_MS=20;var STATIC_CLICK_DELAY_MS=150;var COOKIE_MATCH_MARKER="cookie:";var LOCAL_STORAGE_MATCH_MARKER="localStorage:";var SELECTORS_DELIMITER=",";var COOKIE_STRING_DELIMITER=";";var EXTRA_MATCH_DELIMITER=/(,\s*){1}(?=!?cookie:|!?localStorage:)/;var sleep=function sleep(delayMs){return new Promise(function(resolve){return setTimeout(resolve,delayMs);});};var parsedDelay;if(delay){parsedDelay=parseInt(delay,10);var isValidDelay=!Number.isNaN(parsedDelay)||parsedDelay0){var parsedCookieMatches=parseCookieString(cookieMatches.join(COOKIE_STRING_DELIMITER));var parsedCookies=parseCookieString(document.cookie);var cookieKeys=Object.keys(parsedCookies);if(cookieKeys.length===0){return;}var cookiesMatched=Object.keys(parsedCookieMatches).every(function(key){var valueMatch=parsedCookieMatches[key]?toRegExp(parsedCookieMatches[key]):null;var keyMatch=toRegExp(key);return cookieKeys.some(function(key){var keysMatched=keyMatch.test(key);if(!keysMatched){return false;}if(!valueMatch){return true;}return valueMatch.test(parsedCookies[key]);});});var shouldRun=cookiesMatched!==isInvertedMatchCookie;if(!shouldRun){return;}}if(localStorageMatches.length>0){var localStorageMatched=localStorageMatches.every(function(str){var itemValue=window.localStorage.getItem(str);return itemValue||itemValue==="";});var _shouldRun=localStorageMatched!==isInvertedMatchLocalStorage;if(!_shouldRun){return;}}var selectorsSequence=selectors.split(SELECTORS_DELIMITER).map(function(selector){return selector.trim();});var createElementObj=function createElementObj(element){return {element:element||null,clicked:false};};var elementsSequence=Array(selectorsSequence.length).fill(createElementObj());var clickElementsBySequence=async function clickElementsBySequence(){for(var i=0;i=1){await sleep(STATIC_CLICK_DELAY_MS);}if(!elementObj.element){break;}if(!elementObj.clicked){elementObj.element.click();elementObj.clicked=true;}}var allElementsClicked=elementsSequence.every(function(elementObj){return elementObj.clicked===true;});if(allElementsClicked){hit(source);}};var handleElement=function handleElement(element,i){var elementObj=createElementObj(element);elementsSequence[i]=elementObj;if(canClick){clickElementsBySequence();}};var findElements=function findElements(mutations,observer){var fulfilledSelectors=[];selectorsSequence.forEach(function(selector,i){if(!selector){return;}var element=queryShadowSelector(selector);if(!element){return;}handleElement(element,i);fulfilledSelectors.push(selector);});selectorsSequence=selectorsSequence.map(function(selector){return fulfilledSelectors.includes(selector)?null:selector;});var allSelectorsFulfilled=selectorsSequence.every(function(selector){return selector===null;});if(allSelectorsFulfilled){observer.disconnect();}};var observer=new MutationObserver(throttle(findElements,THROTTLE_DELAY_MS));observer.observe(document.documentElement,{attributes:true,childList:true,subtree:true});if(parsedDelay){setTimeout(function(){clickElementsBySequence();canClick=true;},parsedDelay);}setTimeout(function(){return observer.disconnect();},OBSERVER_TIMEOUT_MS);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function parseCookieString(cookieString){var COOKIE_DELIMITER="=";var COOKIE_PAIRS_DELIMITER=";";var cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER);var cookieData={};cookieChunks.forEach(function(singleCookie){var cookieKey;var cookieValue="";var delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);if(delimiterIndex===-1){cookieKey=singleCookie.trim();}else {cookieKey=singleCookie.slice(0,delimiterIndex).trim();cookieValue=singleCookie.slice(delimiterIndex+1);}cookieData[cookieKey]=cookieValue||null;});return cookieData;}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function queryShadowSelector(selector){var context=arguments.length>1&&arguments[1]!==undefined?arguments[1]:document.documentElement;var SHADOW_COMBINATOR=" >>> ";var pos=selector.indexOf(SHADOW_COMBINATOR);if(pos===-1){return context.querySelector(selector);}var shadowHostSelector=selector.slice(0,pos).trim();var elem=context.querySelector(shadowHostSelector);if(!elem||!elem.shadowRoot){return null;}var shadowRootSelector=selector.slice(pos+SHADOW_COMBINATOR.length).trim();return queryShadowSelector(shadowRootSelector,elem.shadowRoot);}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedClickElement.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedCreateElement(source,args){function trustedCreateElement(source,parentSelector,tagName){var attributePairs=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var textContent=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var cleanupDelayMs=arguments.length>5&&arguments[5]!==undefined?arguments[5]:NaN;if(!parentSelector||!tagName){return;}var IFRAME_WINDOW_NAME="trusted-create-element-window";if(window.name===IFRAME_WINDOW_NAME){return;}var logError=function logError(prefix,error){logMessage(source,"".concat(prefix," due to ").concat(getErrorMessage(error)));};var element;try{element=document.createElement(tagName);element.textContent=textContent;}catch(e){logError("Cannot create element with tag name '".concat(tagName,"'"),e);return;}var attributes=[];try{attributes=parseAttributePairs(attributePairs);}catch(e){logError("Cannot parse attributePairs param: '".concat(attributePairs,"'"),e);return;}attributes.forEach(function(attr){try{element.setAttribute(attr.name,attr.value);}catch(e){logError("Cannot set attribute '".concat(attr.name,"' with value '").concat(attr.value,"'"),e);}});var timerId;var findParentAndAppendEl=function findParentAndAppendEl(parentElSelector,el,removeElDelayMs){var parentEl;try{parentEl=document.querySelector(parentElSelector);}catch(e){logError("Cannot find parent element by selector '".concat(parentElSelector,"'"),e);return false;}if(!parentEl){logMessage(source,"No parent element found by selector: '".concat(parentElSelector,"'"));return false;}try{parentEl.append(el);if(el instanceof HTMLIFrameElement&&el.contentWindow){el.contentWindow.name=IFRAME_WINDOW_NAME;}hit(source);}catch(e){logError("Cannot append child to parent by selector '".concat(parentElSelector,"'"),e);return false;}if(!nativeIsNaN(removeElDelayMs)){timerId=setTimeout(function(){el.remove();clearTimeout(timerId);},removeElDelayMs);}return true;};if(!findParentAndAppendEl(parentSelector,element,cleanupDelayMs)){observeDocumentWithTimeout(function(mutations,observer){if(findParentAndAppendEl(parentSelector,element,cleanupDelayMs)){observer.disconnect();}});}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function observeDocumentWithTimeout(callback){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseAttributePairs(input){if(!input){return [];}var NAME_VALUE_SEPARATOR="=";var PAIRS_SEPARATOR=" ";var SINGLE_QUOTE="'";var DOUBLE_QUOTE='"';var BACKSLASH="\\";var pairs=[];for(var i=0;i4&&arguments[4]!==undefined?arguments[4]:"";if(!functionName){return;}var nativeObjects={nativeStringify:window.JSON.stringify};var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(!base||!prop||typeof base[prop]!=="function"){var message="".concat(functionName," is not a function");logMessage(source,message);return;}var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var objectWrapper=function objectWrapper(target,thisArg,args){var data=args[0];if(typeof data==="object"){data=jsonPruner(source,data,prunePaths,requiredPaths,stack,nativeObjects);args[0]=data;}return Reflect.apply(target,thisArg,args);};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(base[prop],objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index1&&arguments[1]!==undefined?arguments[1]:"";var replacement=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";var propsToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}if(pattern===""&&replacement!==""){logMessage(source,"Pattern argument should not be empty string");return;}var shouldLog=pattern===""&&replacement==="";var nativeRequestClone=Request.prototype.clone;var nativeFetch=fetch;var shouldReplace=false;var fetchData;var handlerWrapper=function handlerWrapper(target,thisArg,args){fetchData=getFetchData(args,nativeRequestClone);if(shouldLog){logMessage(source,"fetch( ".concat(objectToString(fetchData)," )"),true);hit(source);return Reflect.apply(target,thisArg,args);}shouldReplace=matchRequestProps(source,propsToMatch,fetchData);if(!shouldReplace){return Reflect.apply(target,thisArg,args);}return nativeFetch.apply(null,args).then(function(response){return response.text().then(function(bodyText){var patternRegexp=pattern==="*"?/(\n|.)*/:toRegExp(pattern);var modifiedTextContent=bodyText.replace(patternRegexp,replacement);var forgedResponse=forgeResponse(response,modifiedTextContent);hit(source);return forgedResponse;}).catch(function(){var fetchDataStr=objectToString(fetchData);var message="Response body can't be converted to text: ".concat(fetchDataStr);logMessage(source,message);return Reflect.apply(target,thisArg,args);});}).catch(function(){return Reflect.apply(target,thisArg,args);});};var fetchHandler={apply:handlerWrapper};fetch=new Proxy(fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function forgeResponse(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url;var forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}});return forgedResponse;}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceFetchResponse.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedReplaceNodeText(source,args){function trustedReplaceNodeText(source,nodeName,textMatch,pattern,replacement){var uboAliases=["replace-node-text.js","rpnt.js","sed.js"];if(uboAliases.includes(source.name)){replacement=pattern;pattern=textMatch;for(var _len=arguments.length,extraArgs=new Array(_len>5?_len-5:0),_key=5;_key<_len;_key++){extraArgs[_key-5]=arguments[_key];}for(var i=0;i1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function handleExistingNodes(selector,handler){var nodeList=document.querySelectorAll(selector);var nodes=nodeListToArray(nodeList);handler(nodes);}function handleMutations(mutations,handler){var addedNodes=getAddedNodes(mutations);handler(addedNodes);}function replaceNodeText(source,node,pattern,replacement){var textContent=node.textContent;if(textContent){node.textContent=textContent.replace(pattern,replacement);hit(source);}}function isTargetNode(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent;var nodeNameLowerCase=nodeName.toLowerCase();return textContent!==null&&textContent!==""&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch));}function parseNodeTextParams(nodeName,textMatch){var pattern=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;var REGEXP_START_MARKER="/";var isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER));var selector=isStringNameMatch?nodeName:"*";var nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName);var textContentMatch=!textMatch.startsWith(REGEXP_START_MARKER)?textMatch:toRegExp(textMatch);var patternMatch;if(pattern){patternMatch=!pattern.startsWith(REGEXP_START_MARKER)?pattern:toRegExp(pattern);}return {selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function nodeListToArray(nodeList){var nodes=[];for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceNodeText.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedReplaceXhrResponse(source,args){function trustedReplaceXhrResponse(source){var pattern=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var replacement=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";var propsToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof Proxy==="undefined"){return;}if(pattern===""&&replacement!==""){var message="Pattern argument should not be empty string.";logMessage(source,message);return;}var shouldLog=pattern===""&&replacement==="";var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(shouldLog){var _message="xhr( ".concat(objectToString(xhrData)," )");logMessage(source,_message,true);hit(source);return Reflect.apply(target,thisArg,args);}if(matchRequestProps(source,propsToMatch,xhrData)){thisArg.shouldBePrevented=true;thisArg.headersReceived=!!thisArg.headersReceived;}if(thisArg.shouldBePrevented&&!thisArg.headersReceived){thisArg.headersReceived=true;thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"){return;}var patternRegexp=pattern==="*"?/(\n|.)*/:toRegExp(pattern);var modifiedContent=content.replace(patternRegexp,replacement);Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:modifiedContent,writable:false},responseText:{value:modifiedContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceXhrResponse.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetAttr(source,args){function trustedSetAttr(source,selector,attr){var value=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(!selector||!attr){return;}setAttributeBySelector(source,selector,attr,value);observeDOMChanges(function(){return setAttributeBySelector(source,selector,attr,value);},true);}function setAttributeBySelector(source,selector,attribute,value){var attributeSetter=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultAttributeSetter;var elements;try{elements=document.querySelectorAll(selector);}catch(_unused){logMessage(source,'Failed to find elements matching selector "'.concat(selector,'"'));return;}if(!elements||elements.length===0){return;}try{elements.forEach(function(elem){return attributeSetter(elem,attribute,value);});hit(source);}catch(_unused2){logMessage(source,"Failed to set [".concat(attribute,'="').concat(value,'"] to each of selected elements.'));}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetConstant(source,args){function trustedSetConstant(source,property,value,stack){if(!property||!matchStackTrace(stack,new Error().stack)){return;}var constantValue;try{constantValue=inferValue(value);}catch(e){logMessage(source,e);return;}var canceled=false;var mustCancel=function mustCancel(value){if(canceled){return canceled;}canceled=value!==undefined&&constantValue!==undefined&&typeof value!==typeof constantValue&&value!==null;return canceled;};var trapProp=function trapProp(base,prop,configurable,handler){if(!handler.init(base[prop])){return false;}var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);var prevSetter;if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message="Property '".concat(prop,"' is not configurable");logMessage(source,message);return false;}base[prop]=constantValue;if(origDescriptor.set instanceof Function){prevSetter=origDescriptor.set;}}Object.defineProperty(base,prop,{configurable:configurable,get(){return handler.get();},set(a){if(prevSetter!==undefined){prevSetter(a);}handler.set(a);}});return true;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;var inChainPropHandler={factValue:undefined,init(a){this.factValue=a;return true;},get(){return this.factValue;},set(a){if(this.factValue===a){return;}this.factValue=a;if(a instanceof Object){setChainPropAccess(a,chain);}}};var endPropHandler={init(a){if(mustCancel(a)){return false;}return true;},get(){return constantValue;},set(a){if(!mustCancel(a)){return;}constantValue=a;}};if(!chain){var isTrapped=trapProp(base,prop,false,endPropHandler);if(isTrapped){hit(source);}return;}if(base!==undefined&&base[prop]===null){trapProp(base,prop,true,inChainPropHandler);return;}if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){trapProp(base,prop,true,inChainPropHandler);}var propValue=owner[prop];if(propValue instanceof Object||typeof propValue==="object"&&propValue!==null){setChainPropAccess(propValue,chain);}trapProp(base,prop,true,inChainPropHandler);};setChainPropAccess(window,property);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function inferValue(value){if(value==="undefined"){return undefined;}if(value==="false"){return false;}if(value==="true"){return true;}if(value==="null"){return null;}if(value==="NaN"){return NaN;}if(value.startsWith("/")&&value.endsWith("/")){return toRegExp(value);}var MAX_ALLOWED_NUM=32767;var numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM){throw new Error("number values bigger than 32767 are not allowed");}return numVal;}var errorMessage="'".concat(value,"' value type can't be inferred");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||typeof parsableVal==="string"){return parsableVal;}}catch(e){errorMessage+=": ".concat(e);}throw new TypeError(errorMessage);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var path=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"/";var domain=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";if(typeof name==="undefined"){logMessage(source,"Cookie name should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Cookie value should be specified");return;}var parsedValue=parseKeywordValue(value);if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,parsedValue,path,domain,false);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}if(offsetExpiresSec){var parsedOffsetMs=getTrustedCookieOffsetMs(offsetExpiresSec);if(!parsedOffsetMs){logMessage(source,"Invalid offsetExpiresSec value: ".concat(offsetExpiresSec));return;}var expires=Date.now()+parsedOffsetMs;cookieToSet+="; expires=".concat(new Date(expires).toUTCString());}document.cookie=cookieToSet;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getTrustedCookieOffsetMs(offsetExpiresSec){var ONE_YEAR_EXPIRATION_KEYWORD="1year";var ONE_DAY_EXPIRATION_KEYWORD="1day";var MS_IN_SEC=1e3;var SECONDS_IN_YEAR=365*24*60*60;var SECONDS_IN_DAY=24*60*60;var parsedSec;if(offsetExpiresSec===ONE_YEAR_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_YEAR;}else if(offsetExpiresSec===ONE_DAY_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_DAY;}else {parsedSec=Number.parseInt(offsetExpiresSec,10);if(Number.isNaN(parsedSec)){return null;}}return parsedSec*MS_IN_SEC;}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetCookieReload(source,args){function trustedSetCookieReload(source,name,value){var offsetExpiresSec=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var path=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"/";var domain=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";if(typeof name==="undefined"){logMessage(source,"Cookie name should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Cookie value should be specified");return;}if(isCookieSetWithValue(document.cookie,name,value)){return;}var parsedValue=parseKeywordValue(value);if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,parsedValue,path,domain,false);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}if(offsetExpiresSec){var parsedOffsetMs=getTrustedCookieOffsetMs(offsetExpiresSec);if(!parsedOffsetMs){logMessage(source,"Invalid offsetExpiresSec value: ".concat(offsetExpiresSec));return;}var expires=Date.now()+parsedOffsetMs;cookieToSet+="; expires=".concat(new Date(expires).toUTCString());}document.cookie=cookieToSet;hit(source);var cookieValueToCheck=parseCookieString(document.cookie)[name];if(isCookieSetWithValue(document.cookie,name,cookieValueToCheck)){window.location.reload();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(";").some(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return false;}var cookieName=cookieStr.slice(0,pos).trim();var cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue;});}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getTrustedCookieOffsetMs(offsetExpiresSec){var ONE_YEAR_EXPIRATION_KEYWORD="1year";var ONE_DAY_EXPIRATION_KEYWORD="1day";var MS_IN_SEC=1e3;var SECONDS_IN_YEAR=365*24*60*60;var SECONDS_IN_DAY=24*60*60;var parsedSec;if(offsetExpiresSec===ONE_YEAR_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_YEAR;}else if(offsetExpiresSec===ONE_DAY_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_DAY;}else {parsedSec=Number.parseInt(offsetExpiresSec,10);if(Number.isNaN(parsedSec)){return null;}}return parsedSec*MS_IN_SEC;}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}function parseCookieString(cookieString){var COOKIE_DELIMITER="=";var COOKIE_PAIRS_DELIMITER=";";var cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER);var cookieData={};cookieChunks.forEach(function(singleCookie){var cookieKey;var cookieValue="";var delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);if(delimiterIndex===-1){cookieKey=singleCookie.trim();}else {cookieKey=singleCookie.slice(0,delimiterIndex).trim();cookieValue=singleCookie.slice(delimiterIndex+1);}cookieData[cookieKey]=cookieValue||null;});return cookieData;}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetCookieReload.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetLocalStorageItem(source,args){function trustedSetLocalStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Item value should be specified");return;}var parsedValue=parseKeywordValue(value);var _window=window,localStorage=_window.localStorage;setStorageItem(source,localStorage,key,parsedValue);hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetLocalStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSuppressNativeMethod(source,args){function trustedSuppressNativeMethod(source,methodPath,signatureStr){var how=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"abort";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(!methodPath||!signatureStr){return;}var IGNORE_ARG_SYMBOL=" ";var suppress=how==="abort"?getAbortFunc():function(){};var signatureMatcher;try{signatureMatcher=signatureStr.split("|").map(function(value){return value===IGNORE_ARG_SYMBOL?value:inferValue(value);});}catch(e){logMessage(source,"Could not parse the signature matcher: ".concat(getErrorMessage(e)));return;}var getPathParts=getPropertyInChain;var _getPathParts=getPathParts(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(typeof chain!=="undefined"){logMessage(source,"Could not reach the end of the prop chain: ".concat(methodPath));return;}var nativeMethod=base[prop];if(!nativeMethod||typeof nativeMethod!=="function"){logMessage(source,"Could not retrieve the method: ".concat(methodPath));return;}function matchMethodCall(nativeArguments,matchArguments){return matchArguments.every(function(matcher,i){if(matcher===IGNORE_ARG_SYMBOL){return true;}var argument=nativeArguments[i];return isValueMatched(argument,matcher);});}var isMatchingSuspended=false;function apply(target,thisArg,argumentsList){if(isMatchingSuspended){return Reflect.apply(target,thisArg,argumentsList);}isMatchingSuspended=true;if(stack&&!matchStackTrace(stack,new Error().stack||"")){return Reflect.apply(target,thisArg,argumentsList);}var isMatching=matchMethodCall(argumentsList,signatureMatcher);isMatchingSuspended=false;if(isMatching){hit(source);return suppress();}return Reflect.apply(target,thisArg,argumentsList);}base[prop]=new Proxy(nativeMethod,{apply:apply});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function inferValue(value){if(value==="undefined"){return undefined;}if(value==="false"){return false;}if(value==="true"){return true;}if(value==="null"){return null;}if(value==="NaN"){return NaN;}if(value.startsWith("/")&&value.endsWith("/")){return toRegExp(value);}var MAX_ALLOWED_NUM=32767;var numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM){throw new Error("number values bigger than 32767 are not allowed");}return numVal;}var errorMessage="'".concat(value,"' value type can't be inferred");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||typeof parsableVal==="string"){return parsableVal;}}catch(e){errorMessage+=": ".concat(e);}throw new TypeError(errorMessage);}function isValueMatched(value,matcher){if(typeof value==="function"){return false;}if(nativeIsNaN(value)){return nativeIsNaN(matcher);}if(value===null||typeof value==="undefined"||typeof value==="number"||typeof value==="boolean"){return value===matcher;}if(typeof value==="string"){if(typeof matcher==="string"||matcher instanceof RegExp){return isStringMatched(value,matcher);}return false;}if(Array.isArray(value)&&Array.isArray(matcher)){return isArrayMatched(value,matcher);}if(isArbitraryObject(value)&&isArbitraryObject(matcher)){return isObjectMatched(value,matcher);}return false;}function getAbortFunc(){var rid=randomId();var isErrorHandlerSet=false;return function abort(){if(!isErrorHandlerSet){window.onerror=createOnErrorHandler(rid);isErrorHandlerSet=true;}throw new ReferenceError(rid);};}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getErrorMessage(error){var isErrorWithMessage=function isErrorWithMessage(e){return typeof e==="object"&&e!==null&&"message"in e&&typeof e.message==="string";};if(isErrorWithMessage(error)){return error.message;}try{return new Error(JSON.stringify(error)).message;}catch(_unused){return new Error(String(error)).message;}}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function randomId(){return Math.random().toString(36).slice(2,9);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function isArbitraryObject(value){return value!==null&&typeof value==="object"&&!Array.isArray(value)&&!(value instanceof RegExp);}function isStringMatched(str,matcher){if(typeof matcher==="string"){if(matcher===""){return str===matcher;}return str.includes(matcher);}if(matcher instanceof RegExp){return matcher.test(str);}return false;}function isArrayMatched(array,matcher){if(array.length===0){return matcher.length===0;}if(matcher.length===0){return false;}var _loop=function _loop(){var matcherValue=matcher[i];var isMatching=array.some(function(arrItem){return isValueMatched(arrItem,matcherValue);});if(!isMatching){return {v:false};}return "continue";};for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var urlToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof Reflect==="undefined"||typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var shouldPruneResponse=false;var urlMatchRegexp=toRegExp(urlToMatch);var XPATH_MARKER="xpath(";var isXpath=propsToRemove&&propsToRemove.startsWith(XPATH_MARKER);var getXPathElements=function getXPathElements(contextNode){var matchedElements=[];try{var elementsToRemove=propsToRemove.slice(XPATH_MARKER.length,-1);var xpathResult=contextNode.evaluate(elementsToRemove,contextNode,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0;i")){return true;}}return false;};var createXMLDocument=function createXMLDocument(text){var xmlParser=new DOMParser();var xmlDocument=xmlParser.parseFromString(text,"text/xml");return xmlDocument;};var isPruningNeeded=function isPruningNeeded(response,propsToRemove){if(!isXML(response)){return false;}var docXML=createXMLDocument(response);return isXpath?getXPathElements(docXML):!!docXML.querySelector(propsToRemove);};var pruneXML=function pruneXML(text){if(!isXML(text)){shouldPruneResponse=false;return text;}var xmlDoc=createXMLDocument(text);var errorNode=xmlDoc.querySelector("parsererror");if(errorNode){return text;}if(optionalProp!==""&&xmlDoc.querySelector(optionalProp)===null){shouldPruneResponse=false;return text;}var elements=isXpath?getXPathElements(xmlDoc):xmlDoc.querySelectorAll(propsToRemove);if(!elements.length){shouldPruneResponse=false;return text;}if(isXpath){xPathPruning(elements);}else {elements.forEach(function(elem){elem.remove();});}var serializer=new XMLSerializer();text=serializer.serializeToString(xmlDoc);return text;};var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(matchRequestProps(source,urlToMatch,xhrData)){thisArg.shouldBePruned=true;}if(thisArg.shouldBePruned){thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){var allowedResponseTypeValues=["","text"];if(!thisArg.shouldBePruned||!allowedResponseTypeValues.includes(thisArg.responseType)){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"){return;}if(!propsToRemove){if(isXML(response)){var message="XMLHttpRequest.open() URL: ".concat(responseURL,"\nresponse: ").concat(response);logMessage(source,message);logMessage(source,createXMLDocument(response),true,false);}}else {shouldPruneResponse=isPruningNeeded(response,propsToRemove);}var responseContent=shouldPruneResponse?pruneXML(response):response;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:responseContent,writable:false},responseText:{value:responseContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);var nativeFetch=window.fetch;var fetchWrapper=async function fetchWrapper(target,thisArg,args){var fetchURL=args[0]instanceof Request?args[0].url:args[0];if(typeof fetchURL!=="string"||fetchURL.length===0){return Reflect.apply(target,thisArg,args);}if(urlMatchRegexp.test(fetchURL)){var response=await nativeFetch(...args);var clonedResponse=response.clone();var responseText=await response.text();shouldPruneResponse=isPruningNeeded(responseText,propsToRemove);if(!shouldPruneResponse){var message="fetch URL: ".concat(fetchURL,"\nresponse text: ").concat(responseText);logMessage(source,message);logMessage(source,createXMLDocument(responseText),true,false);return clonedResponse;}var prunedText=pruneXML(responseText);if(shouldPruneResponse){hit(source);return new Response(prunedText,{status:response.status,statusText:response.statusText,headers:response.headers});}return clonedResponse;}return Reflect.apply(target,thisArg,args);};var fetchHandler={apply:fetchWrapper};window.fetch=new Proxy(window.fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix=source.ruleText||"";if(source.domainName){var AG_SCRIPTLET_MARKER="#%#//";var UBO_SCRIPTLET_MARKER="##+js";var ruleStartIndex;if(source.ruleText.includes(AG_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(AG_SCRIPTLET_MARKER);}else if(source.ruleText.includes(UBO_SCRIPTLET_MARKER)){ruleStartIndex=source.ruleText.indexOf(UBO_SCRIPTLET_MARKER);}var rulePart=source.ruleText.slice(ruleStartIndex);prefix="".concat(source.domainName).concat(rulePart);}log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(){var input=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{xmlPrune.apply(this,updatedArgs);}catch(e){console.log(e);}}var scriptletsMap={"amazon-apstag":AmazonApstag,"ubo-amazon_apstag.js":AmazonApstag,"amazon_apstag.js":AmazonApstag,"didomi-loader":DidomiLoader,fingerprintjs2:Fingerprintjs2,"ubo-fingerprint2.js":Fingerprintjs2,"fingerprint2.js":Fingerprintjs2,fingerprintjs3:Fingerprintjs3,"ubo-fingerprint3.js":Fingerprintjs3,"fingerprint3.js":Fingerprintjs3,gemius:Gemius,"google-analytics":GoogleAnalytics,"ubo-google-analytics_analytics.js":GoogleAnalytics,"google-analytics_analytics.js":GoogleAnalytics,"googletagmanager-gtm":GoogleAnalytics,"ubo-googletagmanager_gtm.js":GoogleAnalytics,"googletagmanager_gtm.js":GoogleAnalytics,"google-analytics-ga":GoogleAnalyticsGa,"ubo-google-analytics_ga.js":GoogleAnalyticsGa,"google-analytics_ga.js":GoogleAnalyticsGa,"google-ima3":GoogleIma3,"ubo-google-ima.js":GoogleIma3,"google-ima.js":GoogleIma3,"googlesyndication-adsbygoogle":GoogleSyndicationAdsByGoogle,"ubo-googlesyndication_adsbygoogle.js":GoogleSyndicationAdsByGoogle,"googlesyndication_adsbygoogle.js":GoogleSyndicationAdsByGoogle,"googletagservices-gpt":GoogleTagServicesGpt,"ubo-googletagservices_gpt.js":GoogleTagServicesGpt,"googletagservices_gpt.js":GoogleTagServicesGpt,matomo:Matomo,"naver-wcslog":NaverWcslog,"pardot-1.0":Pardot,prebid:Prebid,"scorecardresearch-beacon":ScoreCardResearchBeacon,"ubo-scorecardresearch_beacon.js":ScoreCardResearchBeacon,"scorecardresearch_beacon.js":ScoreCardResearchBeacon,"abort-current-inline-script":abortCurrentInlineScript,"abort-current-script.js":abortCurrentInlineScript,"ubo-abort-current-script.js":abortCurrentInlineScript,"acs.js":abortCurrentInlineScript,"ubo-acs.js":abortCurrentInlineScript,"ubo-abort-current-script":abortCurrentInlineScript,"ubo-acs":abortCurrentInlineScript,"abort-current-inline-script.js":abortCurrentInlineScript,"ubo-abort-current-inline-script.js":abortCurrentInlineScript,"acis.js":abortCurrentInlineScript,"ubo-acis.js":abortCurrentInlineScript,"ubo-abort-current-inline-script":abortCurrentInlineScript,"ubo-acis":abortCurrentInlineScript,"abp-abort-current-inline-script":abortCurrentInlineScript,"abort-on-property-read":abortOnPropertyRead,"abort-on-property-read.js":abortOnPropertyRead,"ubo-abort-on-property-read.js":abortOnPropertyRead,"aopr.js":abortOnPropertyRead,"ubo-aopr.js":abortOnPropertyRead,"ubo-abort-on-property-read":abortOnPropertyRead,"ubo-aopr":abortOnPropertyRead,"abp-abort-on-property-read":abortOnPropertyRead,"abort-on-property-write":abortOnPropertyWrite,"abort-on-property-write.js":abortOnPropertyWrite,"ubo-abort-on-property-write.js":abortOnPropertyWrite,"aopw.js":abortOnPropertyWrite,"ubo-aopw.js":abortOnPropertyWrite,"ubo-abort-on-property-write":abortOnPropertyWrite,"ubo-aopw":abortOnPropertyWrite,"abp-abort-on-property-write":abortOnPropertyWrite,"abort-on-stack-trace":abortOnStackTrace,"abort-on-stack-trace.js":abortOnStackTrace,"ubo-abort-on-stack-trace.js":abortOnStackTrace,"aost.js":abortOnStackTrace,"ubo-aost.js":abortOnStackTrace,"ubo-abort-on-stack-trace":abortOnStackTrace,"ubo-aost":abortOnStackTrace,"abp-abort-on-stack-trace":abortOnStackTrace,"adjust-setInterval":adjustSetInterval,"nano-setInterval-booster.js":adjustSetInterval,"ubo-nano-setInterval-booster.js":adjustSetInterval,"nano-sib.js":adjustSetInterval,"ubo-nano-sib.js":adjustSetInterval,"adjust-setInterval.js":adjustSetInterval,"ubo-adjust-setInterval.js":adjustSetInterval,"ubo-nano-setInterval-booster":adjustSetInterval,"ubo-nano-sib":adjustSetInterval,"ubo-adjust-setInterval":adjustSetInterval,"adjust-setTimeout":adjustSetTimeout,"adjust-setTimeout.js":adjustSetTimeout,"ubo-adjust-setTimeout.js":adjustSetTimeout,"nano-setTimeout-booster.js":adjustSetTimeout,"ubo-nano-setTimeout-booster.js":adjustSetTimeout,"nano-stb.js":adjustSetTimeout,"ubo-nano-stb.js":adjustSetTimeout,"ubo-adjust-setTimeout":adjustSetTimeout,"ubo-nano-setTimeout-booster":adjustSetTimeout,"ubo-nano-stb":adjustSetTimeout,"call-nothrow":callNoThrow,"call-nothrow.js":callNoThrow,"ubo-call-nothrow.js":callNoThrow,"ubo-call-nothrow":callNoThrow,"debug-current-inline-script":debugCurrentInlineScript,"debug-on-property-read":debugOnPropertyRead,"debug-on-property-write":debugOnPropertyWrite,"dir-string":dirString,"disable-newtab-links":disableNewtabLinks,"disable-newtab-links.js":disableNewtabLinks,"ubo-disable-newtab-links.js":disableNewtabLinks,"ubo-disable-newtab-links":disableNewtabLinks,"evaldata-prune":evalDataPrune,"evaldata-prune.js":evalDataPrune,"ubo-evaldata-prune.js":evalDataPrune,"ubo-evaldata-prune":evalDataPrune,"close-window":forceWindowClose,"window-close-if.js":forceWindowClose,"ubo-window-close-if.js":forceWindowClose,"ubo-window-close-if":forceWindowClose,"close-window.js":forceWindowClose,"ubo-close-window.js":forceWindowClose,"ubo-close-window":forceWindowClose,"hide-in-shadow-dom":hideInShadowDom,"href-sanitizer":hrefSanitizer,"href-sanitizer.js":hrefSanitizer,"ubo-href-sanitizer.js":hrefSanitizer,"ubo-href-sanitizer":hrefSanitizer,"inject-css-in-shadow-dom":injectCssInShadowDom,"json-prune":jsonPrune,"json-prune.js":jsonPrune,"ubo-json-prune.js":jsonPrune,"ubo-json-prune":jsonPrune,"abp-json-prune":jsonPrune,"json-prune-fetch-response":jsonPruneFetchResponse,"json-prune-fetch-response.js":jsonPruneFetchResponse,"ubo-json-prune-fetch-response.js":jsonPruneFetchResponse,"ubo-json-prune-fetch-response":jsonPruneFetchResponse,"json-prune-xhr-response":jsonPruneXhrResponse,"json-prune-xhr-response.js":jsonPruneXhrResponse,"ubo-json-prune-xhr-response.js":jsonPruneXhrResponse,"ubo-json-prune-xhr-response":jsonPruneXhrResponse,log:log,"abp-log":log,"log-addEventListener":logAddEventListener,"addEventListener-logger.js":logAddEventListener,"ubo-addEventListener-logger.js":logAddEventListener,"aell.js":logAddEventListener,"ubo-aell.js":logAddEventListener,"ubo-addEventListener-logger":logAddEventListener,"ubo-aell":logAddEventListener,"log-eval":logEval,"log-on-stack-trace":logOnStacktrace,"m3u-prune":m3uPrune,"m3u-prune.js":m3uPrune,"ubo-m3u-prune.js":m3uPrune,"ubo-m3u-prune":m3uPrune,"metrika-yandex-tag":metrikaYandexTag,"metrika-yandex-watch":metrikaYandexWatch,"no-protected-audience":noProtectedAudience,"no-topics":noTopics,noeval:noeval,"noeval.js":noeval,"silent-noeval.js":noeval,"ubo-noeval.js":noeval,"ubo-silent-noeval.js":noeval,"ubo-noeval":noeval,"ubo-silent-noeval":noeval,nowebrtc:nowebrtc,"nowebrtc.js":nowebrtc,"ubo-nowebrtc.js":nowebrtc,"ubo-nowebrtc":nowebrtc,"prevent-addEventListener":preventAddEventListener,"addEventListener-defuser.js":preventAddEventListener,"ubo-addEventListener-defuser.js":preventAddEventListener,"aeld.js":preventAddEventListener,"ubo-aeld.js":preventAddEventListener,"ubo-addEventListener-defuser":preventAddEventListener,"ubo-aeld":preventAddEventListener,"abp-prevent-listener":preventAddEventListener,"prevent-adfly":preventAdfly,"adfly-defuser.js":preventAdfly,"ubo-adfly-defuser.js":preventAdfly,"ubo-adfly-defuser":preventAdfly,"prevent-bab":preventBab,"prevent-element-src-loading":preventElementSrcLoading,"prevent-eval-if":preventEvalIf,"noeval-if.js":preventEvalIf,"ubo-noeval-if.js":preventEvalIf,"ubo-noeval-if":preventEvalIf,"prevent-fab-3.2.0":preventFab,"nofab.js":preventFab,"ubo-nofab.js":preventFab,"fuckadblock.js-3.2.0":preventFab,"ubo-fuckadblock.js-3.2.0":preventFab,"ubo-nofab":preventFab,"prevent-fetch":preventFetch,"no-fetch-if.js":preventFetch,"ubo-no-fetch-if.js":preventFetch,"ubo-no-fetch-if":preventFetch,"prevent-popads-net":preventPopadsNet,"popads.net.js":preventPopadsNet,"ubo-popads.net.js":preventPopadsNet,"ubo-popads.net":preventPopadsNet,"prevent-refresh":preventRefresh,"prevent-refresh.js":preventRefresh,"refresh-defuser.js":preventRefresh,"refresh-defuser":preventRefresh,"ubo-prevent-refresh.js":preventRefresh,"ubo-prevent-refresh":preventRefresh,"ubo-refresh-defuser.js":preventRefresh,"ubo-refresh-defuser":preventRefresh,"prevent-requestAnimationFrame":preventRequestAnimationFrame,"no-requestAnimationFrame-if.js":preventRequestAnimationFrame,"ubo-no-requestAnimationFrame-if.js":preventRequestAnimationFrame,"norafif.js":preventRequestAnimationFrame,"ubo-norafif.js":preventRequestAnimationFrame,"ubo-no-requestAnimationFrame-if":preventRequestAnimationFrame,"ubo-norafif":preventRequestAnimationFrame,"prevent-setInterval":preventSetInterval,"no-setInterval-if.js":preventSetInterval,"ubo-no-setInterval-if.js":preventSetInterval,"setInterval-defuser.js":preventSetInterval,"ubo-setInterval-defuser.js":preventSetInterval,"nosiif.js":preventSetInterval,"ubo-nosiif.js":preventSetInterval,"sid.js":preventSetInterval,"ubo-sid.js":preventSetInterval,"ubo-no-setInterval-if":preventSetInterval,"ubo-setInterval-defuser":preventSetInterval,"ubo-nosiif":preventSetInterval,"ubo-sid":preventSetInterval,"prevent-setTimeout":preventSetTimeout,"no-setTimeout-if.js":preventSetTimeout,"ubo-no-setTimeout-if.js":preventSetTimeout,"nostif.js":preventSetTimeout,"ubo-nostif.js":preventSetTimeout,"ubo-no-setTimeout-if":preventSetTimeout,"ubo-nostif":preventSetTimeout,"setTimeout-defuser.js":preventSetTimeout,"ubo-setTimeout-defuser.js":preventSetTimeout,"ubo-setTimeout-defuser":preventSetTimeout,"std.js":preventSetTimeout,"ubo-std.js":preventSetTimeout,"ubo-std":preventSetTimeout,"prevent-window-open":preventWindowOpen,"window.open-defuser.js":preventWindowOpen,"ubo-window.open-defuser.js":preventWindowOpen,"ubo-window.open-defuser":preventWindowOpen,"nowoif.js":preventWindowOpen,"ubo-nowoif.js":preventWindowOpen,"ubo-nowoif":preventWindowOpen,"no-window-open-if.js":preventWindowOpen,"ubo-no-window-open-if.js":preventWindowOpen,"ubo-no-window-open-if":preventWindowOpen,"prevent-xhr":preventXHR,"no-xhr-if.js":preventXHR,"ubo-no-xhr-if.js":preventXHR,"ubo-no-xhr-if":preventXHR,"remove-attr":removeAttr,"remove-attr.js":removeAttr,"ubo-remove-attr.js":removeAttr,"ra.js":removeAttr,"ubo-ra.js":removeAttr,"ubo-remove-attr":removeAttr,"ubo-ra":removeAttr,"remove-class":removeClass,"remove-class.js":removeClass,"ubo-remove-class.js":removeClass,"rc.js":removeClass,"ubo-rc.js":removeClass,"ubo-remove-class":removeClass,"ubo-rc":removeClass,"remove-cookie":removeCookie,"cookie-remover.js":removeCookie,"ubo-cookie-remover.js":removeCookie,"ubo-cookie-remover":removeCookie,"remove-cookie.js":removeCookie,"ubo-remove-cookie.js":removeCookie,"ubo-remove-cookie":removeCookie,"abp-cookie-remover":removeCookie,"remove-in-shadow-dom":removeInShadowDom,"remove-node-text":removeNodeText,"remove-node-text.js":removeNodeText,"ubo-remove-node-text.js":removeNodeText,"rmnt.js":removeNodeText,"ubo-rmnt.js":removeNodeText,"ubo-remove-node-text":removeNodeText,"ubo-rmnt":removeNodeText,"set-attr":setAttr,"set-attr.js":setAttr,"ubo-set-attr.js":setAttr,"ubo-set-attr":setAttr,"set-constant":setConstant,"set-constant.js":setConstant,"ubo-set-constant.js":setConstant,"set.js":setConstant,"ubo-set.js":setConstant,"ubo-set-constant":setConstant,"ubo-set":setConstant,"abp-override-property-read":setConstant,"set-cookie":setCookie,"set-cookie.js":setCookie,"ubo-set-cookie.js":setCookie,"ubo-set-cookie":setCookie,"set-cookie-reload":setCookieReload,"set-cookie-reload.js":setCookieReload,"ubo-set-cookie-reload.js":setCookieReload,"ubo-set-cookie-reload":setCookieReload,"set-local-storage-item":setLocalStorageItem,"set-local-storage-item.js":setLocalStorageItem,"ubo-set-local-storage-item.js":setLocalStorageItem,"ubo-set-local-storage-item":setLocalStorageItem,"set-popads-dummy":setPopadsDummy,"popads-dummy.js":setPopadsDummy,"ubo-popads-dummy.js":setPopadsDummy,"ubo-popads-dummy":setPopadsDummy,"set-session-storage-item":setSessionStorageItem,"set-session-storage-item.js":setSessionStorageItem,"ubo-set-session-storage-item.js":setSessionStorageItem,"ubo-set-session-storage-item":setSessionStorageItem,"spoof-css":spoofCSS,"spoof-css.js":spoofCSS,"ubo-spoof-css.js":spoofCSS,"ubo-spoof-css":spoofCSS,"trusted-click-element":trustedClickElement,"trusted-create-element":trustedCreateElement,"trusted-prune-inbound-object":trustedPruneInboundObject,"trusted-replace-fetch-response":trustedReplaceFetchResponse,"trusted-replace-node-text":trustedReplaceNodeText,"trusted-replace-xhr-response":trustedReplaceXhrResponse,"trusted-set-attr":trustedSetAttr,"trusted-set-constant":trustedSetConstant,"trusted-set-cookie":trustedSetCookie,"trusted-set-cookie-reload":trustedSetCookieReload,"trusted-set-local-storage-item":trustedSetLocalStorageItem,"trusted-suppress-native-method":trustedSuppressNativeMethod,"xml-prune":xmlPrune,"xml-prune.js":xmlPrune,"ubo-xml-prune.js":xmlPrune,"ubo-xml-prune":xmlPrune};var getScriptletFunction=function getScriptletFunction(name){return scriptletsMap[name];}; + function AmazonApstag(source,args){function AmazonApstag(source){var apstagWrapper={fetchBids(a,b){if(typeof b==="function"){b([]);}},init:noopFunc,setDisplayBids:noopFunc,targetingKeys:noopFunc};window.apstag=apstagWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{AmazonApstag.apply(this,updatedArgs);}catch(e){console.log(e);}}function DidomiLoader(source,args){function DidomiLoader(source){function UserConsentStatusForVendorSubscribe(){}UserConsentStatusForVendorSubscribe.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendorSubscribe.prototype.subscribe=noopFunc;function UserConsentStatusForVendor(){}UserConsentStatusForVendor.prototype.first=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendor.prototype.filter=function(){return new UserConsentStatusForVendorSubscribe();};UserConsentStatusForVendor.prototype.subscribe=noopFunc;var DidomiWrapper={isConsentRequired:falseFunc,getUserConsentStatusForPurpose:trueFunc,getUserConsentStatus:trueFunc,getUserStatus:noopFunc,getRequiredPurposes:noopArray,getUserConsentStatusForVendor:trueFunc,Purposes:{Cookies:"cookies"},notice:{configure:noopFunc,hide:noopFunc,isVisible:falseFunc,show:noopFunc,showDataProcessing:trueFunc},isUserConsentStatusPartial:falseFunc,on(){return {actions:{},emitter:{},services:{},store:{}};},shouldConsentBeCollected:falseFunc,getUserConsentStatusForAll:noopFunc,getObservableOnUserConsentStatusForVendor(){return new UserConsentStatusForVendor();}};window.Didomi=DidomiWrapper;var didomiStateWrapper={didomiExperimentId:"",didomiExperimentUserGroup:"",didomiGDPRApplies:1,didomiIABConsent:"",didomiPurposesConsent:"",didomiPurposesConsentDenied:"",didomiPurposesConsentUnknown:"",didomiVendorsConsent:"",didomiVendorsConsentDenied:"",didomiVendorsConsentUnknown:"",didomiVendorsRawConsent:"",didomiVendorsRawConsentDenied:"",didomiVendorsRawConsentUnknown:""};window.didomiState=didomiStateWrapper;var tcData={eventStatus:"tcloaded",gdprApplies:false,listenerId:noopFunc,vendor:{consents:[]},purpose:{consents:[]}};var __tcfapiWrapper=function __tcfapiWrapper(command,version,callback){if(typeof callback!=="function"||command==="removeEventListener"){return;}callback(tcData,true);};window.__tcfapi=__tcfapiWrapper;var didomiEventListenersWrapper={stub:true,push:noopFunc};window.didomiEventListeners=didomiEventListenersWrapper;var didomiOnReadyWrapper={stub:true,push(arg){if(typeof arg!=="function"){return;}if(document.readyState!=="complete"){window.addEventListener("load",function(){setTimeout(arg(window.Didomi));});}else {setTimeout(arg(window.Didomi));}}};window.didomiOnReady=window.didomiOnReady||didomiOnReadyWrapper;if(Array.isArray(window.didomiOnReady)){window.didomiOnReady.forEach(function(arg){if(typeof arg==="function"){try{setTimeout(arg(window.Didomi));}catch(e){}}});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopArray(){return [];}function trueFunc(){return true;}function falseFunc(){return false;}var updatedArgs=args?[].concat(source).concat(args):[source];try{DidomiLoader.apply(this,updatedArgs);}catch(e){console.log(e);}}function Fingerprintjs2(source,args){function Fingerprintjs2(source){var browserId="";for(var i=0;i<8;i+=1){browserId+=(Math.random()*65536+4096).toString(16).slice(-4);}var Fingerprint2=function Fingerprint2(){};Fingerprint2.get=function(options,callback){if(!callback){callback=options;}setTimeout(function(){if(callback){callback(browserId,[]);}},1);};Fingerprint2.prototype={get:Fingerprint2.get};window.Fingerprint2=Fingerprint2;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{Fingerprintjs2.apply(this,updatedArgs);}catch(e){console.log(e);}}function Fingerprintjs3(source,args){function Fingerprintjs3(source){var visitorId=function(){var id="";for(var i=0;i<8;i+=1){id+=(Math.random()*65536+4096).toString(16).slice(-4);}return id;}();var FingerprintJS=function FingerprintJS(){};FingerprintJS.prototype={load(){return Promise.resolve(new FingerprintJS());},get(){return Promise.resolve({visitorId:visitorId});},hashComponents:noopStr};window.FingerprintJS=new FingerprintJS();hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{Fingerprintjs3.apply(this,updatedArgs);}catch(e){console.log(e);}}function Gemius(source,args){function Gemius(source){var GemiusPlayer=function GemiusPlayer(){};GemiusPlayer.prototype={setVideoObject:noopFunc,newProgram:noopFunc,programEvent:noopFunc,newAd:noopFunc,adEvent:noopFunc};window.GemiusPlayer=GemiusPlayer;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{Gemius.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleAnalytics(source,args){function GoogleAnalytics(source){var _window$googleAnalyti;var Tracker=function Tracker(){};var proto=Tracker.prototype;proto.get=noopFunc;proto.set=noopFunc;proto.send=noopFunc;var googleAnalyticsName=window.GoogleAnalyticsObject||"ga";var queue=(_window$googleAnalyti=window[googleAnalyticsName])===null||_window$googleAnalyti===void 0?void 0:_window$googleAnalyti.q;function ga(a){var len=arguments.length;if(len===0){return;}var lastArg=arguments[len-1];var replacer;if(lastArg instanceof Object&&lastArg!==null&&typeof lastArg.hitCallback==="function"){replacer=lastArg.hitCallback;}else if(typeof lastArg==="function"){replacer=function replacer(){lastArg(ga.create());};}try{setTimeout(replacer,1);}catch(ex){}}ga.create=function(){return new Tracker();};ga.getByName=function(){return new Tracker();};ga.getAll=function(){return [new Tracker()];};ga.remove=noopFunc;ga.loaded=true;window[googleAnalyticsName]=ga;if(Array.isArray(queue)){var push=function push(arg){ga(...arg);};queue.push=push;queue.forEach(push);}var _window=window,dataLayer=_window.dataLayer,google_optimize=_window.google_optimize;if(dataLayer instanceof Object===false){return;}if(dataLayer.hide instanceof Object&&typeof dataLayer.hide.end==="function"){dataLayer.hide.end();}var handleCallback=function handleCallback(dataObj,funcName){if(dataObj&&typeof dataObj[funcName]==="function"){setTimeout(dataObj[funcName]);}};if(typeof dataLayer.push==="function"){dataLayer.push=function(data){if(data instanceof Object){handleCallback(data,"eventCallback");for(var key in data){handleCallback(data[key],"event_callback");}if(!data.hasOwnProperty("eventCallback")&&!data.hasOwnProperty("eventCallback")){[].push.call(window.dataLayer,data);}}if(Array.isArray(data)){data.forEach(function(arg){handleCallback(arg,"callback");});}return noopFunc;};}if(google_optimize instanceof Object&&typeof google_optimize.get==="function"){var googleOptimizeWrapper={get:noopFunc};window.google_optimize=googleOptimizeWrapper;}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleAnalytics.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleAnalyticsGa(source,args){function GoogleAnalyticsGa(source){function Gaq(){}Gaq.prototype.Na=noopFunc;Gaq.prototype.O=noopFunc;Gaq.prototype.Sa=noopFunc;Gaq.prototype.Ta=noopFunc;Gaq.prototype.Va=noopFunc;Gaq.prototype._createAsyncTracker=noopFunc;Gaq.prototype._getAsyncTracker=noopFunc;Gaq.prototype._getPlugin=noopFunc;Gaq.prototype.push=function(data){if(typeof data==="function"){data();return;}if(Array.isArray(data)===false){return;}if(typeof data[0]==="string"&&/(^|\.)_link$/.test(data[0])&&typeof data[1]==="string"){window.location.assign(data[1]);}if(data[0]==="_set"&&data[1]==="hitCallback"&&typeof data[2]==="function"){data[2]();}};var gaq=new Gaq();var asyncTrackers=window._gaq||[];if(Array.isArray(asyncTrackers)){while(asyncTrackers[0]){gaq.push(asyncTrackers.shift());}}window._gaq=gaq.qf=gaq;function Gat(){}var api=["_addIgnoredOrganic","_addIgnoredRef","_addItem","_addOrganic","_addTrans","_clearIgnoredOrganic","_clearIgnoredRef","_clearOrganic","_cookiePathCopy","_deleteCustomVar","_getName","_setAccount","_getAccount","_getClientInfo","_getDetectFlash","_getDetectTitle","_getLinkerUrl","_getLocalGifPath","_getServiceMode","_getVersion","_getVisitorCustomVar","_initData","_link","_linkByPost","_setAllowAnchor","_setAllowHash","_setAllowLinker","_setCampContentKey","_setCampMediumKey","_setCampNameKey","_setCampNOKey","_setCampSourceKey","_setCampTermKey","_setCampaignCookieTimeout","_setCampaignTrack","_setClientInfo","_setCookiePath","_setCookiePersistence","_setCookieTimeout","_setCustomVar","_setDetectFlash","_setDetectTitle","_setDomainName","_setLocalGifPath","_setLocalRemoteServerMode","_setLocalServerMode","_setReferrerOverride","_setRemoteServerMode","_setSampleRate","_setSessionTimeout","_setSiteSpeedSampleRate","_setSessionCookieTimeout","_setVar","_setVisitorCookieTimeout","_trackEvent","_trackPageLoadTime","_trackPageview","_trackSocial","_trackTiming","_trackTrans","_visitCode"];var tracker=api.reduce(function(res,funcName){res[funcName]=noopFunc;return res;},{});tracker._getLinkerUrl=function(a){return a;};tracker._link=function(url){if(typeof url!=="string"){return;}try{window.location.assign(url);}catch(e){logMessage(source,e);}};Gat.prototype._anonymizeIP=noopFunc;Gat.prototype._createTracker=noopFunc;Gat.prototype._forceSSL=noopFunc;Gat.prototype._getPlugin=noopFunc;Gat.prototype._getTracker=function(){return tracker;};Gat.prototype._getTrackerByName=function(){return tracker;};Gat.prototype._getTrackers=noopFunc;Gat.prototype.aa=noopFunc;Gat.prototype.ab=noopFunc;Gat.prototype.hb=noopFunc;Gat.prototype.la=noopFunc;Gat.prototype.oa=noopFunc;Gat.prototype.pa=noopFunc;Gat.prototype.u=noopFunc;var gat=new Gat();window._gat=gat;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleAnalyticsGa.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleIma3(source,args){function GoogleIma3(source){var _window$google$ima;var VERSION="3.453.0";var ima={};var AdDisplayContainer=function AdDisplayContainer(containerElement){var divElement=document.createElement("div");divElement.style.setProperty("display","none","important");divElement.style.setProperty("visibility","collapse","important");if(containerElement){containerElement.appendChild(divElement);}};AdDisplayContainer.prototype.destroy=noopFunc;AdDisplayContainer.prototype.initialize=noopFunc;var ImaSdkSettings=function ImaSdkSettings(){};ImaSdkSettings.CompanionBackfillMode={ALWAYS:"always",ON_MASTER_AD:"on_master_ad"};ImaSdkSettings.VpaidMode={DISABLED:0,ENABLED:1,INSECURE:2};ImaSdkSettings.prototype={c:true,f:{},i:false,l:"",p:"",r:0,t:"",v:"",getCompanionBackfill:noopFunc,getDisableCustomPlaybackForIOS10Plus(){return this.i;},getDisabledFlashAds:function getDisabledFlashAds(){return true;},getFeatureFlags(){return this.f;},getLocale(){return this.l;},getNumRedirects(){return this.r;},getPlayerType(){return this.t;},getPlayerVersion(){return this.v;},getPpid(){return this.p;},getVpaidMode(){return this.C;},isCookiesEnabled(){return this.c;},isVpaidAdapter(){return this.M;},setCompanionBackfill:noopFunc,setAutoPlayAdBreaks(a){this.K=a;},setCookiesEnabled(c){this.c=!!c;},setDisableCustomPlaybackForIOS10Plus(i){this.i=!!i;},setDisableFlashAds:noopFunc,setFeatureFlags(f){this.f=!!f;},setIsVpaidAdapter(a){this.M=a;},setLocale(l){this.l=!!l;},setNumRedirects(r){this.r=!!r;},setPageCorrelator(a){this.R=a;},setPlayerType(t){this.t=!!t;},setPlayerVersion(v){this.v=!!v;},setPpid(p){this.p=!!p;},setVpaidMode(a){this.C=a;},setSessionId:noopFunc,setStreamCorrelator:noopFunc,setVpaidAllowed:noopFunc,CompanionBackfillMode:{ALWAYS:"always",ON_MASTER_AD:"on_master_ad"},VpaidMode:{DISABLED:0,ENABLED:1,INSECURE:2}};var EventHandler=function EventHandler(){this.listeners=new Map();this._dispatch=function(e){var listeners=this.listeners.get(e.type);listeners=listeners?listeners.values():[];for(var _i=0,_Array$from=Array.from(listeners);_i<_Array$from.length;_i++){var listener=_Array$from[_i];try{listener(e);}catch(r){logMessage(source,r);}}};this.addEventListener=function(types,callback,options,context){if(!Array.isArray(types)){types=[types];}for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleIma3.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleSyndicationAdsByGoogle(source,args){function GoogleSyndicationAdsByGoogle(source){window.adsbygoogle={loaded:true,push(arg){if(typeof this.length==="undefined"){this.length=0;this.length+=1;}if(arg!==null&&arg instanceof Object&&arg.constructor.name==="Object"){for(var _i=0,_Object$keys=Object.keys(arg);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];if(typeof arg[key]==="function"){try{arg[key].call(this,{});}catch(_unused){}}}}}};var adElems=document.querySelectorAll(".adsbygoogle");var css="height:1px!important;max-height:1px!important;max-width:1px!important;width:1px!important;";var statusAttrName="data-adsbygoogle-status";var ASWIFT_IFRAME_MARKER="aswift_";var GOOGLE_ADS_IFRAME_MARKER="google_ads_iframe_";var executed=false;for(var i=0;i0){areIframesDefined=childNodesQuantity===2&&adElemChildNodes[0].nodeName.toLowerCase()==="iframe"&&adElemChildNodes[0].id.includes(ASWIFT_IFRAME_MARKER)&&adElemChildNodes[1].nodeName.toLowerCase()==="iframe"&&adElemChildNodes[1].id.includes(GOOGLE_ADS_IFRAME_MARKER);}if(!areIframesDefined){adElems[i].setAttribute(statusAttrName,"done");var aswiftIframe=document.createElement("iframe");aswiftIframe.id="".concat(ASWIFT_IFRAME_MARKER).concat(i);aswiftIframe.style=css;adElems[i].appendChild(aswiftIframe);var innerAswiftIframe=document.createElement("iframe");aswiftIframe.contentWindow.document.body.appendChild(innerAswiftIframe);var googleadsIframe=document.createElement("iframe");googleadsIframe.id="".concat(GOOGLE_ADS_IFRAME_MARKER).concat(i);googleadsIframe.style=css;adElems[i].appendChild(googleadsIframe);var innerGoogleadsIframe=document.createElement("iframe");googleadsIframe.contentWindow.document.body.appendChild(innerGoogleadsIframe);executed=true;}}if(executed){hit(source);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleSyndicationAdsByGoogle.apply(this,updatedArgs);}catch(e){console.log(e);}}function GoogleTagServicesGpt(source,args){function GoogleTagServicesGpt(source){var slots=new Map();var slotsById=new Map();var slotsPerPath=new Map();var slotCreatives=new Map();var eventCallbacks=new Map();var gTargeting=new Map();var addEventListener=function addEventListener(name,listener){if(!eventCallbacks.has(name)){eventCallbacks.set(name,new Set());}eventCallbacks.get(name).add(listener);return this;};var removeEventListener=function removeEventListener(name,listener){if(eventCallbacks.has(name)){return eventCallbacks.get(name).delete(listener);}return false;};var fireSlotEvent=function fireSlotEvent(name,slot){return new Promise(function(resolve){requestAnimationFrame(function(){var size=[0,0];var callbacksSet=eventCallbacks.get(name)||[];var callbackArray=Array.from(callbacksSet);for(var i=0;i";f.style="position:absolute; width:0; height:0; left:0; right:0; z-index:-1; border:0";f.setAttribute("width",0);f.setAttribute("height",0);f.setAttribute("data-load-complete",true);f.setAttribute("data-google-container-id",true);f.setAttribute("sandbox","");node.appendChild(f);}};var displaySlot=function displaySlot(slot){if(!slot){return;}var id=slot.getSlotElementId();if(!document.getElementById(id)){return;}var parent=document.getElementById(id);if(parent){parent.appendChild(document.createElement("div"));}emptySlotElement(slot);recreateIframeForSlot(slot);fireSlotEvent("slotRenderEnded",slot);fireSlotEvent("slotRequested",slot);fireSlotEvent("slotResponseReceived",slot);fireSlotEvent("slotOnload",slot);fireSlotEvent("impressionViewable",slot);};var companionAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,enableSyncLoading:noopFunc,setRefreshUnfilledSlots:noopFunc,getSlots:noopArray};var contentService={addEventListener:addEventListener,removeEventListener:removeEventListener,setContent:noopFunc};function PassbackSlot(){}PassbackSlot.prototype.display=noopFunc;PassbackSlot.prototype.get=noopNull;PassbackSlot.prototype.set=noopThis;PassbackSlot.prototype.setClickUrl=noopThis;PassbackSlot.prototype.setTagForChildDirectedTreatment=noopThis;PassbackSlot.prototype.setTargeting=noopThis;PassbackSlot.prototype.updateTargetingFromMap=noopThis;function SizeMappingBuilder(){}SizeMappingBuilder.prototype.addSize=noopThis;SizeMappingBuilder.prototype.build=noopNull;var getTargetingValue=function getTargetingValue(v){if(typeof v==="string"){return [v];}try{return Array.prototype.flat.call(v);}catch(_unused){}return [];};var updateTargeting=function updateTargeting(targeting,map){if(typeof map==="object"){for(var key in map){if(Object.prototype.hasOwnProperty.call(map,key)){targeting.set(key,getTargetingValue(map[key]));}}}};var defineSlot=function defineSlot(adUnitPath,creatives,optDiv){if(slotsById.has(optDiv)){var _document$getElementB2;(_document$getElementB2=document.getElementById(optDiv))===null||_document$getElementB2===void 0?void 0:_document$getElementB2.remove();return slotsById.get(optDiv);}var attributes=new Map();var targeting=new Map();var exclusions=new Set();var response={advertiserId:undefined,campaignId:undefined,creativeId:undefined,creativeTemplateId:undefined,lineItemId:undefined};var sizes=[{getHeight:function getHeight(){return 2;},getWidth:function getWidth(){return 2;}}];var num=(slotsPerPath.get(adUnitPath)||0)+1;slotsPerPath.set(adUnitPath,num);var id="".concat(adUnitPath,"_").concat(num);var clickUrl="";var collapseEmptyDiv=null;var services=new Set();var slot={addService(e){services.add(e);return slot;},clearCategoryExclusions:noopThis,clearTargeting(k){if(k===undefined){targeting.clear();}else {targeting.delete(k);}},defineSizeMapping(mapping){slotCreatives.set(optDiv,mapping);return this;},get:function get(k){return attributes.get(k);},getAdUnitPath:function getAdUnitPath(){return adUnitPath;},getAttributeKeys:function getAttributeKeys(){return Array.from(attributes.keys());},getCategoryExclusions:function getCategoryExclusions(){return Array.from(exclusions);},getClickUrl:function getClickUrl(){return clickUrl;},getCollapseEmptyDiv:function getCollapseEmptyDiv(){return collapseEmptyDiv;},getContentUrl:function getContentUrl(){return "";},getDivStartsCollapsed:function getDivStartsCollapsed(){return null;},getDomId:function getDomId(){return optDiv;},getEscapedQemQueryId:function getEscapedQemQueryId(){return "";},getFirstLook:function getFirstLook(){return 0;},getId:function getId(){return id;},getHtml:function getHtml(){return "";},getName:function getName(){return id;},getOutOfPage:function getOutOfPage(){return false;},getResponseInformation:function getResponseInformation(){return response;},getServices:function getServices(){return Array.from(services);},getSizes:function getSizes(){return sizes;},getSlotElementId:function getSlotElementId(){return optDiv;},getSlotId:function getSlotId(){return slot;},getTargeting:function getTargeting(k){return targeting.get(k)||gTargeting.get(k)||[];},getTargetingKeys:function getTargetingKeys(){return Array.from(new Set(Array.of(...gTargeting.keys(),...targeting.keys())));},getTargetingMap:function getTargetingMap(){return Object.assign(Object.fromEntries(gTargeting.entries()),Object.fromEntries(targeting.entries()));},set(k,v){attributes.set(k,v);return slot;},setCategoryExclusion(e){exclusions.add(e);return slot;},setClickUrl(u){clickUrl=u;return slot;},setCollapseEmptyDiv(v){collapseEmptyDiv=!!v;return slot;},setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting(k,v){targeting.set(k,getTargetingValue(v));return slot;},toString:function toString(){return id;},updateTargetingFromMap(map){updateTargeting(targeting,map);return slot;}};slots.set(adUnitPath,slot);slotsById.set(optDiv,slot);slotCreatives.set(optDiv,creatives);return slot;};var pubAdsService={addEventListener:addEventListener,removeEventListener:removeEventListener,clear:noopFunc,clearCategoryExclusions:noopThis,clearTagForChildDirectedTreatment:noopThis,clearTargeting(k){if(k===undefined){gTargeting.clear();}else {gTargeting.delete(k);}},collapseEmptyDivs:noopFunc,defineOutOfPagePassback(){return new PassbackSlot();},definePassback(){return new PassbackSlot();},disableInitialLoad:noopFunc,display:noopFunc,enableAsyncRendering:noopFunc,enableLazyLoad:noopFunc,enableSingleRequest:noopFunc,enableSyncRendering:noopFunc,enableVideoAds:noopFunc,get:noopNull,getAttributeKeys:noopArray,getTargeting:noopArray,getTargetingKeys:noopArray,getSlots:noopArray,isInitialLoadDisabled:trueFunc,refresh:noopFunc,set:noopThis,setCategoryExclusion:noopThis,setCentering:noopFunc,setCookieOptions:noopThis,setForceSafeFrame:noopThis,setLocation:noopThis,setPrivacySettings:noopThis,setPublisherProvidedId:noopThis,setRequestNonPersonalizedAds:noopThis,setSafeFrameConfig:noopThis,setTagForChildDirectedTreatment:noopThis,setTargeting:noopThis,setVideoContent:noopThis,updateCorrelator:noopFunc};var _window=window,_window$googletag=_window.googletag,googletag=_window$googletag===void 0?{}:_window$googletag;var _googletag$cmd=googletag.cmd,cmd=_googletag$cmd===void 0?[]:_googletag$cmd;googletag.apiReady=true;googletag.cmd=[];googletag.cmd.push=function(a){try{a();}catch(ex){}return 1;};googletag.companionAds=function(){return companionAdsService;};googletag.content=function(){return contentService;};googletag.defineOutOfPageSlot=defineSlot;googletag.defineSlot=defineSlot;googletag.destroySlots=function(){slots.clear();slotsById.clear();};googletag.disablePublisherConsole=noopFunc;googletag.display=function(arg){var id;if(arg!==null&&arg!==void 0&&arg.getSlotElementId){id=arg.getSlotElementId();}else if(arg!==null&&arg!==void 0&&arg.nodeType){id=arg.id;}else {id=String(arg);}displaySlot(slotsById.get(id));};googletag.enableServices=noopFunc;googletag.getVersion=noopStr;googletag.pubads=function(){return pubAdsService;};googletag.pubadsReady=true;googletag.setAdIframeTitle=noopFunc;googletag.sizeMapping=function(){return new SizeMappingBuilder();};window.googletag=googletag;while(cmd.length!==0){googletag.cmd.push(cmd.shift());}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopThis(){return this;}function noopNull(){return null;}function noopArray(){return [];}function noopStr(){return "";}function trueFunc(){return true;}var updatedArgs=args?[].concat(source).concat(args):[source];try{GoogleTagServicesGpt.apply(this,updatedArgs);}catch(e){console.log(e);}}function Matomo(source,args){function Matomo(source){var Tracker=function Tracker(){};Tracker.prototype.setDoNotTrack=noopFunc;Tracker.prototype.setDomains=noopFunc;Tracker.prototype.setCustomDimension=noopFunc;Tracker.prototype.trackPageView=noopFunc;var AsyncTracker=function AsyncTracker(){};AsyncTracker.prototype.addListener=noopFunc;var matomoWrapper={getTracker:Tracker,getAsyncTracker:AsyncTracker};window.Piwik=matomoWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{Matomo.apply(this,updatedArgs);}catch(e){console.log(e);}}function NaverWcslog(source,args){function NaverWcslog(source){window.wcs_add={};window.wcs_do=noopFunc;window.wcs={inflow:noopFunc};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{NaverWcslog.apply(this,updatedArgs);}catch(e){console.log(e);}}function Pardot(source,args){function Pardot(source){window.piVersion="1.0.2";window.piScriptNum=0;window.piScriptObj=[];window.checkNamespace=noopFunc;window.getPardotUrl=noopStr;window.piGetParameter=noopNull;window.piSetCookie=noopFunc;window.piGetCookie=noopStr;function piTracker(){window.pi={tracker:{visitor_id:"",visitor_id_sign:"",pi_opt_in:"",campaign_id:""}};window.piScriptNum+=1;}window.piResponse=noopFunc;window.piTracker=piTracker;piTracker();hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopStr(){return "";}function noopNull(){return null;}var updatedArgs=args?[].concat(source).concat(args):[source];try{Pardot.apply(this,updatedArgs);}catch(e){console.log(e);}}function Prebid(source,args){function Prebid(source){var pushFunction=function pushFunction(arg){if(typeof arg==="function"){try{arg.call();}catch(ex){}}};var pbjsWrapper={addAdUnits(){},adServers:{dfp:{buildVideoUrl:noopStr}},adUnits:[],aliasBidder(){},cmd:[],enableAnalytics(){},getHighestCpmBids:noopArray,libLoaded:true,que:[],requestBids(arg){if(arg instanceof Object&&arg.bidsBackHandler){try{arg.bidsBackHandler.call();}catch(ex){}}},removeAdUnit(){},setBidderConfig(){},setConfig(){},setTargetingForGPTAsync(){}};pbjsWrapper.cmd.push=pushFunction;pbjsWrapper.que.push=pushFunction;window.pbjs=pbjsWrapper;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}function noopArray(){return [];}var updatedArgs=args?[].concat(source).concat(args):[source];try{Prebid.apply(this,updatedArgs);}catch(e){console.log(e);}}function ScoreCardResearchBeacon(source,args){function ScoreCardResearchBeacon(source){window.COMSCORE={purge(){window._comscore=[];},beacon(){}};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{ScoreCardResearchBeacon.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortCurrentInlineScript(source,args){function abortCurrentInlineScript(source,property,search){var searchRegexp=toRegExp(search);var rid=randomId();var SRC_DATA_MARKER="data:text/javascript;base64,";var getCurrentScript=function getCurrentScript(){if("currentScript"in document){return document.currentScript;}var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1];};var ourScript=getCurrentScript();var abort=function abort(){var _scriptEl$src;var scriptEl=getCurrentScript();if(!scriptEl){return;}var content=scriptEl.textContent;try{var textContentGetter=Object.getOwnPropertyDescriptor(Node.prototype,"textContent").get;content=textContentGetter.call(scriptEl);}catch(e){}if(content.length===0&&typeof scriptEl.src!=="undefined"&&(_scriptEl$src=scriptEl.src)!==null&&_scriptEl$src!==void 0&&_scriptEl$src.startsWith(SRC_DATA_MARKER)){var encodedContent=scriptEl.src.slice(SRC_DATA_MARKER.length);content=window.atob(encodedContent);}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){hit(source);throw new ReferenceError(rid);}};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object===false&&base===null){var props=property.split(".");var propIndex=props.indexOf(prop);var baseName=props[propIndex-1];var message="The scriptlet had been executed before the ".concat(baseName," was loaded.");logMessage(source,message);return;}if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var currentValue=base[prop];var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);if(origDescriptor instanceof Object===false||origDescriptor.get instanceof Function===false){currentValue=base[prop];origDescriptor=undefined;}var descriptorWrapper=Object.assign(getDescriptorAddon(),{currentValue:currentValue,get(){if(!this.isAbortingSuspended){this.isolateCallback(abort);}if(origDescriptor instanceof Object){return origDescriptor.get.call(base);}return this.currentValue;},set(newValue){if(!this.isAbortingSuspended){this.isolateCallback(abort);}if(origDescriptor instanceof Object){origDescriptor.set.call(base,newValue);}else {this.currentValue=newValue;}}});setPropertyAccess(base,prop,{get(){return descriptorWrapper.get.call(descriptorWrapper);},set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue);}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getDescriptorAddon(){return {isAbortingSuspended:false,isolateCallback(cb){this.isAbortingSuspended=true;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}var result=cb(...args);this.isAbortingSuspended=false;return result;}catch(_unused){var rid=randomId();this.isAbortingSuspended=false;throw new ReferenceError(rid);}}};}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortCurrentInlineScript.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnPropertyRead(source,args){function abortOnPropertyRead(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{get:abort,set:function set(){}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortOnPropertyRead.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnPropertyWrite(source,args){function abortOnPropertyWrite(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{set:abort});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{abortOnPropertyWrite.apply(this,updatedArgs);}catch(e){console.log(e);}}function abortOnStackTrace(source,args){function abortOnStackTrace(source,property,stack){if(!property||!stack){return;}var rid=randomId();var abort=function abort(){hit(source);throw new ReferenceError(rid);};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}if(!stack.match(/^(inlineScript|injectedScript)$/)&&!isValidStrPattern(stack)){logMessage(source,"Invalid parameter: ".concat(stack));return;}var descriptorWrapper=Object.assign(getDescriptorAddon(),{value:base[prop],get(){if(!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,new Error().stack)){abort();}return this.value;},set(newValue){if(!this.isAbortingSuspended&&this.isolateCallback(matchStackTrace,stack,new Error().stack)){abort();}this.value=newValue;}});setPropertyAccess(base,prop,{get(){return descriptorWrapper.get.call(descriptorWrapper);},set(newValue){descriptorWrapper.set.call(descriptorWrapper,newValue);}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getDescriptorAddon(){return {isAbortingSuspended:false,isolateCallback(cb){this.isAbortingSuspended=true;try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}var result=cb(...args);this.isAbortingSuspended=false;return result;}catch(_unused){var rid=randomId();this.isAbortingSuspended=false;throw new ReferenceError(rid);}}};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeSetInterval.apply(window,[callback,delay,...args]);};window.setInterval=intervalWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getBoostMultiplier(boost){var DEFAULT_MULTIPLIER=.05;var MIN_MULTIPLIER=.001;var MAX_MULTIPLIER=50;var parsedBoost=parseFloat(boost);var boostMultiplier=nativeIsNaN(parsedBoost)||!nativeIsFinite(parsedBoost)?DEFAULT_MULTIPLIER:parsedBoost;if(boostMultiplierMAX_MULTIPLIER){boostMultiplier=MAX_MULTIPLIER;}return boostMultiplier;}function isDelayMatched(inputDelay,realDelay){return shouldMatchAnyDelay(inputDelay)||realDelay===getMatchDelay(inputDelay);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function getMatchDelay(delay){var DEFAULT_DELAY=1e3;var parsedDelay=parseInt(delay,10);var delayMatch=nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay;return delayMatch;}function shouldMatchAnyDelay(delay){return delay==="*";}var updatedArgs=args?[].concat(source).concat(args):[source];try{adjustSetInterval.apply(this,updatedArgs);}catch(e){console.log(e);}}function adjustSetTimeout(source,args){function adjustSetTimeout(source,matchCallback,matchDelay,boost){var nativeSetTimeout=window.setTimeout;var matchRegexp=toRegExp(matchCallback);var timeoutWrapper=function timeoutWrapper(callback,delay){if(!isValidCallback(callback)){var message="Scriptlet can't be applied because of invalid callback: '".concat(String(callback),"'");logMessage(source,message);}else if(matchRegexp.test(callback.toString())&&isDelayMatched(matchDelay,delay)){delay*=getBoostMultiplier(boost);hit(source);}for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeSetTimeout.apply(window,[callback,delay,...args]);};window.setTimeout=timeoutWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getBoostMultiplier(boost){var DEFAULT_MULTIPLIER=.05;var MIN_MULTIPLIER=.001;var MAX_MULTIPLIER=50;var parsedBoost=parseFloat(boost);var boostMultiplier=nativeIsNaN(parsedBoost)||!nativeIsFinite(parsedBoost)?DEFAULT_MULTIPLIER:parsedBoost;if(boostMultiplierMAX_MULTIPLIER){boostMultiplier=MAX_MULTIPLIER;}return boostMultiplier;}function isDelayMatched(inputDelay,realDelay){return shouldMatchAnyDelay(inputDelay)||realDelay===getMatchDelay(inputDelay);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function getMatchDelay(delay){var DEFAULT_DELAY=1e3;var parsedDelay=parseInt(delay,10);var delayMatch=nativeIsNaN(parsedDelay)?DEFAULT_DELAY:parsedDelay;return delayMatch;}function shouldMatchAnyDelay(delay){return delay==="*";}var updatedArgs=args?[].concat(source).concat(args):[source];try{adjustSetTimeout.apply(this,updatedArgs);}catch(e){console.log(e);}}function callNoThrow(source,args){function callNoThrow(source,functionName){if(!functionName){return;}var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(!base||!prop||typeof base[prop]!=="function"){var message="".concat(functionName," is not a function");logMessage(source,message);return;}var objectWrapper=function objectWrapper(){var result;try{result=Reflect.apply(...arguments);}catch(e){var _message="Error calling ".concat(functionName,": ").concat(e.message);logMessage(source,_message);}hit(source);return result;};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(base[prop],objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{callNoThrow.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugCurrentInlineScript(source,args){function debugCurrentInlineScript(source,property,search){var searchRegexp=toRegExp(search);var rid=randomId();var getCurrentScript=function getCurrentScript(){if("currentScript"in document){return document.currentScript;}var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1];};var ourScript=getCurrentScript();var abort=function abort(){var scriptEl=getCurrentScript();if(!scriptEl){return;}var content=scriptEl.textContent;try{var textContentGetter=Object.getOwnPropertyDescriptor(Node.prototype,"textContent").get;content=textContentGetter.call(scriptEl);}catch(e){}if(scriptEl instanceof HTMLScriptElement&&content.length>0&&scriptEl!==ourScript&&searchRegexp.test(content)){hit(source);debugger;}};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(base instanceof Object===false&&base===null){var props=property.split(".");var propIndex=props.indexOf(prop);var baseName=props[propIndex-1];var message="The scriptlet had been executed before the ".concat(baseName," was loaded.");logMessage(message,source.verbose);return;}if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var currentValue=base[prop];setPropertyAccess(base,prop,{set:function set(value){abort();currentValue=value;},get:function get(){abort();return currentValue;}});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugCurrentInlineScript.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugOnPropertyRead(source,args){function debugOnPropertyRead(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);debugger;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{get:abort,set:noopFunc});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugOnPropertyRead.apply(this,updatedArgs);}catch(e){console.log(e);}}function debugOnPropertyWrite(source,args){function debugOnPropertyWrite(source,property){if(!property){return;}var rid=randomId();var abort=function abort(){hit(source);debugger;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}setPropertyAccess(base,prop,{set:abort});};setChainPropAccess(window,property);window.onerror=createOnErrorHandler(rid).bind();}function randomId(){return Math.random().toString(36).slice(2,9);}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{debugOnPropertyWrite.apply(this,updatedArgs);}catch(e){console.log(e);}}function dirString(source,args){function dirString(source,times){var _console=console,dir=_console.dir;function dirWrapper(object){if(typeof dir==="function"){dir.call(this,object);}hit(source);}console.dir=dirWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{dirString.apply(this,updatedArgs);}catch(e){console.log(e);}}function disableNewtabLinks(source,args){function disableNewtabLinks(source){document.addEventListener("click",function(ev){var target=ev.target;while(target!==null){if(target.localName==="a"&&target.hasAttribute("target")){ev.stopPropagation();ev.preventDefault();hit(source);break;}target=target.parentNode;}});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{disableNewtabLinks.apply(this,updatedArgs);}catch(e){console.log(e);}}function evalDataPrune(source,args){function evalDataPrune(source,propsToRemove,requiredInitialProps,stack){var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var nativeObjects={nativeStringify:window.JSON.stringify};var evalWrapper=function evalWrapper(target,thisArg,args){var data=Reflect.apply(target,thisArg,args);if(typeof data==="object"){data=jsonPruner(source,data,prunePaths,requiredPaths,stack,nativeObjects);}return data;};var evalHandler={apply:evalWrapper};window.eval=new Proxy(window.eval,evalHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j1&&arguments[1]!==undefined?arguments[1]:"";if(typeof window.close!=="function"){var message="window.close() is not a function so 'close-window' scriptlet is unavailable";logMessage(source,message);return;}var closeImmediately=function closeImmediately(){try{hit(source);window.close();}catch(e){logMessage(source,e);}};var closeByExtension=function closeByExtension(){var extCall=function extCall(){dispatchEvent(new Event("adguard:scriptlet-close-window"));};window.addEventListener("adguard:subscribed-to-close-window",extCall,{once:true});setTimeout(function(){window.removeEventListener("adguard:subscribed-to-close-window",extCall,{once:true});},5e3);};var shouldClose=function shouldClose(){if(path===""){return true;}var pathRegexp=toRegExp(path);var currentPath="".concat(window.location.pathname).concat(window.location.search);return pathRegexp.test(currentPath);};if(shouldClose()){closeImmediately();if(navigator.userAgent.includes("Chrome")){closeByExtension();}}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{forceWindowClose.apply(this,updatedArgs);}catch(e){console.log(e);}}function hideInShadowDom(source,args){function hideInShadowDom(source,selector,baseSelector){if(!Element.prototype.attachShadow){return;}var hideElement=function hideElement(targetElement){var DISPLAY_NONE_CSS="display:none!important;";targetElement.style.cssText=DISPLAY_NONE_CSS;};var hideHandler=function hideHandler(){var hostElements=!baseSelector?findHostElements(document.documentElement):document.querySelectorAll(baseSelector);var _loop=function _loop(){var isHidden=false;var _pierceShadowDom=pierceShadowDom(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach(function(targetEl){hideElement(targetEl);isHidden=true;});if(isHidden){hit(source);}hostElements=innerHosts;};while(hostElements.length!==0){_loop();}};hideHandler();observeDOMChanges(hideHandler,true);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function findHostElements(rootElement){var hosts=[];if(rootElement){var domElems=rootElement.querySelectorAll("*");domElems.forEach(function(el){if(el.shadowRoot){hosts.push(el);}});}return hosts;}function pierceShadowDom(selector,hostElements){var targets=[];var innerHostsAcc=[];hostElements.forEach(function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot;var shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren));innerHostsAcc.push(findHostElements(shadowRootElem));});var innerHosts=flatten(innerHostsAcc);return {targets:targets,innerHosts:innerHosts};}function flatten(input){var stack=[];input.forEach(function(el){return stack.push(el);});var res=[];while(stack.length){var next=stack.pop();if(Array.isArray(next)){next.forEach(function(el){return stack.push(el);});}else {res.push(next);}}return res.reverse();}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{hideInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function hrefSanitizer(source,args){function hrefSanitizer(source,selector){var attribute=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"text";if(!selector){logMessage(source,"Selector is required.");return;}var regexpNotValidAtStart=/^(?:[\0- \x7F-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u036F\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482-\u0489\u0530\u0557\u0558\u055A-\u055F\u0589-\u05CF\u05EB-\u05EE\u05F3-\u061F\u064B-\u066D\u0670\u06D4\u06D6-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u06FD\u06FE\u0700-\u070F\u0711\u0730-\u074C\u07A6-\u07B0\u07B2-\u07C9\u07EB-\u07F3\u07F6-\u07F9\u07FB-\u07FF\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u083F\u0859-\u085F\u086B-\u086F\u0888\u088F-\u089F\u08CA-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962-\u0970\u0981-\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BC\u09BE-\u09CD\u09CF-\u09DB\u09DE\u09E2-\u09EF\u09F2-\u09FB\u09FD-\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A58\u0A5D\u0A5F-\u0A71\u0A75-\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABC\u0ABE-\u0ACF\u0AD1-\u0ADF\u0AE2-\u0AF8\u0AFA-\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3C\u0B3E-\u0B5B\u0B5E\u0B62-\u0B70\u0B72-\u0B82\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BCF\u0BD1-\u0C04\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C3E-\u0C57\u0C5B\u0C5C\u0C5E\u0C5F\u0C62-\u0C7F\u0C81-\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBC\u0CBE-\u0CDC\u0CDF\u0CE2-\u0CF0\u0CF3-\u0D03\u0D0D\u0D11\u0D3B\u0D3C\u0D3E-\u0D4D\u0D4F-\u0D53\u0D57-\u0D5E\u0D62-\u0D79\u0D80-\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0E00\u0E31\u0E34-\u0E3F\u0E47-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EB1\u0EB4-\u0EBC\u0EBE\u0EBF\u0EC5\u0EC7-\u0EDB\u0EE0-\u0EFF\u0F01-\u0F3F\u0F48\u0F6D-\u0F87\u0F8D-\u0FFF\u102B-\u103E\u1040-\u104F\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16F0\u16F9-\u16FF\u1712-\u171E\u1732-\u173F\u1752-\u175F\u176D\u1771-\u177F\u17B4-\u17D6\u17D8-\u17DB\u17DD-\u181F\u1879-\u187F\u1885\u1886\u18A9\u18AB-\u18AF\u18F6-\u18FF\u191F-\u194F\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19FF\u1A17-\u1A1F\u1A55-\u1AA6\u1AA8-\u1B04\u1B34-\u1B44\u1B4D-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BFF\u1C24-\u1C4C\u1C50-\u1C59\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1CFB-\u1CFF\u1DC0-\u1DFF\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u2182\u2185-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF-\u2E2E\u2E30-\u3004\u3007-\u3030\u3036-\u303A\u303D-\u3040\u3097-\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA620-\uA629\uA62C-\uA63F\uA66F-\uA67E\uA69E\uA69F\uA6E6-\uA716\uA720\uA721\uA789\uA78A\uA7CB-\uA7CF\uA7D2\uA7D4\uA7DA-\uA7F1\uA802\uA806\uA80B\uA823-\uA83F\uA874-\uA881\uA8B4-\uA8F1\uA8F8-\uA8FA\uA8FC\uA8FF-\uA909\uA926-\uA92F\uA947-\uA95F\uA97D-\uA983\uA9B3-\uA9CE\uA9D0-\uA9DF\uA9E5\uA9F0-\uA9F9\uA9FF\uAA29-\uAA3F\uAA43\uAA4C-\uAA5F\uAA77-\uAA79\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAC3-\uAADA\uAADE\uAADF\uAAEB-\uAAF1\uAAF5-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABE3-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB1E\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFE6F\uFE75\uFEFD-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEFF\uDF20-\uDF2C\uDF41\uDF4A-\uDF4F\uDF76-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0-\uDFFF]|\uD801[\uDC9E-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6F\uDD7B\uDD8B\uDD93\uDD96\uDDA2\uDDB2\uDDBA\uDDBD-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDF7F\uDF86\uDFB1\uDFBB-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE01-\uDE0F\uDE14\uDE18\uDE36-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE5-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD24-\uDE7F\uDEAA-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF46-\uDF6F\uDF82-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC00-\uDC02\uDC38-\uDC70\uDC73\uDC74\uDC76-\uDC82\uDCB0-\uDCCF\uDCE9-\uDD02\uDD27-\uDD43\uDD45\uDD46\uDD48-\uDD4F\uDD73-\uDD75\uDD77-\uDD82\uDDB3-\uDDC0\uDDC5-\uDDD9\uDDDB\uDDDD-\uDDFF\uDE12\uDE2C-\uDE3E\uDE41-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEDF-\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A-\uDF3C\uDF3E-\uDF4F\uDF51-\uDF5C\uDF62-\uDFFF]|\uD805[\uDC35-\uDC46\uDC4B-\uDC5E\uDC62-\uDC7F\uDCB0-\uDCC3\uDCC6\uDCC8-\uDD7F\uDDAF-\uDDD7\uDDDC-\uDDFF\uDE30-\uDE43\uDE45-\uDE7F\uDEAB-\uDEB7\uDEB9-\uDEFF\uDF1B-\uDF3F\uDF47-\uDFFF]|\uD806[\uDC2C-\uDC9F\uDCE0-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD30-\uDD3E\uDD40\uDD42-\uDD9F\uDDA8\uDDA9\uDDD1-\uDDE0\uDDE2\uDDE4-\uDDFF\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE4F\uDE51-\uDE5B\uDE8A-\uDE9C\uDE9E-\uDEAF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC2F-\uDC3F\uDC41-\uDC71\uDC90-\uDCFF\uDD07\uDD0A\uDD31-\uDD45\uDD47-\uDD5F\uDD66\uDD69\uDD8A-\uDD97\uDD99-\uDEDF\uDEF3-\uDF01\uDF03\uDF11\uDF34-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC00-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80E-\uD810\uD812-\uD819\uD824-\uD82A\uD82D\uD82E\uD830-\uD834\uD836\uD83C-\uD83F\uD87B-\uD87D\uD87F\uD889-\uDBFF][\uDC00-\uDFFF]|\uD80B[\uDC00-\uDF8F\uDFF1-\uDFFF]|\uD80D[\uDC30-\uDC40\uDC47-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F-\uDE6F\uDEBF-\uDECF\uDEEE-\uDEFF\uDF30-\uDF3F\uDF44-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4F\uDF51-\uDF92\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82B[\uDC00-\uDFEF\uDFF4\uDFFC\uDFFF]|\uD82C[\uDD23-\uDD31\uDD33-\uDD4F\uDD53\uDD54\uDD56-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC-\uDFFF]|\uD837[\uDC00-\uDEFF\uDF1F-\uDF24\uDF2B-\uDFFF]|\uD838[\uDC00-\uDC2F\uDC6E-\uDCFF\uDD2D-\uDD36\uDD3E-\uDD4D\uDD4F-\uDE8F\uDEAE-\uDEBF\uDEEC-\uDFFF]|\uD839[\uDC00-\uDCCF\uDCEC-\uDFDF\uDFE7\uDFEC\uDFEF\uDFFF]|\uD83A[\uDCC5-\uDCFF\uDD44-\uDD4A\uDD4C-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD869[\uDEE0-\uDEFF]|\uD86D[\uDF3A-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDF4F]|\uD888[\uDFB0-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+/;var regexpNotValidAtEnd=/(?:[\0- \x7F-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u036F\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482-\u0489\u0530\u0557\u0558\u055A-\u055F\u0589-\u05CF\u05EB-\u05EE\u05F3-\u061F\u064B-\u066D\u0670\u06D4\u06D6-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u06FD\u06FE\u0700-\u070F\u0711\u0730-\u074C\u07A6-\u07B0\u07B2-\u07C9\u07EB-\u07F3\u07F6-\u07F9\u07FB-\u07FF\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u083F\u0859-\u085F\u086B-\u086F\u0888\u088F-\u089F\u08CA-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962-\u0970\u0981-\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA-\u09BC\u09BE-\u09CD\u09CF-\u09DB\u09DE\u09E2-\u09EF\u09F2-\u09FB\u09FD-\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A-\u0A58\u0A5D\u0A5F-\u0A71\u0A75-\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA-\u0ABC\u0ABE-\u0ACF\u0AD1-\u0ADF\u0AE2-\u0AF8\u0AFA-\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A-\u0B3C\u0B3E-\u0B5B\u0B5E\u0B62-\u0B70\u0B72-\u0B82\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BCF\u0BD1-\u0C04\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C3E-\u0C57\u0C5B\u0C5C\u0C5E\u0C5F\u0C62-\u0C7F\u0C81-\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA-\u0CBC\u0CBE-\u0CDC\u0CDF\u0CE2-\u0CF0\u0CF3-\u0D03\u0D0D\u0D11\u0D3B\u0D3C\u0D3E-\u0D4D\u0D4F-\u0D53\u0D57-\u0D5E\u0D62-\u0D79\u0D80-\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0E00\u0E31\u0E34-\u0E3F\u0E47-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EB1\u0EB4-\u0EBC\u0EBE\u0EBF\u0EC5\u0EC7-\u0EDB\u0EE0-\u0EFF\u0F01-\u0F3F\u0F48\u0F6D-\u0F87\u0F8D-\u0FFF\u102B-\u103E\u1040-\u104F\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16F0\u16F9-\u16FF\u1712-\u171E\u1732-\u173F\u1752-\u175F\u176D\u1771-\u177F\u17B4-\u17D6\u17D8-\u17DB\u17DD-\u181F\u1879-\u187F\u1885\u1886\u18A9\u18AB-\u18AF\u18F6-\u18FF\u191F-\u194F\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19FF\u1A17-\u1A1F\u1A55-\u1AA6\u1AA8-\u1B04\u1B34-\u1B44\u1B4D-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BFF\u1C24-\u1C4C\u1C50-\u1C59\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1CFB-\u1CFF\u1DC0-\u1DFF\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u2182\u2185-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7F\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF-\u2E2E\u2E30-\u3004\u3007-\u3030\u3036-\u303A\u303D-\u3040\u3097-\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA620-\uA629\uA62C-\uA63F\uA66F-\uA67E\uA69E\uA69F\uA6E6-\uA716\uA720\uA721\uA789\uA78A\uA7CB-\uA7CF\uA7D2\uA7D4\uA7DA-\uA7F1\uA802\uA806\uA80B\uA823-\uA83F\uA874-\uA881\uA8B4-\uA8F1\uA8F8-\uA8FA\uA8FC\uA8FF-\uA909\uA926-\uA92F\uA947-\uA95F\uA97D-\uA983\uA9B3-\uA9CE\uA9D0-\uA9DF\uA9E5\uA9F0-\uA9F9\uA9FF\uAA29-\uAA3F\uAA43\uAA4C-\uAA5F\uAA77-\uAA79\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAC3-\uAADA\uAADE\uAADF\uAAEB-\uAAF1\uAAF5-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABE3-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB1E\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFE6F\uFE75\uFEFD-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEFF\uDF20-\uDF2C\uDF41\uDF4A-\uDF4F\uDF76-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0-\uDFFF]|\uD801[\uDC9E-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6F\uDD7B\uDD8B\uDD93\uDD96\uDDA2\uDDB2\uDDBA\uDDBD-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDF7F\uDF86\uDFB1\uDFBB-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE01-\uDE0F\uDE14\uDE18\uDE36-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE5-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD24-\uDE7F\uDEAA-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF46-\uDF6F\uDF82-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC00-\uDC02\uDC38-\uDC70\uDC73\uDC74\uDC76-\uDC82\uDCB0-\uDCCF\uDCE9-\uDD02\uDD27-\uDD43\uDD45\uDD46\uDD48-\uDD4F\uDD73-\uDD75\uDD77-\uDD82\uDDB3-\uDDC0\uDDC5-\uDDD9\uDDDB\uDDDD-\uDDFF\uDE12\uDE2C-\uDE3E\uDE41-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEDF-\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A-\uDF3C\uDF3E-\uDF4F\uDF51-\uDF5C\uDF62-\uDFFF]|\uD805[\uDC35-\uDC46\uDC4B-\uDC5E\uDC62-\uDC7F\uDCB0-\uDCC3\uDCC6\uDCC8-\uDD7F\uDDAF-\uDDD7\uDDDC-\uDDFF\uDE30-\uDE43\uDE45-\uDE7F\uDEAB-\uDEB7\uDEB9-\uDEFF\uDF1B-\uDF3F\uDF47-\uDFFF]|\uD806[\uDC2C-\uDC9F\uDCE0-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD30-\uDD3E\uDD40\uDD42-\uDD9F\uDDA8\uDDA9\uDDD1-\uDDE0\uDDE2\uDDE4-\uDDFF\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE4F\uDE51-\uDE5B\uDE8A-\uDE9C\uDE9E-\uDEAF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC2F-\uDC3F\uDC41-\uDC71\uDC90-\uDCFF\uDD07\uDD0A\uDD31-\uDD45\uDD47-\uDD5F\uDD66\uDD69\uDD8A-\uDD97\uDD99-\uDEDF\uDEF3-\uDF01\uDF03\uDF11\uDF34-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC00-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80E-\uD810\uD812-\uD819\uD824-\uD82A\uD82D\uD82E\uD830-\uD834\uD836\uD83C-\uD83F\uD87B-\uD87D\uD87F\uD889-\uDBFF][\uDC00-\uDFFF]|\uD80B[\uDC00-\uDF8F\uDFF1-\uDFFF]|\uD80D[\uDC30-\uDC40\uDC47-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F-\uDE6F\uDEBF-\uDECF\uDEEE-\uDEFF\uDF30-\uDF3F\uDF44-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4F\uDF51-\uDF92\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82B[\uDC00-\uDFEF\uDFF4\uDFFC\uDFFF]|\uD82C[\uDD23-\uDD31\uDD33-\uDD4F\uDD53\uDD54\uDD56-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC-\uDFFF]|\uD837[\uDC00-\uDEFF\uDF1F-\uDF24\uDF2B-\uDFFF]|\uD838[\uDC00-\uDC2F\uDC6E-\uDCFF\uDD2D-\uDD36\uDD3E-\uDD4D\uDD4F-\uDE8F\uDEAE-\uDEBF\uDEEC-\uDFFF]|\uD839[\uDC00-\uDCCF\uDCEC-\uDFDF\uDFE7\uDFEC\uDFEF\uDFFF]|\uD83A[\uDCC5-\uDCFF\uDD44-\uDD4A\uDD4C-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD869[\uDEE0-\uDEFF]|\uD86D[\uDF3A-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDF4F]|\uD888[\uDFB0-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+$/;var extractNewHref=function extractNewHref(anchor,attr){if(attr==="text"){if(!anchor.textContent){return "";}return anchor.textContent.replace(regexpNotValidAtStart,"").replace(regexpNotValidAtEnd,"");}if(attr.startsWith("?")){try{var url=new URL(anchor.href,document.location.href);return url.searchParams.get(attr.slice(1))||"";}catch(ex){logMessage(source,"Cannot retrieve the parameter '".concat(attr.slice(1),"' from the URL '").concat(anchor.href));return "";}}if(attr.startsWith("[")&&attr.endsWith("]")){return anchor.getAttribute(attr.slice(1,-1))||"";}return "";};var getValidURL=function getValidURL(text){if(!text){return null;}try{var _URL=new URL(text,document.location.href),href=_URL.href,protocol=_URL.protocol;if(protocol!=="http:"&&protocol!=="https:"){logMessage(source,'Protocol not allowed: "'.concat(protocol,'", from URL: "').concat(href,'"'));return null;}return href;}catch(_unused){return null;}};var isSanitizableAnchor=function isSanitizableAnchor(element){return element.nodeName.toLowerCase()==="a"&&element.hasAttribute("href");};var sanitize=function sanitize(elementSelector){var elements;try{elements=document.querySelectorAll(elementSelector);}catch(e){logMessage(source,'Invalid selector "'.concat(elementSelector,'"'));return;}elements.forEach(function(elem){try{if(!isSanitizableAnchor(elem)){return;}var newHref=extractNewHref(elem,attribute);var newValidHref=getValidURL(newHref);if(!newValidHref){logMessage(source,"Invalid URL: ".concat(newHref));return;}var oldHref=elem.href;elem.setAttribute("href",newValidHref);if(newValidHref!==oldHref){logMessage(source,'Sanitized "'.concat(oldHref,'" to "').concat(newValidHref,'".'));}}catch(ex){logMessage(source,"Failed to sanitize ".concat(elem,"."));}});hit(source);};var run=function run(){sanitize(selector);observeDOMChanges(function(){return sanitize(selector);},true);};if(document.readyState==="loading"){window.addEventListener("DOMContentLoaded",run,{once:true});}else {run();}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{hrefSanitizer.apply(this,updatedArgs);}catch(e){console.log(e);}}function injectCssInShadowDom(source,args){function injectCssInShadowDom(source,cssRule){var hostSelector=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";if(!Element.prototype.attachShadow||typeof Proxy==="undefined"||typeof Reflect==="undefined"){return;}if(cssRule.match(/(url|image-set)\(.*\)/i)){logMessage(source,'"url()" function is not allowed for css rules');return;}var callback=function callback(shadowRoot){try{var stylesheet=new CSSStyleSheet();try{stylesheet.insertRule(cssRule);}catch(e){logMessage(source,"Unable to apply the rule '".concat(cssRule,"' due to: \n'").concat(e.message,"'"));return;}shadowRoot.adoptedStyleSheets=[...shadowRoot.adoptedStyleSheets,stylesheet];}catch(_unused){var styleTag=document.createElement("style");styleTag.innerText=cssRule;shadowRoot.appendChild(styleTag);}hit(source);};hijackAttachShadow(window,hostSelector,callback);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function hijackAttachShadow(context,hostSelector,callback){var handlerWrapper=function handlerWrapper(target,thisArg,args){var shadowRoot=Reflect.apply(target,thisArg,args);if(thisArg&&thisArg.matches(hostSelector||"*")){callback(shadowRoot);}return shadowRoot;};var attachShadowHandler={apply:handlerWrapper};context.Element.prototype.attachShadow=new Proxy(context.Element.prototype.attachShadow,attachShadowHandler);}var updatedArgs=args?[].concat(source).concat(args):[source];try{injectCssInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function jsonPrune(source,args){function jsonPrune(source,propsToRemove,requiredInitialProps){var stack=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var nativeObjects={nativeStringify:window.JSON.stringify};var nativeJSONParse=JSON.parse;var jsonParseWrapper=function jsonParseWrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}var root=nativeJSONParse.apply(JSON,args);return jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects);};jsonParseWrapper.toString=nativeJSONParse.toString.bind(nativeJSONParse);JSON.parse=jsonParseWrapper;var nativeResponseJson=Response.prototype.json;var responseJsonWrapper=function responseJsonWrapper(){var promise=nativeResponseJson.apply(this);return promise.then(function(obj){return jsonPruner(source,obj,prunePaths,requiredPaths,stack,nativeObjects);});};if(typeof Response==="undefined"){return;}Response.prototype.json=responseJsonWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j3&&arguments[3]!==undefined?arguments[3]:"";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(obligatoryProps);var nativeStringify=window.JSON.stringify;var nativeRequestClone=window.Request.prototype.clone;var nativeResponseClone=window.Response.prototype.clone;var nativeFetch=window.fetch;var fetchHandlerWrapper=async function fetchHandlerWrapper(target,thisArg,args){var fetchData=getFetchData(args,nativeRequestClone);if(!matchRequestProps(source,propsToMatch,fetchData)){return Reflect.apply(target,thisArg,args);}var originalResponse;var clonedResponse;try{originalResponse=await nativeFetch.apply(null,args);clonedResponse=nativeResponseClone.call(originalResponse);}catch(_unused){logMessage(source,"Could not make an original fetch request: ".concat(fetchData.url));return Reflect.apply(target,thisArg,args);}var json;try{json=await originalResponse.json();}catch(e){var message="Response body can't be converted to json: ".concat(objectToString(fetchData));logMessage(source,message);return clonedResponse;}var modifiedJson=jsonPruner(source,json,prunePaths,requiredPaths,stack,{nativeStringify:nativeStringify,nativeRequestClone:nativeRequestClone,nativeResponseClone:nativeResponseClone,nativeFetch:nativeFetch});var forgedResponse=forgeResponse(originalResponse,nativeStringify(modifiedJson));hit(source);return forgedResponse;};var fetchHandler={apply:fetchHandlerWrapper};window.fetch=new Proxy(window.fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(prunePaths.length===0&&requiredPaths.length===0){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}return root;}try{if(isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects)===false){return root;}prunePaths.forEach(function(path){var ownerObjArr=getWildcardPropertyInChain(root,path,true);ownerObjArr.forEach(function(ownerObj){if(ownerObj!==undefined&&ownerObj.base){delete ownerObj.base[ownerObj.prop];hit(source);}});});}catch(e){logMessage(source,e);}return root;}function getPrunePath(props){var validPropsString=typeof props==="string"&&props!==undefined&&props!=="";return validPropsString?props.split(/ +/):[];}function forgeResponse(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url;var forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}});return forgedResponse;}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(typeof Proxy==="undefined"){return;}var shouldLog=!propsToRemove&&!obligatoryProps;var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(obligatoryProps);var nativeParse=window.JSON.parse;var nativeStringify=window.JSON.stringify;var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var setRequestHeaderWrapper=function setRequestHeaderWrapper(setRequestHeader,thisArgument,argsList){thisArgument.collectedHeaders.push(argsList);return Reflect.apply(setRequestHeader,thisArgument,argsList);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(matchRequestProps(source,propsToMatch,xhrData)||shouldLog){thisArg.xhrShouldBePruned=true;thisArg.headersReceived=!!thisArg.headersReceived;}if(thisArg.xhrShouldBePruned&&!thisArg.headersReceived){thisArg.headersReceived=true;thisArg.collectedHeaders=[];thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){var stackTrace=new Error().stack||"";if(!thisArg.xhrShouldBePruned||stack&&!matchStackTrace(stack,stackTrace)){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"&&typeof content!=="object"){return;}var modifiedContent;if(typeof content==="string"){try{var jsonContent=nativeParse(content);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(jsonContent,null,2),"\nStack trace:\n").concat(stackTrace),true);logMessage(source,jsonContent,true,false);modifiedContent=content;}else {modifiedContent=jsonPruner(source,jsonContent,prunePaths,requiredPaths,stack="",{nativeStringify:nativeStringify});try{var responseType=thisArg.responseType;switch(responseType){case"":case"text":modifiedContent=nativeStringify(modifiedContent);break;case"arraybuffer":modifiedContent=new TextEncoder().encode(nativeStringify(modifiedContent)).buffer;break;case"blob":modifiedContent=new Blob([nativeStringify(modifiedContent)]);break;default:break;}}catch(error){var message="Response body cannot be converted to reponse type: '".concat(content,"'");logMessage(source,message);modifiedContent=content;}}}catch(error){var _message="Response body cannot be converted to json: '".concat(content,"'");logMessage(source,_message);modifiedContent=content;}}Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:modifiedContent,writable:false},responseText:{value:modifiedContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url,Boolean(xhrData.async)]);thisArg.collectedHeaders.forEach(function(header){forgedRequest.setRequestHeader(header[0],header[1]);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function jsonPruner(source,root,prunePaths,requiredPaths,stack,nativeObjects){var nativeStringify=nativeObjects.nativeStringify;if(prunePaths.length===0&&requiredPaths.length===0){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}return root;}try{if(isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects)===false){return root;}prunePaths.forEach(function(path){var ownerObjArr=getWildcardPropertyInChain(root,path,true);ownerObjArr.forEach(function(ownerObj){if(ownerObj!==undefined&&ownerObj.base){delete ownerObj.base[ownerObj.prop];hit(source);}});});}catch(e){logMessage(source,e);}return root;}function getPrunePath(props){var validPropsString=typeof props==="string"&&props!==undefined&&props!=="";return validPropsString?props.split(/ +/):[];}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeAddEventListener.apply(context,[type,listener,...args]);}var descriptor={configurable:true,set:function set(){},get:function get(){return addEventListenerWrapper;}};Object.defineProperty(window.EventTarget.prototype,"addEventListener",descriptor);Object.defineProperty(window,"addEventListener",descriptor);Object.defineProperty(document,"addEventListener",descriptor);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function validateType(type){return typeof type!=="undefined";}function validateListener(listener){return typeof listener!=="undefined"&&(typeof listener==="function"||typeof listener==="object"&&listener!==null&&"handleEvent"in listener&&typeof listener.handleEvent==="function");}function listenerToString(listener){return typeof listener==="function"?listener.toString():listener.handleEvent.toString();}function convertTypeToString(value){var output;if(typeof value==="undefined"){output="undefined";}else if(typeof value==="object"){if(value===null){output="null";}else {output=objectToString(value);}}else {output=String(value);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{logAddEventListener.apply(this,updatedArgs);}catch(e){console.log(e);}}function logEval(source,args){function logEval(source){var nativeEval=window.eval;function evalWrapper(str){hit(source);logMessage(source,'eval("'.concat(str,'")'),true);return nativeEval(str);}window.eval=evalWrapper;var nativeFunction=window.Function;function FunctionWrapper(){hit(source);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}logMessage(source,"new Function(".concat(args.join(", "),")"),true);return nativeFunction.apply(this,[...args]);}FunctionWrapper.prototype=Object.create(nativeFunction.prototype);FunctionWrapper.prototype.constructor=FunctionWrapper;window.Function=FunctionWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{logEval.apply(this,updatedArgs);}catch(e){console.log(e);}}function logOnStacktrace(source,args){function logOnStacktrace(source,property){if(!property){return;}var refineStackTrace=function refineStackTrace(stackString){var stackSteps=stackString.split("\n").slice(2).map(function(line){return line.replace(/ {4}at /,"");});var logInfoArray=stackSteps.map(function(line){var funcName;var funcFullPath;var reg=/\(([^\)]+)\)/;var regFirefox=/(.*?@)(\S+)(:\d+):\d+\)?$/;if(line.match(reg)){funcName=line.split(" ").slice(0,-1).join(" ");funcFullPath=line.match(reg)[1];}else if(line.match(regFirefox)){funcName=line.split("@").slice(0,-1).join(" ");funcFullPath=line.match(regFirefox)[2];}else {funcName="function name is not available";funcFullPath=line;}return [funcName,funcFullPath];});var logInfoObject={};logInfoArray.forEach(function(pair){logInfoObject[pair[0]]=pair[1];});return logInfoObject;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;if(chain){var setter=function setter(a){base=a;if(a instanceof Object){setChainPropAccess(a,chain);}};Object.defineProperty(owner,prop,{get:function get(){return base;},set:setter});return;}var value=base[prop];setPropertyAccess(base,prop,{get(){hit(source);logMessage(source,"Get ".concat(prop),true);console.table(refineStackTrace(new Error().stack));return value;},set(newValue){hit(source);logMessage(source,"Set ".concat(prop),true);console.table(refineStackTrace(new Error().stack));value=newValue;}});};setChainPropAccess(window,property);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function setPropertyAccess(object,property,descriptor){var currentDescriptor=Object.getOwnPropertyDescriptor(object,property);if(currentDescriptor&&!currentDescriptor.configurable){return false;}Object.defineProperty(object,property,descriptor);return true;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{logOnStacktrace.apply(this,updatedArgs);}catch(e){console.log(e);}}function m3uPrune(source,args){function m3uPrune(source,propsToRemove){var urlToMatch=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";if(typeof Reflect==="undefined"||typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var shouldPruneResponse=false;var urlMatchRegexp=toRegExp(urlToMatch);var SEGMENT_MARKER="#";var AD_MARKER={ASSET:"#EXT-X-ASSET:",CUE:"#EXT-X-CUE:",CUE_IN:"#EXT-X-CUE-IN",DISCONTINUITY:"#EXT-X-DISCONTINUITY",EXTINF:"#EXTINF",EXTM3U:"#EXTM3U",SCTE35:"#EXT-X-SCTE35:"};var COMCAST_AD_MARKER={AD:"-AD-",VAST:"-VAST-",VMAP_AD:"-VMAP-AD-",VMAP_AD_BREAK:"#EXT-X-VMAP-AD-BREAK:"};var TAGS_ALLOWLIST=["#EXT-X-TARGETDURATION","#EXT-X-MEDIA-SEQUENCE","#EXT-X-DISCONTINUITY-SEQUENCE","#EXT-X-ENDLIST","#EXT-X-PLAYLIST-TYPE","#EXT-X-I-FRAMES-ONLY","#EXT-X-MEDIA","#EXT-X-STREAM-INF","#EXT-X-I-FRAME-STREAM-INF","#EXT-X-SESSION-DATA","#EXT-X-SESSION-KEY","#EXT-X-INDEPENDENT-SEGMENTS","#EXT-X-START"];var isAllowedTag=function isAllowedTag(str){return TAGS_ALLOWLIST.some(function(el){return str.startsWith(el);});};var pruneExtinfFromVmapBlock=function pruneExtinfFromVmapBlock(lines,i){var array=lines.slice();var index=i;if(array[index].includes(AD_MARKER.EXTINF)){array[index]=undefined;index+=1;if(array[index].includes(AD_MARKER.DISCONTINUITY)){array[index]=undefined;index+=1;var prunedExtinf=pruneExtinfFromVmapBlock(array,index);array=prunedExtinf.array;index=prunedExtinf.index;}}return {array:array,index:index};};var pruneVmapBlock=function pruneVmapBlock(lines){var array=lines.slice();for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{m3uPrune.apply(this,updatedArgs);}catch(e){console.log(e);}}function metrikaYandexTag(source,args){function metrikaYandexTag(source){var asyncCallbackFromOptions=function asyncCallbackFromOptions(id,param){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var callback=options.callback;var ctx=options.ctx;if(typeof callback==="function"){callback=ctx!==undefined?callback.bind(ctx):callback;setTimeout(function(){return callback();});}};var addFileExtension=noopFunc;var extLink=asyncCallbackFromOptions;var file=asyncCallbackFromOptions;var getClientID=function getClientID(id,cb){if(!cb){return;}setTimeout(cb(null));};var hitFunc=asyncCallbackFromOptions;var notBounce=asyncCallbackFromOptions;var params=noopFunc;var reachGoal=function reachGoal(id,target,params,callback,ctx){asyncCallbackFromOptions(null,null,{callback:callback,ctx:ctx});};var setUserID=noopFunc;var userParams=noopFunc;var destruct=noopFunc;var api={addFileExtension:addFileExtension,extLink:extLink,file:file,getClientID:getClientID,hit:hitFunc,notBounce:notBounce,params:params,reachGoal:reachGoal,setUserID:setUserID,userParams:userParams,destruct:destruct};function ym(id,funcName){for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return api[funcName]&&api[funcName](id,...args);}function init(id){window["yaCounter".concat(id)]=api;document.dispatchEvent(new Event("yacounter".concat(id,"inited")));}if(typeof window.ym==="undefined"){window.ym=ym;ym.a=[];}else if(window.ym&&window.ym.a){ym.a=window.ym.a;window.ym=ym;window.ym.a.forEach(function(params){var id=params[0];init(id);});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{metrikaYandexTag.apply(this,updatedArgs);}catch(e){console.log(e);}}function metrikaYandexWatch(source,args){function metrikaYandexWatch(source){var cbName="yandex_metrika_callbacks";var asyncCallbackFromOptions=function asyncCallbackFromOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var callback=options.callback;var ctx=options.ctx;if(typeof callback==="function"){callback=ctx!==undefined?callback.bind(ctx):callback;setTimeout(function(){return callback();});}};function Metrika(){}Metrika.counters=noopArray;Metrika.prototype.addFileExtension=noopFunc;Metrika.prototype.getClientID=noopFunc;Metrika.prototype.setUserID=noopFunc;Metrika.prototype.userParams=noopFunc;Metrika.prototype.params=noopFunc;Metrika.prototype.counters=noopArray;Metrika.prototype.extLink=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.file=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.hit=function(url,options){asyncCallbackFromOptions(options);};Metrika.prototype.reachGoal=function(target,params,cb,ctx){asyncCallbackFromOptions({callback:cb,ctx:ctx});};Metrika.prototype.notBounce=asyncCallbackFromOptions;if(window.Ya){window.Ya.Metrika=Metrika;}else {window.Ya={Metrika:Metrika};}if(window[cbName]&&Array.isArray(window[cbName])){window[cbName].forEach(function(func){if(typeof func==="function"){func();}});}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopArray(){return [];}var updatedArgs=args?[].concat(source).concat(args):[source];try{metrikaYandexWatch.apply(this,updatedArgs);}catch(e){console.log(e);}}function noProtectedAudience(source,args){function noProtectedAudience(source){if(Document instanceof Object===false){return;}var protectedAudienceMethods={joinAdInterestGroup:noopResolveVoid,runAdAuction:noopResolveNull,leaveAdInterestGroup:noopResolveVoid,clearOriginJoinedAdInterestGroups:noopResolveVoid,createAuctionNonce:noopStr,updateAdInterestGroups:noopFunc};for(var _i=0,_Object$keys=Object.keys(protectedAudienceMethods);_i<_Object$keys.length;_i++){var key=_Object$keys[_i];var methodName=key;var prototype=Navigator.prototype;if(!Object.prototype.hasOwnProperty.call(prototype,methodName)||prototype[methodName]instanceof Function===false){continue;}prototype[methodName]=protectedAudienceMethods[methodName];}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopStr(){return "";}function noopFunc(){}function noopResolveVoid(){return Promise.resolve(undefined);}function noopResolveNull(){return Promise.resolve(null);}var updatedArgs=args?[].concat(source).concat(args):[source];try{noProtectedAudience.apply(this,updatedArgs);}catch(e){console.log(e);}}function noTopics(source,args){function noTopics(source){var TOPICS_PROPERTY_NAME="browsingTopics";if(Document instanceof Object===false){return;}if(!Object.prototype.hasOwnProperty.call(Document.prototype,TOPICS_PROPERTY_NAME)||Document.prototype[TOPICS_PROPERTY_NAME]instanceof Function===false){return;}Document.prototype[TOPICS_PROPERTY_NAME]=function(){return noopPromiseResolve("[]");};hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}var updatedArgs=args?[].concat(source).concat(args):[source];try{noTopics.apply(this,updatedArgs);}catch(e){console.log(e);}}function noeval(source,args){function noeval(source){window.eval=function evalWrapper(s){hit(source);logMessage(source,"AdGuard has prevented eval:\n".concat(s),true);}.bind();}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{noeval.apply(this,updatedArgs);}catch(e){console.log(e);}}function nowebrtc(source,args){function nowebrtc(source){var propertyName="";if(window.RTCPeerConnection){propertyName="RTCPeerConnection";}else if(window.webkitRTCPeerConnection){propertyName="webkitRTCPeerConnection";}if(propertyName===""){return;}var rtcReplacement=function rtcReplacement(config){var message="Document tried to create an RTCPeerConnection: ".concat(convertRtcConfigToString(config));logMessage(source,message);hit(source);};rtcReplacement.prototype={close:noopFunc,createDataChannel:noopFunc,createOffer:noopFunc,setRemoteDescription:noopFunc};var rtc=window[propertyName];window[propertyName]=rtcReplacement;if(rtc.prototype){rtc.prototype.createDataChannel=function(a,b){return {close:noopFunc,send:noopFunc};}.bind(null);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function convertRtcConfigToString(config){var UNDEF_STR="undefined";var str=UNDEF_STR;if(config===null){str="null";}else if(config instanceof Object){var SERVERS_PROP_NAME="iceServers";var URLS_PROP_NAME="urls";if(Object.prototype.hasOwnProperty.call(config,SERVERS_PROP_NAME)&&config[SERVERS_PROP_NAME]&&Object.prototype.hasOwnProperty.call(config[SERVERS_PROP_NAME][0],URLS_PROP_NAME)&&!!config[SERVERS_PROP_NAME][0][URLS_PROP_NAME]){str=config[SERVERS_PROP_NAME][0][URLS_PROP_NAME].toString();}}return str;}var updatedArgs=args?[].concat(source).concat(args):[source];try{nowebrtc.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventAddEventListener(source,args){function preventAddEventListener(source,typeSearch,listenerSearch){var typeSearchRegexp=toRegExp(typeSearch);var listenerSearchRegexp=toRegExp(listenerSearch);var nativeAddEventListener=window.EventTarget.prototype.addEventListener;function addEventListenerWrapper(type,listener){var _this$constructor;var shouldPrevent=false;if(validateType(type)&&validateListener(listener)){shouldPrevent=typeSearchRegexp.test(type.toString())&&listenerSearchRegexp.test(listenerToString(listener));}if(shouldPrevent){hit(source);return undefined;}var context=this;if(this&&((_this$constructor=this.constructor)===null||_this$constructor===void 0?void 0:_this$constructor.name)==="Window"&&this!==window){context=window;}for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}return nativeAddEventListener.apply(context,[type,listener,...args]);}var descriptor={configurable:true,set:function set(){},get:function get(){return addEventListenerWrapper;}};Object.defineProperty(window.EventTarget.prototype,"addEventListener",descriptor);Object.defineProperty(window,"addEventListener",descriptor);Object.defineProperty(document,"addEventListener",descriptor);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function validateType(type){return typeof type!=="undefined";}function validateListener(listener){return typeof listener!=="undefined"&&(typeof listener==="function"||typeof listener==="object"&&listener!==null&&"handleEvent"in listener&&typeof listener.handleEvent==="function");}function listenerToString(listener){return typeof listener==="function"?listener.toString():listener.handleEvent.toString();}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventAddEventListener.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventAdfly(source,args){function preventAdfly(source){var isDigit=function isDigit(data){return /^\d$/.test(data);};var handler=function handler(encodedURL){var evenChars="";var oddChars="";for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventAdfly.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventBab(source,args){function preventBab(source){var nativeSetTimeout=window.setTimeout;var babRegex=/\.bab_elementid.$/;var timeoutWrapper=function timeoutWrapper(callback){if(typeof callback!=="string"||!babRegex.test(callback)){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeSetTimeout.apply(window,[callback,...args]);}hit(source);};window.setTimeout=timeoutWrapper;var signatures=[["blockadblock"],["babasbm"],[/getItem\('babn'\)/],["getElementById","String.fromCharCode","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789","charAt","DOMContentLoaded","AdBlock","addEventListener","doScroll","fromCharCode","<<2|r>>4","sessionStorage","clientWidth","localStorage","Math","random"]];var check=function check(str){if(typeof str!=="string"){return false;}for(var i=0;i=.8){return true;}}return false;};var nativeEval=window.eval;var evalWrapper=function evalWrapper(str){if(!check(str)){return nativeEval(str);}hit(source);var bodyEl=document.body;if(bodyEl){bodyEl.style.removeProperty("visibility");}var el=document.getElementById("babasbmsgx");if(el){el.parentNode.removeChild(el);}};window.eval=evalWrapper.bind(window);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventBab.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventElementSrcLoading(source,args){function preventElementSrcLoading(source,tagName,match){if(typeof Proxy==="undefined"||typeof Reflect==="undefined"){return;}var srcMockData={script:"data:text/javascript;base64,KCk9Pnt9",img:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",iframe:"data:text/html;base64, PGRpdj48L2Rpdj4=",link:"data:text/plain;base64,"};var instance;if(tagName==="script"){instance=HTMLScriptElement;}else if(tagName==="img"){instance=HTMLImageElement;}else if(tagName==="iframe"){instance=HTMLIFrameElement;}else if(tagName==="link"){instance=HTMLLinkElement;}else {return;}var hasTrustedTypes=window.trustedTypes&&typeof window.trustedTypes.createPolicy==="function";var policy;if(hasTrustedTypes){policy=window.trustedTypes.createPolicy("AGPolicy",{createScriptURL:function createScriptURL(arg){return arg;}});}var SOURCE_PROPERTY_NAME=tagName==="link"?"href":"src";var ONERROR_PROPERTY_NAME="onerror";var searchRegexp=toRegExp(match);var setMatchedAttribute=function setMatchedAttribute(elem){return elem.setAttribute(source.name,"matched");};var setAttributeWrapper=function setAttributeWrapper(target,thisArg,args){if(!args[0]||!args[1]){return Reflect.apply(target,thisArg,args);}var nodeName=thisArg.nodeName.toLowerCase();var attrName=args[0].toLowerCase();var attrValue=args[1];var isMatched=attrName===SOURCE_PROPERTY_NAME&&tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(attrValue);if(!isMatched){return Reflect.apply(target,thisArg,args);}hit(source);setMatchedAttribute(thisArg);return Reflect.apply(target,thisArg,[attrName,srcMockData[nodeName]]);};var setAttributeHandler={apply:setAttributeWrapper};instance.prototype.setAttribute=new Proxy(Element.prototype.setAttribute,setAttributeHandler);var origSrcDescriptor=safeGetDescriptor(instance.prototype,SOURCE_PROPERTY_NAME);if(!origSrcDescriptor){return;}Object.defineProperty(instance.prototype,SOURCE_PROPERTY_NAME,{enumerable:true,configurable:true,get(){return origSrcDescriptor.get.call(this);},set(urlValue){var nodeName=this.nodeName.toLowerCase();var isMatched=tagName.toLowerCase()===nodeName&&srcMockData[nodeName]&&searchRegexp.test(urlValue);if(!isMatched){origSrcDescriptor.set.call(this,urlValue);return true;}if(policy&&urlValue instanceof TrustedScriptURL){var trustedSrc=policy.createScriptURL(urlValue);origSrcDescriptor.set.call(this,trustedSrc);hit(source);return;}setMatchedAttribute(this);origSrcDescriptor.set.call(this,srcMockData[nodeName]);hit(source);}});var origOnerrorDescriptor=safeGetDescriptor(HTMLElement.prototype,ONERROR_PROPERTY_NAME);if(!origOnerrorDescriptor){return;}Object.defineProperty(HTMLElement.prototype,ONERROR_PROPERTY_NAME,{enumerable:true,configurable:true,get(){return origOnerrorDescriptor.get.call(this);},set(cb){var isMatched=this.getAttribute(source.name)==="matched";if(!isMatched){origOnerrorDescriptor.set.call(this,cb);return true;}origOnerrorDescriptor.set.call(this,noopFunc);return true;}});var addEventListenerWrapper=function addEventListenerWrapper(target,thisArg,args){if(!args[0]||!args[1]||!thisArg){return Reflect.apply(target,thisArg,args);}var eventName=args[0];var isMatched=typeof thisArg.getAttribute==="function"&&thisArg.getAttribute(source.name)==="matched"&&eventName==="error";if(isMatched){return Reflect.apply(target,thisArg,[eventName,noopFunc]);}return Reflect.apply(target,thisArg,args);};var addEventListenerHandler={apply:addEventListenerWrapper};EventTarget.prototype.addEventListener=new Proxy(EventTarget.prototype.addEventListener,addEventListenerHandler);var preventInlineOnerror=function preventInlineOnerror(tagName,src){window.addEventListener("error",function(event){if(!event.target||!event.target.nodeName||event.target.nodeName.toLowerCase()!==tagName||!event.target.src||!src.test(event.target.src)){return;}hit(source);if(typeof event.target.onload==="function"){event.target.onerror=event.target.onload;return;}event.target.onerror=noopFunc;},true);};preventInlineOnerror(tagName,searchRegexp);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function safeGetDescriptor(obj,prop){var descriptor=Object.getOwnPropertyDescriptor(obj,prop);if(descriptor&&descriptor.configurable){return descriptor;}return null;}function noopFunc(){}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventElementSrcLoading.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventEvalIf(source,args){function preventEvalIf(source,search){var searchRegexp=toRegExp(search);var nativeEval=window.eval;window.eval=function(payload){if(!searchRegexp.test(payload.toString())){return nativeEval.call(window,payload);}hit(source);return undefined;}.bind(window);}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventEvalIf.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventFab(source,args){function preventFab(source){hit(source);var Fab=function Fab(){};Fab.prototype.check=noopFunc;Fab.prototype.clearEvent=noopFunc;Fab.prototype.emitEvent=noopFunc;Fab.prototype.on=function(a,b){if(!a){b();}return this;};Fab.prototype.onDetected=noopThis;Fab.prototype.onNotDetected=function(a){a();return this;};Fab.prototype.setOption=noopFunc;Fab.prototype.options={set:noopFunc,get:noopFunc};var fab=new Fab();var getSetFab={get(){return Fab;},set(){}};var getsetfab={get(){return fab;},set(){}};if(Object.prototype.hasOwnProperty.call(window,"FuckAdBlock")){window.FuckAdBlock=Fab;}else {Object.defineProperty(window,"FuckAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"BlockAdBlock")){window.BlockAdBlock=Fab;}else {Object.defineProperty(window,"BlockAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"SniffAdBlock")){window.SniffAdBlock=Fab;}else {Object.defineProperty(window,"SniffAdBlock",getSetFab);}if(Object.prototype.hasOwnProperty.call(window,"fuckAdBlock")){window.fuckAdBlock=fab;}else {Object.defineProperty(window,"fuckAdBlock",getsetfab);}if(Object.prototype.hasOwnProperty.call(window,"blockAdBlock")){window.blockAdBlock=fab;}else {Object.defineProperty(window,"blockAdBlock",getsetfab);}if(Object.prototype.hasOwnProperty.call(window,"sniffAdBlock")){window.sniffAdBlock=fab;}else {Object.defineProperty(window,"sniffAdBlock",getsetfab);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function noopThis(){return this;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventFab.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventFetch(source,args){function preventFetch(source,propsToMatch){var responseBody=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"emptyObj";var responseType=arguments.length>3?arguments[3]:undefined;if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var nativeRequestClone=Request.prototype.clone;var strResponseBody;if(responseBody===""||responseBody==="emptyObj"){strResponseBody="{}";}else if(responseBody==="emptyArr"){strResponseBody="[]";}else if(responseBody==="emptyStr"){strResponseBody="";}else {logMessage(source,"Invalid responseBody parameter: '".concat(responseBody,"'"));return;}var isResponseTypeSpecified=typeof responseType!=="undefined";var isResponseTypeSupported=function isResponseTypeSupported(responseType){var SUPPORTED_TYPES=["basic","cors","opaque"];return SUPPORTED_TYPES.includes(responseType);};if(isResponseTypeSpecified&&!isResponseTypeSupported(responseType)){logMessage(source,"Invalid responseType parameter: '".concat(responseType,"'"));return;}var getResponseType=function getResponseType(request){try{var mode=request.mode;if(mode===undefined||mode==="cors"||mode==="no-cors"){var fetchURL=new URL(request.url);if(fetchURL.origin===document.location.origin){return "basic";}return mode==="no-cors"?"opaque":"cors";}}catch(error){logMessage(source,"Could not determine response type: ".concat(error));}return undefined;};var handlerWrapper=async function handlerWrapper(target,thisArg,args){var shouldPrevent=false;var fetchData=getFetchData(args,nativeRequestClone);if(typeof propsToMatch==="undefined"){logMessage(source,"fetch( ".concat(objectToString(fetchData)," )"),true);hit(source);return Reflect.apply(target,thisArg,args);}shouldPrevent=matchRequestProps(source,propsToMatch,fetchData);if(shouldPrevent){hit(source);var finalResponseType;try{finalResponseType=responseType||getResponseType(fetchData);var origResponse=await Reflect.apply(target,thisArg,args);if(!origResponse.ok){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType);}return modifyResponse(origResponse,{body:strResponseBody,type:finalResponseType});}catch(ex){return noopPromiseResolve(strResponseBody,fetchData.url,finalResponseType);}}return Reflect.apply(target,thisArg,args);};var fetchHandler={apply:handlerWrapper};fetch=new Proxy(fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}function modifyResponse(origResponse){var _origResponse$headers;var replacement=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{body:"{}"};var headers={};origResponse===null||origResponse===void 0?void 0:(_origResponse$headers=origResponse.headers)===null||_origResponse$headers===void 0?void 0:_origResponse$headers.forEach(function(value,key){headers[key]=value;});var modifiedResponse=new Response(replacement.body,{status:origResponse.status,statusText:origResponse.statusText,headers:headers});Object.defineProperties(modifiedResponse,{url:{value:origResponse.url},type:{value:replacement.type||origResponse.type}});return modifiedResponse;}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventFetch.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventPopadsNet(source,args){function preventPopadsNet(source){var rid=randomId();var throwError=function throwError(){throw new ReferenceError(rid);};delete window.PopAds;delete window.popns;Object.defineProperties(window,{PopAds:{set:throwError},popns:{set:throwError}});window.onerror=createOnErrorHandler(rid).bind();hit(source);}function createOnErrorHandler(rid){var nativeOnError=window.onerror;return function onError(error){if(typeof error==="string"&&error.includes(rid)){return true;}if(nativeOnError instanceof Function){for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function randomId(){return Math.random().toString(36).slice(2,9);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventPopadsNet.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventRefresh(source,args){function preventRefresh(source,delaySec){var getMetaElements=function getMetaElements(){var metaNodes=[];try{metaNodes=document.querySelectorAll('meta[http-equiv="refresh" i][content]');}catch(e){try{metaNodes=document.querySelectorAll('meta[http-equiv="refresh"][content]');}catch(e){logMessage(source,e);}}return Array.from(metaNodes);};var getMetaContentDelay=function getMetaContentDelay(metaElements){var delays=metaElements.map(function(meta){var contentString=meta.getAttribute("content");if(contentString.length===0){return null;}var contentDelay;var limiterIndex=contentString.indexOf(";");if(limiterIndex!==-1){var delaySubstring=contentString.substring(0,limiterIndex);contentDelay=getNumberFromString(delaySubstring);}else {contentDelay=getNumberFromString(contentString);}return contentDelay;}).filter(function(delay){return delay!==null;});if(!delays.length){return null;}var minDelay=delays.reduce(function(a,b){return Math.min(a,b);});return minDelay;};var stop=function stop(){var metaElements=getMetaElements();if(metaElements.length===0){return;}var secondsToRun=getNumberFromString(delaySec);if(secondsToRun===null){secondsToRun=getMetaContentDelay(metaElements);}if(secondsToRun===null){return;}var delayMs=secondsToRun*1e3;setTimeout(function(){window.stop();hit(source);},delayMs);};if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",stop,{once:true});}else {stop();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventRefresh.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventRequestAnimationFrame(source,args){function preventRequestAnimationFrame(source,match){var nativeRequestAnimationFrame=window.requestAnimationFrame;var shouldLog=typeof match==="undefined";var _parseMatchArg=parseMatchArg(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var rafWrapper=function rafWrapper(callback){var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"requestAnimationFrame(".concat(String(callback),")"),true);}else if(isValidCallback(callback)&&isValidStrPattern(match)){shouldPrevent=matchRegexp.test(callback.toString())!==isInvertedMatch;}if(shouldPrevent){hit(source);return nativeRequestAnimationFrame(noopFunc);}for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeRequestAnimationFrame.apply(window,[callback,...args]);};window.requestAnimationFrame=rafWrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventRequestAnimationFrame.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventSetInterval(source,args){function preventSetInterval(source,matchCallback,matchDelay){var shouldLog=typeof matchCallback==="undefined"&&typeof matchDelay==="undefined";var handlerWrapper=function handlerWrapper(target,thisArg,args){var callback=args[0];var delay=args[1];var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"setInterval(".concat(String(callback),", ").concat(delay,")"),true);}else {shouldPrevent=isPreventionNeeded({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay});}if(shouldPrevent){hit(source);args[0]=noopFunc;}return target.apply(thisArg,args);};var setIntervalHandler={apply:handlerWrapper};window.setInterval=new Proxy(window.setInterval,setIntervalHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isPreventionNeeded(_ref){var callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!isValidCallback(callback)){return false;}if(!isValidMatchStr(matchCallback)||matchDelay&&!isValidMatchNumber(matchDelay)){return false;}var _parseMatchArg=parseMatchArg(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var _parseDelayArg=parseDelayArg(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch;var parsedDelay=parseRawDelay(delay);var shouldPrevent=false;var callbackStr=String(callback);if(delayMatch===null){shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch;}else if(!matchCallback){shouldPrevent=parsedDelay===delayMatch!==isInvertedDelayMatch;}else {shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch;}return shouldPrevent;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function parseDelayArg(delay){var INVERT_MARKER="!";var isInvertedDelayMatch=delay===null||delay===void 0?void 0:delay.startsWith(INVERT_MARKER);var delayValue=isInvertedDelayMatch?delay.slice(1):delay;var parsedDelay=parseInt(delayValue,10);var delayMatch=nativeIsNaN(parsedDelay)?null:parsedDelay;return {isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:delayMatch};}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function isValidMatchNumber(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}var num=parseFloat(str);return !nativeIsNaN(num)&&nativeIsFinite(num);}function parseRawDelay(delay){var parsedDelay=Math.floor(parseInt(delay,10));return typeof parsedDelay==="number"&&!nativeIsNaN(parsedDelay)?parsedDelay:delay;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventSetInterval.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventSetTimeout(source,args){function preventSetTimeout(source,matchCallback,matchDelay){var shouldLog=typeof matchCallback==="undefined"&&typeof matchDelay==="undefined";var handlerWrapper=function handlerWrapper(target,thisArg,args){var callback=args[0];var delay=args[1];var shouldPrevent=false;if(shouldLog){hit(source);logMessage(source,"setTimeout(".concat(String(callback),", ").concat(delay,")"),true);}else {shouldPrevent=isPreventionNeeded({callback:callback,delay:delay,matchCallback:matchCallback,matchDelay:matchDelay});}if(shouldPrevent){hit(source);args[0]=noopFunc;}return target.apply(thisArg,args);};var setTimeoutHandler={apply:handlerWrapper};window.setTimeout=new Proxy(window.setTimeout,setTimeoutHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function noopFunc(){}function isPreventionNeeded(_ref){var callback=_ref.callback,delay=_ref.delay,matchCallback=_ref.matchCallback,matchDelay=_ref.matchDelay;if(!isValidCallback(callback)){return false;}if(!isValidMatchStr(matchCallback)||matchDelay&&!isValidMatchNumber(matchDelay)){return false;}var _parseMatchArg=parseMatchArg(matchCallback),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;var _parseDelayArg=parseDelayArg(matchDelay),isInvertedDelayMatch=_parseDelayArg.isInvertedDelayMatch,delayMatch=_parseDelayArg.delayMatch;var parsedDelay=parseRawDelay(delay);var shouldPrevent=false;var callbackStr=String(callback);if(delayMatch===null){shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch;}else if(!matchCallback){shouldPrevent=parsedDelay===delayMatch!==isInvertedDelayMatch;}else {shouldPrevent=matchRegexp.test(callbackStr)!==isInvertedMatch&&parsedDelay===delayMatch!==isInvertedDelayMatch;}return shouldPrevent;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function parseDelayArg(delay){var INVERT_MARKER="!";var isInvertedDelayMatch=delay===null||delay===void 0?void 0:delay.startsWith(INVERT_MARKER);var delayValue=isInvertedDelayMatch?delay.slice(1):delay;var parsedDelay=parseInt(delayValue,10);var delayMatch=nativeIsNaN(parsedDelay)?null:parsedDelay;return {isInvertedDelayMatch:isInvertedDelayMatch,delayMatch:delayMatch};}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isValidCallback(callback){return callback instanceof Function||typeof callback==="string";}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function isValidMatchNumber(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}var num=parseFloat(str);return !nativeIsNaN(num)&&nativeIsFinite(num);}function parseRawDelay(delay){var parsedDelay=Math.floor(parseInt(delay,10));return typeof parsedDelay==="number"&&!nativeIsNaN(parsedDelay)?parsedDelay:delay;}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventSetTimeout.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventWindowOpen(source,args){function preventWindowOpen(source){var match=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"*";var delay=arguments.length>2?arguments[2]:undefined;var replacement=arguments.length>3?arguments[3]:undefined;var nativeOpen=window.open;var isNewSyntax=match!=="0"&&match!=="1";var oldOpenWrapper=function oldOpenWrapper(str){match=Number(match)>0;for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}if(!isValidStrPattern(delay)){logMessage(source,"Invalid parameter: ".concat(delay));return nativeOpen.apply(window,[str,...args]);}var searchRegexp=toRegExp(delay);if(match!==searchRegexp.test(str)){return nativeOpen.apply(window,[str,...args]);}hit(source);return handleOldReplacement(replacement);};var newOpenWrapper=function newOpenWrapper(url){var shouldLog=replacement&&replacement.includes("log");for(var _len2=arguments.length,args=new Array(_len2>1?_len2-1:0),_key2=1;_key2<_len2;_key2++){args[_key2-1]=arguments[_key2];}if(shouldLog){var argsStr=args&&args.length>0?", ".concat(args.join(", ")):"";var message="".concat(url).concat(argsStr);logMessage(source,message,true);hit(source);}var shouldPrevent=false;if(match==="*"){shouldPrevent=true;}else if(isValidMatchStr(match)){var _parseMatchArg=parseMatchArg(match),isInvertedMatch=_parseMatchArg.isInvertedMatch,matchRegexp=_parseMatchArg.matchRegexp;shouldPrevent=matchRegexp.test(url)!==isInvertedMatch;}else {logMessage(source,"Invalid parameter: ".concat(match));shouldPrevent=false;}if(shouldPrevent){var parsedDelay=parseInt(delay,10);var result;if(nativeIsNaN(parsedDelay)){result=noopNull();}else {var decoyArgs={replacement:replacement,url:url,delay:parsedDelay};var decoy=createDecoy(decoyArgs);var popup=decoy.contentWindow;if(typeof popup==="object"&&popup!==null){Object.defineProperty(popup,"closed",{value:false});Object.defineProperty(popup,"opener",{value:window});Object.defineProperty(popup,"frameElement",{value:null});}else {var nativeGetter=decoy.contentWindow&&decoy.contentWindow.get;Object.defineProperty(decoy,"contentWindow",{get:getPreventGetter(nativeGetter)});popup=decoy.contentWindow;}result=popup;}hit(source);return result;}return nativeOpen.apply(window,[url,...args]);};window.open=isNewSyntax?newOpenWrapper:oldOpenWrapper;window.open.toString=nativeOpen.toString.bind(nativeOpen);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isValidMatchStr(match){var INVERT_MARKER="!";var str=match;if(match!==null&&match!==void 0&&match.startsWith(INVERT_MARKER)){str=match.slice(1);}return isValidStrPattern(str);}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function handleOldReplacement(replacement){var result;if(!replacement){result=noopFunc;}else if(replacement==="trueFunc"){result=trueFunc;}else if(replacement.includes("=")){var isProp=replacement.startsWith("{")&&replacement.endsWith("}");if(isProp){var propertyPart=replacement.slice(1,-1);var propertyName=substringBefore(propertyPart,"=");var propertyValue=substringAfter(propertyPart,"=");if(propertyValue==="noopFunc"){result={};result[propertyName]=noopFunc;}}}return result;}function createDecoy(args){var UrlPropNameOf=function(UrlPropNameOf){UrlPropNameOf["Object"]="data";UrlPropNameOf["Iframe"]="src";return UrlPropNameOf;}({});var replacement=args.replacement,url=args.url,delay=args.delay;var tag;if(replacement==="obj"){tag="object";}else {tag="iframe";}var decoy=document.createElement(tag);if(decoy instanceof HTMLObjectElement){decoy[UrlPropNameOf.Object]=url;}else if(decoy instanceof HTMLIFrameElement){decoy[UrlPropNameOf.Iframe]=url;}decoy.style.setProperty("height","1px","important");decoy.style.setProperty("position","fixed","important");decoy.style.setProperty("top","-1px","important");decoy.style.setProperty("width","1px","important");document.body.appendChild(decoy);setTimeout(function(){return decoy.remove();},delay*1e3);return decoy;}function getPreventGetter(nativeGetter){var preventGetter=function preventGetter(target,prop){if(prop&&prop==="closed"){return false;}if(typeof nativeGetter==="function"){return noopFunc;}return prop&&target[prop];};return preventGetter;}function noopNull(){return null;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function noopFunc(){}function trueFunc(){return true;}function substringBefore(str,separator){if(!str||!separator){return str;}var index=str.indexOf(separator);return index<0?str:str.substring(0,index);}function substringAfter(str,separator){if(!str){return str;}var index=str.indexOf(separator);return index<0?"":str.substring(index+separator.length);}var updatedArgs=args?[].concat(source).concat(args):[source];try{preventWindowOpen.apply(this,updatedArgs);}catch(e){console.log(e);}}function preventXHR(source,args){function preventXHR(source,propsToMatch,customResponseText){if(typeof Proxy==="undefined"){return;}var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var nativeGetResponseHeader=window.XMLHttpRequest.prototype.getResponseHeader;var nativeGetAllResponseHeaders=window.XMLHttpRequest.prototype.getAllResponseHeaders;var xhrData;var modifiedResponse="";var modifiedResponseText="";var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(typeof propsToMatch==="undefined"){logMessage(source,"xhr( ".concat(objectToString(xhrData)," )"),true);hit(source);}else if(matchRequestProps(source,propsToMatch,xhrData)){thisArg.shouldBePrevented=true;thisArg.xhrData=xhrData;}if(thisArg.shouldBePrevented){thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return Reflect.apply(target,thisArg,args);}if(thisArg.responseType==="blob"){modifiedResponse=new Blob();}if(thisArg.responseType==="arraybuffer"){modifiedResponse=new ArrayBuffer();}if(customResponseText){var randomText=generateRandomResponse(customResponseText);if(randomText){modifiedResponseText=randomText;}else {logMessage(source,"Invalid randomize parameter: '".concat(customResponseText,"'"));}}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,statusText=forgedRequest.statusText;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},statusText:{value:statusText,writable:false},responseURL:{value:responseURL||thisArg.xhrData.url,writable:false},responseXML:{value:responseXML,writable:false},status:{value:200,writable:false},response:{value:modifiedResponse,writable:false},responseText:{value:modifiedResponseText,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[thisArg.xhrData.method,thisArg.xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var getHeaderWrapper=function getHeaderWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return nativeGetResponseHeader.apply(thisArg,args);}if(!thisArg.collectedHeaders.length){return null;}var searchHeaderName=args[0].toLowerCase();var matchedHeader=thisArg.collectedHeaders.find(function(header){var headerName=header[0].toLowerCase();return headerName===searchHeaderName;});return matchedHeader?matchedHeader[1]:null;};var getAllHeadersWrapper=function getAllHeadersWrapper(target,thisArg){if(!thisArg.shouldBePrevented){return nativeGetAllResponseHeaders.call(thisArg);}if(!thisArg.collectedHeaders.length){return "";}var allHeadersStr=thisArg.collectedHeaders.map(function(header){var headerName=header[0];var headerValue=header[1];return "".concat(headerName.toLowerCase(),": ").concat(headerValue);}).join("\r\n");return allHeadersStr;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};var getHeaderHandler={apply:getHeaderWrapper};var getAllHeadersHandler={apply:getAllHeadersWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);XMLHttpRequest.prototype.getResponseHeader=new Proxy(XMLHttpRequest.prototype.getResponseHeader,getHeaderHandler);XMLHttpRequest.prototype.getAllResponseHeaders=new Proxy(XMLHttpRequest.prototype.getAllResponseHeaders,getAllHeadersHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function generateRandomResponse(customResponseText){var customResponse=customResponseText;if(customResponse==="true"){customResponse=Math.random().toString(36).slice(-10);return customResponse;}customResponse=customResponse.replace("length:","");var rangeRegex=/^\d+-\d+$/;if(!rangeRegex.test(customResponse)){return null;}var rangeMin=getNumberFromString(customResponse.split("-")[0]);var rangeMax=getNumberFromString(customResponse.split("-")[1]);if(!nativeIsFinite(rangeMin)||!nativeIsFinite(rangeMax)){return null;}if(rangeMin>rangeMax){var temp=rangeMin;rangeMin=rangeMax;rangeMax=temp;}var LENGTH_RANGE_LIMIT=500*1e3;if(rangeMax>LENGTH_RANGE_LIMIT){return null;}var length=getRandomIntInclusive(rangeMin,rangeMax);customResponse=getRandomStrByLength(length);return customResponse;}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function nativeIsFinite(num){var native=Number.isFinite||window.isFinite;return native(num);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function getRandomIntInclusive(min,max){min=Math.ceil(min);max=Math.floor(max);return Math.floor(Math.random()*(max-min+1)+min);}function getRandomStrByLength(length){var result="";var characters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+=~";var charactersLength=characters.length;for(var i=0;i3&&arguments[3]!==undefined?arguments[3]:"asap stay";if(!attrs){return;}attrs=attrs.split(/\s*\|\s*/);if(!selector){selector="[".concat(attrs.join("],["),"]");}var rmattr=function rmattr(){var nodes=[];try{nodes=[].slice.call(document.querySelectorAll(selector));}catch(e){logMessage(source,"Invalid selector arg: '".concat(selector,"'"));}var removed=false;nodes.forEach(function(node){attrs.forEach(function(attr){node.removeAttribute(attr);removed=true;});});if(removed){hit(source);}};var flags=parseFlags(applying);var run=function run(){rmattr();if(!flags.hasFlag(flags.STAY)){return;}observeDOMChanges(rmattr,true);};if(flags.hasFlag(flags.ASAP)){if(document.readyState==="loading"){window.addEventListener("DOMContentLoaded",rmattr,{once:true});}else {rmattr();}}if(document.readyState!=="complete"&&flags.hasFlag(flags.COMPLETE)){window.addEventListener("load",run,{once:true});}else if(flags.hasFlag(flags.STAY)){if(!applying.includes(" ")){rmattr();}observeDOMChanges(rmattr,true);}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function parseFlags(flags){var FLAGS_DIVIDER=" ";var ASAP_FLAG="asap";var COMPLETE_FLAG="complete";var STAY_FLAG="stay";var VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG];var passedFlags=flags.trim().split(FLAGS_DIVIDER).filter(function(f){return VALID_FLAGS.includes(f);});return {ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag(flag){return passedFlags.includes(flag);}};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeClass(source,args){function removeClass(source,classNames,selector){var applying=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"asap stay";if(!classNames){return;}classNames=classNames.split(/\s*\|\s*/);var selectors=[];if(!selector){selectors=classNames.map(function(className){return ".".concat(className);});}var removeClassHandler=function removeClassHandler(){var nodes=new Set();if(selector){var foundNodes=[];try{foundNodes=[].slice.call(document.querySelectorAll(selector));}catch(e){logMessage(source,"Invalid selector arg: '".concat(selector,"'"));}foundNodes.forEach(function(n){return nodes.add(n);});}else if(selectors.length>0){selectors.forEach(function(s){var elements=document.querySelectorAll(s);for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function parseFlags(flags){var FLAGS_DIVIDER=" ";var ASAP_FLAG="asap";var COMPLETE_FLAG="complete";var STAY_FLAG="stay";var VALID_FLAGS=[STAY_FLAG,ASAP_FLAG,COMPLETE_FLAG];var passedFlags=flags.trim().split(FLAGS_DIVIDER).filter(function(f){return VALID_FLAGS.includes(f);});return {ASAP:ASAP_FLAG,COMPLETE:COMPLETE_FLAG,STAY:STAY_FLAG,hasFlag(flag){return passedFlags.includes(flag);}};}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeClass.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeCookie(source,args){function removeCookie(source,match){var matchRegexp=toRegExp(match);var removeCookieFromHost=function removeCookieFromHost(cookieName,hostName){var cookieSpec="".concat(cookieName,"=");var domain1="; domain=".concat(hostName);var domain2="; domain=.".concat(hostName);var path="; path=/";var expiration="; expires=Thu, 01 Jan 1970 00:00:00 GMT";document.cookie=cookieSpec+expiration;document.cookie=cookieSpec+domain1+expiration;document.cookie=cookieSpec+domain2+expiration;document.cookie=cookieSpec+path+expiration;document.cookie=cookieSpec+domain1+path+expiration;document.cookie=cookieSpec+domain2+path+expiration;hit(source);};var rmCookie=function rmCookie(){document.cookie.split(";").forEach(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return;}var cookieName=cookieStr.slice(0,pos).trim();if(!matchRegexp.test(cookieName)){return;}var hostParts=document.location.hostname.split(".");for(var i=0;i<=hostParts.length-1;i+=1){var hostName=hostParts.slice(i).join(".");if(hostName){removeCookieFromHost(cookieName,hostName);}}});};rmCookie();window.addEventListener("beforeunload",rmCookie);}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeInShadowDom(source,args){function removeInShadowDom(source,selector,baseSelector){if(!Element.prototype.attachShadow){return;}var removeElement=function removeElement(targetElement){targetElement.remove();};var removeHandler=function removeHandler(){var hostElements=!baseSelector?findHostElements(document.documentElement):document.querySelectorAll(baseSelector);var _loop=function _loop(){var isRemoved=false;var _pierceShadowDom=pierceShadowDom(selector,hostElements),targets=_pierceShadowDom.targets,innerHosts=_pierceShadowDom.innerHosts;targets.forEach(function(targetEl){removeElement(targetEl);isRemoved=true;});if(isRemoved){hit(source);}hostElements=innerHosts;};while(hostElements.length!==0){_loop();}};removeHandler();observeDOMChanges(removeHandler,true);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function findHostElements(rootElement){var hosts=[];if(rootElement){var domElems=rootElement.querySelectorAll("*");domElems.forEach(function(el){if(el.shadowRoot){hosts.push(el);}});}return hosts;}function pierceShadowDom(selector,hostElements){var targets=[];var innerHostsAcc=[];hostElements.forEach(function(host){var simpleElems=host.querySelectorAll(selector);targets=targets.concat([].slice.call(simpleElems));var shadowRootElem=host.shadowRoot;var shadowChildren=shadowRootElem.querySelectorAll(selector);targets=targets.concat([].slice.call(shadowChildren));innerHostsAcc.push(findHostElements(shadowRootElem));});var innerHosts=flatten(innerHostsAcc);return {targets:targets,innerHosts:innerHosts};}function flatten(input){var stack=[];input.forEach(function(el){return stack.push(el);});var res=[];while(stack.length){var next=stack.pop();if(Array.isArray(next)){next.forEach(function(el){return stack.push(el);});}else {res.push(next);}}return res.reverse();}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}var updatedArgs=args?[].concat(source).concat(args):[source];try{removeInShadowDom.apply(this,updatedArgs);}catch(e){console.log(e);}}function removeNodeText(source,args){function removeNodeText(source,nodeName,textMatch){var _parseNodeTextParams=parseNodeTextParams(nodeName,textMatch),selector=_parseNodeTextParams.selector,nodeNameMatch=_parseNodeTextParams.nodeNameMatch,textContentMatch=_parseNodeTextParams.textContentMatch;var handleNodes=function handleNodes(nodes){return nodes.forEach(function(node){var shouldReplace=isTargetNode(node,nodeNameMatch,textContentMatch);if(shouldReplace){var ALL_TEXT_PATTERN=/^[\s\S]*$/;var REPLACEMENT="";replaceNodeText(source,node,ALL_TEXT_PATTERN,REPLACEMENT);}});};if(document.documentElement){handleExistingNodes(selector,handleNodes);}observeDocumentWithTimeout(function(mutations){return handleMutations(mutations,handleNodes);});}function observeDocumentWithTimeout(callback){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function handleExistingNodes(selector,handler){var nodeList=document.querySelectorAll(selector);var nodes=nodeListToArray(nodeList);handler(nodes);}function handleMutations(mutations,handler){var addedNodes=getAddedNodes(mutations);handler(addedNodes);}function replaceNodeText(source,node,pattern,replacement){var textContent=node.textContent;if(textContent){node.textContent=textContent.replace(pattern,replacement);hit(source);}}function isTargetNode(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent;var nodeNameLowerCase=nodeName.toLowerCase();return textContent!==null&&textContent!==""&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch));}function parseNodeTextParams(nodeName,textMatch){var pattern=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;var REGEXP_START_MARKER="/";var isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER));var selector=isStringNameMatch?nodeName:"*";var nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName);var textContentMatch=!textMatch.startsWith(REGEXP_START_MARKER)?textMatch:toRegExp(textMatch);var patternMatch;if(pattern){patternMatch=!pattern.startsWith(REGEXP_START_MARKER)?pattern:toRegExp(pattern);}return {selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function nodeListToArray(nodeList){var nodes=[];for(var i=0;i3&&arguments[3]!==undefined?arguments[3]:"";if(!selector||!attr){return;}var allowedValues=["true","false"];var shouldCopyValue=value.startsWith("[")&&value.endsWith("]");var isValidValue=value.length===0||!nativeIsNaN(parseInt(value,10))&&parseInt(value,10)>=0&&parseInt(value,10)<=32767||allowedValues.includes(value.toLowerCase());if(!shouldCopyValue&&!isValidValue){logMessage(source,"Invalid attribute value provided: '".concat(convertTypeToString(value),"'"));return;}var attributeHandler;if(shouldCopyValue){attributeHandler=function attributeHandler(elem,attr,value){var valueToCopy=elem.getAttribute(value.slice(1,-1));if(valueToCopy===null){logMessage(source,"No element attribute found to copy value from: ".concat(value));}elem.setAttribute(attr,valueToCopy);};}setAttributeBySelector(source,selector,attr,value,attributeHandler);observeDOMChanges(function(){return setAttributeBySelector(source,selector,attr,value,attributeHandler);},true);}function setAttributeBySelector(source,selector,attribute,value){var attributeSetter=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultAttributeSetter;var elements;try{elements=document.querySelectorAll(selector);}catch(_unused){logMessage(source,'Failed to find elements matching selector "'.concat(selector,'"'));return;}if(!elements||elements.length===0){return;}try{elements.forEach(function(elem){return attributeSetter(elem,attribute,value);});hit(source);}catch(_unused2){logMessage(source,"Failed to set [".concat(attribute,'="').concat(value,'"] to each of selected elements.'));}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function convertTypeToString(value){var output;if(typeof value==="undefined"){output="undefined";}else if(typeof value==="object"){if(value===null){output="null";}else {output=objectToString(value);}}else {output=String(value);}return output;}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{setAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function setConstant(source,args){function setConstant(source,property,value){var stack=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var valueWrapper=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var setProxyTrap=arguments.length>5&&arguments[5]!==undefined?arguments[5]:false;var uboAliases=["set-constant.js","ubo-set-constant.js","set.js","ubo-set.js","ubo-set-constant","ubo-set"];if(uboAliases.includes(source.name)){if(stack.length!==1&&!getNumberFromString(stack)){valueWrapper=stack;}stack=undefined;}if(!property||!matchStackTrace(stack,new Error().stack)){return;}var isProxyTrapSet=false;var emptyArr=noopArray();var emptyObj=noopObject();var constantValue;if(value==="undefined"){constantValue=undefined;}else if(value==="false"){constantValue=false;}else if(value==="true"){constantValue=true;}else if(value==="null"){constantValue=null;}else if(value==="emptyArr"){constantValue=emptyArr;}else if(value==="emptyObj"){constantValue=emptyObj;}else if(value==="noopFunc"){constantValue=noopFunc;}else if(value==="noopCallbackFunc"){constantValue=noopCallbackFunc;}else if(value==="trueFunc"){constantValue=trueFunc;}else if(value==="falseFunc"){constantValue=falseFunc;}else if(value==="throwFunc"){constantValue=throwFunc;}else if(value==="noopPromiseResolve"){constantValue=noopPromiseResolve;}else if(value==="noopPromiseReject"){constantValue=noopPromiseReject;}else if(/^\d+$/.test(value)){constantValue=parseFloat(value);if(nativeIsNaN(constantValue)){return;}if(Math.abs(constantValue)>32767){return;}}else if(value==="-1"){constantValue=-1;}else if(value===""){constantValue="";}else if(value==="yes"){constantValue="yes";}else if(value==="no"){constantValue="no";}else {return;}var valueWrapperNames=["asFunction","asCallback","asResolved","asRejected"];if(valueWrapperNames.includes(valueWrapper)){var valueWrappersMap={asFunction(v){return function(){return v;};},asCallback(v){return function(){return function(){return v;};};},asResolved(v){return Promise.resolve(v);},asRejected(v){return Promise.reject(v);}};constantValue=valueWrappersMap[valueWrapper](constantValue);}var canceled=false;var mustCancel=function mustCancel(value){if(canceled){return canceled;}canceled=value!==undefined&&constantValue!==undefined&&typeof value!==typeof constantValue&&value!==null;return canceled;};var trapProp=function trapProp(base,prop,configurable,handler){if(!handler.init(base[prop])){return false;}var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);var prevSetter;if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message="Property '".concat(prop,"' is not configurable");logMessage(source,message);return false;}if(base[prop]){base[prop]=constantValue;}if(origDescriptor.set instanceof Function){prevSetter=origDescriptor.set;}}Object.defineProperty(base,prop,{configurable:configurable,get(){return handler.get();},set(a){if(prevSetter!==undefined){prevSetter(a);}if(a instanceof Object){var propertiesToCheck=property.split(".").slice(1);if(setProxyTrap&&!isProxyTrapSet){isProxyTrapSet=true;a=new Proxy(a,{get:function get(target,propertyKey,val){propertiesToCheck.reduce(function(object,currentProp,index,array){var currentObj=object===null||object===void 0?void 0:object[currentProp];if(index===array.length-1&¤tObj!==constantValue){object[currentProp]=constantValue;}return currentObj||object;},target);return Reflect.get(target,propertyKey,val);}});}}handler.set(a);}});return true;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;var inChainPropHandler={factValue:undefined,init(a){this.factValue=a;return true;},get(){return this.factValue;},set(a){if(this.factValue===a){return;}this.factValue=a;if(a instanceof Object){setChainPropAccess(a,chain);}}};var endPropHandler={init(a){if(mustCancel(a)){return false;}return true;},get(){return constantValue;},set(a){if(!mustCancel(a)){return;}constantValue=a;}};if(!chain){var isTrapped=trapProp(base,prop,false,endPropHandler);if(isTrapped){hit(source);}return;}if(base!==undefined&&base[prop]===null){trapProp(base,prop,true,inChainPropHandler);return;}if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){trapProp(base,prop,true,inChainPropHandler);}var propValue=owner[prop];if(propValue instanceof Object||typeof propValue==="object"&&propValue!==null){setChainPropAccess(propValue,chain);}trapProp(base,prop,true,inChainPropHandler);};setChainPropAccess(window,property);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getNumberFromString(rawString){var parsedDelay=parseInt(rawString,10);var validDelay=nativeIsNaN(parsedDelay)?null:parsedDelay;return validDelay;}function noopArray(){return [];}function noopObject(){return {};}function noopFunc(){}function noopCallbackFunc(){return noopFunc;}function trueFunc(){return true;}function falseFunc(){return false;}function throwFunc(){throw new Error();}function noopPromiseReject(){return Promise.reject();}function noopPromiseResolve(){var responseBody=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"{}";var responseUrl=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var responseType=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"basic";if(typeof Response==="undefined"){return;}var response=new Response(responseBody,{status:200,statusText:"OK"});if(responseType==="opaque"){Object.defineProperties(response,{body:{value:null},status:{value:0},statusText:{value:""},url:{value:""},type:{value:responseType}});}else {Object.defineProperties(response,{url:{value:responseUrl},type:{value:responseType}});}return Promise.resolve(response);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"/";var domain=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var validValue=getLimitedCookieValue(value);if(validValue===null){logMessage(source,"Invalid cookie value: '".concat(validValue,"'"));return;}if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,validValue,path,domain);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}hit(source);document.cookie=cookieToSet;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function getLimitedCookieValue(value){if(!value){return null;}var allowedCookieValues=new Set(["true","t","false","f","yes","y","no","n","ok","on","off","accept","accepted","notaccepted","reject","rejected","allow","allowed","disallow","deny","enable","enabled","disable","disabled","necessary","required"]);var validValue;if(allowedCookieValues.has(value.toLowerCase())){validValue=value;}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){return null;}if(Math.abs(validValue)<0||Math.abs(validValue)>32767){return null;}}else {return null;}return validValue;}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{setCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function setCookieReload(source,args){function setCookieReload(source,name,value){var path=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"/";var domain=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(isCookieSetWithValue(document.cookie,name,value)){return;}var validValue=getLimitedCookieValue(value);if(validValue===null){logMessage(source,"Invalid cookie value: '".concat(value,"'"));return;}if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,validValue,path,domain);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}document.cookie=cookieToSet;hit(source);if(isCookieSetWithValue(document.cookie,name,value)){window.location.reload();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(";").some(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return false;}var cookieName=cookieStr.slice(0,pos).trim();var cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue;});}function getLimitedCookieValue(value){if(!value){return null;}var allowedCookieValues=new Set(["true","t","false","f","yes","y","no","n","ok","on","off","accept","accepted","notaccepted","reject","rejected","allow","allowed","disallow","deny","enable","enabled","disable","disabled","necessary","required"]);var validValue;if(allowedCookieValues.has(value.toLowerCase())){validValue=value;}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){return null;}if(Math.abs(validValue)<0||Math.abs(validValue)>32767){return null;}}else {return null;}return validValue;}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{setCookieReload.apply(this,updatedArgs);}catch(e){console.log(e);}}function setLocalStorageItem(source,args){function setLocalStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified.");return;}var validValue;try{validValue=getLimitedStorageItemValue(value);}catch(_unused){logMessage(source,"Invalid storage item value: '".concat(value,"'"));return;}var _window=window,localStorage=_window.localStorage;if(validValue==="$remove$"){removeStorageItem(source,localStorage,key);}else {setStorageItem(source,localStorage,key,validValue);}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function removeStorageItem(source,storage,key){try{if(key.startsWith("/")&&(key.endsWith("/")||key.endsWith("/i"))&&isValidStrPattern(key)){var regExpKey=toRegExp(key);var storageKeys=Object.keys(storage);storageKeys.forEach(function(storageKey){if(regExpKey.test(storageKey)){storage.removeItem(storageKey);}});}else {storage.removeItem(key);}}catch(e){var message="Unable to remove storage item due to: ".concat(e.message);logMessage(source,message);}}function getLimitedStorageItemValue(value){if(typeof value!=="string"){throw new Error("Invalid value");}var allowedStorageValues=new Set(["undefined","false","true","null","","yes","no","on","off"]);var validValue;if(allowedStorageValues.has(value.toLowerCase())){validValue=value;}else if(value==="emptyArr"){validValue="[]";}else if(value==="emptyObj"){validValue="{}";}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){throw new Error("Invalid value");}if(Math.abs(validValue)>32767){throw new Error("Invalid value");}}else if(value==="$remove$"){validValue="$remove$";}else {throw new Error("Invalid value");}return validValue;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{setLocalStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function setPopadsDummy(source,args){function setPopadsDummy(source){delete window.PopAds;delete window.popns;Object.defineProperties(window,{PopAds:{get:function get(){hit(source);return {};}},popns:{get:function get(){hit(source);return {};}}});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{setPopadsDummy.apply(this,updatedArgs);}catch(e){console.log(e);}}function setSessionStorageItem(source,args){function setSessionStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified.");return;}var validValue;try{validValue=getLimitedStorageItemValue(value);}catch(_unused){logMessage(source,"Invalid storage item value: '".concat(value,"'"));return;}var _window=window,sessionStorage=_window.sessionStorage;if(validValue==="$remove$"){removeStorageItem(source,sessionStorage,key);}else {setStorageItem(source,sessionStorage,key,validValue);}hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function removeStorageItem(source,storage,key){try{if(key.startsWith("/")&&(key.endsWith("/")||key.endsWith("/i"))&&isValidStrPattern(key)){var regExpKey=toRegExp(key);var storageKeys=Object.keys(storage);storageKeys.forEach(function(storageKey){if(regExpKey.test(storageKey)){storage.removeItem(storageKey);}});}else {storage.removeItem(key);}}catch(e){var message="Unable to remove storage item due to: ".concat(e.message);logMessage(source,message);}}function getLimitedStorageItemValue(value){if(typeof value!=="string"){throw new Error("Invalid value");}var allowedStorageValues=new Set(["undefined","false","true","null","","yes","no","on","off"]);var validValue;if(allowedStorageValues.has(value.toLowerCase())){validValue=value;}else if(value==="emptyArr"){validValue="[]";}else if(value==="emptyObj"){validValue="{}";}else if(/^\d+$/.test(value)){validValue=parseFloat(value);if(nativeIsNaN(validValue)){throw new Error("Invalid value");}if(Math.abs(validValue)>32767){throw new Error("Invalid value");}}else if(value==="$remove$"){validValue="$remove$";}else {throw new Error("Invalid value");}return validValue;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{setSessionStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function spoofCSS(source,args){function spoofCSS(source,selectors,cssPropertyName,cssPropertyValue){if(!selectors){return;}var uboAliases=["spoof-css.js","ubo-spoof-css.js","ubo-spoof-css"];function convertToCamelCase(cssProperty){if(!cssProperty.includes("-")){return cssProperty;}var splittedProperty=cssProperty.split("-");var firstPart=splittedProperty[0];var secondPart=splittedProperty[1];return "".concat(firstPart).concat(secondPart[0].toUpperCase()).concat(secondPart.slice(1));}var shouldDebug=!!(cssPropertyName==="debug"&&cssPropertyValue);var propToValueMap=new Map();if(uboAliases.includes(source.name)){var args=source.args;var arrayOfProperties=[];var isDebug=args.at(-2);if(isDebug==="debug"){arrayOfProperties=args.slice(1,-2);}else {arrayOfProperties=args.slice(1);}for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var delay=arguments.length>3&&arguments[3]!==undefined?arguments[3]:NaN;if(!selectors){return;}var SHADOW_COMBINATOR=" >>> ";var OBSERVER_TIMEOUT_MS=1e4;var THROTTLE_DELAY_MS=20;var STATIC_CLICK_DELAY_MS=150;var COOKIE_MATCH_MARKER="cookie:";var LOCAL_STORAGE_MATCH_MARKER="localStorage:";var TEXT_MATCH_MARKER="containsText:";var SELECTORS_DELIMITER=",";var COOKIE_STRING_DELIMITER=";";var EXTRA_MATCH_DELIMITER=/(,\s*){1}(?=!?cookie:|!?localStorage:|containsText:)/;var sleep=function sleep(delayMs){return new Promise(function(resolve){return setTimeout(resolve,delayMs);});};if(selectors.includes(SHADOW_COMBINATOR)){var attachShadowWrapper=function attachShadowWrapper(target,thisArg,argumentsList){var _argumentsList$;var mode=(_argumentsList$=argumentsList[0])===null||_argumentsList$===void 0?void 0:_argumentsList$.mode;if(mode==="closed"){argumentsList[0].mode="open";}return Reflect.apply(target,thisArg,argumentsList);};var attachShadowHandler={apply:attachShadowWrapper};window.Element.prototype.attachShadow=new Proxy(window.Element.prototype.attachShadow,attachShadowHandler);}var parsedDelay;if(delay){parsedDelay=parseInt(String(delay),10);var isValidDelay=!Number.isNaN(parsedDelay)||parsedDelay0){var parsedCookieMatches=parseCookieString(cookieMatches.join(COOKIE_STRING_DELIMITER));var parsedCookies=parseCookieString(document.cookie);var cookieKeys=Object.keys(parsedCookies);if(cookieKeys.length===0){return;}var cookiesMatched=Object.keys(parsedCookieMatches).every(function(key){var valueMatch=parsedCookieMatches[key]?toRegExp(parsedCookieMatches[key]):null;var keyMatch=toRegExp(key);return cookieKeys.some(function(cookieKey){var keysMatched=keyMatch.test(cookieKey);if(!keysMatched){return false;}if(!valueMatch){return true;}var parsedCookieValue=parsedCookies[cookieKey];if(!parsedCookieValue){return false;}return valueMatch.test(parsedCookieValue);});});var shouldRun=cookiesMatched!==isInvertedMatchCookie;if(!shouldRun){return;}}if(localStorageMatches.length>0){var localStorageMatched=localStorageMatches.every(function(str){var itemValue=window.localStorage.getItem(str);return itemValue||itemValue==="";});var _shouldRun=localStorageMatched!==isInvertedMatchLocalStorage;if(!_shouldRun){return;}}var textMatchRegexp=textMatches?toRegExp(textMatches):null;var doesElementContainText=function doesElementContainText(element,matchRegexp){var textContent=element.textContent;if(!textContent){return false;}return matchRegexp.test(textContent);};var selectorsSequence=selectors.split(SELECTORS_DELIMITER).map(function(selector){return selector.trim();});var createElementObj=function createElementObj(element){return {element:element||null,clicked:false};};var elementsSequence=Array(selectorsSequence.length).fill(createElementObj(null));var clickElementsBySequence=async function clickElementsBySequence(){for(var i=0;i=1){await sleep(STATIC_CLICK_DELAY_MS);}if(!elementObj.element){break;}if(!elementObj.clicked){if(textMatchRegexp&&!doesElementContainText(elementObj.element,textMatchRegexp)){continue;}elementObj.element.click();elementObj.clicked=true;}}var allElementsClicked=elementsSequence.every(function(elementObj){return elementObj.clicked===true;});if(allElementsClicked){hit(source);}};var handleElement=function handleElement(element,i){var elementObj=createElementObj(element);elementsSequence[i]=elementObj;if(canClick){clickElementsBySequence();}};var findElements=function findElements(mutations,observer){var fulfilledSelectors=[];selectorsSequence.forEach(function(selector,i){if(!selector){return;}var element=queryShadowSelector(selector);if(!element){return;}handleElement(element,i);fulfilledSelectors.push(selector);});selectorsSequence=selectorsSequence.map(function(selector){return selector&&fulfilledSelectors.includes(selector)?null:selector;});var allSelectorsFulfilled=selectorsSequence.every(function(selector){return selector===null;});if(allSelectorsFulfilled){observer.disconnect();}};var observer=new MutationObserver(throttle(findElements,THROTTLE_DELAY_MS));observer.observe(document.documentElement,{attributes:true,childList:true,subtree:true});if(parsedDelay){setTimeout(function(){clickElementsBySequence();canClick=true;},parsedDelay);}setTimeout(function(){return observer.disconnect();},OBSERVER_TIMEOUT_MS);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function parseCookieString(cookieString){var COOKIE_DELIMITER="=";var COOKIE_PAIRS_DELIMITER=";";var cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER);var cookieData={};cookieChunks.forEach(function(singleCookie){var cookieKey;var cookieValue="";var delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);if(delimiterIndex===-1){cookieKey=singleCookie.trim();}else {cookieKey=singleCookie.slice(0,delimiterIndex).trim();cookieValue=singleCookie.slice(delimiterIndex+1);}cookieData[cookieKey]=cookieValue||null;});return cookieData;}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function parseMatchArg(match){var INVERT_MARKER="!";var isInvertedMatch=match?match===null||match===void 0?void 0:match.startsWith(INVERT_MARKER):false;var matchValue=isInvertedMatch?match.slice(1):match;var matchRegexp=toRegExp(matchValue);return {isInvertedMatch:isInvertedMatch,matchRegexp:matchRegexp,matchValue:matchValue};}function queryShadowSelector(selector){var context=arguments.length>1&&arguments[1]!==undefined?arguments[1]:document.documentElement;var SHADOW_COMBINATOR=" >>> ";var pos=selector.indexOf(SHADOW_COMBINATOR);if(pos===-1){return context.querySelector(selector);}var shadowHostSelector=selector.slice(0,pos).trim();var elem=context.querySelector(shadowHostSelector);if(!elem||!elem.shadowRoot){return null;}var shadowRootSelector=selector.slice(pos+SHADOW_COMBINATOR.length).trim();return queryShadowSelector(shadowRootSelector,elem.shadowRoot);}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedClickElement.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedCreateElement(source,args){function trustedCreateElement(source,parentSelector,tagName){var attributePairs=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var textContent=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var cleanupDelayMs=arguments.length>5&&arguments[5]!==undefined?arguments[5]:NaN;if(!parentSelector||!tagName){return;}var IFRAME_WINDOW_NAME="trusted-create-element-window";if(window.name===IFRAME_WINDOW_NAME){return;}var logError=function logError(prefix,error){logMessage(source,"".concat(prefix," due to ").concat(getErrorMessage(error)));};var element;try{element=document.createElement(tagName);element.textContent=textContent;}catch(e){logError("Cannot create element with tag name '".concat(tagName,"'"),e);return;}var attributes=[];try{attributes=parseAttributePairs(attributePairs);}catch(e){logError("Cannot parse attributePairs param: '".concat(attributePairs,"'"),e);return;}attributes.forEach(function(attr){try{element.setAttribute(attr.name,attr.value);}catch(e){logError("Cannot set attribute '".concat(attr.name,"' with value '").concat(attr.value,"'"),e);}});var timerId;var findParentAndAppendEl=function findParentAndAppendEl(parentElSelector,el,removeElDelayMs){var parentEl;try{parentEl=document.querySelector(parentElSelector);}catch(e){logError("Cannot find parent element by selector '".concat(parentElSelector,"'"),e);return false;}if(!parentEl){logMessage(source,"No parent element found by selector: '".concat(parentElSelector,"'"));return false;}try{parentEl.append(el);if(el instanceof HTMLIFrameElement&&el.contentWindow){el.contentWindow.name=IFRAME_WINDOW_NAME;}hit(source);}catch(e){logError("Cannot append child to parent by selector '".concat(parentElSelector,"'"),e);return false;}if(!nativeIsNaN(removeElDelayMs)){timerId=setTimeout(function(){el.remove();clearTimeout(timerId);},removeElDelayMs);}return true;};if(!findParentAndAppendEl(parentSelector,element,cleanupDelayMs)){observeDocumentWithTimeout(function(mutations,observer){if(findParentAndAppendEl(parentSelector,element,cleanupDelayMs)){observer.disconnect();}});}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function observeDocumentWithTimeout(callback){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function parseAttributePairs(input){if(!input){return [];}var NAME_VALUE_SEPARATOR="=";var PAIRS_SEPARATOR=" ";var SINGLE_QUOTE="'";var DOUBLE_QUOTE='"';var BACKSLASH="\\";var pairs=[];for(var i=0;i4&&arguments[4]!==undefined?arguments[4]:"";if(!functionName){return;}var nativeObjects={nativeStringify:window.JSON.stringify};var _getPropertyInChain=getPropertyInChain(window,functionName),base=_getPropertyInChain.base,prop=_getPropertyInChain.prop;if(!base||!prop||typeof base[prop]!=="function"){var message="".concat(functionName," is not a function");logMessage(source,message);return;}var prunePaths=getPrunePath(propsToRemove);var requiredPaths=getPrunePath(requiredInitialProps);var objectWrapper=function objectWrapper(target,thisArg,args){var data=args[0];if(typeof data==="object"){data=jsonPruner(source,data,prunePaths,requiredPaths,stack,nativeObjects);args[0]=data;}return Reflect.apply(target,thisArg,args);};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(base[prop],objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function getWildcardPropertyInChain(base,chain){var lookThrough=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var output=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];var pos=chain.indexOf(".");if(pos===-1){if(chain==="*"||chain==="[]"){for(var key in base){if(Object.prototype.hasOwnProperty.call(base,key)){output.push({base:base,prop:key});}}}else {output.push({base:base,prop:chain});}return output;}var prop=chain.slice(0,pos);var shouldLookThrough=prop==="[]"&&Array.isArray(base)||prop==="*"&&base instanceof Object;if(shouldLookThrough){var nextProp=chain.slice(pos+1);var baseKeys=Object.keys(base);baseKeys.forEach(function(key){var item=base[key];getWildcardPropertyInChain(item,nextProp,lookThrough,output);});}if(Array.isArray(base)){base.forEach(function(key){var nextBase=key;if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}});}var nextBase=base[prop];chain=chain.slice(pos+1);if(nextBase!==undefined){getWildcardPropertyInChain(nextBase,chain,lookThrough,output);}return output;}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isPruningNeeded(source,root,prunePaths,requiredPaths,stack,nativeObjects){if(!root){return false;}var nativeStringify=nativeObjects.nativeStringify;var shouldProcess;if(prunePaths.length===0&&requiredPaths.length>0){var rootString=nativeStringify(root);var matchRegex=toRegExp(requiredPaths.join(""));var shouldLog=matchRegex.test(rootString);if(shouldLog){logMessage(source,"".concat(window.location.hostname,"\n").concat(nativeStringify(root,null,2),"\nStack trace:\n").concat(new Error().stack),true);if(root&&typeof root==="object"){logMessage(source,root,true,false);}shouldProcess=false;return shouldProcess;}}if(stack&&!matchStackTrace(stack,new Error().stack||"")){shouldProcess=false;return shouldProcess;}var wildcardSymbols=[".*.","*.",".*",".[].","[].",".[]"];var _loop=function _loop(){var requiredPath=requiredPaths[i];var lastNestedPropName=requiredPath.split(".").pop();var hasWildcard=wildcardSymbols.some(function(symbol){return requiredPath.includes(symbol);});var details=getWildcardPropertyInChain(root,requiredPath,hasWildcard);if(!details.length){shouldProcess=false;return {v:shouldProcess};}shouldProcess=!hasWildcard;for(var j=0;j1&&arguments[1]!==undefined?arguments[1]:"";var replacement=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";var propsToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}if(pattern===""&&replacement!==""){logMessage(source,"Pattern argument should not be empty string");return;}var shouldLog=pattern===""&&replacement==="";var nativeRequestClone=Request.prototype.clone;var nativeFetch=fetch;var shouldReplace=false;var fetchData;var handlerWrapper=function handlerWrapper(target,thisArg,args){fetchData=getFetchData(args,nativeRequestClone);if(shouldLog){logMessage(source,"fetch( ".concat(objectToString(fetchData)," )"),true);hit(source);return Reflect.apply(target,thisArg,args);}shouldReplace=matchRequestProps(source,propsToMatch,fetchData);if(!shouldReplace){return Reflect.apply(target,thisArg,args);}return nativeFetch.apply(null,args).then(function(response){return response.text().then(function(bodyText){var patternRegexp=pattern==="*"?/(\n|.)*/:toRegExp(pattern);var modifiedTextContent=bodyText.replace(patternRegexp,replacement);var forgedResponse=forgeResponse(response,modifiedTextContent);hit(source);return forgedResponse;}).catch(function(){var fetchDataStr=objectToString(fetchData);var message="Response body can't be converted to text: ".concat(fetchDataStr);logMessage(source,message);return Reflect.apply(target,thisArg,args);});}).catch(function(){return Reflect.apply(target,thisArg,args);});};var fetchHandler={apply:handlerWrapper};fetch=new Proxy(fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getFetchData(args,nativeRequestClone){var fetchPropsObj={};var resource=args[0];var fetchUrl;var fetchInit;if(resource instanceof Request){var realData=nativeRequestClone.call(resource);var requestData=getRequestData(realData);fetchUrl=requestData.url;fetchInit=requestData;}else {fetchUrl=resource;fetchInit=args[1];}fetchPropsObj.url=fetchUrl;if(fetchInit instanceof Object){var props=Object.keys(fetchInit);props.forEach(function(prop){fetchPropsObj[prop]=fetchInit[prop];});}return fetchPropsObj;}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function forgeResponse(response,textContent){var bodyUsed=response.bodyUsed,headers=response.headers,ok=response.ok,redirected=response.redirected,status=response.status,statusText=response.statusText,type=response.type,url=response.url;var forgedResponse=new Response(textContent,{status:status,statusText:statusText,headers:headers});Object.defineProperties(forgedResponse,{url:{value:url},type:{value:type},ok:{value:ok},bodyUsed:{value:bodyUsed},redirected:{value:redirected}});return forgedResponse;}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getRequestData(request){var requestInitOptions=getRequestProps();var entries=requestInitOptions.map(function(key){var value=request[key];return [key,value];});return Object.fromEntries(entries);}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceFetchResponse.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedReplaceNodeText(source,args){function trustedReplaceNodeText(source,nodeName,textMatch,pattern,replacement){var uboAliases=["replace-node-text.js","rpnt.js","sed.js"];if(uboAliases.includes(source.name)){replacement=pattern;pattern=textMatch;for(var _len=arguments.length,extraArgs=new Array(_len>5?_len-5:0),_key=5;_key<_len;_key++){extraArgs[_key-5]=arguments[_key];}for(var i=0;i1&&arguments[1]!==undefined?arguments[1]:{subtree:true,childList:true};var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1e4;var documentObserver=new MutationObserver(function(mutations,observer){observer.disconnect();callback(mutations,observer);observer.observe(document.documentElement,options);});documentObserver.observe(document.documentElement,options);if(typeof timeout==="number"){setTimeout(function(){return documentObserver.disconnect();},timeout);}}function handleExistingNodes(selector,handler){var nodeList=document.querySelectorAll(selector);var nodes=nodeListToArray(nodeList);handler(nodes);}function handleMutations(mutations,handler){var addedNodes=getAddedNodes(mutations);handler(addedNodes);}function replaceNodeText(source,node,pattern,replacement){var textContent=node.textContent;if(textContent){node.textContent=textContent.replace(pattern,replacement);hit(source);}}function isTargetNode(node,nodeNameMatch,textContentMatch){var nodeName=node.nodeName,textContent=node.textContent;var nodeNameLowerCase=nodeName.toLowerCase();return textContent!==null&&textContent!==""&&(nodeNameMatch instanceof RegExp?nodeNameMatch.test(nodeNameLowerCase):nodeNameMatch===nodeNameLowerCase)&&(textContentMatch instanceof RegExp?textContentMatch.test(textContent):textContent.includes(textContentMatch));}function parseNodeTextParams(nodeName,textMatch){var pattern=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;var REGEXP_START_MARKER="/";var isStringNameMatch=!(nodeName.startsWith(REGEXP_START_MARKER)&&nodeName.endsWith(REGEXP_START_MARKER));var selector=isStringNameMatch?nodeName:"*";var nodeNameMatch=isStringNameMatch?nodeName:toRegExp(nodeName);var textContentMatch=!textMatch.startsWith(REGEXP_START_MARKER)?textMatch:toRegExp(textMatch);var patternMatch;if(pattern){patternMatch=!pattern.startsWith(REGEXP_START_MARKER)?pattern:toRegExp(pattern);}return {selector:selector,nodeNameMatch:nodeNameMatch,textContentMatch:textContentMatch,patternMatch:patternMatch};}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function nodeListToArray(nodeList){var nodes=[];for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var replacement=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var decodeMethod=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";var stack=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";var logContent=arguments.length>6&&arguments[6]!==undefined?arguments[6]:"";if(!methodPath){return;}var getPathParts=getPropertyInChain;var _getPathParts=getPathParts(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(typeof chain!=="undefined"){logMessage(source,"Could not reach the end of the prop chain: ".concat(methodPath));return;}var nativeMethod=base[prop];if(!nativeMethod||typeof nativeMethod!=="function"){logMessage(source,"Could not retrieve the method: ".concat(methodPath));return;}var isValidBase64=function isValidBase64(str){try{if(str===""){return false;}var decodedString=atob(str);var encodedString=btoa(decodedString);var stringWithoutPadding=str.replace(/=+$/,"");var encodedStringWithoutPadding=encodedString.replace(/=+$/,"");return encodedStringWithoutPadding===stringWithoutPadding;}catch(e){return false;}};var decodeAndReplaceContent=function decodeAndReplaceContent(content,pattern,textReplacement,decode,log){switch(decode){case"base64":try{if(!isValidBase64(content)){logMessage(source,"Text content is not a valid base64 encoded string: ".concat(content));return content;}var decodedContent=atob(content);if(log){logMessage(source,"Decoded text content: ".concat(decodedContent));}var modifiedContent=textToReplace?decodedContent.replace(pattern,textReplacement):decodedContent;if(log){var message=modifiedContent!==decodedContent?"Modified decoded text content: ".concat(modifiedContent):"Decoded text content was not modified";logMessage(source,message);}var encodedContent=btoa(modifiedContent);return encodedContent;}catch(e){return content;}default:return content.replace(pattern,textReplacement);}};var logOriginalContent=!textToReplace||!!logContent;var logModifiedContent=!!logContent;var logDecodedContent=!!decodeMethod&&!!logContent;var isMatchingSuspended=false;var objectWrapper=function objectWrapper(target,thisArg,argumentsList){if(isMatchingSuspended){return Reflect.apply(target,thisArg,argumentsList);}isMatchingSuspended=true;hit(source);var result=Reflect.apply(target,thisArg,argumentsList);if(stack&&!matchStackTrace(stack,new Error().stack||"")){return result;}if(typeof result==="string"){if(logOriginalContent){logMessage(source,"Original text content: ".concat(result));}var patternRegexp=toRegExp(textToReplace);var modifiedContent=textToReplace||logDecodedContent?decodeAndReplaceContent(result,patternRegexp,replacement,decodeMethod,logContent):result;if(logModifiedContent){var message=modifiedContent!==result?"Modified text content: ".concat(modifiedContent):"Text content was not modified";logMessage(source,message);}isMatchingSuspended=false;return modifiedContent;}isMatchingSuspended=false;logMessage(source,"Content is not a string");return result;};var objectHandler={apply:objectWrapper};base[prop]=new Proxy(nativeMethod,objectHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index1&&arguments[1]!==undefined?arguments[1]:"";var replacement=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";var propsToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof Proxy==="undefined"){return;}if(pattern===""&&replacement!==""){var message="Pattern argument should not be empty string.";logMessage(source,message);return;}var shouldLog=pattern===""&&replacement==="";var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(shouldLog){var _message="xhr( ".concat(objectToString(xhrData)," )");logMessage(source,_message,true);hit(source);return Reflect.apply(target,thisArg,args);}if(matchRequestProps(source,propsToMatch,xhrData)){thisArg.shouldBePrevented=true;thisArg.headersReceived=!!thisArg.headersReceived;}if(thisArg.shouldBePrevented&&!thisArg.headersReceived){thisArg.headersReceived=true;thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){if(!thisArg.shouldBePrevented){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"){return;}var patternRegexp=pattern==="*"?/(\n|.)*/:toRegExp(pattern);var modifiedContent=content.replace(patternRegexp,replacement);Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:modifiedContent,writable:false},responseText:{value:modifiedContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function objectToString(obj){if(!obj||typeof obj!=="object"){return String(obj);}if(isEmptyObject(obj)){return "{}";}return Object.entries(obj).map(function(pair){var key=pair[0];var value=pair[1];var recordValueStr=value;if(value instanceof Object){recordValueStr="{ ".concat(objectToString(value)," }");}return "".concat(key,':"').concat(recordValueStr,'"');}).join(" ");}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedReplaceXhrResponse.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetAttr(source,args){function trustedSetAttr(source,selector,attr){var value=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(!selector||!attr){return;}setAttributeBySelector(source,selector,attr,value);observeDOMChanges(function(){return setAttributeBySelector(source,selector,attr,value);},true);}function setAttributeBySelector(source,selector,attribute,value){var attributeSetter=arguments.length>4&&arguments[4]!==undefined?arguments[4]:defaultAttributeSetter;var elements;try{elements=document.querySelectorAll(selector);}catch(_unused){logMessage(source,'Failed to find elements matching selector "'.concat(selector,'"'));return;}if(!elements||elements.length===0){return;}try{elements.forEach(function(elem){return attributeSetter(elem,attribute,value);});hit(source);}catch(_unused2){logMessage(source,"Failed to set [".concat(attribute,'="').concat(value,'"] to each of selected elements.'));}}function observeDOMChanges(callback){var observeAttrs=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var attrsToObserve=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];var THROTTLE_DELAY_MS=20;var observer=new MutationObserver(throttle(callbackWrapper,THROTTLE_DELAY_MS));var connect=function connect(){if(attrsToObserve.length>0){observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs,attributeFilter:attrsToObserve});}else {observer.observe(document.documentElement,{childList:true,subtree:true,attributes:observeAttrs});}};var disconnect=function disconnect(){observer.disconnect();};function callbackWrapper(){disconnect();callback();connect();}connect();}function defaultAttributeSetter(elem,attribute,value){return elem.setAttribute(attribute,value);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function throttle(cb,delay){var wait=false;var savedArgs;var wrapper=function wrapper(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}if(wait){savedArgs=args;return;}cb(...args);wait=true;setTimeout(function(){wait=false;if(savedArgs){wrapper(...savedArgs);savedArgs=null;}},delay);};return wrapper;}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetAttr.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetConstant(source,args){function trustedSetConstant(source,property,value,stack){if(!property||!matchStackTrace(stack,new Error().stack)){return;}var constantValue;try{constantValue=inferValue(value);}catch(e){logMessage(source,e);return;}var canceled=false;var mustCancel=function mustCancel(value){if(canceled){return canceled;}canceled=value!==undefined&&constantValue!==undefined&&typeof value!==typeof constantValue&&value!==null;return canceled;};var trapProp=function trapProp(base,prop,configurable,handler){if(!handler.init(base[prop])){return false;}var origDescriptor=Object.getOwnPropertyDescriptor(base,prop);var prevSetter;if(origDescriptor instanceof Object){if(!origDescriptor.configurable){var message="Property '".concat(prop,"' is not configurable");logMessage(source,message);return false;}base[prop]=constantValue;if(origDescriptor.set instanceof Function){prevSetter=origDescriptor.set;}}Object.defineProperty(base,prop,{configurable:configurable,get(){return handler.get();},set(a){if(prevSetter!==undefined){prevSetter(a);}handler.set(a);}});return true;};var setChainPropAccess=function setChainPropAccess(owner,property){var chainInfo=getPropertyInChain(owner,property);var base=chainInfo.base;var prop=chainInfo.prop,chain=chainInfo.chain;var inChainPropHandler={factValue:undefined,init(a){this.factValue=a;return true;},get(){return this.factValue;},set(a){if(this.factValue===a){return;}this.factValue=a;if(a instanceof Object){setChainPropAccess(a,chain);}}};var endPropHandler={init(a){if(mustCancel(a)){return false;}return true;},get(){return constantValue;},set(a){if(!mustCancel(a)){return;}constantValue=a;}};if(!chain){var isTrapped=trapProp(base,prop,false,endPropHandler);if(isTrapped){hit(source);}return;}if(base!==undefined&&base[prop]===null){trapProp(base,prop,true,inChainPropHandler);return;}if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){trapProp(base,prop,true,inChainPropHandler);}var propValue=owner[prop];if(propValue instanceof Object||typeof propValue==="object"&&propValue!==null){setChainPropAccess(propValue,chain);}trapProp(base,prop,true,inChainPropHandler);};setChainPropAccess(window,property);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function inferValue(value){if(value==="undefined"){return undefined;}if(value==="false"){return false;}if(value==="true"){return true;}if(value==="null"){return null;}if(value==="NaN"){return NaN;}if(value.startsWith("/")&&value.endsWith("/")){return toRegExp(value);}var MAX_ALLOWED_NUM=32767;var numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM){throw new Error("number values bigger than 32767 are not allowed");}return numVal;}var errorMessage="'".concat(value,"' value type can't be inferred");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||typeof parsableVal==="string"){return parsableVal;}}catch(e){errorMessage+=": ".concat(e);}throw new TypeError(errorMessage);}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function nativeIsNaN(num){var native=Number.isNaN||window.isNaN;return native(num);}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function getNativeRegexpTest(){var descriptor=Object.getOwnPropertyDescriptor(RegExp.prototype,"test");var nativeRegexTest=descriptor===null||descriptor===void 0?void 0:descriptor.value;if(descriptor&&typeof descriptor.value==="function"){return nativeRegexTest;}throw new Error("RegExp.prototype.test is not a function");}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index3&&arguments[3]!==undefined?arguments[3]:"";var path=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"/";var domain=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";if(typeof name==="undefined"){logMessage(source,"Cookie name should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Cookie value should be specified");return;}var parsedValue=parseKeywordValue(value);if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,parsedValue,path,domain,false);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}if(offsetExpiresSec){var parsedOffsetMs=getTrustedCookieOffsetMs(offsetExpiresSec);if(!parsedOffsetMs){logMessage(source,"Invalid offsetExpiresSec value: ".concat(offsetExpiresSec));return;}var expires=Date.now()+parsedOffsetMs;cookieToSet+="; expires=".concat(new Date(expires).toUTCString());}document.cookie=cookieToSet;hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getTrustedCookieOffsetMs(offsetExpiresSec){var ONE_YEAR_EXPIRATION_KEYWORD="1year";var ONE_DAY_EXPIRATION_KEYWORD="1day";var MS_IN_SEC=1e3;var SECONDS_IN_YEAR=365*24*60*60;var SECONDS_IN_DAY=24*60*60;var parsedSec;if(offsetExpiresSec===ONE_YEAR_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_YEAR;}else if(offsetExpiresSec===ONE_DAY_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_DAY;}else {parsedSec=Number.parseInt(offsetExpiresSec,10);if(Number.isNaN(parsedSec)){return null;}}return parsedSec*MS_IN_SEC;}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetCookie.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetCookieReload(source,args){function trustedSetCookieReload(source,name,value){var offsetExpiresSec=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var path=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"/";var domain=arguments.length>5&&arguments[5]!==undefined?arguments[5]:"";if(typeof name==="undefined"){logMessage(source,"Cookie name should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Cookie value should be specified");return;}if(isCookieSetWithValue(document.cookie,name,value)){return;}var parsedValue=parseKeywordValue(value);if(!isValidCookiePath(path)){logMessage(source,"Invalid cookie path: '".concat(path,"'"));return;}if(!document.location.origin.includes(domain)){logMessage(source,"Cookie domain not matched by origin: '".concat(domain,"'"));return;}var cookieToSet=serializeCookie(name,parsedValue,path,domain,false);if(!cookieToSet){logMessage(source,"Invalid cookie name or value");return;}if(offsetExpiresSec){var parsedOffsetMs=getTrustedCookieOffsetMs(offsetExpiresSec);if(!parsedOffsetMs){logMessage(source,"Invalid offsetExpiresSec value: ".concat(offsetExpiresSec));return;}var expires=Date.now()+parsedOffsetMs;cookieToSet+="; expires=".concat(new Date(expires).toUTCString());}document.cookie=cookieToSet;hit(source);var cookieValueToCheck=parseCookieString(document.cookie)[name];if(isCookieSetWithValue(document.cookie,name,cookieValueToCheck)){window.location.reload();}}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function isCookieSetWithValue(cookieString,name,value){return cookieString.split(";").some(function(cookieStr){var pos=cookieStr.indexOf("=");if(pos===-1){return false;}var cookieName=cookieStr.slice(0,pos).trim();var cookieValue=cookieStr.slice(pos+1).trim();return name===cookieName&&value===cookieValue;});}function serializeCookie(name,rawValue,rawPath){var domainValue=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";var shouldEncodeValue=arguments.length>4&&arguments[4]!==undefined?arguments[4]:true;var COOKIE_BREAKER=";";if(!shouldEncodeValue&&"".concat(rawValue).includes(COOKIE_BREAKER)||name.includes(COOKIE_BREAKER)){return null;}var value=shouldEncodeValue?encodeURIComponent(rawValue):rawValue;var resultCookie="".concat(name,"=").concat(value);var path=getCookiePath(rawPath);if(path){resultCookie+="; ".concat(path);}if(domainValue){resultCookie+="; domain=".concat(domainValue);}return resultCookie;}function isValidCookiePath(rawPath){return rawPath==="/"||rawPath==="none";}function getTrustedCookieOffsetMs(offsetExpiresSec){var ONE_YEAR_EXPIRATION_KEYWORD="1year";var ONE_DAY_EXPIRATION_KEYWORD="1day";var MS_IN_SEC=1e3;var SECONDS_IN_YEAR=365*24*60*60;var SECONDS_IN_DAY=24*60*60;var parsedSec;if(offsetExpiresSec===ONE_YEAR_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_YEAR;}else if(offsetExpiresSec===ONE_DAY_EXPIRATION_KEYWORD){parsedSec=SECONDS_IN_DAY;}else {parsedSec=Number.parseInt(offsetExpiresSec,10);if(Number.isNaN(parsedSec)){return null;}}return parsedSec*MS_IN_SEC;}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}function parseCookieString(cookieString){var COOKIE_DELIMITER="=";var COOKIE_PAIRS_DELIMITER=";";var cookieChunks=cookieString.split(COOKIE_PAIRS_DELIMITER);var cookieData={};cookieChunks.forEach(function(singleCookie){var cookieKey;var cookieValue="";var delimiterIndex=singleCookie.indexOf(COOKIE_DELIMITER);if(delimiterIndex===-1){cookieKey=singleCookie.trim();}else {cookieKey=singleCookie.slice(0,delimiterIndex).trim();cookieValue=singleCookie.slice(delimiterIndex+1);}cookieData[cookieKey]=cookieValue||null;});return cookieData;}function getCookiePath(rawPath){if(rawPath==="/"){return "path=/";}return "";}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetCookieReload.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSetLocalStorageItem(source,args){function trustedSetLocalStorageItem(source,key,value){if(typeof key==="undefined"){logMessage(source,"Item key should be specified");return;}if(typeof value==="undefined"){logMessage(source,"Item value should be specified");return;}var parsedValue=parseKeywordValue(value);var _window=window,localStorage=_window.localStorage;setStorageItem(source,localStorage,key,parsedValue);hit(source);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function setStorageItem(source,storage,key,value){try{storage.setItem(key,value);}catch(e){var message="Unable to set sessionStorage item due to: ".concat(e.message);logMessage(source,message);}}function parseKeywordValue(rawValue){var NOW_VALUE_KEYWORD="$now$";var CURRENT_DATE_KEYWORD="$currentDate$";var parsedValue=rawValue;if(rawValue===NOW_VALUE_KEYWORD){parsedValue=Date.now().toString();}else if(rawValue===CURRENT_DATE_KEYWORD){parsedValue=Date();}return parsedValue;}var updatedArgs=args?[].concat(source).concat(args):[source];try{trustedSetLocalStorageItem.apply(this,updatedArgs);}catch(e){console.log(e);}}function trustedSuppressNativeMethod(source,args){function trustedSuppressNativeMethod(source,methodPath,signatureStr){var how=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"abort";var stack=arguments.length>4&&arguments[4]!==undefined?arguments[4]:"";if(!methodPath||!signatureStr){return;}var IGNORE_ARG_SYMBOL=" ";var suppress=how==="abort"?getAbortFunc():function(){};var signatureMatcher;try{signatureMatcher=signatureStr.split("|").map(function(value){return value===IGNORE_ARG_SYMBOL?value:inferValue(value);});}catch(e){logMessage(source,"Could not parse the signature matcher: ".concat(getErrorMessage(e)));return;}var getPathParts=getPropertyInChain;var _getPathParts=getPathParts(window,methodPath),base=_getPathParts.base,chain=_getPathParts.chain,prop=_getPathParts.prop;if(typeof chain!=="undefined"){logMessage(source,"Could not reach the end of the prop chain: ".concat(methodPath));return;}var nativeMethod=base[prop];if(!nativeMethod||typeof nativeMethod!=="function"){logMessage(source,"Could not retrieve the method: ".concat(methodPath));return;}function matchMethodCall(nativeArguments,matchArguments){return matchArguments.every(function(matcher,i){if(matcher===IGNORE_ARG_SYMBOL){return true;}var argument=nativeArguments[i];return isValueMatched(argument,matcher);});}var isMatchingSuspended=false;function apply(target,thisArg,argumentsList){if(isMatchingSuspended){return Reflect.apply(target,thisArg,argumentsList);}isMatchingSuspended=true;if(stack&&!matchStackTrace(stack,new Error().stack||"")){return Reflect.apply(target,thisArg,argumentsList);}var isMatching=matchMethodCall(argumentsList,signatureMatcher);isMatchingSuspended=false;if(isMatching){hit(source);return suppress();}return Reflect.apply(target,thisArg,argumentsList);}base[prop]=new Proxy(nativeMethod,{apply:apply});}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function getPropertyInChain(base,chain){var pos=chain.indexOf(".");if(pos===-1){return {base:base,prop:chain};}var prop=chain.slice(0,pos);if(base===null){return {base:base,prop:prop,chain:chain};}var nextBase=base[prop];chain=chain.slice(pos+1);if((base instanceof Object||typeof base==="object")&&isEmptyObject(base)){return {base:base,prop:prop,chain:chain};}if(nextBase===null){return {base:base,prop:prop,chain:chain};}if(nextBase!==undefined){return getPropertyInChain(nextBase,chain);}Object.defineProperty(base,prop,{configurable:true});return {base:base,prop:prop,chain:chain};}function inferValue(value){if(value==="undefined"){return undefined;}if(value==="false"){return false;}if(value==="true"){return true;}if(value==="null"){return null;}if(value==="NaN"){return NaN;}if(value.startsWith("/")&&value.endsWith("/")){return toRegExp(value);}var MAX_ALLOWED_NUM=32767;var numVal=Number(value);if(!nativeIsNaN(numVal)){if(Math.abs(numVal)>MAX_ALLOWED_NUM){throw new Error("number values bigger than 32767 are not allowed");}return numVal;}var errorMessage="'".concat(value,"' value type can't be inferred");try{var parsableVal=JSON.parse(value);if(parsableVal instanceof Object||typeof parsableVal==="string"){return parsableVal;}}catch(e){errorMessage+=": ".concat(e);}throw new TypeError(errorMessage);}function isValueMatched(value,matcher){if(typeof value==="function"){return false;}if(nativeIsNaN(value)){return nativeIsNaN(matcher);}if(value===null||typeof value==="undefined"||typeof value==="number"||typeof value==="boolean"){return value===matcher;}if(typeof value==="string"){if(typeof matcher==="string"||matcher instanceof RegExp){return isStringMatched(value,matcher);}return false;}if(Array.isArray(value)&&Array.isArray(matcher)){return isArrayMatched(value,matcher);}if(isArbitraryObject(value)&&isArbitraryObject(matcher)){return isObjectMatched(value,matcher);}return false;}function getAbortFunc(){var rid=randomId();var isErrorHandlerSet=false;return function abort(){if(!isErrorHandlerSet){window.onerror=createOnErrorHandler(rid);isErrorHandlerSet=true;}throw new ReferenceError(rid);};}function matchStackTrace(stackMatch,stackTrace){if(!stackMatch||stackMatch===""){return true;}if(shouldAbortInlineOrInjectedScript(stackMatch,stackTrace)){return true;}var stackRegexp=toRegExp(stackMatch);var refinedStackTrace=stackTrace.split("\n").slice(2).map(function(line){return line.trim();}).join("\n");return getNativeRegexpTest().call(stackRegexp,refinedStackTrace);}function getErrorMessage(error){var isErrorWithMessage=function isErrorWithMessage(e){return typeof e==="object"&&e!==null&&"message"in e&&typeof e.message==="string";};if(isErrorWithMessage(error)){return error.message;}try{return new Error(JSON.stringify(error)).message;}catch(_unused){return new Error(String(error)).message;}}function shouldAbortInlineOrInjectedScript(stackMatch,stackTrace){var INLINE_SCRIPT_STRING="inlineScript";var INJECTED_SCRIPT_STRING="injectedScript";var INJECTED_SCRIPT_MARKER="";var isInlineScript=function isInlineScript(match){return match.includes(INLINE_SCRIPT_STRING);};var isInjectedScript=function isInjectedScript(match){return match.includes(INJECTED_SCRIPT_STRING);};if(!(isInlineScript(stackMatch)||isInjectedScript(stackMatch))){return false;}var documentURL=window.location.href;var pos=documentURL.indexOf("#");if(pos!==-1){documentURL=documentURL.slice(0,pos);}var stackSteps=stackTrace.split("\n").slice(2).map(function(line){return line.trim();});var stackLines=stackSteps.map(function(line){var stack;var getStackTraceURL=/(.*?@)?(\S+)(:\d+):\d+\)?$/.exec(line);if(getStackTraceURL){var _stackURL,_stackURL2;var stackURL=getStackTraceURL[2];if((_stackURL=stackURL)!==null&&_stackURL!==void 0&&_stackURL.startsWith("(")){stackURL=stackURL.slice(1);}if((_stackURL2=stackURL)!==null&&_stackURL2!==void 0&&_stackURL2.startsWith(INJECTED_SCRIPT_MARKER)){var _stackFunction;stackURL=INJECTED_SCRIPT_STRING;var stackFunction=getStackTraceURL[1]!==undefined?getStackTraceURL[1].slice(0,-1):line.slice(0,getStackTraceURL.index).trim();if((_stackFunction=stackFunction)!==null&&_stackFunction!==void 0&&_stackFunction.startsWith("at")){stackFunction=stackFunction.slice(2).trim();}stack="".concat(stackFunction," ").concat(stackURL).trim();}else {stack=stackURL;}}else {stack=line;}return stack;});if(stackLines){for(var index=0;index1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}return nativeOnError.apply(window,[error,...args]);}return false;};}function isEmptyObject(obj){return Object.keys(obj).length===0&&!obj.prototype;}function isArbitraryObject(value){return value!==null&&typeof value==="object"&&!Array.isArray(value)&&!(value instanceof RegExp);}function isStringMatched(str,matcher){if(typeof matcher==="string"){if(matcher===""){return str===matcher;}return str.includes(matcher);}if(matcher instanceof RegExp){return matcher.test(str);}return false;}function isArrayMatched(array,matcher){if(array.length===0){return matcher.length===0;}if(matcher.length===0){return false;}var _loop=function _loop(){var matcherValue=matcher[i];var isMatching=array.some(function(arrItem){return isValueMatched(arrItem,matcherValue);});if(!isMatching){return {v:false};}return "continue";};for(var i=0;i2&&arguments[2]!==undefined?arguments[2]:"";var urlToMatch=arguments.length>3&&arguments[3]!==undefined?arguments[3]:"";if(typeof Reflect==="undefined"||typeof fetch==="undefined"||typeof Proxy==="undefined"||typeof Response==="undefined"){return;}var shouldPruneResponse=false;var urlMatchRegexp=toRegExp(urlToMatch);var XPATH_MARKER="xpath(";var isXpath=propsToRemove&&propsToRemove.startsWith(XPATH_MARKER);var getXPathElements=function getXPathElements(contextNode){var matchedElements=[];try{var elementsToRemove=propsToRemove.slice(XPATH_MARKER.length,-1);var xpathResult=contextNode.evaluate(elementsToRemove,contextNode,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0;i")){return true;}}return false;};var createXMLDocument=function createXMLDocument(text){var xmlParser=new DOMParser();var xmlDocument=xmlParser.parseFromString(text,"text/xml");return xmlDocument;};var isPruningNeeded=function isPruningNeeded(response,propsToRemove){if(!isXML(response)){return false;}var docXML=createXMLDocument(response);return isXpath?getXPathElements(docXML):!!docXML.querySelector(propsToRemove);};var pruneXML=function pruneXML(text){if(!isXML(text)){shouldPruneResponse=false;return text;}var xmlDoc=createXMLDocument(text);var errorNode=xmlDoc.querySelector("parsererror");if(errorNode){return text;}if(optionalProp!==""&&xmlDoc.querySelector(optionalProp)===null){shouldPruneResponse=false;return text;}var elements=isXpath?getXPathElements(xmlDoc):xmlDoc.querySelectorAll(propsToRemove);if(!elements.length){shouldPruneResponse=false;return text;}if(isXpath){xPathPruning(elements);}else {elements.forEach(function(elem){elem.remove();});}var serializer=new XMLSerializer();text=serializer.serializeToString(xmlDoc);return text;};var nativeOpen=window.XMLHttpRequest.prototype.open;var nativeSend=window.XMLHttpRequest.prototype.send;var xhrData;var openWrapper=function openWrapper(target,thisArg,args){xhrData=getXhrData.apply(null,args);if(matchRequestProps(source,urlToMatch,xhrData)){thisArg.shouldBePruned=true;}if(thisArg.shouldBePruned){thisArg.collectedHeaders=[];var setRequestHeaderWrapper=function setRequestHeaderWrapper(target,thisArg,args){thisArg.collectedHeaders.push(args);return Reflect.apply(target,thisArg,args);};var setRequestHeaderHandler={apply:setRequestHeaderWrapper};thisArg.setRequestHeader=new Proxy(thisArg.setRequestHeader,setRequestHeaderHandler);}return Reflect.apply(target,thisArg,args);};var sendWrapper=function sendWrapper(target,thisArg,args){var allowedResponseTypeValues=["","text"];if(!thisArg.shouldBePruned||!allowedResponseTypeValues.includes(thisArg.responseType)){return Reflect.apply(target,thisArg,args);}var forgedRequest=new XMLHttpRequest();forgedRequest.addEventListener("readystatechange",function(){if(forgedRequest.readyState!==4){return;}var readyState=forgedRequest.readyState,response=forgedRequest.response,responseText=forgedRequest.responseText,responseURL=forgedRequest.responseURL,responseXML=forgedRequest.responseXML,status=forgedRequest.status,statusText=forgedRequest.statusText;var content=responseText||response;if(typeof content!=="string"){return;}if(!propsToRemove){if(isXML(response)){var message="XMLHttpRequest.open() URL: ".concat(responseURL,"\nresponse: ").concat(response);logMessage(source,message);logMessage(source,createXMLDocument(response),true,false);}}else {shouldPruneResponse=isPruningNeeded(response,propsToRemove);}var responseContent=shouldPruneResponse?pruneXML(response):response;Object.defineProperties(thisArg,{readyState:{value:readyState,writable:false},responseURL:{value:responseURL,writable:false},responseXML:{value:responseXML,writable:false},status:{value:status,writable:false},statusText:{value:statusText,writable:false},response:{value:responseContent,writable:false},responseText:{value:responseContent,writable:false}});setTimeout(function(){var stateEvent=new Event("readystatechange");thisArg.dispatchEvent(stateEvent);var loadEvent=new Event("load");thisArg.dispatchEvent(loadEvent);var loadEndEvent=new Event("loadend");thisArg.dispatchEvent(loadEndEvent);},1);hit(source);});nativeOpen.apply(forgedRequest,[xhrData.method,xhrData.url]);thisArg.collectedHeaders.forEach(function(header){var name=header[0];var value=header[1];forgedRequest.setRequestHeader(name,value);});thisArg.collectedHeaders=[];try{nativeSend.call(forgedRequest,args);}catch(_unused){return Reflect.apply(target,thisArg,args);}return undefined;};var openHandler={apply:openWrapper};var sendHandler={apply:sendWrapper};XMLHttpRequest.prototype.open=new Proxy(XMLHttpRequest.prototype.open,openHandler);XMLHttpRequest.prototype.send=new Proxy(XMLHttpRequest.prototype.send,sendHandler);var nativeFetch=window.fetch;var fetchWrapper=async function fetchWrapper(target,thisArg,args){var fetchURL=args[0]instanceof Request?args[0].url:args[0];if(typeof fetchURL!=="string"||fetchURL.length===0){return Reflect.apply(target,thisArg,args);}if(urlMatchRegexp.test(fetchURL)){var response=await nativeFetch(...args);var clonedResponse=response.clone();var responseText=await response.text();shouldPruneResponse=isPruningNeeded(responseText,propsToRemove);if(!shouldPruneResponse){var message="fetch URL: ".concat(fetchURL,"\nresponse text: ").concat(responseText);logMessage(source,message);logMessage(source,createXMLDocument(responseText),true,false);return clonedResponse;}var prunedText=pruneXML(responseText);if(shouldPruneResponse){hit(source);return new Response(prunedText,{status:response.status,statusText:response.statusText,headers:response.headers});}return clonedResponse;}return Reflect.apply(target,thisArg,args);};var fetchHandler={apply:fetchWrapper};window.fetch=new Proxy(window.fetch,fetchHandler);}function hit(source){if(source.verbose!==true){return;}try{var log=console.log.bind(console);var trace=console.trace.bind(console);var prefix="";if(source.domainName){prefix+="".concat(source.domainName);}prefix+="#%#//scriptlet('".concat(source.name,"', '").concat(source.args.join(", "),"')");log("".concat(prefix," trace start"));if(trace){trace();}log("".concat(prefix," trace end"));}catch(e){}if(typeof window.__debug==="function"){window.__debug(source);}}function logMessage(source,message){var forced=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var convertMessageToString=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var name=source.name,verbose=source.verbose;if(!forced&&!verbose){return;}var nativeConsole=console.log;if(!convertMessageToString){nativeConsole("".concat(name,":"),message);return;}nativeConsole("".concat(name,": ").concat(message));}function toRegExp(rawInput){var input=rawInput||"";var DEFAULT_VALUE=".?";var FORWARD_SLASH="/";if(input===""){return new RegExp(DEFAULT_VALUE);}var delimiterIndex=input.lastIndexOf(FORWARD_SLASH);var flagsPart=input.substring(delimiterIndex+1);var regExpPart=input.substring(0,delimiterIndex+1);var isValidRegExpFlag=function isValidRegExpFlag(flag){if(!flag){return false;}try{new RegExp("",flag);return true;}catch(ex){return false;}};var getRegExpFlags=function getRegExpFlags(regExpStr,flagsStr){if(regExpStr.startsWith(FORWARD_SLASH)&®ExpStr.endsWith(FORWARD_SLASH)&&!regExpStr.endsWith("\\/")&&isValidRegExpFlag(flagsStr)){return flagsStr;}return "";};var flags=getRegExpFlags(regExpPart,flagsPart);if(input.startsWith(FORWARD_SLASH)&&input.endsWith(FORWARD_SLASH)||flags){var regExpInput=flags?regExpPart:input;return new RegExp(regExpInput.slice(1,-1),flags);}var escaped=input.replace(/\\'/g,"'").replace(/\\"/g,'"').replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(escaped);}function getXhrData(method,url,async,user,password){return {method:method,url:url,async:async,user:user,password:password};}function matchRequestProps(source,propsToMatch,requestData){if(propsToMatch===""||propsToMatch==="*"){return true;}var isMatched;var parsedData=parseMatchProps(propsToMatch);if(!isValidParsedData(parsedData)){logMessage(source,"Invalid parameter: ".concat(propsToMatch));isMatched=false;}else {var matchData=getMatchPropsData(parsedData);var matchKeys=Object.keys(matchData);isMatched=matchKeys.every(function(matchKey){var matchValue=matchData[matchKey];var dataValue=requestData[matchKey];return Object.prototype.hasOwnProperty.call(requestData,matchKey)&&typeof dataValue==="string"&&(matchValue===null||matchValue===void 0?void 0:matchValue.test(dataValue));});}return isMatched;}function getMatchPropsData(data){var matchData={};var dataKeys=Object.keys(data);dataKeys.forEach(function(key){matchData[key]=toRegExp(data[key]);});return matchData;}function getRequestProps(){return ["url","method","headers","body","credentials","cache","redirect","referrer","referrerPolicy","integrity","keepalive","signal","mode"];}function isValidParsedData(data){return Object.values(data).every(function(value){return isValidStrPattern(value);});}function parseMatchProps(propsToMatchStr){var PROPS_DIVIDER=" ";var PAIRS_MARKER=":";var isRequestProp=function isRequestProp(prop){return getRequestProps().includes(prop);};var propsObj={};var props=propsToMatchStr.split(PROPS_DIVIDER);props.forEach(function(prop){var dividerInd=prop.indexOf(PAIRS_MARKER);var key=prop.slice(0,dividerInd);if(isRequestProp(key)){var value=prop.slice(dividerInd+1);propsObj[key]=value;}else {propsObj.url=prop;}});return propsObj;}function isValidStrPattern(input){var FORWARD_SLASH="/";var str=escapeRegExp(input);if(input[0]===FORWARD_SLASH&&input[input.length-1]===FORWARD_SLASH){str=input.slice(1,-1);}var isValid;try{isValid=new RegExp(str);isValid=true;}catch(e){isValid=false;}return isValid;}function escapeRegExp(str){return str.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}var updatedArgs=args?[].concat(source).concat(args):[source];try{xmlPrune.apply(this,updatedArgs);}catch(e){console.log(e);}}var scriptletsMap={"amazon-apstag":AmazonApstag,"ubo-amazon_apstag.js":AmazonApstag,"amazon_apstag.js":AmazonApstag,"didomi-loader":DidomiLoader,fingerprintjs2:Fingerprintjs2,"ubo-fingerprint2.js":Fingerprintjs2,"fingerprint2.js":Fingerprintjs2,fingerprintjs3:Fingerprintjs3,"ubo-fingerprint3.js":Fingerprintjs3,"fingerprint3.js":Fingerprintjs3,gemius:Gemius,"google-analytics":GoogleAnalytics,"ubo-google-analytics_analytics.js":GoogleAnalytics,"google-analytics_analytics.js":GoogleAnalytics,"googletagmanager-gtm":GoogleAnalytics,"ubo-googletagmanager_gtm.js":GoogleAnalytics,"googletagmanager_gtm.js":GoogleAnalytics,"google-analytics-ga":GoogleAnalyticsGa,"ubo-google-analytics_ga.js":GoogleAnalyticsGa,"google-analytics_ga.js":GoogleAnalyticsGa,"google-ima3":GoogleIma3,"ubo-google-ima.js":GoogleIma3,"google-ima.js":GoogleIma3,"googlesyndication-adsbygoogle":GoogleSyndicationAdsByGoogle,"ubo-googlesyndication_adsbygoogle.js":GoogleSyndicationAdsByGoogle,"googlesyndication_adsbygoogle.js":GoogleSyndicationAdsByGoogle,"googletagservices-gpt":GoogleTagServicesGpt,"ubo-googletagservices_gpt.js":GoogleTagServicesGpt,"googletagservices_gpt.js":GoogleTagServicesGpt,matomo:Matomo,"naver-wcslog":NaverWcslog,"pardot-1.0":Pardot,prebid:Prebid,"scorecardresearch-beacon":ScoreCardResearchBeacon,"ubo-scorecardresearch_beacon.js":ScoreCardResearchBeacon,"scorecardresearch_beacon.js":ScoreCardResearchBeacon,"abort-current-inline-script":abortCurrentInlineScript,"abort-current-script.js":abortCurrentInlineScript,"ubo-abort-current-script.js":abortCurrentInlineScript,"acs.js":abortCurrentInlineScript,"ubo-acs.js":abortCurrentInlineScript,"ubo-abort-current-script":abortCurrentInlineScript,"ubo-acs":abortCurrentInlineScript,"abort-current-inline-script.js":abortCurrentInlineScript,"ubo-abort-current-inline-script.js":abortCurrentInlineScript,"acis.js":abortCurrentInlineScript,"ubo-acis.js":abortCurrentInlineScript,"ubo-abort-current-inline-script":abortCurrentInlineScript,"ubo-acis":abortCurrentInlineScript,"abp-abort-current-inline-script":abortCurrentInlineScript,"abort-on-property-read":abortOnPropertyRead,"abort-on-property-read.js":abortOnPropertyRead,"ubo-abort-on-property-read.js":abortOnPropertyRead,"aopr.js":abortOnPropertyRead,"ubo-aopr.js":abortOnPropertyRead,"ubo-abort-on-property-read":abortOnPropertyRead,"ubo-aopr":abortOnPropertyRead,"abp-abort-on-property-read":abortOnPropertyRead,"abort-on-property-write":abortOnPropertyWrite,"abort-on-property-write.js":abortOnPropertyWrite,"ubo-abort-on-property-write.js":abortOnPropertyWrite,"aopw.js":abortOnPropertyWrite,"ubo-aopw.js":abortOnPropertyWrite,"ubo-abort-on-property-write":abortOnPropertyWrite,"ubo-aopw":abortOnPropertyWrite,"abp-abort-on-property-write":abortOnPropertyWrite,"abort-on-stack-trace":abortOnStackTrace,"abort-on-stack-trace.js":abortOnStackTrace,"ubo-abort-on-stack-trace.js":abortOnStackTrace,"aost.js":abortOnStackTrace,"ubo-aost.js":abortOnStackTrace,"ubo-abort-on-stack-trace":abortOnStackTrace,"ubo-aost":abortOnStackTrace,"abp-abort-on-stack-trace":abortOnStackTrace,"adjust-setInterval":adjustSetInterval,"nano-setInterval-booster.js":adjustSetInterval,"ubo-nano-setInterval-booster.js":adjustSetInterval,"nano-sib.js":adjustSetInterval,"ubo-nano-sib.js":adjustSetInterval,"adjust-setInterval.js":adjustSetInterval,"ubo-adjust-setInterval.js":adjustSetInterval,"ubo-nano-setInterval-booster":adjustSetInterval,"ubo-nano-sib":adjustSetInterval,"ubo-adjust-setInterval":adjustSetInterval,"adjust-setTimeout":adjustSetTimeout,"adjust-setTimeout.js":adjustSetTimeout,"ubo-adjust-setTimeout.js":adjustSetTimeout,"nano-setTimeout-booster.js":adjustSetTimeout,"ubo-nano-setTimeout-booster.js":adjustSetTimeout,"nano-stb.js":adjustSetTimeout,"ubo-nano-stb.js":adjustSetTimeout,"ubo-adjust-setTimeout":adjustSetTimeout,"ubo-nano-setTimeout-booster":adjustSetTimeout,"ubo-nano-stb":adjustSetTimeout,"call-nothrow":callNoThrow,"call-nothrow.js":callNoThrow,"ubo-call-nothrow.js":callNoThrow,"ubo-call-nothrow":callNoThrow,"debug-current-inline-script":debugCurrentInlineScript,"debug-on-property-read":debugOnPropertyRead,"debug-on-property-write":debugOnPropertyWrite,"dir-string":dirString,"disable-newtab-links":disableNewtabLinks,"disable-newtab-links.js":disableNewtabLinks,"ubo-disable-newtab-links.js":disableNewtabLinks,"ubo-disable-newtab-links":disableNewtabLinks,"evaldata-prune":evalDataPrune,"evaldata-prune.js":evalDataPrune,"ubo-evaldata-prune.js":evalDataPrune,"ubo-evaldata-prune":evalDataPrune,"close-window":forceWindowClose,"window-close-if.js":forceWindowClose,"ubo-window-close-if.js":forceWindowClose,"ubo-window-close-if":forceWindowClose,"close-window.js":forceWindowClose,"ubo-close-window.js":forceWindowClose,"ubo-close-window":forceWindowClose,"hide-in-shadow-dom":hideInShadowDom,"href-sanitizer":hrefSanitizer,"href-sanitizer.js":hrefSanitizer,"ubo-href-sanitizer.js":hrefSanitizer,"ubo-href-sanitizer":hrefSanitizer,"inject-css-in-shadow-dom":injectCssInShadowDom,"json-prune":jsonPrune,"json-prune.js":jsonPrune,"ubo-json-prune.js":jsonPrune,"ubo-json-prune":jsonPrune,"abp-json-prune":jsonPrune,"json-prune-fetch-response":jsonPruneFetchResponse,"json-prune-fetch-response.js":jsonPruneFetchResponse,"ubo-json-prune-fetch-response.js":jsonPruneFetchResponse,"ubo-json-prune-fetch-response":jsonPruneFetchResponse,"json-prune-xhr-response":jsonPruneXhrResponse,"json-prune-xhr-response.js":jsonPruneXhrResponse,"ubo-json-prune-xhr-response.js":jsonPruneXhrResponse,"ubo-json-prune-xhr-response":jsonPruneXhrResponse,log:log,"abp-log":log,"log-addEventListener":logAddEventListener,"addEventListener-logger.js":logAddEventListener,"ubo-addEventListener-logger.js":logAddEventListener,"aell.js":logAddEventListener,"ubo-aell.js":logAddEventListener,"ubo-addEventListener-logger":logAddEventListener,"ubo-aell":logAddEventListener,"log-eval":logEval,"log-on-stack-trace":logOnStacktrace,"m3u-prune":m3uPrune,"m3u-prune.js":m3uPrune,"ubo-m3u-prune.js":m3uPrune,"ubo-m3u-prune":m3uPrune,"metrika-yandex-tag":metrikaYandexTag,"metrika-yandex-watch":metrikaYandexWatch,"no-protected-audience":noProtectedAudience,"no-topics":noTopics,noeval:noeval,"noeval.js":noeval,"silent-noeval.js":noeval,"ubo-noeval.js":noeval,"ubo-silent-noeval.js":noeval,"ubo-noeval":noeval,"ubo-silent-noeval":noeval,nowebrtc:nowebrtc,"nowebrtc.js":nowebrtc,"ubo-nowebrtc.js":nowebrtc,"ubo-nowebrtc":nowebrtc,"prevent-addEventListener":preventAddEventListener,"addEventListener-defuser.js":preventAddEventListener,"ubo-addEventListener-defuser.js":preventAddEventListener,"aeld.js":preventAddEventListener,"ubo-aeld.js":preventAddEventListener,"ubo-addEventListener-defuser":preventAddEventListener,"ubo-aeld":preventAddEventListener,"abp-prevent-listener":preventAddEventListener,"prevent-adfly":preventAdfly,"adfly-defuser.js":preventAdfly,"ubo-adfly-defuser.js":preventAdfly,"ubo-adfly-defuser":preventAdfly,"prevent-bab":preventBab,"prevent-element-src-loading":preventElementSrcLoading,"prevent-eval-if":preventEvalIf,"noeval-if.js":preventEvalIf,"ubo-noeval-if.js":preventEvalIf,"ubo-noeval-if":preventEvalIf,"prevent-fab-3.2.0":preventFab,"nofab.js":preventFab,"ubo-nofab.js":preventFab,"fuckadblock.js-3.2.0":preventFab,"ubo-fuckadblock.js-3.2.0":preventFab,"ubo-nofab":preventFab,"prevent-fetch":preventFetch,"no-fetch-if.js":preventFetch,"ubo-no-fetch-if.js":preventFetch,"ubo-no-fetch-if":preventFetch,"prevent-popads-net":preventPopadsNet,"popads.net.js":preventPopadsNet,"ubo-popads.net.js":preventPopadsNet,"ubo-popads.net":preventPopadsNet,"prevent-refresh":preventRefresh,"prevent-refresh.js":preventRefresh,"refresh-defuser.js":preventRefresh,"refresh-defuser":preventRefresh,"ubo-prevent-refresh.js":preventRefresh,"ubo-prevent-refresh":preventRefresh,"ubo-refresh-defuser.js":preventRefresh,"ubo-refresh-defuser":preventRefresh,"prevent-requestAnimationFrame":preventRequestAnimationFrame,"no-requestAnimationFrame-if.js":preventRequestAnimationFrame,"ubo-no-requestAnimationFrame-if.js":preventRequestAnimationFrame,"norafif.js":preventRequestAnimationFrame,"ubo-norafif.js":preventRequestAnimationFrame,"ubo-no-requestAnimationFrame-if":preventRequestAnimationFrame,"ubo-norafif":preventRequestAnimationFrame,"prevent-setInterval":preventSetInterval,"no-setInterval-if.js":preventSetInterval,"ubo-no-setInterval-if.js":preventSetInterval,"setInterval-defuser.js":preventSetInterval,"ubo-setInterval-defuser.js":preventSetInterval,"nosiif.js":preventSetInterval,"ubo-nosiif.js":preventSetInterval,"sid.js":preventSetInterval,"ubo-sid.js":preventSetInterval,"ubo-no-setInterval-if":preventSetInterval,"ubo-setInterval-defuser":preventSetInterval,"ubo-nosiif":preventSetInterval,"ubo-sid":preventSetInterval,"prevent-setTimeout":preventSetTimeout,"no-setTimeout-if.js":preventSetTimeout,"ubo-no-setTimeout-if.js":preventSetTimeout,"nostif.js":preventSetTimeout,"ubo-nostif.js":preventSetTimeout,"ubo-no-setTimeout-if":preventSetTimeout,"ubo-nostif":preventSetTimeout,"setTimeout-defuser.js":preventSetTimeout,"ubo-setTimeout-defuser.js":preventSetTimeout,"ubo-setTimeout-defuser":preventSetTimeout,"std.js":preventSetTimeout,"ubo-std.js":preventSetTimeout,"ubo-std":preventSetTimeout,"prevent-window-open":preventWindowOpen,"window.open-defuser.js":preventWindowOpen,"ubo-window.open-defuser.js":preventWindowOpen,"ubo-window.open-defuser":preventWindowOpen,"nowoif.js":preventWindowOpen,"ubo-nowoif.js":preventWindowOpen,"ubo-nowoif":preventWindowOpen,"no-window-open-if.js":preventWindowOpen,"ubo-no-window-open-if.js":preventWindowOpen,"ubo-no-window-open-if":preventWindowOpen,"prevent-xhr":preventXHR,"no-xhr-if.js":preventXHR,"ubo-no-xhr-if.js":preventXHR,"ubo-no-xhr-if":preventXHR,"remove-attr":removeAttr,"remove-attr.js":removeAttr,"ubo-remove-attr.js":removeAttr,"ra.js":removeAttr,"ubo-ra.js":removeAttr,"ubo-remove-attr":removeAttr,"ubo-ra":removeAttr,"remove-class":removeClass,"remove-class.js":removeClass,"ubo-remove-class.js":removeClass,"rc.js":removeClass,"ubo-rc.js":removeClass,"ubo-remove-class":removeClass,"ubo-rc":removeClass,"remove-cookie":removeCookie,"cookie-remover.js":removeCookie,"ubo-cookie-remover.js":removeCookie,"ubo-cookie-remover":removeCookie,"remove-cookie.js":removeCookie,"ubo-remove-cookie.js":removeCookie,"ubo-remove-cookie":removeCookie,"abp-cookie-remover":removeCookie,"remove-in-shadow-dom":removeInShadowDom,"remove-node-text":removeNodeText,"remove-node-text.js":removeNodeText,"ubo-remove-node-text.js":removeNodeText,"rmnt.js":removeNodeText,"ubo-rmnt.js":removeNodeText,"ubo-remove-node-text":removeNodeText,"ubo-rmnt":removeNodeText,"set-attr":setAttr,"set-attr.js":setAttr,"ubo-set-attr.js":setAttr,"ubo-set-attr":setAttr,"set-constant":setConstant,"set-constant.js":setConstant,"ubo-set-constant.js":setConstant,"set.js":setConstant,"ubo-set.js":setConstant,"ubo-set-constant":setConstant,"ubo-set":setConstant,"abp-override-property-read":setConstant,"set-cookie":setCookie,"set-cookie.js":setCookie,"ubo-set-cookie.js":setCookie,"ubo-set-cookie":setCookie,"set-cookie-reload":setCookieReload,"set-cookie-reload.js":setCookieReload,"ubo-set-cookie-reload.js":setCookieReload,"ubo-set-cookie-reload":setCookieReload,"set-local-storage-item":setLocalStorageItem,"set-local-storage-item.js":setLocalStorageItem,"ubo-set-local-storage-item.js":setLocalStorageItem,"ubo-set-local-storage-item":setLocalStorageItem,"set-popads-dummy":setPopadsDummy,"popads-dummy.js":setPopadsDummy,"ubo-popads-dummy.js":setPopadsDummy,"ubo-popads-dummy":setPopadsDummy,"set-session-storage-item":setSessionStorageItem,"set-session-storage-item.js":setSessionStorageItem,"ubo-set-session-storage-item.js":setSessionStorageItem,"ubo-set-session-storage-item":setSessionStorageItem,"spoof-css":spoofCSS,"spoof-css.js":spoofCSS,"ubo-spoof-css.js":spoofCSS,"ubo-spoof-css":spoofCSS,"trusted-click-element":trustedClickElement,"trusted-create-element":trustedCreateElement,"trusted-dispatch-event":trustedDispatchEvent,"trusted-prune-inbound-object":trustedPruneInboundObject,"trusted-replace-fetch-response":trustedReplaceFetchResponse,"trusted-replace-node-text":trustedReplaceNodeText,"trusted-replace-outbound-text":trustedReplaceOutboundText,"trusted-replace-xhr-response":trustedReplaceXhrResponse,"trusted-set-attr":trustedSetAttr,"trusted-set-constant":trustedSetConstant,"trusted-set-cookie":trustedSetCookie,"trusted-set-cookie-reload":trustedSetCookieReload,"trusted-set-local-storage-item":trustedSetLocalStorageItem,"trusted-suppress-native-method":trustedSuppressNativeMethod,"xml-prune":xmlPrune,"xml-prune.js":xmlPrune,"ubo-xml-prune.js":xmlPrune,"ubo-xml-prune":xmlPrune};var getScriptletFunction=function getScriptletFunction(name){return scriptletsMap[name];}; /** * @typedef {object} Source Scriptlet properties. diff --git a/package.json b/package.json index 998a602b..7c0ca5f4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@adguard/scriptlets", - "version": "1.10.33", + "version": "1.11.1", "description": "AdGuard's JavaScript library of Scriptlets and Redirect resources", "scripts": { "build": "babel-node -x .js,.ts scripts/build.js", diff --git a/src/scriptlets/trusted-dispatch-event.ts b/src/scriptlets/trusted-dispatch-event.ts index b5053e16..4ce3c4a9 100644 --- a/src/scriptlets/trusted-dispatch-event.ts +++ b/src/scriptlets/trusted-dispatch-event.ts @@ -40,7 +40,7 @@ import { * example.org#%#//scriptlet('trusted-dispatch-event', 'load', 'window') * ``` * - * @added unknown. + * @added v1.11.1. */ export function trustedDispatchEvent( diff --git a/src/scriptlets/trusted-replace-outbound-text.ts b/src/scriptlets/trusted-replace-outbound-text.ts index 255818d1..cd4027d0 100644 --- a/src/scriptlets/trusted-replace-outbound-text.ts +++ b/src/scriptlets/trusted-replace-outbound-text.ts @@ -110,7 +110,7 @@ import { * * * - * @added unknown. + * @added v1.11.1. */ /* eslint-enable max-len */ export function trustedReplaceOutboundText( diff --git a/wiki/about-trusted-scriptlets.md b/wiki/about-trusted-scriptlets.md index 5a8fe5cb..1c3b2878 100644 --- a/wiki/about-trusted-scriptlets.md +++ b/wiki/about-trusted-scriptlets.md @@ -2,9 +2,11 @@ - [trusted-click-element](#trusted-click-element) - [trusted-create-element](#trusted-create-element) +- [trusted-dispatch-event](#trusted-dispatch-event) - [trusted-prune-inbound-object](#trusted-prune-inbound-object) - [trusted-replace-fetch-response](#trusted-replace-fetch-response) - [trusted-replace-node-text](#trusted-replace-node-text) +- [trusted-replace-outbound-text](#trusted-replace-outbound-text) - [trusted-replace-xhr-response](#trusted-replace-xhr-response) - [trusted-set-attr](#trusted-set-attr) - [trusted-set-constant](#trusted-set-constant) @@ -30,14 +32,16 @@ example.com#%#//scriptlet('trusted-click-element', selectors[, extraMatch[, dela ``` - `selectors` — required, string with query selectors delimited by comma. The scriptlet supports `>>>` combinator to select elements inside open shadow DOM. For usage, see example below. -- `extraMatch` — optional, extra condition to check on a page; allows to match `cookie` and `localStorage`; +- `extraMatch` — optional, extra condition to check on a page; + allows to match `cookie`, `localStorage` and specified text; can be set as `name:key[=value]` where `value` is optional. If `cookie`/`localStorage` starts with `!` then the element will only be clicked -if specified cookie/localStorage item does not exist. +if specified `cookie`/`localStorage` item does not exist. Multiple conditions are allowed inside one `extraMatch` but they should be delimited by comma -and each of them should match the syntax. Possible `name`s: +and each of them should match the syntax. Possible `names`: - `cookie` — test string or regex against cookies on a page - `localStorage` — check if localStorage item is present + - `containsText` — check if clicked element contains specified text - `delay` — optional, time in ms to delay scriptlet execution, defaults to instant execution. @@ -88,6 +92,12 @@ and each of them should match the syntax. Possible `name`s: example.com#%#//scriptlet('trusted-click-element', 'button[name="agree"], input[type="submit"][value="akkoord"]', 'cookie:cmpconsent, localStorage:promo', '250') ``` +1. Click element only if clicked element contains text `Accept cookie` + + ```adblock + example.com#%#//scriptlet('trusted-click-element', 'button', 'containsText:Accept cookie') + ``` + 1. Click element only if cookie with name `cmpconsent` does not exist ```adblock @@ -108,7 +118,7 @@ and each of them should match the syntax. Possible `name`s: -[Scriptlet source](../src/scriptlets/trusted-click-element.js) +[Scriptlet source](../src/scriptlets/trusted-click-element.ts) * * * @@ -170,6 +180,48 @@ example.com#%#//scriptlet('trusted-create-element', parentSelector, tagName[, at * * * +## ⚡️ trusted-dispatch-event + +> Added in v1.11.1. + +Dispatches a custom event on a specified target. + +### Syntax + +```text +example.org#%#//scriptlet('trusted-dispatch-event', event[, target]) +``` + +- `event` — required, name of the event to dispatch +- `target` — optional, target on which event will be invoked. Possible values: + - CSS selector — dispatch event on the element with the specified selector + - `window` — dispatch event on the window object + - if not set, then "document" is used — it's default value + +### Examples + +1. Dispatches a custom event "click" on the document. + + ```adblock + example.org#%#//scriptlet('trusted-dispatch-event', 'click') + ``` + +2. Dispatches a custom event "submit" on the element with the class "test". + + ```adblock + example.org#%#//scriptlet('trusted-dispatch-event', 'submit', '.test') + ``` + +3. Dispatches a custom event "load" on the window object. + + ```adblock + example.org#%#//scriptlet('trusted-dispatch-event', 'load', 'window') + ``` + +[Scriptlet source](../src/scriptlets/trusted-dispatch-event.ts) + +* * * + ## ⚡️ trusted-prune-inbound-object > Added in v1.9.91. @@ -389,6 +441,108 @@ If matched, the whole text will be removed. Case sensitive. * * * +## ⚡️ trusted-replace-outbound-text + +> Added in v1.11.1. + +Replace the text in the outbound function call. + +Related UBO scriptlet: +https://github.com/gorhill/uBlock/commit/21e1ee30ee36c1b9a7a3c9f43ac97e52d8e79661 + +### Syntax + + +```text +example.org#%#//scriptlet('trusted-replace-outbound-text', methodPath[, textToReplace[, replacement[, decodeMethod[, stack[, logContent]]]]]) +``` + + +- `methodPath` — required, the name of the function to trap, it must have an object as an argument. + Call with only `methodPath` as an argument will log all text content of the specified function to console, + but only if function call returns a string, otherwise it will log information that content is not a string. +- `textToReplace` — optional, string or regular expression which should be replaced. + By default it's set to `''`. If it's not set to other value and `logContent` is set, it will log the original content. +- `replacement` — optional, string which replace the matched text. + By default it's set to '', so matched content will removed. +- `decodeMethod` — optional, string which specifies the method used to decode the content. + For now supported value is 'base64'. By default it's set to `''` and no decoding is performed. + If it's set and `logContent` is also set and `textToReplace` and `replacement` are not set, + then it will log the decoded content. +- `stack` — optional, string or regular expression that must match the current function call stack trace. + If regular expression is invalid it will be skipped. +- `logContent` — optional, if set to any value, the original and modified content will be logged. + By default it's set to '' and no content will be logged. + +> Logging content may be useful for debugging but it is not allowed for prod versions of filter lists. + +### Examples + + + +1. Replace `foo` with 'bar' from the payload of the atob call: + + ```adblock + example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob', 'foo', 'bar') + ``` + + For instance, the following call will return `bar` + + ```html + const text = btoa('foo'); + atob(text); + ``` + +1. Replace `disable_ads:false` with 'disable_ads:true' from the payload of the `Array.prototype.join` if content is encoded in base64: + + ```adblock + example.org#%#//scriptlet('trusted-replace-outbound-text', 'Array.prototype.join', 'disable_ads:false', 'disable_ads:true', 'base64') + ``` + + For instance, the following call will return `ZGlzYWJsZV9hZHM6dHJ1ZQ==` which is `'disable_ads:true'` after decoding + + ```html + const arrayBase64 = ['ZGlzYWJsZV9h','ZHM6ZmFsc2U=']; // `ZGlzYWJsZV9hZHM6ZmFsc2U=` after decoding is `disable_ads:false` + arrayBase64.join(''); + ``` + +1. Replace `"loadAds":true` with `"loadAds":false` from the payload of the JSON.stringify if the stack trace contains `testStackFunction`: + + ```adblock + example.org#%#//scriptlet('trusted-replace-outbound-text', 'JSON.stringify', '"loadAds":true', '"loadAds":false', '', 'testStackFunction') + ``` + + For instance, the following call will return `'{"loadAds":false,"content":"bar"}'` + + ```html + const testStackFunction = () => JSON.stringify({ loadAds: true, content: 'bar' }); + testStackFunction(); + ``` + +1. Call with `decodeMethod` and `logContent` arguments will log original and decoded text content of the specified function: + + ```adblock + example.org#%#//scriptlet('trusted-replace-outbound-text', 'Array.prototype.join', '', '', 'base64' , '', 'true') + ``` + +1. Call with only first argument will log text content of the specified function: + + ```adblock + example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob') + ``` + +1. Call with `logContent` argument will log original and modified text content of the specified function: + + ```adblock + example.org#%#//scriptlet('trusted-replace-outbound-text', 'atob', 'foo', 'bar', '', '', 'true') + ``` + + + +[Scriptlet source](../src/scriptlets/trusted-replace-outbound-text.ts) + +* * * + ## ⚡️ trusted-replace-xhr-response > Added in v1.7.3.