@projectcor/maia-components 2.11.37-3 → 2.11.37-4

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.
@@ -137,7 +137,7 @@ export var FrequentlyAskedQuestions = function FrequentlyAskedQuestions(_ref2) {
137
137
  category = _ref8[0],
138
138
  categoryFaqs = _ref8[1];
139
139
  return /*#__PURE__*/_jsxs(SCFAQCategory, {
140
- children: [/*#__PURE__*/_jsx(SCFAQCategoryTitleText, {
140
+ children: [category !== 'undefined' && /*#__PURE__*/_jsx(SCFAQCategoryTitleText, {
141
141
  children: t("homeMenu.faq.categories.".concat(category.toLowerCase()))
142
142
  }), /*#__PURE__*/_jsx(SCFAQList, {
143
143
  children: categoryFaqs.map(function (faq) {
@@ -156,4 +156,4 @@ export var FrequentlyAskedQuestions = function FrequentlyAskedQuestions(_ref2) {
156
156
  })]
157
157
  });
158
158
  };
159
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VNZW1vIiwiVG9vbHRpcCIsInVzZVQiLCJ1c2VSZXNpemVMaXN0ZW5lciIsIkVWRU5UUyIsInVzZUV2ZW50IiwidXNlRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIiwiRmFxc0ljb24iLCJMb2FkZXJGYXFzIiwiRXJyb3JTZWFyY2hGYXFzIiwiU0NGQVFzQ29udGFpbmVyIiwiU0NGQVFzVGl0bGUiLCJTQ0ZBUXNMaXN0Q29udGFpbmVyIiwiU0NGQVFDYXRlZ29yeSIsIlNDRkFRQ2F0ZWdvcnlUaXRsZVRleHQiLCJTQ0ZBUUxpc3QiLCJTQ0ZBUUl0ZW0iLCJTQ0ZBUUl0ZW1JY29uIiwiU0NGQVFJdGVtVGV4dCIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsIkZhcUxpc3RJdGVtIiwiX3JlZiIsImZhcSIsImlzU2Nyb2xsaW5nIiwib25DbGljayIsInRleHRSZWYiLCJfdXNlUmVzaXplTGlzdGVuZXIiLCJ0aXRsZSIsInNob3dUb29sdGlwIiwiY2hpbGRyZW4iLCJ1c2VHcmFkaWVudCIsImhlaWdodCIsIndpZHRoIiwicmVmIiwiRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIiwiX3JlZjIiLCJvblN0YXJ0Q2hhdCIsIl9yZWYyJHNob3dGQVFzIiwic2hvd0ZBUXMiLCJfcmVmMiRzaG93UHJvamVjdFN1bW0iLCJzaG93UHJvamVjdFN1bW1hcnkiLCJhZ2VudElkIiwibGFuZyIsIl9yZWYyJGlzU2Nyb2xsaW5nIiwiX3VzZVQiLCJ0IiwiZXZlbnQiLCJfdXNlRnJlcXVlbnRseUFza2VkUXUiLCJmYXFzIiwibG9hZGluZyIsImVycm9yIiwiaGFuZGxlR2V0RnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIiwibGFzdEZldGNoUmVmIiwiaGFuZGxlRkFRQ2xpY2siLCJpZCIsImFpQ2hhdFNlbGVjdEZBUSIsIm9wdGlvbiIsImlkX2ZhcSIsImNhdGVnb3J5X2ZhcSIsImNhdGVnb3J5Iiwib3JpZ2luX2ZhcSIsImZhcXNCeUNhdGVnb3J5IiwiZ3JvdXBlZCIsInNvcnRlZEZhcXMiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJzb3J0IiwiYSIsImIiLCJfYSRvcmRlciIsIl9iJG9yZGVyIiwib3JkZXJBIiwib3JkZXIiLCJOdW1iZXIiLCJNQVhfU0FGRV9JTlRFR0VSIiwib3JkZXJCIiwiZm9yRWFjaCIsInB1c2giLCJPYmplY3QiLCJrZXlzIiwiY2F0IiwiX2Ekb3JkZXIyIiwiX2Ikb3JkZXIyIiwib3JkZXJlZEZhcUNhdGVnb3JpZXMiLCJlbnRyaWVzIiwiX3JlZjMiLCJfcmVmNCIsIl9jYXRlZ29yeUZhcXNBJDAkb3JkZSIsIl9jYXRlZ29yeUZhcXNBJCIsIl9jYXRlZ29yeUZhcXNCJDAkb3JkZSIsIl9jYXRlZ29yeUZhcXNCJCIsIl9yZWY1IiwiX3NsaWNlZFRvQXJyYXkiLCJjYXRlZ29yeUZhcXNBIiwiX3JlZjYiLCJjYXRlZ29yeUZhcXNCIiwiZmlyc3RPcmRlckEiLCJmaXJzdE9yZGVyQiIsImN1cnJlbnRLZXkiLCJjb25jYXQiLCJsYXN0S2V5IiwiY3VycmVudCIsImxlbmd0aCIsIiRzaG93RkFRcyIsIiRzaG93UHJvamVjdFN1bW1hcnkiLCJtZXNzYWdlIiwibWFwIiwiX3JlZjciLCJfcmVmOCIsImNhdGVnb3J5RmFxcyIsInRvTG93ZXJDYXNlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zL0ZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvZnVuY3Rpb24tY29tcG9uZW50LWRlZmluaXRpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdAcHJvamVjdGNvci90b29sdGlwdjIvbGliL2NvbXBvbmVudHMvVG9vbHRpcCdcbmltcG9ydCB7IHVzZVQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VUJ1xuaW1wb3J0IHsgdXNlUmVzaXplTGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VSZXNpemUnXG5pbXBvcnQgdHlwZSB7IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvRnJlcXVlbnRseUFza2VkUXVlc3Rpb24nXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgeyB1c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMnXG5pbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBGYXFzSWNvbiB9IGZyb20gJy4uL2ljb25zL0ZhcXNJY29uJ1xuaW1wb3J0IHsgTG9hZGVyRmFxcyB9IGZyb20gJy4uL0xvYWRpbmdGYXFzJ1xuaW1wb3J0IHsgRXJyb3JTZWFyY2hGYXFzIH0gZnJvbSAnLi4vRXJyb3JTZWFyY2hGYXFzJ1xuaW1wb3J0IHtcbiAgU0NGQVFzQ29udGFpbmVyLFxuICBTQ0ZBUXNUaXRsZSxcbiAgU0NGQVFzTGlzdENvbnRhaW5lcixcbiAgU0NGQVFDYXRlZ29yeSxcbiAgU0NGQVFDYXRlZ29yeVRpdGxlVGV4dCxcbiAgU0NGQVFMaXN0LFxuICBTQ0ZBUUl0ZW0sXG4gIFNDRkFRSXRlbUljb24sXG4gIFNDRkFRSXRlbVRleHQsXG59IGZyb20gJy4vRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zLnN0eWxlcydcblxuZnVuY3Rpb24gRmFxTGlzdEl0ZW0oe1xuICBmYXEsXG4gIGlzU2Nyb2xsaW5nLFxuICBvbkNsaWNrLFxufToge1xuICBmYXE6IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uXG4gIGlzU2Nyb2xsaW5nOiBib29sZWFuXG4gIG9uQ2xpY2s6ICgpID0+IHZvaWRcbn0pIHtcbiAgY29uc3QgdGV4dFJlZiA9IHVzZVJlZjxIVE1MU3BhbkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IHsgc2hvd1Rvb2x0aXAgfSA9IHVzZVJlc2l6ZUxpc3RlbmVyKHRleHRSZWYsIFtmYXEudGl0bGVdKVxuXG4gIHJldHVybiAoXG4gICAgPFNDRkFRSXRlbSBvbkNsaWNrPXtvbkNsaWNrfT5cbiAgICAgIDxTQ0ZBUUl0ZW1JY29uPlxuICAgICAgICA8RmFxc0ljb24gdXNlR3JhZGllbnQgaGVpZ2h0PXsxOH0gd2lkdGg9ezE4fSAvPlxuICAgICAgPC9TQ0ZBUUl0ZW1JY29uPlxuICAgICAgPFNDRkFRSXRlbVRleHQgcmVmPXt0ZXh0UmVmfT5cbiAgICAgICAge2lzU2Nyb2xsaW5nID8gZmFxLnRpdGxlIDogPFRvb2x0aXAgdGl0bGU9e3Nob3dUb29sdGlwID8gZmFxLnRpdGxlIDogJyd9PntmYXEudGl0bGV9PC9Ub29sdGlwPn1cbiAgICAgIDwvU0NGQVFJdGVtVGV4dD5cbiAgICA8L1NDRkFRSXRlbT5cbiAgKVxufVxuXG50eXBlIEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc1Byb3BzID0ge1xuICBvblN0YXJ0Q2hhdDogKG1lc3NhZ2U6IHN0cmluZywgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdIHwgbnVsbCwgZmFxSWQ/OiBzdHJpbmcpID0+IHZvaWRcbiAgc2hvd0ZBUXM/OiBib29sZWFuXG4gIHNob3dQcm9qZWN0U3VtbWFyeT86IGJvb2xlYW5cbiAgYWdlbnRJZD86IHN0cmluZ1xuICBsYW5nOiBzdHJpbmdcbiAgaXNTY3JvbGxpbmc/OiBib29sZWFuXG59XG5cbmV4cG9ydCBjb25zdCBGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMgPSAoe1xuICBvblN0YXJ0Q2hhdCxcbiAgc2hvd0ZBUXMgPSBmYWxzZSxcbiAgc2hvd1Byb2plY3RTdW1tYXJ5ID0gZmFsc2UsXG4gIGFnZW50SWQsXG4gIGxhbmcsXG4gIGlzU2Nyb2xsaW5nID0gZmFsc2UsXG59OiBGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnNQcm9wcykgPT4ge1xuICBjb25zdCB7IHQgfSA9IHVzZVQoKVxuICBjb25zdCBldmVudCA9IHVzZUV2ZW50KClcblxuICBjb25zdCB7IGZhcXMsIGxvYWRpbmcsIGVycm9yLCBoYW5kbGVHZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMgfSA9IHVzZUZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyhhZ2VudElkLCBsYW5nKVxuICBjb25zdCBsYXN0RmV0Y2hSZWYgPSB1c2VSZWY8eyBhZ2VudElkOiBzdHJpbmc7IGxhbmc6IHN0cmluZyB9IHwgbnVsbD4obnVsbClcblxuICBjb25zdCBoYW5kbGVGQVFDbGljayA9IChmYXE6IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uKSA9PiB7XG4gICAgb25TdGFydENoYXQoZmFxLnRpdGxlLCBudWxsLCBmYXEuaWQpXG4gICAgZXZlbnQoRVZFTlRTLmFpQ2hhdFNlbGVjdEZBUSwge1xuICAgICAgb3B0aW9uOiB7XG4gICAgICAgIGlkX2ZhcTogZmFxLnRpdGxlLFxuICAgICAgICBjYXRlZ29yeV9mYXE6IGZhcS5jYXRlZ29yeSxcbiAgICAgICAgb3JpZ2luX2ZhcTogJ2hvbWVfY2hhdCcsXG4gICAgICB9LFxuICAgIH0pXG4gIH1cblxuICBjb25zdCBmYXFzQnlDYXRlZ29yeSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGdyb3VwZWQ6IFJlY29yZDxzdHJpbmcsIEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uW10+ID0ge31cblxuICAgIGNvbnN0IHNvcnRlZEZhcXMgPSBbLi4uZmFxc10uc29ydCgoYSwgYikgPT4ge1xuICAgICAgY29uc3Qgb3JkZXJBID0gYS5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuICAgICAgY29uc3Qgb3JkZXJCID0gYi5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gICAgICByZXR1cm4gb3JkZXJBIC0gb3JkZXJCXG4gICAgfSlcblxuICAgIHNvcnRlZEZhcXMuZm9yRWFjaChmYXEgPT4ge1xuICAgICAgY29uc3QgY2F0ZWdvcnkgPSBmYXEuY2F0ZWdvcnkgfHwgJ3VuZGVmaW5lZCdcbiAgICAgIGlmICghZ3JvdXBlZFtjYXRlZ29yeV0pIHtcbiAgICAgICAgZ3JvdXBlZFtjYXRlZ29yeV0gPSBbXVxuICAgICAgfVxuICAgICAgZ3JvdXBlZFtjYXRlZ29yeV0ucHVzaChmYXEpXG4gICAgfSlcblxuICAgIE9iamVjdC5rZXlzKGdyb3VwZWQpLmZvckVhY2goY2F0ID0+IHtcbiAgICAgIGdyb3VwZWRbY2F0XS5zb3J0KChhLCBiKSA9PiAoYS5vcmRlciA/PyAwKSAtIChiLm9yZGVyID8/IDApKVxuICAgIH0pXG5cbiAgICByZXR1cm4gZ3JvdXBlZFxuICB9LCBbZmFxc10pXG5cbiAgY29uc3Qgb3JkZXJlZEZhcUNhdGVnb3JpZXMgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBPYmplY3QuZW50cmllcyhmYXFzQnlDYXRlZ29yeSkuc29ydCgoWywgY2F0ZWdvcnlGYXFzQV0sIFssIGNhdGVnb3J5RmFxc0JdKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpcnN0T3JkZXJBID0gY2F0ZWdvcnlGYXFzQVswXT8ub3JkZXIgPz8gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJcbiAgICAgICAgY29uc3QgZmlyc3RPcmRlckIgPSBjYXRlZ29yeUZhcXNCWzBdPy5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gICAgICAgIHJldHVybiBmaXJzdE9yZGVyQSAtIGZpcnN0T3JkZXJCXG4gICAgICB9KSxcbiAgICBbZmFxc0J5Q2F0ZWdvcnldXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChhZ2VudElkKSB7XG4gICAgICBjb25zdCBjdXJyZW50S2V5ID0gYCR7YWdlbnRJZH0tJHtsYW5nfWBcbiAgICAgIGNvbnN0IGxhc3RLZXkgPSBsYXN0RmV0Y2hSZWYuY3VycmVudCA/IGAke2xhc3RGZXRjaFJlZi5jdXJyZW50LmFnZW50SWR9LSR7bGFzdEZldGNoUmVmLmN1cnJlbnQubGFuZ31gIDogbnVsbFxuXG4gICAgICBpZiAoY3VycmVudEtleSAhPT0gbGFzdEtleSkge1xuICAgICAgICBsYXN0RmV0Y2hSZWYuY3VycmVudCA9IHsgYWdlbnRJZCwgbGFuZyB9XG4gICAgICAgIGhhbmRsZUdldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyh7IGFnZW50SWQsIGxhbmcgfSlcbiAgICAgIH1cbiAgICB9XG4gIH0sIFthZ2VudElkLCBoYW5kbGVHZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMsIGxhbmddKVxuXG4gIGlmICghbG9hZGluZyAmJiAhZXJyb3IgJiYgZmFxcy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8U0NGQVFzQ29udGFpbmVyPlxuICAgICAgeyFsb2FkaW5nICYmICFlcnJvciAmJiBmYXFzLmxlbmd0aCA+IDAgJiYgKFxuICAgICAgICA8U0NGQVFzVGl0bGU+XG4gICAgICAgICAgPHNwYW4+e3QoJ2hvbWVNZW51LmZhcS50aXRsZScpfTwvc3Bhbj5cbiAgICAgICAgPC9TQ0ZBUXNUaXRsZT5cbiAgICAgICl9XG4gICAgICA8U0NGQVFzTGlzdENvbnRhaW5lciAkc2hvd0ZBUXM9e3Nob3dGQVFzfSAkc2hvd1Byb2plY3RTdW1tYXJ5PXtzaG93UHJvamVjdFN1bW1hcnl9PlxuICAgICAgICB7bG9hZGluZyAmJiAhZXJyb3IgJiYgPExvYWRlckZhcXMgLz59XG4gICAgICAgIHtlcnJvciAmJiA8RXJyb3JTZWFyY2hGYXFzIG1lc3NhZ2U9e3QoJ2hvbWVNZW51LmZhcS5lcnJvcicpfSAvPn1cbiAgICAgICAgeyFsb2FkaW5nICYmICFlcnJvciAmJiBvcmRlcmVkRmFxQ2F0ZWdvcmllcy5sZW5ndGggPiAwICYmIChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAge29yZGVyZWRGYXFDYXRlZ29yaWVzLm1hcCgoW2NhdGVnb3J5LCBjYXRlZ29yeUZhcXNdKSA9PiAoXG4gICAgICAgICAgICAgIDxTQ0ZBUUNhdGVnb3J5IGtleT17Y2F0ZWdvcnl9PlxuICAgICAgICAgICAgICAgIDxTQ0ZBUUNhdGVnb3J5VGl0bGVUZXh0PlxuICAgICAgICAgICAgICAgICAge3QoYGhvbWVNZW51LmZhcS5jYXRlZ29yaWVzLiR7Y2F0ZWdvcnkudG9Mb3dlckNhc2UoKX1gKX1cbiAgICAgICAgICAgICAgICA8L1NDRkFRQ2F0ZWdvcnlUaXRsZVRleHQ+XG5cbiAgICAgICAgICAgICAgICA8U0NGQVFMaXN0PlxuICAgICAgICAgICAgICAgICAge2NhdGVnb3J5RmFxcy5tYXAoZmFxID0+IChcbiAgICAgICAgICAgICAgICAgICAgPEZhcUxpc3RJdGVtIGtleT17ZmFxLmlkfSBmYXE9e2ZhcX0gaXNTY3JvbGxpbmc9e2lzU2Nyb2xsaW5nfSBvbkNsaWNrPXsoKSA9PiBoYW5kbGVGQVFDbGljayhmYXEpfSAvPlxuICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgPC9TQ0ZBUUxpc3Q+XG4gICAgICAgICAgICAgIDwvU0NGQVFDYXRlZ29yeT5cbiAgICAgICAgICAgICkpfVxuICAgICAgICAgIDwvPlxuICAgICAgICApfVxuICAgICAgPC9TQ0ZBUXNMaXN0Q29udGFpbmVyPlxuICAgIDwvU0NGQVFzQ29udGFpbmVyPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsU0FBUyxFQUFFQyxNQUFNLEVBQUVDLE9BQU8sUUFBUSxPQUFPO0FBQ2xELFNBQVNDLE9BQU8sUUFBUSw4Q0FBOEM7QUFDdEUsU0FBU0MsSUFBSSxRQUFRLHFCQUFxQjtBQUMxQyxTQUFTQyxpQkFBaUIsUUFBUSwwQkFBMEI7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
159
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VNZW1vIiwiVG9vbHRpcCIsInVzZVQiLCJ1c2VSZXNpemVMaXN0ZW5lciIsIkVWRU5UUyIsInVzZUV2ZW50IiwidXNlRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIiwiRmFxc0ljb24iLCJMb2FkZXJGYXFzIiwiRXJyb3JTZWFyY2hGYXFzIiwiU0NGQVFzQ29udGFpbmVyIiwiU0NGQVFzVGl0bGUiLCJTQ0ZBUXNMaXN0Q29udGFpbmVyIiwiU0NGQVFDYXRlZ29yeSIsIlNDRkFRQ2F0ZWdvcnlUaXRsZVRleHQiLCJTQ0ZBUUxpc3QiLCJTQ0ZBUUl0ZW0iLCJTQ0ZBUUl0ZW1JY29uIiwiU0NGQVFJdGVtVGV4dCIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsIkZhcUxpc3RJdGVtIiwiX3JlZiIsImZhcSIsImlzU2Nyb2xsaW5nIiwib25DbGljayIsInRleHRSZWYiLCJfdXNlUmVzaXplTGlzdGVuZXIiLCJ0aXRsZSIsInNob3dUb29sdGlwIiwiY2hpbGRyZW4iLCJ1c2VHcmFkaWVudCIsImhlaWdodCIsIndpZHRoIiwicmVmIiwiRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIiwiX3JlZjIiLCJvblN0YXJ0Q2hhdCIsIl9yZWYyJHNob3dGQVFzIiwic2hvd0ZBUXMiLCJfcmVmMiRzaG93UHJvamVjdFN1bW0iLCJzaG93UHJvamVjdFN1bW1hcnkiLCJhZ2VudElkIiwibGFuZyIsIl9yZWYyJGlzU2Nyb2xsaW5nIiwiX3VzZVQiLCJ0IiwiZXZlbnQiLCJfdXNlRnJlcXVlbnRseUFza2VkUXUiLCJmYXFzIiwibG9hZGluZyIsImVycm9yIiwiaGFuZGxlR2V0RnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIiwibGFzdEZldGNoUmVmIiwiaGFuZGxlRkFRQ2xpY2siLCJpZCIsImFpQ2hhdFNlbGVjdEZBUSIsIm9wdGlvbiIsImlkX2ZhcSIsImNhdGVnb3J5X2ZhcSIsImNhdGVnb3J5Iiwib3JpZ2luX2ZhcSIsImZhcXNCeUNhdGVnb3J5IiwiZ3JvdXBlZCIsInNvcnRlZEZhcXMiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJzb3J0IiwiYSIsImIiLCJfYSRvcmRlciIsIl9iJG9yZGVyIiwib3JkZXJBIiwib3JkZXIiLCJOdW1iZXIiLCJNQVhfU0FGRV9JTlRFR0VSIiwib3JkZXJCIiwiZm9yRWFjaCIsInB1c2giLCJPYmplY3QiLCJrZXlzIiwiY2F0IiwiX2Ekb3JkZXIyIiwiX2Ikb3JkZXIyIiwib3JkZXJlZEZhcUNhdGVnb3JpZXMiLCJlbnRyaWVzIiwiX3JlZjMiLCJfcmVmNCIsIl9jYXRlZ29yeUZhcXNBJDAkb3JkZSIsIl9jYXRlZ29yeUZhcXNBJCIsIl9jYXRlZ29yeUZhcXNCJDAkb3JkZSIsIl9jYXRlZ29yeUZhcXNCJCIsIl9yZWY1IiwiX3NsaWNlZFRvQXJyYXkiLCJjYXRlZ29yeUZhcXNBIiwiX3JlZjYiLCJjYXRlZ29yeUZhcXNCIiwiZmlyc3RPcmRlckEiLCJmaXJzdE9yZGVyQiIsImN1cnJlbnRLZXkiLCJjb25jYXQiLCJsYXN0S2V5IiwiY3VycmVudCIsImxlbmd0aCIsIiRzaG93RkFRcyIsIiRzaG93UHJvamVjdFN1bW1hcnkiLCJtZXNzYWdlIiwibWFwIiwiX3JlZjciLCJfcmVmOCIsImNhdGVnb3J5RmFxcyIsInRvTG93ZXJDYXNlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zL0ZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvZnVuY3Rpb24tY29tcG9uZW50LWRlZmluaXRpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdAcHJvamVjdGNvci90b29sdGlwdjIvbGliL2NvbXBvbmVudHMvVG9vbHRpcCdcbmltcG9ydCB7IHVzZVQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VUJ1xuaW1wb3J0IHsgdXNlUmVzaXplTGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VSZXNpemUnXG5pbXBvcnQgdHlwZSB7IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvRnJlcXVlbnRseUFza2VkUXVlc3Rpb24nXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgeyB1c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMnXG5pbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBGYXFzSWNvbiB9IGZyb20gJy4uL2ljb25zL0ZhcXNJY29uJ1xuaW1wb3J0IHsgTG9hZGVyRmFxcyB9IGZyb20gJy4uL0xvYWRpbmdGYXFzJ1xuaW1wb3J0IHsgRXJyb3JTZWFyY2hGYXFzIH0gZnJvbSAnLi4vRXJyb3JTZWFyY2hGYXFzJ1xuaW1wb3J0IHtcbiAgU0NGQVFzQ29udGFpbmVyLFxuICBTQ0ZBUXNUaXRsZSxcbiAgU0NGQVFzTGlzdENvbnRhaW5lcixcbiAgU0NGQVFDYXRlZ29yeSxcbiAgU0NGQVFDYXRlZ29yeVRpdGxlVGV4dCxcbiAgU0NGQVFMaXN0LFxuICBTQ0ZBUUl0ZW0sXG4gIFNDRkFRSXRlbUljb24sXG4gIFNDRkFRSXRlbVRleHQsXG59IGZyb20gJy4vRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zLnN0eWxlcydcblxuZnVuY3Rpb24gRmFxTGlzdEl0ZW0oe1xuICBmYXEsXG4gIGlzU2Nyb2xsaW5nLFxuICBvbkNsaWNrLFxufToge1xuICBmYXE6IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uXG4gIGlzU2Nyb2xsaW5nOiBib29sZWFuXG4gIG9uQ2xpY2s6ICgpID0+IHZvaWRcbn0pIHtcbiAgY29uc3QgdGV4dFJlZiA9IHVzZVJlZjxIVE1MU3BhbkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IHsgc2hvd1Rvb2x0aXAgfSA9IHVzZVJlc2l6ZUxpc3RlbmVyKHRleHRSZWYsIFtmYXEudGl0bGVdKVxuXG4gIHJldHVybiAoXG4gICAgPFNDRkFRSXRlbSBvbkNsaWNrPXtvbkNsaWNrfT5cbiAgICAgIDxTQ0ZBUUl0ZW1JY29uPlxuICAgICAgICA8RmFxc0ljb24gdXNlR3JhZGllbnQgaGVpZ2h0PXsxOH0gd2lkdGg9ezE4fSAvPlxuICAgICAgPC9TQ0ZBUUl0ZW1JY29uPlxuICAgICAgPFNDRkFRSXRlbVRleHQgcmVmPXt0ZXh0UmVmfT5cbiAgICAgICAge2lzU2Nyb2xsaW5nID8gZmFxLnRpdGxlIDogPFRvb2x0aXAgdGl0bGU9e3Nob3dUb29sdGlwID8gZmFxLnRpdGxlIDogJyd9PntmYXEudGl0bGV9PC9Ub29sdGlwPn1cbiAgICAgIDwvU0NGQVFJdGVtVGV4dD5cbiAgICA8L1NDRkFRSXRlbT5cbiAgKVxufVxuXG50eXBlIEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc1Byb3BzID0ge1xuICBvblN0YXJ0Q2hhdDogKG1lc3NhZ2U6IHN0cmluZywgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdIHwgbnVsbCwgZmFxSWQ/OiBzdHJpbmcpID0+IHZvaWRcbiAgc2hvd0ZBUXM/OiBib29sZWFuXG4gIHNob3dQcm9qZWN0U3VtbWFyeT86IGJvb2xlYW5cbiAgYWdlbnRJZD86IHN0cmluZ1xuICBsYW5nOiBzdHJpbmdcbiAgaXNTY3JvbGxpbmc/OiBib29sZWFuXG59XG5cbmV4cG9ydCBjb25zdCBGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMgPSAoe1xuICBvblN0YXJ0Q2hhdCxcbiAgc2hvd0ZBUXMgPSBmYWxzZSxcbiAgc2hvd1Byb2plY3RTdW1tYXJ5ID0gZmFsc2UsXG4gIGFnZW50SWQsXG4gIGxhbmcsXG4gIGlzU2Nyb2xsaW5nID0gZmFsc2UsXG59OiBGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnNQcm9wcykgPT4ge1xuICBjb25zdCB7IHQgfSA9IHVzZVQoKVxuICBjb25zdCBldmVudCA9IHVzZUV2ZW50KClcblxuICBjb25zdCB7IGZhcXMsIGxvYWRpbmcsIGVycm9yLCBoYW5kbGVHZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMgfSA9IHVzZUZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyhhZ2VudElkLCBsYW5nKVxuICBjb25zdCBsYXN0RmV0Y2hSZWYgPSB1c2VSZWY8eyBhZ2VudElkOiBzdHJpbmc7IGxhbmc6IHN0cmluZyB9IHwgbnVsbD4obnVsbClcblxuICBjb25zdCBoYW5kbGVGQVFDbGljayA9IChmYXE6IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uKSA9PiB7XG4gICAgb25TdGFydENoYXQoZmFxLnRpdGxlLCBudWxsLCBmYXEuaWQpXG4gICAgZXZlbnQoRVZFTlRTLmFpQ2hhdFNlbGVjdEZBUSwge1xuICAgICAgb3B0aW9uOiB7XG4gICAgICAgIGlkX2ZhcTogZmFxLnRpdGxlLFxuICAgICAgICBjYXRlZ29yeV9mYXE6IGZhcS5jYXRlZ29yeSxcbiAgICAgICAgb3JpZ2luX2ZhcTogJ2hvbWVfY2hhdCcsXG4gICAgICB9LFxuICAgIH0pXG4gIH1cblxuICBjb25zdCBmYXFzQnlDYXRlZ29yeSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGdyb3VwZWQ6IFJlY29yZDxzdHJpbmcsIEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uW10+ID0ge31cblxuICAgIGNvbnN0IHNvcnRlZEZhcXMgPSBbLi4uZmFxc10uc29ydCgoYSwgYikgPT4ge1xuICAgICAgY29uc3Qgb3JkZXJBID0gYS5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuICAgICAgY29uc3Qgb3JkZXJCID0gYi5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gICAgICByZXR1cm4gb3JkZXJBIC0gb3JkZXJCXG4gICAgfSlcblxuICAgIHNvcnRlZEZhcXMuZm9yRWFjaChmYXEgPT4ge1xuICAgICAgY29uc3QgY2F0ZWdvcnkgPSBmYXEuY2F0ZWdvcnkgfHwgJ3VuZGVmaW5lZCdcbiAgICAgIGlmICghZ3JvdXBlZFtjYXRlZ29yeV0pIHtcbiAgICAgICAgZ3JvdXBlZFtjYXRlZ29yeV0gPSBbXVxuICAgICAgfVxuICAgICAgZ3JvdXBlZFtjYXRlZ29yeV0ucHVzaChmYXEpXG4gICAgfSlcblxuICAgIE9iamVjdC5rZXlzKGdyb3VwZWQpLmZvckVhY2goY2F0ID0+IHtcbiAgICAgIGdyb3VwZWRbY2F0XS5zb3J0KChhLCBiKSA9PiAoYS5vcmRlciA/PyAwKSAtIChiLm9yZGVyID8/IDApKVxuICAgIH0pXG5cbiAgICByZXR1cm4gZ3JvdXBlZFxuICB9LCBbZmFxc10pXG5cbiAgY29uc3Qgb3JkZXJlZEZhcUNhdGVnb3JpZXMgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBPYmplY3QuZW50cmllcyhmYXFzQnlDYXRlZ29yeSkuc29ydCgoWywgY2F0ZWdvcnlGYXFzQV0sIFssIGNhdGVnb3J5RmFxc0JdKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpcnN0T3JkZXJBID0gY2F0ZWdvcnlGYXFzQVswXT8ub3JkZXIgPz8gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJcbiAgICAgICAgY29uc3QgZmlyc3RPcmRlckIgPSBjYXRlZ29yeUZhcXNCWzBdPy5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gICAgICAgIHJldHVybiBmaXJzdE9yZGVyQSAtIGZpcnN0T3JkZXJCXG4gICAgICB9KSxcbiAgICBbZmFxc0J5Q2F0ZWdvcnldXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChhZ2VudElkKSB7XG4gICAgICBjb25zdCBjdXJyZW50S2V5ID0gYCR7YWdlbnRJZH0tJHtsYW5nfWBcbiAgICAgIGNvbnN0IGxhc3RLZXkgPSBsYXN0RmV0Y2hSZWYuY3VycmVudCA/IGAke2xhc3RGZXRjaFJlZi5jdXJyZW50LmFnZW50SWR9LSR7bGFzdEZldGNoUmVmLmN1cnJlbnQubGFuZ31gIDogbnVsbFxuXG4gICAgICBpZiAoY3VycmVudEtleSAhPT0gbGFzdEtleSkge1xuICAgICAgICBsYXN0RmV0Y2hSZWYuY3VycmVudCA9IHsgYWdlbnRJZCwgbGFuZyB9XG4gICAgICAgIGhhbmRsZUdldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyh7IGFnZW50SWQsIGxhbmcgfSlcbiAgICAgIH1cbiAgICB9XG4gIH0sIFthZ2VudElkLCBoYW5kbGVHZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMsIGxhbmddKVxuXG4gIGlmICghbG9hZGluZyAmJiAhZXJyb3IgJiYgZmFxcy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8U0NGQVFzQ29udGFpbmVyPlxuICAgICAgeyFsb2FkaW5nICYmICFlcnJvciAmJiBmYXFzLmxlbmd0aCA+IDAgJiYgKFxuICAgICAgICA8U0NGQVFzVGl0bGU+XG4gICAgICAgICAgPHNwYW4+e3QoJ2hvbWVNZW51LmZhcS50aXRsZScpfTwvc3Bhbj5cbiAgICAgICAgPC9TQ0ZBUXNUaXRsZT5cbiAgICAgICl9XG4gICAgICA8U0NGQVFzTGlzdENvbnRhaW5lciAkc2hvd0ZBUXM9e3Nob3dGQVFzfSAkc2hvd1Byb2plY3RTdW1tYXJ5PXtzaG93UHJvamVjdFN1bW1hcnl9PlxuICAgICAgICB7bG9hZGluZyAmJiAhZXJyb3IgJiYgPExvYWRlckZhcXMgLz59XG4gICAgICAgIHtlcnJvciAmJiA8RXJyb3JTZWFyY2hGYXFzIG1lc3NhZ2U9e3QoJ2hvbWVNZW51LmZhcS5lcnJvcicpfSAvPn1cbiAgICAgICAgeyFsb2FkaW5nICYmICFlcnJvciAmJiBvcmRlcmVkRmFxQ2F0ZWdvcmllcy5sZW5ndGggPiAwICYmIChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAge29yZGVyZWRGYXFDYXRlZ29yaWVzLm1hcCgoW2NhdGVnb3J5LCBjYXRlZ29yeUZhcXNdKSA9PiAoXG4gICAgICAgICAgICAgIDxTQ0ZBUUNhdGVnb3J5IGtleT17Y2F0ZWdvcnl9PlxuICAgICAgICAgICAgICAgIHtjYXRlZ29yeSAhPT0gJ3VuZGVmaW5lZCcgJiYgKFxuICAgICAgICAgICAgICAgICAgPFNDRkFRQ2F0ZWdvcnlUaXRsZVRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHt0KGBob21lTWVudS5mYXEuY2F0ZWdvcmllcy4ke2NhdGVnb3J5LnRvTG93ZXJDYXNlKCl9YCl9XG4gICAgICAgICAgICAgICAgICA8L1NDRkFRQ2F0ZWdvcnlUaXRsZVRleHQ+XG4gICAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICAgIDxTQ0ZBUUxpc3Q+XG4gICAgICAgICAgICAgICAgICB7Y2F0ZWdvcnlGYXFzLm1hcChmYXEgPT4gKFxuICAgICAgICAgICAgICAgICAgICA8RmFxTGlzdEl0ZW0ga2V5PXtmYXEuaWR9IGZhcT17ZmFxfSBpc1Njcm9sbGluZz17aXNTY3JvbGxpbmd9IG9uQ2xpY2s9eygpID0+IGhhbmRsZUZBUUNsaWNrKGZhcSl9IC8+XG4gICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICA8L1NDRkFRTGlzdD5cbiAgICAgICAgICAgICAgPC9TQ0ZBUUNhdGVnb3J5PlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC8+XG4gICAgICAgICl9XG4gICAgICA8L1NDRkFRc0xpc3RDb250YWluZXI+XG4gICAgPC9TQ0ZBUXNDb250YWluZXI+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxTQUFTLEVBQUVDLE1BQU0sRUFBRUMsT0FBTyxRQUFRLE9BQU87QUFDbEQsU0FBU0MsT0FB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
@@ -25,6 +25,7 @@ import { Plus } from '@projectcor/icons/lib/components/Plus';
25
25
  import { Check } from '@projectcor/icons/lib/components/Check';
26
26
  import { Cross } from '@projectcor/icons/lib/components/Cross';
27
27
  import { Tooltip } from '@projectcor/tooltipv2/lib/components/Tooltip';
28
+ import colors from '@projectcor/theme/lib/base/colors';
28
29
  import { ActiveToolChipIconButton, ActiveToolChipLabel, ActiveToolChipRoot, PlusMenuDivider, PlusMenuInnerColumn, PlusMenuItemButton, PlusMenuItemLabel, PlusMenuPaper, PlusMenuToolsRow, PlusToggleButton, SCMIAttachment, SCMIAttachmentDeleteIcon, StyledMAIAInput, StyledMAIAInputButtons, StyledMAIAInputWrapper, StyledMAIASendButton, StyledMAIAStopButton, StyledMAIAStopIcon } from './styles';
29
30
  import { useGlobalContext } from '../../../context/global-context';
30
31
  import { ModalFileExceeds } from '../../organisms/ModalFileExceeds';
@@ -32,7 +33,8 @@ import { useT } from '../../../hooks/useT';
32
33
  import { TelescopeIcon } from '../icons/TelescopeIcon';
33
34
  import { EVENTS, useEvent } from '../../../hooks/useEvent';
34
35
  import { getChatToolsMenuAgentType } from '../../../utils/hitlAnalytics';
35
- import { allowedFileTypes, fileTypes, MAX_FILE_SIZE_MB_MAIA_VISION, MAX_FILE_SIZE_MB_OLD, MAX_FILE_SIZE_MB_AUDIO } from '../../../constants/formatExtensions';
36
+ import { MAIA_CHAT_INPUT_UI } from '../../../styles/config';
37
+ import { allowedFileTypes, fileTypes, MAX_FILE_SIZE_MB_MAIA_VISION, MAX_FILE_SIZE_MB_OLD, MAX_FILE_SIZE_MB_AUDIO, MAX_CHAT_INPUT_ATTACHMENTS } from '../../../constants/formatExtensions';
36
38
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
37
39
  var TOOL_CHIP_EXIT_MS = 220;
38
40
  export var MAIAInput = function MAIAInput(_ref) {
@@ -104,10 +106,6 @@ export var MAIAInput = function MAIAInput(_ref) {
104
106
  deep: false
105
107
  });
106
108
  var plusMenuOpen = Boolean(plusMenuAnchor);
107
- searchModeActiveRef.current = {
108
- web: isWebSearchActive,
109
- deep: isDeepSearchActive
110
- };
111
109
  var analyticsAgentType = getChatToolsMenuAgentType(agent);
112
110
  var analyticsCloneEntityPayload = (agent === null || agent === void 0 ? void 0 : agent.type) === 'clone' ? {
113
111
  entity: (_agent$entity = agent.entity) !== null && _agent$entity !== void 0 ? _agent$entity : null
@@ -130,6 +128,13 @@ export var MAIAInput = function MAIAInput(_ref) {
130
128
  var closePlusMenu = function closePlusMenu() {
131
129
  setPlusMenuAnchor(null);
132
130
  };
131
+ var cancelPendingToolChipExit = function cancelPendingToolChipExit() {
132
+ if (toolChipExitTimerRef.current !== null) {
133
+ clearTimeout(toolChipExitTimerRef.current);
134
+ toolChipExitTimerRef.current = null;
135
+ }
136
+ setToolChipExiting(false);
137
+ };
133
138
  var handlePlusButtonClick = function handlePlusButtonClick(e) {
134
139
  e.stopPropagation();
135
140
  if (plusMenuAnchor) {
@@ -148,7 +153,7 @@ export var MAIAInput = function MAIAInput(_ref) {
148
153
  agent_type: analyticsAgentType,
149
154
  option: 'files'
150
155
  }, analyticsCloneEntityPayload));
151
- if (attachments.length >= 5) return;
156
+ if (attachments.length >= MAX_CHAT_INPUT_ATTACHMENTS) return;
152
157
  (_fileInputRef$current = fileInputRef.current) === null || _fileInputRef$current === void 0 || _fileInputRef$current.click();
153
158
  };
154
159
  var beginToolChipExit = function beginToolChipExit() {
@@ -181,6 +186,7 @@ export var MAIAInput = function MAIAInput(_ref) {
181
186
  beginToolChipExit();
182
187
  return;
183
188
  }
189
+ cancelPendingToolChipExit();
184
190
  if (isDeepSearchActive) {
185
191
  toggleDeepSearch();
186
192
  }
@@ -197,6 +203,7 @@ export var MAIAInput = function MAIAInput(_ref) {
197
203
  beginToolChipExit();
198
204
  return;
199
205
  }
206
+ cancelPendingToolChipExit();
200
207
  if (isWebSearchActive) {
201
208
  toggleWebSearch();
202
209
  }
@@ -317,6 +324,12 @@ export var MAIAInput = function MAIAInput(_ref) {
317
324
  handleResize();
318
325
  }
319
326
  }, [disabled]);
327
+ useEffect(function () {
328
+ searchModeActiveRef.current = {
329
+ web: isWebSearchActive,
330
+ deep: isDeepSearchActive
331
+ };
332
+ }, [isWebSearchActive, isDeepSearchActive]);
320
333
  useEffect(function () {
321
334
  return function () {
322
335
  if (toolChipExitTimerRef.current !== null) {
@@ -458,32 +471,32 @@ export var MAIAInput = function MAIAInput(_ref) {
458
471
 
459
472
  // Validaciones específicas según el tipo de archivo
460
473
  if (isNewFormat(fileExtension)) {
461
- // Para nuevos formatos: hasta 4.99MB por archivo, hasta 5 archivos
474
+ // Para nuevos formatos: hasta 4.99MB por archivo, hasta MAX_CHAT_INPUT_ATTACHMENTS archivos
462
475
  if (file.size > MAX_FILE_SIZE_MB_MAIA_VISION * 1024 * 1024) {
463
476
  exceededFiles.push(file.name);
464
477
  excludedFile = true;
465
478
  }
466
- if (filesInserted + 1 > 5) {
479
+ if (filesInserted + 1 > MAX_CHAT_INPUT_ATTACHMENTS) {
467
480
  excludedFiles.push(file.name);
468
481
  excludedFile = true;
469
482
  }
470
483
  } else if (isOldFormat(fileExtension)) {
471
- // Para formatos anteriores: hasta 1MB por archivo, hasta 5 archivos
484
+ // Para formatos anteriores: hasta 1MB por archivo, hasta MAX_CHAT_INPUT_ATTACHMENTS archivos
472
485
  if (file.size > MAX_FILE_SIZE_MB_OLD * 1024 * 1024) {
473
486
  exceededFiles.push(file.name);
474
487
  excludedFile = true;
475
488
  }
476
- if (filesInserted + 1 > 5) {
489
+ if (filesInserted + 1 > MAX_CHAT_INPUT_ATTACHMENTS) {
477
490
  excludedFiles.push(file.name);
478
491
  excludedFile = true;
479
492
  }
480
493
  } else if (isAudioFormat(fileExtension)) {
481
- // Para archivos de audio: hasta 10MB por archivo, hasta 5 archivos
494
+ // Para archivos de audio: hasta 10MB por archivo, hasta MAX_CHAT_INPUT_ATTACHMENTS archivos
482
495
  if (file.size > MAX_FILE_SIZE_MB_AUDIO * 1024 * 1024) {
483
496
  exceededFiles.push(file.name);
484
497
  excludedFile = true;
485
498
  }
486
- if (filesInserted + 1 > 5) {
499
+ if (filesInserted + 1 > MAX_CHAT_INPUT_ATTACHMENTS) {
487
500
  excludedFiles.push(file.name);
488
501
  excludedFile = true;
489
502
  }
@@ -533,14 +546,13 @@ export var MAIAInput = function MAIAInput(_ref) {
533
546
  eventAmplitude(EVENTS.aiChatStopResponse);
534
547
  onStopGeneration === null || onStopGeneration === void 0 || onStopGeneration();
535
548
  };
536
- var plusIconColor = isFocused ? '#666666' : '#999';
537
- var plusMenuIconColor = '#4d4d4d';
538
- /** Alineado con `PlusMenuItemLabel` ($selected) y el check del menú */
539
- var plusMenuSelectedColor = '#00578c';
549
+ var plusIconColor = isFocused ? colors.text.secondary : colors.text.mediumGray;
550
+ var plusMenuIconColor = MAIA_CHAT_INPUT_UI.menuIcon;
551
+ var plusMenuSelectedColor = MAIA_CHAT_INPUT_UI.textBrandBold;
540
552
  var activeToolChipLeadingIcon;
541
553
  if (activeToolChipHovered) {
542
554
  activeToolChipLeadingIcon = /*#__PURE__*/_jsx(Cross, {
543
- color: "#a4adb5",
555
+ color: MAIA_CHAT_INPUT_UI.chipCloseIcon,
544
556
  width: 18,
545
557
  height: 18
546
558
  });
@@ -757,4 +769,4 @@ export var MAIAInput = function MAIAInput(_ref) {
757
769
  })]
758
770
  });
759
771
  };
760
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsIlBvcG92ZXIiLCJQYXBlclBsYW5lIiwiQXR0YWNoIiwiR2xvYmUiLCJUcmFzaCIsIlBsdXMiLCJDaGVjayIsIkNyb3NzIiwiVG9vbHRpcCIsIkFjdGl2ZVRvb2xDaGlwSWNvbkJ1dHRvbiIsIkFjdGl2ZVRvb2xDaGlwTGFiZWwiLCJBY3RpdmVUb29sQ2hpcFJvb3QiLCJQbHVzTWVudURpdmlkZXIiLCJQbHVzTWVudUlubmVyQ29sdW1uIiwiUGx1c01lbnVJdGVtQnV0dG9uIiwiUGx1c01lbnVJdGVtTGFiZWwiLCJQbHVzTWVudVBhcGVyIiwiUGx1c01lbnVUb29sc1JvdyIsIlBsdXNUb2dnbGVCdXR0b24iLCJTQ01JQXR0YWNobWVudCIsIlNDTUlBdHRhY2htZW50RGVsZXRlSWNvbiIsIlN0eWxlZE1BSUFJbnB1dCIsIlN0eWxlZE1BSUFJbnB1dEJ1dHRvbnMiLCJTdHlsZWRNQUlBSW5wdXRXcmFwcGVyIiwiU3R5bGVkTUFJQVNlbmRCdXR0b24iLCJTdHlsZWRNQUlBU3RvcEJ1dHRvbiIsIlN0eWxlZE1BSUFTdG9wSWNvbiIsInVzZUdsb2JhbENvbnRleHQiLCJNb2RhbEZpbGVFeGNlZWRzIiwidXNlVCIsIlRlbGVzY29wZUljb24iLCJFVkVOVFMiLCJ1c2VFdmVudCIsImdldENoYXRUb29sc01lbnVBZ2VudFR5cGUiLCJhbGxvd2VkRmlsZVR5cGVzIiwiZmlsZVR5cGVzIiwiTUFYX0ZJTEVfU0laRV9NQl9NQUlBX1ZJU0lPTiIsIk1BWF9GSUxFX1NJWkVfTUJfT0xEIiwiTUFYX0ZJTEVfU0laRV9NQl9BVURJTyIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsIlRPT0xfQ0hJUF9FWElUX01TIiwiTUFJQUlucHV0IiwiX3JlZiIsIl9hZ2VudCRlbnRpdHkiLCJvblNlbmRNZXNzYWdlIiwiY2xhc3NOYW1lIiwiZGlzYWJsZWQiLCJpc1N0cmVhbWluZyIsImlzV3JpdGluZyIsIm9uU3RvcEdlbmVyYXRpb24iLCJwbGFjZWhvbGRlciIsIm9uQ2hhbmdlIiwiX3JlZiRhbGlnbkJ1dHRvbnMiLCJhbGlnbkJ1dHRvbnMiLCJvbkZpbGVBdHRhY2giLCJvbkRlbGV0ZUF0dGFjaG1lbnQiLCJfcmVmJGF0dGFjaG1lbnRzIiwiYXR0YWNobWVudHMiLCJjaGF0SWQiLCJuZXdDaGF0S2V5IiwiX3VzZVQiLCJ0IiwiaW5wdXRSZWYiLCJmaWxlSW5wdXRSZWYiLCJ3cmFwcGVyUmVmIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwidmFsdWVUZXh0YXJlYSIsInNldFZhbHVlVGV4dGFyZWEiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImlzRGlzYWJsZWQiLCJzZXRJc0Rpc2FibGVkIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJpc0ZvY3VzZWQiLCJzZXRJc0ZvY3VzZWQiLCJfdXNlU3RhdGU3IiwiaXNPcGVuIiwiZXhjbHVkZWRGaWxlcyIsImV4Y2VlZGVkRmlsZXMiLCJmaWxlU2l6ZXMiLCJfdXNlU3RhdGU4IiwibW9kYWxQcm9wcyIsInNldE1vZGFsUHJvcHMiLCJldmVudEFtcGxpdHVkZSIsIl91c2VHbG9iYWxDb250ZXh0IiwidG9nZ2xlV2ViU2VhcmNoIiwiaXNXZWJTZWFyY2hBY3RpdmUiLCJ0b2dnbGVEZWVwU2VhcmNoIiwiaXNEZWVwU2VhcmNoQWN0aXZlIiwiYWdlbnQiLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMCIsInBsdXNNZW51QW5jaG9yIiwic2V0UGx1c01lbnVBbmNob3IiLCJfdXNlU3RhdGUxIiwiX3VzZVN0YXRlMTAiLCJhY3RpdmVUb29sQ2hpcEhvdmVyZWQiLCJzZXRBY3RpdmVUb29sQ2hpcEhvdmVyZWQiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwidG9vbENoaXBFeGl0aW5nIiwic2V0VG9vbENoaXBFeGl0aW5nIiwidG9vbENoaXBFeGl0VGltZXJSZWYiLCJzZWFyY2hNb2RlQWN0aXZlUmVmIiwid2ViIiwiZGVlcCIsInBsdXNNZW51T3BlbiIsIkJvb2xlYW4iLCJjdXJyZW50IiwiYW5hbHl0aWNzQWdlbnRUeXBlIiwiYW5hbHl0aWNzQ2xvbmVFbnRpdHlQYXlsb2FkIiwidHlwZSIsImVudGl0eSIsInNjaGVkdWxlSW5wdXRGb2N1c0FmdGVyVG9vbEFjdGlvbiIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsIndpbmRvdyIsInNldFRpbWVvdXQiLCJfaW5wdXRSZWYkY3VycmVudCIsImZvY3VzIiwicHJldmVudFNjcm9sbCIsImNsb3NlUGx1c01lbnUiLCJoYW5kbGVQbHVzQnV0dG9uQ2xpY2siLCJlIiwic3RvcFByb3BhZ2F0aW9uIiwiY3VycmVudFRhcmdldCIsImFpQ2hhdFBsdXNPcGVuIiwiX29iamVjdFNwcmVhZCIsImFnZW50X3R5cGUiLCJoYW5kbGVQbHVzTWVudUF0dGFjaCIsIl9maWxlSW5wdXRSZWYkY3VycmVudCIsImFpQ2hhdFRvb2xzIiwib3B0aW9uIiwibGVuZ3RoIiwiY2xpY2siLCJiZWdpblRvb2xDaGlwRXhpdCIsIndhc1dlYiIsIndhc0RlZXAiLCJfc2VhcmNoTW9kZUFjdGl2ZVJlZiQiLCJoYW5kbGVQbHVzTWVudVdlYlNlYXJjaCIsImhhbmRsZVBsdXNNZW51RGVlcFNlYXJjaCIsInByZXZpb3VzQWdlbnRJZFJlZiIsInVuZGVmaW5lZCIsInByZXZpb3VzQ2hhdElkUmVmIiwicHJldmlvdXNOZXdDaGF0S2V5UmVmIiwiaGFuZGxlUmVzaXplIiwidGV4dGFyZWEiLCJtaW5IZWlnaHQiLCJtYXhIZWlnaHQiLCJwcmV2aW91c01pbkhlaWdodCIsInN0eWxlIiwicHJldmlvdXNNYXhIZWlnaHQiLCJoZWlnaHQiLCJvZmZzZXRIZWlnaHQiLCJzY3JvbGxIZWlnaHQiLCJjb21wdXRlZFN0eWxlIiwiZ2V0Q29tcHV0ZWRTdHlsZSIsImxpbmVIZWlnaHQiLCJwYXJzZUZsb2F0IiwicGFkZGluZ1RvcCIsInBhZGRpbmdCb3R0b20iLCJib3JkZXJUb3AiLCJib3JkZXJUb3BXaWR0aCIsImJvcmRlckJvdHRvbSIsImJvcmRlckJvdHRvbVdpZHRoIiwic2luZ2xlTGluZUhlaWdodCIsImlzRW1wdHkiLCJ2YWx1ZSIsInRyaW0iLCJoYXNNdWx0aXBsZVZpc3VhbExpbmVzIiwiY2FudmFzIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiY29udGV4dCIsImdldENvbnRleHQiLCJ0ZXh0YXJlYVN0eWxlcyIsImZvbnQiLCJjb25jYXQiLCJmb250V2VpZ2h0IiwiZm9udFNpemUiLCJmb250RmFtaWx5IiwicGFkZGluZ0xlZnQiLCJwYWRkaW5nUmlnaHQiLCJib3JkZXJMZWZ0IiwiYm9yZGVyTGVmdFdpZHRoIiwiYm9yZGVyUmlnaHQiLCJib3JkZXJSaWdodFdpZHRoIiwidGV4dGFyZWFXaWR0aCIsIm9mZnNldFdpZHRoIiwidGV4dCIsImxpbmVzIiwic3BsaXQiLCJfaXRlcmF0b3IiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlciIsIl9zdGVwIiwicyIsIm4iLCJkb25lIiwibGluZSIsInRleHRXaWR0aCIsIm1lYXN1cmVUZXh0Iiwid2lkdGgiLCJlcnIiLCJmIiwibmV3SGVpZ2h0IiwiTWF0aCIsIm1pbiIsIm1heCIsImNsZWFyVGltZW91dCIsImFnZW50Q2hhbmdlZCIsImlkIiwicHJldmlvdXNDaGF0SWQiLCJjdXJyZW50Q2hhdElkIiwiY2hhdENoYW5nZWQiLCJjaGFuZ2VkRnJvbU5ld0NoYXRUb09sZENoYXQiLCJuZXdDaGF0U3RhcnRlZCIsImlzSW5pdGlhbE1vdW50IiwiZGVsYXkiLCJoYW5kbGVTZXNzaW9uQ2hhbmdlIiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJhbmltYXRpb25GcmFtZUlkIiwiY2FuY2VsQW5pbWF0aW9uRnJhbWUiLCJoYXNUZXh0IiwiaGFzQXR0YWNobWVudHMiLCJoYW5kbGVTZW5kTWVzc2FnZSIsImhhbmRsZUtleURvd24iLCJrZXkiLCJzaGlmdEtleSIsInByZXZlbnREZWZhdWx0IiwiaGFuZGxlQ2hhbmdlIiwidGFyZ2V0IiwiaGFuZGxlUGFzdGUiLCJfaW5wdXRSZWYkY3VycmVudCR2YWwiLCJfaW5wdXRSZWYkY3VycmVudDIiLCJjdXJyZW50VmFsdWUiLCJoYW5kbGVGaWxlU2VsZWN0IiwiZmlsZXMiLCJmaWxlc0luc2VydGVkIiwiaXNOZXdGb3JtYXQiLCJleHRlbnNpb24iLCJpbmNsdWRlcyIsImlzT2xkRm9ybWF0IiwiaXNBdWRpb0Zvcm1hdCIsIkFycmF5IiwiZnJvbSIsImZvckVhY2giLCJmaWxlIiwiX2ZpbGVOYW1lUGFydHMkcG9wIiwiZXhjbHVkZWRGaWxlIiwiZmlsZU5hbWVQYXJ0cyIsIm5hbWUiLCJmaWxlRXh0ZW5zaW9uIiwicG9wIiwidG9Mb3dlckNhc2UiLCJzaXplIiwicHVzaCIsInR5cGVGaWxlIiwicGFyc2VkRmlsZSIsIkZpbGUiLCJoYW5kbGVEZWxldGVBdHRhY2htZW50IiwiZmlsZUlkIiwiaGFuZGxlQmx1ciIsImhhbmRsZVdyYXBwZXJGb2N1cyIsImhhbmRsZVdyYXBwZXJCbHVyIiwiX3dyYXBwZXJSZWYkY3VycmVudCIsImNvbnRhaW5zIiwiYWN0aXZlRWxlbWVudCIsImhhbmRsZVN0b3BHZW5lcmF0aW9uIiwiYWlDaGF0U3RvcFJlc3BvbnNlIiwicGx1c0ljb25Db2xvciIsInBsdXNNZW51SWNvbkNvbG9yIiwicGx1c01lbnVTZWxlY3RlZENvbG9yIiwiYWN0aXZlVG9vbENoaXBMZWFkaW5nSWNvbiIsImNvbG9yIiwiY2hpbGRyZW4iLCJyZWYiLCJvbkZvY3VzIiwib25CbHVyIiwiZGlzcGxheSIsImdhcCIsImFsaWduSXRlbXMiLCJtYXAiLCJhdHRhY2htZW50IiwiaW5kZXgiLCJfZmlsZU5hbWVQYXJ0cyRwb3AyIiwiX2F0dGFjaG1lbnQkdHlwZSIsImlzSW1hZ2VCeUV4dGVuc2lvbiIsImlzSW1hZ2VCeU1pbWUiLCJzdGFydHNXaXRoIiwiaXNJbWFnZSIsInRpdGxlIiwiaWNvbiIsIm9uQ2xpY2siLCJvbktleURvd24iLCJvblBhc3RlIiwiJG1lbnVPcGVuIiwib3BlbiIsImFuY2hvckVsIiwib25DbG9zZSIsImFuY2hvck9yaWdpbiIsInZlcnRpY2FsIiwiaG9yaXpvbnRhbCIsInRyYW5zZm9ybU9yaWdpbiIsInNsb3RQcm9wcyIsInBhcGVyIiwiZWxldmF0aW9uIiwic3giLCJvdmVyZmxvdyIsImJvcmRlclJhZGl1cyIsImJveFNoYWRvdyIsImJhY2tncm91bmRDb2xvciIsIm1hcmdpblRvcCIsIiRzZWxlY3RlZCIsIiRob3ZlcmVkIiwiJGV4aXRpbmciLCJvbk1vdXNlRW50ZXIiLCJvbk1vdXNlTGVhdmUiLCIkY2xvc2VTaG93biIsImhhc1ZhbHVlcyIsIm11bHRpcGxlIiwiYWNjZXB0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvTUFJQUlucHV0L01BSUFJbnB1dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcmVzdHJpY3RlZC1zeW50YXggKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnRpbnVlICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby12b2lkICovXG4vKiBlc2xpbnQtZGlzYWJsZSByZWFjdC9uby1hcnJheS1pbmRleC1rZXkgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLWxvbmVseS1pZiAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuLyogZXNsaW50LWRpc2FibGUgcHJlZmVyLWRlc3RydWN0dXJpbmcgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuaW1wb3J0IHsgQ2hhbmdlRXZlbnQsIEtleWJvYXJkRXZlbnQsIE1vdXNlRXZlbnQsIFJlYWN0Tm9kZSwgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBQb3BvdmVyIH0gZnJvbSAnQG11aS9tYXRlcmlhbCdcbmltcG9ydCB7IFBhcGVyUGxhbmUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9QYXBlclBsYW5lJ1xuaW1wb3J0IHsgQXR0YWNoIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQXR0YWNoJ1xuaW1wb3J0IHsgR2xvYmUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9HbG9iZSdcbmltcG9ydCB7IFRyYXNoIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvVHJhc2gnXG5pbXBvcnQgeyBQbHVzIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvUGx1cydcbmltcG9ydCB7IENoZWNrIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ2hlY2snXG5pbXBvcnQgeyBDcm9zcyB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0Nyb3NzJ1xuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJ0Bwcm9qZWN0Y29yL3Rvb2x0aXB2Mi9saWIvY29tcG9uZW50cy9Ub29sdGlwJ1xuXG5pbXBvcnQge1xuICBBY3RpdmVUb29sQ2hpcEljb25CdXR0b24sXG4gIEFjdGl2ZVRvb2xDaGlwTGFiZWwsXG4gIEFjdGl2ZVRvb2xDaGlwUm9vdCxcbiAgUGx1c01lbnVEaXZpZGVyLFxuICBQbHVzTWVudUlubmVyQ29sdW1uLFxuICBQbHVzTWVudUl0ZW1CdXR0b24sXG4gIFBsdXNNZW51SXRlbUxhYmVsLFxuICBQbHVzTWVudVBhcGVyLFxuICBQbHVzTWVudVRvb2xzUm93LFxuICBQbHVzVG9nZ2xlQnV0dG9uLFxuICBTQ01JQXR0YWNobWVudCxcbiAgU0NNSUF0dGFjaG1lbnREZWxldGVJY29uLFxuICBTdHlsZWRNQUlBSW5wdXQsXG4gIFN0eWxlZE1BSUFJbnB1dEJ1dHRvbnMsXG4gIFN0eWxlZE1BSUFJbnB1dFdyYXBwZXIsXG4gIFN0eWxlZE1BSUFTZW5kQnV0dG9uLFxuICBTdHlsZWRNQUlBU3RvcEJ1dHRvbixcbiAgU3R5bGVkTUFJQVN0b3BJY29uLFxufSBmcm9tICcuL3N0eWxlcydcbmltcG9ydCB7IHVzZUdsb2JhbENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2dsb2JhbC1jb250ZXh0J1xuaW1wb3J0IHsgTW9kYWxGaWxlRXhjZWVkcyB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9Nb2RhbEZpbGVFeGNlZWRzJ1xuaW1wb3J0IHsgdXNlVCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVQnXG5pbXBvcnQgeyBUZWxlc2NvcGVJY29uIH0gZnJvbSAnLi4vaWNvbnMvVGVsZXNjb3BlSWNvbidcbmltcG9ydCB7IEVWRU5UUywgdXNlRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VFdmVudCdcbmltcG9ydCB7IGdldENoYXRUb29sc01lbnVBZ2VudFR5cGUgfSBmcm9tICcuLi8uLi8uLi91dGlscy9oaXRsQW5hbHl0aWNzJ1xuaW1wb3J0IHtcbiAgYWxsb3dlZEZpbGVUeXBlcyxcbiAgZmlsZVR5cGVzLFxuICBNQVhfRklMRV9TSVpFX01CX01BSUFfVklTSU9OLFxuICBNQVhfRklMRV9TSVpFX01CX09MRCxcbiAgTUFYX0ZJTEVfU0laRV9NQl9BVURJTyxcbn0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL2Zvcm1hdEV4dGVuc2lvbnMnXG5cbmNvbnN0IFRPT0xfQ0hJUF9FWElUX01TID0gMjIwXG5cbnR5cGUgQXR0YWNobWVudEZpbGUgPSB7XG4gIGZpbGU6IEZpbGVcbiAgb3JpZ2luYWxGaWxlPzogRmlsZVxuICBpZDogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xuICBzaXplOiBudW1iZXJcbiAgdHlwZTogc3RyaW5nXG4gIGljb24/OiBSZWFjdE5vZGVcbn1cblxudHlwZSBNQUlBSW5wdXRQcm9wcyA9IHtcbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBvblNlbmRNZXNzYWdlOiAobWVzc2FnZTogc3RyaW5nLCBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW10pID0+IHZvaWRcbiAgb25TdG9wR2VuZXJhdGlvbj86ICgpID0+IHZvaWRcbiAgaXNTdHJlYW1pbmc/OiBib29sZWFuXG4gIGlzV3JpdGluZz86IGJvb2xlYW5cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgb25DaGFuZ2U/OiAoKSA9PiB2b2lkXG4gIGFsaWduQnV0dG9ucz86ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCdcbiAgb25GaWxlQXR0YWNoPzogKGZpbGU6IEZpbGUpID0+IHZvaWRcbiAgb25EZWxldGVBdHRhY2htZW50PzogKGZpbGVJZDogc3RyaW5nKSA9PiB2b2lkXG4gIGF0dGFjaG1lbnRzPzogQXR0YWNobWVudEZpbGVbXVxuICBjaGF0SWQ/OiBzdHJpbmdcbiAgbmV3Q2hhdEtleT86IG51bWJlclxufVxuXG5leHBvcnQgY29uc3QgTUFJQUlucHV0ID0gKHtcbiAgb25TZW5kTWVzc2FnZSxcbiAgY2xhc3NOYW1lLFxuICBkaXNhYmxlZCxcbiAgaXNTdHJlYW1pbmcsXG4gIGlzV3JpdGluZyxcbiAgb25TdG9wR2VuZXJhdGlvbixcbiAgcGxhY2Vob2xkZXIsXG4gIG9uQ2hhbmdlLFxuICBhbGlnbkJ1dHRvbnMgPSAndmVydGljYWwnLFxuICBvbkZpbGVBdHRhY2gsXG4gIG9uRGVsZXRlQXR0YWNobWVudCxcbiAgYXR0YWNobWVudHMgPSBbXSxcbiAgY2hhdElkLFxuICBuZXdDaGF0S2V5LFxufTogTUFJQUlucHV0UHJvcHMpID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUKClcbiAgY29uc3QgaW5wdXRSZWYgPSB1c2VSZWY8SFRNTFRleHRBcmVhRWxlbWVudD4obnVsbClcbiAgY29uc3QgZmlsZUlucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IHdyYXBwZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IFt2YWx1ZVRleHRhcmVhLCBzZXRWYWx1ZVRleHRhcmVhXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbaXNEaXNhYmxlZCwgc2V0SXNEaXNhYmxlZF0gPSB1c2VTdGF0ZSh0cnVlKVxuICBjb25zdCBbaXNGb2N1c2VkLCBzZXRJc0ZvY3VzZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFttb2RhbFByb3BzLCBzZXRNb2RhbFByb3BzXSA9IHVzZVN0YXRlKHtcbiAgICBpc09wZW46IGZhbHNlLFxuICAgIGV4Y2x1ZGVkRmlsZXM6IFtdIGFzIHN0cmluZ1tdLFxuICAgIGV4Y2VlZGVkRmlsZXM6IFtdIGFzIHN0cmluZ1tdLFxuICAgIGZpbGVTaXplczoge30gYXMgUmVjb3JkPHN0cmluZywgbnVtYmVyPixcbiAgfSlcbiAgY29uc3QgZXZlbnRBbXBsaXR1ZGUgPSB1c2VFdmVudCgpXG4gIGNvbnN0IHsgdG9nZ2xlV2ViU2VhcmNoLCBpc1dlYlNlYXJjaEFjdGl2ZSwgdG9nZ2xlRGVlcFNlYXJjaCwgaXNEZWVwU2VhcmNoQWN0aXZlLCBhZ2VudCB9ID0gdXNlR2xvYmFsQ29udGV4dCgpXG4gIGNvbnN0IFtwbHVzTWVudUFuY2hvciwgc2V0UGx1c01lbnVBbmNob3JdID0gdXNlU3RhdGU8SFRNTEJ1dHRvbkVsZW1lbnQgfCBudWxsPihudWxsKVxuICBjb25zdCBbYWN0aXZlVG9vbENoaXBIb3ZlcmVkLCBzZXRBY3RpdmVUb29sQ2hpcEhvdmVyZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFt0b29sQ2hpcEV4aXRpbmcsIHNldFRvb2xDaGlwRXhpdGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgdG9vbENoaXBFeGl0VGltZXJSZWYgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsPihudWxsKVxuICBjb25zdCBzZWFyY2hNb2RlQWN0aXZlUmVmID0gdXNlUmVmKHsgd2ViOiBmYWxzZSwgZGVlcDogZmFsc2UgfSlcbiAgY29uc3QgcGx1c01lbnVPcGVuID0gQm9vbGVhbihwbHVzTWVudUFuY2hvcilcblxuICBzZWFyY2hNb2RlQWN0aXZlUmVmLmN1cnJlbnQgPSB7IHdlYjogaXNXZWJTZWFyY2hBY3RpdmUsIGRlZXA6IGlzRGVlcFNlYXJjaEFjdGl2ZSB9XG5cbiAgY29uc3QgYW5hbHl0aWNzQWdlbnRUeXBlID0gZ2V0Q2hhdFRvb2xzTWVudUFnZW50VHlwZShhZ2VudClcbiAgY29uc3QgYW5hbHl0aWNzQ2xvbmVFbnRpdHlQYXlsb2FkID0gYWdlbnQ/LnR5cGUgPT09ICdjbG9uZScgPyB7IGVudGl0eTogYWdlbnQuZW50aXR5ID8/IG51bGwgfSA6IHt9XG5cbiAgLyoqIFRyYXMgZWxlZ2lyIG8gcXVpdGFyIGLDunNxdWVkYSB3ZWIvcHJvZnVuZGE6IHZvbHZlciBhbCB0ZXh0YXJlYSAoUG9wb3Zlci9tZW51IHB1ZWRlIHJvYmFyIGZvY28pLiAqL1xuICBjb25zdCBzY2hlZHVsZUlucHV0Rm9jdXNBZnRlclRvb2xBY3Rpb24gPSAoKSA9PiB7XG4gICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaW5wdXRSZWYuY3VycmVudD8uZm9jdXMoeyBwcmV2ZW50U2Nyb2xsOiB0cnVlIH0pXG4gICAgICB9LCAwKVxuICAgIH0pXG4gIH1cblxuICBjb25zdCBjbG9zZVBsdXNNZW51ID0gKCkgPT4ge1xuICAgIHNldFBsdXNNZW51QW5jaG9yKG51bGwpXG4gIH1cblxuICBjb25zdCBoYW5kbGVQbHVzQnV0dG9uQ2xpY2sgPSAoZTogTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD4pID0+IHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgaWYgKHBsdXNNZW51QW5jaG9yKSB7XG4gICAgICBjbG9zZVBsdXNNZW51KClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBzZXRQbHVzTWVudUFuY2hvcihlLmN1cnJlbnRUYXJnZXQpXG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFBsdXNPcGVuLCB7IGFnZW50X3R5cGU6IGFuYWx5dGljc0FnZW50VHlwZSwgLi4uYW5hbHl0aWNzQ2xvbmVFbnRpdHlQYXlsb2FkIH0pXG4gIH1cblxuICBjb25zdCBoYW5kbGVQbHVzTWVudUF0dGFjaCA9ICgpID0+IHtcbiAgICBjbG9zZVBsdXNNZW51KClcbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0VG9vbHMsIHtcbiAgICAgIGFnZW50X3R5cGU6IGFuYWx5dGljc0FnZW50VHlwZSxcbiAgICAgIG9wdGlvbjogJ2ZpbGVzJyxcbiAgICAgIC4uLmFuYWx5dGljc0Nsb25lRW50aXR5UGF5bG9hZCxcbiAgICB9KVxuICAgIGlmIChhdHRhY2htZW50cy5sZW5ndGggPj0gNSkgcmV0dXJuXG4gICAgZmlsZUlucHV0UmVmLmN1cnJlbnQ/LmNsaWNrKClcbiAgfVxuXG4gIGNvbnN0IGJlZ2luVG9vbENoaXBFeGl0ID0gKCkgPT4ge1xuICAgIGlmICh0b29sQ2hpcEV4aXRUaW1lclJlZi5jdXJyZW50ICE9PSBudWxsKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3Qgd2FzV2ViID0gaXNXZWJTZWFyY2hBY3RpdmVcbiAgICBjb25zdCB3YXNEZWVwID0gaXNEZWVwU2VhcmNoQWN0aXZlXG4gICAgaWYgKCF3YXNXZWIgJiYgIXdhc0RlZXApIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBzZXRUb29sQ2hpcEV4aXRpbmcodHJ1ZSlcbiAgICB0b29sQ2hpcEV4aXRUaW1lclJlZi5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0b29sQ2hpcEV4aXRUaW1lclJlZi5jdXJyZW50ID0gbnVsbFxuICAgICAgY29uc3QgeyB3ZWIsIGRlZXAgfSA9IHNlYXJjaE1vZGVBY3RpdmVSZWYuY3VycmVudFxuICAgICAgaWYgKHdhc1dlYiAmJiB3ZWIpIHtcbiAgICAgICAgdG9nZ2xlV2ViU2VhcmNoKClcbiAgICAgIH0gZWxzZSBpZiAod2FzRGVlcCAmJiBkZWVwKSB7XG4gICAgICAgIHRvZ2dsZURlZXBTZWFyY2goKVxuICAgICAgfVxuICAgICAgc2V0VG9vbENoaXBFeGl0aW5nKGZhbHNlKVxuICAgICAgc2NoZWR1bGVJbnB1dEZvY3VzQWZ0ZXJUb29sQWN0aW9uKClcbiAgICB9LCBUT09MX0NISVBfRVhJVF9NUylcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZVBsdXNNZW51V2ViU2VhcmNoID0gKCkgPT4ge1xuICAgIGNsb3NlUGx1c01lbnUoKVxuICAgIGlmIChpc1dlYlNlYXJjaEFjdGl2ZSkge1xuICAgICAgYmVnaW5Ub29sQ2hpcEV4aXQoKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGlmIChpc0RlZXBTZWFyY2hBY3RpdmUpIHtcbiAgICAgIHRvZ2dsZURlZXBTZWFyY2goKVxuICAgIH1cbiAgICB0b2dnbGVXZWJTZWFyY2goKVxuICAgIGV2ZW50QW1wbGl0dWRlKEVWRU5UUy5haUNoYXRUb29scywge1xuICAgICAgYWdlbnRfdHlwZTogYW5hbHl0aWNzQWdlbnRUeXBlLFxuICAgICAgb3B0aW9uOiAnc2VhcmNoJyxcbiAgICAgIC4uLmFuYWx5dGljc0Nsb25lRW50aXR5UGF5bG9hZCxcbiAgICB9KVxuICAgIHNjaGVkdWxlSW5wdXRGb2N1c0FmdGVyVG9vbEFjdGlvbigpXG4gIH1cblxuICBjb25zdCBoYW5kbGVQbHVzTWVudURlZXBTZWFyY2ggPSAoKSA9PiB7XG4gICAgY2xvc2VQbHVzTWVudSgpXG4gICAgaWYgKGlzRGVlcFNlYXJjaEFjdGl2ZSkge1xuICAgICAgYmVnaW5Ub29sQ2hpcEV4aXQoKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGlmIChpc1dlYlNlYXJjaEFjdGl2ZSkge1xuICAgICAgdG9nZ2xlV2ViU2VhcmNoKClcbiAgICB9XG4gICAgdG9nZ2xlRGVlcFNlYXJjaCgpXG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFRvb2xzLCB7XG4gICAgICBhZ2VudF90eXBlOiBhbmFseXRpY3NBZ2VudFR5cGUsXG4gICAgICBvcHRpb246ICdkZWVwX3NlYXJjaCcsXG4gICAgICAuLi5hbmFseXRpY3NDbG9uZUVudGl0eVBheWxvYWQsXG4gICAgfSlcbiAgICBzY2hlZHVsZUlucHV0Rm9jdXNBZnRlclRvb2xBY3Rpb24oKVxuICB9XG5cbiAgLy8gSW5pY2lhbGl6YXIgbGFzIHJlZmVyZW5jaWFzIGNvbW8gdW5kZWZpbmVkIHBhcmEgZGV0ZWN0YXIgZWwgcHJpbWVyIGNhbWJpbyBjb3JyZWN0YW1lbnRlXG4gIGNvbnN0IHByZXZpb3VzQWdlbnRJZFJlZiA9IHVzZVJlZjxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZClcbiAgY29uc3QgcHJldmlvdXNDaGF0SWRSZWYgPSB1c2VSZWY8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpXG4gIGNvbnN0IHByZXZpb3VzTmV3Q2hhdEtleVJlZiA9IHVzZVJlZjxudW1iZXIgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZClcblxuICBjb25zdCBoYW5kbGVSZXNpemUgPSAoKSA9PiB7XG4gICAgY29uc3QgdGV4dGFyZWEgPSBpbnB1dFJlZi5jdXJyZW50XG4gICAgaWYgKCF0ZXh0YXJlYSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gQWx0dXJhIG3DrW5pbWEgZXF1aXZhbGVudGUgYSB1bmEgbMOtbmVhXG4gICAgY29uc3QgbWluSGVpZ2h0ID0gMjIuMVxuICAgIGNvbnN0IG1heEhlaWdodCA9IDEyMi4xXG5cbiAgICAvLyBQYXJhIG1lZGlyIGNvcnJlY3RhbWVudGUgZWwgc2Nyb2xsSGVpZ2h0LCBuZWNlc2l0YW1vcyBxdWl0YXIgdGVtcG9yYWxtZW50ZSBsYXMgcmVzdHJpY2Npb25lc1xuICAgIGNvbnN0IHByZXZpb3VzTWluSGVpZ2h0ID0gdGV4dGFyZWEuc3R5bGUubWluSGVpZ2h0XG4gICAgY29uc3QgcHJldmlvdXNNYXhIZWlnaHQgPSB0ZXh0YXJlYS5zdHlsZS5tYXhIZWlnaHRcblxuICAgIC8vIEVzdGFibGVjZXIgYWx0dXJhIGEgJ2F1dG8nIHkgcXVpdGFyIHRlbXBvcmFsbWVudGUgbWluLWhlaWdodCB5IG1heC1oZWlnaHQgcGFyYSBtZWRpciBjb3JyZWN0YW1lbnRlXG4gICAgdGV4dGFyZWEuc3R5bGUuaGVpZ2h0ID0gJ2F1dG8nXG4gICAgdGV4dGFyZWEuc3R5bGUubWluSGVpZ2h0ID0gJzBweCdcbiAgICB0ZXh0YXJlYS5zdHlsZS5tYXhIZWlnaHQgPSAnbm9uZSdcblxuICAgIC8vIEZvcnphciByZWZsb3cgcGFyYSBxdWUgZWwgbmF2ZWdhZG9yIHJlY2FsY3VsZVxuICAgIHZvaWQgdGV4dGFyZWEub2Zmc2V0SGVpZ2h0XG5cbiAgICAvLyBBaG9yYSBtZWRpciBlbCBzY3JvbGxIZWlnaHQgcmVhbCBzaW4gcmVzdHJpY2Npb25lc1xuICAgIGNvbnN0IHNjcm9sbEhlaWdodCA9IHRleHRhcmVhLnNjcm9sbEhlaWdodFxuXG4gICAgLy8gQ2FsY3VsYXIgbGEgYWx0dXJhIGRlIHVuYSBsw61uZWEgdXNhbmRvIGxvcyBlc3RpbG9zIGNvbXB1dGFkb3NcbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUodGV4dGFyZWEpXG4gICAgY29uc3QgbGluZUhlaWdodCA9IHBhcnNlRmxvYXQoY29tcHV0ZWRTdHlsZS5saW5lSGVpZ2h0KSB8fCAyMCAvLyBGYWxsYmFjayBhIDIwcHggc2kgbm8gZXN0w6EgZGVmaW5pZG9cbiAgICBjb25zdCBwYWRkaW5nVG9wID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLnBhZGRpbmdUb3ApIHx8IDBcbiAgICBjb25zdCBwYWRkaW5nQm90dG9tID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLnBhZGRpbmdCb3R0b20pIHx8IDBcbiAgICBjb25zdCBib3JkZXJUb3AgPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUuYm9yZGVyVG9wV2lkdGgpIHx8IDBcbiAgICBjb25zdCBib3JkZXJCb3R0b20gPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUuYm9yZGVyQm90dG9tV2lkdGgpIHx8IDBcblxuICAgIC8vIEFsdHVyYSBkZSB1bmEgbMOtbmVhIGNvbXBsZXRhIChsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXG4gICAgY29uc3Qgc2luZ2xlTGluZUhlaWdodCA9IGxpbmVIZWlnaHQgKyBwYWRkaW5nVG9wICsgcGFkZGluZ0JvdHRvbSArIGJvcmRlclRvcCArIGJvcmRlckJvdHRvbVxuXG4gICAgY29uc3QgaXNFbXB0eSA9IHRleHRhcmVhLnZhbHVlLnRyaW0oKSA9PT0gJydcblxuICAgIC8vIE1lZGlyIGVsIGFuY2hvIGRlbCB0ZXh0byB1c2FuZG8gQ2FudmFzIHBhcmEgZGV0ZXJtaW5hciBzaSBzZSBlbnZ1ZWx2ZSBhIG3Dumx0aXBsZXMgbMOtbmVhc1xuICAgIGxldCBoYXNNdWx0aXBsZVZpc3VhbExpbmVzID0gZmFsc2VcblxuICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpXG4gICAgY29uc3QgY29udGV4dCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpXG5cbiAgICBpZiAoIWNvbnRleHQpIHtcbiAgICAgIC8vIEZhbGxiYWNrIHNpIENhbnZhcyBubyBlc3TDoSBkaXNwb25pYmxlOiB1c2FyIHNjcm9sbEhlaWdodFxuICAgICAgaGFzTXVsdGlwbGVWaXN1YWxMaW5lcyA9IHNjcm9sbEhlaWdodCA+IHNpbmdsZUxpbmVIZWlnaHQgKiAxLjVcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdGV4dGFyZWFTdHlsZXMgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0ZXh0YXJlYSlcbiAgICAgIGNvbnRleHQuZm9udCA9IGAke3RleHRhcmVhU3R5bGVzLmZvbnRXZWlnaHR9ICR7dGV4dGFyZWFTdHlsZXMuZm9udFNpemV9ICR7dGV4dGFyZWFTdHlsZXMuZm9udEZhbWlseX1gXG5cbiAgICAgIC8vIENhbGN1bGFyIGVsIGFuY2hvIGRpc3BvbmlibGUgKGFuY2hvIHRvdGFsIG1lbm9zIHBhZGRpbmcgaXpxdWllcmRvL2RlcmVjaG8geSBib3JkZXIgaXpxdWllcmRvL2RlcmVjaG8pXG4gICAgICBjb25zdCBwYWRkaW5nTGVmdCA9IHBhcnNlRmxvYXQoY29tcHV0ZWRTdHlsZS5wYWRkaW5nTGVmdCkgfHwgMFxuICAgICAgY29uc3QgcGFkZGluZ1JpZ2h0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLnBhZGRpbmdSaWdodCkgfHwgMFxuICAgICAgY29uc3QgYm9yZGVyTGVmdCA9IHBhcnNlRmxvYXQoY29tcHV0ZWRTdHlsZS5ib3JkZXJMZWZ0V2lkdGgpIHx8IDBcbiAgICAgIGNvbnN0IGJvcmRlclJpZ2h0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmJvcmRlclJpZ2h0V2lkdGgpIHx8IDBcbiAgICAgIGNvbnN0IHRleHRhcmVhV2lkdGggPSB0ZXh0YXJlYS5vZmZzZXRXaWR0aCAtIHBhZGRpbmdMZWZ0IC0gcGFkZGluZ1JpZ2h0IC0gYm9yZGVyTGVmdCAtIGJvcmRlclJpZ2h0XG4gICAgICBjb25zdCB0ZXh0ID0gdGV4dGFyZWEudmFsdWUgfHwgJydcbiAgICAgIGNvbnN0IGxpbmVzID0gdGV4dC5zcGxpdCgnXFxuJylcblxuICAgICAgLy8gU2kgaGF5IG3Dumx0aXBsZXMgbMOtbmVhcyBwb3Igc2FsdG9zIGRlIGzDrW5lYSBleHBsw61jaXRvc1xuICAgICAgaWYgKGxpbmVzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgaGFzTXVsdGlwbGVWaXN1YWxMaW5lcyA9IHRydWVcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIFZlcmlmaWNhciBzaSBlbCB0ZXh0byBzZSBlbnZ1ZWx2ZSBtaWRpZW5kbyBlbCBhbmNobyBkZSBjYWRhIGzDrW5lYVxuICAgICAgICBmb3IgKGNvbnN0IGxpbmUgb2YgbGluZXMpIHtcbiAgICAgICAgICBpZiAobGluZS50cmltKCkgPT09ICcnKSBjb250aW51ZVxuICAgICAgICAgIGNvbnN0IHRleHRXaWR0aCA9IGNvbnRleHQubWVhc3VyZVRleHQobGluZSkud2lkdGhcbiAgICAgICAgICAvLyBTaSBhbGd1bmEgbMOtbmVhIGVzIG3DoXMgYW5jaGEgcXVlIGVsIHRleHRhcmVhIGRpc3BvbmlibGUsIHNlIGVudnVlbHZlXG4gICAgICAgICAgaWYgKHRleHRXaWR0aCA+IHRleHRhcmVhV2lkdGgpIHtcbiAgICAgICAgICAgIGhhc011bHRpcGxlVmlzdWFsTGluZXMgPSB0cnVlXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBuZXdIZWlnaHQ6IG51bWJlclxuICAgIGlmIChpc0VtcHR5KSB7XG4gICAgICAvLyBDdWFuZG8gZXN0w6EgdmFjw61vLCB1c2FyIGFsdHVyYSBtw61uaW1hXG4gICAgICBuZXdIZWlnaHQgPSBtaW5IZWlnaHRcbiAgICB9IGVsc2UgaWYgKCFoYXNNdWx0aXBsZVZpc3VhbExpbmVzKSB7XG4gICAgICAvLyBDdWFuZG8gaGF5IGNvbnRlbmlkbyBwZXJvIHNvbG8gdW5hIGzDrW5lYSB2aXN1YWwsIHVzYXIgYWx0dXJhIG3DrW5pbWFcbiAgICAgIG5ld0hlaWdodCA9IG1pbkhlaWdodFxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBQYXJhIG3Dumx0aXBsZXMgbMOtbmVhcyB2aXN1YWxlcywgdXNhciBlbCBzY3JvbGxIZWlnaHRcbiAgICAgIG5ld0hlaWdodCA9IE1hdGgubWluKE1hdGgubWF4KHNjcm9sbEhlaWdodCwgbWluSGVpZ2h0KSwgbWF4SGVpZ2h0KVxuICAgIH1cblxuICAgIC8vIFJlc3RhdXJhciBlc3RpbG9zIGFudGVzIGRlIGFwbGljYXIgbGEgbnVldmEgYWx0dXJhXG4gICAgdGV4dGFyZWEuc3R5bGUubWluSGVpZ2h0ID0gcHJldmlvdXNNaW5IZWlnaHQgfHwgJzIyLjFweCdcbiAgICB0ZXh0YXJlYS5zdHlsZS5tYXhIZWlnaHQgPSBwcmV2aW91c01heEhlaWdodCB8fCAnMTIyLjFweCdcblxuICAgIHRleHRhcmVhLnN0eWxlLmhlaWdodCA9IGAke25ld0hlaWdodH1weGBcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlucHV0UmVmLmN1cnJlbnQgJiYgIWRpc2FibGVkKSB7XG4gICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKClcbiAgICAgIGhhbmRsZVJlc2l6ZSgpXG4gICAgfVxuICB9LCBbZGlzYWJsZWRdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGlmICh0b29sQ2hpcEV4aXRUaW1lclJlZi5jdXJyZW50ICE9PSBudWxsKSB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0b29sQ2hpcEV4aXRUaW1lclJlZi5jdXJyZW50KVxuICAgICAgfVxuICAgIH1cbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWlzV2ViU2VhcmNoQWN0aXZlICYmICFpc0RlZXBTZWFyY2hBY3RpdmUpIHtcbiAgICAgIHNldEFjdGl2ZVRvb2xDaGlwSG92ZXJlZChmYWxzZSlcbiAgICB9XG4gIH0sIFtpc1dlYlNlYXJjaEFjdGl2ZSwgaXNEZWVwU2VhcmNoQWN0aXZlXSlcblxuICAvLyBBdXRvLWZvY3VzIGN1YW5kbyBjYW1iaWEgZWwgYWdlbnRlIG8gbGEgY29udmVyc2FjacOzbiwgbyBhbCBtb250YXIgZWwgY29tcG9uZW50ZVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIENvbXBhcmFjacOzbiBxdWUgbWFuZWphIGNvcnJlY3RhbWVudGUgdW5kZWZpbmVkL251bGxcbiAgICBjb25zdCBhZ2VudENoYW5nZWQgPSBwcmV2aW91c0FnZW50SWRSZWYuY3VycmVudCAhPT0gYWdlbnQ/LmlkXG4gICAgLy8gQ29tcGFyYWNpw7NuIGVzdHJpY3RhIHF1ZSBkZXRlY3RhIGNhbWJpb3MgaW5jbHVzbyBjdWFuZG8gdW5vIGVzIHVuZGVmaW5lZFxuICAgIGNvbnN0IHByZXZpb3VzQ2hhdElkID0gcHJldmlvdXNDaGF0SWRSZWYuY3VycmVudFxuICAgIGNvbnN0IGN1cnJlbnRDaGF0SWQgPSBjaGF0SWRcbiAgICBjb25zdCBjaGF0Q2hhbmdlZCA9IHByZXZpb3VzQ2hhdElkICE9PSBjdXJyZW50Q2hhdElkXG4gICAgLy8gRGV0ZWN0YXIgY2FtYmlvIGVzcGVjw61maWNvIGRlIHVuZGVmaW5lZC9udWxsIGEgdW4gdmFsb3IgKG51ZXZvIGNoYXQgLT4gY29udmVyc2FjacOzbiB2aWVqYSlcbiAgICBjb25zdCBjaGFuZ2VkRnJvbU5ld0NoYXRUb09sZENoYXQgPVxuICAgICAgKHByZXZpb3VzQ2hhdElkID09PSB1bmRlZmluZWQgfHwgcHJldmlvdXNDaGF0SWQgPT09IG51bGwpICYmIGN1cnJlbnRDaGF0SWQgIT09IHVuZGVmaW5lZCAmJiBjdXJyZW50Q2hhdElkICE9PSBudWxsXG4gICAgY29uc3QgbmV3Q2hhdFN0YXJ0ZWQgPSBwcmV2aW91c05ld0NoYXRLZXlSZWYuY3VycmVudCAhPT0gbmV3Q2hhdEtleVxuICAgIGNvbnN0IGlzSW5pdGlhbE1vdW50ID0gcHJldmlvdXNBZ2VudElkUmVmLmN1cnJlbnQgPT09IHVuZGVmaW5lZCAmJiBwcmV2aW91c0NoYXRJZFJlZi5jdXJyZW50ID09PSB1bmRlZmluZWRcblxuICAgIGlmIChcbiAgICAgIChhZ2VudENoYW5nZWQgfHwgY2hhdENoYW5nZWQgfHwgY2hhbmdlZEZyb21OZXdDaGF0VG9PbGRDaGF0IHx8IG5ld0NoYXRTdGFydGVkIHx8IGlzSW5pdGlhbE1vdW50KSAmJlxuICAgICAgaW5wdXRSZWYuY3VycmVudCAmJlxuICAgICAgIWRpc2FibGVkXG4gICAgKSB7XG4gICAgICAvLyBVc2FyIHNldFRpbWVvdXQgcGFyYSBhc2VndXJhciBxdWUgZWwgRE9NIGVzdMOpIGxpc3RvXG4gICAgICAvLyBBdW1lbnRhciBlbCBkZWxheSBwYXJhIGNhc29zIGRvbmRlIGVsIGNvbXBvbmVudGUgc2UgZXN0w6EgbW9udGFuZG9cbiAgICAgIGNvbnN0IGRlbGF5ID0gaXNJbml0aWFsTW91bnQgfHwgY2hhbmdlZEZyb21OZXdDaGF0VG9PbGRDaGF0ID8gMjAwIDogMTAwXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaWYgKGlucHV0UmVmLmN1cnJlbnQgJiYgIWRpc2FibGVkKSB7XG4gICAgICAgICAgaW5wdXRSZWYuY3VycmVudC5mb2N1cygpXG4gICAgICAgIH1cbiAgICAgIH0sIGRlbGF5KVxuICAgIH1cblxuICAgIC8vIEFjdHVhbGl6YXIgbGFzIHJlZmVyZW5jaWFzIERFU1BVw4lTIGRlIGxhIGNvbXBhcmFjacOzblxuICAgIHByZXZpb3VzQWdlbnRJZFJlZi5jdXJyZW50ID0gYWdlbnQ/LmlkXG4gICAgcHJldmlvdXNDaGF0SWRSZWYuY3VycmVudCA9IGNoYXRJZFxuICAgIHByZXZpb3VzTmV3Q2hhdEtleVJlZi5jdXJyZW50ID0gbmV3Q2hhdEtleVxuICB9LCBbYWdlbnQ/LmlkLCBjaGF0SWQsIG5ld0NoYXRLZXksIGRpc2FibGVkXSlcblxuICAvLyBDbGVhciBpbnB1dCB3aGVuIHNlc3Npb24gY2hhbmdlcyAodXNlciBzd2l0Y2hlcyB0byBhIGRpZmZlcmVudCBjaGF0KVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZVNlc3Npb25DaGFuZ2UgPSAoKSA9PiB7XG4gICAgICBzZXRWYWx1ZVRleHRhcmVhKCcnKVxuICAgICAgc2V0SXNEaXNhYmxlZCh0cnVlKVxuICAgICAgaWYgKGlucHV0UmVmLmN1cnJlbnQpIHtcbiAgICAgICAgaW5wdXRSZWYuY3VycmVudC52YWx1ZSA9ICcnXG4gICAgICB9XG4gICAgICBoYW5kbGVSZXNpemUoKVxuICAgIH1cblxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYXQtc2Vzc2lvbi1jaGFuZ2VkJywgaGFuZGxlU2Vzc2lvbkNoYW5nZSlcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjaGF0LXNlc3Npb24tY2hhbmdlZCcsIGhhbmRsZVNlc3Npb25DaGFuZ2UpXG4gICAgfVxuICB9LCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGFuaW1hdGlvbkZyYW1lSWQgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgaGFuZGxlUmVzaXplKClcbiAgICB9KVxuXG4gICAgcmV0dXJuICgpID0+IGNhbmNlbEFuaW1hdGlvbkZyYW1lKGFuaW1hdGlvbkZyYW1lSWQpXG4gIH0sIFt2YWx1ZVRleHRhcmVhXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhc1RleHQgPSB2YWx1ZVRleHRhcmVhLnRyaW0oKS5sZW5ndGggPiAwXG4gICAgY29uc3QgaGFzQXR0YWNobWVudHMgPSBhdHRhY2htZW50cy5sZW5ndGggPiAwXG4gICAgc2V0SXNEaXNhYmxlZCghaGFzVGV4dCAmJiAhaGFzQXR0YWNobWVudHMpXG4gIH0sIFthdHRhY2htZW50cywgdmFsdWVUZXh0YXJlYV0pXG5cbiAgY29uc3QgaGFuZGxlU2VuZE1lc3NhZ2UgPSAoKSA9PiB7XG4gICAgaWYgKGlucHV0UmVmLmN1cnJlbnQpIHtcbiAgICAgIG9uU2VuZE1lc3NhZ2UoaW5wdXRSZWYuY3VycmVudC52YWx1ZSwgYXR0YWNobWVudHMpXG4gICAgICBpbnB1dFJlZi5jdXJyZW50LnZhbHVlID0gJydcbiAgICAgIHNldFZhbHVlVGV4dGFyZWEoJycpXG4gICAgICBzZXRJc0Rpc2FibGVkKHRydWUpXG4gICAgICBoYW5kbGVSZXNpemUoKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGlmIChhdHRhY2htZW50cy5sZW5ndGgpIHtcbiAgICAgIG9uU2VuZE1lc3NhZ2UoJycsIGF0dGFjaG1lbnRzKVxuICAgICAgc2V0VmFsdWVUZXh0YXJlYSgnJylcbiAgICAgIHNldElzRGlzYWJsZWQodHJ1ZSlcbiAgICB9XG4gIH1cblxuICBjb25zdCBoYW5kbGVLZXlEb3duID0gKGU6IEtleWJvYXJkRXZlbnQ8SFRNTFRleHRBcmVhRWxlbWVudD4pID0+IHtcbiAgICBpZiAoZS5rZXkgPT09ICdFbnRlcicgJiYgIWUuc2hpZnRLZXkpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgaWYgKCFpc0Rpc2FibGVkICYmICFkaXNhYmxlZCkge1xuICAgICAgICBoYW5kbGVTZW5kTWVzc2FnZSgpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKGU6IENoYW5nZUV2ZW50PEhUTUxUZXh0QXJlYUVsZW1lbnQ+KSA9PiB7XG4gICAgY29uc3QgaGFzVGV4dCA9IGUudGFyZ2V0LnZhbHVlLnRyaW0oKS5sZW5ndGggPiAwXG4gICAgY29uc3QgaGFzQXR0YWNobWVudHMgPSBhdHRhY2htZW50cy5sZW5ndGggPiAwXG4gICAgc2V0SXNEaXNhYmxlZCghaGFzVGV4dCAmJiAhaGFzQXR0YWNobWVudHMpXG4gICAgc2V0VmFsdWVUZXh0YXJlYShlLnRhcmdldC52YWx1ZSlcbiAgICBvbkNoYW5nZT8uKClcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZVBhc3RlID0gKCkgPT4ge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaGFuZGxlUmVzaXplKClcbiAgICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IGlucHV0UmVmLmN1cnJlbnQ/LnZhbHVlID8/ICcnXG4gICAgICBjb25zdCBoYXNUZXh0ID0gY3VycmVudFZhbHVlLnRyaW0oKS5sZW5ndGggPiAwXG4gICAgICBjb25zdCBoYXNBdHRhY2htZW50cyA9IGF0dGFjaG1lbnRzLmxlbmd0aCA+IDBcbiAgICAgIHNldFZhbHVlVGV4dGFyZWEoY3VycmVudFZhbHVlKVxuICAgICAgc2V0SXNEaXNhYmxlZCghaGFzVGV4dCAmJiAhaGFzQXR0YWNobWVudHMpXG4gICAgfSwgMTApXG4gIH1cblxuICBjb25zdCBoYW5kbGVGaWxlU2VsZWN0ID0gKGU6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgY29uc3QgZmlsZXMgPSBlLnRhcmdldC5maWxlc1xuICAgIGlmICghZmlsZXMpIHJldHVyblxuXG4gICAgY29uc3QgZXhjZWVkZWRGaWxlczogc3RyaW5nW10gPSBbXVxuICAgIGNvbnN0IGV4Y2x1ZGVkRmlsZXM6IHN0cmluZ1tdID0gW11cbiAgICBjb25zdCBmaWxlU2l6ZXM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4gPSB7fVxuICAgIGxldCBmaWxlc0luc2VydGVkID0gYXR0YWNobWVudHMubGVuZ3RoXG5cbiAgICAvLyBEZWZpbmlyIGzDrW1pdGVzIHBhcmEgZGlmZXJlbnRlcyB0aXBvcyBkZSBhcmNoaXZvc1xuICAgIGNvbnN0IGlzTmV3Rm9ybWF0ID0gKGV4dGVuc2lvbjogc3RyaW5nKSA9PiBbJy5wbmcnLCAnLmpwZycsICcuanBlZycsICcucGRmJ10uaW5jbHVkZXMoZXh0ZW5zaW9uKVxuICAgIGNvbnN0IGlzT2xkRm9ybWF0ID0gKGV4dGVuc2lvbjogc3RyaW5nKSA9PlxuICAgICAgWycudHh0JywgJy5tZCcsICcuY3N2JywgJy5kb2MnLCAnLmRvY3gnLCAnLnhsc3gnLCAnLnhscyddLmluY2x1ZGVzKGV4dGVuc2lvbilcbiAgICBjb25zdCBpc0F1ZGlvRm9ybWF0ID0gKGV4dGVuc2lvbjogc3RyaW5nKSA9PlxuICAgICAgWycuZmxhYycsICcubTRhJywgJy5tcDMnLCAnLm1wNCcsICcub2dhJywgJy5vZ2cnLCAnLndhdicsICcud2VibSddLmluY2x1ZGVzKGV4dGVuc2lvbilcblxuICAgIEFycmF5LmZyb20oZmlsZXMpLmZvckVhY2goZmlsZSA9PiB7XG4gICAgICBsZXQgZXhjbHVkZWRGaWxlID0gZmFsc2VcbiAgICAgIGNvbnN0IGZpbGVOYW1lUGFydHMgPSBmaWxlLm5hbWUuc3BsaXQoJy4nKVxuICAgICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGZpbGVOYW1lUGFydHMubGVuZ3RoID4gMSA/IGAuJHtmaWxlTmFtZVBhcnRzLnBvcCgpPy50b0xvd2VyQ2FzZSgpfWAgOiAnJ1xuXG4gICAgICBpZiAoIWFsbG93ZWRGaWxlVHlwZXM/LmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBmaWxlU2l6ZXNbZmlsZS5uYW1lXSA9IGZpbGUuc2l6ZVxuXG4gICAgICAvLyBWYWxpZGFjaW9uZXMgZXNwZWPDrWZpY2FzIHNlZ8O6biBlbCB0aXBvIGRlIGFyY2hpdm9cbiAgICAgIGlmIChpc05ld0Zvcm1hdChmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgICAvLyBQYXJhIG51ZXZvcyBmb3JtYXRvczogaGFzdGEgNC45OU1CIHBvciBhcmNoaXZvLCBoYXN0YSA1IGFyY2hpdm9zXG4gICAgICAgIGlmIChmaWxlLnNpemUgPiBNQVhfRklMRV9TSVpFX01CX01BSUFfVklTSU9OICogMTAyNCAqIDEwMjQpIHtcbiAgICAgICAgICBleGNlZWRlZEZpbGVzLnB1c2goZmlsZS5uYW1lKVxuICAgICAgICAgIGV4Y2x1ZGVkRmlsZSA9IHRydWVcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmaWxlc0luc2VydGVkICsgMSA+IDUpIHtcbiAgICAgICAgICBleGNsdWRlZEZpbGVzLnB1c2goZmlsZS5uYW1lKVxuICAgICAgICAgIGV4Y2x1ZGVkRmlsZSA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChpc09sZEZvcm1hdChmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgICAvLyBQYXJhIGZvcm1hdG9zIGFudGVyaW9yZXM6IGhhc3RhIDFNQiBwb3IgYXJjaGl2bywgaGFzdGEgNSBhcmNoaXZvc1xuICAgICAgICBpZiAoZmlsZS5zaXplID4gTUFYX0ZJTEVfU0laRV9NQl9PTEQgKiAxMDI0ICogMTAyNCkge1xuICAgICAgICAgIGV4Y2VlZGVkRmlsZXMucHVzaChmaWxlLm5hbWUpXG4gICAgICAgICAgZXhjbHVkZWRGaWxlID0gdHJ1ZVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGZpbGVzSW5zZXJ0ZWQgKyAxID4gNSkge1xuICAgICAgICAgIGV4Y2x1ZGVkRmlsZXMucHVzaChmaWxlLm5hbWUpXG4gICAgICAgICAgZXhjbHVkZWRGaWxlID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGlzQXVkaW9Gb3JtYXQoZmlsZUV4dGVuc2lvbikpIHtcbiAgICAgICAgLy8gUGFyYSBhcmNoaXZvcyBkZSBhdWRpbzogaGFzdGEgMTBNQiBwb3IgYXJjaGl2bywgaGFzdGEgNSBhcmNoaXZvc1xuICAgICAgICBpZiAoZmlsZS5zaXplID4gTUFYX0ZJTEVfU0laRV9NQl9BVURJTyAqIDEwMjQgKiAxMDI0KSB7XG4gICAgICAgICAgZXhjZWVkZWRGaWxlcy5wdXNoKGZpbGUubmFtZSlcbiAgICAgICAgICBleGNsdWRlZEZpbGUgPSB0cnVlXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZmlsZXNJbnNlcnRlZCArIDEgPiA1KSB7XG4gICAgICAgICAgZXhjbHVkZWRGaWxlcy5wdXNoKGZpbGUubmFtZSlcbiAgICAgICAgICBleGNsdWRlZEZpbGUgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCFleGNsdWRlZEZpbGUpIHtcbiAgICAgICAgZmlsZXNJbnNlcnRlZCArPSAxXG4gICAgICAgIGNvbnN0IHR5cGVGaWxlID0gZmlsZS50eXBlIHx8IGZpbGVUeXBlc1tmaWxlRXh0ZW5zaW9uXVxuICAgICAgICBjb25zdCBwYXJzZWRGaWxlID0gbmV3IEZpbGUoW2ZpbGVdLCBmaWxlLm5hbWUsIHsgdHlwZTogdHlwZUZpbGUgfSlcbiAgICAgICAgb25GaWxlQXR0YWNoPy4ocGFyc2VkRmlsZSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgc2V0SXNEaXNhYmxlZChmYWxzZSlcbiAgICBpZiAoZXhjbHVkZWRGaWxlcy5sZW5ndGggfHwgZXhjZWVkZWRGaWxlcy5sZW5ndGgpIHtcbiAgICAgIHNldE1vZGFsUHJvcHMoeyBpc09wZW46IHRydWUsIGV4Y2x1ZGVkRmlsZXMsIGV4Y2VlZGVkRmlsZXMsIGZpbGVTaXplcyB9KVxuICAgIH1cblxuICAgIGlmIChmaWxlSW5wdXRSZWYuY3VycmVudCkge1xuICAgICAgZmlsZUlucHV0UmVmLmN1cnJlbnQudmFsdWUgPSAnJ1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGhhbmRsZURlbGV0ZUF0dGFjaG1lbnQgPSAoZmlsZUlkOiBzdHJpbmcpID0+IHtcbiAgICBvbkRlbGV0ZUF0dGFjaG1lbnQ/LihmaWxlSWQpXG4gIH1cblxuICBjb25zdCBoYW5kbGVCbHVyID0gKCkgPT4ge1xuICAgIGNvbnN0IGhhc1RleHQgPSB2YWx1ZVRleHRhcmVhLnRyaW0oKS5sZW5ndGggPiAwXG4gICAgY29uc3QgaGFzQXR0YWNobWVudHMgPSBhdHRhY2htZW50cy5sZW5ndGggPiAwXG4gICAgc2V0SXNEaXNhYmxlZCghaGFzVGV4dCAmJiAhaGFzQXR0YWNobWVudHMpXG4gIH1cblxuICBjb25zdCBoYW5kbGVXcmFwcGVyRm9jdXMgPSAoKSA9PiBzZXRJc0ZvY3VzZWQodHJ1ZSlcbiAgY29uc3QgaGFuZGxlV3JhcHBlckJsdXIgPSAoKSA9PiB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAoIXdyYXBwZXJSZWYuY3VycmVudD8uY29udGFpbnMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkpIHtcbiAgICAgICAgc2V0SXNGb2N1c2VkKGZhbHNlKVxuICAgICAgfVxuICAgIH0sIDApXG4gIH1cblxuICBjb25zdCBoYW5kbGVTdG9wR2VuZXJhdGlvbiA9ICgpID0+IHtcbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0U3RvcFJlc3BvbnNlKVxuICAgIG9uU3RvcEdlbmVyYXRpb24/LigpXG4gIH1cblxuICBjb25zdCBwbHVzSWNvbkNvbG9yID0gaXNGb2N1c2VkID8gJyM2NjY2NjYnIDogJyM5OTknXG4gIGNvbnN0IHBsdXNNZW51SWNvbkNvbG9yID0gJyM0ZDRkNGQnXG4gIC8qKiBBbGluZWFkbyBjb24gYFBsdXNNZW51SXRlbUxhYmVsYCAoJHNlbGVjdGVkKSB5IGVsIGNoZWNrIGRlbCBtZW7DuiAqL1xuICBjb25zdCBwbHVzTWVudVNlbGVjdGVkQ29sb3IgPSAnIzAwNTc4YydcblxuICBsZXQgYWN0aXZlVG9vbENoaXBMZWFkaW5nSWNvbjogUmVhY3ROb2RlXG4gIGlmIChhY3RpdmVUb29sQ2hpcEhvdmVyZWQpIHtcbiAgICBhY3RpdmVUb29sQ2hpcExlYWRpbmdJY29uID0gPENyb3NzIGNvbG9yPVwiI2E0YWRiNVwiIHdpZHRoPXsxOH0gaGVpZ2h0PXsxOH0gLz5cbiAgfSBlbHNlIGlmIChpc1dlYlNlYXJjaEFjdGl2ZSkge1xuICAgIGFjdGl2ZVRvb2xDaGlwTGVhZGluZ0ljb24gPSA8R2xvYmUgY29sb3I9e3BsdXNNZW51SWNvbkNvbG9yfSB3aWR0aD17MTh9IGhlaWdodD17MTh9IC8+XG4gIH0gZWxzZSB7XG4gICAgYWN0aXZlVG9vbENoaXBMZWFkaW5nSWNvbiA9IDxUZWxlc2NvcGVJY29uIGNvbG9yPXtwbHVzTWVudUljb25Db2xvcn0gd2lkdGg9ezE4fSBoZWlnaHQ9ezE4fSAvPlxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFN0eWxlZE1BSUFJbnB1dFdyYXBwZXJcbiAgICAgICAgcmVmPXt3cmFwcGVyUmVmfVxuICAgICAgICBkaXNhYmxlZD17ZmFsc2V9XG4gICAgICAgIGFsaWduQnV0dG9ucz17YWxpZ25CdXR0b25zfVxuICAgICAgICBoYXNBdHRhY2htZW50cz17ISFhdHRhY2htZW50cy5sZW5ndGh9XG4gICAgICAgIG9uRm9jdXM9e2hhbmRsZVdyYXBwZXJGb2N1c31cbiAgICAgICAgb25CbHVyPXtoYW5kbGVXcmFwcGVyQmx1cn1cbiAgICAgID5cbiAgICAgICAgeyEhYXR0YWNobWVudHMubGVuZ3RoICYmIChcbiAgICAgICAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgZ2FwOiAnMTJweCcsIGFsaWduSXRlbXM6ICdjZW50ZXInIH19PlxuICAgICAgICAgICAge2F0dGFjaG1lbnRzLm1hcCgoYXR0YWNobWVudCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgZmlsZU5hbWVQYXJ0cyA9IGF0dGFjaG1lbnQubmFtZS5zcGxpdCgnLicpXG4gICAgICAgICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBmaWxlTmFtZVBhcnRzLmxlbmd0aCA+IDEgPyBgLiR7ZmlsZU5hbWVQYXJ0cy5wb3AoKT8udG9Mb3dlckNhc2UoKX1gIDogJydcbiAgICAgICAgICAgICAgY29uc3QgaXNJbWFnZUJ5RXh0ZW5zaW9uID0gWycucG5nJywgJy5qcGcnLCAnLmpwZWcnXS5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKVxuICAgICAgICAgICAgICBjb25zdCBpc0ltYWdlQnlNaW1lID0gYXR0YWNobWVudC50eXBlPy5zdGFydHNXaXRoKCdpbWFnZS8nKVxuICAgICAgICAgICAgICBjb25zdCBpc0ltYWdlID0gaXNJbWFnZUJ5TWltZSAmJiBpc0ltYWdlQnlFeHRlbnNpb25cbiAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17YXR0YWNobWVudC5uYW1lfSBrZXk9e2Ake2luZGV4fS0ke2F0dGFjaG1lbnQubmFtZX1gfT5cbiAgICAgICAgICAgICAgICAgIDxTQ01JQXR0YWNobWVudCBpc0ltYWdlPXtpc0ltYWdlfT5cbiAgICAgICAgICAgICAgICAgICAge2F0dGFjaG1lbnQuaWNvbn1cbiAgICAgICAgICAgICAgICAgICAgPFNDTUlBdHRhY2htZW50RGVsZXRlSWNvbiBvbkNsaWNrPXsoKSA9PiBoYW5kbGVEZWxldGVBdHRhY2htZW50KGF0dGFjaG1lbnQuaWQpfT5cbiAgICAgICAgICAgICAgICAgICAgICA8VHJhc2ggY29sb3I9XCJyZ2JhKDE5MSwgMTkxLCAxOTEsIDEpXCIgd2lkdGg9ezE4fSBoZWlnaHQ9ezE4fSAvPlxuICAgICAgICAgICAgICAgICAgICA8L1NDTUlBdHRhY2htZW50RGVsZXRlSWNvbj5cbiAgICAgICAgICAgICAgICAgIDwvU0NNSUF0dGFjaG1lbnQ+XG4gICAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgICAgPFN0eWxlZE1BSUFJbnB1dFxuICAgICAgICAgIHJlZj17aW5wdXRSZWZ9XG4gICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVLZXlEb3dufVxuICAgICAgICAgIG9uUGFzdGU9e2hhbmRsZVBhc3RlfVxuICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICBhbGlnbkJ1dHRvbnM9e2FsaWduQnV0dG9uc31cbiAgICAgICAgICBvbkJsdXI9e2hhbmRsZUJsdXJ9XG4gICAgICAgIC8+XG4gICAgICAgIDxTdHlsZWRNQUlBSW5wdXRCdXR0b25zPlxuICAgICAgICAgIDxQbHVzTWVudVRvb2xzUm93PlxuICAgICAgICAgICAgPFBsdXNUb2dnbGVCdXR0b25cbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICRtZW51T3Blbj17cGx1c01lbnVPcGVufVxuICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQbHVzQnV0dG9uQ2xpY2t9XG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9e3QoJ2NoYXQub3BlblBsdXNNZW51QXJpYScpfVxuICAgICAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9e3BsdXNNZW51T3Blbn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFBsdXMgY29sb3I9e3BsdXNJY29uQ29sb3J9IHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gLz5cbiAgICAgICAgICAgIDwvUGx1c1RvZ2dsZUJ1dHRvbj5cbiAgICAgICAgICAgIDxQb3BvdmVyXG4gICAgICAgICAgICAgIG9wZW49e3BsdXNNZW51T3Blbn1cbiAgICAgICAgICAgICAgYW5jaG9yRWw9e3BsdXNNZW51QW5jaG9yfVxuICAgICAgICAgICAgICBvbkNsb3NlPXtjbG9zZVBsdXNNZW51fVxuICAgICAgICAgICAgICBhbmNob3JPcmlnaW49e3sgdmVydGljYWw6ICd0b3AnLCBob3Jpem9udGFsOiAnbGVmdCcgfX1cbiAgICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luPXt7IHZlcnRpY2FsOiAnYm90dG9tJywgaG9yaXpvbnRhbDogJ2xlZnQnIH19XG4gICAgICAgICAgICAgIHNsb3RQcm9wcz17e1xuICAgICAgICAgICAgICAgIHBhcGVyOiB7XG4gICAgICAgICAgICAgICAgICBlbGV2YXRpb246IDAsXG4gICAgICAgICAgICAgICAgICBzeDoge1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogJ3Zpc2libGUnLFxuICAgICAgICAgICAgICAgICAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxuICAgICAgICAgICAgICAgICAgICBib3hTaGFkb3c6ICdub25lJyxcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW5Ub3A6ICctNHB4JyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFBsdXNNZW51UGFwZXI+XG4gICAgICAgICAgICAgICAgPFBsdXNNZW51SW5uZXJDb2x1bW4+XG4gICAgICAgICAgICAgICAgICA8UGx1c01lbnVJdGVtQnV0dG9uIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPXtoYW5kbGVQbHVzTWVudUF0dGFjaH0+XG4gICAgICAgICAgICAgICAgICAgIDxBdHRhY2ggY29sb3I9e3BsdXNNZW51SWNvbkNvbG9yfSB3aWR0aD17MjB9IGhlaWdodD17MjB9IC8+XG4gICAgICAgICAgICAgICAgICAgIDxQbHVzTWVudUl0ZW1MYWJlbCAkc2VsZWN0ZWQ9e2ZhbHNlfT57dCgnY2hhdC5wbHVzTWVudUF0dGFjaCcpfTwvUGx1c01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgICAgICAgICA8L1BsdXNNZW51SXRlbUJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDxQbHVzTWVudURpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICAgIDxQbHVzTWVudUl0ZW1CdXR0b24gdHlwZT1cImJ1dHRvblwiIG9uQ2xpY2s9e2hhbmRsZVBsdXNNZW51V2ViU2VhcmNofT5cbiAgICAgICAgICAgICAgICAgICAgPEdsb2JlXG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2lzV2ViU2VhcmNoQWN0aXZlID8gcGx1c01lbnVTZWxlY3RlZENvbG9yIDogcGx1c01lbnVJY29uQ29sb3J9XG4gICAgICAgICAgICAgICAgICAgICAgd2lkdGg9ezIwfVxuICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD17MjB9XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDxQbHVzTWVudUl0ZW1MYWJlbCAkc2VsZWN0ZWQ9eyEhaXNXZWJTZWFyY2hBY3RpdmV9Pnt0KCdjaGF0LnNlYXJjaFdlYicpfTwvUGx1c01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIHtpc1dlYlNlYXJjaEFjdGl2ZSA/IDxDaGVjayBjb2xvcj17cGx1c01lbnVTZWxlY3RlZENvbG9yfSB3aWR0aD17MTZ9IGhlaWdodD17MTZ9IC8+IDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvUGx1c01lbnVJdGVtQnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvUGx1c01lbnVJbm5lckNvbHVtbj5cbiAgICAgICAgICAgICAgICA8UGx1c01lbnVJdGVtQnV0dG9uIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPXtoYW5kbGVQbHVzTWVudURlZXBTZWFyY2h9PlxuICAgICAgICAgICAgICAgICAgPFRlbGVzY29wZUljb25cbiAgICAgICAgICAgICAgICAgICAgY29sb3I9e2lzRGVlcFNlYXJjaEFjdGl2ZSA/IHBsdXNNZW51U2VsZWN0ZWRDb2xvciA6IHBsdXNNZW51SWNvbkNvbG9yfVxuICAgICAgICAgICAgICAgICAgICB3aWR0aD17MjB9XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodD17MjB9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFBsdXNNZW51SXRlbUxhYmVsICRzZWxlY3RlZD17ISFpc0RlZXBTZWFyY2hBY3RpdmV9PlxuICAgICAgICAgICAgICAgICAgICB7dCgnY2hhdC5wbHVzTWVudURlZXBJbnZlc3RpZ2F0aW9uJyl9XG4gICAgICAgICAgICAgICAgICA8L1BsdXNNZW51SXRlbUxhYmVsPlxuICAgICAgICAgICAgICAgICAge2lzRGVlcFNlYXJjaEFjdGl2ZSA/IDxDaGVjayBjb2xvcj17cGx1c01lbnVTZWxlY3RlZENvbG9yfSB3aWR0aD17MTZ9IGhlaWdodD17MTZ9IC8+IDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1BsdXNNZW51SXRlbUJ1dHRvbj5cbiAgICAgICAgICAgICAgPC9QbHVzTWVudVBhcGVyPlxuICAgICAgICAgICAgPC9Qb3BvdmVyPlxuICAgICAgICAgICAgeyhpc1dlYlNlYXJjaEFjdGl2ZSB8fCBpc0RlZXBTZWFyY2hBY3RpdmUpICYmIChcbiAgICAgICAgICAgICAgPEFjdGl2ZVRvb2xDaGlwUm9vdFxuICAgICAgICAgICAgICAgICRob3ZlcmVkPXthY3RpdmVUb29sQ2hpcEhvdmVyZWR9XG4gICAgICAgICAgICAgICAgJGV4aXRpbmc9e3Rvb2xDaGlwRXhpdGluZ31cbiAgICAgICAgICAgICAgICBvbk1vdXNlRW50ZXI9eygpID0+IHNldEFjdGl2ZVRvb2xDaGlwSG92ZXJlZCh0cnVlKX1cbiAgICAgICAgICAgICAgICBvbk1vdXNlTGVhdmU9eygpID0+IHNldEFjdGl2ZVRvb2xDaGlwSG92ZXJlZChmYWxzZSl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8QWN0aXZlVG9vbENoaXBJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICRjbG9zZVNob3duPXthY3RpdmVUb29sQ2hpcEhvdmVyZWR9XG4gICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPXt0KCdjaGF0LnJlbW92ZUFjdGl2ZVRvb2xBcmlhJyl9XG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXtlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgICAgICAgICAgICAgICBiZWdpblRvb2xDaGlwRXhpdCgpXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHthY3RpdmVUb29sQ2hpcExlYWRpbmdJY29ufVxuICAgICAgICAgICAgICAgIDwvQWN0aXZlVG9vbENoaXBJY29uQnV0dG9uPlxuICAgICAgICAgICAgICAgIDxBY3RpdmVUb29sQ2hpcExhYmVsPlxuICAgICAgICAgICAgICAgICAge2lzV2ViU2VhcmNoQWN0aXZlID8gdCgnY2hhdC5zZWFyY2hXZWInKSA6IHQoJ2NoYXQucGx1c01lbnVEZWVwSW52ZXN0aWdhdGlvbicpfVxuICAgICAgICAgICAgICAgIDwvQWN0aXZlVG9vbENoaXBMYWJlbD5cbiAgICAgICAgICAgICAgPC9BY3RpdmVUb29sQ2hpcFJvb3Q+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvUGx1c01lbnVUb29sc1Jvdz5cblxuICAgICAgICAgIHtpc1dyaXRpbmcgPyAoXG4gICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17dCgnY2hhdC5zdG9wJyl9PlxuICAgICAgICAgICAgICA8U3R5bGVkTUFJQVN0b3BCdXR0b24gZGlzYWJsZWQ9e2ZhbHNlfSBvbkNsaWNrPXtoYW5kbGVTdG9wR2VuZXJhdGlvbn0gY2xhc3NOYW1lPXtjbGFzc05hbWV9PlxuICAgICAgICAgICAgICAgIDxTdHlsZWRNQUlBU3RvcEljb24gLz5cbiAgICAgICAgICAgICAgPC9TdHlsZWRNQUlBU3RvcEJ1dHRvbj5cbiAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e2lzU3RyZWFtaW5nID8gdCgnY2hhdC5zZW5kJykgOiB0KCdjaGF0LnNlbmQnKX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRNQUlBU2VuZEJ1dHRvblxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVNlbmRNZXNzYWdlfVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXtpc0Rpc2FibGVkIHx8IGRpc2FibGVkfVxuICAgICAgICAgICAgICAgIGhhc1ZhbHVlcz17ISF2YWx1ZVRleHRhcmVhLmxlbmd0aH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxQYXBlclBsYW5lIGNvbG9yPVwiI0JGQkZCRlwiIHdpZHRoPXsxOH0gaGVpZ2h0PXsxOH0gLz5cbiAgICAgICAgICAgICAgPC9TdHlsZWRNQUlBU2VuZEJ1dHRvbj5cbiAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICApfVxuICAgICAgICA8L1N0eWxlZE1BSUFJbnB1dEJ1dHRvbnM+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHJlZj17ZmlsZUlucHV0UmVmfVxuICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICBtdWx0aXBsZVxuICAgICAgICAgIGFjY2VwdD1cIi50eHQsLm1kLC5jc3YsLmRvYywuZG9jeCwucG5nLC5qcGcsLmpwZWcsLnBkZiwueGxzeCwueGxzLC5mbGFjLC5tNGEsLm1wMywubXA0LC5vZ2EsLm9nZywud2F2LC53ZWJtXCJcbiAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlRmlsZVNlbGVjdH1cbiAgICAgICAgICBzdHlsZT17eyBkaXNwbGF5OiAnbm9uZScgfX1cbiAgICAgICAgLz5cbiAgICAgIDwvU3R5bGVkTUFJQUlucHV0V3JhcHBlcj5cbiAgICAgIHttb2RhbFByb3BzLmlzT3BlbiAmJiAoXG4gICAgICAgIDxNb2RhbEZpbGVFeGNlZWRzXG4gICAgICAgICAgb25DbG9zZT17KCkgPT4gc2V0TW9kYWxQcm9wcyh7IGlzT3BlbjogZmFsc2UsIGV4Y2x1ZGVkRmlsZXM6IFtdLCBleGNlZWRlZEZpbGVzOiBbXSwgZmlsZVNpemVzOiB7fSB9KX1cbiAgICAgICAgICBleGNsdWRlZEZpbGVzPXttb2RhbFByb3BzLmV4Y2x1ZGVkRmlsZXN9XG4gICAgICAgICAgZXhjZWVkZWRGaWxlcz17bW9kYWxQcm9wcy5leGNlZWRlZEZpbGVzfVxuICAgICAgICAgIGZpbGVTaXplcz17bW9kYWxQcm9wcy5maWxlU2l6ZXN9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQTREQSxTQUFTLEVBQUVDLE1BQU0sRUFBRUMsUUFBUSxRQUFRLE9BQU87QUFDdEcsU0FBU0MsT0FBTyxRQUFRLGVBQWU7QUFDdkMsU0FBU0MsVUFBVSxRQUFRLDZDQUE2QztBQUN4RSxTQUFTQyxNQUFNLFFBQVEseUNBQXlDO0FBQ2hFLFNBQVNDLEtBQUssUUFBUSx3Q0FBd0M7QUFDOUQsU0FBU0MsS0FBSyxRQUFRLHdDQUF3QztBQUM5RCxTQUFTQyxJQUFJLFFBQVEsdUNBQXVDO0FBQzVELFNBQVNDLEtBQUssUUFBUSx3Q0FBd0M7QUFDOUQsU0FBU0MsS0FBSyxRQUFRLHdDQUF3QztBQUM5RCxTQUFTQyxPQUFPLFFBQVEsOENBQThDO0FBRXRFLFNBQ0VDLHdCQUF3QixFQUN4QkMsbUJBQW1CLEVBQ25CQyxrQkFBa0IsRUFDbEJDLGVBQWUsRUFDZkMsbUJBQW1CLEVBQ25CQyxrQkFBa0IsRUFDbEJDLGlC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
772
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsIlBvcG92ZXIiLCJQYXBlclBsYW5lIiwiQXR0YWNoIiwiR2xvYmUiLCJUcmFzaCIsIlBsdXMiLCJDaGVjayIsIkNyb3NzIiwiVG9vbHRpcCIsImNvbG9ycyIsIkFjdGl2ZVRvb2xDaGlwSWNvbkJ1dHRvbiIsIkFjdGl2ZVRvb2xDaGlwTGFiZWwiLCJBY3RpdmVUb29sQ2hpcFJvb3QiLCJQbHVzTWVudURpdmlkZXIiLCJQbHVzTWVudUlubmVyQ29sdW1uIiwiUGx1c01lbnVJdGVtQnV0dG9uIiwiUGx1c01lbnVJdGVtTGFiZWwiLCJQbHVzTWVudVBhcGVyIiwiUGx1c01lbnVUb29sc1JvdyIsIlBsdXNUb2dnbGVCdXR0b24iLCJTQ01JQXR0YWNobWVudCIsIlNDTUlBdHRhY2htZW50RGVsZXRlSWNvbiIsIlN0eWxlZE1BSUFJbnB1dCIsIlN0eWxlZE1BSUFJbnB1dEJ1dHRvbnMiLCJTdHlsZWRNQUlBSW5wdXRXcmFwcGVyIiwiU3R5bGVkTUFJQVNlbmRCdXR0b24iLCJTdHlsZWRNQUlBU3RvcEJ1dHRvbiIsIlN0eWxlZE1BSUFTdG9wSWNvbiIsInVzZUdsb2JhbENvbnRleHQiLCJNb2RhbEZpbGVFeGNlZWRzIiwidXNlVCIsIlRlbGVzY29wZUljb24iLCJFVkVOVFMiLCJ1c2VFdmVudCIsImdldENoYXRUb29sc01lbnVBZ2VudFR5cGUiLCJNQUlBX0NIQVRfSU5QVVRfVUkiLCJhbGxvd2VkRmlsZVR5cGVzIiwiZmlsZVR5cGVzIiwiTUFYX0ZJTEVfU0laRV9NQl9NQUlBX1ZJU0lPTiIsIk1BWF9GSUxFX1NJWkVfTUJfT0xEIiwiTUFYX0ZJTEVfU0laRV9NQl9BVURJTyIsIk1BWF9DSEFUX0lOUFVUX0FUVEFDSE1FTlRTIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwiVE9PTF9DSElQX0VYSVRfTVMiLCJNQUlBSW5wdXQiLCJfcmVmIiwiX2FnZW50JGVudGl0eSIsIm9uU2VuZE1lc3NhZ2UiLCJjbGFzc05hbWUiLCJkaXNhYmxlZCIsImlzU3RyZWFtaW5nIiwiaXNXcml0aW5nIiwib25TdG9wR2VuZXJhdGlvbiIsInBsYWNlaG9sZGVyIiwib25DaGFuZ2UiLCJfcmVmJGFsaWduQnV0dG9ucyIsImFsaWduQnV0dG9ucyIsIm9uRmlsZUF0dGFjaCIsIm9uRGVsZXRlQXR0YWNobWVudCIsIl9yZWYkYXR0YWNobWVudHMiLCJhdHRhY2htZW50cyIsImNoYXRJZCIsIm5ld0NoYXRLZXkiLCJfdXNlVCIsInQiLCJpbnB1dFJlZiIsImZpbGVJbnB1dFJlZiIsIndyYXBwZXJSZWYiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJ2YWx1ZVRleHRhcmVhIiwic2V0VmFsdWVUZXh0YXJlYSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiaXNEaXNhYmxlZCIsInNldElzRGlzYWJsZWQiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsImlzRm9jdXNlZCIsInNldElzRm9jdXNlZCIsIl91c2VTdGF0ZTciLCJpc09wZW4iLCJleGNsdWRlZEZpbGVzIiwiZXhjZWVkZWRGaWxlcyIsImZpbGVTaXplcyIsIl91c2VTdGF0ZTgiLCJtb2RhbFByb3BzIiwic2V0TW9kYWxQcm9wcyIsImV2ZW50QW1wbGl0dWRlIiwiX3VzZUdsb2JhbENvbnRleHQiLCJ0b2dnbGVXZWJTZWFyY2giLCJpc1dlYlNlYXJjaEFjdGl2ZSIsInRvZ2dsZURlZXBTZWFyY2giLCJpc0RlZXBTZWFyY2hBY3RpdmUiLCJhZ2VudCIsIl91c2VTdGF0ZTkiLCJfdXNlU3RhdGUwIiwicGx1c01lbnVBbmNob3IiLCJzZXRQbHVzTWVudUFuY2hvciIsIl91c2VTdGF0ZTEiLCJfdXNlU3RhdGUxMCIsImFjdGl2ZVRvb2xDaGlwSG92ZXJlZCIsInNldEFjdGl2ZVRvb2xDaGlwSG92ZXJlZCIsIl91c2VTdGF0ZTExIiwiX3VzZVN0YXRlMTIiLCJ0b29sQ2hpcEV4aXRpbmciLCJzZXRUb29sQ2hpcEV4aXRpbmciLCJ0b29sQ2hpcEV4aXRUaW1lclJlZiIsInNlYXJjaE1vZGVBY3RpdmVSZWYiLCJ3ZWIiLCJkZWVwIiwicGx1c01lbnVPcGVuIiwiQm9vbGVhbiIsImFuYWx5dGljc0FnZW50VHlwZSIsImFuYWx5dGljc0Nsb25lRW50aXR5UGF5bG9hZCIsInR5cGUiLCJlbnRpdHkiLCJzY2hlZHVsZUlucHV0Rm9jdXNBZnRlclRvb2xBY3Rpb24iLCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiLCJ3aW5kb3ciLCJzZXRUaW1lb3V0IiwiX2lucHV0UmVmJGN1cnJlbnQiLCJjdXJyZW50IiwiZm9jdXMiLCJwcmV2ZW50U2Nyb2xsIiwiY2xvc2VQbHVzTWVudSIsImNhbmNlbFBlbmRpbmdUb29sQ2hpcEV4aXQiLCJjbGVhclRpbWVvdXQiLCJoYW5kbGVQbHVzQnV0dG9uQ2xpY2siLCJlIiwic3RvcFByb3BhZ2F0aW9uIiwiY3VycmVudFRhcmdldCIsImFpQ2hhdFBsdXNPcGVuIiwiX29iamVjdFNwcmVhZCIsImFnZW50X3R5cGUiLCJoYW5kbGVQbHVzTWVudUF0dGFjaCIsIl9maWxlSW5wdXRSZWYkY3VycmVudCIsImFpQ2hhdFRvb2xzIiwib3B0aW9uIiwibGVuZ3RoIiwiY2xpY2siLCJiZWdpblRvb2xDaGlwRXhpdCIsIndhc1dlYiIsIndhc0RlZXAiLCJfc2VhcmNoTW9kZUFjdGl2ZVJlZiQiLCJoYW5kbGVQbHVzTWVudVdlYlNlYXJjaCIsImhhbmRsZVBsdXNNZW51RGVlcFNlYXJjaCIsInByZXZpb3VzQWdlbnRJZFJlZiIsInVuZGVmaW5lZCIsInByZXZpb3VzQ2hhdElkUmVmIiwicHJldmlvdXNOZXdDaGF0S2V5UmVmIiwiaGFuZGxlUmVzaXplIiwidGV4dGFyZWEiLCJtaW5IZWlnaHQiLCJtYXhIZWlnaHQiLCJwcmV2aW91c01pbkhlaWdodCIsInN0eWxlIiwicHJldmlvdXNNYXhIZWlnaHQiLCJoZWlnaHQiLCJvZmZzZXRIZWlnaHQiLCJzY3JvbGxIZWlnaHQiLCJjb21wdXRlZFN0eWxlIiwiZ2V0Q29tcHV0ZWRTdHlsZSIsImxpbmVIZWlnaHQiLCJwYXJzZUZsb2F0IiwicGFkZGluZ1RvcCIsInBhZGRpbmdCb3R0b20iLCJib3JkZXJUb3AiLCJib3JkZXJUb3BXaWR0aCIsImJvcmRlckJvdHRvbSIsImJvcmRlckJvdHRvbVdpZHRoIiwic2luZ2xlTGluZUhlaWdodCIsImlzRW1wdHkiLCJ2YWx1ZSIsInRyaW0iLCJoYXNNdWx0aXBsZVZpc3VhbExpbmVzIiwiY2FudmFzIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiY29udGV4dCIsImdldENvbnRleHQiLCJ0ZXh0YXJlYVN0eWxlcyIsImZvbnQiLCJjb25jYXQiLCJmb250V2VpZ2h0IiwiZm9udFNpemUiLCJmb250RmFtaWx5IiwicGFkZGluZ0xlZnQiLCJwYWRkaW5nUmlnaHQiLCJib3JkZXJMZWZ0IiwiYm9yZGVyTGVmdFdpZHRoIiwiYm9yZGVyUmlnaHQiLCJib3JkZXJSaWdodFdpZHRoIiwidGV4dGFyZWFXaWR0aCIsIm9mZnNldFdpZHRoIiwidGV4dCIsImxpbmVzIiwic3BsaXQiLCJfaXRlcmF0b3IiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlciIsIl9zdGVwIiwicyIsIm4iLCJkb25lIiwibGluZSIsInRleHRXaWR0aCIsIm1lYXN1cmVUZXh0Iiwid2lkdGgiLCJlcnIiLCJmIiwibmV3SGVpZ2h0IiwiTWF0aCIsIm1pbiIsIm1heCIsImFnZW50Q2hhbmdlZCIsImlkIiwicHJldmlvdXNDaGF0SWQiLCJjdXJyZW50Q2hhdElkIiwiY2hhdENoYW5nZWQiLCJjaGFuZ2VkRnJvbU5ld0NoYXRUb09sZENoYXQiLCJuZXdDaGF0U3RhcnRlZCIsImlzSW5pdGlhbE1vdW50IiwiZGVsYXkiLCJoYW5kbGVTZXNzaW9uQ2hhbmdlIiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJhbmltYXRpb25GcmFtZUlkIiwiY2FuY2VsQW5pbWF0aW9uRnJhbWUiLCJoYXNUZXh0IiwiaGFzQXR0YWNobWVudHMiLCJoYW5kbGVTZW5kTWVzc2FnZSIsImhhbmRsZUtleURvd24iLCJrZXkiLCJzaGlmdEtleSIsInByZXZlbnREZWZhdWx0IiwiaGFuZGxlQ2hhbmdlIiwidGFyZ2V0IiwiaGFuZGxlUGFzdGUiLCJfaW5wdXRSZWYkY3VycmVudCR2YWwiLCJfaW5wdXRSZWYkY3VycmVudDIiLCJjdXJyZW50VmFsdWUiLCJoYW5kbGVGaWxlU2VsZWN0IiwiZmlsZXMiLCJmaWxlc0luc2VydGVkIiwiaXNOZXdGb3JtYXQiLCJleHRlbnNpb24iLCJpbmNsdWRlcyIsImlzT2xkRm9ybWF0IiwiaXNBdWRpb0Zvcm1hdCIsIkFycmF5IiwiZnJvbSIsImZvckVhY2giLCJmaWxlIiwiX2ZpbGVOYW1lUGFydHMkcG9wIiwiZXhjbHVkZWRGaWxlIiwiZmlsZU5hbWVQYXJ0cyIsIm5hbWUiLCJmaWxlRXh0ZW5zaW9uIiwicG9wIiwidG9Mb3dlckNhc2UiLCJzaXplIiwicHVzaCIsInR5cGVGaWxlIiwicGFyc2VkRmlsZSIsIkZpbGUiLCJoYW5kbGVEZWxldGVBdHRhY2htZW50IiwiZmlsZUlkIiwiaGFuZGxlQmx1ciIsImhhbmRsZVdyYXBwZXJGb2N1cyIsImhhbmRsZVdyYXBwZXJCbHVyIiwiX3dyYXBwZXJSZWYkY3VycmVudCIsImNvbnRhaW5zIiwiYWN0aXZlRWxlbWVudCIsImhhbmRsZVN0b3BHZW5lcmF0aW9uIiwiYWlDaGF0U3RvcFJlc3BvbnNlIiwicGx1c0ljb25Db2xvciIsInNlY29uZGFyeSIsIm1lZGl1bUdyYXkiLCJwbHVzTWVudUljb25Db2xvciIsIm1lbnVJY29uIiwicGx1c01lbnVTZWxlY3RlZENvbG9yIiwidGV4dEJyYW5kQm9sZCIsImFjdGl2ZVRvb2xDaGlwTGVhZGluZ0ljb24iLCJjb2xvciIsImNoaXBDbG9zZUljb24iLCJjaGlsZHJlbiIsInJlZiIsIm9uRm9jdXMiLCJvbkJsdXIiLCJkaXNwbGF5IiwiZ2FwIiwiYWxpZ25JdGVtcyIsIm1hcCIsImF0dGFjaG1lbnQiLCJpbmRleCIsIl9maWxlTmFtZVBhcnRzJHBvcDIiLCJfYXR0YWNobWVudCR0eXBlIiwiaXNJbWFnZUJ5RXh0ZW5zaW9uIiwiaXNJbWFnZUJ5TWltZSIsInN0YXJ0c1dpdGgiLCJpc0ltYWdlIiwidGl0bGUiLCJpY29uIiwib25DbGljayIsIm9uS2V5RG93biIsIm9uUGFzdGUiLCIkbWVudU9wZW4iLCJvcGVuIiwiYW5jaG9yRWwiLCJvbkNsb3NlIiwiYW5jaG9yT3JpZ2luIiwidmVydGljYWwiLCJob3Jpem9udGFsIiwidHJhbnNmb3JtT3JpZ2luIiwic2xvdFByb3BzIiwicGFwZXIiLCJlbGV2YXRpb24iLCJzeCIsIm92ZXJmbG93IiwiYm9yZGVyUmFkaXVzIiwiYm94U2hhZG93IiwiYmFja2dyb3VuZENvbG9yIiwibWFyZ2luVG9wIiwiJHNlbGVjdGVkIiwiJGhvdmVyZWQiLCIkZXhpdGluZyIsIm9uTW91c2VFbnRlciIsIm9uTW91c2VMZWF2ZSIsIiRjbG9zZVNob3duIiwiaGFzVmFsdWVzIiwibXVsdGlwbGUiLCJhY2NlcHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9NQUlBSW5wdXQvTUFJQUlucHV0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1yZXN0cmljdGVkLXN5bnRheCAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY29udGludWUgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLXZvaWQgKi9cbi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L25vLWFycmF5LWluZGV4LWtleSAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tbG9uZWx5LWlmICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBwcmVmZXItZGVzdHJ1Y3R1cmluZyAqL1xuLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvY2xpY2stZXZlbnRzLWhhdmUta2V5LWV2ZW50cyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvbm8tc3RhdGljLWVsZW1lbnQtaW50ZXJhY3Rpb25zICovXG5pbXBvcnQgeyBDaGFuZ2VFdmVudCwgS2V5Ym9hcmRFdmVudCwgTW91c2VFdmVudCwgUmVhY3ROb2RlLCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFBvcG92ZXIgfSBmcm9tICdAbXVpL21hdGVyaWFsJ1xuaW1wb3J0IHsgUGFwZXJQbGFuZSB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL1BhcGVyUGxhbmUnXG5pbXBvcnQgeyBBdHRhY2ggfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9BdHRhY2gnXG5pbXBvcnQgeyBHbG9iZSB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0dsb2JlJ1xuaW1wb3J0IHsgVHJhc2ggfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9UcmFzaCdcbmltcG9ydCB7IFBsdXMgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9QbHVzJ1xuaW1wb3J0IHsgQ2hlY2sgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9DaGVjaydcbmltcG9ydCB7IENyb3NzIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ3Jvc3MnXG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnQHByb2plY3Rjb3IvdG9vbHRpcHYyL2xpYi9jb21wb25lbnRzL1Rvb2x0aXAnXG5pbXBvcnQgY29sb3JzIGZyb20gJ0Bwcm9qZWN0Y29yL3RoZW1lL2xpYi9iYXNlL2NvbG9ycydcblxuaW1wb3J0IHtcbiAgQWN0aXZlVG9vbENoaXBJY29uQnV0dG9uLFxuICBBY3RpdmVUb29sQ2hpcExhYmVsLFxuICBBY3RpdmVUb29sQ2hpcFJvb3QsXG4gIFBsdXNNZW51RGl2aWRlcixcbiAgUGx1c01lbnVJbm5lckNvbHVtbixcbiAgUGx1c01lbnVJdGVtQnV0dG9uLFxuICBQbHVzTWVudUl0ZW1MYWJlbCxcbiAgUGx1c01lbnVQYXBlcixcbiAgUGx1c01lbnVUb29sc1JvdyxcbiAgUGx1c1RvZ2dsZUJ1dHRvbixcbiAgU0NNSUF0dGFjaG1lbnQsXG4gIFNDTUlBdHRhY2htZW50RGVsZXRlSWNvbixcbiAgU3R5bGVkTUFJQUlucHV0LFxuICBTdHlsZWRNQUlBSW5wdXRCdXR0b25zLFxuICBTdHlsZWRNQUlBSW5wdXRXcmFwcGVyLFxuICBTdHlsZWRNQUlBU2VuZEJ1dHRvbixcbiAgU3R5bGVkTUFJQVN0b3BCdXR0b24sXG4gIFN0eWxlZE1BSUFTdG9wSWNvbixcbn0gZnJvbSAnLi9zdHlsZXMnXG5pbXBvcnQgeyB1c2VHbG9iYWxDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9nbG9iYWwtY29udGV4dCdcbmltcG9ydCB7IE1vZGFsRmlsZUV4Y2VlZHMgfSBmcm9tICcuLi8uLi9vcmdhbmlzbXMvTW9kYWxGaWxlRXhjZWVkcydcbmltcG9ydCB7IHVzZVQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VUJ1xuaW1wb3J0IHsgVGVsZXNjb3BlSWNvbiB9IGZyb20gJy4uL2ljb25zL1RlbGVzY29wZUljb24nXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgeyBnZXRDaGF0VG9vbHNNZW51QWdlbnRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvaGl0bEFuYWx5dGljcydcbmltcG9ydCB7IE1BSUFfQ0hBVF9JTlBVVF9VSSB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb25maWcnXG5pbXBvcnQge1xuICBhbGxvd2VkRmlsZVR5cGVzLFxuICBmaWxlVHlwZXMsXG4gIE1BWF9GSUxFX1NJWkVfTUJfTUFJQV9WSVNJT04sXG4gIE1BWF9GSUxFX1NJWkVfTUJfT0xELFxuICBNQVhfRklMRV9TSVpFX01CX0FVRElPLFxuICBNQVhfQ0hBVF9JTlBVVF9BVFRBQ0hNRU5UUyxcbn0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL2Zvcm1hdEV4dGVuc2lvbnMnXG5cbmNvbnN0IFRPT0xfQ0hJUF9FWElUX01TID0gMjIwXG5cbnR5cGUgQXR0YWNobWVudEZpbGUgPSB7XG4gIGZpbGU6IEZpbGVcbiAgb3JpZ2luYWxGaWxlPzogRmlsZVxuICBpZDogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xuICBzaXplOiBudW1iZXJcbiAgdHlwZTogc3RyaW5nXG4gIGljb24/OiBSZWFjdE5vZGVcbn1cblxudHlwZSBNQUlBSW5wdXRQcm9wcyA9IHtcbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBvblNlbmRNZXNzYWdlOiAobWVzc2FnZTogc3RyaW5nLCBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW10pID0+IHZvaWRcbiAgb25TdG9wR2VuZXJhdGlvbj86ICgpID0+IHZvaWRcbiAgaXNTdHJlYW1pbmc/OiBib29sZWFuXG4gIGlzV3JpdGluZz86IGJvb2xlYW5cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgb25DaGFuZ2U/OiAoKSA9PiB2b2lkXG4gIGFsaWduQnV0dG9ucz86ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCdcbiAgb25GaWxlQXR0YWNoPzogKGZpbGU6IEZpbGUpID0+IHZvaWRcbiAgb25EZWxldGVBdHRhY2htZW50PzogKGZpbGVJZDogc3RyaW5nKSA9PiB2b2lkXG4gIGF0dGFjaG1lbnRzPzogQXR0YWNobWVudEZpbGVbXVxuICBjaGF0SWQ/OiBzdHJpbmdcbiAgbmV3Q2hhdEtleT86IG51bWJlclxufVxuXG5leHBvcnQgY29uc3QgTUFJQUlucHV0ID0gKHtcbiAgb25TZW5kTWVzc2FnZSxcbiAgY2xhc3NOYW1lLFxuICBkaXNhYmxlZCxcbiAgaXNTdHJlYW1pbmcsXG4gIGlzV3JpdGluZyxcbiAgb25TdG9wR2VuZXJhdGlvbixcbiAgcGxhY2Vob2xkZXIsXG4gIG9uQ2hhbmdlLFxuICBhbGlnbkJ1dHRvbnMgPSAndmVydGljYWwnLFxuICBvbkZpbGVBdHRhY2gsXG4gIG9uRGVsZXRlQXR0YWNobWVudCxcbiAgYXR0YWNobWVudHMgPSBbXSxcbiAgY2hhdElkLFxuICBuZXdDaGF0S2V5LFxufTogTUFJQUlucHV0UHJvcHMpID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUKClcbiAgY29uc3QgaW5wdXRSZWYgPSB1c2VSZWY8SFRNTFRleHRBcmVhRWxlbWVudD4obnVsbClcbiAgY29uc3QgZmlsZUlucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IHdyYXBwZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IFt2YWx1ZVRleHRhcmVhLCBzZXRWYWx1ZVRleHRhcmVhXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbaXNEaXNhYmxlZCwgc2V0SXNEaXNhYmxlZF0gPSB1c2VTdGF0ZSh0cnVlKVxuICBjb25zdCBbaXNGb2N1c2VkLCBzZXRJc0ZvY3VzZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFttb2RhbFByb3BzLCBzZXRNb2RhbFByb3BzXSA9IHVzZVN0YXRlKHtcbiAgICBpc09wZW46IGZhbHNlLFxuICAgIGV4Y2x1ZGVkRmlsZXM6IFtdIGFzIHN0cmluZ1tdLFxuICAgIGV4Y2VlZGVkRmlsZXM6IFtdIGFzIHN0cmluZ1tdLFxuICAgIGZpbGVTaXplczoge30gYXMgUmVjb3JkPHN0cmluZywgbnVtYmVyPixcbiAgfSlcbiAgY29uc3QgZXZlbnRBbXBsaXR1ZGUgPSB1c2VFdmVudCgpXG4gIGNvbnN0IHsgdG9nZ2xlV2ViU2VhcmNoLCBpc1dlYlNlYXJjaEFjdGl2ZSwgdG9nZ2xlRGVlcFNlYXJjaCwgaXNEZWVwU2VhcmNoQWN0aXZlLCBhZ2VudCB9ID0gdXNlR2xvYmFsQ29udGV4dCgpXG4gIGNvbnN0IFtwbHVzTWVudUFuY2hvciwgc2V0UGx1c01lbnVBbmNob3JdID0gdXNlU3RhdGU8SFRNTEJ1dHRvbkVsZW1lbnQgfCBudWxsPihudWxsKVxuICBjb25zdCBbYWN0aXZlVG9vbENoaXBIb3ZlcmVkLCBzZXRBY3RpdmVUb29sQ2hpcEhvdmVyZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFt0b29sQ2hpcEV4aXRpbmcsIHNldFRvb2xDaGlwRXhpdGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgdG9vbENoaXBFeGl0VGltZXJSZWYgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsPihudWxsKVxuICBjb25zdCBzZWFyY2hNb2RlQWN0aXZlUmVmID0gdXNlUmVmKHsgd2ViOiBmYWxzZSwgZGVlcDogZmFsc2UgfSlcbiAgY29uc3QgcGx1c01lbnVPcGVuID0gQm9vbGVhbihwbHVzTWVudUFuY2hvcilcblxuICBjb25zdCBhbmFseXRpY3NBZ2VudFR5cGUgPSBnZXRDaGF0VG9vbHNNZW51QWdlbnRUeXBlKGFnZW50KVxuICBjb25zdCBhbmFseXRpY3NDbG9uZUVudGl0eVBheWxvYWQgPSBhZ2VudD8udHlwZSA9PT0gJ2Nsb25lJyA/IHsgZW50aXR5OiBhZ2VudC5lbnRpdHkgPz8gbnVsbCB9IDoge31cblxuICAvKiogVHJhcyBlbGVnaXIgbyBxdWl0YXIgYsO6c3F1ZWRhIHdlYi9wcm9mdW5kYTogdm9sdmVyIGFsIHRleHRhcmVhIChQb3BvdmVyL21lbnUgcHVlZGUgcm9iYXIgZm9jbykuICovXG4gIGNvbnN0IHNjaGVkdWxlSW5wdXRGb2N1c0FmdGVyVG9vbEFjdGlvbiA9ICgpID0+IHtcbiAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBpbnB1dFJlZi5jdXJyZW50Py5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSlcbiAgICAgIH0sIDApXG4gICAgfSlcbiAgfVxuXG4gIGNvbnN0IGNsb3NlUGx1c01lbnUgPSAoKSA9PiB7XG4gICAgc2V0UGx1c01lbnVBbmNob3IobnVsbClcbiAgfVxuXG4gIGNvbnN0IGNhbmNlbFBlbmRpbmdUb29sQ2hpcEV4aXQgPSAoKSA9PiB7XG4gICAgaWYgKHRvb2xDaGlwRXhpdFRpbWVyUmVmLmN1cnJlbnQgIT09IG51bGwpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0b29sQ2hpcEV4aXRUaW1lclJlZi5jdXJyZW50KVxuICAgICAgdG9vbENoaXBFeGl0VGltZXJSZWYuY3VycmVudCA9IG51bGxcbiAgICB9XG4gICAgc2V0VG9vbENoaXBFeGl0aW5nKGZhbHNlKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlUGx1c0J1dHRvbkNsaWNrID0gKGU6IE1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+KSA9PiB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKVxuICAgIGlmIChwbHVzTWVudUFuY2hvcikge1xuICAgICAgY2xvc2VQbHVzTWVudSgpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgc2V0UGx1c01lbnVBbmNob3IoZS5jdXJyZW50VGFyZ2V0KVxuICAgIGV2ZW50QW1wbGl0dWRlKEVWRU5UUy5haUNoYXRQbHVzT3BlbiwgeyBhZ2VudF90eXBlOiBhbmFseXRpY3NBZ2VudFR5cGUsIC4uLmFuYWx5dGljc0Nsb25lRW50aXR5UGF5bG9hZCB9KVxuICB9XG5cbiAgY29uc3QgaGFuZGxlUGx1c01lbnVBdHRhY2ggPSAoKSA9PiB7XG4gICAgY2xvc2VQbHVzTWVudSgpXG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFRvb2xzLCB7XG4gICAgICBhZ2VudF90eXBlOiBhbmFseXRpY3NBZ2VudFR5cGUsXG4gICAgICBvcHRpb246ICdmaWxlcycsXG4gICAgICAuLi5hbmFseXRpY3NDbG9uZUVudGl0eVBheWxvYWQsXG4gICAgfSlcbiAgICBpZiAoYXR0YWNobWVudHMubGVuZ3RoID49IE1BWF9DSEFUX0lOUFVUX0FUVEFDSE1FTlRTKSByZXR1cm5cbiAgICBmaWxlSW5wdXRSZWYuY3VycmVudD8uY2xpY2soKVxuICB9XG5cbiAgY29uc3QgYmVnaW5Ub29sQ2hpcEV4aXQgPSAoKSA9PiB7XG4gICAgaWYgKHRvb2xDaGlwRXhpdFRpbWVyUmVmLmN1cnJlbnQgIT09IG51bGwpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCB3YXNXZWIgPSBpc1dlYlNlYXJjaEFjdGl2ZVxuICAgIGNvbnN0IHdhc0RlZXAgPSBpc0RlZXBTZWFyY2hBY3RpdmVcbiAgICBpZiAoIXdhc1dlYiAmJiAhd2FzRGVlcCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHNldFRvb2xDaGlwRXhpdGluZyh0cnVlKVxuICAgIHRvb2xDaGlwRXhpdFRpbWVyUmVmLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRvb2xDaGlwRXhpdFRpbWVyUmVmLmN1cnJlbnQgPSBudWxsXG4gICAgICBjb25zdCB7IHdlYiwgZGVlcCB9ID0gc2VhcmNoTW9kZUFjdGl2ZVJlZi5jdXJyZW50XG4gICAgICBpZiAod2FzV2ViICYmIHdlYikge1xuICAgICAgICB0b2dnbGVXZWJTZWFyY2goKVxuICAgICAgfSBlbHNlIGlmICh3YXNEZWVwICYmIGRlZXApIHtcbiAgICAgICAgdG9nZ2xlRGVlcFNlYXJjaCgpXG4gICAgICB9XG4gICAgICBzZXRUb29sQ2hpcEV4aXRpbmcoZmFsc2UpXG4gICAgICBzY2hlZHVsZUlucHV0Rm9jdXNBZnRlclRvb2xBY3Rpb24oKVxuICAgIH0sIFRPT0xfQ0hJUF9FWElUX01TKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlUGx1c01lbnVXZWJTZWFyY2ggPSAoKSA9PiB7XG4gICAgY2xvc2VQbHVzTWVudSgpXG4gICAgaWYgKGlzV2ViU2VhcmNoQWN0aXZlKSB7XG4gICAgICBiZWdpblRvb2xDaGlwRXhpdCgpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY2FuY2VsUGVuZGluZ1Rvb2xDaGlwRXhpdCgpXG4gICAgaWYgKGlzRGVlcFNlYXJjaEFjdGl2ZSkge1xuICAgICAgdG9nZ2xlRGVlcFNlYXJjaCgpXG4gICAgfVxuICAgIHRvZ2dsZVdlYlNlYXJjaCgpXG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFRvb2xzLCB7XG4gICAgICBhZ2VudF90eXBlOiBhbmFseXRpY3NBZ2VudFR5cGUsXG4gICAgICBvcHRpb246ICdzZWFyY2gnLFxuICAgICAgLi4uYW5hbHl0aWNzQ2xvbmVFbnRpdHlQYXlsb2FkLFxuICAgIH0pXG4gICAgc2NoZWR1bGVJbnB1dEZvY3VzQWZ0ZXJUb29sQWN0aW9uKClcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZVBsdXNNZW51RGVlcFNlYXJjaCA9ICgpID0+IHtcbiAgICBjbG9zZVBsdXNNZW51KClcbiAgICBpZiAoaXNEZWVwU2VhcmNoQWN0aXZlKSB7XG4gICAgICBiZWdpblRvb2xDaGlwRXhpdCgpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY2FuY2VsUGVuZGluZ1Rvb2xDaGlwRXhpdCgpXG4gICAgaWYgKGlzV2ViU2VhcmNoQWN0aXZlKSB7XG4gICAgICB0b2dnbGVXZWJTZWFyY2goKVxuICAgIH1cbiAgICB0b2dnbGVEZWVwU2VhcmNoKClcbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0VG9vbHMsIHtcbiAgICAgIGFnZW50X3R5cGU6IGFuYWx5dGljc0FnZW50VHlwZSxcbiAgICAgIG9wdGlvbjogJ2RlZXBfc2VhcmNoJyxcbiAgICAgIC4uLmFuYWx5dGljc0Nsb25lRW50aXR5UGF5bG9hZCxcbiAgICB9KVxuICAgIHNjaGVkdWxlSW5wdXRGb2N1c0FmdGVyVG9vbEFjdGlvbigpXG4gIH1cblxuICAvLyBJbmljaWFsaXphciBsYXMgcmVmZXJlbmNpYXMgY29tbyB1bmRlZmluZWQgcGFyYSBkZXRlY3RhciBlbCBwcmltZXIgY2FtYmlvIGNvcnJlY3RhbWVudGVcbiAgY29uc3QgcHJldmlvdXNBZ2VudElkUmVmID0gdXNlUmVmPHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKVxuICBjb25zdCBwcmV2aW91c0NoYXRJZFJlZiA9IHVzZVJlZjxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZClcbiAgY29uc3QgcHJldmlvdXNOZXdDaGF0S2V5UmVmID0gdXNlUmVmPG51bWJlciB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKVxuXG4gIGNvbnN0IGhhbmRsZVJlc2l6ZSA9ICgpID0+IHtcbiAgICBjb25zdCB0ZXh0YXJlYSA9IGlucHV0UmVmLmN1cnJlbnRcbiAgICBpZiAoIXRleHRhcmVhKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBBbHR1cmEgbcOtbmltYSBlcXVpdmFsZW50ZSBhIHVuYSBsw61uZWFcbiAgICBjb25zdCBtaW5IZWlnaHQgPSAyMi4xXG4gICAgY29uc3QgbWF4SGVpZ2h0ID0gMTIyLjFcblxuICAgIC8vIFBhcmEgbWVkaXIgY29ycmVjdGFtZW50ZSBlbCBzY3JvbGxIZWlnaHQsIG5lY2VzaXRhbW9zIHF1aXRhciB0ZW1wb3JhbG1lbnRlIGxhcyByZXN0cmljY2lvbmVzXG4gICAgY29uc3QgcHJldmlvdXNNaW5IZWlnaHQgPSB0ZXh0YXJlYS5zdHlsZS5taW5IZWlnaHRcbiAgICBjb25zdCBwcmV2aW91c01heEhlaWdodCA9IHRleHRhcmVhLnN0eWxlLm1heEhlaWdodFxuXG4gICAgLy8gRXN0YWJsZWNlciBhbHR1cmEgYSAnYXV0bycgeSBxdWl0YXIgdGVtcG9yYWxtZW50ZSBtaW4taGVpZ2h0IHkgbWF4LWhlaWdodCBwYXJhIG1lZGlyIGNvcnJlY3RhbWVudGVcbiAgICB0ZXh0YXJlYS5zdHlsZS5oZWlnaHQgPSAnYXV0bydcbiAgICB0ZXh0YXJlYS5zdHlsZS5taW5IZWlnaHQgPSAnMHB4J1xuICAgIHRleHRhcmVhLnN0eWxlLm1heEhlaWdodCA9ICdub25lJ1xuXG4gICAgLy8gRm9yemFyIHJlZmxvdyBwYXJhIHF1ZSBlbCBuYXZlZ2Fkb3IgcmVjYWxjdWxlXG4gICAgdm9pZCB0ZXh0YXJlYS5vZmZzZXRIZWlnaHRcblxuICAgIC8vIEFob3JhIG1lZGlyIGVsIHNjcm9sbEhlaWdodCByZWFsIHNpbiByZXN0cmljY2lvbmVzXG4gICAgY29uc3Qgc2Nyb2xsSGVpZ2h0ID0gdGV4dGFyZWEuc2Nyb2xsSGVpZ2h0XG5cbiAgICAvLyBDYWxjdWxhciBsYSBhbHR1cmEgZGUgdW5hIGzDrW5lYSB1c2FuZG8gbG9zIGVzdGlsb3MgY29tcHV0YWRvc1xuICAgIGNvbnN0IGNvbXB1dGVkU3R5bGUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0ZXh0YXJlYSlcbiAgICBjb25zdCBsaW5lSGVpZ2h0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmxpbmVIZWlnaHQpIHx8IDIwIC8vIEZhbGxiYWNrIGEgMjBweCBzaSBubyBlc3TDoSBkZWZpbmlkb1xuICAgIGNvbnN0IHBhZGRpbmdUb3AgPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUucGFkZGluZ1RvcCkgfHwgMFxuICAgIGNvbnN0IHBhZGRpbmdCb3R0b20gPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUucGFkZGluZ0JvdHRvbSkgfHwgMFxuICAgIGNvbnN0IGJvcmRlclRvcCA9IHBhcnNlRmxvYXQoY29tcHV0ZWRTdHlsZS5ib3JkZXJUb3BXaWR0aCkgfHwgMFxuICAgIGNvbnN0IGJvcmRlckJvdHRvbSA9IHBhcnNlRmxvYXQoY29tcHV0ZWRTdHlsZS5ib3JkZXJCb3R0b21XaWR0aCkgfHwgMFxuXG4gICAgLy8gQWx0dXJhIGRlIHVuYSBsw61uZWEgY29tcGxldGEgKGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgICBjb25zdCBzaW5nbGVMaW5lSGVpZ2h0ID0gbGluZUhlaWdodCArIHBhZGRpbmdUb3AgKyBwYWRkaW5nQm90dG9tICsgYm9yZGVyVG9wICsgYm9yZGVyQm90dG9tXG5cbiAgICBjb25zdCBpc0VtcHR5ID0gdGV4dGFyZWEudmFsdWUudHJpbSgpID09PSAnJ1xuXG4gICAgLy8gTWVkaXIgZWwgYW5jaG8gZGVsIHRleHRvIHVzYW5kbyBDYW52YXMgcGFyYSBkZXRlcm1pbmFyIHNpIHNlIGVudnVlbHZlIGEgbcO6bHRpcGxlcyBsw61uZWFzXG4gICAgbGV0IGhhc011bHRpcGxlVmlzdWFsTGluZXMgPSBmYWxzZVxuXG4gICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJylcbiAgICBjb25zdCBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoJzJkJylcblxuICAgIGlmICghY29udGV4dCkge1xuICAgICAgLy8gRmFsbGJhY2sgc2kgQ2FudmFzIG5vIGVzdMOhIGRpc3BvbmlibGU6IHVzYXIgc2Nyb2xsSGVpZ2h0XG4gICAgICBoYXNNdWx0aXBsZVZpc3VhbExpbmVzID0gc2Nyb2xsSGVpZ2h0ID4gc2luZ2xlTGluZUhlaWdodCAqIDEuNVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0ZXh0YXJlYVN0eWxlcyA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRleHRhcmVhKVxuICAgICAgY29udGV4dC5mb250ID0gYCR7dGV4dGFyZWFTdHlsZXMuZm9udFdlaWdodH0gJHt0ZXh0YXJlYVN0eWxlcy5mb250U2l6ZX0gJHt0ZXh0YXJlYVN0eWxlcy5mb250RmFtaWx5fWBcblxuICAgICAgLy8gQ2FsY3VsYXIgZWwgYW5jaG8gZGlzcG9uaWJsZSAoYW5jaG8gdG90YWwgbWVub3MgcGFkZGluZyBpenF1aWVyZG8vZGVyZWNobyB5IGJvcmRlciBpenF1aWVyZG8vZGVyZWNobylcbiAgICAgIGNvbnN0IHBhZGRpbmdMZWZ0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLnBhZGRpbmdMZWZ0KSB8fCAwXG4gICAgICBjb25zdCBwYWRkaW5nUmlnaHQgPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUucGFkZGluZ1JpZ2h0KSB8fCAwXG4gICAgICBjb25zdCBib3JkZXJMZWZ0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLmJvcmRlckxlZnRXaWR0aCkgfHwgMFxuICAgICAgY29uc3QgYm9yZGVyUmlnaHQgPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUuYm9yZGVyUmlnaHRXaWR0aCkgfHwgMFxuICAgICAgY29uc3QgdGV4dGFyZWFXaWR0aCA9IHRleHRhcmVhLm9mZnNldFdpZHRoIC0gcGFkZGluZ0xlZnQgLSBwYWRkaW5nUmlnaHQgLSBib3JkZXJMZWZ0IC0gYm9yZGVyUmlnaHRcbiAgICAgIGNvbnN0IHRleHQgPSB0ZXh0YXJlYS52YWx1ZSB8fCAnJ1xuICAgICAgY29uc3QgbGluZXMgPSB0ZXh0LnNwbGl0KCdcXG4nKVxuXG4gICAgICAvLyBTaSBoYXkgbcO6bHRpcGxlcyBsw61uZWFzIHBvciBzYWx0b3MgZGUgbMOtbmVhIGV4cGzDrWNpdG9zXG4gICAgICBpZiAobGluZXMubGVuZ3RoID4gMSkge1xuICAgICAgICBoYXNNdWx0aXBsZVZpc3VhbExpbmVzID0gdHJ1ZVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gVmVyaWZpY2FyIHNpIGVsIHRleHRvIHNlIGVudnVlbHZlIG1pZGllbmRvIGVsIGFuY2hvIGRlIGNhZGEgbMOtbmVhXG4gICAgICAgIGZvciAoY29uc3QgbGluZSBvZiBsaW5lcykge1xuICAgICAgICAgIGlmIChsaW5lLnRyaW0oKSA9PT0gJycpIGNvbnRpbnVlXG4gICAgICAgICAgY29uc3QgdGV4dFdpZHRoID0gY29udGV4dC5tZWFzdXJlVGV4dChsaW5lKS53aWR0aFxuICAgICAgICAgIC8vIFNpIGFsZ3VuYSBsw61uZWEgZXMgbcOhcyBhbmNoYSBxdWUgZWwgdGV4dGFyZWEgZGlzcG9uaWJsZSwgc2UgZW52dWVsdmVcbiAgICAgICAgICBpZiAodGV4dFdpZHRoID4gdGV4dGFyZWFXaWR0aCkge1xuICAgICAgICAgICAgaGFzTXVsdGlwbGVWaXN1YWxMaW5lcyA9IHRydWVcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IG5ld0hlaWdodDogbnVtYmVyXG4gICAgaWYgKGlzRW1wdHkpIHtcbiAgICAgIC8vIEN1YW5kbyBlc3TDoSB2YWPDrW8sIHVzYXIgYWx0dXJhIG3DrW5pbWFcbiAgICAgIG5ld0hlaWdodCA9IG1pbkhlaWdodFxuICAgIH0gZWxzZSBpZiAoIWhhc011bHRpcGxlVmlzdWFsTGluZXMpIHtcbiAgICAgIC8vIEN1YW5kbyBoYXkgY29udGVuaWRvIHBlcm8gc29sbyB1bmEgbMOtbmVhIHZpc3VhbCwgdXNhciBhbHR1cmEgbcOtbmltYVxuICAgICAgbmV3SGVpZ2h0ID0gbWluSGVpZ2h0XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFBhcmEgbcO6bHRpcGxlcyBsw61uZWFzIHZpc3VhbGVzLCB1c2FyIGVsIHNjcm9sbEhlaWdodFxuICAgICAgbmV3SGVpZ2h0ID0gTWF0aC5taW4oTWF0aC5tYXgoc2Nyb2xsSGVpZ2h0LCBtaW5IZWlnaHQpLCBtYXhIZWlnaHQpXG4gICAgfVxuXG4gICAgLy8gUmVzdGF1cmFyIGVzdGlsb3MgYW50ZXMgZGUgYXBsaWNhciBsYSBudWV2YSBhbHR1cmFcbiAgICB0ZXh0YXJlYS5zdHlsZS5taW5IZWlnaHQgPSBwcmV2aW91c01pbkhlaWdodCB8fCAnMjIuMXB4J1xuICAgIHRleHRhcmVhLnN0eWxlLm1heEhlaWdodCA9IHByZXZpb3VzTWF4SGVpZ2h0IHx8ICcxMjIuMXB4J1xuXG4gICAgdGV4dGFyZWEuc3R5bGUuaGVpZ2h0ID0gYCR7bmV3SGVpZ2h0fXB4YFxuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaW5wdXRSZWYuY3VycmVudCAmJiAhZGlzYWJsZWQpIHtcbiAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKVxuICAgICAgaGFuZGxlUmVzaXplKClcbiAgICB9XG4gIH0sIFtkaXNhYmxlZF0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZWFyY2hNb2RlQWN0aXZlUmVmLmN1cnJlbnQgPSB7IHdlYjogaXNXZWJTZWFyY2hBY3RpdmUsIGRlZXA6IGlzRGVlcFNlYXJjaEFjdGl2ZSB9XG4gIH0sIFtpc1dlYlNlYXJjaEFjdGl2ZSwgaXNEZWVwU2VhcmNoQWN0aXZlXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAodG9vbENoaXBFeGl0VGltZXJSZWYuY3VycmVudCAhPT0gbnVsbCkge1xuICAgICAgICBjbGVhclRpbWVvdXQodG9vbENoaXBFeGl0VGltZXJSZWYuY3VycmVudClcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc1dlYlNlYXJjaEFjdGl2ZSAmJiAhaXNEZWVwU2VhcmNoQWN0aXZlKSB7XG4gICAgICBzZXRBY3RpdmVUb29sQ2hpcEhvdmVyZWQoZmFsc2UpXG4gICAgfVxuICB9LCBbaXNXZWJTZWFyY2hBY3RpdmUsIGlzRGVlcFNlYXJjaEFjdGl2ZV0pXG5cbiAgLy8gQXV0by1mb2N1cyBjdWFuZG8gY2FtYmlhIGVsIGFnZW50ZSBvIGxhIGNvbnZlcnNhY2nDs24sIG8gYWwgbW9udGFyIGVsIGNvbXBvbmVudGVcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBDb21wYXJhY2nDs24gcXVlIG1hbmVqYSBjb3JyZWN0YW1lbnRlIHVuZGVmaW5lZC9udWxsXG4gICAgY29uc3QgYWdlbnRDaGFuZ2VkID0gcHJldmlvdXNBZ2VudElkUmVmLmN1cnJlbnQgIT09IGFnZW50Py5pZFxuICAgIC8vIENvbXBhcmFjacOzbiBlc3RyaWN0YSBxdWUgZGV0ZWN0YSBjYW1iaW9zIGluY2x1c28gY3VhbmRvIHVubyBlcyB1bmRlZmluZWRcbiAgICBjb25zdCBwcmV2aW91c0NoYXRJZCA9IHByZXZpb3VzQ2hhdElkUmVmLmN1cnJlbnRcbiAgICBjb25zdCBjdXJyZW50Q2hhdElkID0gY2hhdElkXG4gICAgY29uc3QgY2hhdENoYW5nZWQgPSBwcmV2aW91c0NoYXRJZCAhPT0gY3VycmVudENoYXRJZFxuICAgIC8vIERldGVjdGFyIGNhbWJpbyBlc3BlY8OtZmljbyBkZSB1bmRlZmluZWQvbnVsbCBhIHVuIHZhbG9yIChudWV2byBjaGF0IC0+IGNvbnZlcnNhY2nDs24gdmllamEpXG4gICAgY29uc3QgY2hhbmdlZEZyb21OZXdDaGF0VG9PbGRDaGF0ID1cbiAgICAgIChwcmV2aW91c0NoYXRJZCA9PT0gdW5kZWZpbmVkIHx8IHByZXZpb3VzQ2hhdElkID09PSBudWxsKSAmJiBjdXJyZW50Q2hhdElkICE9PSB1bmRlZmluZWQgJiYgY3VycmVudENoYXRJZCAhPT0gbnVsbFxuICAgIGNvbnN0IG5ld0NoYXRTdGFydGVkID0gcHJldmlvdXNOZXdDaGF0S2V5UmVmLmN1cnJlbnQgIT09IG5ld0NoYXRLZXlcbiAgICBjb25zdCBpc0luaXRpYWxNb3VudCA9IHByZXZpb3VzQWdlbnRJZFJlZi5jdXJyZW50ID09PSB1bmRlZmluZWQgJiYgcHJldmlvdXNDaGF0SWRSZWYuY3VycmVudCA9PT0gdW5kZWZpbmVkXG5cbiAgICBpZiAoXG4gICAgICAoYWdlbnRDaGFuZ2VkIHx8IGNoYXRDaGFuZ2VkIHx8IGNoYW5nZWRGcm9tTmV3Q2hhdFRvT2xkQ2hhdCB8fCBuZXdDaGF0U3RhcnRlZCB8fCBpc0luaXRpYWxNb3VudCkgJiZcbiAgICAgIGlucHV0UmVmLmN1cnJlbnQgJiZcbiAgICAgICFkaXNhYmxlZFxuICAgICkge1xuICAgICAgLy8gVXNhciBzZXRUaW1lb3V0IHBhcmEgYXNlZ3VyYXIgcXVlIGVsIERPTSBlc3TDqSBsaXN0b1xuICAgICAgLy8gQXVtZW50YXIgZWwgZGVsYXkgcGFyYSBjYXNvcyBkb25kZSBlbCBjb21wb25lbnRlIHNlIGVzdMOhIG1vbnRhbmRvXG4gICAgICBjb25zdCBkZWxheSA9IGlzSW5pdGlhbE1vdW50IHx8IGNoYW5nZWRGcm9tTmV3Q2hhdFRvT2xkQ2hhdCA/IDIwMCA6IDEwMFxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmIChpbnB1dFJlZi5jdXJyZW50ICYmICFkaXNhYmxlZCkge1xuICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKVxuICAgICAgICB9XG4gICAgICB9LCBkZWxheSlcbiAgICB9XG5cbiAgICAvLyBBY3R1YWxpemFyIGxhcyByZWZlcmVuY2lhcyBERVNQVcOJUyBkZSBsYSBjb21wYXJhY2nDs25cbiAgICBwcmV2aW91c0FnZW50SWRSZWYuY3VycmVudCA9IGFnZW50Py5pZFxuICAgIHByZXZpb3VzQ2hhdElkUmVmLmN1cnJlbnQgPSBjaGF0SWRcbiAgICBwcmV2aW91c05ld0NoYXRLZXlSZWYuY3VycmVudCA9IG5ld0NoYXRLZXlcbiAgfSwgW2FnZW50Py5pZCwgY2hhdElkLCBuZXdDaGF0S2V5LCBkaXNhYmxlZF0pXG5cbiAgLy8gQ2xlYXIgaW5wdXQgd2hlbiBzZXNzaW9uIGNoYW5nZXMgKHVzZXIgc3dpdGNoZXMgdG8gYSBkaWZmZXJlbnQgY2hhdClcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBoYW5kbGVTZXNzaW9uQ2hhbmdlID0gKCkgPT4ge1xuICAgICAgc2V0VmFsdWVUZXh0YXJlYSgnJylcbiAgICAgIHNldElzRGlzYWJsZWQodHJ1ZSlcbiAgICAgIGlmIChpbnB1dFJlZi5jdXJyZW50KSB7XG4gICAgICAgIGlucHV0UmVmLmN1cnJlbnQudmFsdWUgPSAnJ1xuICAgICAgfVxuICAgICAgaGFuZGxlUmVzaXplKClcbiAgICB9XG5cbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjaGF0LXNlc3Npb24tY2hhbmdlZCcsIGhhbmRsZVNlc3Npb25DaGFuZ2UpXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2hhdC1zZXNzaW9uLWNoYW5nZWQnLCBoYW5kbGVTZXNzaW9uQ2hhbmdlKVxuICAgIH1cbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhbmltYXRpb25GcmFtZUlkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGhhbmRsZVJlc2l6ZSgpXG4gICAgfSlcblxuICAgIHJldHVybiAoKSA9PiBjYW5jZWxBbmltYXRpb25GcmFtZShhbmltYXRpb25GcmFtZUlkKVxuICB9LCBbdmFsdWVUZXh0YXJlYV0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBoYXNUZXh0ID0gdmFsdWVUZXh0YXJlYS50cmltKCkubGVuZ3RoID4gMFxuICAgIGNvbnN0IGhhc0F0dGFjaG1lbnRzID0gYXR0YWNobWVudHMubGVuZ3RoID4gMFxuICAgIHNldElzRGlzYWJsZWQoIWhhc1RleHQgJiYgIWhhc0F0dGFjaG1lbnRzKVxuICB9LCBbYXR0YWNobWVudHMsIHZhbHVlVGV4dGFyZWFdKVxuXG4gIGNvbnN0IGhhbmRsZVNlbmRNZXNzYWdlID0gKCkgPT4ge1xuICAgIGlmIChpbnB1dFJlZi5jdXJyZW50KSB7XG4gICAgICBvblNlbmRNZXNzYWdlKGlucHV0UmVmLmN1cnJlbnQudmFsdWUsIGF0dGFjaG1lbnRzKVxuICAgICAgaW5wdXRSZWYuY3VycmVudC52YWx1ZSA9ICcnXG4gICAgICBzZXRWYWx1ZVRleHRhcmVhKCcnKVxuICAgICAgc2V0SXNEaXNhYmxlZCh0cnVlKVxuICAgICAgaGFuZGxlUmVzaXplKClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBpZiAoYXR0YWNobWVudHMubGVuZ3RoKSB7XG4gICAgICBvblNlbmRNZXNzYWdlKCcnLCBhdHRhY2htZW50cylcbiAgICAgIHNldFZhbHVlVGV4dGFyZWEoJycpXG4gICAgICBzZXRJc0Rpc2FibGVkKHRydWUpXG4gICAgfVxuICB9XG5cbiAgY29uc3QgaGFuZGxlS2V5RG93biA9IChlOiBLZXlib2FyZEV2ZW50PEhUTUxUZXh0QXJlYUVsZW1lbnQ+KSA9PiB7XG4gICAgaWYgKGUua2V5ID09PSAnRW50ZXInICYmICFlLnNoaWZ0S2V5KSB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICAgIGlmICghaXNEaXNhYmxlZCAmJiAhZGlzYWJsZWQpIHtcbiAgICAgICAgaGFuZGxlU2VuZE1lc3NhZ2UoKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChlOiBDaGFuZ2VFdmVudDxIVE1MVGV4dEFyZWFFbGVtZW50PikgPT4ge1xuICAgIGNvbnN0IGhhc1RleHQgPSBlLnRhcmdldC52YWx1ZS50cmltKCkubGVuZ3RoID4gMFxuICAgIGNvbnN0IGhhc0F0dGFjaG1lbnRzID0gYXR0YWNobWVudHMubGVuZ3RoID4gMFxuICAgIHNldElzRGlzYWJsZWQoIWhhc1RleHQgJiYgIWhhc0F0dGFjaG1lbnRzKVxuICAgIHNldFZhbHVlVGV4dGFyZWEoZS50YXJnZXQudmFsdWUpXG4gICAgb25DaGFuZ2U/LigpXG4gIH1cblxuICBjb25zdCBoYW5kbGVQYXN0ZSA9ICgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGhhbmRsZVJlc2l6ZSgpXG4gICAgICBjb25zdCBjdXJyZW50VmFsdWUgPSBpbnB1dFJlZi5jdXJyZW50Py52YWx1ZSA/PyAnJ1xuICAgICAgY29uc3QgaGFzVGV4dCA9IGN1cnJlbnRWYWx1ZS50cmltKCkubGVuZ3RoID4gMFxuICAgICAgY29uc3QgaGFzQXR0YWNobWVudHMgPSBhdHRhY2htZW50cy5sZW5ndGggPiAwXG4gICAgICBzZXRWYWx1ZVRleHRhcmVhKGN1cnJlbnRWYWx1ZSlcbiAgICAgIHNldElzRGlzYWJsZWQoIWhhc1RleHQgJiYgIWhhc0F0dGFjaG1lbnRzKVxuICAgIH0sIDEwKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlRmlsZVNlbGVjdCA9IChlOiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgIGNvbnN0IGZpbGVzID0gZS50YXJnZXQuZmlsZXNcbiAgICBpZiAoIWZpbGVzKSByZXR1cm5cblxuICAgIGNvbnN0IGV4Y2VlZGVkRmlsZXM6IHN0cmluZ1tdID0gW11cbiAgICBjb25zdCBleGNsdWRlZEZpbGVzOiBzdHJpbmdbXSA9IFtdXG4gICAgY29uc3QgZmlsZVNpemVzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+ID0ge31cbiAgICBsZXQgZmlsZXNJbnNlcnRlZCA9IGF0dGFjaG1lbnRzLmxlbmd0aFxuXG4gICAgLy8gRGVmaW5pciBsw61taXRlcyBwYXJhIGRpZmVyZW50ZXMgdGlwb3MgZGUgYXJjaGl2b3NcbiAgICBjb25zdCBpc05ld0Zvcm1hdCA9IChleHRlbnNpb246IHN0cmluZykgPT4gWycucG5nJywgJy5qcGcnLCAnLmpwZWcnLCAnLnBkZiddLmluY2x1ZGVzKGV4dGVuc2lvbilcbiAgICBjb25zdCBpc09sZEZvcm1hdCA9IChleHRlbnNpb246IHN0cmluZykgPT5cbiAgICAgIFsnLnR4dCcsICcubWQnLCAnLmNzdicsICcuZG9jJywgJy5kb2N4JywgJy54bHN4JywgJy54bHMnXS5pbmNsdWRlcyhleHRlbnNpb24pXG4gICAgY29uc3QgaXNBdWRpb0Zvcm1hdCA9IChleHRlbnNpb246IHN0cmluZykgPT5cbiAgICAgIFsnLmZsYWMnLCAnLm00YScsICcubXAzJywgJy5tcDQnLCAnLm9nYScsICcub2dnJywgJy53YXYnLCAnLndlYm0nXS5pbmNsdWRlcyhleHRlbnNpb24pXG5cbiAgICBBcnJheS5mcm9tKGZpbGVzKS5mb3JFYWNoKGZpbGUgPT4ge1xuICAgICAgbGV0IGV4Y2x1ZGVkRmlsZSA9IGZhbHNlXG4gICAgICBjb25zdCBmaWxlTmFtZVBhcnRzID0gZmlsZS5uYW1lLnNwbGl0KCcuJylcbiAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBmaWxlTmFtZVBhcnRzLmxlbmd0aCA+IDEgPyBgLiR7ZmlsZU5hbWVQYXJ0cy5wb3AoKT8udG9Mb3dlckNhc2UoKX1gIDogJydcblxuICAgICAgaWYgKCFhbGxvd2VkRmlsZVR5cGVzPy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgZmlsZVNpemVzW2ZpbGUubmFtZV0gPSBmaWxlLnNpemVcblxuICAgICAgLy8gVmFsaWRhY2lvbmVzIGVzcGVjw61maWNhcyBzZWfDum4gZWwgdGlwbyBkZSBhcmNoaXZvXG4gICAgICBpZiAoaXNOZXdGb3JtYXQoZmlsZUV4dGVuc2lvbikpIHtcbiAgICAgICAgLy8gUGFyYSBudWV2b3MgZm9ybWF0b3M6IGhhc3RhIDQuOTlNQiBwb3IgYXJjaGl2bywgaGFzdGEgTUFYX0NIQVRfSU5QVVRfQVRUQUNITUVOVFMgYXJjaGl2b3NcbiAgICAgICAgaWYgKGZpbGUuc2l6ZSA+IE1BWF9GSUxFX1NJWkVfTUJfTUFJQV9WSVNJT04gKiAxMDI0ICogMTAyNCkge1xuICAgICAgICAgIGV4Y2VlZGVkRmlsZXMucHVzaChmaWxlLm5hbWUpXG4gICAgICAgICAgZXhjbHVkZWRGaWxlID0gdHJ1ZVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGZpbGVzSW5zZXJ0ZWQgKyAxID4gTUFYX0NIQVRfSU5QVVRfQVRUQUNITUVOVFMpIHtcbiAgICAgICAgICBleGNsdWRlZEZpbGVzLnB1c2goZmlsZS5uYW1lKVxuICAgICAgICAgIGV4Y2x1ZGVkRmlsZSA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChpc09sZEZvcm1hdChmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgICAvLyBQYXJhIGZvcm1hdG9zIGFudGVyaW9yZXM6IGhhc3RhIDFNQiBwb3IgYXJjaGl2bywgaGFzdGEgTUFYX0NIQVRfSU5QVVRfQVRUQUNITUVOVFMgYXJjaGl2b3NcbiAgICAgICAgaWYgKGZpbGUuc2l6ZSA+IE1BWF9GSUxFX1NJWkVfTUJfT0xEICogMTAyNCAqIDEwMjQpIHtcbiAgICAgICAgICBleGNlZWRlZEZpbGVzLnB1c2goZmlsZS5uYW1lKVxuICAgICAgICAgIGV4Y2x1ZGVkRmlsZSA9IHRydWVcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmaWxlc0luc2VydGVkICsgMSA+IE1BWF9DSEFUX0lOUFVUX0FUVEFDSE1FTlRTKSB7XG4gICAgICAgICAgZXhjbHVkZWRGaWxlcy5wdXNoKGZpbGUubmFtZSlcbiAgICAgICAgICBleGNsdWRlZEZpbGUgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoaXNBdWRpb0Zvcm1hdChmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgICAvLyBQYXJhIGFyY2hpdm9zIGRlIGF1ZGlvOiBoYXN0YSAxME1CIHBvciBhcmNoaXZvLCBoYXN0YSBNQVhfQ0hBVF9JTlBVVF9BVFRBQ0hNRU5UUyBhcmNoaXZvc1xuICAgICAgICBpZiAoZmlsZS5zaXplID4gTUFYX0ZJTEVfU0laRV9NQl9BVURJTyAqIDEwMjQgKiAxMDI0KSB7XG4gICAgICAgICAgZXhjZWVkZWRGaWxlcy5wdXNoKGZpbGUubmFtZSlcbiAgICAgICAgICBleGNsdWRlZEZpbGUgPSB0cnVlXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZmlsZXNJbnNlcnRlZCArIDEgPiBNQVhfQ0hBVF9JTlBVVF9BVFRBQ0hNRU5UUykge1xuICAgICAgICAgIGV4Y2x1ZGVkRmlsZXMucHVzaChmaWxlLm5hbWUpXG4gICAgICAgICAgZXhjbHVkZWRGaWxlID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICghZXhjbHVkZWRGaWxlKSB7XG4gICAgICAgIGZpbGVzSW5zZXJ0ZWQgKz0gMVxuICAgICAgICBjb25zdCB0eXBlRmlsZSA9IGZpbGUudHlwZSB8fCBmaWxlVHlwZXNbZmlsZUV4dGVuc2lvbl1cbiAgICAgICAgY29uc3QgcGFyc2VkRmlsZSA9IG5ldyBGaWxlKFtmaWxlXSwgZmlsZS5uYW1lLCB7IHR5cGU6IHR5cGVGaWxlIH0pXG4gICAgICAgIG9uRmlsZUF0dGFjaD8uKHBhcnNlZEZpbGUpXG4gICAgICB9XG4gICAgfSlcblxuICAgIHNldElzRGlzYWJsZWQoZmFsc2UpXG4gICAgaWYgKGV4Y2x1ZGVkRmlsZXMubGVuZ3RoIHx8IGV4Y2VlZGVkRmlsZXMubGVuZ3RoKSB7XG4gICAgICBzZXRNb2RhbFByb3BzKHsgaXNPcGVuOiB0cnVlLCBleGNsdWRlZEZpbGVzLCBleGNlZWRlZEZpbGVzLCBmaWxlU2l6ZXMgfSlcbiAgICB9XG5cbiAgICBpZiAoZmlsZUlucHV0UmVmLmN1cnJlbnQpIHtcbiAgICAgIGZpbGVJbnB1dFJlZi5jdXJyZW50LnZhbHVlID0gJydcbiAgICB9XG4gIH1cblxuICBjb25zdCBoYW5kbGVEZWxldGVBdHRhY2htZW50ID0gKGZpbGVJZDogc3RyaW5nKSA9PiB7XG4gICAgb25EZWxldGVBdHRhY2htZW50Py4oZmlsZUlkKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlQmx1ciA9ICgpID0+IHtcbiAgICBjb25zdCBoYXNUZXh0ID0gdmFsdWVUZXh0YXJlYS50cmltKCkubGVuZ3RoID4gMFxuICAgIGNvbnN0IGhhc0F0dGFjaG1lbnRzID0gYXR0YWNobWVudHMubGVuZ3RoID4gMFxuICAgIHNldElzRGlzYWJsZWQoIWhhc1RleHQgJiYgIWhhc0F0dGFjaG1lbnRzKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlV3JhcHBlckZvY3VzID0gKCkgPT4gc2V0SXNGb2N1c2VkKHRydWUpXG4gIGNvbnN0IGhhbmRsZVdyYXBwZXJCbHVyID0gKCkgPT4ge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCF3cmFwcGVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpKSB7XG4gICAgICAgIHNldElzRm9jdXNlZChmYWxzZSlcbiAgICAgIH1cbiAgICB9LCAwKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlU3RvcEdlbmVyYXRpb24gPSAoKSA9PiB7XG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFN0b3BSZXNwb25zZSlcbiAgICBvblN0b3BHZW5lcmF0aW9uPy4oKVxuICB9XG5cbiAgY29uc3QgcGx1c0ljb25Db2xvciA9IGlzRm9jdXNlZCA/IGNvbG9ycy50ZXh0LnNlY29uZGFyeSA6IGNvbG9ycy50ZXh0Lm1lZGl1bUdyYXlcbiAgY29uc3QgcGx1c01lbnVJY29uQ29sb3IgPSBNQUlBX0NIQVRfSU5QVVRfVUkubWVudUljb25cbiAgY29uc3QgcGx1c01lbnVTZWxlY3RlZENvbG9yID0gTUFJQV9DSEFUX0lOUFVUX1VJLnRleHRCcmFuZEJvbGRcblxuICBsZXQgYWN0aXZlVG9vbENoaXBMZWFkaW5nSWNvbjogUmVhY3ROb2RlXG4gIGlmIChhY3RpdmVUb29sQ2hpcEhvdmVyZWQpIHtcbiAgICBhY3RpdmVUb29sQ2hpcExlYWRpbmdJY29uID0gPENyb3NzIGNvbG9yPXtNQUlBX0NIQVRfSU5QVVRfVUkuY2hpcENsb3NlSWNvbn0gd2lkdGg9ezE4fSBoZWlnaHQ9ezE4fSAvPlxuICB9IGVsc2UgaWYgKGlzV2ViU2VhcmNoQWN0aXZlKSB7XG4gICAgYWN0aXZlVG9vbENoaXBMZWFkaW5nSWNvbiA9IDxHbG9iZSBjb2xvcj17cGx1c01lbnVJY29uQ29sb3J9IHdpZHRoPXsxOH0gaGVpZ2h0PXsxOH0gLz5cbiAgfSBlbHNlIHtcbiAgICBhY3RpdmVUb29sQ2hpcExlYWRpbmdJY29uID0gPFRlbGVzY29wZUljb24gY29sb3I9e3BsdXNNZW51SWNvbkNvbG9yfSB3aWR0aD17MTh9IGhlaWdodD17MTh9IC8+XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U3R5bGVkTUFJQUlucHV0V3JhcHBlclxuICAgICAgICByZWY9e3dyYXBwZXJSZWZ9XG4gICAgICAgIGRpc2FibGVkPXtmYWxzZX1cbiAgICAgICAgYWxpZ25CdXR0b25zPXthbGlnbkJ1dHRvbnN9XG4gICAgICAgIGhhc0F0dGFjaG1lbnRzPXshIWF0dGFjaG1lbnRzLmxlbmd0aH1cbiAgICAgICAgb25Gb2N1cz17aGFuZGxlV3JhcHBlckZvY3VzfVxuICAgICAgICBvbkJsdXI9e2hhbmRsZVdyYXBwZXJCbHVyfVxuICAgICAgPlxuICAgICAgICB7ISFhdHRhY2htZW50cy5sZW5ndGggJiYgKFxuICAgICAgICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBnYXA6ICcxMnB4JywgYWxpZ25JdGVtczogJ2NlbnRlcicgfX0+XG4gICAgICAgICAgICB7YXR0YWNobWVudHMubWFwKChhdHRhY2htZW50LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBmaWxlTmFtZVBhcnRzID0gYXR0YWNobWVudC5uYW1lLnNwbGl0KCcuJylcbiAgICAgICAgICAgICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGZpbGVOYW1lUGFydHMubGVuZ3RoID4gMSA/IGAuJHtmaWxlTmFtZVBhcnRzLnBvcCgpPy50b0xvd2VyQ2FzZSgpfWAgOiAnJ1xuICAgICAgICAgICAgICBjb25zdCBpc0ltYWdlQnlFeHRlbnNpb24gPSBbJy5wbmcnLCAnLmpwZycsICcuanBlZyddLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pXG4gICAgICAgICAgICAgIGNvbnN0IGlzSW1hZ2VCeU1pbWUgPSBhdHRhY2htZW50LnR5cGU/LnN0YXJ0c1dpdGgoJ2ltYWdlLycpXG4gICAgICAgICAgICAgIGNvbnN0IGlzSW1hZ2UgPSBpc0ltYWdlQnlNaW1lICYmIGlzSW1hZ2VCeUV4dGVuc2lvblxuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXthdHRhY2htZW50Lm5hbWV9IGtleT17YCR7aW5kZXh9LSR7YXR0YWNobWVudC5uYW1lfWB9PlxuICAgICAgICAgICAgICAgICAgPFNDTUlBdHRhY2htZW50IGlzSW1hZ2U9e2lzSW1hZ2V9PlxuICAgICAgICAgICAgICAgICAgICB7YXR0YWNobWVudC5pY29ufVxuICAgICAgICAgICAgICAgICAgICA8U0NNSUF0dGFjaG1lbnREZWxldGVJY29uIG9uQ2xpY2s9eygpID0+IGhhbmRsZURlbGV0ZUF0dGFjaG1lbnQoYXR0YWNobWVudC5pZCl9PlxuICAgICAgICAgICAgICAgICAgICAgIDxUcmFzaCBjb2xvcj1cInJnYmEoMTkxLCAxOTEsIDE5MSwgMSlcIiB3aWR0aD17MTh9IGhlaWdodD17MTh9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU0NNSUF0dGFjaG1lbnREZWxldGVJY29uPlxuICAgICAgICAgICAgICAgICAgPC9TQ01JQXR0YWNobWVudD5cbiAgICAgICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH0pfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgICA8U3R5bGVkTUFJQUlucHV0XG4gICAgICAgICAgcmVmPXtpbnB1dFJlZn1cbiAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICBvbktleURvd249e2hhbmRsZUtleURvd259XG4gICAgICAgICAgb25QYXN0ZT17aGFuZGxlUGFzdGV9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgIGFsaWduQnV0dG9ucz17YWxpZ25CdXR0b25zfVxuICAgICAgICAgIG9uQmx1cj17aGFuZGxlQmx1cn1cbiAgICAgICAgLz5cbiAgICAgICAgPFN0eWxlZE1BSUFJbnB1dEJ1dHRvbnM+XG4gICAgICAgICAgPFBsdXNNZW51VG9vbHNSb3c+XG4gICAgICAgICAgICA8UGx1c1RvZ2dsZUJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgJG1lbnVPcGVuPXtwbHVzTWVudU9wZW59XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVBsdXNCdXR0b25DbGlja31cbiAgICAgICAgICAgICAgYXJpYS1sYWJlbD17dCgnY2hhdC5vcGVuUGx1c01lbnVBcmlhJyl9XG4gICAgICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCJcbiAgICAgICAgICAgICAgYXJpYS1leHBhbmRlZD17cGx1c01lbnVPcGVufVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8UGx1cyBjb2xvcj17cGx1c0ljb25Db2xvcn0gd2lkdGg9ezIwfSBoZWlnaHQ9ezIwfSAvPlxuICAgICAgICAgICAgPC9QbHVzVG9nZ2xlQnV0dG9uPlxuICAgICAgICAgICAgPFBvcG92ZXJcbiAgICAgICAgICAgICAgb3Blbj17cGx1c01lbnVPcGVufVxuICAgICAgICAgICAgICBhbmNob3JFbD17cGx1c01lbnVBbmNob3J9XG4gICAgICAgICAgICAgIG9uQ2xvc2U9e2Nsb3NlUGx1c01lbnV9XG4gICAgICAgICAgICAgIGFuY2hvck9yaWdpbj17eyB2ZXJ0aWNhbDogJ3RvcCcsIGhvcml6b250YWw6ICdsZWZ0JyB9fVxuICAgICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW49e3sgdmVydGljYWw6ICdib3R0b20nLCBob3Jpem9udGFsOiAnbGVmdCcgfX1cbiAgICAgICAgICAgICAgc2xvdFByb3BzPXt7XG4gICAgICAgICAgICAgICAgcGFwZXI6IHtcbiAgICAgICAgICAgICAgICAgIGVsZXZhdGlvbjogMCxcbiAgICAgICAgICAgICAgICAgIHN4OiB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiAndmlzaWJsZScsXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXG4gICAgICAgICAgICAgICAgICAgIGJveFNoYWRvdzogJ25vbmUnLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICd0cmFuc3BhcmVudCcsXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpblRvcDogJy00cHgnLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8UGx1c01lbnVQYXBlcj5cbiAgICAgICAgICAgICAgICA8UGx1c01lbnVJbm5lckNvbHVtbj5cbiAgICAgICAgICAgICAgICAgIDxQbHVzTWVudUl0ZW1CdXR0b24gdHlwZT1cImJ1dHRvblwiIG9uQ2xpY2s9e2hhbmRsZVBsdXNNZW51QXR0YWNofT5cbiAgICAgICAgICAgICAgICAgICAgPEF0dGFjaCBjb2xvcj17cGx1c01lbnVJY29uQ29sb3J9IHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gLz5cbiAgICAgICAgICAgICAgICAgICAgPFBsdXNNZW51SXRlbUxhYmVsICRzZWxlY3RlZD17ZmFsc2V9Pnt0KCdjaGF0LnBsdXNNZW51QXR0YWNoJyl9PC9QbHVzTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICAgICAgICAgIDwvUGx1c01lbnVJdGVtQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgPFBsdXNNZW51RGl2aWRlciAvPlxuICAgICAgICAgICAgICAgICAgPFBsdXNNZW51SXRlbUJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz17aGFuZGxlUGx1c01lbnVXZWJTZWFyY2h9PlxuICAgICAgICAgICAgICAgICAgICA8R2xvYmVcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcj17aXNXZWJTZWFyY2hBY3RpdmUgPyBwbHVzTWVudVNlbGVjdGVkQ29sb3IgOiBwbHVzTWVudUljb25Db2xvcn1cbiAgICAgICAgICAgICAgICAgICAgICB3aWR0aD17MjB9XG4gICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PXsyMH1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPFBsdXNNZW51SXRlbUxhYmVsICRzZWxlY3RlZD17ISFpc1dlYlNlYXJjaEFjdGl2ZX0+e3QoJ2NoYXQuc2VhcmNoV2ViJyl9PC9QbHVzTWVudUl0ZW1MYWJlbD5cbiAgICAgICAgICAgICAgICAgICAge2lzV2ViU2VhcmNoQWN0aXZlID8gPENoZWNrIGNvbG9yPXtwbHVzTWVudVNlbGVjdGVkQ29sb3J9IHdpZHRoPXsxNn0gaGVpZ2h0PXsxNn0gLz4gOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9QbHVzTWVudUl0ZW1CdXR0b24+XG4gICAgICAgICAgICAgICAgPC9QbHVzTWVudUlubmVyQ29sdW1uPlxuICAgICAgICAgICAgICAgIDxQbHVzTWVudUl0ZW1CdXR0b24gdHlwZT1cImJ1dHRvblwiIG9uQ2xpY2s9e2hhbmRsZVBsdXNNZW51RGVlcFNlYXJjaH0+XG4gICAgICAgICAgICAgICAgICA8VGVsZXNjb3BlSWNvblxuICAgICAgICAgICAgICAgICAgICBjb2xvcj17aXNEZWVwU2VhcmNoQWN0aXZlID8gcGx1c01lbnVTZWxlY3RlZENvbG9yIDogcGx1c01lbnVJY29uQ29sb3J9XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoPXsyMH1cbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PXsyMH1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8UGx1c01lbnVJdGVtTGFiZWwgJHNlbGVjdGVkPXshIWlzRGVlcFNlYXJjaEFjdGl2ZX0+XG4gICAgICAgICAgICAgICAgICAgIHt0KCdjaGF0LnBsdXNNZW51RGVlcEludmVzdGlnYXRpb24nKX1cbiAgICAgICAgICAgICAgICAgIDwvUGx1c01lbnVJdGVtTGFiZWw+XG4gICAgICAgICAgICAgICAgICB7aXNEZWVwU2VhcmNoQWN0aXZlID8gPENoZWNrIGNvbG9yPXtwbHVzTWVudVNlbGVjdGVkQ29sb3J9IHdpZHRoPXsxNn0gaGVpZ2h0PXsxNn0gLz4gOiBudWxsfVxuICAgICAgICAgICAgICAgIDwvUGx1c01lbnVJdGVtQnV0dG9uPlxuICAgICAgICAgICAgICA8L1BsdXNNZW51UGFwZXI+XG4gICAgICAgICAgICA8L1BvcG92ZXI+XG4gICAgICAgICAgICB7KGlzV2ViU2VhcmNoQWN0aXZlIHx8IGlzRGVlcFNlYXJjaEFjdGl2ZSkgJiYgKFxuICAgICAgICAgICAgICA8QWN0aXZlVG9vbENoaXBSb290XG4gICAgICAgICAgICAgICAgJGhvdmVyZWQ9e2FjdGl2ZVRvb2xDaGlwSG92ZXJlZH1cbiAgICAgICAgICAgICAgICAkZXhpdGluZz17dG9vbENoaXBFeGl0aW5nfVxuICAgICAgICAgICAgICAgIG9uTW91c2VFbnRlcj17KCkgPT4gc2V0QWN0aXZlVG9vbENoaXBIb3ZlcmVkKHRydWUpfVxuICAgICAgICAgICAgICAgIG9uTW91c2VMZWF2ZT17KCkgPT4gc2V0QWN0aXZlVG9vbENoaXBIb3ZlcmVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxBY3RpdmVUb29sQ2hpcEljb25CdXR0b25cbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgJGNsb3NlU2hvd249e2FjdGl2ZVRvb2xDaGlwSG92ZXJlZH1cbiAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9e3QoJ2NoYXQucmVtb3ZlQWN0aXZlVG9vbEFyaWEnKX1cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgICAgIGJlZ2luVG9vbENoaXBFeGl0KClcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge2FjdGl2ZVRvb2xDaGlwTGVhZGluZ0ljb259XG4gICAgICAgICAgICAgICAgPC9BY3RpdmVUb29sQ2hpcEljb25CdXR0b24+XG4gICAgICAgICAgICAgICAgPEFjdGl2ZVRvb2xDaGlwTGFiZWw+XG4gICAgICAgICAgICAgICAgICB7aXNXZWJTZWFyY2hBY3RpdmUgPyB0KCdjaGF0LnNlYXJjaFdlYicpIDogdCgnY2hhdC5wbHVzTWVudURlZXBJbnZlc3RpZ2F0aW9uJyl9XG4gICAgICAgICAgICAgICAgPC9BY3RpdmVUb29sQ2hpcExhYmVsPlxuICAgICAgICAgICAgICA8L0FjdGl2ZVRvb2xDaGlwUm9vdD5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9QbHVzTWVudVRvb2xzUm93PlxuXG4gICAgICAgICAge2lzV3JpdGluZyA/IChcbiAgICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXt0KCdjaGF0LnN0b3AnKX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRNQUlBU3RvcEJ1dHRvbiBkaXNhYmxlZD17ZmFsc2V9IG9uQ2xpY2s9e2hhbmRsZVN0b3BHZW5lcmF0aW9ufSBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgICAgICAgICAgPFN0eWxlZE1BSUFTdG9wSWNvbiAvPlxuICAgICAgICAgICAgICA8L1N0eWxlZE1BSUFTdG9wQnV0dG9uPlxuICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17aXNTdHJlYW1pbmcgPyB0KCdjaGF0LnNlbmQnKSA6IHQoJ2NoYXQuc2VuZCcpfT5cbiAgICAgICAgICAgICAgPFN0eWxlZE1BSUFTZW5kQnV0dG9uXG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlU2VuZE1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2lzRGlzYWJsZWQgfHwgZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgaGFzVmFsdWVzPXshIXZhbHVlVGV4dGFyZWEubGVuZ3RofVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPFBhcGVyUGxhbmUgY29sb3I9XCIjQkZCRkJGXCIgd2lkdGg9ezE4fSBoZWlnaHQ9ezE4fSAvPlxuICAgICAgICAgICAgICA8L1N0eWxlZE1BSUFTZW5kQnV0dG9uPlxuICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvU3R5bGVkTUFJQUlucHV0QnV0dG9ucz5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgcmVmPXtmaWxlSW5wdXRSZWZ9XG4gICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgIG11bHRpcGxlXG4gICAgICAgICAgYWNjZXB0PVwiLnR4dCwubWQsLmNzdiwuZG9jLC5kb2N4LC5wbmcsLmpwZywuanBlZywucGRmLC54bHN4LC54bHMsLmZsYWMsLm00YSwubXAzLC5tcDQsLm9nYSwub2dnLC53YXYsLndlYm1cIlxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVGaWxlU2VsZWN0fVxuICAgICAgICAgIHN0eWxlPXt7IGRpc3BsYXk6ICdub25lJyB9fVxuICAgICAgICAvPlxuICAgICAgPC9TdHlsZWRNQUlBSW5wdXRXcmFwcGVyPlxuICAgICAge21vZGFsUHJvcHMuaXNPcGVuICYmIChcbiAgICAgICAgPE1vZGFsRmlsZUV4Y2VlZHNcbiAgICAgICAgICBvbkNsb3NlPXsoKSA9PiBzZXRNb2RhbFByb3BzKHsgaXNPcGVuOiBmYWxzZSwgZXhjbHVkZWRGaWxlczogW10sIGV4Y2VlZGVkRmlsZXM6IFtdLCBmaWxlU2l6ZXM6IHt9IH0pfVxuICAgICAgICAgIGV4Y2x1ZGVkRmlsZXM9e21vZGFsUHJvcHMuZXhjbHVkZWRGaWxlc31cbiAgICAgICAgICBleGNlZWRlZEZpbGVzPXttb2RhbFByb3BzLmV4Y2VlZGVkRmlsZXN9XG4gICAgICAgICAgZmlsZVNpemVzPXttb2RhbFByb3BzLmZpbGVTaXplc31cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC8+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBNERBLFNBQVMsRUFBRUMsTUFBTSxFQUFFQyxRQUFRLFFBQVEsT0FBTztBQUN0RyxTQUFTQyxPQUFPLFFBQVEsZUFBZTtBQUN2QyxTQUFTQyxVQUFVLFFBQVEsNkNBQTZDO0FBQ3hFLFNBQVNDLE1BQU0sUUFBUSx5Q0FBeUM7QUFDaEUsU0FBU0MsS0FBSyxRQUFRLHdDQUF3QztBQUM5RCxTQUFTQyxLQUFLLFFBQVEsd0NBQXdDO0FBQzlELFNBQVNDLElBQUksUUFBUSx1Q0FBdUM7QUFDNUQsU0FBU0MsS0FBSyxRQUFRLHdDQUF3QztBQUM5RCxTQUFTQyxLQUFLLFFBQVEsd0NBQXdDO0FBQzlELFNBQVNDLE9BQU8sUUFBUSw4Q0FBOEM7QUFDdEUsT0FBT0MsTUFBTSxNQUFNLG1DQUFtQztBQUV0RCxTQUNFQyx3QkFBd0IsRUFDeEJDLG1CQUFtQixFQUNuQkMsa0JBQWtCLEVBQ2xCQyxlQUFlLEVBQ2ZDLG1CQUFtQixFQUNuQkMsa0JBQWtCLEVBQ2xCQyxpQkFBaUIsRUFD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
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable @typescript-eslint/indent */
2
2
  import styled, { css, keyframes } from 'styled-components';
3
3
  import colors from '@projectcor/theme/lib/base/colors';
4
- import { BLUE_IA_COLORS } from '../../../styles/config';
4
+ import { BLUE_IA_COLORS, MAIA_CHAT_INPUT_UI } from '../../../styles/config';
5
5
  import { scrollableStyles } from '../../../styles/shared/scrollable';
6
6
  import { ClearButton } from '../ClearButton';
7
7
  export var flow = keyframes(["0%{background-position:0% 0%,0% 50%;}50%{background-position:0% 0%,100% 50%;}100%{background-position:0% 0%,0% 50%;}"]);
@@ -64,14 +64,14 @@ export var PlusMenuToolsRow = styled.div.withConfig({
64
64
  export var PlusToggleButton = styled.button.withConfig({
65
65
  displayName: "styles__PlusToggleButton",
66
66
  componentId: "sc-cs6u9w-8"
67
- })(["display:flex;width:32px;height:32px;box-sizing:border-box;padding:0;justify-content:center;align-items:center;border:none;border-radius:8px;background:", ";cursor:pointer;flex-shrink:0;&:hover{background:#f9f9f9;}&:focus-visible{outline:2px solid ", ";outline-offset:2px;}"], function (_ref8) {
67
+ })(["display:flex;width:32px;height:32px;box-sizing:border-box;padding:0;justify-content:center;align-items:center;border:none;border-radius:8px;background:", ";cursor:pointer;flex-shrink:0;&:hover{background:", ";}&:focus-visible{outline:2px solid ", ";outline-offset:2px;}"], function (_ref8) {
68
68
  var $menuOpen = _ref8.$menuOpen;
69
- return $menuOpen ? '#f9f9f9' : '#fff';
70
- }, BLUE_IA_COLORS[500]);
69
+ return $menuOpen ? colors.background.secondary : colors.white.main;
70
+ }, colors.background.secondary, BLUE_IA_COLORS[500]);
71
71
  export var PlusMenuPaper = styled.div.withConfig({
72
72
  displayName: "styles__PlusMenuPaper",
73
73
  componentId: "sc-cs6u9w-9"
74
- })(["display:flex;flex-direction:column;align-items:stretch;width:209px;box-sizing:border-box;padding:12px 8px;border-radius:4px;border:1px solid #e0e0e0;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,0.08),0 1px 4px rgba(0,0,0,0.04);"]);
74
+ })(["display:flex;flex-direction:column;align-items:stretch;width:209px;box-sizing:border-box;padding:12px 8px;border-radius:4px;border:1px solid ", ";background:", ";box-shadow:0 1px 4px rgba(0,0,0,0.08),0 1px 4px rgba(0,0,0,0.04);"], colors.colors.gray.light, colors.white.main);
75
75
  export var PlusMenuInnerColumn = styled.div.withConfig({
76
76
  displayName: "styles__PlusMenuInnerColumn",
77
77
  componentId: "sc-cs6u9w-10"
@@ -79,17 +79,17 @@ export var PlusMenuInnerColumn = styled.div.withConfig({
79
79
  export var PlusMenuDivider = styled.div.withConfig({
80
80
  displayName: "styles__PlusMenuDivider",
81
81
  componentId: "sc-cs6u9w-11"
82
- })(["width:170px;height:1px;background:#d9d9d9;flex-shrink:0;"]);
82
+ })(["width:170px;height:1px;background:", ";flex-shrink:0;"], colors.colors.gray.light);
83
83
  export var PlusMenuItemButton = styled.button.withConfig({
84
84
  displayName: "styles__PlusMenuItemButton",
85
85
  componentId: "sc-cs6u9w-12"
86
- })(["display:flex;width:100%;padding:8px;align-items:center;gap:8px;border:none;background:transparent;border-radius:4px;cursor:pointer;font-family:inherit;text-align:left;box-sizing:border-box;&:hover{background:#f9f9f9;}&:focus-visible{outline:2px solid ", ";outline-offset:-2px;}"], BLUE_IA_COLORS[500]);
86
+ })(["display:flex;width:100%;padding:8px;align-items:center;gap:8px;border:none;background:transparent;border-radius:4px;cursor:pointer;font-family:inherit;text-align:left;box-sizing:border-box;&:hover{background:", ";}&:focus-visible{outline:2px solid ", ";outline-offset:-2px;}"], colors.background.secondary, BLUE_IA_COLORS[500]);
87
87
  export var PlusMenuItemLabel = styled.span.withConfig({
88
88
  displayName: "styles__PlusMenuItemLabel",
89
89
  componentId: "sc-cs6u9w-13"
90
90
  })(["flex:1;min-width:0;color:", ";font-size:14px;font-weight:400;line-height:20px;"], function (_ref9) {
91
91
  var $selected = _ref9.$selected;
92
- return $selected ? '#00578c' : '#202020';
92
+ return $selected ? MAIA_CHAT_INPUT_UI.textBrandBold : colors.text.primary;
93
93
  });
94
94
  export var ActiveToolChipRoot = styled.div.withConfig({
95
95
  displayName: "styles__ActiveToolChipRoot",
@@ -99,7 +99,7 @@ export var ActiveToolChipRoot = styled.div.withConfig({
99
99
  return $hovered ? '16px' : '0';
100
100
  }, function (_ref1) {
101
101
  var $hovered = _ref1.$hovered;
102
- return $hovered ? '#f2f2f2' : 'transparent';
102
+ return $hovered ? MAIA_CHAT_INPUT_UI.chipSurfaceHover : 'transparent';
103
103
  }, function (_ref10) {
104
104
  var $hovered = _ref10.$hovered;
105
105
  return $hovered ? '0 1px 3px rgba(0, 0, 0, 0.07)' : 'none';
@@ -117,7 +117,7 @@ export var ActiveToolChipIconButton = styled.button.withConfig({
117
117
  export var ActiveToolChipLabel = styled.span.withConfig({
118
118
  displayName: "styles__ActiveToolChipLabel",
119
119
  componentId: "sc-cs6u9w-16"
120
- })(["color:#202020;font-size:12px;line-height:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default;user-select:none;"]);
120
+ })(["color:", ";font-size:12px;line-height:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default;user-select:none;"], colors.text.primary);
121
121
  export var StyledMAIAStopIcon = styled.div.withConfig({
122
122
  displayName: "styles__StyledMAIAStopIcon",
123
123
  componentId: "sc-cs6u9w-17"
@@ -126,4 +126,4 @@ export var StyledMAIAStopButton = styled.button.withConfig({
126
126
  displayName: "styles__StyledMAIAStopButton",
127
127
  componentId: "sc-cs6u9w-18"
128
128
  })(["background:none;border:none;padding:0;font:inherit;background-color:#f2f2f2 !important;height:30px;width:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;&:hover{background-color:", " !important;", "{background-color:", " !important;}}&:disabled{cursor:not-allowed;background-color:#f2f2f2 !important;opacity:0.6;}"], BLUE_IA_COLORS[50], StyledMAIAStopIcon, BLUE_IA_COLORS[500]);
129
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJrZXlmcmFtZXMiLCJjb2xvcnMiLCJCTFVFX0lBX0NPTE9SUyIsInNjcm9sbGFibGVTdHlsZXMiLCJDbGVhckJ1dHRvbiIsImZsb3ciLCJhY3RpdmVUb29sQ2hpcENsb3NlSWNvbkluIiwiYWN0aXZlVG9vbENoaXBPdXQiLCJjdXN0b21JbnB1dFN0eWxlcyIsIlN0eWxlZE1BSUFJbnB1dFdyYXBwZXIiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsInRleHQiLCJkaXNhYmxlZCIsIl9yZWYiLCJfcmVmMiIsImFsaWduQnV0dG9ucyIsIl9yZWYzIiwiaGFzQXR0YWNobWVudHMiLCJTdHlsZWRNQUlBSW5wdXRCdXR0b25zIiwiU3R5bGVkTUFJQUlucHV0IiwidGV4dGFyZWEiLCJzZWNvbmRhcnkiLCJTdHlsZWRNQUlBU2VuZEJ1dHRvbiIsIl9yZWY0IiwiaGFzVmFsdWVzIiwiY29uY2F0IiwiX3JlZjUiLCJfcmVmNiIsIlNDTUlXcmFwcGVyQXR0YWNobWVudHMiLCJTQ01JQXR0YWNobWVudERlbGV0ZUljb24iLCJTQ01JQXR0YWNobWVudCIsIl9yZWY3IiwiaXNJbWFnZSIsIlBsdXNNZW51VG9vbHNSb3ciLCJQbHVzVG9nZ2xlQnV0dG9uIiwiYnV0dG9uIiwiX3JlZjgiLCIkbWVudU9wZW4iLCJQbHVzTWVudVBhcGVyIiwiUGx1c01lbnVJbm5lckNvbHVtbiIsIlBsdXNNZW51RGl2aWRlciIsIlBsdXNNZW51SXRlbUJ1dHRvbiIsIlBsdXNNZW51SXRlbUxhYmVsIiwic3BhbiIsIl9yZWY5IiwiJHNlbGVjdGVkIiwiQWN0aXZlVG9vbENoaXBSb290IiwiX3JlZjAiLCIkaG92ZXJlZCIsIl9yZWYxIiwiX3JlZjEwIiwiX3JlZjExIiwiJGV4aXRpbmciLCJBY3RpdmVUb29sQ2hpcEljb25CdXR0b24iLCJfcmVmMTIiLCIkY2xvc2VTaG93biIsIkFjdGl2ZVRvb2xDaGlwTGFiZWwiLCJTdHlsZWRNQUlBU3RvcEljb24iLCJTdHlsZWRNQUlBU3RvcEJ1dHRvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL01BSUFJbnB1dC9zdHlsZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2luZGVudCAqL1xuaW1wb3J0IHN0eWxlZCwgeyBjc3MsIGtleWZyYW1lcyB9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuaW1wb3J0IGNvbG9ycyBmcm9tICdAcHJvamVjdGNvci90aGVtZS9saWIvYmFzZS9jb2xvcnMnXG5pbXBvcnQgeyBCTFVFX0lBX0NPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb25maWcnXG5pbXBvcnQgeyBzY3JvbGxhYmxlU3R5bGVzIH0gZnJvbSAnLi4vLi4vLi4vc3R5bGVzL3NoYXJlZC9zY3JvbGxhYmxlJ1xuaW1wb3J0IHsgQ2xlYXJCdXR0b24gfSBmcm9tICcuLi9DbGVhckJ1dHRvbidcblxuZXhwb3J0IGNvbnN0IGZsb3cgPSBrZXlmcmFtZXNgXG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgMCUgMCUsXG4gICAgICAwJSA1MCU7XG4gIH1cbiAgNTAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgMCUgMCUsXG4gICAgICAxMDAlIDUwJTtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgMCUgMCUsXG4gICAgICAwJSA1MCU7XG4gIH1cbmBcblxuY29uc3QgYWN0aXZlVG9vbENoaXBDbG9zZUljb25JbiA9IGtleWZyYW1lc2BcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMC41NTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODIpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbmBcblxuY29uc3QgYWN0aXZlVG9vbENoaXBPdXQgPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVZKDApO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45MikgdHJhbnNsYXRlWSgzcHgpO1xuICB9XG5gXG5cbmNvbnN0IGN1c3RvbUlucHV0U3R5bGVzID0gY3NzYFxuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOlxuICAgIGxpbmVhci1ncmFkaWVudCh3aGl0ZSwgd2hpdGUpIHBhZGRpbmctYm94LFxuICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzRkMzU2OSAwJSwgIzg3NDBiZiA1OS42MiUsICMyZDc3YmQgMTAwJSkgYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTpcbiAgICAxMDAlIDEwMCUsXG4gICAgMjAwJSAxMDAlO1xuICBhbmltYXRpb246ICR7Zmxvd30gM3MgZWFzZSBpbmZpbml0ZTtcbiAgYm94LXNoYWRvdzpcbiAgICAzcHggNHB4IDE0cHggMCByZ2JhKDEzNSwgNjQsIDE5MSwgMC4xNSksXG4gICAgLTNweCAtNHB4IDE0cHggMCByZ2JhKDQ1LCAxMTksIDE4OSwgMC4xNSk7XG5gXG5cbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBSW5wdXRXcmFwcGVyID0gc3R5bGVkLmRpdjx7XG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBhbGlnbkJ1dHRvbnM/OiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnXG4gIGhhc0F0dGFjaG1lbnRzOiBib29sZWFuXG59PmBcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHtjb2xvcnMudGV4dC5kaXNhYmxlZH07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG4gIHBhZGRpbmc6IDEycHg7XG4gIGN1cnNvcjogJHsoeyBkaXNhYmxlZCB9KSA9PiAoZGlzYWJsZWQgPyAnbm90LWFsbG93ZWQnIDogJ2F1dG8nKX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi1oZWlnaHQ6IDg2cHg7XG4gIGdhcDogJHsoeyBhbGlnbkJ1dHRvbnMgfSkgPT4gKGFsaWduQnV0dG9ucyA9PT0gJ3ZlcnRpY2FsJyA/ICc4cHgnIDogJzAnKX07XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgJjpmb2N1cy13aXRoaW4ge1xuICAgICR7Y3VzdG9tSW5wdXRTdHlsZXN9XG4gIH1cblxuICAkeyh7IGhhc0F0dGFjaG1lbnRzIH0pID0+XG4gICAgaGFzQXR0YWNobWVudHMgJiZcbiAgICBjc3NgXG4gICAgICAke2N1c3RvbUlucHV0U3R5bGVzfVxuICAgIGB9XG5gXG5cbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBSW5wdXRCdXR0b25zID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmBcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1BSUFJbnB1dCA9IHN0eWxlZC50ZXh0YXJlYTx7XG4gIGFsaWduQnV0dG9ucz86ICd2ZXJ0aWNhbCcgfCAnaG9yaXpvbnRhbCdcbn0+YFxuICAke3Njcm9sbGFibGVTdHlsZXN9XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHJlc2l6ZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBtaW4taGVpZ2h0OiAyMi4xcHg7XG4gIG1heC1oZWlnaHQ6IDEyMi4xcHg7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICR7Y29sb3JzLnRleHQuc2Vjb25kYXJ5fTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU3R5bGVkTUFJQVNlbmRCdXR0b24gPSBzdHlsZWQoQ2xlYXJCdXR0b24pPHsgaGFzVmFsdWVzPzogYm9vbGVhbiB9PmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyBoYXNWYWx1ZXMgfSkgPT4gKGhhc1ZhbHVlcyA/IGAke0JMVUVfSUFfQ09MT1JTWzUwMF19YCA6ICcjZjJmMmYyJyl9O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblxuICBzdmcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gICAgJHsoeyBoYXNWYWx1ZXMgfSkgPT5cbiAgICAgIGhhc1ZhbHVlcyAmJlxuICAgICAgY3NzYFxuICAgICAgICBnICoge1xuICAgICAgICAgIGZpbGw6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIGB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke0JMVUVfSUFfQ09MT1JTWzcwMF19ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHN2ZyB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICAgZyAqIHtcbiAgICAgICAgZmlsbDogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMiAhaW1wb3J0YW50O1xuXG4gICAgJHsoeyBoYXNWYWx1ZXMgfSkgPT5cbiAgICAgICFoYXNWYWx1ZXMgJiZcbiAgICAgIGNzc2BcbiAgICAgICAgc3ZnICoge1xuICAgICAgICAgIGZpbGw6ICR7Y29sb3JzLnRleHQuZGlzYWJsZWR9ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIGB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JV3JhcHBlckF0dGFjaG1lbnRzID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuYFxuZXhwb3J0IGNvbnN0IFNDTUlBdHRhY2htZW50RGVsZXRlSWNvbiA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICAgIHN2ZyAqOm5vdCgubm8tZmlsbCkge1xuICAgICAgZmlsbDogIzY2NjY2NiAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NNSUF0dGFjaG1lbnQgPSBzdHlsZWQuZGl2PHsgaXNJbWFnZT86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE5MSwgMTkxLCAxOTEsIDEpO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxM3B4O1xuICAkeyh7IGlzSW1hZ2UgfSkgPT5cbiAgICBpc0ltYWdlICYmXG4gICAgY3NzYFxuICAgICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG4gICAgYH1cblxuICAmOmhvdmVyIHtcbiAgICAke1NDTUlBdHRhY2htZW50RGVsZXRlSWNvbn0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFBsdXNNZW51VG9vbHNSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbmBcblxuZXhwb3J0IGNvbnN0IFBsdXNUb2dnbGVCdXR0b24gPSBzdHlsZWQuYnV0dG9uPHsgJG1lbnVPcGVuOiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJhY2tncm91bmQ6ICR7KHsgJG1lbnVPcGVuIH0pID0+ICgkbWVudU9wZW4gPyAnI2Y5ZjlmOScgOiAnI2ZmZicpfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbGV4LXNocmluazogMDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBQbHVzTWVudVBhcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAyMDlweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMTJweCA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzpcbiAgICAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjA4KSxcbiAgICAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjA0KTtcbmBcblxuZXhwb3J0IGNvbnN0IFBsdXNNZW51SW5uZXJDb2x1bW4gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA0cHg7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG5gXG5cbmV4cG9ydCBjb25zdCBQbHVzTWVudURpdmlkZXIgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTcwcHg7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiAjZDlkOWQ5O1xuICBmbGV4LXNocmluazogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFBsdXNNZW51SXRlbUJ1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA4cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogOHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICR7QkxVRV9JQV9DT0xPUlNbNTAwXX07XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFBsdXNNZW51SXRlbUxhYmVsID0gc3R5bGVkLnNwYW48eyAkc2VsZWN0ZWQ6IGJvb2xlYW4gfT5gXG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbiAgY29sb3I6ICR7KHsgJHNlbGVjdGVkIH0pID0+ICgkc2VsZWN0ZWQgPyAnIzAwNTc4YycgOiAnIzIwMjAyMCcpfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjBweDtcbmBcblxuZXhwb3J0IGNvbnN0IEFjdGl2ZVRvb2xDaGlwUm9vdCA9IHN0eWxlZC5kaXY8eyAkaG92ZXJlZDogYm9vbGVhbjsgJGV4aXRpbmc6IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC13aWR0aDogMTQ0cHg7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgJGhvdmVyZWQgfSkgPT4gKCRob3ZlcmVkID8gJzE2cHgnIDogJzAnKX07XG4gIGJhY2tncm91bmQ6ICR7KHsgJGhvdmVyZWQgfSkgPT4gKCRob3ZlcmVkID8gJyNmMmYyZjInIDogJ3RyYW5zcGFyZW50Jyl9O1xuICBib3gtc2hhZG93OiAkeyh7ICRob3ZlcmVkIH0pID0+ICgkaG92ZXJlZCA/ICcwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjA3KScgOiAnbm9uZScpfTtcbiAgdHJhbnNpdGlvbjpcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMjJzIGVhc2UsXG4gICAgYm9yZGVyLXJhZGl1cyAwLjIycyBlYXNlLFxuICAgIGJveC1zaGFkb3cgMC4yMnMgZWFzZTtcblxuICAkeyh7ICRleGl0aW5nIH0pID0+XG4gICAgJGV4aXRpbmcgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGFuaW1hdGlvbjogJHthY3RpdmVUb29sQ2hpcE91dH0gMC4yMnMgZWFzZSBmb3J3YXJkcztcbiAgICBgfVxuYFxuXG5leHBvcnQgY29uc3QgQWN0aXZlVG9vbENoaXBJY29uQnV0dG9uID0gc3R5bGVkLmJ1dHRvbjx7ICRjbG9zZVNob3duOiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbGV4LXNocmluazogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcblxuICBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJHsoeyAkY2xvc2VTaG93biB9KSA9PlxuICAgICRjbG9zZVNob3duICYmXG4gICAgY3NzYFxuICAgICAgc3ZnIHtcbiAgICAgICAgYW5pbWF0aW9uOiAke2FjdGl2ZVRvb2xDaGlwQ2xvc2VJY29uSW59IDAuMjRzIGVhc2UgZm9yd2FyZHM7XG4gICAgICB9XG4gICAgYH1cblxuICAmOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDYpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBBY3RpdmVUb29sQ2hpcExhYmVsID0gc3R5bGVkLnNwYW5gXG4gIGNvbG9yOiAjMjAyMDIwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbmBcbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBU3RvcEljb24gPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTNweDtcbiAgaGVpZ2h0OiAxM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGM4YzhjO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG5gXG5leHBvcnQgY29uc3QgU3R5bGVkTUFJQVN0b3BCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjIgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7QkxVRV9JQV9DT0xPUlNbNTBdfSAhaW1wb3J0YW50O1xuXG4gICAgJHtTdHlsZWRNQUlBU3RvcEljb259IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7QkxVRV9JQV9DT0xPUlNbNTAwXX0gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjIgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbmBcbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSxPQUFPQSxNQUFNLElBQUlDLEdBQUcsRUFBRUMsU0FBUyxRQUFRLG1CQUFtQjtBQUMxRCxPQUFPQyxNQUFNLE1BQU0sbUNBQW1DO0FBQ3RELFNBQVNDLGNBQWMsUUFBUSx3QkFBd0I7QUFDdkQsU0FBU0MsZ0JBQWdCLFFBQVEsbUNBQW1DO0FBQ3BFLFNBQVNDLFdBQVcsUUFBUSxnQkFBZ0I7QUFFNUMsT0FBTyxJQUFNQyxJQUFJLEdBQUdMLFNBQVMsMEhBZ0I1QjtBQUVELElBQU1NLHlCQUF5QixHQUFHTixTQUFTLGdGQVMxQztBQUVELElBQU1PLGlCQUFpQixHQUFHUCxTQUFTLDJHQVNsQztBQUVELElBQU1RLGlCQUFpQixHQUFHVCxHQUFHLHlVQVNkTSxJQUFJLENBSWxCO0FBRUQsT0FBTyxJQUFNSSxzQkFBc0IsR0FBR1gsTUFBTSxDQUFDWSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsaU9BUTFCWixNQUFNLENBQUNhLElBQUksQ0FBQ0MsUUFBUSxFQUc5QixVQUFBQyxJQUFBO0VBQUEsSUFBR0QsUUFBUSxHQUFBQyxJQUFBLENBQVJELFFBQVE7RUFBQSxPQUFRQSxRQUFRLEdBQUcsYUFBYSxHQUFHLE1BQU07QUFBQSxDQUFDLEVBR3hELFVBQUFFLEtBQUE7RUFBQSxJQUFHQyxZQUFZLEdBQUFELEtBQUEsQ0FBWkMsWUFBWTtFQUFBLE9BQVFBLFlBQVksS0FBSyxVQUFVLEdBQUcsS0FBSyxHQUFHLEdBQUc7QUFBQSxDQUFDLEVB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
129
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJrZXlmcmFtZXMiLCJjb2xvcnMiLCJCTFVFX0lBX0NPTE9SUyIsIk1BSUFfQ0hBVF9JTlBVVF9VSSIsInNjcm9sbGFibGVTdHlsZXMiLCJDbGVhckJ1dHRvbiIsImZsb3ciLCJhY3RpdmVUb29sQ2hpcENsb3NlSWNvbkluIiwiYWN0aXZlVG9vbENoaXBPdXQiLCJjdXN0b21JbnB1dFN0eWxlcyIsIlN0eWxlZE1BSUFJbnB1dFdyYXBwZXIiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsInRleHQiLCJkaXNhYmxlZCIsIl9yZWYiLCJfcmVmMiIsImFsaWduQnV0dG9ucyIsIl9yZWYzIiwiaGFzQXR0YWNobWVudHMiLCJTdHlsZWRNQUlBSW5wdXRCdXR0b25zIiwiU3R5bGVkTUFJQUlucHV0IiwidGV4dGFyZWEiLCJzZWNvbmRhcnkiLCJTdHlsZWRNQUlBU2VuZEJ1dHRvbiIsIl9yZWY0IiwiaGFzVmFsdWVzIiwiY29uY2F0IiwiX3JlZjUiLCJfcmVmNiIsIlNDTUlXcmFwcGVyQXR0YWNobWVudHMiLCJTQ01JQXR0YWNobWVudERlbGV0ZUljb24iLCJTQ01JQXR0YWNobWVudCIsIl9yZWY3IiwiaXNJbWFnZSIsIlBsdXNNZW51VG9vbHNSb3ciLCJQbHVzVG9nZ2xlQnV0dG9uIiwiYnV0dG9uIiwiX3JlZjgiLCIkbWVudU9wZW4iLCJiYWNrZ3JvdW5kIiwid2hpdGUiLCJtYWluIiwiUGx1c01lbnVQYXBlciIsImdyYXkiLCJsaWdodCIsIlBsdXNNZW51SW5uZXJDb2x1bW4iLCJQbHVzTWVudURpdmlkZXIiLCJQbHVzTWVudUl0ZW1CdXR0b24iLCJQbHVzTWVudUl0ZW1MYWJlbCIsInNwYW4iLCJfcmVmOSIsIiRzZWxlY3RlZCIsInRleHRCcmFuZEJvbGQiLCJwcmltYXJ5IiwiQWN0aXZlVG9vbENoaXBSb290IiwiX3JlZjAiLCIkaG92ZXJlZCIsIl9yZWYxIiwiY2hpcFN1cmZhY2VIb3ZlciIsIl9yZWYxMCIsIl9yZWYxMSIsIiRleGl0aW5nIiwiQWN0aXZlVG9vbENoaXBJY29uQnV0dG9uIiwiX3JlZjEyIiwiJGNsb3NlU2hvd24iLCJBY3RpdmVUb29sQ2hpcExhYmVsIiwiU3R5bGVkTUFJQVN0b3BJY29uIiwiU3R5bGVkTUFJQVN0b3BCdXR0b24iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9NQUlBSW5wdXQvc3R5bGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9pbmRlbnQgKi9cbmltcG9ydCBzdHlsZWQsIHsgY3NzLCBrZXlmcmFtZXMgfSBmcm9tICdzdHlsZWQtY29tcG9uZW50cydcbmltcG9ydCBjb2xvcnMgZnJvbSAnQHByb2plY3Rjb3IvdGhlbWUvbGliL2Jhc2UvY29sb3JzJ1xuaW1wb3J0IHsgQkxVRV9JQV9DT0xPUlMsIE1BSUFfQ0hBVF9JTlBVVF9VSSB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb25maWcnXG5pbXBvcnQgeyBzY3JvbGxhYmxlU3R5bGVzIH0gZnJvbSAnLi4vLi4vLi4vc3R5bGVzL3NoYXJlZC9zY3JvbGxhYmxlJ1xuaW1wb3J0IHsgQ2xlYXJCdXR0b24gfSBmcm9tICcuLi9DbGVhckJ1dHRvbidcblxuZXhwb3J0IGNvbnN0IGZsb3cgPSBrZXlmcmFtZXNgXG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgMCUgMCUsXG4gICAgICAwJSA1MCU7XG4gIH1cbiAgNTAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgMCUgMCUsXG4gICAgICAxMDAlIDUwJTtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgMCUgMCUsXG4gICAgICAwJSA1MCU7XG4gIH1cbmBcblxuY29uc3QgYWN0aXZlVG9vbENoaXBDbG9zZUljb25JbiA9IGtleWZyYW1lc2BcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMC41NTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODIpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbmBcblxuY29uc3QgYWN0aXZlVG9vbENoaXBPdXQgPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVZKDApO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45MikgdHJhbnNsYXRlWSgzcHgpO1xuICB9XG5gXG5cbmNvbnN0IGN1c3RvbUlucHV0U3R5bGVzID0gY3NzYFxuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOlxuICAgIGxpbmVhci1ncmFkaWVudCh3aGl0ZSwgd2hpdGUpIHBhZGRpbmctYm94LFxuICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzRkMzU2OSAwJSwgIzg3NDBiZiA1OS42MiUsICMyZDc3YmQgMTAwJSkgYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTpcbiAgICAxMDAlIDEwMCUsXG4gICAgMjAwJSAxMDAlO1xuICBhbmltYXRpb246ICR7Zmxvd30gM3MgZWFzZSBpbmZpbml0ZTtcbiAgYm94LXNoYWRvdzpcbiAgICAzcHggNHB4IDE0cHggMCByZ2JhKDEzNSwgNjQsIDE5MSwgMC4xNSksXG4gICAgLTNweCAtNHB4IDE0cHggMCByZ2JhKDQ1LCAxMTksIDE4OSwgMC4xNSk7XG5gXG5cbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBSW5wdXRXcmFwcGVyID0gc3R5bGVkLmRpdjx7XG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBhbGlnbkJ1dHRvbnM/OiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnXG4gIGhhc0F0dGFjaG1lbnRzOiBib29sZWFuXG59PmBcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHtjb2xvcnMudGV4dC5kaXNhYmxlZH07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG4gIHBhZGRpbmc6IDEycHg7XG4gIGN1cnNvcjogJHsoeyBkaXNhYmxlZCB9KSA9PiAoZGlzYWJsZWQgPyAnbm90LWFsbG93ZWQnIDogJ2F1dG8nKX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi1oZWlnaHQ6IDg2cHg7XG4gIGdhcDogJHsoeyBhbGlnbkJ1dHRvbnMgfSkgPT4gKGFsaWduQnV0dG9ucyA9PT0gJ3ZlcnRpY2FsJyA/ICc4cHgnIDogJzAnKX07XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgJjpmb2N1cy13aXRoaW4ge1xuICAgICR7Y3VzdG9tSW5wdXRTdHlsZXN9XG4gIH1cblxuICAkeyh7IGhhc0F0dGFjaG1lbnRzIH0pID0+XG4gICAgaGFzQXR0YWNobWVudHMgJiZcbiAgICBjc3NgXG4gICAgICAke2N1c3RvbUlucHV0U3R5bGVzfVxuICAgIGB9XG5gXG5cbmV4cG9ydCBjb25zdCBTdHlsZWRNQUlBSW5wdXRCdXR0b25zID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmBcblxuZXhwb3J0IGNvbnN0IFN0eWxlZE1BSUFJbnB1dCA9IHN0eWxlZC50ZXh0YXJlYTx7XG4gIGFsaWduQnV0dG9ucz86ICd2ZXJ0aWNhbCcgfCAnaG9yaXpvbnRhbCdcbn0+YFxuICAke3Njcm9sbGFibGVTdHlsZXN9XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHJlc2l6ZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBtaW4taGVpZ2h0OiAyMi4xcHg7XG4gIG1heC1oZWlnaHQ6IDEyMi4xcHg7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICR7Y29sb3JzLnRleHQuc2Vjb25kYXJ5fTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU3R5bGVkTUFJQVNlbmRCdXR0b24gPSBzdHlsZWQoQ2xlYXJCdXR0b24pPHsgaGFzVmFsdWVzPzogYm9vbGVhbiB9PmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyBoYXNWYWx1ZXMgfSkgPT4gKGhhc1ZhbHVlcyA/IGAke0JMVUVfSUFfQ09MT1JTWzUwMF19YCA6ICcjZjJmMmYyJyl9O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblxuICBzdmcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gICAgJHsoeyBoYXNWYWx1ZXMgfSkgPT5cbiAgICAgIGhhc1ZhbHVlcyAmJlxuICAgICAgY3NzYFxuICAgICAgICBnICoge1xuICAgICAgICAgIGZpbGw6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIGB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke0JMVUVfSUFfQ09MT1JTWzcwMF19ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHN2ZyB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICAgZyAqIHtcbiAgICAgICAgZmlsbDogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMiAhaW1wb3J0YW50O1xuXG4gICAgJHsoeyBoYXNWYWx1ZXMgfSkgPT5cbiAgICAgICFoYXNWYWx1ZXMgJiZcbiAgICAgIGNzc2BcbiAgICAgICAgc3ZnICoge1xuICAgICAgICAgIGZpbGw6ICR7Y29sb3JzLnRleHQuZGlzYWJsZWR9ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIGB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JV3JhcHBlckF0dGFjaG1lbnRzID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuYFxuZXhwb3J0IGNvbnN0IFNDTUlBdHRhY2htZW50RGVsZXRlSWNvbiA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICAgIHN2ZyAqOm5vdCgubm8tZmlsbCkge1xuICAgICAgZmlsbDogIzY2NjY2NiAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NNSUF0dGFjaG1lbnQgPSBzdHlsZWQuZGl2PHsgaXNJbWFnZT86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE5MSwgMTkxLCAxOTEsIDEpO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxM3B4O1xuICAkeyh7IGlzSW1hZ2UgfSkgPT5cbiAgICBpc0ltYWdlICYmXG4gICAgY3NzYFxuICAgICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG4gICAgYH1cblxuICAmOmhvdmVyIHtcbiAgICAke1NDTUlBdHRhY2htZW50RGVsZXRlSWNvbn0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFBsdXNNZW51VG9vbHNSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbmBcblxuZXhwb3J0IGNvbnN0IFBsdXNUb2dnbGVCdXR0b24gPSBzdHlsZWQuYnV0dG9uPHsgJG1lbnVPcGVuOiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJhY2tncm91bmQ6ICR7KHsgJG1lbnVPcGVuIH0pID0+ICgkbWVudU9wZW4gPyBjb2xvcnMuYmFja2dyb3VuZC5zZWNvbmRhcnkgOiBjb2xvcnMud2hpdGUubWFpbil9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR7Y29sb3JzLmJhY2tncm91bmQuc2Vjb25kYXJ5fTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICR7QkxVRV9JQV9DT0xPUlNbNTAwXX07XG4gICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgUGx1c01lbnVQYXBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMjA5cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDEycHggOHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR7Y29sb3JzLmNvbG9ycy5ncmF5LmxpZ2h0fTtcbiAgYmFja2dyb3VuZDogJHtjb2xvcnMud2hpdGUubWFpbn07XG4gIGJveC1zaGFkb3c6XG4gICAgMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wOCksXG4gICAgMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG5gXG5cbmV4cG9ydCBjb25zdCBQbHVzTWVudUlubmVyQ29sdW1uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNHB4O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuYFxuXG5leHBvcnQgY29uc3QgUGx1c01lbnVEaXZpZGVyID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDE3MHB4O1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogJHtjb2xvcnMuY29sb3JzLmdyYXkubGlnaHR9O1xuICBmbGV4LXNocmluazogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFBsdXNNZW51SXRlbUJ1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA4cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogOHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJHtjb2xvcnMuYmFja2dyb3VuZC5zZWNvbmRhcnl9O1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgUGx1c01lbnVJdGVtTGFiZWwgPSBzdHlsZWQuc3Bhbjx7ICRzZWxlY3RlZDogYm9vbGVhbiB9PmBcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuICBjb2xvcjogJHsoeyAkc2VsZWN0ZWQgfSkgPT4gKCRzZWxlY3RlZCA/IE1BSUFfQ0hBVF9JTlBVVF9VSS50ZXh0QnJhbmRCb2xkIDogY29sb3JzLnRleHQucHJpbWFyeSl9O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuYFxuXG5leHBvcnQgY29uc3QgQWN0aXZlVG9vbENoaXBSb290ID0gc3R5bGVkLmRpdjx7ICRob3ZlcmVkOiBib29sZWFuOyAkZXhpdGluZzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgbWF4LXdpZHRoOiAxNDRweDtcbiAgcGFkZGluZzogNHB4IDhweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAycHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyAkaG92ZXJlZCB9KSA9PiAoJGhvdmVyZWQgPyAnMTZweCcgOiAnMCcpfTtcbiAgYmFja2dyb3VuZDogJHsoeyAkaG92ZXJlZCB9KSA9PiAoJGhvdmVyZWQgPyBNQUlBX0NIQVRfSU5QVVRfVUkuY2hpcFN1cmZhY2VIb3ZlciA6ICd0cmFuc3BhcmVudCcpfTtcbiAgYm94LXNoYWRvdzogJHsoeyAkaG92ZXJlZCB9KSA9PiAoJGhvdmVyZWQgPyAnMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4wNyknIDogJ25vbmUnKX07XG4gIHRyYW5zaXRpb246XG4gICAgYmFja2dyb3VuZC1jb2xvciAwLjIycyBlYXNlLFxuICAgIGJvcmRlci1yYWRpdXMgMC4yMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMjJzIGVhc2U7XG5cbiAgJHsoeyAkZXhpdGluZyB9KSA9PlxuICAgICRleGl0aW5nICYmXG4gICAgY3NzYFxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBhbmltYXRpb246ICR7YWN0aXZlVG9vbENoaXBPdXR9IDAuMjJzIGVhc2UgZm9yd2FyZHM7XG4gICAgYH1cbmBcblxuZXhwb3J0IGNvbnN0IEFjdGl2ZVRvb2xDaGlwSWNvbkJ1dHRvbiA9IHN0eWxlZC5idXR0b248eyAkY2xvc2VTaG93bjogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG5cbiAgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICR7KHsgJGNsb3NlU2hvd24gfSkgPT5cbiAgICAkY2xvc2VTaG93biAmJlxuICAgIGNzc2BcbiAgICAgIHN2ZyB7XG4gICAgICAgIGFuaW1hdGlvbjogJHthY3RpdmVUb29sQ2hpcENsb3NlSWNvbklufSAwLjI0cyBlYXNlIGZvcndhcmRzO1xuICAgICAgfVxuICAgIGB9XG5cbiAgJjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA2KTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICR7QkxVRV9JQV9DT0xPUlNbNTAwXX07XG4gICAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgQWN0aXZlVG9vbENoaXBMYWJlbCA9IHN0eWxlZC5zcGFuYFxuICBjb2xvcjogJHtjb2xvcnMudGV4dC5wcmltYXJ5fTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5gXG5leHBvcnQgY29uc3QgU3R5bGVkTUFJQVN0b3BJY29uID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEzcHg7XG4gIGhlaWdodDogMTNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhjOGM4YztcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuYFxuZXhwb3J0IGNvbnN0IFN0eWxlZE1BSUFTdG9wQnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBmb250OiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke0JMVUVfSUFfQ09MT1JTWzUwXX0gIWltcG9ydGFudDtcblxuICAgICR7U3R5bGVkTUFJQVN0b3BJY29ufSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke0JMVUVfSUFfQ09MT1JTWzUwMF19ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG5gXG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0EsT0FBT0EsTUFBTSxJQUFJQyxHQUFHLEVBQUVDLFNBQVMsUUFBUSxtQkFBbUI7QUFDMUQsT0FBT0MsTUFBTSxNQUFNLG1DQUFtQztBQUN0RCxTQUFTQyxjQUFjLEVBQUVDLGtCQUFrQixRQUFRLHdCQUF3QjtBQUMzRSxTQUFTQyxnQkFBZ0IsUUFBUSxtQ0FBbUM7QUFDcEUsU0FBU0MsV0FBVyxRQUFRLGdCQUFnQjtBQUU1QyxPQUFPLElBQU1DLElBQUksR0FBR04sU0FBUywwSEFnQjVCO0FBRUQsSUFBTU8seUJBQXlCLEdBQUdQLFNBQVMsZ0ZBUzFDO0FBRUQsSUFBTVEsaUJBQWlCLEdBQUdSLFNBQVMsMkdBU2xDO0FBRUQsSUFBTVMsaUJBQWlCLEdBQUdWLEdBQUcseVVB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
@@ -159,10 +159,9 @@ export function ChatFooterFaqs(_ref2) {
159
159
  var _faqsByCategory$group;
160
160
  var items = (_faqsByCategory$group = faqsByCategory.grouped[category]) !== null && _faqsByCategory$group !== void 0 ? _faqsByCategory$group : [];
161
161
  if (items.length === 0) return null;
162
- var categoryLabel = category === 'undefined' ? t('homeMenu.faq.categories.undefined') : t("homeMenu.faq.categories.".concat(category));
163
162
  return /*#__PURE__*/_jsxs(React.Fragment, {
164
- children: [/*#__PURE__*/_jsx(SCFaqsCategoryHeader, {
165
- children: categoryLabel
163
+ children: [category !== 'undefined' && /*#__PURE__*/_jsx(SCFaqsCategoryHeader, {
164
+ children: t("homeMenu.faq.categories.".concat(category))
166
165
  }), items.map(function (faq) {
167
166
  return /*#__PURE__*/_jsx(FaqModalItem, {
168
167
  faq: {
@@ -182,4 +181,4 @@ export function ChatFooterFaqs(_ref2) {
182
181
  })]
183
182
  });
184
183
  }
185
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZVN0YXRlIiwidXNlRWZmZWN0IiwidXNlUmVmIiwidXNlQ2FsbGJhY2siLCJ1c2VNZW1vIiwiVG9vbHRpcCIsInVzZVQiLCJ1c2VSZXNpemVMaXN0ZW5lciIsInVzZUdsb2JhbENvbnRleHQiLCJ1c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMiLCJFVkVOVFMiLCJ1c2VFdmVudCIsIlNDRmFxc0NoaXAiLCJTQ0ZhcXNUcmlnZ2VyV3JhcHBlciIsIlNDRmFxc01vZGFsRnJhbWUiLCJTQ0ZhcXNNb2RhbENvbnRlbnQiLCJTQ0ZhcXNDYXRlZ29yeUhlYWRlciIsIlNDRmFxc01vZGFsSXRlbSIsIlNDRmFxc01vZGFsSXRlbVRleHQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRmFxTW9kYWxJdGVtIiwiX3JlZiIsImZhcSIsIm9uQ2xpY2siLCJfcmVmJGRpc2FibGVkIiwiZGlzYWJsZWQiLCJ0ZXh0UmVmIiwiX3VzZVJlc2l6ZUxpc3RlbmVyIiwidGl0bGUiLCJzaG93VG9vbHRpcCIsImNvbnRlbnQiLCJ0eXBlIiwiY2hpbGRyZW4iLCJyZWYiLCJDaGF0Rm9vdGVyRmFxcyIsIl9yZWYyIiwib25TZWxlY3RGYXEiLCJfcmVmMiRkaXNhYmxlZCIsIl91c2VUIiwidCIsImkxOG4iLCJldmVudCIsIl91c2VHbG9iYWxDb250ZXh0IiwiYWdlbnQiLCJsYW5nIiwibGFuZ3VhZ2UiLCJhZ2VudElkIiwiaWQiLCJfdXNlRnJlcXVlbnRseUFza2VkUXUiLCJmYXFzIiwibG9hZGluZyIsImVycm9yIiwiaGFuZGxlR2V0RnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIiwiaXNDbG9uZUFnZW50IiwiZmFxc0J5Q2F0ZWdvcnkiLCJncm91cGVkIiwic29ydGVkRmFxcyIsIl90b0NvbnN1bWFibGVBcnJheSIsInNvcnQiLCJhIiwiYiIsIl9hJG9yZGVyIiwiX2Ikb3JkZXIiLCJvcmRlckEiLCJvcmRlciIsIk51bWJlciIsIk1BWF9TQUZFX0lOVEVHRVIiLCJvcmRlckIiLCJmb3JFYWNoIiwiY2F0ZWdvcnkiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsImNhdCIsIl9hJG9yZGVyMiIsIl9iJG9yZGVyMiIsImVudHJpZXMiLCJfcmVmMyIsIl9yZWY0IiwiX2NhdGVnb3J5RmFxc0EkMCRvcmRlIiwiX2NhdGVnb3J5RmFxc0EkIiwiX2NhdGVnb3J5RmFxc0IkMCRvcmRlIiwiX2NhdGVnb3J5RmFxc0IkIiwiX3JlZjUiLCJfc2xpY2VkVG9BcnJheSIsImNhdGVnb3J5RmFxc0EiLCJfcmVmNiIsImNhdGVnb3J5RmFxc0IiLCJmaXJzdE9yZGVyQSIsImZpcnN0T3JkZXJCIiwibWFwIiwiX3JlZjciLCJfcmVmOCIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJpc09wZW4iLCJzZXRJc09wZW4iLCJ3cmFwcGVyUmVmIiwiaGFuZGxlVG9nZ2xlIiwicHJldiIsImhhbmRsZUZhcUNsaWNrIiwiYWlDaGF0U2VsZWN0RkFRIiwib3B0aW9uIiwiaWRfZmFxIiwiY2F0ZWdvcnlfZmFxIiwib3JpZ2luX2ZhcSIsImhhbmRsZUVzY2FwZSIsImUiLCJrZXkiLCJoYW5kbGVDbGlja091dHNpZGUiLCJ0YXJnZXQiLCJjdXJyZW50IiwiY29udGFpbnMiLCJ1bmRlZmluZWQiLCJkb2N1bWVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJ0aW1lb3V0SWQiLCJzZXRUaW1lb3V0IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImNsZWFyVGltZW91dCIsImxlbmd0aCIsInJvbGUiLCJfZmFxc0J5Q2F0ZWdvcnkkZ3JvdXAiLCJpdGVtcyIsImNhdGVnb3J5TGFiZWwiLCJjb25jYXQiLCJGcmFnbWVudCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXJGYXFzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJ0Bwcm9qZWN0Y29yL3Rvb2x0aXB2Mi9saWIvY29tcG9uZW50cy9Ub29sdGlwJ1xuaW1wb3J0IHsgdXNlVCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVQnXG5pbXBvcnQgeyB1c2VSZXNpemVMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVJlc2l6ZSdcbmltcG9ydCB7IHVzZUdsb2JhbENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2dsb2JhbC1jb250ZXh0J1xuaW1wb3J0IHsgdXNlRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zJ1xuaW1wb3J0IHsgRVZFTlRTLCB1c2VFdmVudCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZUV2ZW50J1xuaW1wb3J0IHtcbiAgU0NGYXFzQ2hpcCxcbiAgU0NGYXFzVHJpZ2dlcldyYXBwZXIsXG4gIFNDRmFxc01vZGFsRnJhbWUsXG4gIFNDRmFxc01vZGFsQ29udGVudCxcbiAgU0NGYXFzQ2F0ZWdvcnlIZWFkZXIsXG4gIFNDRmFxc01vZGFsSXRlbSxcbiAgU0NGYXFzTW9kYWxJdGVtVGV4dCxcbn0gZnJvbSAnLi9DaGF0Rm9vdGVyRmFxcy5zdHlsZXMnXG5pbXBvcnQgdHlwZSB7IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvRnJlcXVlbnRseUFza2VkUXVlc3Rpb24nXG5cbmV4cG9ydCB0eXBlIEZhcUl0ZW0gPSB7XG4gIGlkOiBzdHJpbmdcbiAgdGl0bGU6IHN0cmluZ1xuICBjYXRlZ29yeTogc3RyaW5nXG59XG5cbmZ1bmN0aW9uIEZhcU1vZGFsSXRlbSh7IGZhcSwgb25DbGljaywgZGlzYWJsZWQgPSBmYWxzZSB9OiB7IGZhcTogRmFxSXRlbTsgb25DbGljazogKCkgPT4gdm9pZDsgZGlzYWJsZWQ/OiBib29sZWFuIH0pIHtcbiAgY29uc3QgdGV4dFJlZiA9IHVzZVJlZjxIVE1MU3BhbkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IHsgc2hvd1Rvb2x0aXAgfSA9IHVzZVJlc2l6ZUxpc3RlbmVyKHRleHRSZWYsIFtmYXEudGl0bGVdKVxuXG4gIGNvbnN0IGNvbnRlbnQgPSAoXG4gICAgPFNDRmFxc01vZGFsSXRlbSB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz17b25DbGlja30gZGlzYWJsZWQ9e2Rpc2FibGVkfT5cbiAgICAgIDxTQ0ZhcXNNb2RhbEl0ZW1UZXh0IHJlZj17dGV4dFJlZn0+e2ZhcS50aXRsZX08L1NDRmFxc01vZGFsSXRlbVRleHQ+XG4gICAgPC9TQ0ZhcXNNb2RhbEl0ZW0+XG4gIClcblxuICByZXR1cm4gPFRvb2x0aXAgdGl0bGU9e3Nob3dUb29sdGlwID8gZmFxLnRpdGxlIDogJyd9Pntjb250ZW50fTwvVG9vbHRpcD5cbn1cblxudHlwZSBDaGF0Rm9vdGVyRmFxc1Byb3BzID0ge1xuICBvblNlbGVjdEZhcTogKG1lc3NhZ2U6IHN0cmluZywgZmFxSWQ6IHN0cmluZykgPT4gdm9pZFxuICBkaXNhYmxlZD86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENoYXRGb290ZXJGYXFzKHsgb25TZWxlY3RGYXEsIGRpc2FibGVkID0gZmFsc2UgfTogQ2hhdEZvb3RlckZhcXNQcm9wcykge1xuICBjb25zdCB7IHQsIGkxOG4gfSA9IHVzZVQoKVxuICBjb25zdCBldmVudCA9IHVzZUV2ZW50KClcbiAgY29uc3QgeyBhZ2VudCB9ID0gdXNlR2xvYmFsQ29udGV4dCgpXG4gIGNvbnN0IGxhbmcgPSBpMThuLmxhbmd1YWdlID09PSAnYnInID8gJ3B0LWJyJyA6IGkxOG4ubGFuZ3VhZ2VcbiAgY29uc3QgYWdlbnRJZCA9IGFnZW50Py5pZFxuXG4gIGNvbnN0IHsgZmFxcywgbG9hZGluZywgZXJyb3IsIGhhbmRsZUdldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyB9ID0gdXNlRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zKGFnZW50SWQsIGxhbmcpXG5cbiAgY29uc3QgaXNDbG9uZUFnZW50ID0gYWdlbnQ/LnR5cGUgPT09ICdjbG9uZSdcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc0Nsb25lQWdlbnQgJiYgYWdlbnRJZCAmJiBsYW5nKSB7XG4gICAgICBoYW5kbGVHZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMoeyBhZ2VudElkLCBsYW5nIH0pXG4gICAgfVxuICB9LCBbaXNDbG9uZUFnZW50LCBhZ2VudElkLCBsYW5nLCBoYW5kbGVHZXRGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnNdKVxuXG4gIGNvbnN0IGZhcXNCeUNhdGVnb3J5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgZ3JvdXBlZDogUmVjb3JkPHN0cmluZywgRnJlcXVlbnRseUFza2VkUXVlc3Rpb25bXT4gPSB7fVxuICAgIGNvbnN0IHNvcnRlZEZhcXMgPSBbLi4uZmFxc10uc29ydCgoYSwgYikgPT4ge1xuICAgICAgY29uc3Qgb3JkZXJBID0gYS5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuICAgICAgY29uc3Qgb3JkZXJCID0gYi5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gICAgICByZXR1cm4gb3JkZXJBIC0gb3JkZXJCXG4gICAgfSlcblxuICAgIHNvcnRlZEZhcXMuZm9yRWFjaChmYXEgPT4ge1xuICAgICAgY29uc3QgY2F0ZWdvcnkgPSBmYXEuY2F0ZWdvcnkgfHwgJ3VuZGVmaW5lZCdcbiAgICAgIGlmICghZ3JvdXBlZFtjYXRlZ29yeV0pIGdyb3VwZWRbY2F0ZWdvcnldID0gW11cbiAgICAgIGdyb3VwZWRbY2F0ZWdvcnldLnB1c2goZmFxKVxuICAgIH0pXG5cbiAgICBPYmplY3Qua2V5cyhncm91cGVkKS5mb3JFYWNoKGNhdCA9PiB7XG4gICAgICBncm91cGVkW2NhdF0uc29ydCgoYSwgYikgPT4gKGEub3JkZXIgPz8gMCkgLSAoYi5vcmRlciA/PyAwKSlcbiAgICB9KVxuXG4gICAgY29uc3Qgb3JkZXIgPSBPYmplY3QuZW50cmllcyhncm91cGVkKVxuICAgICAgLnNvcnQoKFssIGNhdGVnb3J5RmFxc0FdLCBbLCBjYXRlZ29yeUZhcXNCXSkgPT4ge1xuICAgICAgICBjb25zdCBmaXJzdE9yZGVyQSA9IGNhdGVnb3J5RmFxc0FbMF0/Lm9yZGVyID8/IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXG4gICAgICAgIGNvbnN0IGZpcnN0T3JkZXJCID0gY2F0ZWdvcnlGYXFzQlswXT8ub3JkZXIgPz8gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJcblxuICAgICAgICByZXR1cm4gZmlyc3RPcmRlckEgLSBmaXJzdE9yZGVyQlxuICAgICAgfSlcbiAgICAgIC5tYXAoKFtjYXRlZ29yeV0pID0+IGNhdGVnb3J5KVxuXG4gICAgcmV0dXJuIHsgZ3JvdXBlZCwgb3JkZXIgfVxuICB9LCBbZmFxc10pXG5cbiAgY29uc3QgW2lzT3Blbiwgc2V0SXNPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCB3cmFwcGVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuXG4gIGNvbnN0IGhhbmRsZVRvZ2dsZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRJc09wZW4ocHJldiA9PiAhcHJldilcbiAgfSwgW10pXG5cbiAgY29uc3QgaGFuZGxlRmFxQ2xpY2sgPSB1c2VDYWxsYmFjayhcbiAgICAoZmFxOiBGcmVxdWVudGx5QXNrZWRRdWVzdGlvbikgPT4ge1xuICAgICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgb25TZWxlY3RGYXEoZmFxLnRpdGxlLCBmYXEuaWQpXG4gICAgICBldmVudChFVkVOVFMuYWlDaGF0U2VsZWN0RkFRLCB7XG4gICAgICAgIG9wdGlvbjoge1xuICAgICAgICAgIGlkX2ZhcTogZmFxLnRpdGxlLFxuICAgICAgICAgIGNhdGVnb3J5X2ZhcTogZmFxLmNhdGVnb3J5LFxuICAgICAgICAgIG9yaWdpbl9mYXE6ICdidXR0b25fY2hhdCcsXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgICAgc2V0SXNPcGVuKGZhbHNlKVxuICAgIH0sXG4gICAgW29uU2VsZWN0RmFxLCBldmVudCwgZGlzYWJsZWRdXG4gIClcblxuICBjb25zdCBoYW5kbGVFc2NhcGUgPSB1c2VDYWxsYmFjaygoZTogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgIGlmIChlLmtleSA9PT0gJ0VzY2FwZScpIHNldElzT3BlbihmYWxzZSlcbiAgfSwgW10pXG5cbiAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gdXNlQ2FsbGJhY2soKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICBjb25zdCB0YXJnZXQgPSBlLnRhcmdldCBhcyBOb2RlXG4gICAgaWYgKHdyYXBwZXJSZWYuY3VycmVudCAmJiAhd3JhcHBlclJlZi5jdXJyZW50LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgIHNldElzT3BlbihmYWxzZSlcbiAgICB9XG4gIH0sIFtdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc09wZW4pIHJldHVybiB1bmRlZmluZWRcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgaGFuZGxlRXNjYXBlLCB0cnVlKVxuICAgIGNvbnN0IHRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKVxuICAgIH0sIDApXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBoYW5kbGVFc2NhcGUsIHRydWUpXG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgICBjbGVhclRpbWVvdXQodGltZW91dElkKVxuICAgIH1cbiAgfSwgW2lzT3BlbiwgaGFuZGxlRXNjYXBlLCBoYW5kbGVDbGlja091dHNpZGVdKVxuXG4gIGlmIChmYXFzLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBudWxsXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxTQ0ZhcXNUcmlnZ2VyV3JhcHBlciByZWY9e3dyYXBwZXJSZWZ9PlxuICAgICAgPFNDRmFxc0NoaXAgdHlwZT1cImJ1dHRvblwiIG9uQ2xpY2s9e2hhbmRsZVRvZ2dsZX0gYXJpYS1leHBhbmRlZD17aXNPcGVufSBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiPlxuICAgICAgICB7dCgnaG9tZU1lbnUuZmFxLnRpdGxlJyl9XG4gICAgICA8L1NDRmFxc0NoaXA+XG4gICAgICB7aXNPcGVuICYmIChcbiAgICAgICAgPFNDRmFxc01vZGFsRnJhbWUgcm9sZT1cImRpYWxvZ1wiIGFyaWEtbGFiZWw9e3QoJ2hvbWVNZW51LmZhcS50aXRsZScpfT5cbiAgICAgICAgICA8U0NGYXFzTW9kYWxDb250ZW50PlxuICAgICAgICAgICAgeyFsb2FkaW5nICYmXG4gICAgICAgICAgICAgICFlcnJvciAmJlxuICAgICAgICAgICAgICBmYXFzQnlDYXRlZ29yeS5vcmRlci5tYXAoY2F0ZWdvcnkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZmFxc0J5Q2F0ZWdvcnkuZ3JvdXBlZFtjYXRlZ29yeV0gPz8gW11cbiAgICAgICAgICAgICAgICBpZiAoaXRlbXMubGVuZ3RoID09PSAwKSByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgIGNvbnN0IGNhdGVnb3J5TGFiZWwgPVxuICAgICAgICAgICAgICAgICAgY2F0ZWdvcnkgPT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICAgICAgICAgID8gdCgnaG9tZU1lbnUuZmFxLmNhdGVnb3JpZXMudW5kZWZpbmVkJylcbiAgICAgICAgICAgICAgICAgICAgOiB0KGBob21lTWVudS5mYXEuY2F0ZWdvcmllcy4ke2NhdGVnb3J5fWApXG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgIDxSZWFjdC5GcmFnbWVudCBrZXk9e2NhdGVnb3J5fT5cbiAgICAgICAgICAgICAgICAgICAgPFNDRmFxc0NhdGVnb3J5SGVhZGVyPntjYXRlZ29yeUxhYmVsfTwvU0NGYXFzQ2F0ZWdvcnlIZWFkZXI+XG4gICAgICAgICAgICAgICAgICAgIHtpdGVtcy5tYXAoZmFxID0+IChcbiAgICAgICAgICAgICAgICAgICAgICA8RmFxTW9kYWxJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2ZhcS5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGZhcT17eyBpZDogZmFxLmlkLCB0aXRsZTogZmFxLnRpdGxlLCBjYXRlZ29yeTogZmFxLmNhdGVnb3J5IHx8ICd1bmRlZmluZWQnIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVGYXFDbGljayhmYXEpfVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgIDwvU0NGYXFzTW9kYWxDb250ZW50PlxuICAgICAgICA8L1NDRmFxc01vZGFsRnJhbWU+XG4gICAgICApfVxuICAgIDwvU0NGYXFzVHJpZ2dlcldyYXBwZXI+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPQSxLQUFLLElBQUlDLFFBQVEsRUFBRUMsU0FBUyxFQUFFQyxNQUFNLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxRQUFRLE9BQU87QUFDaEYsU0FBU0MsT0FBTyxRQUFRLDhDQUE4QztBQUN0RSxTQUFTQyxJQUFJLFFBQVEscUJBQXFCO0FBQzFDLFNBQVNDLGlCQUFpQixRQUFRLDBCQUEwQjtBQUM1RCxTQUFTQyxnQkFBZ0IsUUFBUSxpQ0FBaUM7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
184
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZVN0YXRlIiwidXNlRWZmZWN0IiwidXNlUmVmIiwidXNlQ2FsbGJhY2siLCJ1c2VNZW1vIiwiVG9vbHRpcCIsInVzZVQiLCJ1c2VSZXNpemVMaXN0ZW5lciIsInVzZUdsb2JhbENvbnRleHQiLCJ1c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMiLCJFVkVOVFMiLCJ1c2VFdmVudCIsIlNDRmFxc0NoaXAiLCJTQ0ZhcXNUcmlnZ2VyV3JhcHBlciIsIlNDRmFxc01vZGFsRnJhbWUiLCJTQ0ZhcXNNb2RhbENvbnRlbnQiLCJTQ0ZhcXNDYXRlZ29yeUhlYWRlciIsIlNDRmFxc01vZGFsSXRlbSIsIlNDRmFxc01vZGFsSXRlbVRleHQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRmFxTW9kYWxJdGVtIiwiX3JlZiIsImZhcSIsIm9uQ2xpY2siLCJfcmVmJGRpc2FibGVkIiwiZGlzYWJsZWQiLCJ0ZXh0UmVmIiwiX3VzZVJlc2l6ZUxpc3RlbmVyIiwidGl0bGUiLCJzaG93VG9vbHRpcCIsImNvbnRlbnQiLCJ0eXBlIiwiY2hpbGRyZW4iLCJyZWYiLCJDaGF0Rm9vdGVyRmFxcyIsIl9yZWYyIiwib25TZWxlY3RGYXEiLCJfcmVmMiRkaXNhYmxlZCIsIl91c2VUIiwidCIsImkxOG4iLCJldmVudCIsIl91c2VHbG9iYWxDb250ZXh0IiwiYWdlbnQiLCJsYW5nIiwibGFuZ3VhZ2UiLCJhZ2VudElkIiwiaWQiLCJfdXNlRnJlcXVlbnRseUFza2VkUXUiLCJmYXFzIiwibG9hZGluZyIsImVycm9yIiwiaGFuZGxlR2V0RnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIiwiaXNDbG9uZUFnZW50IiwiZmFxc0J5Q2F0ZWdvcnkiLCJncm91cGVkIiwic29ydGVkRmFxcyIsIl90b0NvbnN1bWFibGVBcnJheSIsInNvcnQiLCJhIiwiYiIsIl9hJG9yZGVyIiwiX2Ikb3JkZXIiLCJvcmRlckEiLCJvcmRlciIsIk51bWJlciIsIk1BWF9TQUZFX0lOVEVHRVIiLCJvcmRlckIiLCJmb3JFYWNoIiwiY2F0ZWdvcnkiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsImNhdCIsIl9hJG9yZGVyMiIsIl9iJG9yZGVyMiIsImVudHJpZXMiLCJfcmVmMyIsIl9yZWY0IiwiX2NhdGVnb3J5RmFxc0EkMCRvcmRlIiwiX2NhdGVnb3J5RmFxc0EkIiwiX2NhdGVnb3J5RmFxc0IkMCRvcmRlIiwiX2NhdGVnb3J5RmFxc0IkIiwiX3JlZjUiLCJfc2xpY2VkVG9BcnJheSIsImNhdGVnb3J5RmFxc0EiLCJfcmVmNiIsImNhdGVnb3J5RmFxc0IiLCJmaXJzdE9yZGVyQSIsImZpcnN0T3JkZXJCIiwibWFwIiwiX3JlZjciLCJfcmVmOCIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJpc09wZW4iLCJzZXRJc09wZW4iLCJ3cmFwcGVyUmVmIiwiaGFuZGxlVG9nZ2xlIiwicHJldiIsImhhbmRsZUZhcUNsaWNrIiwiYWlDaGF0U2VsZWN0RkFRIiwib3B0aW9uIiwiaWRfZmFxIiwiY2F0ZWdvcnlfZmFxIiwib3JpZ2luX2ZhcSIsImhhbmRsZUVzY2FwZSIsImUiLCJrZXkiLCJoYW5kbGVDbGlja091dHNpZGUiLCJ0YXJnZXQiLCJjdXJyZW50IiwiY29udGFpbnMiLCJ1bmRlZmluZWQiLCJkb2N1bWVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJ0aW1lb3V0SWQiLCJzZXRUaW1lb3V0IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImNsZWFyVGltZW91dCIsImxlbmd0aCIsInJvbGUiLCJfZmFxc0J5Q2F0ZWdvcnkkZ3JvdXAiLCJpdGVtcyIsIkZyYWdtZW50IiwiY29uY2F0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRGb290ZXIvQ2hhdEZvb3RlckZhcXMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VTdGF0ZSwgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZUNhbGxiYWNrLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnQHByb2plY3Rjb3IvdG9vbHRpcHYyL2xpYi9jb21wb25lbnRzL1Rvb2x0aXAnXG5pbXBvcnQgeyB1c2VUIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlVCdcbmltcG9ydCB7IHVzZVJlc2l6ZUxpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlUmVzaXplJ1xuaW1wb3J0IHsgdXNlR2xvYmFsQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQnXG5pbXBvcnQgeyB1c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMnXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQge1xuICBTQ0ZhcXNDaGlwLFxuICBTQ0ZhcXNUcmlnZ2VyV3JhcHBlcixcbiAgU0NGYXFzTW9kYWxGcmFtZSxcbiAgU0NGYXFzTW9kYWxDb250ZW50LFxuICBTQ0ZhcXNDYXRlZ29yeUhlYWRlcixcbiAgU0NGYXFzTW9kYWxJdGVtLFxuICBTQ0ZhcXNNb2RhbEl0ZW1UZXh0LFxufSBmcm9tICcuL0NoYXRGb290ZXJGYXFzLnN0eWxlcydcbmltcG9ydCB0eXBlIHsgRnJlcXVlbnRseUFza2VkUXVlc3Rpb24gfSBmcm9tICcuLi8uLi8uLi90eXBlcy9GcmVxdWVudGx5QXNrZWRRdWVzdGlvbidcblxuZXhwb3J0IHR5cGUgRmFxSXRlbSA9IHtcbiAgaWQ6IHN0cmluZ1xuICB0aXRsZTogc3RyaW5nXG4gIGNhdGVnb3J5OiBzdHJpbmdcbn1cblxuZnVuY3Rpb24gRmFxTW9kYWxJdGVtKHsgZmFxLCBvbkNsaWNrLCBkaXNhYmxlZCA9IGZhbHNlIH06IHsgZmFxOiBGYXFJdGVtOyBvbkNsaWNrOiAoKSA9PiB2b2lkOyBkaXNhYmxlZD86IGJvb2xlYW4gfSkge1xuICBjb25zdCB0ZXh0UmVmID0gdXNlUmVmPEhUTUxTcGFuRWxlbWVudD4obnVsbClcbiAgY29uc3QgeyBzaG93VG9vbHRpcCB9ID0gdXNlUmVzaXplTGlzdGVuZXIodGV4dFJlZiwgW2ZhcS50aXRsZV0pXG5cbiAgY29uc3QgY29udGVudCA9IChcbiAgICA8U0NGYXFzTW9kYWxJdGVtIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPXtvbkNsaWNrfSBkaXNhYmxlZD17ZGlzYWJsZWR9PlxuICAgICAgPFNDRmFxc01vZGFsSXRlbVRleHQgcmVmPXt0ZXh0UmVmfT57ZmFxLnRpdGxlfTwvU0NGYXFzTW9kYWxJdGVtVGV4dD5cbiAgICA8L1NDRmFxc01vZGFsSXRlbT5cbiAgKVxuXG4gIHJldHVybiA8VG9vbHRpcCB0aXRsZT17c2hvd1Rvb2x0aXAgPyBmYXEudGl0bGUgOiAnJ30+e2NvbnRlbnR9PC9Ub29sdGlwPlxufVxuXG50eXBlIENoYXRGb290ZXJGYXFzUHJvcHMgPSB7XG4gIG9uU2VsZWN0RmFxOiAobWVzc2FnZTogc3RyaW5nLCBmYXFJZDogc3RyaW5nKSA9PiB2b2lkXG4gIGRpc2FibGVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgZnVuY3Rpb24gQ2hhdEZvb3RlckZhcXMoeyBvblNlbGVjdEZhcSwgZGlzYWJsZWQgPSBmYWxzZSB9OiBDaGF0Rm9vdGVyRmFxc1Byb3BzKSB7XG4gIGNvbnN0IHsgdCwgaTE4biB9ID0gdXNlVCgpXG4gIGNvbnN0IGV2ZW50ID0gdXNlRXZlbnQoKVxuICBjb25zdCB7IGFnZW50IH0gPSB1c2VHbG9iYWxDb250ZXh0KClcbiAgY29uc3QgbGFuZyA9IGkxOG4ubGFuZ3VhZ2UgPT09ICdicicgPyAncHQtYnInIDogaTE4bi5sYW5ndWFnZVxuICBjb25zdCBhZ2VudElkID0gYWdlbnQ/LmlkXG5cbiAgY29uc3QgeyBmYXFzLCBsb2FkaW5nLCBlcnJvciwgaGFuZGxlR2V0RnJlcXVlbnRseUFza2VkUXVlc3Rpb25zIH0gPSB1c2VGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMoYWdlbnRJZCwgbGFuZylcblxuICBjb25zdCBpc0Nsb25lQWdlbnQgPSBhZ2VudD8udHlwZSA9PT0gJ2Nsb25lJ1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzQ2xvbmVBZ2VudCAmJiBhZ2VudElkICYmIGxhbmcpIHtcbiAgICAgIGhhbmRsZUdldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyh7IGFnZW50SWQsIGxhbmcgfSlcbiAgICB9XG4gIH0sIFtpc0Nsb25lQWdlbnQsIGFnZW50SWQsIGxhbmcsIGhhbmRsZUdldEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc10pXG5cbiAgY29uc3QgZmFxc0J5Q2F0ZWdvcnkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBncm91cGVkOiBSZWNvcmQ8c3RyaW5nLCBGcmVxdWVudGx5QXNrZWRRdWVzdGlvbltdPiA9IHt9XG4gICAgY29uc3Qgc29ydGVkRmFxcyA9IFsuLi5mYXFzXS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICBjb25zdCBvcmRlckEgPSBhLm9yZGVyID8/IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXG4gICAgICBjb25zdCBvcmRlckIgPSBiLm9yZGVyID8/IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXG5cbiAgICAgIHJldHVybiBvcmRlckEgLSBvcmRlckJcbiAgICB9KVxuXG4gICAgc29ydGVkRmFxcy5mb3JFYWNoKGZhcSA9PiB7XG4gICAgICBjb25zdCBjYXRlZ29yeSA9IGZhcS5jYXRlZ29yeSB8fCAndW5kZWZpbmVkJ1xuICAgICAgaWYgKCFncm91cGVkW2NhdGVnb3J5XSkgZ3JvdXBlZFtjYXRlZ29yeV0gPSBbXVxuICAgICAgZ3JvdXBlZFtjYXRlZ29yeV0ucHVzaChmYXEpXG4gICAgfSlcblxuICAgIE9iamVjdC5rZXlzKGdyb3VwZWQpLmZvckVhY2goY2F0ID0+IHtcbiAgICAgIGdyb3VwZWRbY2F0XS5zb3J0KChhLCBiKSA9PiAoYS5vcmRlciA/PyAwKSAtIChiLm9yZGVyID8/IDApKVxuICAgIH0pXG5cbiAgICBjb25zdCBvcmRlciA9IE9iamVjdC5lbnRyaWVzKGdyb3VwZWQpXG4gICAgICAuc29ydCgoWywgY2F0ZWdvcnlGYXFzQV0sIFssIGNhdGVnb3J5RmFxc0JdKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpcnN0T3JkZXJBID0gY2F0ZWdvcnlGYXFzQVswXT8ub3JkZXIgPz8gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJcbiAgICAgICAgY29uc3QgZmlyc3RPcmRlckIgPSBjYXRlZ29yeUZhcXNCWzBdPy5vcmRlciA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gICAgICAgIHJldHVybiBmaXJzdE9yZGVyQSAtIGZpcnN0T3JkZXJCXG4gICAgICB9KVxuICAgICAgLm1hcCgoW2NhdGVnb3J5XSkgPT4gY2F0ZWdvcnkpXG5cbiAgICByZXR1cm4geyBncm91cGVkLCBvcmRlciB9XG4gIH0sIFtmYXFzXSlcblxuICBjb25zdCBbaXNPcGVuLCBzZXRJc09wZW5dID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IHdyYXBwZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG5cbiAgY29uc3QgaGFuZGxlVG9nZ2xlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldElzT3BlbihwcmV2ID0+ICFwcmV2KVxuICB9LCBbXSlcblxuICBjb25zdCBoYW5kbGVGYXFDbGljayA9IHVzZUNhbGxiYWNrKFxuICAgIChmYXE6IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uKSA9PiB7XG4gICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBvblNlbGVjdEZhcShmYXEudGl0bGUsIGZhcS5pZClcbiAgICAgIGV2ZW50KEVWRU5UUy5haUNoYXRTZWxlY3RGQVEsIHtcbiAgICAgICAgb3B0aW9uOiB7XG4gICAgICAgICAgaWRfZmFxOiBmYXEudGl0bGUsXG4gICAgICAgICAgY2F0ZWdvcnlfZmFxOiBmYXEuY2F0ZWdvcnksXG4gICAgICAgICAgb3JpZ2luX2ZhcTogJ2J1dHRvbl9jaGF0JyxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgICBzZXRJc09wZW4oZmFsc2UpXG4gICAgfSxcbiAgICBbb25TZWxlY3RGYXEsIGV2ZW50LCBkaXNhYmxlZF1cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZUVzY2FwZSA9IHVzZUNhbGxiYWNrKChlOiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgaWYgKGUua2V5ID09PSAnRXNjYXBlJykgc2V0SXNPcGVuKGZhbHNlKVxuICB9LCBbXSlcblxuICBjb25zdCBoYW5kbGVDbGlja091dHNpZGUgPSB1c2VDYWxsYmFjaygoZTogTW91c2VFdmVudCkgPT4ge1xuICAgIGNvbnN0IHRhcmdldCA9IGUudGFyZ2V0IGFzIE5vZGVcbiAgICBpZiAod3JhcHBlclJlZi5jdXJyZW50ICYmICF3cmFwcGVyUmVmLmN1cnJlbnQuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgc2V0SXNPcGVuKGZhbHNlKVxuICAgIH1cbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWlzT3BlbikgcmV0dXJuIHVuZGVmaW5lZFxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBoYW5kbGVFc2NhcGUsIHRydWUpXG4gICAgY29uc3QgdGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgfSwgMClcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGhhbmRsZUVzY2FwZSwgdHJ1ZSlcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpXG4gICAgfVxuICB9LCBbaXNPcGVuLCBoYW5kbGVFc2NhcGUsIGhhbmRsZUNsaWNrT3V0c2lkZV0pXG5cbiAgaWYgKGZhcXMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFNDRmFxc1RyaWdnZXJXcmFwcGVyIHJlZj17d3JhcHBlclJlZn0+XG4gICAgICA8U0NGYXFzQ2hpcCB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz17aGFuZGxlVG9nZ2xlfSBhcmlhLWV4cGFuZGVkPXtpc09wZW59IGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCI+XG4gICAgICAgIHt0KCdob21lTWVudS5mYXEudGl0bGUnKX1cbiAgICAgIDwvU0NGYXFzQ2hpcD5cbiAgICAgIHtpc09wZW4gJiYgKFxuICAgICAgICA8U0NGYXFzTW9kYWxGcmFtZSByb2xlPVwiZGlhbG9nXCIgYXJpYS1sYWJlbD17dCgnaG9tZU1lbnUuZmFxLnRpdGxlJyl9PlxuICAgICAgICAgIDxTQ0ZhcXNNb2RhbENvbnRlbnQ+XG4gICAgICAgICAgICB7IWxvYWRpbmcgJiZcbiAgICAgICAgICAgICAgIWVycm9yICYmXG4gICAgICAgICAgICAgIGZhcXNCeUNhdGVnb3J5Lm9yZGVyLm1hcChjYXRlZ29yeSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbXMgPSBmYXFzQnlDYXRlZ29yeS5ncm91cGVkW2NhdGVnb3J5XSA/PyBbXVxuICAgICAgICAgICAgICAgIGlmIChpdGVtcy5sZW5ndGggPT09IDApIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgIDxSZWFjdC5GcmFnbWVudCBrZXk9e2NhdGVnb3J5fT5cbiAgICAgICAgICAgICAgICAgICAge2NhdGVnb3J5ICE9PSAndW5kZWZpbmVkJyAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPFNDRmFxc0NhdGVnb3J5SGVhZGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAge3QoYGhvbWVNZW51LmZhcS5jYXRlZ29yaWVzLiR7Y2F0ZWdvcnl9YCl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9TQ0ZhcXNDYXRlZ29yeUhlYWRlcj5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge2l0ZW1zLm1hcChmYXEgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgIDxGYXFNb2RhbEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIGtleT17ZmFxLmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgZmFxPXt7IGlkOiBmYXEuaWQsIHRpdGxlOiBmYXEudGl0bGUsIGNhdGVnb3J5OiBmYXEuY2F0ZWdvcnkgfHwgJ3VuZGVmaW5lZCcgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUZhcUNsaWNrKGZhcSl9XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PlxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPC9TQ0ZhcXNNb2RhbENvbnRlbnQ+XG4gICAgICAgIDwvU0NGYXFzTW9kYWxGcmFtZT5cbiAgICAgICl9XG4gICAgPC9TQ0ZhcXNUcmlnZ2VyV3JhcHBlcj5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU9BLEtBQUssSUFBSUMsUUFBUSxFQUFFQyxTQUFTLEVBQUVDLE1BQU0sRUFBRUMsV0FBVyxFQUFFQyxPQUFPLFFBQVEsT0FBTztBQUNoRixTQUFTQyxPQUFPLFFBQVEsOENBQThDO0FBQ3RFLFNBQVNDLElBQUksUUFBUSxxQkFBcUI7QUFDMUMsU0FBU0MsaUJBQWlCLFFBQVEsMEJBQTBCO0FBQzVELFNBQVNDLGdCQUFnQixRQUFRLGlDQUFpQztBQUNsRSxTQUFTQywyQkFBMkIsUUFBUSw0Q0FBNEM7QUFDeEYsU0FBU0MsTUFBTSxFQUFFQyxRQUFRLFFBQVEseUJBQXlC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
@@ -4,6 +4,9 @@ export var FILE_AUDIO_FORMAT_EXTENSIONS = ['.flac', '.m4a', '.mp3', '.mp4', '.og
4
4
  export var MAX_FILE_SIZE_MB_OLD = 1;
5
5
  export var MAX_FILE_SIZE_MB_MAIA_VISION = 4.99;
6
6
  export var MAX_FILE_SIZE_MB_AUDIO = 10;
7
+
8
+ /** Máximo de archivos adjuntos por mensaje en el input del chat MAIA */
9
+ export var MAX_CHAT_INPUT_ATTACHMENTS = 5;
7
10
  export var allowedFileTypes = ['.txt', '.md', '.csv', '.doc', '.docx', '.png', '.jpg', '.jpeg', '.pdf', '.xlsx', '.xls', '.flac', '.m4a', '.mp3', '.mp4', '.oga', '.ogg', '.wav', '.webm'];
8
11
 
9
12
  /** Tipos permitidos para Knowledge (excluye audio) */
@@ -29,4 +32,4 @@ export var fileTypes = {
29
32
  '.wav': 'audio/wav',
30
33
  '.webm': 'audio/webm'
31
34
  };
32
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGSUxFX0ZPUk1BVF9FWFRFTlNJT05TIiwiRklMRV9NQUlBX1ZJU0lPTl9GT1JNQVRfRVhURU5TSU9OUyIsIkZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMiLCJNQVhfRklMRV9TSVpFX01CX09MRCIsIk1BWF9GSUxFX1NJWkVfTUJfTUFJQV9WSVNJT04iLCJNQVhfRklMRV9TSVpFX01CX0FVRElPIiwiYWxsb3dlZEZpbGVUeXBlcyIsImFsbG93ZWRGaWxlVHlwZXNGb3JLbm93bGVkZ2UiLCJmaWxlVHlwZXMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uc3RhbnRzL2Zvcm1hdEV4dGVuc2lvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEZJTEVfRk9STUFUX0VYVEVOU0lPTlMgPSBbJy50eHQnLCAnLm1kJywgJy5jc3YnLCAnLmRvYycsICcuZG9jeCcsICcueGxzeCcsICcueGxzJ11cbmV4cG9ydCBjb25zdCBGSUxFX01BSUFfVklTSU9OX0ZPUk1BVF9FWFRFTlNJT05TID0gWycucG5nJywgJy5qcGcnLCAnLmpwZWcnLCAnLnBkZiddXG5leHBvcnQgY29uc3QgRklMRV9BVURJT19GT1JNQVRfRVhURU5TSU9OUyA9IFsnLmZsYWMnLCAnLm00YScsICcubXAzJywgJy5tcDQnLCAnLm9nYScsICcub2dnJywgJy53YXYnLCAnLndlYm0nXVxuZXhwb3J0IGNvbnN0IE1BWF9GSUxFX1NJWkVfTUJfT0xEID0gMVxuZXhwb3J0IGNvbnN0IE1BWF9GSUxFX1NJWkVfTUJfTUFJQV9WSVNJT04gPSA0Ljk5XG5leHBvcnQgY29uc3QgTUFYX0ZJTEVfU0laRV9NQl9BVURJTyA9IDEwXG5cbmV4cG9ydCBjb25zdCBhbGxvd2VkRmlsZVR5cGVzID0gW1xuICAnLnR4dCcsXG4gICcubWQnLFxuICAnLmNzdicsXG4gICcuZG9jJyxcbiAgJy5kb2N4JyxcbiAgJy5wbmcnLFxuICAnLmpwZycsXG4gICcuanBlZycsXG4gICcucGRmJyxcbiAgJy54bHN4JyxcbiAgJy54bHMnLFxuICAnLmZsYWMnLFxuICAnLm00YScsXG4gICcubXAzJyxcbiAgJy5tcDQnLFxuICAnLm9nYScsXG4gICcub2dnJyxcbiAgJy53YXYnLFxuICAnLndlYm0nLFxuXVxuXG4vKiogVGlwb3MgcGVybWl0aWRvcyBwYXJhIEtub3dsZWRnZSAoZXhjbHV5ZSBhdWRpbykgKi9cbmV4cG9ydCBjb25zdCBhbGxvd2VkRmlsZVR5cGVzRm9yS25vd2xlZGdlID0gW1xuICAnLnR4dCcsXG4gICcubWQnLFxuICAnLmNzdicsXG4gICcuZG9jJyxcbiAgJy5kb2N4JyxcbiAgJy5wbmcnLFxuICAnLmpwZycsXG4gICcuanBlZycsXG4gICcucGRmJyxcbiAgJy54bHN4JyxcbiAgJy54bHMnLFxuXVxuZXhwb3J0IGNvbnN0IGZpbGVUeXBlcyA9IHtcbiAgJy50eHQnOiAndGV4dC9wbGFpbicsXG4gICcubWQnOiAndGV4dC94LW1hcmtkb3duJyxcbiAgJy5jc3YnOiAndGV4dC9jc3YnLFxuICAnLmRvYyc6ICdhcHBsaWNhdGlvbi9tc3dvcmQnLFxuICAnLmRvY3gnOiAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LndvcmRwcm9jZXNzaW5nbWwuZG9jdW1lbnQnLFxuICAnLnBuZyc6ICdpbWFnZS9wbmcnLFxuICAnLmpwZyc6ICdpbWFnZS9qcGVnJyxcbiAgJy5qcGVnJzogJ2ltYWdlL2pwZWcnLFxuICAnLnBkZic6ICdhcHBsaWNhdGlvbi9wZGYnLFxuICAnLnhsc3gnOiAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hlZXQnLFxuICAnLnhscyc6ICdhcHBsaWNhdGlvbi92bmQubXMtZXhjZWwnLFxuICAnLmZsYWMnOiAnYXVkaW8vZmxhYycsXG4gICcubTRhJzogJ2F1ZGlvL21wNCcsXG4gICcubXAzJzogJ2F1ZGlvL21wZWcnLFxuICAnLm1wNCc6ICdhdWRpby9tcDQnLFxuICAnLm9nYSc6ICdhdWRpby9vZ2cnLFxuICAnLm9nZyc6ICdhdWRpby9vZ2cnLFxuICAnLndhdic6ICdhdWRpby93YXYnLFxuICAnLndlYm0nOiAnYXVkaW8vd2VibScsXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBTUEsc0JBQXNCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUM7QUFDL0YsT0FBTyxJQUFNQyxrQ0FBa0MsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQztBQUNuRixPQUFPLElBQU1DLDRCQUE0QixHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQztBQUM5RyxPQUFPLElBQU1DLG9CQUFvQixHQUFHLENBQUM7QUFDckMsT0FBTyxJQUFNQyw0QkFBNEIsR0FBRyxJQUFJO0FBQ2hELE9BQU8sSUFBTUMsc0JBQXNCLEdBQUcsRUFBRTtBQUV4QyxPQUFPLElBQU1DLGdCQUFnQixHQUFHLENBQzlCLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sRUFDTixPQUFPLEVBQ1AsTUFBTSxFQUNOLE1BQU0sRUFDTixPQUFPLEVBQ1AsTUFBTSxFQUNOLE9BQU8sRUFDUCxNQUFNLEVBQ04sT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxFQUNOLE9BQU8sQ0FDUjs7QUFFRDtBQUNBLE9BQU8sSUFBTUMsNEJBQTRCLEdBQUcsQ0FDMUMsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLE9BQU8sRUFDUCxNQUFNLEVBQ04sTUFBTSxFQUNOLE9BQU8sRUFDUCxNQUFNLEVBQ04sT0FBTyxFQUNQLE1BQU0sQ0FDUDtBQUNELE9BQU8sSUFBTUMsU0FBUyxHQUFHO0VBQ3ZCLE1BQU0sRUFBRSxZQUFZO0VBQ3BCLEtBQUssRUFBRSxpQkFBaUI7RUFDeEIsTUFBTSxFQUFFLFVBQVU7RUFDbEIsTUFBTSxFQUFFLG9CQUFvQjtFQUM1QixPQUFPLEVBQUUseUVBQXlFO0VBQ2xGLE1BQU0sRUFBRSxXQUFXO0VBQ25CLE1BQU0sRUFBRSxZQUFZO0VBQ3BCLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE1BQU0sRUFBRSxpQkFBaUI7RUFDekIsT0FBTyxFQUFFLG1FQUFtRTtFQUM1RSxNQUFNLEVBQUUsMEJBQTBCO0VBQ2xDLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE1BQU0sRUFBRSxXQUFXO0VBQ25CLE1BQU0sRUFBRSxZQUFZO0VBQ3BCLE1BQU0sRUFBRSxXQUFXO0VBQ25CLE1BQU0sRUFBRSxXQUFXO0VBQ25CLE1BQU0sRUFBRSxXQUFXO0VBQ25CLE1BQU0sRUFBRSxXQUFXO0VBQ25CLE9BQU8sRUFBRTtBQUNYLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
35
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGSUxFX0ZPUk1BVF9FWFRFTlNJT05TIiwiRklMRV9NQUlBX1ZJU0lPTl9GT1JNQVRfRVhURU5TSU9OUyIsIkZJTEVfQVVESU9fRk9STUFUX0VYVEVOU0lPTlMiLCJNQVhfRklMRV9TSVpFX01CX09MRCIsIk1BWF9GSUxFX1NJWkVfTUJfTUFJQV9WSVNJT04iLCJNQVhfRklMRV9TSVpFX01CX0FVRElPIiwiTUFYX0NIQVRfSU5QVVRfQVRUQUNITUVOVFMiLCJhbGxvd2VkRmlsZVR5cGVzIiwiYWxsb3dlZEZpbGVUeXBlc0Zvcktub3dsZWRnZSIsImZpbGVUeXBlcyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25zdGFudHMvZm9ybWF0RXh0ZW5zaW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgRklMRV9GT1JNQVRfRVhURU5TSU9OUyA9IFsnLnR4dCcsICcubWQnLCAnLmNzdicsICcuZG9jJywgJy5kb2N4JywgJy54bHN4JywgJy54bHMnXVxuZXhwb3J0IGNvbnN0IEZJTEVfTUFJQV9WSVNJT05fRk9STUFUX0VYVEVOU0lPTlMgPSBbJy5wbmcnLCAnLmpwZycsICcuanBlZycsICcucGRmJ11cbmV4cG9ydCBjb25zdCBGSUxFX0FVRElPX0ZPUk1BVF9FWFRFTlNJT05TID0gWycuZmxhYycsICcubTRhJywgJy5tcDMnLCAnLm1wNCcsICcub2dhJywgJy5vZ2cnLCAnLndhdicsICcud2VibSddXG5leHBvcnQgY29uc3QgTUFYX0ZJTEVfU0laRV9NQl9PTEQgPSAxXG5leHBvcnQgY29uc3QgTUFYX0ZJTEVfU0laRV9NQl9NQUlBX1ZJU0lPTiA9IDQuOTlcbmV4cG9ydCBjb25zdCBNQVhfRklMRV9TSVpFX01CX0FVRElPID0gMTBcblxuLyoqIE3DoXhpbW8gZGUgYXJjaGl2b3MgYWRqdW50b3MgcG9yIG1lbnNhamUgZW4gZWwgaW5wdXQgZGVsIGNoYXQgTUFJQSAqL1xuZXhwb3J0IGNvbnN0IE1BWF9DSEFUX0lOUFVUX0FUVEFDSE1FTlRTID0gNVxuXG5leHBvcnQgY29uc3QgYWxsb3dlZEZpbGVUeXBlcyA9IFtcbiAgJy50eHQnLFxuICAnLm1kJyxcbiAgJy5jc3YnLFxuICAnLmRvYycsXG4gICcuZG9jeCcsXG4gICcucG5nJyxcbiAgJy5qcGcnLFxuICAnLmpwZWcnLFxuICAnLnBkZicsXG4gICcueGxzeCcsXG4gICcueGxzJyxcbiAgJy5mbGFjJyxcbiAgJy5tNGEnLFxuICAnLm1wMycsXG4gICcubXA0JyxcbiAgJy5vZ2EnLFxuICAnLm9nZycsXG4gICcud2F2JyxcbiAgJy53ZWJtJyxcbl1cblxuLyoqIFRpcG9zIHBlcm1pdGlkb3MgcGFyYSBLbm93bGVkZ2UgKGV4Y2x1eWUgYXVkaW8pICovXG5leHBvcnQgY29uc3QgYWxsb3dlZEZpbGVUeXBlc0Zvcktub3dsZWRnZSA9IFtcbiAgJy50eHQnLFxuICAnLm1kJyxcbiAgJy5jc3YnLFxuICAnLmRvYycsXG4gICcuZG9jeCcsXG4gICcucG5nJyxcbiAgJy5qcGcnLFxuICAnLmpwZWcnLFxuICAnLnBkZicsXG4gICcueGxzeCcsXG4gICcueGxzJyxcbl1cbmV4cG9ydCBjb25zdCBmaWxlVHlwZXMgPSB7XG4gICcudHh0JzogJ3RleHQvcGxhaW4nLFxuICAnLm1kJzogJ3RleHQveC1tYXJrZG93bicsXG4gICcuY3N2JzogJ3RleHQvY3N2JyxcbiAgJy5kb2MnOiAnYXBwbGljYXRpb24vbXN3b3JkJyxcbiAgJy5kb2N4JzogJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLmRvY3VtZW50JyxcbiAgJy5wbmcnOiAnaW1hZ2UvcG5nJyxcbiAgJy5qcGcnOiAnaW1hZ2UvanBlZycsXG4gICcuanBlZyc6ICdpbWFnZS9qcGVnJyxcbiAgJy5wZGYnOiAnYXBwbGljYXRpb24vcGRmJyxcbiAgJy54bHN4JzogJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0JyxcbiAgJy54bHMnOiAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJyxcbiAgJy5mbGFjJzogJ2F1ZGlvL2ZsYWMnLFxuICAnLm00YSc6ICdhdWRpby9tcDQnLFxuICAnLm1wMyc6ICdhdWRpby9tcGVnJyxcbiAgJy5tcDQnOiAnYXVkaW8vbXA0JyxcbiAgJy5vZ2EnOiAnYXVkaW8vb2dnJyxcbiAgJy5vZ2cnOiAnYXVkaW8vb2dnJyxcbiAgJy53YXYnOiAnYXVkaW8vd2F2JyxcbiAgJy53ZWJtJzogJ2F1ZGlvL3dlYm0nLFxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQU1BLHNCQUFzQixHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDO0FBQy9GLE9BQU8sSUFBTUMsa0NBQWtDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUM7QUFDbkYsT0FBTyxJQUFNQyw0QkFBNEIsR0FBRyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUM7QUFDOUcsT0FBTyxJQUFNQyxvQkFBb0IsR0FBRyxDQUFDO0FBQ3JDLE9BQU8sSUFBTUMsNEJBQTRCLEdBQUcsSUFBSTtBQUNoRCxPQUFPLElBQU1DLHNCQUFzQixHQUFHLEVBQUU7O0FBRXhDO0FBQ0EsT0FBTyxJQUFNQywwQkFBMEIsR0FBRyxDQUFDO0FBRTNDLE9BQU8sSUFBTUMsZ0JBQWdCLEdBQUcsQ0FDOUIsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLE9BQU8sRUFDUCxNQUFNLEVBQ04sTUFBTSxFQUNOLE9BQU8sRUFDUCxNQUFNLEVBQ04sT0FBTyxFQUNQLE1BQU0sRUFDTixPQUFPLEVBQ1AsTUFBTSxFQUNOLE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sRUFDTixNQUFNLEVBQ04sT0FBTyxDQUNSOztBQUVEO0FBQ0EsT0FBTyxJQUFNQyw0QkFBNEIsR0FBRyxDQUMxQyxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLEVBQ04sT0FBTyxFQUNQLE1BQU0sRUFDTixPQUFPLEVBQ1AsTUFBTSxDQUNQO0FBQ0QsT0FBTyxJQUFNQyxTQUFTLEdBQUc7RUFDdkIsTUFBTSxFQUFFLFlBQVk7RUFDcEIsS0FBSyxFQUFFLGlCQUFpQjtFQUN4QixNQUFNLEVBQUUsVUFBVTtFQUNsQixNQUFNLEVBQUUsb0JBQW9CO0VBQzVCLE9BQU8sRUFBRSx5RUFBeUU7RUFDbEYsTUFBTSxFQUFFLFdBQVc7RUFDbkIsTUFBTSxFQUFFLFlBQVk7RUFDcEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsTUFBTSxFQUFFLGlCQUFpQjtFQUN6QixPQUFPLEVBQUUsbUVBQW1FO0VBQzVFLE1BQU0sRUFBRSwwQkFBMEI7RUFDbEMsT0FBTyxFQUFFLFlBQVk7RUFDckIsTUFBTSxFQUFFLFdBQVc7RUFDbkIsTUFBTSxFQUFFLFlBQVk7RUFDcEIsTUFBTSxFQUFFLFdBQVc7RUFDbkIsTUFBTSxFQUFFLFdBQVc7RUFDbkIsTUFBTSxFQUFFLFdBQVc7RUFDbkIsTUFBTSxFQUFFLFdBQVc7RUFDbkIsT0FBTyxFQUFFO0FBQ1gsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
@@ -32,4 +32,16 @@ export var MAIA_IA_COLORS = {
32
32
  blue: BLUE_IA_COLORS,
33
33
  violet: VIOLET_IA_COLORS
34
34
  };
35
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJHTE9CQUxfQ09MT1JTIiwicHJpbWFyeSIsImxpZ2h0IiwiYmFja2dyb3VuZCIsImRhcmsiLCJCTFVFX0lBX0NPTE9SUyIsIlZJT0xFVF9JQV9DT0xPUlMiLCJNQUlBX0lBX0NPTE9SUyIsImJsdWUiLCJ2aW9sZXQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3R5bGVzL2NvbmZpZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgR0xPQkFMX0NPTE9SUyA9IHtcbiAgcHJpbWFyeTogJyM4NzQwYmYnLFxuICBsaWdodDogJyNGN0YwRkMnLFxuICBiYWNrZ3JvdW5kOiAnI0VCREJGOCcsXG4gIGRhcms6ICcjNTkyOTg0Jyxcbn1cblxuZXhwb3J0IGNvbnN0IEJMVUVfSUFfQ09MT1JTID0ge1xuICA1MDogJyNlYWYxZjgnLFxuICAxMDA6ICcjYmVkNWViJyxcbiAgMjAwOiAnIzllYzBlMScsXG4gIDMwMDogJyM3MmE0ZDMnLFxuICA0MDA6ICcjNTc5MmNhJyxcbiAgNTAwOiAnIzJkNzdiZCcsXG4gIDYwMDogJyMyOTZjYWMnLFxuICA3MDA6ICcjMjA1NDg2JyxcbiAgODAwOiAnIzE5NDE2OCcsXG4gIDkwMDogJyMxMzMyNGYnLFxufSBhcyBjb25zdFxuXG5leHBvcnQgY29uc3QgVklPTEVUX0lBX0NPTE9SUyA9IHtcbiAgNTA6ICcjZWRlYmYwJyxcbiAgMTAwOiAnI2M4YzBkMScsXG4gIDIwMDogJyNhZGEyYmEnLFxuICAzMDA6ICcjODg3ODliJyxcbiAgNDAwOiAnIzcxNWQ4NycsXG4gIDUwMDogJyM0ZDM1NjknLFxuICA2MDA6ICcjNDYzMDYwJyxcbiAgNzAwOiAnIzM3MjY0YicsXG4gIDgwMDogJyMyYTFkM2EnLFxuICA5MDA6ICcjMjAxNjJjJyxcbn0gYXMgY29uc3RcblxuZXhwb3J0IGNvbnN0IE1BSUFfSUFfQ09MT1JTID0ge1xuICBibHVlOiBCTFVFX0lBX0NPTE9SUyxcbiAgdmlvbGV0OiBWSU9MRVRfSUFfQ09MT1JTLFxufSBhcyBjb25zdFxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQU1BLGFBQWEsR0FBRztFQUMzQkMsT0FBTyxFQUFFLFNBQVM7RUFDbEJDLEtBQUssRUFBRSxTQUFTO0VBQ2hCQyxVQUFVLEVBQUUsU0FBUztFQUNyQkMsSUFBSSxFQUFFO0FBQ1IsQ0FBQztBQUVELE9BQU8sSUFBTUMsY0FBYyxHQUFHO0VBQzVCLEVBQUUsRUFBRSxTQUFTO0VBQ2IsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRSxTQUFTO0VBQ2QsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRSxTQUFTO0VBQ2QsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRTtBQUNQLENBQVU7QUFFVixPQUFPLElBQU1DLGdCQUFnQixHQUFHO0VBQzlCLEVBQUUsRUFBRSxTQUFTO0VBQ2IsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRSxTQUFTO0VBQ2QsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRSxTQUFTO0VBQ2QsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRTtBQUNQLENBQVU7QUFFVixPQUFPLElBQU1DLGNBQWMsR0FBRztFQUM1QkMsSUFBSSxFQUFFSCxjQUFjO0VBQ3BCSSxNQUFNLEVBQUVIO0FBQ1YsQ0FBVSIsImlnbm9yZUxpc3QiOltdfQ==
35
+
36
+ /**
37
+ * Tokens del menú + y chip del input MAIA (Figma / brand).
38
+ * Preferir además `colors` de @projectcor/theme donde haya equivalente.
39
+ */
40
+ export var MAIA_CHAT_INPUT_UI = {
41
+ menuIcon: '#4d4d4d',
42
+ textBrandBold: '#00578c',
43
+ chipSurfaceHover: '#f2f2f2',
44
+ /** Alineado con theme `grey[300]` (icono cerrar chip) */
45
+ chipCloseIcon: '#a4adb5'
46
+ };
47
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJHTE9CQUxfQ09MT1JTIiwicHJpbWFyeSIsImxpZ2h0IiwiYmFja2dyb3VuZCIsImRhcmsiLCJCTFVFX0lBX0NPTE9SUyIsIlZJT0xFVF9JQV9DT0xPUlMiLCJNQUlBX0lBX0NPTE9SUyIsImJsdWUiLCJ2aW9sZXQiLCJNQUlBX0NIQVRfSU5QVVRfVUkiLCJtZW51SWNvbiIsInRleHRCcmFuZEJvbGQiLCJjaGlwU3VyZmFjZUhvdmVyIiwiY2hpcENsb3NlSWNvbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdHlsZXMvY29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBHTE9CQUxfQ09MT1JTID0ge1xuICBwcmltYXJ5OiAnIzg3NDBiZicsXG4gIGxpZ2h0OiAnI0Y3RjBGQycsXG4gIGJhY2tncm91bmQ6ICcjRUJEQkY4JyxcbiAgZGFyazogJyM1OTI5ODQnLFxufVxuXG5leHBvcnQgY29uc3QgQkxVRV9JQV9DT0xPUlMgPSB7XG4gIDUwOiAnI2VhZjFmOCcsXG4gIDEwMDogJyNiZWQ1ZWInLFxuICAyMDA6ICcjOWVjMGUxJyxcbiAgMzAwOiAnIzcyYTRkMycsXG4gIDQwMDogJyM1NzkyY2EnLFxuICA1MDA6ICcjMmQ3N2JkJyxcbiAgNjAwOiAnIzI5NmNhYycsXG4gIDcwMDogJyMyMDU0ODYnLFxuICA4MDA6ICcjMTk0MTY4JyxcbiAgOTAwOiAnIzEzMzI0ZicsXG59IGFzIGNvbnN0XG5cbmV4cG9ydCBjb25zdCBWSU9MRVRfSUFfQ09MT1JTID0ge1xuICA1MDogJyNlZGViZjAnLFxuICAxMDA6ICcjYzhjMGQxJyxcbiAgMjAwOiAnI2FkYTJiYScsXG4gIDMwMDogJyM4ODc4OWInLFxuICA0MDA6ICcjNzE1ZDg3JyxcbiAgNTAwOiAnIzRkMzU2OScsXG4gIDYwMDogJyM0NjMwNjAnLFxuICA3MDA6ICcjMzcyNjRiJyxcbiAgODAwOiAnIzJhMWQzYScsXG4gIDkwMDogJyMyMDE2MmMnLFxufSBhcyBjb25zdFxuXG5leHBvcnQgY29uc3QgTUFJQV9JQV9DT0xPUlMgPSB7XG4gIGJsdWU6IEJMVUVfSUFfQ09MT1JTLFxuICB2aW9sZXQ6IFZJT0xFVF9JQV9DT0xPUlMsXG59IGFzIGNvbnN0XG5cbi8qKlxuICogVG9rZW5zIGRlbCBtZW7DuiArIHkgY2hpcCBkZWwgaW5wdXQgTUFJQSAoRmlnbWEgLyBicmFuZCkuXG4gKiBQcmVmZXJpciBhZGVtw6FzIGBjb2xvcnNgIGRlIEBwcm9qZWN0Y29yL3RoZW1lIGRvbmRlIGhheWEgZXF1aXZhbGVudGUuXG4gKi9cbmV4cG9ydCBjb25zdCBNQUlBX0NIQVRfSU5QVVRfVUkgPSB7XG4gIG1lbnVJY29uOiAnIzRkNGQ0ZCcsXG4gIHRleHRCcmFuZEJvbGQ6ICcjMDA1NzhjJyxcbiAgY2hpcFN1cmZhY2VIb3ZlcjogJyNmMmYyZjInLFxuICAvKiogQWxpbmVhZG8gY29uIHRoZW1lIGBncmV5WzMwMF1gIChpY29ubyBjZXJyYXIgY2hpcCkgKi9cbiAgY2hpcENsb3NlSWNvbjogJyNhNGFkYjUnLFxufSBhcyBjb25zdFxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQU1BLGFBQWEsR0FBRztFQUMzQkMsT0FBTyxFQUFFLFNBQVM7RUFDbEJDLEtBQUssRUFBRSxTQUFTO0VBQ2hCQyxVQUFVLEVBQUUsU0FBUztFQUNyQkMsSUFBSSxFQUFFO0FBQ1IsQ0FBQztBQUVELE9BQU8sSUFBTUMsY0FBYyxHQUFHO0VBQzVCLEVBQUUsRUFBRSxTQUFTO0VBQ2IsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRSxTQUFTO0VBQ2QsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRSxTQUFTO0VBQ2QsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRTtBQUNQLENBQVU7QUFFVixPQUFPLElBQU1DLGdCQUFnQixHQUFHO0VBQzlCLEVBQUUsRUFBRSxTQUFTO0VBQ2IsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRSxTQUFTO0VBQ2QsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRSxTQUFTO0VBQ2QsR0FBRyxFQUFFLFNBQVM7RUFDZCxHQUFHLEVBQUUsU0FBUztFQUNkLEdBQUcsRUFBRTtBQUNQLENBQVU7QUFFVixPQUFPLElBQU1DLGNBQWMsR0FBRztFQUM1QkMsSUFBSSxFQUFFSCxjQUFjO0VBQ3BCSSxNQUFNLEVBQUVIO0FBQ1YsQ0FBVTs7QUFFVjtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU8sSUFBTUksa0JBQWtCLEdBQUc7RUFDaENDLFFBQVEsRUFBRSxTQUFTO0VBQ25CQyxhQUFhLEVBQUUsU0FBUztFQUN4QkMsZ0JBQWdCLEVBQUUsU0FBUztFQUMzQjtFQUNBQyxhQUFhLEVBQUU7QUFDakIsQ0FBVSIsImlnbm9yZUxpc3QiOltdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@projectcor/maia-components",
3
- "version": "2.11.37-3",
3
+ "version": "2.11.37-4",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "repository": {