/*! For license information please see main.js.LICENSE.txt */
(()=>{"use strict";function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function t(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var r=function(){function t(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t)}var r,n,i;return r=t,i=[{key:"replace",value:function(){"https://junit.org/junit5/"===location.href&&($(this.selectors.junitAbout).prevAll().remove(),$(this.selectors.junitLogo).attr("src",this.junitLogoUrl),$(this.selectors.junitFavicon).attr("href",this.junitLogoUrl))}}],(n=null)&&e(r.prototype,n),i&&e(r,i),Object.defineProperty(r,"prototype",{writable:!1}),t}();function n(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}t(r,"selectors",{reactBar:".css-lpiycv",junitAbout:"#about",junitLogo:'img[src="/junit5/assets/img/junit5-logo.png"]',junitFavicon:'link[rel="icon"]',codeceptBar:".sub-bar .message"}),t(r,"junitLogoUrl","https://raw.githubusercontent.com/duanluan/tampermonkey-scripts/main/core-socialist-values/src/junit/imgs/junit5-logo-csv.png");var i,a,o,l=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,i;return t=e,i=[{key:"replace",value:function(t,r){$(t).text().match(/ukraine|乌克兰|black|黑人/i)&&(e.loopReplaceBar(t),r&&new MutationObserver((function(r,n){e.loopReplaceBar(t)})).observe($(r)[0],{childList:!0}))}},{key:"loopReplaceBar",value:function(t){if($($(t)[0]).text().replace(/\s+/g,"")!==e.txt)var r=setInterval((function(){$($(t)[0]).text().replace(/\s+/g,"")===e.txt&&clearInterval(r),e.replaceBar(t)}),1e3)}},{key:"replaceBar",value:function(e){var t=".csv_bar",r=".csv_bar .csv_bar_ul";$(e).css({minHeight:"40px"}),$(e).html("\n <div class=\"csv_bar\">\n <ul class='csv_bar_ul'><li>富强</li><li>民主</li><li>文明</li><li>和谐</li><li>自由</li><li>平等</li><li>公正</li><li>法治</li><li>爱国</li><li>敬业</li><li>诚信</li><li>友善</li></ul><br>\n <ul class='csv_bar_ul'><li>Prosperity</li><li>Democracy</li><li>Civility</li><li>Harmony</li><li>Freedom</li><li>Equality</li><li>Justice</li><li>Rule of law</li><li>Patriotism</li><li>Dedication</li><li>Integrity</li><li>Friendship</li>\n </ul>\n </div>");var n=$(t);2==n.length&&n.eq(0).remove(),$(r).css({display:"inline-block",listStyle:"none",margin:0,padding:0,width:"auto"}),$(r+" li").css({color:"#DE2910",fontWeight:"bold",fontFamily:"KaiTi",float:"left",paddingRight:"10px","min-width":"80px",textAlign:"center"}),$(r+":first").css("verticalAlign","bottom"),$(r+":first li").css("fontSize","18px"),$(r+":eq(1) li").css("fontSize","13px")}}],(r=null)&&n(t.prototype,r),i&&n(t,i),Object.defineProperty(t,"prototype",{writable:!1}),e}();function c(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}o="富强民主文明和谐自由平等公正法治爱国敬业诚信友善ProsperityDemocracyCivilityHarmonyFreedomEqualityJusticeRuleoflawPatriotismDedicationIntegrityFriendship",(a="txt")in(i=l)?Object.defineProperty(i,a,{value:o,enumerable:!0,configurable:!0,writable:!0}):i[a]=o;var s=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,n;return t=e,n=[{key:"replace",value:function(){"reactjs.org"===location.host&&l.replace(this.selectors.bar,this.selectors.observingBar)}}],(r=null)&&c(t.prototype,r),n&&c(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function u(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}!function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(s,"selectors",{bar:".css-lpiycv",observingBar:"#gatsby-focus-wrapper"});var f=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,n;return t=e,n=[{key:"replace",value:function(){if("angular.io"===location.host&&!localStorage.getItem("aio-notification/war-ukraine")){var e=$(this.selectors.bar);e.length>0&&-1!=e.text().toLowerCase().indexOf("ukraine")&&$(this.selectors.dismissNotificationBtn)[0].click()}}}],(r=null)&&u(t.prototype,r),n&&u(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function b(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}!function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(f,"selectors",{bar:".mat-toolbar-row.notification-container",dismissNotificationBtn:'button[aria-label="Dismiss notification"]'});var p=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,n;return t=e,n=[{key:"replace",value:function(){"codecept.io"===location.host&&l.replace(this.selectors.bar,null)}}],(r=null)&&b(t.prototype,r),n&&b(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function v(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}!function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(p,"selectors",{bar:".sub-bar .message",observingBar:"#app"});var y=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,n;return t=e,n=[{key:"replace",value:function(){if("https://github.com/"===location.href){var e=$(this.selectors.notice);e.length>0&&-1!=e.text().toLowerCase().indexOf("ukraine")&&e.remove()}}}],(r=null)&&v(t.prototype,r),n&&v(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function g(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}!function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(y,"selectors",{notice:".border.js-notice"});var h=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,n;return t=e,n=[{key:"replace",value:function(){"docs.nestjs.com"===location.host&&(l.replace(this.selectors.bar,null),$(this.selectors.bar).css("padding","0"))}}],(r=null)&&g(t.prototype,r),n&&g(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function m(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}!function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(h,"selectors",{bar:".top-bar",observingBar:".ng-star-inserted"});var w=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,n;return t=e,n=[{key:"replace",value:function(){"emberjs.com"===location.host&&(l.replace(this.selectors.bar,null),$(this.selectors.bar).css({backgroundColor:"#1c1e24",padding:0}))}}],(r=null)&&m(t.prototype,r),n&&m(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function d(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}!function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(w,"selectors",{bar:".callout-banner"});var j=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,n;return t=e,n=[{key:"replace",value:function(){"www.electronjs.org"===location.host&&(l.replace(this.selectors.bar,null),$(this.selectors.bar).css({padding:0}))}}],(r=null)&&d(t.prototype,r),n&&d(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function k(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}!function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(j,"selectors",{bar:".announcement-banner"});var O=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r,n;return t=e,n=[{key:"replace",value:function(){"www.jenkins.io"===location.host&&($(this.selectors.logo).replaceWith('<img src="/images/logos/jenkins/Jenkins.svg">'),$(this.selectors.pageTitle).nextAll("p").each((function(e,t){var r=$(t);-1!=r.text().toLowerCase().indexOf("ukraine")&&r.remove()})),$(this.selectors.pageTitle).parent().append("<br><br><br>"))}}],(r=null)&&k(t.prototype,r),n&&k(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();!function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(O,"selectors",{logo:'img[src="/images/logos/jenkins/Jenkins-stop-the-war.svg"]',pageTitle:".page-title"}),s.replace(),f.replace(),r.replace(),p.replace(),y.replace(),h.replace(),w.replace(),j.replace(),O.replace()})// ==UserScript==
// @name 社会主义核心价值观(Core Socialist Values)
// @namespace http://tampermonkey.net/
// @version 0.8.0
// @description 替换政治相关条幅为社会主义核心价值观,替换政治相关 Logo 颜色为中国红,去除政治相关通知,让技术远离政治。
// @author duanluan
// @license Apache 2.0
// @match *://reactjs.org/*
// @match *://angular.io/*
// @match *://junit.org/*
// @match *://codecept.io/*
// @match *://github.com/*
// @match *://docs.nestjs.com/*
// @match *://emberjs.com/*
// @match *://www.electronjs.org/*
// @match *://www.jenkins.io/*
// @icon <$ICON$>
// @require https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.slim.min.js
// @grant none
// ==/UserScript==
();
//# sourceMappingURL=data:application/json;charset=utf-8;base64,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Tyw4R0FuQjdCdEIsa0hBQUFBLEVBQUFBLFlBRUEsQ0FDakJhLEtBQU0sNERBQ05FLFVBQVcsZ0JDVWJuQixFQUFNYixVQUNOaUIsRUFBUWpCLFVBQ1IxQixFQUFNMEIsVUFDTndCLEVBQVN4QixVQUNUeUIsRUFBT3pCLFVBQ1B3QyxFQUFBQSxVQUNBWixFQUFNNUIsVUFDTjZCLEVBQVM3QixVQUNUeUMsRUFBQUEiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly90YW1wZXJtb25rZXktc2NyaXB0LXV0aWxzLy4vY29yZS1zb2NpYWxpc3QtdmFsdWVzL3NyYy9qdW5pdC9KdW5pdC50cyIsIndlYnBhY2s6Ly90YW1wZXJtb25rZXktc2NyaXB0LXV0aWxzLy4vY29yZS1zb2NpYWxpc3QtdmFsdWVzL3NyYy9jb21tb24vQmFyLnRzIiwid2VicGFjazovL3RhbXBlcm1vbmtleS1zY3JpcHQtdXRpbHMvLi9jb3JlLXNvY2lhbGlzdC12YWx1ZXMvc3JjL3JlYWN0L1JlYWN0LnRzIiwid2VicGFjazovL3RhbXBlcm1vbmtleS1zY3JpcHQtdXRpbHMvLi9jb3JlLXNvY2lhbGlzdC12YWx1ZXMvc3JjL2FuZ3VsYXIvQW5ndWxhci50cyIsIndlYnBhY2s6Ly90YW1wZXJtb25rZXktc2NyaXB0LXV0aWxzLy4vY29yZS1zb2NpYWxpc3QtdmFsdWVzL3NyYy9jb2RlY2VwdC9Db2RlY2VwdC50cyIsIndlYnBhY2s6Ly90YW1wZXJtb25rZXktc2NyaXB0LXV0aWxzLy4vY29yZS1zb2NpYWxpc3QtdmFsdWVzL3NyYy9naXRodWIvR2l0aHViLnRzIiwid2VicGFjazovL3RhbXBlcm1vbmtleS1zY3JpcHQtdXRpbHMvLi9jb3JlLXNvY2lhbGlzdC12YWx1ZXMvc3JjL25lc3QvTmVzdC50cyIsIndlYnBhY2s6Ly90YW1wZXJtb25rZXktc2NyaXB0LXV0aWxzLy4vY29yZS1zb2NpYWxpc3QtdmFsdWVzL3NyYy9lbWJlci9FbWJlci50cyIsIndlYnBhY2s6Ly90YW1wZXJtb25rZXktc2NyaXB0LXV0aWxzLy4vY29yZS1zb2NpYWxpc3QtdmFsdWVzL3NyYy9lbGVjdHJvbi9FbGVjdHJvbi50cyIsIndlYnBhY2s6Ly90YW1wZXJtb25rZXktc2NyaXB0LXV0aWxzLy4vY29yZS1zb2NpYWxpc3QtdmFsdWVzL3NyYy9qZW5raW5zL0plbmtpbnMudHMiLCJ3ZWJwYWNrOi8vdGFtcGVybW9ua2V5LXNjcmlwdC11dGlscy8uL2NvcmUtc29jaWFsaXN0LXZhbHVlcy9zcmMvbWFpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBKdW5pdCB7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgc2VsZWN0b3JzID0ge1xuICAgIHJlYWN0QmFyOiAnLmNzcy1scGl5Y3YnLFxuICAgIGp1bml0QWJvdXQ6ICcjYWJvdXQnLFxuICAgIGp1bml0TG9nbzogJ2ltZ1tzcmM9XCIvanVuaXQ1L2Fzc2V0cy9pbWcvanVuaXQ1LWxvZ28ucG5nXCJdJyxcbiAgICBqdW5pdEZhdmljb246ICdsaW5rW3JlbD1cImljb25cIl0nLFxuICAgIGNvZGVjZXB0QmFyOiAnLnN1Yi1iYXIgLm1lc3NhZ2UnLFxuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMganVuaXRMb2dvVXJsID0gJ2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9kdWFubHVhbi90YW1wZXJtb25rZXktc2NyaXB0cy9tYWluL2NvcmUtc29jaWFsaXN0LXZhbHVlcy9zcmMvanVuaXQvaW1ncy9qdW5pdDUtbG9nby1jc3YucG5nJ1xuXG4gIHN0YXRpYyByZXBsYWNlKCkge1xuICAgIGlmIChsb2NhdGlvbi5ocmVmID09PSAnaHR0cHM6Ly9qdW5pdC5vcmcvanVuaXQ1LycpIHtcbiAgICAgICQodGhpcy5zZWxlY3RvcnMuanVuaXRBYm91dCkucHJldkFsbCgpLnJlbW92ZSgpO1xuICAgICAgJCh0aGlzLnNlbGVjdG9ycy5qdW5pdExvZ28pLmF0dHIoJ3NyYycsIHRoaXMuanVuaXRMb2dvVXJsKTtcbiAgICAgICQodGhpcy5zZWxlY3RvcnMuanVuaXRGYXZpY29uKS5hdHRyKCdocmVmJywgdGhpcy5qdW5pdExvZ29VcmwpO1xuICAgIH1cbiAgfVxufVxuIiwiZXhwb3J0IGRlZmF1bHQgY2xhc3MgQmFyIHtcblxuICAvKipcbiAgICog5pu/5o2i5p2h5bmFXG4gICAqIEBwYXJhbSBzZWxlY3RvciDmnaHluYXpgInmi6nlmahcbiAgICogQHBhcmFtIG9ic2VydmluZ1NlbGVjdG9yIOWPmOWMlumAieaLqeWZqFxuICAgKi9cbiAgc3RhdGljIHJlcGxhY2Uoc2VsZWN0b3IsIG9ic2VydmluZ1NlbGVjdG9yKSB7XG4gICAgaWYgKCEkKHNlbGVjdG9yKS50ZXh0KCkubWF0Y2goL3VrcmFpbmV85LmM5YWL5YWwfGJsYWNrfOm7keS6ui9pKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBCYXIubG9vcFJlcGxhY2VCYXIoc2VsZWN0b3IpO1xuICAgIGlmIChvYnNlcnZpbmdTZWxlY3Rvcikge1xuICAgICAgLy8g55uR5ZCs5p2h5bmF5Y+Y5YyW77yM5Y+Y5YyW5ZCO5YaN5qyh5omn6KGMXG4gICAgICBuZXcgTXV0YXRpb25PYnNlcnZlcigobXV0YXRpb25zOiBNdXRhdGlvblJlY29yZFtdLCBvYnNlcnZlcjogTXV0YXRpb25PYnNlcnZlcikgPT4ge1xuICAgICAgICBCYXIubG9vcFJlcGxhY2VCYXIoc2VsZWN0b3IpO1xuICAgICAgfSkub2JzZXJ2ZSgkKG9ic2VydmluZ1NlbGVjdG9yKVswXSwge2NoaWxkTGlzdDogdHJ1ZX0pXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgdHh0ID0gJ+WvjOW8uuawkeS4u+aWh+aYjuWSjOiwkOiHqueUseW5s+etieWFrOato+azleayu+eIseWbveaVrOS4muivmuS/oeWPi+WWhFByb3NwZXJpdHlEZW1vY3JhY3lDaXZpbGl0eUhhcm1vbnlGcmVlZG9tRXF1YWxpdHlKdXN0aWNlUnVsZW9mbGF3UGF0cmlvdGlzbURlZGljYXRpb25JbnRlZ3JpdHlGcmllbmRzaGlwJztcblxuICAvLyDlvqrnjq/mm7/mjaLmnaHluYVcbiAgcHJpdmF0ZSBzdGF0aWMgbG9vcFJlcGxhY2VCYXIoc2VsZWN0b3IpIHtcbiAgICBpZiAoJCgkKHNlbGVjdG9yKVswXSkudGV4dCgpLnJlcGxhY2UoL1xccysvZywgXCJcIikgPT09IEJhci50eHQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgaXNTdG9wID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKCQoJChzZWxlY3RvcilbMF0pLnRleHQoKS5yZXBsYWNlKC9cXHMrL2csIFwiXCIpID09PSBCYXIudHh0KSB7XG4gICAgICAgIGNsZWFySW50ZXJ2YWwoaXNTdG9wKTtcbiAgICAgIH1cbiAgICAgIEJhci5yZXBsYWNlQmFyKHNlbGVjdG9yKTtcbiAgICB9LCAxMDAwKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHJlcGxhY2VCYXIoc2VsZWN0b3IpIHtcbiAgICBjb25zdCBiYXJTZWxlY3RvciA9ICcuY3N2X2JhcicsIGJhclVsU2VsZWN0b3IgPSBiYXJTZWxlY3RvciArICcgLmNzdl9iYXJfdWwnO1xuXG4gICAgJChzZWxlY3RvcikuY3NzKHsnbWluSGVpZ2h0JzogJzQwcHgnfSk7XG4gICAgJChzZWxlY3RvcikuaHRtbChgXG4gICAgPGRpdiBjbGFzcz1cImNzdl9iYXJcIj5cbiAgICAgIDx1bCBjbGFzcz0nY3N2X2Jhcl91bCc+PGxpPuWvjOW8ujwvbGk+PGxpPuawkeS4uzwvbGk+PGxpPuaWh+aYjjwvbGk+PGxpPuWSjOiwkDwvbGk+PGxpPuiHqueUsTwvbGk+PGxpPuW5s+etiTwvbGk+PGxpPuWFrOatozwvbGk+PGxpPuazleayuzwvbGk+PGxpPueIseWbvTwvbGk+PGxpPuaVrOS4mjwvbGk+PGxpPuivmuS/oTwvbGk+PGxpPuWPi+WWhDwvbGk+PC91bD48YnI+XG4gICAgICA8dWwgY2xhc3M9J2Nzdl9iYXJfdWwnPjxsaT5Qcm9zcGVyaXR5PC9saT48bGk+RGVtb2NyYWN5PC9saT48bGk+Q2l2aWxpdHk8L2xpPjxsaT5IYXJtb255PC9saT48bGk+RnJlZWRvbTwvbGk+PGxpPkVxdWFsaXR5PC9saT48bGk+SnVzdGljZTwvbGk+PGxpPlJ1bGUgb2YgbGF3PC9saT48bGk+UGF0cmlvdGlzbTwvbGk+PGxpPkRlZGljYXRpb248L2xpPjxsaT5JbnRlZ3JpdHk8L2xpPjxsaT5GcmllbmRzaGlwPC9saT5cbiAgICAgIDwvdWw+XG4gICAgPC9kaXY+YCk7XG5cbiAgICAvLyDpgb/lhY3lh7rnjrDlpJrkuKrlr7zoh7TmoLflvI/mt7vliqDlpLHotKVcbiAgICBjb25zdCAkYmFyID0gJChiYXJTZWxlY3Rvcik7XG4gICAgaWYgKCRiYXIubGVuZ3RoID09IDIpIHtcbiAgICAgICRiYXIuZXEoMCkucmVtb3ZlKCk7XG4gICAgfVxuXG4gICAgJChiYXJVbFNlbGVjdG9yKS5jc3MoeydkaXNwbGF5JzogJ2lubGluZS1ibG9jaycsICdsaXN0U3R5bGUnOiAnbm9uZScsICdtYXJnaW4nOiAwLCAncGFkZGluZyc6IDAsICd3aWR0aCc6ICdhdXRvJ30pO1xuICAgICQoYmFyVWxTZWxlY3RvciArICcgbGknKS5jc3Moeydjb2xvcic6ICcjREUyOTEwJywgJ2ZvbnRXZWlnaHQnOiAnYm9sZCcsICdmb250RmFtaWx5JzogJ0thaVRpJywgJ2Zsb2F0JzogJ2xlZnQnLCAncGFkZGluZ1JpZ2h0JzogJzEwcHgnLCAnbWluLXdpZHRoJzogJzgwcHgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9KTtcbiAgICAkKGJhclVsU2VsZWN0b3IgKyAnOmZpcnN0JykuY3NzKCd2ZXJ0aWNhbEFsaWduJywgJ2JvdHRvbScpO1xuICAgICQoYmFyVWxTZWxlY3RvciArICc6Zmlyc3QgbGknKS5jc3MoJ2ZvbnRTaXplJywgJzE4cHgnKTtcbiAgICAkKGJhclVsU2VsZWN0b3IgKyAnOmVxKDEpIGxpJykuY3NzKCdmb250U2l6ZScsICcxM3B4Jyk7XG4gIH1cbn1cbiIsImltcG9ydCBCYXIgZnJvbSBcIi4uL2NvbW1vbi9CYXJcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVhY3Qge1xuXG4gIHByaXZhdGUgc3RhdGljIHNlbGVjdG9ycyA9IHtcbiAgICBiYXI6ICcuY3NzLWxwaXljdicsXG4gICAgb2JzZXJ2aW5nQmFyOiAnI2dhdHNieS1mb2N1cy13cmFwcGVyJyxcbiAgfVxuXG4gIHN0YXRpYyByZXBsYWNlKCkge1xuICAgIGlmIChsb2NhdGlvbi5ob3N0ID09PSAncmVhY3Rqcy5vcmcnKSB7XG4gICAgICBCYXIucmVwbGFjZSh0aGlzLnNlbGVjdG9ycy5iYXIsIHRoaXMuc2VsZWN0b3JzLm9ic2VydmluZ0Jhcik7XG4gICAgfVxuICB9XG59XG4iLCJleHBvcnQgZGVmYXVsdCBjbGFzcyBBbmd1bGFyIHtcblxuICBwcml2YXRlIHN0YXRpYyBzZWxlY3RvcnMgPSB7XG4gICAgYmFyOiAnLm1hdC10b29sYmFyLXJvdy5ub3RpZmljYXRpb24tY29udGFpbmVyJyxcbiAgICBkaXNtaXNzTm90aWZpY2F0aW9uQnRuOiAnYnV0dG9uW2FyaWEtbGFiZWw9XCJEaXNtaXNzIG5vdGlmaWNhdGlvblwiXScsXG4gIH1cblxuICBzdGF0aWMgcmVwbGFjZSgpIHtcbiAgICBpZiAobG9jYXRpb24uaG9zdCA9PT0gJ2FuZ3VsYXIuaW8nKSB7XG4gICAgICAvLyDkuI3lrZjlnKjmmK/lkKblhbPpl63pgJrnn6XnmoTmnKzlnLDlrZjlgqjml7ZcbiAgICAgIGlmICghbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2Fpby1ub3RpZmljYXRpb24vd2FyLXVrcmFpbmUnKSkge1xuICAgICAgICAvLyDlpoLmnpzpgJrnn6XkuK3lrZjlnKjlhbPplK7or41cbiAgICAgICAgY29uc3QgJGJhciA9ICQodGhpcy5zZWxlY3RvcnMuYmFyKTtcbiAgICAgICAgaWYgKCRiYXIubGVuZ3RoID4gMCAmJiAkYmFyLnRleHQoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoJ3VrcmFpbmUnKSAhPSAtMSkge1xuICAgICAgICAgIC8vIOeCueWHu+WFs+mXremAmuefpVxuICAgICAgICAgICQodGhpcy5zZWxlY3RvcnMuZGlzbWlzc05vdGlmaWNhdGlvbkJ0bilbMF0uY2xpY2soKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsImltcG9ydCBCYXIgZnJvbSBcIi4uL2NvbW1vbi9CYXJcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29kZWNlcHQge1xuXG4gIHN0YXRpYyBzZWxlY3RvcnMgPSB7XG4gICAgYmFyOiAnLnN1Yi1iYXIgLm1lc3NhZ2UnLFxuICAgIG9ic2VydmluZ0JhcjogJyNhcHAnXG4gIH1cblxuICBzdGF0aWMgcmVwbGFjZSgpIHtcbiAgICBpZiAobG9jYXRpb24uaG9zdCA9PT0gJ2NvZGVjZXB0LmlvJykge1xuICAgICAgQmFyLnJlcGxhY2UodGhpcy5zZWxlY3RvcnMuYmFyLCBudWxsKTtcbiAgICB9XG4gIH1cbn1cbiIsImV4cG9ydCBkZWZhdWx0IGNsYXNzIEdpdGh1YiB7XG5cbiAgc3RhdGljIHNlbGVjdG9ycyA9IHtcbiAgICBub3RpY2U6ICcuYm9yZGVyLmpzLW5vdGljZSdcbiAgfVxuXG4gIHN0YXRpYyByZXBsYWNlKCkge1xuICAgIGlmIChsb2NhdGlvbi5ocmVmID09PSAnaHR0cHM6Ly9naXRodWIuY29tLycpIHtcbiAgICAgIGNvbnN0ICRub3RpY2UgPSAkKHRoaXMuc2VsZWN0b3JzLm5vdGljZSk7XG4gICAgICBpZiAoJG5vdGljZS5sZW5ndGggPiAwICYmICRub3RpY2UudGV4dCgpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigndWtyYWluZScpICE9IC0xKSB7XG4gICAgICAgICRub3RpY2UucmVtb3ZlKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJpbXBvcnQgQmFyIGZyb20gXCIuLi9jb21tb24vQmFyXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvZGVjZXB0IHtcblxuICBzdGF0aWMgc2VsZWN0b3JzID0ge1xuICAgIGJhcjogJy50b3AtYmFyJyxcbiAgICBvYnNlcnZpbmdCYXI6ICcubmctc3Rhci1pbnNlcnRlZCdcbiAgfVxuXG4gIHN0YXRpYyByZXBsYWNlKCkge1xuICAgIGlmIChsb2NhdGlvbi5ob3N0ID09PSAnZG9jcy5uZXN0anMuY29tJykge1xuICAgICAgQmFyLnJlcGxhY2UodGhpcy5zZWxlY3RvcnMuYmFyLCBudWxsKTtcbiAgICAgICQodGhpcy5zZWxlY3RvcnMuYmFyKS5jc3MoJ3BhZGRpbmcnLCAnMCcpO1xuICAgIH1cbiAgfVxufVxuIiwiaW1wb3J0IEJhciBmcm9tIFwiLi4vY29tbW9uL0JhclwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFbWJlciB7XG5cbiAgc3RhdGljIHNlbGVjdG9ycyA9IHtcbiAgICBiYXI6ICcuY2FsbG91dC1iYW5uZXInLFxuICB9XG5cbiAgc3RhdGljIHJlcGxhY2UoKSB7XG4gICAgaWYgKGxvY2F0aW9uLmhvc3QgPT09ICdlbWJlcmpzLmNvbScpIHtcbiAgICAgIEJhci5yZXBsYWNlKHRoaXMuc2VsZWN0b3JzLmJhciwgbnVsbCk7XG4gICAgICAkKHRoaXMuc2VsZWN0b3JzLmJhcikuY3NzKHsnYmFja2dyb3VuZENvbG9yJzogJyMxYzFlMjQnLCAncGFkZGluZyc6IDB9KTtcbiAgICB9XG4gIH1cbn1cbiIsImltcG9ydCBCYXIgZnJvbSBcIi4uL2NvbW1vbi9CYXJcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRWxlY3Ryb24ge1xuXG4gIHN0YXRpYyBzZWxlY3RvcnMgPSB7XG4gICAgYmFyOiAnLmFubm91bmNlbWVudC1iYW5uZXInLFxuICB9XG5cbiAgc3RhdGljIHJlcGxhY2UoKSB7XG4gICAgaWYgKGxvY2F0aW9uLmhvc3QgPT09ICd3d3cuZWxlY3Ryb25qcy5vcmcnKSB7XG4gICAgICBCYXIucmVwbGFjZSh0aGlzLnNlbGVjdG9ycy5iYXIsIG51bGwpO1xuICAgICAgJCh0aGlzLnNlbGVjdG9ycy5iYXIpLmNzcyh7J3BhZGRpbmcnOiAwfSk7XG4gICAgfVxuICB9XG59XG4iLCJleHBvcnQgZGVmYXVsdCBjbGFzcyBBbmd1bGFyIHtcblxuICBzdGF0aWMgc2VsZWN0b3JzID0ge1xuICAgIGxvZ286ICdpbWdbc3JjPVwiL2ltYWdlcy9sb2dvcy9qZW5raW5zL0plbmtpbnMtc3RvcC10aGUtd2FyLnN2Z1wiXScsXG4gICAgcGFnZVRpdGxlOiAnLnBhZ2UtdGl0bGUnXG4gIH1cblxuICBzdGF0aWMgcmVwbGFjZSgpIHtcbiAgICBpZiAobG9jYXRpb24uaG9zdCA9PT0gJ3d3dy5qZW5raW5zLmlvJykge1xuICAgICAgLy8g5pu/5o2i5Zu+5qCHXG4gICAgICAkKHRoaXMuc2VsZWN0b3JzLmxvZ28pLnJlcGxhY2VXaXRoKGA8aW1nIHNyYz1cIi9pbWFnZXMvbG9nb3MvamVua2lucy9KZW5raW5zLnN2Z1wiPmApO1xuXG4gICAgICAvLyDliKDpmaTpgJrnn6VcbiAgICAgICQodGhpcy5zZWxlY3RvcnMucGFnZVRpdGxlKS5uZXh0QWxsKFwicFwiKS5lYWNoKChpLCBlbCkgPT4ge1xuICAgICAgICBjb25zdCAkZWwgPSAkKGVsKTtcbiAgICAgICAgaWYgKCRlbC50ZXh0KCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCd1a3JhaW5lJykgIT0gLTEpIHtcbiAgICAgICAgICAkZWwucmVtb3ZlKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgJCh0aGlzLnNlbGVjdG9ycy5wYWdlVGl0bGUpLnBhcmVudCgpLmFwcGVuZCgnPGJyPjxicj48YnI+Jyk7XG4gICAgfVxuICB9XG59XG4iLCIvLyDmm7/mjaLlkI7nmoTmnaHluYXljrvpmaTnqbrmoLzmjaLooYzlkI7nmoTmlofmnKxcbmltcG9ydCBKdW5pdCBmcm9tIFwiLi9qdW5pdC9KdW5pdFwiO1xuaW1wb3J0IFJlYWN0IGZyb20gXCIuL3JlYWN0L1JlYWN0XCI7XG5pbXBvcnQgQW5ndWxhciBmcm9tIFwiLi9hbmd1bGFyL0FuZ3VsYXJcIjtcbmltcG9ydCBDb2RlY2VwdCBmcm9tIFwiLi9jb2RlY2VwdC9Db2RlY2VwdFwiO1xuaW1wb3J0IEdpdGh1YiBmcm9tIFwiLi9naXRodWIvR2l0aHViXCI7XG5pbXBvcnQgTmVzdCBmcm9tIFwiLi9uZXN0L05lc3RcIjtcbmltcG9ydCBFbWJlciBmcm9tIFwiLi9lbWJlci9FbWJlclwiO1xuaW1wb3J0IEVsZWN0cm9uIGZyb20gXCIuL2VsZWN0cm9uL0VsZWN0cm9uXCI7XG5pbXBvcnQgSmVua2lucyBmcm9tIFwiLi9qZW5raW5zL0plbmtpbnNcIjtcblxuKCgpID0+IHtcbiAgJ3VzZSBzdHJpY3QnO1xuXG4gIFJlYWN0LnJlcGxhY2UoKTtcbiAgQW5ndWxhci5yZXBsYWNlKCk7XG4gIEp1bml0LnJlcGxhY2UoKTtcbiAgQ29kZWNlcHQucmVwbGFjZSgpO1xuICBHaXRodWIucmVwbGFjZSgpO1xuICBOZXN0LnJlcGxhY2UoKTtcbiAgRW1iZXIucmVwbGFjZSgpO1xuICBFbGVjdHJvbi5yZXBsYWNlKCk7XG4gIEplbmtpbnMucmVwbGFjZSgpO1xufSkoKTtcblxuLy8gPT1Vc2VyU2NyaXB0PT1cbi8vIEBuYW1lICAgICAgICAg56S+5Lya5Li75LmJ5qC45b+D5Lu35YC86KeC77yIQ29yZSBTb2NpYWxpc3QgVmFsdWVz77yJXG4vLyBAbmFtZXNwYWNlICAgIGh0dHA6Ly90YW1wZXJtb25rZXkubmV0L1xuLy8gQHZlcnNpb24gICAgICAwLjguMFxuLy8gQGRlc2NyaXB0aW9uICDmm7/mjaLmlL/msrvnm7jlhbPmnaHluYXkuLrnpL7kvJrkuLvkuYnmoLjlv4Pku7flgLzop4LvvIzmm7/mjaLmlL/msrvnm7jlhbMgTG9nbyDpopzoibLkuLrkuK3lm73nuqLvvIzljrvpmaTmlL/msrvnm7jlhbPpgJrnn6XvvIzorqnmioDmnK/ov5znprvmlL/msrvjgIJcbi8vIEBhdXRob3IgICAgICAgZHVhbmx1YW5cbi8vIEBsaWNlbnNlICAgICAgQXBhY2hlIDIuMFxuLy8gQG1hdGNoICAgICAgICAqOi8vcmVhY3Rqcy5vcmcvKlxuLy8gQG1hdGNoICAgICAgICAqOi8vYW5ndWxhci5pby8qXG4vLyBAbWF0Y2ggICAgICAgICo6Ly9qdW5pdC5vcmcvKlxuLy8gQG1hdGNoICAgICAgICAqOi8vY29kZWNlcHQuaW8vKlxuLy8gQG1hdGNoICAgICAgICAqOi8vZ2l0aHViLmNvbS8qXG4vLyBAbWF0Y2ggICAgICAgICo6Ly9kb2NzLm5lc3Rqcy5jb20vKlxuLy8gQG1hdGNoICAgICAgICAqOi8vZW1iZXJqcy5jb20vKlxuLy8gQG1hdGNoICAgICAgICAqOi8vd3d3LmVsZWN0cm9uanMub3JnLypcbi8vIEBtYXRjaCAgICAgICAgKjovL3d3dy5qZW5raW5zLmlvLypcbi8vIEBpY29uICAgICAgICAgPCRJQ09OJD5cbi8vIEByZXF1aXJlICAgICAgaHR0cHM6Ly9jZG4uYm9vdGNkbi5uZXQvYWpheC9saWJzL2pxdWVyeS8zLjYuMC9qcXVlcnkuc2xpbS5taW4uanNcbi8vIEBncmFudCAgICAgICAgbm9uZVxuLy8gPT0vVXNlclNjcmlwdD09XG4iXSwibmFtZXMiOlsiSnVuaXQiLCJsb2NhdGlvbiIsImhyZWYiLCIkIiwidGhpcyIsInNlbGVjdG9ycyIsImp1bml0QWJvdXQiLCJwcmV2QWxsIiwicmVtb3ZlIiwianVuaXRMb2dvIiwiYXR0ciIsImp1bml0TG9nb1VybCIsImp1bml0RmF2aWNvbiIsInJlYWN0QmFyIiwiY29kZWNlcHRCYXIiLCJCYXIiLCJzZWxlY3RvciIsIm9ic2VydmluZ1NlbGVjdG9yIiwidGV4dCIsIm1hdGNoIiwibG9vcFJlcGxhY2VCYXIiLCJNdXRhdGlvbk9ic2VydmVyIiwibXV0YXRpb25zIiwib2JzZXJ2ZXIiLCJvYnNlcnZlIiwiY2hpbGRMaXN0IiwicmVwbGFjZSIsInR4dCIsImlzU3RvcCIsInNldEludGVydmFsIiwiY2xlYXJJbnRlcnZhbCIsInJlcGxhY2VCYXIiLCJiYXJTZWxlY3RvciIsImJhclVsU2VsZWN0b3IiLCJjc3MiLCJodG1sIiwiJGJhciIsImxlbmd0aCIsImVxIiwiUmVhY3QiLCJob3N0IiwiYmFyIiwib2JzZXJ2aW5nQmFyIiwiQW5ndWxhciIsImxvY2FsU3RvcmFnZSIsImdldEl0ZW0iLCJ0b0xvd2VyQ2FzZSIsImluZGV4T2YiLCJkaXNtaXNzTm90aWZpY2F0aW9uQnRuIiwiY2xpY2siLCJDb2RlY2VwdCIsIkdpdGh1YiIsIiRub3RpY2UiLCJub3RpY2UiLCJFbWJlciIsIkVsZWN0cm9uIiwibG9nbyIsInJlcGxhY2VXaXRoIiwicGFnZVRpdGxlIiwibmV4dEFsbCIsImVhY2giLCJpIiwiZWwiLCIkZWwiLCJwYXJlbnQiLCJhcHBlbmQiLCJOZXN0IiwiSmVua2lucyJdLCJzb3VyY2VSb290IjoiIn0=