Jump to content

User:Eejit43/scripts/sync-redirect.js

From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
// <nowiki>
// Note: This script was compiled and minified from TypeScript. For a more readable version, see https://github.com/Eejit43/wikipedia-scripts/blob/main/scripts/sync-redirect.ts

"use strict";(()=>{mw.loader.using(["mediawiki.util"],async()=>{if(!mw.Title.isTalkNamespace(mw.config.get("wgNamespaceNumber")))return;let r=await new mw.Api().get({action:"query",formatversion:"2",prop:["info","revisions"],rvprop:"content",rvslots:"main",titles:`${mw.config.get("wgFormattedNamespaces")[mw.config.get("wgNamespaceNumber")-1]}:${mw.config.get("wgTitle")}`});if(!r.query.pages[0].redirect)return;mw.util.addPortletLink(mw.config.get("skin")==="minerva"?"p-tb":"p-cactions","#","Sync with main page redirect","sync-redirect").addEventListener("click",async g=>{g.preventDefault(),mw.notify("Editing...",{tag:"sync-redirect-notification"});let a=r.query.pages[0].revisions[0].slots.main.content,n=/#redirect:? *\[\[(.+)]]/i.exec(a)?.[1].replaceAll("_"," ").split("|")[0].split("#")[0].trim();if(!n)return mw.notify("Failed to parse redirect target!",{type:"error",tag:"sync-redirect-notification"});let o=new DOMParser().parseFromString(n,"text/html").documentElement.textContent;if(!o)return mw.notify("Failed to parse redirect target!",{type:"error",tag:"sync-redirect-notification"});let i=mw.Title.newFromText(o);if(!i)return mw.notify("Failed to parse redirect target!",{type:"error",tag:"sync-redirect-notification"});let e=i.getMainText(),s=/{{ *r(edirect)?( from)?(( a)? page)? (move|rename|pm) *}}/i.test(a),t=mw.config.get("wgFormattedNamespaces")[i.getNamespaceId()+1];await new mw.Api().edit(mw.config.get("wgPageName"),()=>({text:`#REDIRECT [[${t}:${e}]]${s?`

{{Redirect category shell|
{{R from move}}
}}`:""}`,summary:`Sync redirect with main page, to [[${t}:${e}]] (via [[User:Eejit43/scripts/sync-redirect|script]])`,minor:!0})).catch(async(m,p)=>{m==="nocreate-missing"?await new mw.Api().create(mw.config.get("wgPageName"),{summary:`Create redirect matching main page, to [[${t}:${e}]] (via [[User:Eejit43/scripts/sync-redirect|script]])`},`#REDIRECT [[${t}:${e}]]${s?`

{{Redirect category shell|
{{R from move}}
}}`:""}`).catch((d,w)=>{mw.notify(`Failed to redirect page: ${w?.error?.info??"Unknown error"} (${d})`,{type:"error",tag:"sync-redirect-notification"})}):mw.notify(`Failed to redirect page: ${p?.error?.info??"Unknown error"} (${m})`,{type:"error",tag:"sync-redirect-notification"})}),mw.notify("Successfully redirected page, reloading...",{type:"success",tag:"sync-redirect-notification"});let c=new URL(window.location.href);c.searchParams.set("redirect","no"),window.location.href=c.href})});})();

