@blinkk/root-cms 1.3.6 → 1.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/app.js CHANGED
@@ -8,7 +8,9 @@ var __dirname = path.dirname(fileURLToPath(import.meta.url));
8
8
  function App(props) {
9
9
  return /* @__PURE__ */ jsxs("html", { children: [
10
10
  /* @__PURE__ */ jsxs("head", { children: [
11
+ /* @__PURE__ */ jsx("meta", { charset: "utf-8" }),
11
12
  /* @__PURE__ */ jsx("title", { children: props.title }),
13
+ /* @__PURE__ */ jsx("meta", { name: "robots", content: "noindex" }),
12
14
  /* @__PURE__ */ jsx("link", { rel: "preconnect", href: "https://fonts.googleapis.com" }),
13
15
  /* @__PURE__ */ jsx(
14
16
  "link",
@@ -133,6 +135,7 @@ function SignIn(props) {
133
135
  /* @__PURE__ */ jsxs("head", { children: [
134
136
  /* @__PURE__ */ jsx("meta", { charset: "utf-8" }),
135
137
  /* @__PURE__ */ jsx("title", { children: props.title }),
138
+ /* @__PURE__ */ jsx("meta", { name: "robots", content: "noindex" }),
136
139
  /* @__PURE__ */ jsx("link", { rel: "preconnect", href: "https://fonts.googleapis.com" }),
137
140
  /* @__PURE__ */ jsx("meta", { name: "viewport", content: "width=device-width, initial-scale=1.0" }),
138
141
  /* @__PURE__ */ jsx(
@@ -202,6 +205,7 @@ ${mainHtml}`;
202
205
  }
203
206
  res.setHeader("Content-Type", "text/html");
204
207
  setSecurityHeaders(options, req, res, nonce);
208
+ res.status(403);
205
209
  res.send(html);
206
210
  }
207
211
  function generateNonce() {
@@ -247,4 +251,4 @@ export {
247
251
  renderApp,
248
252
  renderSignIn
249
253
  };
250
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vY29yZS9hcHAudHN4Il0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgY3J5cHRvIGZyb20gJ25vZGU6Y3J5cHRvJztcbmltcG9ydCBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQge2ZpbGVVUkxUb1BhdGh9IGZyb20gJ25vZGU6dXJsJztcbmltcG9ydCB7UmVxdWVzdCwgUmVzcG9uc2UsIFJvb3RDb25maWd9IGZyb20gJ0BibGlua2svcm9vdCc7XG5pbXBvcnQge3JlbmRlciBhcyByZW5kZXJUb1N0cmluZ30gZnJvbSAncHJlYWN0LXJlbmRlci10by1zdHJpbmcnO1xuaW1wb3J0IHtDTVNQbHVnaW5PcHRpb25zfSBmcm9tICcuL3BsdWdpbi5qcyc7XG5pbXBvcnQge0NvbGxlY3Rpb259IGZyb20gJy4vc2NoZW1hLmpzJztcblxuY29uc3QgX19kaXJuYW1lID0gcGF0aC5kaXJuYW1lKGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKSk7XG5cbmludGVyZmFjZSBBcHBQcm9wcyB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGN0eDogYW55O1xufVxuXG5mdW5jdGlvbiBBcHAocHJvcHM6IEFwcFByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWw+XG4gICAgICA8aGVhZD5cbiAgICAgICAgPHRpdGxlPntwcm9wcy50aXRsZX08L3RpdGxlPlxuICAgICAgICA8bGluayByZWw9XCJwcmVjb25uZWN0XCIgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb21cIiAvPlxuICAgICAgICA8bGlua1xuICAgICAgICAgIHJlbD1cInByZWNvbm5lY3RcIlxuICAgICAgICAgIGhyZWY9XCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tXCJcbiAgICAgICAgICBjcm9zc09yaWdpbj1cImFub255bW91c1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxsaW5rXG4gICAgICAgICAgcmVsPVwic3R5bGVzaGVldFwiXG4gICAgICAgICAgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9SW50ZXI6d2dodEAzMDA7NDAwOzUwMDs2MDA7NzAwOzkwMCZkaXNwbGF5PXN3YXBcIlxuICAgICAgICAgIG5vbmNlPVwie05PTkNFfVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxsaW5rXG4gICAgICAgICAgcmVsPVwic3R5bGVzaGVldFwiXG4gICAgICAgICAgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9R29vZ2xlK1NhbnM6d2dodEA1MDAmZGlzcGxheT1zd2FwXCJcbiAgICAgICAgICBub25jZT1cIntOT05DRX1cIlxuICAgICAgICAvPlxuICAgICAgICA8bGlua1xuICAgICAgICAgIHJlbD1cImljb25cIlxuICAgICAgICAgIGhyZWY9XCJodHRwczovL2xoMy5nb29nbGV1c2VyY29udGVudC5jb20vaWpLNTBUZlFsVl95SnczaS1DTWxuRDZvc0g0UGJvWkJJTFpySmNXaG9OTUVtb3lDRDVlMWJBeFhiYU9QZTV3NGdHX1NjZjM3RVhybVo2cDhzUDJsdWU1ZkxaNDE5bTVKeUxNcz1lMzg1LXcyNTZcIlxuICAgICAgICAgIHR5cGU9XCJpbWFnZS9wbmdcIlxuICAgICAgICAvPlxuICAgICAgICA8bGlua1xuICAgICAgICAgIHJlbD1cInN0eWxlc2hlZXRcIlxuICAgICAgICAgIGhyZWY9XCJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9oaWdobGlnaHQuanMvMTEuNi4wL3N0eWxlcy9hdG9tLW9uZS1saWdodC5taW4uY3NzXCJcbiAgICAgICAgICBub25jZT1cIntOT05DRX1cIlxuICAgICAgICAvPlxuICAgICAgICA8bGluayByZWw9XCJzdHlsZXNoZWV0XCIgaHJlZj1cIntDU1NfVVJMfVwiIG5vbmNlPVwie05PTkNFfVwiIC8+XG4gICAgICA8L2hlYWQ+XG4gICAgICA8Ym9keT5cbiAgICAgICAgPGRpdiBpZD1cInJvb3RcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJvb3RzdHJhcFwiPlxuICAgICAgICAgICAgPGgxIGNsYXNzTmFtZT1cImJvb3RzdHJhcF9fbG9hZGluZ1wiPkxvYWRpbmcuLi48L2gxPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib290c3RyYXAtZXJyb3JcIj5cbiAgICAgICAgICAgICAgSWYgdGhpcyBwYWdlIGZhaWxzIHRvIGxvYWQsIHRyeSBhIGZvcmNlIHJlZnJlc2ggYnkgaG9sZGluZyB0aGVcbiAgICAgICAgICAgICAgc2hpZnQga2V5IHdoaWxlIHJlZnJlc2hpbmcgdGhlIHBhZ2UuXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzY3JpcHRcbiAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17e1xuICAgICAgICAgICAgX19odG1sOiBgd2luZG93Ll9fUk9PVF9DVFggPSAke0pTT04uc3RyaW5naWZ5KHByb3BzLmN0eCl9YCxcbiAgICAgICAgICB9fVxuICAgICAgICAgIG5vbmNlPVwie05PTkNFfVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzY3JpcHQgdHlwZT1cIm1vZHVsZVwiIHNyYz1cIntKU19VUkx9XCIgbm9uY2U9XCJ7Tk9OQ0V9XCI+PC9zY3JpcHQ+XG4gICAgICA8L2JvZHk+XG4gICAgPC9odG1sPlxuICApO1xufVxuXG5pbnRlcmZhY2UgUmVuZGVyT3B0aW9ucyB7XG4gIHJvb3RDb25maWc6IFJvb3RDb25maWc7XG4gIGNtc0NvbmZpZzogQ01TUGx1Z2luT3B0aW9ucztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlbmRlckFwcChcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXM6IFJlc3BvbnNlLFxuICBvcHRpb25zOiBSZW5kZXJPcHRpb25zXG4pIHtcbiAgY29uc3QgY29sbGVjdGlvbk1vZHVsZXMgPSBpbXBvcnQubWV0YS5nbG9iKCcvY29sbGVjdGlvbnMvKi5zY2hlbWEudHMnLCB7XG4gICAgZWFnZXI6IHRydWUsXG4gIH0pIGFzIGFueTtcbiAgY29uc3QgY29sbGVjdGlvbnM6IFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb24+ID0ge307XG4gIE9iamVjdC5rZXlzKGNvbGxlY3Rpb25Nb2R1bGVzKS5mb3JFYWNoKChtb2R1bGVJZDogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgY29sbGVjdGlvbklkID0gcGF0aC5wYXJzZShtb2R1bGVJZCkuYmFzZS5zcGxpdCgnLicpWzBdO1xuICAgIGNvbnN0IG1vZHVsZSA9IGNvbGxlY3Rpb25Nb2R1bGVzW21vZHVsZUlkXTtcbiAgICBjb25zdCBjb2xsZWN0aW9uID0gbW9kdWxlLmRlZmF1bHQgYXMgQ29sbGVjdGlvbjtcbiAgICBjb2xsZWN0aW9uc1tjb2xsZWN0aW9uSWRdID0gY29sbGVjdGlvbjtcbiAgfSk7XG4gIGNvbnN0IHJvb3RDb25maWcgPSBvcHRpb25zLnJvb3RDb25maWcgfHwge307XG4gIGNvbnN0IGNtc0NvbmZpZyA9IG9wdGlvbnMuY21zQ29uZmlnIHx8IHt9O1xuICBsZXQgZ2NpID0gY21zQ29uZmlnLmdjaTtcbiAgaWYgKGdjaSA9PT0gdHJ1ZSkge1xuICAgIGdjaSA9ICdodHRwczovL2djaS5yb290anMuZGV2JztcbiAgfVxuICBjb25zdCBjdHggPSB7XG4gICAgcm9vdENvbmZpZzoge1xuICAgICAgcHJvamVjdElkOiBjbXNDb25maWcuaWQgfHwgJ2RlZmF1bHQnLFxuICAgICAgcHJvamVjdE5hbWU6IGNtc0NvbmZpZy5uYW1lIHx8IGNtc0NvbmZpZy5pZCB8fCAnJyxcbiAgICAgIGRvbWFpbjogcm9vdENvbmZpZy5kb21haW4gfHwgJ2h0dHBzOi8vZXhhbXBsZS5jb20nLFxuICAgICAgYmFzZTogcm9vdENvbmZpZy5iYXNlIHx8ICcvJyxcbiAgICAgIGdjaTogZ2NpLFxuICAgICAgaTE4bjogcm9vdENvbmZpZy5pMThuLFxuICAgICAgc2VydmVyOiB7XG4gICAgICAgIHRyYWlsaW5nU2xhc2g6IHJvb3RDb25maWcuc2VydmVyPy50cmFpbGluZ1NsYXNoLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGZpcmViYXNlQ29uZmlnOiBjbXNDb25maWcuZmlyZWJhc2VDb25maWcsXG4gICAgZ2FwaTogY21zQ29uZmlnLmdhcGksXG4gICAgY29sbGVjdGlvbnM6IGNvbGxlY3Rpb25zLFxuICAgIHNpZGViYXI6IGNtc0NvbmZpZy5zaWRlYmFyLFxuICAgIGV4cGVyaW1lbnRzOiBjbXNDb25maWcuZXhwZXJpbWVudHMsXG4gIH07XG4gIGNvbnN0IHByb2plY3ROYW1lID0gY21zQ29uZmlnLm5hbWUgfHwgY21zQ29uZmlnLmlkIHx8ICcnO1xuICBjb25zdCB0aXRsZSA9IHByb2plY3ROYW1lID8gYCR7cHJvamVjdE5hbWV9IFx1MjAxMyBSb290IENNU2AgOiAnUm9vdCBDTVMnO1xuXG4gIGNvbnN0IG1haW5IdG1sID0gcmVuZGVyVG9TdHJpbmcoPEFwcCB0aXRsZT17dGl0bGV9IGN0eD17Y3R4fSAvPik7XG4gIGxldCBodG1sID0gYDwhZG9jdHlwZSBodG1sPlxcbiR7bWFpbkh0bWx9YDtcbiAgY29uc3Qgbm9uY2UgPSBnZW5lcmF0ZU5vbmNlKCk7XG4gIGlmIChyZXEudml0ZVNlcnZlcikge1xuICAgIGNvbnN0IHVpQ3NzUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICd1aS91aS5jc3MnKTtcbiAgICBjb25zdCB1aUpzUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICd1aS91aS5qcycpO1xuICAgIGNvbnN0IHRwbCA9IGh0bWxcbiAgICAgIC5yZXBsYWNlKCd7Q1NTX1VSTH0nLCBjYWNoZWJ1c3QoYC9AZnMke3VpQ3NzUGF0aH1gKSlcbiAgICAgIC5yZXBsYWNlKCd7SlNfVVJMfScsIGNhY2hlYnVzdChgL0BmcyR7dWlKc1BhdGh9YCkpXG4gICAgICAucmVwbGFjZUFsbCgne05PTkNFfScsIG5vbmNlKTtcbiAgICBodG1sID0gYXdhaXQgcmVxLnZpdGVTZXJ2ZXIhLnRyYW5zZm9ybUluZGV4SHRtbChyZXEub3JpZ2luYWxVcmwsIHRwbCk7XG4gICAgaHRtbCA9IGh0bWwucmVwbGFjZShcbiAgICAgICc8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCIvQHZpdGUvY2xpZW50XCI+PC9zY3JpcHQ+JyxcbiAgICAgIGA8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCIvQHZpdGUvY2xpZW50XCIgbm9uY2U9XCIke25vbmNlfVwiPjwvc2NyaXB0PmBcbiAgICApO1xuICB9IGVsc2Uge1xuICAgIGh0bWwgPSBodG1sXG4gICAgICAucmVwbGFjZSgne0NTU19VUkx9JywgY2FjaGVidXN0KCcvY21zL3N0YXRpYy91aS5jc3MnKSlcbiAgICAgIC5yZXBsYWNlKCd7SlNfVVJMfScsIGNhY2hlYnVzdCgnL2Ntcy9zdGF0aWMvdWkuanMnKSlcbiAgICAgIC5yZXBsYWNlQWxsKCd7Tk9OQ0V9Jywgbm9uY2UpO1xuICB9XG4gIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtVHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgc2V0U2VjdXJpdHlIZWFkZXJzKG9wdGlvbnMsIHJlcSwgcmVzLCBub25jZSk7XG4gIHJlcy5zZW5kKGh0bWwpO1xufVxuXG5pbnRlcmZhY2UgU2lnbkluUHJvcHMge1xuICB0aXRsZTogc3RyaW5nO1xuICBjdHg6IGFueTtcbn1cblxuZnVuY3Rpb24gU2lnbkluKHByb3BzOiBTaWduSW5Qcm9wcykge1xuICByZXR1cm4gKFxuICAgIDxodG1sPlxuICAgICAgPGhlYWQ+XG4gICAgICAgIDxtZXRhIGNoYXJzZXQ9XCJ1dGYtOFwiIC8+XG4gICAgICAgIDx0aXRsZT57cHJvcHMudGl0bGV9PC90aXRsZT5cbiAgICAgICAgPGxpbmsgcmVsPVwicHJlY29ubmVjdFwiIGhyZWY9XCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tXCIgLz5cbiAgICAgICAgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjBcIiAvPlxuICAgICAgICA8bGlua1xuICAgICAgICAgIHJlbD1cInByZWNvbm5lY3RcIlxuICAgICAgICAgIGhyZWY9XCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tXCJcbiAgICAgICAgICBjcm9zc09yaWdpbj1cImFub255bW91c1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxsaW5rXG4gICAgICAgICAgcmVsPVwic3R5bGVzaGVldFwiXG4gICAgICAgICAgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Hb29nbGUrU2Fuczo0MDAsNTAwJmRpc3BsYXk9c3dhcFwiXG4gICAgICAgICAgbm9uY2U9XCJ7Tk9OQ0V9XCJcbiAgICAgICAgLz5cbiAgICAgICAgPGxpbmtcbiAgICAgICAgICByZWw9XCJpY29uXCJcbiAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2lqSzUwVGZRbFZfeUp3M2ktQ01sbkQ2b3NINFBib1pCSUxackpjV2hvTk1FbW95Q0Q1ZTFiQXhYYmFPUGU1dzRnR19TY2YzN0VYcm1aNnA4c1AybHVlNWZMWjQxOW01SnlMTXM9ZTM4NS13MjU2XCJcbiAgICAgICAgICB0eXBlPVwiaW1hZ2UvcG5nXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGxpbmsgcmVsPVwic3R5bGVzaGVldFwiIGhyZWY9XCJ7Q1NTX1VSTH1cIiBub25jZT1cIntOT05DRX1cIiAvPlxuICAgICAgPC9oZWFkPlxuICAgICAgPGJvZHk+XG4gICAgICAgIDxkaXYgaWQ9XCJyb290XCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib290c3RyYXBcIj5cbiAgICAgICAgICAgIDxoMSBjbGFzc05hbWU9XCJib290c3RyYXBfX2xvYWRpbmdcIj5Mb2FkaW5nLi4uPC9oMT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm9vdHN0cmFwLWVycm9yXCI+XG4gICAgICAgICAgICAgIElmIHRoaXMgcGFnZSBmYWlscyB0byBsb2FkLCB0cnkgYSBmb3JjZSByZWZyZXNoIGJ5IGhvbGRpbmcgdGhlXG4gICAgICAgICAgICAgIHNoaWZ0IGtleSB3aGlsZSByZWZyZXNoaW5nIHRoZSBwYWdlLlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c2NyaXB0XG4gICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3tcbiAgICAgICAgICAgIF9faHRtbDogYHdpbmRvdy5fX1JPT1RfQ1RYID0gJHtKU09OLnN0cmluZ2lmeShwcm9wcy5jdHgpfWAsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBub25jZT1cIntOT05DRX1cIlxuICAgICAgICAvPlxuICAgICAgICA8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCJ7SlNfVVJMfVwiIG5vbmNlPVwie05PTkNFfVwiPjwvc2NyaXB0PlxuICAgICAgPC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZW5kZXJTaWduSW4oXG4gIHJlcTogUmVxdWVzdCxcbiAgcmVzOiBSZXNwb25zZSxcbiAgb3B0aW9uczogUmVuZGVyT3B0aW9uc1xuKSB7XG4gIGNvbnN0IGN0eCA9IHtcbiAgICBuYW1lOiBvcHRpb25zLmNtc0NvbmZpZy5uYW1lIHx8IG9wdGlvbnMuY21zQ29uZmlnLmlkIHx8ICcnLFxuICAgIGZpcmViYXNlQ29uZmlnOiBvcHRpb25zLmNtc0NvbmZpZy5maXJlYmFzZUNvbmZpZyxcbiAgfTtcbiAgY29uc3QgbWFpbkh0bWwgPSByZW5kZXJUb1N0cmluZyg8U2lnbkluIHRpdGxlPVwiU2lnbiBpblwiIGN0eD17Y3R4fSAvPik7XG4gIGxldCBodG1sID0gYDwhZG9jdHlwZSBodG1sPlxcbiR7bWFpbkh0bWx9YDtcbiAgY29uc3Qgbm9uY2UgPSBnZW5lcmF0ZU5vbmNlKCk7XG4gIGlmIChyZXEudml0ZVNlcnZlcikge1xuICAgIGNvbnN0IGNzc1BhdGggPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAndWkvc2lnbmluLmNzcycpO1xuICAgIGNvbnN0IGpzUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICd1aS9zaWduaW4uanMnKTtcbiAgICBjb25zdCB0cGwgPSBodG1sXG4gICAgICAucmVwbGFjZSgne0NTU19VUkx9JywgY2FjaGVidXN0KGAvQGZzJHtjc3NQYXRofWApKVxuICAgICAgLnJlcGxhY2UoJ3tKU19VUkx9JywgY2FjaGVidXN0KGAvQGZzJHtqc1BhdGh9YCkpXG4gICAgICAucmVwbGFjZUFsbCgne05PTkNFfScsIG5vbmNlKTtcbiAgICBodG1sID0gYXdhaXQgcmVxLnZpdGVTZXJ2ZXIhLnRyYW5zZm9ybUluZGV4SHRtbChyZXEub3JpZ2luYWxVcmwsIHRwbCk7XG4gICAgaHRtbCA9IGh0bWwucmVwbGFjZShcbiAgICAgICc8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCIvQHZpdGUvY2xpZW50XCI+PC9zY3JpcHQ+JyxcbiAgICAgIGA8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCIvQHZpdGUvY2xpZW50XCIgbm9uY2U9XCIke25vbmNlfVwiPjwvc2NyaXB0PmBcbiAgICApO1xuICB9IGVsc2Uge1xuICAgIGh0bWwgPSBodG1sXG4gICAgICAucmVwbGFjZSgne0NTU19VUkx9JywgY2FjaGVidXN0KCcvY21zL3N0YXRpYy9zaWduaW4uY3NzJykpXG4gICAgICAucmVwbGFjZSgne0pTX1VSTH0nLCBjYWNoZWJ1c3QoJy9jbXMvc3RhdGljL3NpZ25pbi5qcycpKVxuICAgICAgLnJlcGxhY2VBbGwoJ3tOT05DRX0nLCBub25jZSk7XG4gIH1cbiAgcmVzLnNldEhlYWRlcignQ29udGVudC1UeXBlJywgJ3RleHQvaHRtbCcpO1xuICBzZXRTZWN1cml0eUhlYWRlcnMob3B0aW9ucywgcmVxLCByZXMsIG5vbmNlKTtcbiAgcmVzLnNlbmQoaHRtbCk7XG59XG5cbmZ1bmN0aW9uIGdlbmVyYXRlTm9uY2UoKSB7XG4gIHJldHVybiBjcnlwdG8ucmFuZG9tQnl0ZXMoMTYpLnRvU3RyaW5nKCdiYXNlNjQnKTtcbn1cblxuZnVuY3Rpb24gc2V0U2VjdXJpdHlIZWFkZXJzKFxuICBvcHRpb25zOiBSZW5kZXJPcHRpb25zLFxuICByZXE6IFJlcXVlc3QsXG4gIHJlczogUmVzcG9uc2UsXG4gIG5vbmNlOiBzdHJpbmdcbikge1xuICByZXMuc2V0SGVhZGVyKFxuICAgICdzdHJpY3QtdHJhbnNwb3J0LXNlY3VyaXR5JyxcbiAgICAnbWF4LWFnZT02MzA3MjAwMDsgaW5jbHVkZVN1YmRvbWFpbnM7IHByZWxvYWQnXG4gICk7XG4gIHJlcy5zZXRIZWFkZXIoJ3gtY29udGVudC10eXBlLW9wdGlvbnMnLCAnbm9zbmlmZicpO1xuICByZXMuc2V0SGVhZGVyKCd4LXhzcy1wcm90ZWN0aW9uJywgJzE7IG1vZGU9YmxvY2snKTtcblxuICBjb25zdCBmcmFtZUFuY2VzdG9ycyA9IFtcIidzZWxmJ1wiXTtcbiAgY29uc3QgYWxsb3dlZElmcmFtZU9yaWdpbnMgPSBvcHRpb25zLmNtc0NvbmZpZy5hbGxvd2VkSWZyYW1lT3JpZ2lucztcbiAgaWYgKGFsbG93ZWRJZnJhbWVPcmlnaW5zICYmIGFsbG93ZWRJZnJhbWVPcmlnaW5zLmxlbmd0aCA+IDApIHtcbiAgICBjb25zdCByZWZlcmVyT3JpZ2luID0gZ2V0UmVmZXJlck9yaWdpbihyZXEpO1xuICAgIGlmIChhbGxvd2VkSWZyYW1lT3JpZ2lucy5pbmNsdWRlcyhyZWZlcmVyT3JpZ2luKSkge1xuICAgICAgZnJhbWVBbmNlc3RvcnMucHVzaChyZWZlcmVyT3JpZ2luKTtcbiAgICB9XG4gIH1cblxuICAvLyBodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9kb2NzL3N0cmljdC1jc3AuaHRtbFxuICBjb25zdCBkaXJlY3RpdmVzID0gW1xuICAgIFwiYmFzZS11cmkgJ25vbmUnXCIsXG4gICAgXCJvYmplY3Qtc3JjICdub25lJ1wiLFxuICAgIGBzY3JpcHQtc3JjICdub25jZS0ke25vbmNlfScgJ3Vuc2FmZS1pbmxpbmUnICd1bnNhZmUtZXZhbCcgJ3N0cmljdC1keW5hbWljJyBodHRwczogaHR0cDpgLFxuICAgIGBmcmFtZS1hbmNlc3RvcnMgJHtmcmFtZUFuY2VzdG9ycy5qb2luKCcgJyl9YCxcbiAgXTtcbiAgcmVzLnNldEhlYWRlcignY29udGVudC1zZWN1cml0eS1wb2xpY3ktcmVwb3J0LW9ubHknLCBkaXJlY3RpdmVzLmpvaW4oJzsgJykpO1xufVxuXG5mdW5jdGlvbiBnZXRSZWZlcmVyT3JpZ2luKHJlcTogUmVxdWVzdCk6IHN0cmluZyB7XG4gIGNvbnN0IHJlZmVyZXJVcmwgPSByZXEuaGVhZGVycy5yZWZlcmVyO1xuICBpZiAoIXJlZmVyZXJVcmwpIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgY29uc3QgcGFyc2VkUmVmZXJlciA9IG5ldyBVUkwocmVmZXJlclVybCk7XG4gIGNvbnN0IHJlZmVyZXJPcmlnaW4gPSBgJHtwYXJzZWRSZWZlcmVyLnByb3RvY29sfS8vJHtwYXJzZWRSZWZlcmVyLmhvc3RuYW1lfWA7XG4gIHJldHVybiByZWZlcmVyT3JpZ2luO1xufVxuXG5mdW5jdGlvbiBjYWNoZWJ1c3QodXJsOiBzdHJpbmcpIHtcbiAgY29uc3QgdHMgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMCk7XG4gIHJldHVybiBgJHt1cmx9P2M9JHt0c31gO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUFBLE9BQU8sWUFBWTtBQUNuQixPQUFPLFVBQVU7QUFDakIsU0FBUSxxQkFBb0I7QUFFNUIsU0FBUSxVQUFVLHNCQUFxQjtBQWNqQyxTQUNFLEtBREY7QUFWTixJQUFNLFlBQVksS0FBSyxRQUFRLGNBQWMsWUFBWSxHQUFHLENBQUM7QUFPN0QsU0FBUyxJQUFJLE9BQWlCO0FBQzVCLFNBQ0UscUJBQUMsVUFDQztBQUFBLHlCQUFDLFVBQ0M7QUFBQSwwQkFBQyxXQUFPLGdCQUFNLE9BQU07QUFBQSxNQUNwQixvQkFBQyxVQUFLLEtBQUksY0FBYSxNQUFLLGdDQUErQjtBQUFBLE1BQzNEO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFDQyxLQUFJO0FBQUEsVUFDSixNQUFLO0FBQUEsVUFDTCxhQUFZO0FBQUE7QUFBQSxNQUNkO0FBQUEsTUFDQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQ0MsS0FBSTtBQUFBLFVBQ0osTUFBSztBQUFBLFVBQ0wsT0FBTTtBQUFBO0FBQUEsTUFDUjtBQUFBLE1BQ0E7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUNDLEtBQUk7QUFBQSxVQUNKLE1BQUs7QUFBQSxVQUNMLE9BQU07QUFBQTtBQUFBLE1BQ1I7QUFBQSxNQUNBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFDQyxLQUFJO0FBQUEsVUFDSixNQUFLO0FBQUEsVUFDTCxNQUFLO0FBQUE7QUFBQSxNQUNQO0FBQUEsTUFDQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQ0MsS0FBSTtBQUFBLFVBQ0osTUFBSztBQUFBLFVBQ0wsT0FBTTtBQUFBO0FBQUEsTUFDUjtBQUFBLE1BQ0Esb0JBQUMsVUFBSyxLQUFJLGNBQWEsTUFBSyxhQUFZLE9BQU0sV0FBVTtBQUFBLE9BQzFEO0FBQUEsSUFDQSxxQkFBQyxVQUNDO0FBQUEsMEJBQUMsU0FBSSxJQUFHLFFBQ04sK0JBQUMsU0FBSSxXQUFVLGFBQ2I7QUFBQSw0QkFBQyxRQUFHLFdBQVUsc0JBQXFCLHdCQUFVO0FBQUEsUUFDN0Msb0JBQUMsU0FBSSxXQUFVLG1CQUFrQixpSEFHakM7QUFBQSxTQUNGLEdBQ0Y7QUFBQSxNQUNBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFDQyx5QkFBeUI7QUFBQSxZQUN2QixRQUFRLHVCQUF1QixLQUFLLFVBQVUsTUFBTSxHQUFHLENBQUM7QUFBQSxVQUMxRDtBQUFBLFVBQ0EsT0FBTTtBQUFBO0FBQUEsTUFDUjtBQUFBLE1BQ0Esb0JBQUMsWUFBTyxNQUFLLFVBQVMsS0FBSSxZQUFXLE9BQU0sV0FBVTtBQUFBLE9BQ3ZEO0FBQUEsS0FDRjtBQUVKO0FBT0EsZUFBc0IsVUFDcEIsS0FDQSxLQUNBLFNBQ0E7QUEvRUY7QUFnRkUsUUFBTSxvQkFBb0IsWUFBWSxLQUFLLDRCQUE0QjtBQUFBLElBQ3JFLE9BQU87QUFBQSxFQUNULENBQUM7QUFDRCxRQUFNLGNBQTBDLENBQUM7QUFDakQsU0FBTyxLQUFLLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxhQUFxQjtBQUMzRCxVQUFNLGVBQWUsS0FBSyxNQUFNLFFBQVEsRUFBRSxLQUFLLE1BQU0sR0FBRyxFQUFFLENBQUM7QUFDM0QsVUFBTSxTQUFTLGtCQUFrQixRQUFRO0FBQ3pDLFVBQU0sYUFBYSxPQUFPO0FBQzFCLGdCQUFZLFlBQVksSUFBSTtBQUFBLEVBQzlCLENBQUM7QUFDRCxRQUFNLGFBQWEsUUFBUSxjQUFjLENBQUM7QUFDMUMsUUFBTSxZQUFZLFFBQVEsYUFBYSxDQUFDO0FBQ3hDLE1BQUksTUFBTSxVQUFVO0FBQ3BCLE1BQUksUUFBUSxNQUFNO0FBQ2hCLFVBQU07QUFBQSxFQUNSO0FBQ0EsUUFBTSxNQUFNO0FBQUEsSUFDVixZQUFZO0FBQUEsTUFDVixXQUFXLFVBQVUsTUFBTTtBQUFBLE1BQzNCLGFBQWEsVUFBVSxRQUFRLFVBQVUsTUFBTTtBQUFBLE1BQy9DLFFBQVEsV0FBVyxVQUFVO0FBQUEsTUFDN0IsTUFBTSxXQUFXLFFBQVE7QUFBQSxNQUN6QjtBQUFBLE1BQ0EsTUFBTSxXQUFXO0FBQUEsTUFDakIsUUFBUTtBQUFBLFFBQ04sZ0JBQWUsZ0JBQVcsV0FBWCxtQkFBbUI7QUFBQSxNQUNwQztBQUFBLElBQ0Y7QUFBQSxJQUNBLGdCQUFnQixVQUFVO0FBQUEsSUFDMUIsTUFBTSxVQUFVO0FBQUEsSUFDaEI7QUFBQSxJQUNBLFNBQVMsVUFBVTtBQUFBLElBQ25CLGFBQWEsVUFBVTtBQUFBLEVBQ3pCO0FBQ0EsUUFBTSxjQUFjLFVBQVUsUUFBUSxVQUFVLE1BQU07QUFDdEQsUUFBTSxRQUFRLGNBQWMsR0FBRyxXQUFXLHFCQUFnQjtBQUUxRCxRQUFNLFdBQVcsZUFBZSxvQkFBQyxPQUFJLE9BQWMsS0FBVSxDQUFFO0FBQy9ELE1BQUksT0FBTztBQUFBLEVBQW9CLFFBQVE7QUFDdkMsUUFBTSxRQUFRLGNBQWM7QUFDNUIsTUFBSSxJQUFJLFlBQVk7QUFDbEIsVUFBTSxZQUFZLEtBQUssS0FBSyxXQUFXLFdBQVc7QUFDbEQsVUFBTSxXQUFXLEtBQUssS0FBSyxXQUFXLFVBQVU7QUFDaEQsVUFBTSxNQUFNLEtBQ1QsUUFBUSxhQUFhLFVBQVUsT0FBTyxTQUFTLEVBQUUsQ0FBQyxFQUNsRCxRQUFRLFlBQVksVUFBVSxPQUFPLFFBQVEsRUFBRSxDQUFDLEVBQ2hELFdBQVcsV0FBVyxLQUFLO0FBQzlCLFdBQU8sTUFBTSxJQUFJLFdBQVksbUJBQW1CLElBQUksYUFBYSxHQUFHO0FBQ3BFLFdBQU8sS0FBSztBQUFBLE1BQ1Y7QUFBQSxNQUNBLG9EQUFvRCxLQUFLO0FBQUEsSUFDM0Q7QUFBQSxFQUNGLE9BQU87QUFDTCxXQUFPLEtBQ0osUUFBUSxhQUFhLFVBQVUsb0JBQW9CLENBQUMsRUFDcEQsUUFBUSxZQUFZLFVBQVUsbUJBQW1CLENBQUMsRUFDbEQsV0FBVyxXQUFXLEtBQUs7QUFBQSxFQUNoQztBQUNBLE1BQUksVUFBVSxnQkFBZ0IsV0FBVztBQUN6QyxxQkFBbUIsU0FBUyxLQUFLLEtBQUssS0FBSztBQUMzQyxNQUFJLEtBQUssSUFBSTtBQUNmO0FBT0EsU0FBUyxPQUFPLE9BQW9CO0FBQ2xDLFNBQ0UscUJBQUMsVUFDQztBQUFBLHlCQUFDLFVBQ0M7QUFBQSwwQkFBQyxVQUFLLFNBQVEsU0FBUTtBQUFBLE1BQ3RCLG9CQUFDLFdBQU8sZ0JBQU0sT0FBTTtBQUFBLE1BQ3BCLG9CQUFDLFVBQUssS0FBSSxjQUFhLE1BQUssZ0NBQStCO0FBQUEsTUFDM0Qsb0JBQUMsVUFBSyxNQUFLLFlBQVcsU0FBUSx5Q0FBd0M7QUFBQSxNQUN0RTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQ0MsS0FBSTtBQUFBLFVBQ0osTUFBSztBQUFBLFVBQ0wsYUFBWTtBQUFBO0FBQUEsTUFDZDtBQUFBLE1BQ0E7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUNDLEtBQUk7QUFBQSxVQUNKLE1BQUs7QUFBQSxVQUNMLE9BQU07QUFBQTtBQUFBLE1BQ1I7QUFBQSxNQUNBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFDQyxLQUFJO0FBQUEsVUFDSixNQUFLO0FBQUEsVUFDTCxNQUFLO0FBQUE7QUFBQSxNQUNQO0FBQUEsTUFDQSxvQkFBQyxVQUFLLEtBQUksY0FBYSxNQUFLLGFBQVksT0FBTSxXQUFVO0FBQUEsT0FDMUQ7QUFBQSxJQUNBLHFCQUFDLFVBQ0M7QUFBQSwwQkFBQyxTQUFJLElBQUcsUUFDTiwrQkFBQyxTQUFJLFdBQVUsYUFDYjtBQUFBLDRCQUFDLFFBQUcsV0FBVSxzQkFBcUIsd0JBQVU7QUFBQSxRQUM3QyxvQkFBQyxTQUFJLFdBQVUsbUJBQWtCLGlIQUdqQztBQUFBLFNBQ0YsR0FDRjtBQUFBLE1BQ0E7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUNDLHlCQUF5QjtBQUFBLFlBQ3ZCLFFBQVEsdUJBQXVCLEtBQUssVUFBVSxNQUFNLEdBQUcsQ0FBQztBQUFBLFVBQzFEO0FBQUEsVUFDQSxPQUFNO0FBQUE7QUFBQSxNQUNSO0FBQUEsTUFDQSxvQkFBQyxZQUFPLE1BQUssVUFBUyxLQUFJLFlBQVcsT0FBTSxXQUFVO0FBQUEsT0FDdkQ7QUFBQSxLQUNGO0FBRUo7QUFDQSxlQUFzQixhQUNwQixLQUNBLEtBQ0EsU0FDQTtBQUNBLFFBQU0sTUFBTTtBQUFBLElBQ1YsTUFBTSxRQUFRLFVBQVUsUUFBUSxRQUFRLFVBQVUsTUFBTTtBQUFBLElBQ3hELGdCQUFnQixRQUFRLFVBQVU7QUFBQSxFQUNwQztBQUNBLFFBQU0sV0FBVyxlQUFlLG9CQUFDLFVBQU8sT0FBTSxXQUFVLEtBQVUsQ0FBRTtBQUNwRSxNQUFJLE9BQU87QUFBQSxFQUFvQixRQUFRO0FBQ3ZDLFFBQU0sUUFBUSxjQUFjO0FBQzVCLE1BQUksSUFBSSxZQUFZO0FBQ2xCLFVBQU0sVUFBVSxLQUFLLEtBQUssV0FBVyxlQUFlO0FBQ3BELFVBQU0sU0FBUyxLQUFLLEtBQUssV0FBVyxjQUFjO0FBQ2xELFVBQU0sTUFBTSxLQUNULFFBQVEsYUFBYSxVQUFVLE9BQU8sT0FBTyxFQUFFLENBQUMsRUFDaEQsUUFBUSxZQUFZLFVBQVUsT0FBTyxNQUFNLEVBQUUsQ0FBQyxFQUM5QyxXQUFXLFdBQVcsS0FBSztBQUM5QixXQUFPLE1BQU0sSUFBSSxXQUFZLG1CQUFtQixJQUFJLGFBQWEsR0FBRztBQUNwRSxXQUFPLEtBQUs7QUFBQSxNQUNWO0FBQUEsTUFDQSxvREFBb0QsS0FBSztBQUFBLElBQzNEO0FBQUEsRUFDRixPQUFPO0FBQ0wsV0FBTyxLQUNKLFFBQVEsYUFBYSxVQUFVLHdCQUF3QixDQUFDLEVBQ3hELFFBQVEsWUFBWSxVQUFVLHVCQUF1QixDQUFDLEVBQ3RELFdBQVcsV0FBVyxLQUFLO0FBQUEsRUFDaEM7QUFDQSxNQUFJLFVBQVUsZ0JBQWdCLFdBQVc7QUFDekMscUJBQW1CLFNBQVMsS0FBSyxLQUFLLEtBQUs7QUFDM0MsTUFBSSxLQUFLLElBQUk7QUFDZjtBQUVBLFNBQVMsZ0JBQWdCO0FBQ3ZCLFNBQU8sT0FBTyxZQUFZLEVBQUUsRUFBRSxTQUFTLFFBQVE7QUFDakQ7QUFFQSxTQUFTLG1CQUNQLFNBQ0EsS0FDQSxLQUNBLE9BQ0E7QUFDQSxNQUFJO0FBQUEsSUFDRjtBQUFBLElBQ0E7QUFBQSxFQUNGO0FBQ0EsTUFBSSxVQUFVLDBCQUEwQixTQUFTO0FBQ2pELE1BQUksVUFBVSxvQkFBb0IsZUFBZTtBQUVqRCxRQUFNLGlCQUFpQixDQUFDLFFBQVE7QUFDaEMsUUFBTSx1QkFBdUIsUUFBUSxVQUFVO0FBQy9DLE1BQUksd0JBQXdCLHFCQUFxQixTQUFTLEdBQUc7QUFDM0QsVUFBTSxnQkFBZ0IsaUJBQWlCLEdBQUc7QUFDMUMsUUFBSSxxQkFBcUIsU0FBUyxhQUFhLEdBQUc7QUFDaEQscUJBQWUsS0FBSyxhQUFhO0FBQUEsSUFDbkM7QUFBQSxFQUNGO0FBR0EsUUFBTSxhQUFhO0FBQUEsSUFDakI7QUFBQSxJQUNBO0FBQUEsSUFDQSxxQkFBcUIsS0FBSztBQUFBLElBQzFCLG1CQUFtQixlQUFlLEtBQUssR0FBRyxDQUFDO0FBQUEsRUFDN0M7QUFDQSxNQUFJLFVBQVUsdUNBQXVDLFdBQVcsS0FBSyxJQUFJLENBQUM7QUFDNUU7QUFFQSxTQUFTLGlCQUFpQixLQUFzQjtBQUM5QyxRQUFNLGFBQWEsSUFBSSxRQUFRO0FBQy9CLE1BQUksQ0FBQyxZQUFZO0FBQ2YsV0FBTztBQUFBLEVBQ1Q7QUFDQSxRQUFNLGdCQUFnQixJQUFJLElBQUksVUFBVTtBQUN4QyxRQUFNLGdCQUFnQixHQUFHLGNBQWMsUUFBUSxLQUFLLGNBQWMsUUFBUTtBQUMxRSxTQUFPO0FBQ1Q7QUFFQSxTQUFTLFVBQVUsS0FBYTtBQUM5QixRQUFNLEtBQUssS0FBSyxPQUFNLG9CQUFJLEtBQUssR0FBRSxRQUFRLElBQUksR0FBSTtBQUNqRCxTQUFPLEdBQUcsR0FBRyxNQUFNLEVBQUU7QUFDdkI7IiwKICAibmFtZXMiOiBbXQp9Cg==
254
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vY29yZS9hcHAudHN4Il0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgY3J5cHRvIGZyb20gJ25vZGU6Y3J5cHRvJztcbmltcG9ydCBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQge2ZpbGVVUkxUb1BhdGh9IGZyb20gJ25vZGU6dXJsJztcbmltcG9ydCB7UmVxdWVzdCwgUmVzcG9uc2UsIFJvb3RDb25maWd9IGZyb20gJ0BibGlua2svcm9vdCc7XG5pbXBvcnQge3JlbmRlciBhcyByZW5kZXJUb1N0cmluZ30gZnJvbSAncHJlYWN0LXJlbmRlci10by1zdHJpbmcnO1xuaW1wb3J0IHtDTVNQbHVnaW5PcHRpb25zfSBmcm9tICcuL3BsdWdpbi5qcyc7XG5pbXBvcnQge0NvbGxlY3Rpb259IGZyb20gJy4vc2NoZW1hLmpzJztcblxuY29uc3QgX19kaXJuYW1lID0gcGF0aC5kaXJuYW1lKGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKSk7XG5cbmludGVyZmFjZSBBcHBQcm9wcyB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGN0eDogYW55O1xufVxuXG5mdW5jdGlvbiBBcHAocHJvcHM6IEFwcFByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWw+XG4gICAgICA8aGVhZD5cbiAgICAgICAgPG1ldGEgY2hhcnNldD1cInV0Zi04XCIgLz5cbiAgICAgICAgPHRpdGxlPntwcm9wcy50aXRsZX08L3RpdGxlPlxuICAgICAgICA8bWV0YSBuYW1lPVwicm9ib3RzXCIgY29udGVudD1cIm5vaW5kZXhcIiAvPlxuICAgICAgICA8bGluayByZWw9XCJwcmVjb25uZWN0XCIgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb21cIiAvPlxuICAgICAgICA8bGlua1xuICAgICAgICAgIHJlbD1cInByZWNvbm5lY3RcIlxuICAgICAgICAgIGhyZWY9XCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tXCJcbiAgICAgICAgICBjcm9zc09yaWdpbj1cImFub255bW91c1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxsaW5rXG4gICAgICAgICAgcmVsPVwic3R5bGVzaGVldFwiXG4gICAgICAgICAgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9SW50ZXI6d2dodEAzMDA7NDAwOzUwMDs2MDA7NzAwOzkwMCZkaXNwbGF5PXN3YXBcIlxuICAgICAgICAgIG5vbmNlPVwie05PTkNFfVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxsaW5rXG4gICAgICAgICAgcmVsPVwic3R5bGVzaGVldFwiXG4gICAgICAgICAgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9R29vZ2xlK1NhbnM6d2dodEA1MDAmZGlzcGxheT1zd2FwXCJcbiAgICAgICAgICBub25jZT1cIntOT05DRX1cIlxuICAgICAgICAvPlxuICAgICAgICA8bGlua1xuICAgICAgICAgIHJlbD1cImljb25cIlxuICAgICAgICAgIGhyZWY9XCJodHRwczovL2xoMy5nb29nbGV1c2VyY29udGVudC5jb20vaWpLNTBUZlFsVl95SnczaS1DTWxuRDZvc0g0UGJvWkJJTFpySmNXaG9OTUVtb3lDRDVlMWJBeFhiYU9QZTV3NGdHX1NjZjM3RVhybVo2cDhzUDJsdWU1ZkxaNDE5bTVKeUxNcz1lMzg1LXcyNTZcIlxuICAgICAgICAgIHR5cGU9XCJpbWFnZS9wbmdcIlxuICAgICAgICAvPlxuICAgICAgICA8bGlua1xuICAgICAgICAgIHJlbD1cInN0eWxlc2hlZXRcIlxuICAgICAgICAgIGhyZWY9XCJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9oaWdobGlnaHQuanMvMTEuNi4wL3N0eWxlcy9hdG9tLW9uZS1saWdodC5taW4uY3NzXCJcbiAgICAgICAgICBub25jZT1cIntOT05DRX1cIlxuICAgICAgICAvPlxuICAgICAgICA8bGluayByZWw9XCJzdHlsZXNoZWV0XCIgaHJlZj1cIntDU1NfVVJMfVwiIG5vbmNlPVwie05PTkNFfVwiIC8+XG4gICAgICA8L2hlYWQ+XG4gICAgICA8Ym9keT5cbiAgICAgICAgPGRpdiBpZD1cInJvb3RcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJvb3RzdHJhcFwiPlxuICAgICAgICAgICAgPGgxIGNsYXNzTmFtZT1cImJvb3RzdHJhcF9fbG9hZGluZ1wiPkxvYWRpbmcuLi48L2gxPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib290c3RyYXAtZXJyb3JcIj5cbiAgICAgICAgICAgICAgSWYgdGhpcyBwYWdlIGZhaWxzIHRvIGxvYWQsIHRyeSBhIGZvcmNlIHJlZnJlc2ggYnkgaG9sZGluZyB0aGVcbiAgICAgICAgICAgICAgc2hpZnQga2V5IHdoaWxlIHJlZnJlc2hpbmcgdGhlIHBhZ2UuXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzY3JpcHRcbiAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17e1xuICAgICAgICAgICAgX19odG1sOiBgd2luZG93Ll9fUk9PVF9DVFggPSAke0pTT04uc3RyaW5naWZ5KHByb3BzLmN0eCl9YCxcbiAgICAgICAgICB9fVxuICAgICAgICAgIG5vbmNlPVwie05PTkNFfVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzY3JpcHQgdHlwZT1cIm1vZHVsZVwiIHNyYz1cIntKU19VUkx9XCIgbm9uY2U9XCJ7Tk9OQ0V9XCI+PC9zY3JpcHQ+XG4gICAgICA8L2JvZHk+XG4gICAgPC9odG1sPlxuICApO1xufVxuXG5pbnRlcmZhY2UgUmVuZGVyT3B0aW9ucyB7XG4gIHJvb3RDb25maWc6IFJvb3RDb25maWc7XG4gIGNtc0NvbmZpZzogQ01TUGx1Z2luT3B0aW9ucztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlbmRlckFwcChcbiAgcmVxOiBSZXF1ZXN0LFxuICByZXM6IFJlc3BvbnNlLFxuICBvcHRpb25zOiBSZW5kZXJPcHRpb25zXG4pIHtcbiAgY29uc3QgY29sbGVjdGlvbk1vZHVsZXMgPSBpbXBvcnQubWV0YS5nbG9iKCcvY29sbGVjdGlvbnMvKi5zY2hlbWEudHMnLCB7XG4gICAgZWFnZXI6IHRydWUsXG4gIH0pIGFzIGFueTtcbiAgY29uc3QgY29sbGVjdGlvbnM6IFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb24+ID0ge307XG4gIE9iamVjdC5rZXlzKGNvbGxlY3Rpb25Nb2R1bGVzKS5mb3JFYWNoKChtb2R1bGVJZDogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgY29sbGVjdGlvbklkID0gcGF0aC5wYXJzZShtb2R1bGVJZCkuYmFzZS5zcGxpdCgnLicpWzBdO1xuICAgIGNvbnN0IG1vZHVsZSA9IGNvbGxlY3Rpb25Nb2R1bGVzW21vZHVsZUlkXTtcbiAgICBjb25zdCBjb2xsZWN0aW9uID0gbW9kdWxlLmRlZmF1bHQgYXMgQ29sbGVjdGlvbjtcbiAgICBjb2xsZWN0aW9uc1tjb2xsZWN0aW9uSWRdID0gY29sbGVjdGlvbjtcbiAgfSk7XG4gIGNvbnN0IHJvb3RDb25maWcgPSBvcHRpb25zLnJvb3RDb25maWcgfHwge307XG4gIGNvbnN0IGNtc0NvbmZpZyA9IG9wdGlvbnMuY21zQ29uZmlnIHx8IHt9O1xuICBsZXQgZ2NpID0gY21zQ29uZmlnLmdjaTtcbiAgaWYgKGdjaSA9PT0gdHJ1ZSkge1xuICAgIGdjaSA9ICdodHRwczovL2djaS5yb290anMuZGV2JztcbiAgfVxuICBjb25zdCBjdHggPSB7XG4gICAgcm9vdENvbmZpZzoge1xuICAgICAgcHJvamVjdElkOiBjbXNDb25maWcuaWQgfHwgJ2RlZmF1bHQnLFxuICAgICAgcHJvamVjdE5hbWU6IGNtc0NvbmZpZy5uYW1lIHx8IGNtc0NvbmZpZy5pZCB8fCAnJyxcbiAgICAgIGRvbWFpbjogcm9vdENvbmZpZy5kb21haW4gfHwgJ2h0dHBzOi8vZXhhbXBsZS5jb20nLFxuICAgICAgYmFzZTogcm9vdENvbmZpZy5iYXNlIHx8ICcvJyxcbiAgICAgIGdjaTogZ2NpLFxuICAgICAgaTE4bjogcm9vdENvbmZpZy5pMThuLFxuICAgICAgc2VydmVyOiB7XG4gICAgICAgIHRyYWlsaW5nU2xhc2g6IHJvb3RDb25maWcuc2VydmVyPy50cmFpbGluZ1NsYXNoLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGZpcmViYXNlQ29uZmlnOiBjbXNDb25maWcuZmlyZWJhc2VDb25maWcsXG4gICAgZ2FwaTogY21zQ29uZmlnLmdhcGksXG4gICAgY29sbGVjdGlvbnM6IGNvbGxlY3Rpb25zLFxuICAgIHNpZGViYXI6IGNtc0NvbmZpZy5zaWRlYmFyLFxuICAgIGV4cGVyaW1lbnRzOiBjbXNDb25maWcuZXhwZXJpbWVudHMsXG4gIH07XG4gIGNvbnN0IHByb2plY3ROYW1lID0gY21zQ29uZmlnLm5hbWUgfHwgY21zQ29uZmlnLmlkIHx8ICcnO1xuICBjb25zdCB0aXRsZSA9IHByb2plY3ROYW1lID8gYCR7cHJvamVjdE5hbWV9IFx1MjAxMyBSb290IENNU2AgOiAnUm9vdCBDTVMnO1xuXG4gIGNvbnN0IG1haW5IdG1sID0gcmVuZGVyVG9TdHJpbmcoPEFwcCB0aXRsZT17dGl0bGV9IGN0eD17Y3R4fSAvPik7XG4gIGxldCBodG1sID0gYDwhZG9jdHlwZSBodG1sPlxcbiR7bWFpbkh0bWx9YDtcbiAgY29uc3Qgbm9uY2UgPSBnZW5lcmF0ZU5vbmNlKCk7XG4gIGlmIChyZXEudml0ZVNlcnZlcikge1xuICAgIGNvbnN0IHVpQ3NzUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICd1aS91aS5jc3MnKTtcbiAgICBjb25zdCB1aUpzUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICd1aS91aS5qcycpO1xuICAgIGNvbnN0IHRwbCA9IGh0bWxcbiAgICAgIC5yZXBsYWNlKCd7Q1NTX1VSTH0nLCBjYWNoZWJ1c3QoYC9AZnMke3VpQ3NzUGF0aH1gKSlcbiAgICAgIC5yZXBsYWNlKCd7SlNfVVJMfScsIGNhY2hlYnVzdChgL0BmcyR7dWlKc1BhdGh9YCkpXG4gICAgICAucmVwbGFjZUFsbCgne05PTkNFfScsIG5vbmNlKTtcbiAgICBodG1sID0gYXdhaXQgcmVxLnZpdGVTZXJ2ZXIhLnRyYW5zZm9ybUluZGV4SHRtbChyZXEub3JpZ2luYWxVcmwsIHRwbCk7XG4gICAgaHRtbCA9IGh0bWwucmVwbGFjZShcbiAgICAgICc8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCIvQHZpdGUvY2xpZW50XCI+PC9zY3JpcHQ+JyxcbiAgICAgIGA8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCIvQHZpdGUvY2xpZW50XCIgbm9uY2U9XCIke25vbmNlfVwiPjwvc2NyaXB0PmBcbiAgICApO1xuICB9IGVsc2Uge1xuICAgIGh0bWwgPSBodG1sXG4gICAgICAucmVwbGFjZSgne0NTU19VUkx9JywgY2FjaGVidXN0KCcvY21zL3N0YXRpYy91aS5jc3MnKSlcbiAgICAgIC5yZXBsYWNlKCd7SlNfVVJMfScsIGNhY2hlYnVzdCgnL2Ntcy9zdGF0aWMvdWkuanMnKSlcbiAgICAgIC5yZXBsYWNlQWxsKCd7Tk9OQ0V9Jywgbm9uY2UpO1xuICB9XG4gIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtVHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgc2V0U2VjdXJpdHlIZWFkZXJzKG9wdGlvbnMsIHJlcSwgcmVzLCBub25jZSk7XG4gIHJlcy5zZW5kKGh0bWwpO1xufVxuXG5pbnRlcmZhY2UgU2lnbkluUHJvcHMge1xuICB0aXRsZTogc3RyaW5nO1xuICBjdHg6IGFueTtcbn1cblxuZnVuY3Rpb24gU2lnbkluKHByb3BzOiBTaWduSW5Qcm9wcykge1xuICByZXR1cm4gKFxuICAgIDxodG1sPlxuICAgICAgPGhlYWQ+XG4gICAgICAgIDxtZXRhIGNoYXJzZXQ9XCJ1dGYtOFwiIC8+XG4gICAgICAgIDx0aXRsZT57cHJvcHMudGl0bGV9PC90aXRsZT5cbiAgICAgICAgPG1ldGEgbmFtZT1cInJvYm90c1wiIGNvbnRlbnQ9XCJub2luZGV4XCIgLz5cbiAgICAgICAgPGxpbmsgcmVsPVwicHJlY29ubmVjdFwiIGhyZWY9XCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tXCIgLz5cbiAgICAgICAgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjBcIiAvPlxuICAgICAgICA8bGlua1xuICAgICAgICAgIHJlbD1cInByZWNvbm5lY3RcIlxuICAgICAgICAgIGhyZWY9XCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tXCJcbiAgICAgICAgICBjcm9zc09yaWdpbj1cImFub255bW91c1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxsaW5rXG4gICAgICAgICAgcmVsPVwic3R5bGVzaGVldFwiXG4gICAgICAgICAgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Hb29nbGUrU2Fuczo0MDAsNTAwJmRpc3BsYXk9c3dhcFwiXG4gICAgICAgICAgbm9uY2U9XCJ7Tk9OQ0V9XCJcbiAgICAgICAgLz5cbiAgICAgICAgPGxpbmtcbiAgICAgICAgICByZWw9XCJpY29uXCJcbiAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2lqSzUwVGZRbFZfeUp3M2ktQ01sbkQ2b3NINFBib1pCSUxackpjV2hvTk1FbW95Q0Q1ZTFiQXhYYmFPUGU1dzRnR19TY2YzN0VYcm1aNnA4c1AybHVlNWZMWjQxOW01SnlMTXM9ZTM4NS13MjU2XCJcbiAgICAgICAgICB0eXBlPVwiaW1hZ2UvcG5nXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGxpbmsgcmVsPVwic3R5bGVzaGVldFwiIGhyZWY9XCJ7Q1NTX1VSTH1cIiBub25jZT1cIntOT05DRX1cIiAvPlxuICAgICAgPC9oZWFkPlxuICAgICAgPGJvZHk+XG4gICAgICAgIDxkaXYgaWQ9XCJyb290XCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib290c3RyYXBcIj5cbiAgICAgICAgICAgIDxoMSBjbGFzc05hbWU9XCJib290c3RyYXBfX2xvYWRpbmdcIj5Mb2FkaW5nLi4uPC9oMT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm9vdHN0cmFwLWVycm9yXCI+XG4gICAgICAgICAgICAgIElmIHRoaXMgcGFnZSBmYWlscyB0byBsb2FkLCB0cnkgYSBmb3JjZSByZWZyZXNoIGJ5IGhvbGRpbmcgdGhlXG4gICAgICAgICAgICAgIHNoaWZ0IGtleSB3aGlsZSByZWZyZXNoaW5nIHRoZSBwYWdlLlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c2NyaXB0XG4gICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3tcbiAgICAgICAgICAgIF9faHRtbDogYHdpbmRvdy5fX1JPT1RfQ1RYID0gJHtKU09OLnN0cmluZ2lmeShwcm9wcy5jdHgpfWAsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBub25jZT1cIntOT05DRX1cIlxuICAgICAgICAvPlxuICAgICAgICA8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCJ7SlNfVVJMfVwiIG5vbmNlPVwie05PTkNFfVwiPjwvc2NyaXB0PlxuICAgICAgPC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKTtcbn1cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZW5kZXJTaWduSW4oXG4gIHJlcTogUmVxdWVzdCxcbiAgcmVzOiBSZXNwb25zZSxcbiAgb3B0aW9uczogUmVuZGVyT3B0aW9uc1xuKSB7XG4gIGNvbnN0IGN0eCA9IHtcbiAgICBuYW1lOiBvcHRpb25zLmNtc0NvbmZpZy5uYW1lIHx8IG9wdGlvbnMuY21zQ29uZmlnLmlkIHx8ICcnLFxuICAgIGZpcmViYXNlQ29uZmlnOiBvcHRpb25zLmNtc0NvbmZpZy5maXJlYmFzZUNvbmZpZyxcbiAgfTtcbiAgY29uc3QgbWFpbkh0bWwgPSByZW5kZXJUb1N0cmluZyg8U2lnbkluIHRpdGxlPVwiU2lnbiBpblwiIGN0eD17Y3R4fSAvPik7XG4gIGxldCBodG1sID0gYDwhZG9jdHlwZSBodG1sPlxcbiR7bWFpbkh0bWx9YDtcbiAgY29uc3Qgbm9uY2UgPSBnZW5lcmF0ZU5vbmNlKCk7XG4gIGlmIChyZXEudml0ZVNlcnZlcikge1xuICAgIGNvbnN0IGNzc1BhdGggPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAndWkvc2lnbmluLmNzcycpO1xuICAgIGNvbnN0IGpzUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICd1aS9zaWduaW4uanMnKTtcbiAgICBjb25zdCB0cGwgPSBodG1sXG4gICAgICAucmVwbGFjZSgne0NTU19VUkx9JywgY2FjaGVidXN0KGAvQGZzJHtjc3NQYXRofWApKVxuICAgICAgLnJlcGxhY2UoJ3tKU19VUkx9JywgY2FjaGVidXN0KGAvQGZzJHtqc1BhdGh9YCkpXG4gICAgICAucmVwbGFjZUFsbCgne05PTkNFfScsIG5vbmNlKTtcbiAgICBodG1sID0gYXdhaXQgcmVxLnZpdGVTZXJ2ZXIhLnRyYW5zZm9ybUluZGV4SHRtbChyZXEub3JpZ2luYWxVcmwsIHRwbCk7XG4gICAgaHRtbCA9IGh0bWwucmVwbGFjZShcbiAgICAgICc8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCIvQHZpdGUvY2xpZW50XCI+PC9zY3JpcHQ+JyxcbiAgICAgIGA8c2NyaXB0IHR5cGU9XCJtb2R1bGVcIiBzcmM9XCIvQHZpdGUvY2xpZW50XCIgbm9uY2U9XCIke25vbmNlfVwiPjwvc2NyaXB0PmBcbiAgICApO1xuICB9IGVsc2Uge1xuICAgIGh0bWwgPSBodG1sXG4gICAgICAucmVwbGFjZSgne0NTU19VUkx9JywgY2FjaGVidXN0KCcvY21zL3N0YXRpYy9zaWduaW4uY3NzJykpXG4gICAgICAucmVwbGFjZSgne0pTX1VSTH0nLCBjYWNoZWJ1c3QoJy9jbXMvc3RhdGljL3NpZ25pbi5qcycpKVxuICAgICAgLnJlcGxhY2VBbGwoJ3tOT05DRX0nLCBub25jZSk7XG4gIH1cbiAgcmVzLnNldEhlYWRlcignQ29udGVudC1UeXBlJywgJ3RleHQvaHRtbCcpO1xuICBzZXRTZWN1cml0eUhlYWRlcnMob3B0aW9ucywgcmVxLCByZXMsIG5vbmNlKTtcbiAgcmVzLnN0YXR1cyg0MDMpO1xuICByZXMuc2VuZChodG1sKTtcbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVOb25jZSgpIHtcbiAgcmV0dXJuIGNyeXB0by5yYW5kb21CeXRlcygxNikudG9TdHJpbmcoJ2Jhc2U2NCcpO1xufVxuXG5mdW5jdGlvbiBzZXRTZWN1cml0eUhlYWRlcnMoXG4gIG9wdGlvbnM6IFJlbmRlck9wdGlvbnMsXG4gIHJlcTogUmVxdWVzdCxcbiAgcmVzOiBSZXNwb25zZSxcbiAgbm9uY2U6IHN0cmluZ1xuKSB7XG4gIHJlcy5zZXRIZWFkZXIoXG4gICAgJ3N0cmljdC10cmFuc3BvcnQtc2VjdXJpdHknLFxuICAgICdtYXgtYWdlPTYzMDcyMDAwOyBpbmNsdWRlU3ViZG9tYWluczsgcHJlbG9hZCdcbiAgKTtcbiAgcmVzLnNldEhlYWRlcigneC1jb250ZW50LXR5cGUtb3B0aW9ucycsICdub3NuaWZmJyk7XG4gIHJlcy5zZXRIZWFkZXIoJ3gteHNzLXByb3RlY3Rpb24nLCAnMTsgbW9kZT1ibG9jaycpO1xuXG4gIGNvbnN0IGZyYW1lQW5jZXN0b3JzID0gW1wiJ3NlbGYnXCJdO1xuICBjb25zdCBhbGxvd2VkSWZyYW1lT3JpZ2lucyA9IG9wdGlvbnMuY21zQ29uZmlnLmFsbG93ZWRJZnJhbWVPcmlnaW5zO1xuICBpZiAoYWxsb3dlZElmcmFtZU9yaWdpbnMgJiYgYWxsb3dlZElmcmFtZU9yaWdpbnMubGVuZ3RoID4gMCkge1xuICAgIGNvbnN0IHJlZmVyZXJPcmlnaW4gPSBnZXRSZWZlcmVyT3JpZ2luKHJlcSk7XG4gICAgaWYgKGFsbG93ZWRJZnJhbWVPcmlnaW5zLmluY2x1ZGVzKHJlZmVyZXJPcmlnaW4pKSB7XG4gICAgICBmcmFtZUFuY2VzdG9ycy5wdXNoKHJlZmVyZXJPcmlnaW4pO1xuICAgIH1cbiAgfVxuXG4gIC8vIGh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2RvY3Mvc3RyaWN0LWNzcC5odG1sXG4gIGNvbnN0IGRpcmVjdGl2ZXMgPSBbXG4gICAgXCJiYXNlLXVyaSAnbm9uZSdcIixcbiAgICBcIm9iamVjdC1zcmMgJ25vbmUnXCIsXG4gICAgYHNjcmlwdC1zcmMgJ25vbmNlLSR7bm9uY2V9JyAndW5zYWZlLWlubGluZScgJ3Vuc2FmZS1ldmFsJyAnc3RyaWN0LWR5bmFtaWMnIGh0dHBzOiBodHRwOmAsXG4gICAgYGZyYW1lLWFuY2VzdG9ycyAke2ZyYW1lQW5jZXN0b3JzLmpvaW4oJyAnKX1gLFxuICBdO1xuICByZXMuc2V0SGVhZGVyKCdjb250ZW50LXNlY3VyaXR5LXBvbGljeS1yZXBvcnQtb25seScsIGRpcmVjdGl2ZXMuam9pbignOyAnKSk7XG59XG5cbmZ1bmN0aW9uIGdldFJlZmVyZXJPcmlnaW4ocmVxOiBSZXF1ZXN0KTogc3RyaW5nIHtcbiAgY29uc3QgcmVmZXJlclVybCA9IHJlcS5oZWFkZXJzLnJlZmVyZXI7XG4gIGlmICghcmVmZXJlclVybCkge1xuICAgIHJldHVybiAnJztcbiAgfVxuICBjb25zdCBwYXJzZWRSZWZlcmVyID0gbmV3IFVSTChyZWZlcmVyVXJsKTtcbiAgY29uc3QgcmVmZXJlck9yaWdpbiA9IGAke3BhcnNlZFJlZmVyZXIucHJvdG9jb2x9Ly8ke3BhcnNlZFJlZmVyZXIuaG9zdG5hbWV9YDtcbiAgcmV0dXJuIHJlZmVyZXJPcmlnaW47XG59XG5cbmZ1bmN0aW9uIGNhY2hlYnVzdCh1cmw6IHN0cmluZykge1xuICBjb25zdCB0cyA9IE1hdGguZmxvb3IobmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwKTtcbiAgcmV0dXJuIGAke3VybH0/Yz0ke3RzfWA7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBQUEsT0FBTyxZQUFZO0FBQ25CLE9BQU8sVUFBVTtBQUNqQixTQUFRLHFCQUFvQjtBQUU1QixTQUFRLFVBQVUsc0JBQXFCO0FBY2pDLFNBQ0UsS0FERjtBQVZOLElBQU0sWUFBWSxLQUFLLFFBQVEsY0FBYyxZQUFZLEdBQUcsQ0FBQztBQU83RCxTQUFTLElBQUksT0FB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