// </nowiki>
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc2NyaXB0cy9zeW5jLXJlZGlyZWN0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgdHlwZSB7IEFwaVF1ZXJ5SW5mb1BhcmFtcywgQXBpUXVlcnlSZXZpc2lvbnNQYXJhbXMgfSBmcm9tICd0eXBlcy1tZWRpYXdpa2kvYXBpX3BhcmFtcyc7XG5pbXBvcnQgdHlwZSB7IE1lZGlhV2lraURhdGFFcnJvciwgUGFnZVJldmlzaW9uc1Jlc3VsdCB9IGZyb20gJy4uL2dsb2JhbC10eXBlcyc7XG5cbm13LmxvYWRlci51c2luZyhbJ21lZGlhd2lraS51dGlsJ10sIGFzeW5jICgpID0+IHtcbiAgICBpZiAoIW13LlRpdGxlLmlzVGFsa05hbWVzcGFjZShtdy5jb25maWcuZ2V0KCd3Z05hbWVzcGFjZU51bWJlcicpKSkgcmV0dXJuO1xuICAgIGNvbnN0IG1haW5QYWdlSW5mb1JldmlzaW9ucyA9IChhd2FpdCBuZXcgbXcuQXBpKCkuZ2V0KHtcbiAgICAgICAgYWN0aW9uOiAncXVlcnknLFxuICAgICAgICBmb3JtYXR2ZXJzaW9uOiAnMicsXG4gICAgICAgIHByb3A6IFsnaW5mbycsICdyZXZpc2lvbnMnXSxcbiAgICAgICAgcnZwcm9wOiAnY29udGVudCcsXG4gICAgICAgIHJ2c2xvdHM6ICdtYWluJyxcbiAgICAgICAgdGl0bGVzOiBgJHttdy5jb25maWcuZ2V0KCd3Z0Zvcm1hdHRlZE5hbWVzcGFjZXMnKVttdy5jb25maWcuZ2V0KCd3Z05hbWVzcGFjZU51bWJlcicpIC0gMV19OiR7bXcuY29uZmlnLmdldCgnd2dUaXRsZScpfWAsXG4gICAgfSBzYXRpc2ZpZXMgQXBpUXVlcnlJbmZvUGFyYW1zICYgQXBpUXVlcnlSZXZpc2lvbnNQYXJhbXMpKSBhcyBQYWdlUmV2aXNpb25zUmVzdWx0ICYgeyBxdWVyeTogeyBwYWdlczogeyByZWRpcmVjdD86IGJvb2xlYW4gfVtdIH0gfTtcbiAgICBpZiAoIW1haW5QYWdlSW5mb1JldmlzaW9ucy5xdWVyeS5wYWdlc1swXS5yZWRpcmVjdCkgcmV0dXJuO1xuXG4gICAgY29uc3QgbGluayA9IG13LnV0aWwuYWRkUG9ydGxldExpbmsoXG4gICAgICAgIG13LmNvbmZpZy5nZXQoJ3NraW4nKSA9PT0gJ21pbmVydmEnID8gJ3AtdGInIDogJ3AtY2FjdGlvbnMnLFxuICAgICAgICAnIycsXG4gICAgICAgICdTeW5jIHdpdGggbWFpbiBwYWdlIHJlZGlyZWN0JyxcbiAgICAgICAgJ3N5bmMtcmVkaXJlY3QnLFxuICAgICkhO1xuXG4gICAgbGluay5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGFzeW5jIChldmVudCkgPT4ge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIG13Lm5vdGlmeSgnRWRpdGluZy4uLicsIHsgdGFnOiAnc3luYy1yZWRpcmVjdC1ub3RpZmljYXRpb24nIH0pO1xuXG4gICAgICAgIGNvbnN0IG1haW5QYWdlQ29udGVudDogc3RyaW5nID0gbWFpblBhZ2VJbmZvUmV2aXNpb25zLnF1ZXJ5LnBhZ2VzWzBdLnJldmlzaW9uc1swXS5zbG90cy5tYWluLmNvbnRlbnQ7XG5cbiAgICAgICAgY29uc3QgcmVkaXJlY3RUYXJnZXQgPSAvI3JlZGlyZWN0Oj8gKlxcW1xcWyguKyldXS9pXG4gICAgICAgICAgICAuZXhlYyhtYWluUGFnZUNvbnRlbnQpPy5bMV1cbiAgICAgICAgICAgIC5yZXBsYWNlQWxsKCdfJywgJyAnKVxuICAgICAgICAgICAgLnNwbGl0KCd8JylbMF1cbiAgICAgICAgICAgIC5zcGxpdCgnIycpWzBdXG4gICAgICAgICAgICAudHJpbSgpO1xuICAgICAgICBpZiAoIXJlZGlyZWN0VGFyZ2V0KSByZXR1cm4gbXcubm90aWZ5KCdGYWlsZWQgdG8gcGFyc2UgcmVkaXJlY3QgdGFyZ2V0IScsIHsgdHlwZTogJ2Vycm9yJywgdGFnOiAnc3luYy1yZWRpcmVjdC1ub3RpZmljYXRpb24nIH0pO1xuXG4gICAgICAgIGNvbnN0IHJlZGlyZWN0VGFyZ2V0UGFyc2VkID0gbmV3IERPTVBhcnNlcigpLnBhcnNlRnJvbVN0cmluZyhyZWRpcmVjdFRhcmdldCwgJ3RleHQvaHRtbCcpLmRvY3VtZW50RWxlbWVudC50ZXh0Q29udGVudDtcbiAgICAgICAgaWYgKCFyZWRpcmVjdFRhcmdldFBhcnNlZClcbiAgICAgICAgICAgIHJldHVybiBtdy5ub3RpZnkoJ0ZhaWxlZCB0byBwYXJzZSByZWRpcmVjdCB0YXJnZXQhJywgeyB0eXBlOiAnZXJyb3InLCB0YWc6ICdzeW5jLXJlZGlyZWN0LW5vdGlmaWNhdGlvbicgfSk7XG5cbiAgICAgICAgY29uc3QgbXdSZWRpcmVjdFRhcmdldCA9IG13LlRpdGxlLm5ld0Zyb21UZXh0KHJlZGlyZWN0VGFyZ2V0UGFyc2VkKTtcbiAgICAgICAgaWYgKCFtd1JlZGlyZWN0VGFyZ2V0KSByZXR1cm4gbXcubm90aWZ5KCdGYWlsZWQgdG8gcGFyc2UgcmVkaXJlY3QgdGFyZ2V0IScsIHsgdHlwZTogJ2Vycm9yJywgdGFnOiAnc3luYy1yZWRpcmVjdC1ub3RpZmljYXRpb24nIH0pO1xuXG4gICAgICAgIGNvbnN0IG1haW5UYXJnZXRUZXh0ID0gbXdSZWRpcmVjdFRhcmdldC5nZXRNYWluVGV4dCgpO1xuXG4gICAgICAgIGNvbnN0IHBhZ2VNb3ZlID0gL3t7ICpyKGVkaXJlY3QpPyggZnJvbSk/KCggYSk/IHBhZ2UpPyAobW92ZXxyZW5hbWV8cG0pICp9fS9pLnRlc3QobWFpblBhZ2VDb250ZW50KTtcbiAgICAgICAgY29uc3QgZGVzdGluYXRpb25UYWxrTmFtZXNwYWNlTmFtZSA9IG13LmNvbmZpZy5nZXQoJ3dnRm9ybWF0dGVkTmFtZXNwYWNlcycpW213UmVkaXJlY3RUYXJnZXQuZ2V0TmFtZXNwYWNlSWQoKSArIDFdO1xuICAgICAgICBhd2FpdCBuZXcgbXcuQXBpKClcbiAgICAgICAgICAgIC5lZGl0KG13LmNvbmZpZy5nZXQoJ3dnUGFnZU5hbWUnKSwgKCkgPT4gKHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBgI1JFRElSRUNUIFtbJHtkZXN0aW5hdGlvblRhbGtOYW1lc3BhY2VOYW1lfToke21haW5UYXJnZXRUZXh0fV1dJHtwYWdlTW92ZSA/ICdcXG5cXG57e1JlZGlyZWN0IGNhdGVnb3J5IHNoZWxsfFxcbnt7UiBmcm9tIG1vdmV9fVxcbn19JyA6ICcnfWAsXG4gICAgICAgICAgICAgICAgc3VtbWFyeTogYFN5bmMgcmVkaXJlY3Qgd2l0aCBtYWluIHBhZ2UsIHRvIFtbJHtkZXN0aW5hdGlvblRhbGtOYW1lc3BhY2VOYW1lfToke21haW5UYXJnZXRUZXh0fV1dICh2aWEgW1tVc2VyOkVlaml0NDMvc2NyaXB0cy9zeW5jLXJlZGlyZWN0fHNjcmlwdF1dKWAsXG4gICAgICAgICAgICAgICAgbWlub3I6IHRydWUsXG4gICAgICAgICAgICB9KSlcbiAgICAgICAgICAgIC5jYXRjaChhc3luYyAoZXJyb3JDb2RlLCBlcnJvckluZm8pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyb3JDb2RlID09PSAnbm9jcmVhdGUtbWlzc2luZycpXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IG5ldyBtdy5BcGkoKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmNyZWF0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdy5jb25maWcuZ2V0KCd3Z1BhZ2VOYW1lJyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdW1tYXJ5OiBgQ3JlYXRlIHJlZGlyZWN0IG1hdGNoaW5nIG1haW4gcGFnZSwgdG8gW1ske2Rlc3RpbmF0aW9uVGFsa05hbWVzcGFjZU5hbWV9OiR7bWFpblRhcmdldFRleHR9XV0gKHZpYSBbW1VzZXI6RWVqaXQ0My9zY3JpcHRzL3N5bmMtcmVkaXJlY3R8c2NyaXB0XV0pYCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAjUkVESVJFQ1QgW1ske2Rlc3RpbmF0aW9uVGFsa05hbWVzcGFjZU5hbWV9OiR7bWFpblRhcmdldFRleHR9XV0ke3BhZ2VNb3ZlID8gJ1xcblxcbnt7UmVkaXJlY3QgY2F0ZWdvcnkgc2hlbGx8XFxue3tSIGZyb20gbW92ZX19XFxufX0nIDogJyd9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3JDb2RlLCBlcnJvckluZm8pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdy5ub3RpZnkoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBGYWlsZWQgdG8gcmVkaXJlY3QgcGFnZTogJHsoZXJyb3JJbmZvIGFzIE1lZGlhV2lraURhdGFFcnJvcik/LmVycm9yPy5pbmZvID8/ICdVbmtub3duIGVycm9yJ30gKCR7ZXJyb3JDb2RlfSlgLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnOiAnc3luYy1yZWRpcmVjdC1ub3RpZmljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIG13Lm5vdGlmeShcbiAgICAgICAgICAgICAgICAgICAgICAgIGBGYWlsZWQgdG8gcmVkaXJlY3QgcGFnZTogJHsoZXJyb3JJbmZvIGFzIE1lZGlhV2lraURhdGFFcnJvcik/LmVycm9yPy5pbmZvID8/ICdVbmtub3duIGVycm9yJ30gKCR7ZXJyb3JDb2RlfSlgLFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnOiAnc3luYy1yZWRpcmVjdC1ub3RpZmljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIG13Lm5vdGlmeSgnU3VjY2Vzc2Z1bGx5IHJlZGlyZWN0ZWQgcGFnZSwgcmVsb2FkaW5nLi4uJywgeyB0eXBlOiAnc3VjY2VzcycsIHRhZzogJ3N5bmMtcmVkaXJlY3Qtbm90aWZpY2F0aW9uJyB9KTtcblxuICAgICAgICBjb25zdCBuZXdVcmwgPSBuZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcbiAgICAgICAgbmV3VXJsLnNlYXJjaFBhcmFtcy5zZXQoJ3JlZGlyZWN0JywgJ25vJyk7XG5cbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBuZXdVcmwuaHJlZjtcbiAgICB9KTtcbn0pO1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7O21CQUdBLEdBQUcsT0FBTyxNQUFNLENBQUMsZ0JBQWdCLEVBQUcsU0FBWSxDQUM1QyxHQUFJLENBQUMsR0FBRyxNQUFNLGdCQUFnQixHQUFHLE9BQU8sSUFBSSxtQkFBbUIsQ0FBQyxFQUFHLE9BQ25FLElBQU1BLEVBQXlCLE1BQU0sSUFBSSxHQUFHLElBQUksRUFBRSxJQUFJLENBQ2xELE9BQVEsUUFDUixjQUFlLElBQ2YsS0FBTSxDQUFDLE9BQVEsV0FBVyxFQUMxQixPQUFRLFVBQ1IsUUFBUyxPQUNULE9BQVEsR0FBRyxHQUFHLE9BQU8sSUFBSSx1QkFBdUIsRUFBRSxHQUFHLE9BQU8sSUFBSSxtQkFBbUIsRUFBSSxDQUFDLENBQUMsSUFBSSxHQUFHLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFDekgsQ0FBd0QsRUFDeEQsR0FBSSxDQUFDQSxFQUFzQixNQUFNLE1BQU0sQ0FBQyxFQUFFLFNBQVUsT0FFdkMsR0FBRyxLQUFLLGVBQ2pCLEdBQUcsT0FBTyxJQUFJLE1BQU0sSUFBTSxVQUFZLE9BQVMsYUFDL0MsSUFDQSwrQkFDQSxlQUNKLEVBRUssaUJBQWlCLFFBQVMsTUFBT0MsR0FBVSxDQUM1Q0EsRUFBTSxlQUFlLEVBRXJCLEdBQUcsT0FBTyxhQUFjLENBQUUsSUFBSyw0QkFBNkIsQ0FBQyxFQUU3RCxJQUFNQyxFQUEwQkYsRUFBc0IsTUFBTSxNQUFNLENBQUMsRUFBRSxVQUFVLENBQUMsRUFBRSxNQUFNLEtBQUssUUFFdkZHLEVBQWlCLDJCQUNsQixLQUFLRCxDQUFlLElBQUksQ0FBQyxFQUN6QixXQUFXLElBQUssR0FBRyxFQUNuQixNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQ1osTUFBTSxHQUFHLEVBQUUsQ0FBQyxFQUNaLEtBQUssRUFDVixHQUFJLENBQUNDLEVBQWdCLE9BQU8sR0FBRyxPQUFPLG1DQUFvQyxDQUFFLEtBQU0sUUFBUyxJQUFLLDRCQUE2QixDQUFDLEVBRTlILElBQU1DLEVBQXVCLElBQUksVUFBVSxFQUFFLGdCQUFnQkQsRUFBZ0IsV0FBVyxFQUFFLGdCQUFnQixZQUMxRyxHQUFJLENBQUNDLEVBQ0QsT0FBTyxHQUFHLE9BQU8sbUNBQW9DLENBQUUsS0FBTSxRQUFTLElBQUssNEJBQTZCLENBQUMsRUFFN0csSUFBTUMsRUFBbUIsR0FBRyxNQUFNLFlBQVlELENBQW9CLEVBQ2xFLEdBQUksQ0FBQ0MsRUFBa0IsT0FBTyxHQUFHLE9BQU8sbUNBQW9DLENBQUUsS0FBTSxRQUFTLElBQUssNEJBQTZCLENBQUMsRUFFaEksSUFBTUMsRUFBaUJELEVBQWlCLFlBQVksRUFFOUNFLEVBQVcsNkRBQTZELEtBQUtMLENBQWUsRUFDNUZNLEVBQStCLEdBQUcsT0FBTyxJQUFJLHVCQUF1QixFQUFFSCxFQUFpQixlQUFlLEVBQUksQ0FBQyxFQUNqSCxNQUFNLElBQUksR0FBRyxJQUFJLEVBQ1osS0FBSyxHQUFHLE9BQU8sSUFBSSxZQUFZLEVBQUcsS0FBTyxDQUN0QyxLQUFNLGVBQWVHLENBQTRCLElBQUlGLENBQWMsS0FBS0MsRUFBVztBQUFBO0FBQUE7QUFBQTtBQUFBLElBQXdELEVBQUUsR0FDN0ksUUFBUyxzQ0FBc0NDLENBQTRCLElBQUlGLENBQWMseURBQzdGLE1BQU8sRUFDWCxFQUFFLEVBQ0QsTUFBTSxNQUFPRyxFQUFXQyxJQUFjLENBQy9CRCxJQUFjLG1CQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksRUFDWixPQUNHLEdBQUcsT0FBTyxJQUFJLFlBQVksRUFDMUIsQ0FDSSxRQUFTLDRDQUE0Q0QsQ0FBNEIsSUFBSUYsQ0FBYyx3REFDdkcsRUFDQSxlQUFlRSxDQUE0QixJQUFJRixDQUFjLEtBQUtDLEVBQVc7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQUF3RCxFQUFFLEVBQzNJLEVBQ0MsTUFBTSxDQUFDRSxFQUFXQyxJQUFjLENBQzdCLEdBQUcsT0FDQyw0QkFBNkJBLEdBQWtDLE9BQU8sTUFBUSxlQUFlLEtBQUtELENBQVMsSUFDM0csQ0FDSSxLQUFNLFFBQ04sSUFBSyw0QkFDVCxDQUNKLENBQ0osQ0FBQyxFQUVMLEdBQUcsT0FDQyw0QkFBNkJDLEdBQWtDLE9BQU8sTUFBUSxlQUFlLEtBQUtELENBQVMsSUFDM0csQ0FDSSxLQUFNLFFBQ04sSUFBSyw0QkFDVCxDQUNKLENBQ1IsQ0FBQyxFQUVMLEdBQUcsT0FBTyw2Q0FBOEMsQ0FBRSxLQUFNLFVBQVcsSUFBSyw0QkFBNkIsQ0FBQyxFQUU5RyxJQUFNRSxFQUFTLElBQUksSUFBSSxPQUFPLFNBQVMsSUFBSSxFQUMzQ0EsRUFBTyxhQUFhLElBQUksV0FBWSxJQUFJLEVBRXhDLE9BQU8sU0FBUyxLQUFPQSxFQUFPLElBQ2xDLENBQUMsQ0FDTCxDQUFDIiwKICAibmFtZXMiOiBbIm1haW5QYWdlSW5mb1JldmlzaW9ucyIsICJldmVudCIsICJtYWluUGFnZUNvbnRlbnQiLCAicmVkaXJlY3RUYXJnZXQiLCAicmVkaXJlY3RUYXJnZXRQYXJzZWQiLCAibXdSZWRpcmVjdFRhcmdldCIsICJtYWluVGFyZ2V0VGV4dCIsICJwYWdlTW92ZSIsICJkZXN0aW5hdGlvblRhbGtOYW1lc3BhY2VOYW1lIiwgImVycm9yQ29kZSIsICJlcnJvckluZm8iLCAibmV3VXJsIl0KfQo=