@merchi/product-form 1.19.49 → 1.19.51

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.
@@ -86,9 +86,15 @@ export function ProductDraftsCta() {
86
86
  _useState0 = _slicedToArray(_useState9, 2),
87
87
  uploads = _useState0[0],
88
88
  setUploads = _useState0[1];
89
+ var _useState1 = useState(false),
90
+ _useState10 = _slicedToArray(_useState1, 2),
91
+ hasMounted = _useState10[0],
92
+ setHasMounted = _useState10[1];
89
93
  var allowed = productAllowsClientDesign(product);
90
94
  var formValues = hookForm.watch ? hookForm.watch() : ((_hookForm$getValues = hookForm.getValues) === null || _hookForm$getValues === void 0 ? void 0 : _hookForm$getValues.call(hookForm)) || {};
91
- var drafts = typeof window !== 'undefined' && product !== null && product !== void 0 && product.id ? loadDrafts(product.id) : [];
95
+ // Keep the first client render identical to SSR. Saved artwork is browser-only
96
+ // state and must not add the saved-draft status until hydration has completed.
97
+ var drafts = hasMounted && product !== null && product !== void 0 && product.id ? loadDrafts(product.id) : [];
92
98
  var status = useMemo(function () {
93
99
  return completeGroupCount(product, formValues, drafts);
94
100
  }, [product, formValues, drafts, draftRevision]);
@@ -110,6 +116,7 @@ export function ProductDraftsCta() {
110
116
  });
111
117
  }, [apiUrl, formValues, product]);
112
118
  React.useEffect(function () {
119
+ setHasMounted(true);
113
120
  if (!(product !== null && product !== void 0 && product.id)) return;
114
121
  clearOtherProductDrafts(product.id);
115
122
  setArtworkPath(loadArtworkPath(product.id));
@@ -317,10 +324,10 @@ export default function ProductDraftsHost() {
317
324
  var missing = useMemo(function () {
318
325
  return missingDesignSlots(product, formValues, drafts);
319
326
  }, [product, formValues, drafts]);
320
- var _useState1 = useState(null),
321
- _useState10 = _slicedToArray(_useState1, 2),
322
- ctaAnchor = _useState10[0],
323
- setCtaAnchor = _useState10[1];
327
+ var _useState11 = useState(null),
328
+ _useState12 = _slicedToArray(_useState11, 2),
329
+ ctaAnchor = _useState12[0],
330
+ setCtaAnchor = _useState12[1];
324
331
  useLayoutEffect(function () {
325
332
  if (!allowed || isProductLeadForm(product)) return;
326
333
  if (document.querySelector('.merchi-product-draft-cta')) return;
@@ -364,4 +371,4 @@ export default function ProductDraftsHost() {
364
371
  }), document.body) : null]
365
372
  });
366
373
  }
367
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJyIiwiX2FycmF5V2l0aG91dEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVNwcmVhZCIsIlR5cGVFcnJvciIsIkFycmF5IiwiZnJvbSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIm93bktleXMiLCJlIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiX3RvUHJvcGVydHlLZXkiLCJ2YWx1ZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiaSIsIl90b1ByaW1pdGl2ZSIsInRvUHJpbWl0aXZlIiwiY2FsbCIsIlN0cmluZyIsIk51bWJlciIsIl9zbGljZWRUb0FycmF5IiwiX2FycmF5V2l0aEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheUxpbWl0IiwiX25vbkl0ZXJhYmxlUmVzdCIsImEiLCJ0b1N0cmluZyIsInNsaWNlIiwibmFtZSIsInRlc3QiLCJuIiwibCIsInUiLCJmIiwibmV4dCIsImRvbmUiLCJSZWFjdCIsInVzZUxheW91dEVmZmVjdCIsInVzZU1lbW8iLCJ1c2VTdGF0ZSIsImNyZWF0ZVBvcnRhbCIsIkZhQ2hldnJvbkRvd24iLCJGYURvd25sb2FkIiwiRmFQYWludEJydXNoIiwiRmFUaW1lcyIsInVzZU1lcmNoaUZvcm1Db250ZXh0IiwiRHJvcHpvbmVJbnB1dCIsInRlbXBsYXRlRG93bmxvYWRIcmVmIiwidGVtcGxhdGVJbWFnZVNvdXJjZXMiLCJkb3dubG9hZGFibGVEcmFmdFRlbXBsYXRlcyIsInByb2R1Y3RBbGxvd3NDbGllbnREZXNpZ24iLCJpc1Byb2R1Y3RMZWFkRm9ybSIsImNsZWFyRHJhZnRXb3JrIiwiY2xlYXJPdGhlclByb2R1Y3REcmFmdHMiLCJjb21wbGV0ZUdyb3VwQ291bnQiLCJsb2FkQXJ0d29ya1BhdGgiLCJsb2FkRHJhZnRzIiwibG9hZFRlbXBsYXRlVXBsb2FkcyIsIm1pc3NpbmdEZXNpZ25TbG90cyIsInNhdmVBcnR3b3JrUGF0aCIsInNhdmVEZXNpZ25NZXRob2QiLCJzYXZlVGVtcGxhdGVVcGxvYWRzIiwiRHJhZnRBcHByb3ZlUGFuZWwiLCJEcmFmdERlc2lnbmVyU2hlZXQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJUZW1wbGF0ZUF2YXRhciIsIl9yZWYiLCJzcmMiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiZmFpbGVkIiwic2V0RmFpbGVkIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJ0b1VwcGVyQ2FzZSIsImFsdCIsIm9uRXJyb3IiLCJmaW5kQ2hlY2tvdXRCdXR0b25zRWwiLCJtYXJrZWQiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJIVE1MRWxlbWVudCIsIm5hbWVkIiwic3VibWl0IiwicGFyZW50RWxlbWVudCIsIlByb2R1Y3REcmFmdHNDdGEiLCJfaG9va0Zvcm0kZ2V0VmFsdWVzIiwiX3VzZU1lcmNoaUZvcm1Db250ZXh0IiwiYXBpVXJsIiwiY2xhc3NOYW1lRHJhZnRDdGEiLCJob29rRm9ybSIsImpvYiIsInByb2R1Y3QiLCJzZXRJc0RyYWZ0RGVzaWduZXJPcGVuIiwic2V0Sm9iIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJkcmFmdFJldmlzaW9uIiwic2V0RHJhZnRSZXZpc2lvbiIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiYXJ0d29ya1BhdGgiLCJzZXRBcnR3b3JrUGF0aCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwidGVtcGxhdGVzT3BlbiIsInNldFRlbXBsYXRlc09wZW4iLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMCIsInVwbG9hZHMiLCJzZXRVcGxvYWRzIiwiYWxsb3dlZCIsImZvcm1WYWx1ZXMiLCJ3YXRjaCIsImdldFZhbHVlcyIsImRyYWZ0cyIsIndpbmRvdyIsImlkIiwic3RhdHVzIiwiaGFzU2F2ZWQiLCJjb21wbGV0ZSIsImRvd25sb2FkcyIsInRlbXBsYXRlcyIsIm1hcCIsInRlbXBsYXRlIiwiaW5kZXgiLCJfdGVtcGxhdGUkZmlsZSIsIl90ZW1wbGF0ZSRpZCIsIl90ZW1wbGF0ZSRmaWxlMiIsImZpbGUiLCJ0cmltIiwiY29uY2F0Iiwia2V5IiwiaHJlZiIsInByZXZpZXciLCJmaWxlTmFtZSIsIml0ZW0iLCJ1c2VFZmZlY3QiLCJjaG9vc2VQYXRoIiwicGF0aCIsInN0YXJ0QWdhaW4iLCJjb25maXJtZWQiLCJjb25maXJtIiwib3duRHJhZnRzIiwiY2xpZW50RmlsZXMiLCJvcGVuRGVzaWduZXIiLCJ0b2dnbGVUZW1wbGF0ZXMiLCJvcGVuIiwicmVtZW1iZXJVcGxvYWRzIiwiYWRkVXBsb2FkIiwicHJvZHVjdElkIiwiY3VycmVudCIsInZpZXdVcmwiLCJjYWNoZWRWaWV3VXJsIiwiZG93bmxvYWRVcmwiLCJyZW1vdmVVcGxvYWQiLCJyb2xlIiwidHlwZSIsIm9uQ2xpY2siLCJ0b3RhbCIsImRvd25sb2FkIiwidGFyZ2V0IiwicmVsIiwibXVsdGlwbGUiLCJhY2NlcHQiLCJwbGFjZWhvbGRlciIsIm9uVXBsb2FkU3VjY2VzcyIsIlByb2R1Y3REcmFmdHNIb3N0IiwiX2hvb2tGb3JtJGdldFZhbHVlczIiLCJfbWlzc2luZyQiLCJfdXNlTWVyY2hpRm9ybUNvbnRleHQyIiwiaXNEcmFmdERlc2lnbmVyT3BlbiIsImlzRHJhZnRNb2RhbE9wZW4iLCJjb25zdW1lUGVuZGluZ0NoZWNrb3V0IiwibWlzc2luZyIsIl91c2VTdGF0ZTEiLCJfdXNlU3RhdGUxMCIsImN0YUFuY2hvciIsInNldEN0YUFuY2hvciIsImJ1dHRvbnMiLCJzbG90IiwiY3JlYXRlRWxlbWVudCIsInNldEF0dHJpYnV0ZSIsImluc2VydEJlZm9yZSIsInJlbW92ZSIsImhhbmRsZVNhdmVkIiwicGVuZGluZyIsIkJvb2xlYW4iLCJpbml0aWFsR3JvdXBJbmRleCIsImdyb3VwSW5kZXgiLCJvbkNsb3NlIiwib25TYXZlZCIsImJvZHkiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9kcmFmdHMvUHJvZHVjdERyYWZ0c0hvc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUxheW91dEVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IHsgRmFDaGV2cm9uRG93biwgRmFEb3dubG9hZCwgRmFQYWludEJydXNoLCBGYVRpbWVzIH0gZnJvbSAncmVhY3QtaWNvbnMvZmEnO1xuaW1wb3J0IHsgdXNlTWVyY2hpRm9ybUNvbnRleHQgfSBmcm9tICcuLi8uLi9jb250ZXh0L01lcmNoaVByb2R1Y3RGb3JtUHJvdmlkZXInO1xuaW1wb3J0IERyb3B6b25lSW5wdXQgZnJvbSAnLi4vRHJvcHpvbmVJbnB1dCc7XG5pbXBvcnQgeyB0ZW1wbGF0ZURvd25sb2FkSHJlZiwgdGVtcGxhdGVJbWFnZVNvdXJjZXMgfSBmcm9tICcuLi8uLi91dGlscy9kcmFmdEV4cG9ydCc7XG5pbXBvcnQge1xuICBkb3dubG9hZGFibGVEcmFmdFRlbXBsYXRlcyxcbiAgcHJvZHVjdEFsbG93c0NsaWVudERlc2lnbixcbn0gZnJvbSAnLi4vLi4vdXRpbHMvZHJhZnRUZW1wbGF0ZXMnO1xuaW1wb3J0IHsgaXNQcm9kdWN0TGVhZEZvcm0gfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQge1xuICBBcnR3b3JrUGF0aCxcbiAgVGVtcGxhdGVVcGxvYWQsXG4gIGNsZWFyRHJhZnRXb3JrLFxuICBjbGVhck90aGVyUHJvZHVjdERyYWZ0cyxcbiAgY29tcGxldGVHcm91cENvdW50LFxuICBsb2FkQXJ0d29ya1BhdGgsXG4gIGxvYWREcmFmdHMsXG4gIGxvYWRUZW1wbGF0ZVVwbG9hZHMsXG4gIG1pc3NpbmdEZXNpZ25TbG90cyxcbiAgc2F2ZUFydHdvcmtQYXRoLFxuICBzYXZlRGVzaWduTWV0aG9kLFxuICBzYXZlVGVtcGxhdGVVcGxvYWRzLFxufSBmcm9tICcuLi8uLi91dGlscy9kcmFmdFN0b3JhZ2UnO1xuaW1wb3J0IERyYWZ0QXBwcm92ZVBhbmVsIGZyb20gJy4vRHJhZnRBcHByb3ZlUGFuZWwnO1xuaW1wb3J0IERyYWZ0RGVzaWduZXJTaGVldCBmcm9tICcuL0RyYWZ0RGVzaWduZXJTaGVldCc7XG5cbmZ1bmN0aW9uIFRlbXBsYXRlQXZhdGFyKHsgc3JjLCBuYW1lIH06IHsgc3JjOiBzdHJpbmc7IG5hbWU6IHN0cmluZyB9KSB7XG4gIGNvbnN0IFtmYWlsZWQsIHNldEZhaWxlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGlmICghc3JjIHx8IGZhaWxlZCkge1xuICAgIHJldHVybiAoXG4gICAgICA8c3BhbiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXRlbXBsYXRlLWF2YXRhciBpcy1lbXB0eScgYXJpYS1oaWRkZW49J3RydWUnPlxuICAgICAgICB7bmFtZS5zbGljZSgwLCAxKS50b1VwcGVyQ2FzZSgpfVxuICAgICAgPC9zcGFuPlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIChcbiAgICA8aW1nXG4gICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXRlbXBsYXRlLWF2YXRhcidcbiAgICAgIHNyYz17c3JjfVxuICAgICAgYWx0PScnXG4gICAgICBvbkVycm9yPXsoKSA9PiBzZXRGYWlsZWQodHJ1ZSl9XG4gICAgLz5cbiAgKTtcbn1cblxuZnVuY3Rpb24gZmluZENoZWNrb3V0QnV0dG9uc0VsKCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gIGNvbnN0IG1hcmtlZCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW1lcmNoaS1jaGVja291dC1idXR0b25zXScpO1xuICBpZiAobWFya2VkIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHJldHVybiBtYXJrZWQ7XG4gIGNvbnN0IG5hbWVkID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAnLm1lcmNoaS1wcm9kdWN0LWJ1dHRvbnMtc3VibWl0LWNvbnRhaW5lciwgLm1lcmNoaS1hY3Rpb24tYnV0dG9ucy1jb250YWluZXInLFxuICApO1xuICBpZiAobmFtZWQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkgcmV0dXJuIG5hbWVkO1xuICBjb25zdCBzdWJtaXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcubWVyY2hpLWVtYmVkLWZvcm1fYnV0dG9uLXN1Ym1pdCcpO1xuICByZXR1cm4gc3VibWl0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgPyBzdWJtaXQucGFyZW50RWxlbWVudCA6IG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBQcm9kdWN0RHJhZnRzQ3RhKCkge1xuICBjb25zdCB7XG4gICAgYXBpVXJsLFxuICAgIGNsYXNzTmFtZURyYWZ0Q3RhLFxuICAgIGhvb2tGb3JtLFxuICAgIGpvYixcbiAgICBwcm9kdWN0LFxuICAgIHNldElzRHJhZnREZXNpZ25lck9wZW4sXG4gICAgc2V0Sm9iLFxuICB9ID0gdXNlTWVyY2hpRm9ybUNvbnRleHQoKTtcbiAgY29uc3QgW2RyYWZ0UmV2aXNpb24sIHNldERyYWZ0UmV2aXNpb25dID0gdXNlU3RhdGUoMCk7XG4gIGNvbnN0IFthcnR3b3JrUGF0aCwgc2V0QXJ0d29ya1BhdGhdID0gdXNlU3RhdGU8QXJ0d29ya1BhdGg+KCdzZWxmJyk7XG4gIGNvbnN0IFt0ZW1wbGF0ZXNPcGVuLCBzZXRUZW1wbGF0ZXNPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW3VwbG9hZHMsIHNldFVwbG9hZHNdID0gdXNlU3RhdGU8VGVtcGxhdGVVcGxvYWRbXT4oW10pO1xuXG4gIGNvbnN0IGFsbG93ZWQgPSBwcm9kdWN0QWxsb3dzQ2xpZW50RGVzaWduKHByb2R1Y3QpO1xuICBjb25zdCBmb3JtVmFsdWVzID0gaG9va0Zvcm0ud2F0Y2ggPyBob29rRm9ybS53YXRjaCgpIDogaG9va0Zvcm0uZ2V0VmFsdWVzPy4oKSB8fCB7fTtcbiAgY29uc3QgZHJhZnRzID0gdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgcHJvZHVjdD8uaWRcbiAgICA/IGxvYWREcmFmdHMocHJvZHVjdC5pZClcbiAgICA6IFtdO1xuICBjb25zdCBzdGF0dXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbXBsZXRlR3JvdXBDb3VudChwcm9kdWN0LCBmb3JtVmFsdWVzLCBkcmFmdHMpLFxuICAgIFtwcm9kdWN0LCBmb3JtVmFsdWVzLCBkcmFmdHMsIGRyYWZ0UmV2aXNpb25dLFxuICApO1xuICBjb25zdCBoYXNTYXZlZCA9IHN0YXR1cy5jb21wbGV0ZSA+IDA7XG4gIGNvbnN0IGRvd25sb2FkcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IHRlbXBsYXRlcyA9IGRvd25sb2FkYWJsZURyYWZ0VGVtcGxhdGVzKHByb2R1Y3QsIGZvcm1WYWx1ZXMpO1xuICAgIHJldHVybiB0ZW1wbGF0ZXNcbiAgICAgIC5tYXAoKHRlbXBsYXRlLCBpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCBuYW1lID0gU3RyaW5nKHRlbXBsYXRlPy5uYW1lIHx8IHRlbXBsYXRlPy5maWxlPy5uYW1lIHx8ICcnKS50cmltKClcbiAgICAgICAgICB8fCBgVGVtcGxhdGUgJHtpbmRleCArIDF9YDtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBrZXk6IHRlbXBsYXRlPy5pZCA/PyBpbmRleCxcbiAgICAgICAgICBocmVmOiB0ZW1wbGF0ZURvd25sb2FkSHJlZih0ZW1wbGF0ZSwgYXBpVXJsKSxcbiAgICAgICAgICBwcmV2aWV3OiB0ZW1wbGF0ZUltYWdlU291cmNlcyh0ZW1wbGF0ZSwgYXBpVXJsKVswXSB8fCAnJyxcbiAgICAgICAgICBuYW1lLFxuICAgICAgICAgIGZpbGVOYW1lOiBTdHJpbmcodGVtcGxhdGU/LmZpbGU/Lm5hbWUgfHwgJycpLnRyaW0oKSB8fCBuYW1lLFxuICAgICAgICB9O1xuICAgICAgfSlcbiAgICAgIC5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uaHJlZik7XG4gIH0sIFthcGlVcmwsIGZvcm1WYWx1ZXMsIHByb2R1Y3RdKTtcblxuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghcHJvZHVjdD8uaWQpIHJldHVybjtcbiAgICBjbGVhck90aGVyUHJvZHVjdERyYWZ0cyhwcm9kdWN0LmlkKTtcbiAgICBzZXRBcnR3b3JrUGF0aChsb2FkQXJ0d29ya1BhdGgocHJvZHVjdC5pZCkpO1xuICAgIHNldFVwbG9hZHMobG9hZFRlbXBsYXRlVXBsb2Fkcyhwcm9kdWN0LmlkKSk7XG4gICAgc2V0RHJhZnRSZXZpc2lvbigodmFsdWUpID0+IHZhbHVlICsgMSk7XG4gIH0sIFtwcm9kdWN0Py5pZF0pO1xuXG4gIGlmICghYWxsb3dlZCB8fCBpc1Byb2R1Y3RMZWFkRm9ybShwcm9kdWN0KSkgcmV0dXJuIG51bGw7XG5cbiAgZnVuY3Rpb24gY2hvb3NlUGF0aChwYXRoOiBBcnR3b3JrUGF0aCkge1xuICAgIHNldEFydHdvcmtQYXRoKHBhdGgpO1xuICAgIGlmIChwcm9kdWN0Py5pZCkgc2F2ZUFydHdvcmtQYXRoKHByb2R1Y3QuaWQsIHBhdGgpO1xuICB9XG5cbiAgZnVuY3Rpb24gc3RhcnRBZ2FpbigpIHtcbiAgICBpZiAoIXByb2R1Y3Q/LmlkKSByZXR1cm47XG4gICAgY29uc3QgY29uZmlybWVkID0gd2luZG93LmNvbmZpcm0oXG4gICAgICAnVGhpcyB3aWxsIGNsZWFyIHlvdXIgc2F2ZWQgYXJ0d29yay4gU3RhcnQgYWdhaW4gZnJvbSBzY3JhdGNoPycsXG4gICAgKTtcbiAgICBpZiAoIWNvbmZpcm1lZCkgcmV0dXJuO1xuICAgIGNsZWFyRHJhZnRXb3JrKHByb2R1Y3QuaWQpO1xuICAgIHNldFVwbG9hZHMoW10pO1xuICAgIHNldEpvYih7XG4gICAgICAuLi5qb2IsXG4gICAgICBvd25EcmFmdHM6IFtdLFxuICAgICAgY2xpZW50RmlsZXM6IFtdLFxuICAgIH0pO1xuICAgIHNldERyYWZ0UmV2aXNpb24oKHZhbHVlKSA9PiB2YWx1ZSArIDEpO1xuICAgIGNob29zZVBhdGgoJ3NlbGYnKTtcbiAgICBzYXZlRGVzaWduTWV0aG9kKHByb2R1Y3QuaWQsICdkZXNpZ25lcicpO1xuICAgIHNldFRlbXBsYXRlc09wZW4oZmFsc2UpO1xuICAgIHNldElzRHJhZnREZXNpZ25lck9wZW4odHJ1ZSk7XG4gIH1cblxuICBmdW5jdGlvbiBvcGVuRGVzaWduZXIoKSB7XG4gICAgaWYgKHByb2R1Y3Q/LmlkKSBzYXZlRGVzaWduTWV0aG9kKHByb2R1Y3QuaWQsICdkZXNpZ25lcicpO1xuICAgIHNldFRlbXBsYXRlc09wZW4oZmFsc2UpO1xuICAgIHNldElzRHJhZnREZXNpZ25lck9wZW4odHJ1ZSk7XG4gIH1cblxuICBmdW5jdGlvbiB0b2dnbGVUZW1wbGF0ZXMoKSB7XG4gICAgc2V0VGVtcGxhdGVzT3Blbigob3BlbikgPT4ge1xuICAgICAgY29uc3QgbmV4dCA9ICFvcGVuO1xuICAgICAgaWYgKG5leHQgJiYgcHJvZHVjdD8uaWQpIHNhdmVEZXNpZ25NZXRob2QocHJvZHVjdC5pZCwgJ3RlbXBsYXRlcycpO1xuICAgICAgcmV0dXJuIG5leHQ7XG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiByZW1lbWJlclVwbG9hZHMobmV4dDogVGVtcGxhdGVVcGxvYWRbXSkge1xuICAgIHNldFVwbG9hZHMobmV4dCk7XG4gICAgaWYgKHByb2R1Y3Q/LmlkKSB7XG4gICAgICBzYXZlVGVtcGxhdGVVcGxvYWRzKHByb2R1Y3QuaWQsIG5leHQpO1xuICAgICAgc2F2ZURlc2lnbk1ldGhvZChwcm9kdWN0LmlkLCAndGVtcGxhdGVzJyk7XG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gYWRkVXBsb2FkKGZpbGU6IGFueSkge1xuICAgIGlmIChmaWxlPy5pZCA9PSBudWxsIHx8ICFwcm9kdWN0Py5pZCkgcmV0dXJuO1xuICAgIGNvbnN0IHByb2R1Y3RJZCA9IHByb2R1Y3QuaWQ7XG4gICAgc2V0VXBsb2FkcygoY3VycmVudCkgPT4ge1xuICAgICAgY29uc3QgbmV4dCA9IFtcbiAgICAgICAgLi4uY3VycmVudC5maWx0ZXIoKGl0ZW0pID0+IFN0cmluZyhpdGVtLmlkKSAhPT0gU3RyaW5nKGZpbGUuaWQpKSxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiBmaWxlLmlkLFxuICAgICAgICAgIG5hbWU6IFN0cmluZyhmaWxlLm5hbWUgfHwgJ1VwbG9hZCcpLFxuICAgICAgICAgIHZpZXdVcmw6IGZpbGUudmlld1VybCB8fCBmaWxlLmNhY2hlZFZpZXdVcmwgfHwgJycsXG4gICAgICAgICAgZG93bmxvYWRVcmw6IGZpbGUuZG93bmxvYWRVcmwgfHwgJycsXG4gICAgICAgIH0sXG4gICAgICBdO1xuICAgICAgc2F2ZVRlbXBsYXRlVXBsb2Fkcyhwcm9kdWN0SWQsIG5leHQpO1xuICAgICAgc2F2ZURlc2lnbk1ldGhvZChwcm9kdWN0SWQsICd0ZW1wbGF0ZXMnKTtcbiAgICAgIHJldHVybiBuZXh0O1xuICAgIH0pO1xuICB9XG5cbiAgZnVuY3Rpb24gcmVtb3ZlVXBsb2FkKGlkOiBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICByZW1lbWJlclVwbG9hZHModXBsb2Fkcy5maWx0ZXIoKGl0ZW0pID0+IFN0cmluZyhpdGVtLmlkKSAhPT0gU3RyaW5nKGlkKSkpO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lRHJhZnRDdGEgfHwgJyd9IG1lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YWB9PlxuICAgICAgPHN0cm9uZyBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1oZWFkaW5nJz5BcnR3b3JrPC9zdHJvbmc+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLXRhYnMnIHJvbGU9J3RhYmxpc3QnIGFyaWEtbGFiZWw9J0FydHdvcmsgb3B0aW9ucyc+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPSdidXR0b24nXG4gICAgICAgICAgcm9sZT0ndGFiJ1xuICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2FydHdvcmtQYXRoID09PSAnc2VsZid9XG4gICAgICAgICAgY2xhc3NOYW1lPXtgbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLXRhYiR7YXJ0d29ya1BhdGggPT09ICdzZWxmJyA/ICcgaXMtYWN0aXZlJyA6ICcnfWB9XG4gICAgICAgICAgb25DbGljaz17KCkgPT4gY2hvb3NlUGF0aCgnc2VsZicpfVxuICAgICAgICA+XG4gICAgICAgICAgRGVzaWduIG15c2VsZlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9J2J1dHRvbidcbiAgICAgICAgICByb2xlPSd0YWInXG4gICAgICAgICAgYXJpYS1zZWxlY3RlZD17YXJ0d29ya1BhdGggPT09ICdzZXJ2aWNlJ31cbiAgICAgICAgICBjbGFzc05hbWU9e2BtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEtdGFiJHthcnR3b3JrUGF0aCA9PT0gJ3NlcnZpY2UnID8gJyBpcy1hY3RpdmUnIDogJyd9YH1cbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBjaG9vc2VQYXRoKCdzZXJ2aWNlJyl9XG4gICAgICAgID5cbiAgICAgICAgICBGcmVlIGRlc2lnbiBzZXJ2aWNlXG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICB7YXJ0d29ya1BhdGggPT09ICdzZWxmJyA/IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1wYW5lbCcgcm9sZT0ndGFicGFuZWwnPlxuICAgICAgICAgIHtoYXNTYXZlZCA/IChcbiAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICB7c3RhdHVzLnRvdGFsID09PSAxXG4gICAgICAgICAgICAgICAgPyAnRHJhZnQgc2F2ZWQnXG4gICAgICAgICAgICAgICAgOiBgJHtzdGF0dXMuY29tcGxldGV9IG9mICR7c3RhdHVzLnRvdGFsfSBncm91cHMgc2F2ZWRgfVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEtY2hvaWNlcyc+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIHR5cGU9J2J1dHRvbidcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEtYnRuJ1xuICAgICAgICAgICAgICBvbkNsaWNrPXtvcGVuRGVzaWduZXJ9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxGYVBhaW50QnJ1c2ggLz5cbiAgICAgICAgICAgICAgT3BlbiBEZXNpZ25lclxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIHR5cGU9J2J1dHRvbidcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLWRvd25sb2FkJHt0ZW1wbGF0ZXNPcGVuID8gJyBpcy1vcGVuJyA6ICcnfWB9XG4gICAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9e3RlbXBsYXRlc09wZW59XG4gICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9J21lcmNoaS10ZW1wbGF0ZS1kb3dubG9hZHMnXG4gICAgICAgICAgICAgIG9uQ2xpY2s9e3RvZ2dsZVRlbXBsYXRlc31cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEZhRG93bmxvYWQgLz5cbiAgICAgICAgICAgICAgRG93bmxvYWQgdGVtcGxhdGVzXG4gICAgICAgICAgICAgIDxGYUNoZXZyb25Eb3duIC8+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB7dGVtcGxhdGVzT3BlbiA/IChcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgaWQ9J21lcmNoaS10ZW1wbGF0ZS1kb3dubG9hZHMnXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtdGVtcGxhdGUtbWVudSdcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHA+RG93bmxvYWQgdGhlIHRlbXBsYXRlcywgZWRpdCB0aGVtIGFuZCB0aGVuIHJldXBsb2FkIHRoZW08L3A+XG4gICAgICAgICAgICAgIHtkb3dubG9hZHMubGVuZ3RoID8gKFxuICAgICAgICAgICAgICAgIDx1bCBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXRlbXBsYXRlLWxpc3QnPlxuICAgICAgICAgICAgICAgICAge2Rvd25sb2Fkcy5tYXAoKGl0ZW0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgPGxpIGtleT17aXRlbS5rZXl9PlxuICAgICAgICAgICAgICAgICAgICAgIDxUZW1wbGF0ZUF2YXRhciBzcmM9e2l0ZW0ucHJldmlld30gbmFtZT17aXRlbS5uYW1lfSAvPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtdGVtcGxhdGUtbmFtZSc+e2l0ZW0ubmFtZX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtdGVtcGxhdGUtZG93bmxvYWQnXG4gICAgICAgICAgICAgICAgICAgICAgICBocmVmPXtpdGVtLmhyZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICBkb3dubG9hZD17aXRlbS5maWxlTmFtZSB8fCB0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PSdfYmxhbmsnXG4gICAgICAgICAgICAgICAgICAgICAgICByZWw9J25vb3BlbmVyIG5vcmVmZXJyZXInXG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEZhRG93bmxvYWQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIERvd25sb2FkXG4gICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3Bhbj5ObyB0ZW1wbGF0ZXMgYXJlIGF2YWlsYWJsZSB0byBkb3dubG9hZC48L3NwYW4+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC10ZW1wbGF0ZS1kcm9wJz5cbiAgICAgICAgICAgICAgICA8RHJvcHpvbmVJbnB1dFxuICAgICAgICAgICAgICAgICAgbXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgIGFjY2VwdD0nLmpwZywuanBlZywucG5nLC5naWYsLnBkZiwuc3ZnLC5haSwuZXBzJ1xuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9J1VwbG9hZCBlZGl0ZWQgdGVtcGxhdGVzJ1xuICAgICAgICAgICAgICAgICAgb25VcGxvYWRTdWNjZXNzPXthZGRVcGxvYWR9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIHt1cGxvYWRzLmxlbmd0aCA/IChcbiAgICAgICAgICAgICAgICA8dWwgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC11cGxvYWQtbGlzdCc+XG4gICAgICAgICAgICAgICAgICB7dXBsb2Fkcy5tYXAoKGZpbGUpID0+IChcbiAgICAgICAgICAgICAgICAgICAgPGxpIGtleT17ZmlsZS5pZH0+XG4gICAgICAgICAgICAgICAgICAgICAgPFRlbXBsYXRlQXZhdGFyIHNyYz17ZmlsZS52aWV3VXJsIHx8ICcnfSBuYW1lPXtmaWxlLm5hbWV9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC10ZW1wbGF0ZS1uYW1lJz57ZmlsZS5uYW1lfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPSdidXR0b24nXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXVwbG9hZC1yZW1vdmUnXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPXtgUmVtb3ZlICR7ZmlsZS5uYW1lfWB9XG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiByZW1vdmVVcGxvYWQoZmlsZS5pZCl9XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEZhVGltZXMgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAge2hhc1NhdmVkID8gKFxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPSdidXR0b24nXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLXJlc2V0J1xuICAgICAgICAgICAgICBvbkNsaWNrPXtzdGFydEFnYWlufVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBTdGFydCBhZ2FpblxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKSA6IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1wYW5lbCcgcm9sZT0ndGFicGFuZWwnPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgU2tpcCB0aGUgZGVzaWduZXIgYW5kIGFkZCB0byBjYXJ0LCBidXkgbm93LCBvciBnZXQgYSBxdW90ZS4gV2UmYXBvcztsbCBjcmVhdGUgYSBmcmVlXG4gICAgICAgICAgICBkcmFmdCBmb3IgeW91IGFmdGVyIHRoZSBvcmRlci5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUHJvZHVjdERyYWZ0c0hvc3QoKSB7XG4gIGNvbnN0IHtcbiAgICBob29rRm9ybSxcbiAgICBpc0RyYWZ0RGVzaWduZXJPcGVuLFxuICAgIGlzRHJhZnRNb2RhbE9wZW4sXG4gICAgcHJvZHVjdCxcbiAgICBzZXRJc0RyYWZ0RGVzaWduZXJPcGVuLFxuICAgIGNvbnN1bWVQZW5kaW5nQ2hlY2tvdXQsXG4gIH0gPSB1c2VNZXJjaGlGb3JtQ29udGV4dCgpO1xuXG4gIGNvbnN0IGFsbG93ZWQgPSBwcm9kdWN0QWxsb3dzQ2xpZW50RGVzaWduKHByb2R1Y3QpO1xuICBjb25zdCBmb3JtVmFsdWVzID0gaG9va0Zvcm0ud2F0Y2ggPyBob29rRm9ybS53YXRjaCgpIDogaG9va0Zvcm0uZ2V0VmFsdWVzPy4oKSB8fCB7fTtcbiAgY29uc3QgZHJhZnRzID0gdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgcHJvZHVjdD8uaWRcbiAgICA/IGxvYWREcmFmdHMocHJvZHVjdC5pZClcbiAgICA6IFtdO1xuICBjb25zdCBtaXNzaW5nID0gdXNlTWVtbyhcbiAgICAoKSA9PiBtaXNzaW5nRGVzaWduU2xvdHMocHJvZHVjdCwgZm9ybVZhbHVlcywgZHJhZnRzKSxcbiAgICBbcHJvZHVjdCwgZm9ybVZhbHVlcywgZHJhZnRzXSxcbiAgKTtcbiAgY29uc3QgW2N0YUFuY2hvciwgc2V0Q3RhQW5jaG9yXSA9IHVzZVN0YXRlPEhUTUxFbGVtZW50IHwgbnVsbD4obnVsbCk7XG5cbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWFsbG93ZWQgfHwgaXNQcm9kdWN0TGVhZEZvcm0ocHJvZHVjdCkpIHJldHVybjtcbiAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm1lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YScpKSByZXR1cm47XG5cbiAgICBjb25zdCBidXR0b25zID0gZmluZENoZWNrb3V0QnV0dG9uc0VsKCk7XG4gICAgaWYgKCFidXR0b25zPy5wYXJlbnRFbGVtZW50KSByZXR1cm47XG5cbiAgICBjb25zdCBzbG90ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgc2xvdC5zZXRBdHRyaWJ1dGUoJ2RhdGEtbWVyY2hpLWRyYWZ0LWN0YS1zbG90JywgJ3RydWUnKTtcbiAgICBidXR0b25zLnBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKHNsb3QsIGJ1dHRvbnMpO1xuICAgIHNldEN0YUFuY2hvcihzbG90KTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgc2xvdC5yZW1vdmUoKTtcbiAgICAgIHNldEN0YUFuY2hvcihudWxsKTtcbiAgICB9O1xuICB9LCBbYWxsb3dlZCwgcHJvZHVjdF0pO1xuXG4gIGlmICghYWxsb3dlZCB8fCBpc1Byb2R1Y3RMZWFkRm9ybShwcm9kdWN0KSkgcmV0dXJuIG51bGw7XG5cbiAgZnVuY3Rpb24gaGFuZGxlU2F2ZWQoKSB7XG4gICAgc2V0SXNEcmFmdERlc2lnbmVyT3BlbihmYWxzZSk7XG4gICAgY29uc3QgcGVuZGluZyA9IGNvbnN1bWVQZW5kaW5nQ2hlY2tvdXQ/LigpO1xuICAgIGlmIChwZW5kaW5nKSB7XG4gICAgICBwZW5kaW5nKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge2N0YUFuY2hvciA/IGNyZWF0ZVBvcnRhbCg8UHJvZHVjdERyYWZ0c0N0YSAvPiwgY3RhQW5jaG9yKSA6IG51bGx9XG5cbiAgICAgIDxEcmFmdERlc2lnbmVyU2hlZXRcbiAgICAgICAgb3Blbj17Qm9vbGVhbihpc0RyYWZ0RGVzaWduZXJPcGVuKX1cbiAgICAgICAgaW5pdGlhbEdyb3VwSW5kZXg9e21pc3NpbmdbMF0/Lmdyb3VwSW5kZXggfHwgMH1cbiAgICAgICAgb25DbG9zZT17KCkgPT4gc2V0SXNEcmFmdERlc2lnbmVyT3BlbihmYWxzZSl9XG4gICAgICAgIG9uU2F2ZWQ9e2hhbmRsZVNhdmVkfVxuICAgICAgLz5cblxuICAgICAge2lzRHJhZnRNb2RhbE9wZW4gJiYgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJ1xuICAgICAgICA/IGNyZWF0ZVBvcnRhbChcbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWFwcHJvdmUnXG4gICAgICAgICAgICByb2xlPSdkaWFsb2cnXG4gICAgICAgICAgICBhcmlhLW1vZGFsPSd0cnVlJ1xuICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSdtZXJjaGktcHJvZHVjdC1kcmFmdC1hcHByb3ZlLXRpdGxlJ1xuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1hcHByb3ZlLXBhbmVsJz5cbiAgICAgICAgICAgICAgPERyYWZ0QXBwcm92ZVBhbmVsIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj4sXG4gICAgICAgICAgZG9jdW1lbnQuYm9keSxcbiAgICAgICAgKVxuICAgICAgICA6IG51bGx9XG4gICAgPC8+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
374
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJyIiwiX2FycmF5V2l0aG91dEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVNwcmVhZCIsIlR5cGVFcnJvciIsIkFycmF5IiwiZnJvbSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIm93bktleXMiLCJlIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiX3RvUHJvcGVydHlLZXkiLCJ2YWx1ZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiaSIsIl90b1ByaW1pdGl2ZSIsInRvUHJpbWl0aXZlIiwiY2FsbCIsIlN0cmluZyIsIk51bWJlciIsIl9zbGljZWRUb0FycmF5IiwiX2FycmF5V2l0aEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheUxpbWl0IiwiX25vbkl0ZXJhYmxlUmVzdCIsImEiLCJ0b1N0cmluZyIsInNsaWNlIiwibmFtZSIsInRlc3QiLCJuIiwibCIsInUiLCJmIiwibmV4dCIsImRvbmUiLCJSZWFjdCIsInVzZUxheW91dEVmZmVjdCIsInVzZU1lbW8iLCJ1c2VTdGF0ZSIsImNyZWF0ZVBvcnRhbCIsIkZhQ2hldnJvbkRvd24iLCJGYURvd25sb2FkIiwiRmFQYWludEJydXNoIiwiRmFUaW1lcyIsInVzZU1lcmNoaUZvcm1Db250ZXh0IiwiRHJvcHpvbmVJbnB1dCIsInRlbXBsYXRlRG93bmxvYWRIcmVmIiwidGVtcGxhdGVJbWFnZVNvdXJjZXMiLCJkb3dubG9hZGFibGVEcmFmdFRlbXBsYXRlcyIsInByb2R1Y3RBbGxvd3NDbGllbnREZXNpZ24iLCJpc1Byb2R1Y3RMZWFkRm9ybSIsImNsZWFyRHJhZnRXb3JrIiwiY2xlYXJPdGhlclByb2R1Y3REcmFmdHMiLCJjb21wbGV0ZUdyb3VwQ291bnQiLCJsb2FkQXJ0d29ya1BhdGgiLCJsb2FkRHJhZnRzIiwibG9hZFRlbXBsYXRlVXBsb2FkcyIsIm1pc3NpbmdEZXNpZ25TbG90cyIsInNhdmVBcnR3b3JrUGF0aCIsInNhdmVEZXNpZ25NZXRob2QiLCJzYXZlVGVtcGxhdGVVcGxvYWRzIiwiRHJhZnRBcHByb3ZlUGFuZWwiLCJEcmFmdERlc2lnbmVyU2hlZXQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJUZW1wbGF0ZUF2YXRhciIsIl9yZWYiLCJzcmMiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiZmFpbGVkIiwic2V0RmFpbGVkIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJ0b1VwcGVyQ2FzZSIsImFsdCIsIm9uRXJyb3IiLCJmaW5kQ2hlY2tvdXRCdXR0b25zRWwiLCJtYXJrZWQiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJIVE1MRWxlbWVudCIsIm5hbWVkIiwic3VibWl0IiwicGFyZW50RWxlbWVudCIsIlByb2R1Y3REcmFmdHNDdGEiLCJfaG9va0Zvcm0kZ2V0VmFsdWVzIiwiX3VzZU1lcmNoaUZvcm1Db250ZXh0IiwiYXBpVXJsIiwiY2xhc3NOYW1lRHJhZnRDdGEiLCJob29rRm9ybSIsImpvYiIsInByb2R1Y3QiLCJzZXRJc0RyYWZ0RGVzaWduZXJPcGVuIiwic2V0Sm9iIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJkcmFmdFJldmlzaW9uIiwic2V0RHJhZnRSZXZpc2lvbiIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiYXJ0d29ya1BhdGgiLCJzZXRBcnR3b3JrUGF0aCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwidGVtcGxhdGVzT3BlbiIsInNldFRlbXBsYXRlc09wZW4iLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMCIsInVwbG9hZHMiLCJzZXRVcGxvYWRzIiwiX3VzZVN0YXRlMSIsIl91c2VTdGF0ZTEwIiwiaGFzTW91bnRlZCIsInNldEhhc01vdW50ZWQiLCJhbGxvd2VkIiwiZm9ybVZhbHVlcyIsIndhdGNoIiwiZ2V0VmFsdWVzIiwiZHJhZnRzIiwiaWQiLCJzdGF0dXMiLCJoYXNTYXZlZCIsImNvbXBsZXRlIiwiZG93bmxvYWRzIiwidGVtcGxhdGVzIiwibWFwIiwidGVtcGxhdGUiLCJpbmRleCIsIl90ZW1wbGF0ZSRmaWxlIiwiX3RlbXBsYXRlJGlkIiwiX3RlbXBsYXRlJGZpbGUyIiwiZmlsZSIsInRyaW0iLCJjb25jYXQiLCJrZXkiLCJocmVmIiwicHJldmlldyIsImZpbGVOYW1lIiwiaXRlbSIsInVzZUVmZmVjdCIsImNob29zZVBhdGgiLCJwYXRoIiwic3RhcnRBZ2FpbiIsImNvbmZpcm1lZCIsIndpbmRvdyIsImNvbmZpcm0iLCJvd25EcmFmdHMiLCJjbGllbnRGaWxlcyIsIm9wZW5EZXNpZ25lciIsInRvZ2dsZVRlbXBsYXRlcyIsIm9wZW4iLCJyZW1lbWJlclVwbG9hZHMiLCJhZGRVcGxvYWQiLCJwcm9kdWN0SWQiLCJjdXJyZW50Iiwidmlld1VybCIsImNhY2hlZFZpZXdVcmwiLCJkb3dubG9hZFVybCIsInJlbW92ZVVwbG9hZCIsInJvbGUiLCJ0eXBlIiwib25DbGljayIsInRvdGFsIiwiZG93bmxvYWQiLCJ0YXJnZXQiLCJyZWwiLCJtdWx0aXBsZSIsImFjY2VwdCIsInBsYWNlaG9sZGVyIiwib25VcGxvYWRTdWNjZXNzIiwiUHJvZHVjdERyYWZ0c0hvc3QiLCJfaG9va0Zvcm0kZ2V0VmFsdWVzMiIsIl9taXNzaW5nJCIsIl91c2VNZXJjaGlGb3JtQ29udGV4dDIiLCJpc0RyYWZ0RGVzaWduZXJPcGVuIiwiaXNEcmFmdE1vZGFsT3BlbiIsImNvbnN1bWVQZW5kaW5nQ2hlY2tvdXQiLCJtaXNzaW5nIiwiX3VzZVN0YXRlMTEiLCJfdXNlU3RhdGUxMiIsImN0YUFuY2hvciIsInNldEN0YUFuY2hvciIsImJ1dHRvbnMiLCJzbG90IiwiY3JlYXRlRWxlbWVudCIsInNldEF0dHJpYnV0ZSIsImluc2VydEJlZm9yZSIsInJlbW92ZSIsImhhbmRsZVNhdmVkIiwicGVuZGluZyIsIkJvb2xlYW4iLCJpbml0aWFsR3JvdXBJbmRleCIsImdyb3VwSW5kZXgiLCJvbkNsb3NlIiwib25TYXZlZCIsImJvZHkiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9kcmFmdHMvUHJvZHVjdERyYWZ0c0hvc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUxheW91dEVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IHsgRmFDaGV2cm9uRG93biwgRmFEb3dubG9hZCwgRmFQYWludEJydXNoLCBGYVRpbWVzIH0gZnJvbSAncmVhY3QtaWNvbnMvZmEnO1xuaW1wb3J0IHsgdXNlTWVyY2hpRm9ybUNvbnRleHQgfSBmcm9tICcuLi8uLi9jb250ZXh0L01lcmNoaVByb2R1Y3RGb3JtUHJvdmlkZXInO1xuaW1wb3J0IERyb3B6b25lSW5wdXQgZnJvbSAnLi4vRHJvcHpvbmVJbnB1dCc7XG5pbXBvcnQgeyB0ZW1wbGF0ZURvd25sb2FkSHJlZiwgdGVtcGxhdGVJbWFnZVNvdXJjZXMgfSBmcm9tICcuLi8uLi91dGlscy9kcmFmdEV4cG9ydCc7XG5pbXBvcnQge1xuICBkb3dubG9hZGFibGVEcmFmdFRlbXBsYXRlcyxcbiAgcHJvZHVjdEFsbG93c0NsaWVudERlc2lnbixcbn0gZnJvbSAnLi4vLi4vdXRpbHMvZHJhZnRUZW1wbGF0ZXMnO1xuaW1wb3J0IHsgaXNQcm9kdWN0TGVhZEZvcm0gfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQge1xuICBBcnR3b3JrUGF0aCxcbiAgVGVtcGxhdGVVcGxvYWQsXG4gIGNsZWFyRHJhZnRXb3JrLFxuICBjbGVhck90aGVyUHJvZHVjdERyYWZ0cyxcbiAgY29tcGxldGVHcm91cENvdW50LFxuICBsb2FkQXJ0d29ya1BhdGgsXG4gIGxvYWREcmFmdHMsXG4gIGxvYWRUZW1wbGF0ZVVwbG9hZHMsXG4gIG1pc3NpbmdEZXNpZ25TbG90cyxcbiAgc2F2ZUFydHdvcmtQYXRoLFxuICBzYXZlRGVzaWduTWV0aG9kLFxuICBzYXZlVGVtcGxhdGVVcGxvYWRzLFxufSBmcm9tICcuLi8uLi91dGlscy9kcmFmdFN0b3JhZ2UnO1xuaW1wb3J0IERyYWZ0QXBwcm92ZVBhbmVsIGZyb20gJy4vRHJhZnRBcHByb3ZlUGFuZWwnO1xuaW1wb3J0IERyYWZ0RGVzaWduZXJTaGVldCBmcm9tICcuL0RyYWZ0RGVzaWduZXJTaGVldCc7XG5cbmZ1bmN0aW9uIFRlbXBsYXRlQXZhdGFyKHsgc3JjLCBuYW1lIH06IHsgc3JjOiBzdHJpbmc7IG5hbWU6IHN0cmluZyB9KSB7XG4gIGNvbnN0IFtmYWlsZWQsIHNldEZhaWxlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGlmICghc3JjIHx8IGZhaWxlZCkge1xuICAgIHJldHVybiAoXG4gICAgICA8c3BhbiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXRlbXBsYXRlLWF2YXRhciBpcy1lbXB0eScgYXJpYS1oaWRkZW49J3RydWUnPlxuICAgICAgICB7bmFtZS5zbGljZSgwLCAxKS50b1VwcGVyQ2FzZSgpfVxuICAgICAgPC9zcGFuPlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIChcbiAgICA8aW1nXG4gICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXRlbXBsYXRlLWF2YXRhcidcbiAgICAgIHNyYz17c3JjfVxuICAgICAgYWx0PScnXG4gICAgICBvbkVycm9yPXsoKSA9PiBzZXRGYWlsZWQodHJ1ZSl9XG4gICAgLz5cbiAgKTtcbn1cblxuZnVuY3Rpb24gZmluZENoZWNrb3V0QnV0dG9uc0VsKCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gIGNvbnN0IG1hcmtlZCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW1lcmNoaS1jaGVja291dC1idXR0b25zXScpO1xuICBpZiAobWFya2VkIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHJldHVybiBtYXJrZWQ7XG4gIGNvbnN0IG5hbWVkID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAnLm1lcmNoaS1wcm9kdWN0LWJ1dHRvbnMtc3VibWl0LWNvbnRhaW5lciwgLm1lcmNoaS1hY3Rpb24tYnV0dG9ucy1jb250YWluZXInLFxuICApO1xuICBpZiAobmFtZWQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkgcmV0dXJuIG5hbWVkO1xuICBjb25zdCBzdWJtaXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcubWVyY2hpLWVtYmVkLWZvcm1fYnV0dG9uLXN1Ym1pdCcpO1xuICByZXR1cm4gc3VibWl0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgPyBzdWJtaXQucGFyZW50RWxlbWVudCA6IG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBQcm9kdWN0RHJhZnRzQ3RhKCkge1xuICBjb25zdCB7XG4gICAgYXBpVXJsLFxuICAgIGNsYXNzTmFtZURyYWZ0Q3RhLFxuICAgIGhvb2tGb3JtLFxuICAgIGpvYixcbiAgICBwcm9kdWN0LFxuICAgIHNldElzRHJhZnREZXNpZ25lck9wZW4sXG4gICAgc2V0Sm9iLFxuICB9ID0gdXNlTWVyY2hpRm9ybUNvbnRleHQoKTtcbiAgY29uc3QgW2RyYWZ0UmV2aXNpb24sIHNldERyYWZ0UmV2aXNpb25dID0gdXNlU3RhdGUoMCk7XG4gIGNvbnN0IFthcnR3b3JrUGF0aCwgc2V0QXJ0d29ya1BhdGhdID0gdXNlU3RhdGU8QXJ0d29ya1BhdGg+KCdzZWxmJyk7XG4gIGNvbnN0IFt0ZW1wbGF0ZXNPcGVuLCBzZXRUZW1wbGF0ZXNPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW3VwbG9hZHMsIHNldFVwbG9hZHNdID0gdXNlU3RhdGU8VGVtcGxhdGVVcGxvYWRbXT4oW10pO1xuICBjb25zdCBbaGFzTW91bnRlZCwgc2V0SGFzTW91bnRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgYWxsb3dlZCA9IHByb2R1Y3RBbGxvd3NDbGllbnREZXNpZ24ocHJvZHVjdCk7XG4gIGNvbnN0IGZvcm1WYWx1ZXMgPSBob29rRm9ybS53YXRjaCA/IGhvb2tGb3JtLndhdGNoKCkgOiBob29rRm9ybS5nZXRWYWx1ZXM/LigpIHx8IHt9O1xuICAvLyBLZWVwIHRoZSBmaXJzdCBjbGllbnQgcmVuZGVyIGlkZW50aWNhbCB0byBTU1IuIFNhdmVkIGFydHdvcmsgaXMgYnJvd3Nlci1vbmx5XG4gIC8vIHN0YXRlIGFuZCBtdXN0IG5vdCBhZGQgdGhlIHNhdmVkLWRyYWZ0IHN0YXR1cyB1bnRpbCBoeWRyYXRpb24gaGFzIGNvbXBsZXRlZC5cbiAgY29uc3QgZHJhZnRzID0gaGFzTW91bnRlZCAmJiBwcm9kdWN0Py5pZFxuICAgID8gbG9hZERyYWZ0cyhwcm9kdWN0LmlkKVxuICAgIDogW107XG4gIGNvbnN0IHN0YXR1cyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gY29tcGxldGVHcm91cENvdW50KHByb2R1Y3QsIGZvcm1WYWx1ZXMsIGRyYWZ0cyksXG4gICAgW3Byb2R1Y3QsIGZvcm1WYWx1ZXMsIGRyYWZ0cywgZHJhZnRSZXZpc2lvbl0sXG4gICk7XG4gIGNvbnN0IGhhc1NhdmVkID0gc3RhdHVzLmNvbXBsZXRlID4gMDtcbiAgY29uc3QgZG93bmxvYWRzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgdGVtcGxhdGVzID0gZG93bmxvYWRhYmxlRHJhZnRUZW1wbGF0ZXMocHJvZHVjdCwgZm9ybVZhbHVlcyk7XG4gICAgcmV0dXJuIHRlbXBsYXRlc1xuICAgICAgLm1hcCgodGVtcGxhdGUsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBTdHJpbmcodGVtcGxhdGU/Lm5hbWUgfHwgdGVtcGxhdGU/LmZpbGU/Lm5hbWUgfHwgJycpLnRyaW0oKVxuICAgICAgICAgIHx8IGBUZW1wbGF0ZSAke2luZGV4ICsgMX1gO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGtleTogdGVtcGxhdGU/LmlkID8/IGluZGV4LFxuICAgICAgICAgIGhyZWY6IHRlbXBsYXRlRG93bmxvYWRIcmVmKHRlbXBsYXRlLCBhcGlVcmwpLFxuICAgICAgICAgIHByZXZpZXc6IHRlbXBsYXRlSW1hZ2VTb3VyY2VzKHRlbXBsYXRlLCBhcGlVcmwpWzBdIHx8ICcnLFxuICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgZmlsZU5hbWU6IFN0cmluZyh0ZW1wbGF0ZT8uZmlsZT8ubmFtZSB8fCAnJykudHJpbSgpIHx8IG5hbWUsXG4gICAgICAgIH07XG4gICAgICB9KVxuICAgICAgLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5ocmVmKTtcbiAgfSwgW2FwaVVybCwgZm9ybVZhbHVlcywgcHJvZHVjdF0pO1xuXG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0SGFzTW91bnRlZCh0cnVlKTtcbiAgICBpZiAoIXByb2R1Y3Q/LmlkKSByZXR1cm47XG4gICAgY2xlYXJPdGhlclByb2R1Y3REcmFmdHMocHJvZHVjdC5pZCk7XG4gICAgc2V0QXJ0d29ya1BhdGgobG9hZEFydHdvcmtQYXRoKHByb2R1Y3QuaWQpKTtcbiAgICBzZXRVcGxvYWRzKGxvYWRUZW1wbGF0ZVVwbG9hZHMocHJvZHVjdC5pZCkpO1xuICAgIHNldERyYWZ0UmV2aXNpb24oKHZhbHVlKSA9PiB2YWx1ZSArIDEpO1xuICB9LCBbcHJvZHVjdD8uaWRdKTtcblxuICBpZiAoIWFsbG93ZWQgfHwgaXNQcm9kdWN0TGVhZEZvcm0ocHJvZHVjdCkpIHJldHVybiBudWxsO1xuXG4gIGZ1bmN0aW9uIGNob29zZVBhdGgocGF0aDogQXJ0d29ya1BhdGgpIHtcbiAgICBzZXRBcnR3b3JrUGF0aChwYXRoKTtcbiAgICBpZiAocHJvZHVjdD8uaWQpIHNhdmVBcnR3b3JrUGF0aChwcm9kdWN0LmlkLCBwYXRoKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHN0YXJ0QWdhaW4oKSB7XG4gICAgaWYgKCFwcm9kdWN0Py5pZCkgcmV0dXJuO1xuICAgIGNvbnN0IGNvbmZpcm1lZCA9IHdpbmRvdy5jb25maXJtKFxuICAgICAgJ1RoaXMgd2lsbCBjbGVhciB5b3VyIHNhdmVkIGFydHdvcmsuIFN0YXJ0IGFnYWluIGZyb20gc2NyYXRjaD8nLFxuICAgICk7XG4gICAgaWYgKCFjb25maXJtZWQpIHJldHVybjtcbiAgICBjbGVhckRyYWZ0V29yayhwcm9kdWN0LmlkKTtcbiAgICBzZXRVcGxvYWRzKFtdKTtcbiAgICBzZXRKb2Ioe1xuICAgICAgLi4uam9iLFxuICAgICAgb3duRHJhZnRzOiBbXSxcbiAgICAgIGNsaWVudEZpbGVzOiBbXSxcbiAgICB9KTtcbiAgICBzZXREcmFmdFJldmlzaW9uKCh2YWx1ZSkgPT4gdmFsdWUgKyAxKTtcbiAgICBjaG9vc2VQYXRoKCdzZWxmJyk7XG4gICAgc2F2ZURlc2lnbk1ldGhvZChwcm9kdWN0LmlkLCAnZGVzaWduZXInKTtcbiAgICBzZXRUZW1wbGF0ZXNPcGVuKGZhbHNlKTtcbiAgICBzZXRJc0RyYWZ0RGVzaWduZXJPcGVuKHRydWUpO1xuICB9XG5cbiAgZnVuY3Rpb24gb3BlbkRlc2lnbmVyKCkge1xuICAgIGlmIChwcm9kdWN0Py5pZCkgc2F2ZURlc2lnbk1ldGhvZChwcm9kdWN0LmlkLCAnZGVzaWduZXInKTtcbiAgICBzZXRUZW1wbGF0ZXNPcGVuKGZhbHNlKTtcbiAgICBzZXRJc0RyYWZ0RGVzaWduZXJPcGVuKHRydWUpO1xuICB9XG5cbiAgZnVuY3Rpb24gdG9nZ2xlVGVtcGxhdGVzKCkge1xuICAgIHNldFRlbXBsYXRlc09wZW4oKG9wZW4pID0+IHtcbiAgICAgIGNvbnN0IG5leHQgPSAhb3BlbjtcbiAgICAgIGlmIChuZXh0ICYmIHByb2R1Y3Q/LmlkKSBzYXZlRGVzaWduTWV0aG9kKHByb2R1Y3QuaWQsICd0ZW1wbGF0ZXMnKTtcbiAgICAgIHJldHVybiBuZXh0O1xuICAgIH0pO1xuICB9XG5cbiAgZnVuY3Rpb24gcmVtZW1iZXJVcGxvYWRzKG5leHQ6IFRlbXBsYXRlVXBsb2FkW10pIHtcbiAgICBzZXRVcGxvYWRzKG5leHQpO1xuICAgIGlmIChwcm9kdWN0Py5pZCkge1xuICAgICAgc2F2ZVRlbXBsYXRlVXBsb2Fkcyhwcm9kdWN0LmlkLCBuZXh0KTtcbiAgICAgIHNhdmVEZXNpZ25NZXRob2QocHJvZHVjdC5pZCwgJ3RlbXBsYXRlcycpO1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGFkZFVwbG9hZChmaWxlOiBhbnkpIHtcbiAgICBpZiAoZmlsZT8uaWQgPT0gbnVsbCB8fCAhcHJvZHVjdD8uaWQpIHJldHVybjtcbiAgICBjb25zdCBwcm9kdWN0SWQgPSBwcm9kdWN0LmlkO1xuICAgIHNldFVwbG9hZHMoKGN1cnJlbnQpID0+IHtcbiAgICAgIGNvbnN0IG5leHQgPSBbXG4gICAgICAgIC4uLmN1cnJlbnQuZmlsdGVyKChpdGVtKSA9PiBTdHJpbmcoaXRlbS5pZCkgIT09IFN0cmluZyhmaWxlLmlkKSksXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogZmlsZS5pZCxcbiAgICAgICAgICBuYW1lOiBTdHJpbmcoZmlsZS5uYW1lIHx8ICdVcGxvYWQnKSxcbiAgICAgICAgICB2aWV3VXJsOiBmaWxlLnZpZXdVcmwgfHwgZmlsZS5jYWNoZWRWaWV3VXJsIHx8ICcnLFxuICAgICAgICAgIGRvd25sb2FkVXJsOiBmaWxlLmRvd25sb2FkVXJsIHx8ICcnLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICAgIHNhdmVUZW1wbGF0ZVVwbG9hZHMocHJvZHVjdElkLCBuZXh0KTtcbiAgICAgIHNhdmVEZXNpZ25NZXRob2QocHJvZHVjdElkLCAndGVtcGxhdGVzJyk7XG4gICAgICByZXR1cm4gbmV4dDtcbiAgICB9KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHJlbW92ZVVwbG9hZChpZDogbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgcmVtZW1iZXJVcGxvYWRzKHVwbG9hZHMuZmlsdGVyKChpdGVtKSA9PiBTdHJpbmcoaXRlbS5pZCkgIT09IFN0cmluZyhpZCkpKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2Ake2NsYXNzTmFtZURyYWZ0Q3RhIHx8ICcnfSBtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGFgfT5cbiAgICAgIDxzdHJvbmcgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEtaGVhZGluZyc+QXJ0d29yazwvc3Ryb25nPlxuICAgICAgPGRpdiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS10YWJzJyByb2xlPSd0YWJsaXN0JyBhcmlhLWxhYmVsPSdBcnR3b3JrIG9wdGlvbnMnPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT0nYnV0dG9uJ1xuICAgICAgICAgIHJvbGU9J3RhYidcbiAgICAgICAgICBhcmlhLXNlbGVjdGVkPXthcnR3b3JrUGF0aCA9PT0gJ3NlbGYnfVxuICAgICAgICAgIGNsYXNzTmFtZT17YG1lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS10YWIke2FydHdvcmtQYXRoID09PSAnc2VsZicgPyAnIGlzLWFjdGl2ZScgOiAnJ31gfVxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGNob29zZVBhdGgoJ3NlbGYnKX1cbiAgICAgICAgPlxuICAgICAgICAgIERlc2lnbiBteXNlbGZcbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPSdidXR0b24nXG4gICAgICAgICAgcm9sZT0ndGFiJ1xuICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2FydHdvcmtQYXRoID09PSAnc2VydmljZSd9XG4gICAgICAgICAgY2xhc3NOYW1lPXtgbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLXRhYiR7YXJ0d29ya1BhdGggPT09ICdzZXJ2aWNlJyA/ICcgaXMtYWN0aXZlJyA6ICcnfWB9XG4gICAgICAgICAgb25DbGljaz17KCkgPT4gY2hvb3NlUGF0aCgnc2VydmljZScpfVxuICAgICAgICA+XG4gICAgICAgICAgRnJlZSBkZXNpZ24gc2VydmljZVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAge2FydHdvcmtQYXRoID09PSAnc2VsZicgPyAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEtcGFuZWwnIHJvbGU9J3RhYnBhbmVsJz5cbiAgICAgICAgICB7aGFzU2F2ZWQgPyAoXG4gICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAge3N0YXR1cy50b3RhbCA9PT0gMVxuICAgICAgICAgICAgICAgID8gJ0RyYWZ0IHNhdmVkJ1xuICAgICAgICAgICAgICAgIDogYCR7c3RhdHVzLmNvbXBsZXRlfSBvZiAke3N0YXR1cy50b3RhbH0gZ3JvdXBzIHNhdmVkYH1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLWNob2ljZXMnPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPSdidXR0b24nXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLWJ0bidcbiAgICAgICAgICAgICAgb25DbGljaz17b3BlbkRlc2lnbmVyfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmFQYWludEJydXNoIC8+XG4gICAgICAgICAgICAgIE9wZW4gRGVzaWduZXJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPSdidXR0b24nXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17YG1lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1kb3dubG9hZCR7dGVtcGxhdGVzT3BlbiA/ICcgaXMtb3BlbicgOiAnJ31gfVxuICAgICAgICAgICAgICBhcmlhLWV4cGFuZGVkPXt0ZW1wbGF0ZXNPcGVufVxuICAgICAgICAgICAgICBhcmlhLWNvbnRyb2xzPSdtZXJjaGktdGVtcGxhdGUtZG93bmxvYWRzJ1xuICAgICAgICAgICAgICBvbkNsaWNrPXt0b2dnbGVUZW1wbGF0ZXN9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxGYURvd25sb2FkIC8+XG4gICAgICAgICAgICAgIERvd25sb2FkIHRlbXBsYXRlc1xuICAgICAgICAgICAgICA8RmFDaGV2cm9uRG93biAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAge3RlbXBsYXRlc09wZW4gPyAoXG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGlkPSdtZXJjaGktdGVtcGxhdGUtZG93bmxvYWRzJ1xuICAgICAgICAgICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXRlbXBsYXRlLW1lbnUnXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxwPkRvd25sb2FkIHRoZSB0ZW1wbGF0ZXMsIGVkaXQgdGhlbSBhbmQgdGhlbiByZXVwbG9hZCB0aGVtPC9wPlxuICAgICAgICAgICAgICB7ZG93bmxvYWRzLmxlbmd0aCA/IChcbiAgICAgICAgICAgICAgICA8dWwgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC10ZW1wbGF0ZS1saXN0Jz5cbiAgICAgICAgICAgICAgICAgIHtkb3dubG9hZHMubWFwKChpdGVtKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgIDxsaSBrZXk9e2l0ZW0ua2V5fT5cbiAgICAgICAgICAgICAgICAgICAgICA8VGVtcGxhdGVBdmF0YXIgc3JjPXtpdGVtLnByZXZpZXd9IG5hbWU9e2l0ZW0ubmFtZX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXRlbXBsYXRlLW5hbWUnPntpdGVtLm5hbWV9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LXRlbXBsYXRlLWRvd25sb2FkJ1xuICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj17aXRlbS5ocmVmfVxuICAgICAgICAgICAgICAgICAgICAgICAgZG93bmxvYWQ9e2l0ZW0uZmlsZU5hbWUgfHwgdHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD0nX2JsYW5rJ1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVsPSdub29wZW5lciBub3JlZmVycmVyJ1xuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxGYURvd25sb2FkIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICBEb3dubG9hZFxuICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgPHNwYW4+Tm8gdGVtcGxhdGVzIGFyZSBhdmFpbGFibGUgdG8gZG93bmxvYWQuPC9zcGFuPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtdGVtcGxhdGUtZHJvcCc+XG4gICAgICAgICAgICAgICAgPERyb3B6b25lSW5wdXRcbiAgICAgICAgICAgICAgICAgIG11bHRpcGxlXG4gICAgICAgICAgICAgICAgICBhY2NlcHQ9Jy5qcGcsLmpwZWcsLnBuZywuZ2lmLC5wZGYsLnN2ZywuYWksLmVwcydcbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPSdVcGxvYWQgZWRpdGVkIHRlbXBsYXRlcydcbiAgICAgICAgICAgICAgICAgIG9uVXBsb2FkU3VjY2Vzcz17YWRkVXBsb2FkfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICB7dXBsb2Fkcy5sZW5ndGggPyAoXG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtdXBsb2FkLWxpc3QnPlxuICAgICAgICAgICAgICAgICAge3VwbG9hZHMubWFwKChmaWxlKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgIDxsaSBrZXk9e2ZpbGUuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgIDxUZW1wbGF0ZUF2YXRhciBzcmM9e2ZpbGUudmlld1VybCB8fCAnJ30gbmFtZT17ZmlsZS5uYW1lfSAvPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtdGVtcGxhdGUtbmFtZSc+e2ZpbGUubmFtZX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT0nYnV0dG9uJ1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC11cGxvYWQtcmVtb3ZlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD17YFJlbW92ZSAke2ZpbGUubmFtZX1gfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gcmVtb3ZlVXBsb2FkKGZpbGUuaWQpfVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxGYVRpbWVzIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtoYXNTYXZlZCA/IChcbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgdHlwZT0nYnV0dG9uJ1xuICAgICAgICAgICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1yZXNldCdcbiAgICAgICAgICAgICAgb25DbGljaz17c3RhcnRBZ2Fpbn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgU3RhcnQgYWdhaW5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICkgOiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEtcGFuZWwnIHJvbGU9J3RhYnBhbmVsJz5cbiAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgIFNraXAgdGhlIGRlc2lnbmVyIGFuZCBhZGQgdG8gY2FydCwgYnV5IG5vdywgb3IgZ2V0IGEgcXVvdGUuIFdlJmFwb3M7bGwgY3JlYXRlIGEgZnJlZVxuICAgICAgICAgICAgZHJhZnQgZm9yIHlvdSBhZnRlciB0aGUgb3JkZXIuXG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFByb2R1Y3REcmFmdHNIb3N0KCkge1xuICBjb25zdCB7XG4gICAgaG9va0Zvcm0sXG4gICAgaXNEcmFmdERlc2lnbmVyT3BlbixcbiAgICBpc0RyYWZ0TW9kYWxPcGVuLFxuICAgIHByb2R1Y3QsXG4gICAgc2V0SXNEcmFmdERlc2lnbmVyT3BlbixcbiAgICBjb25zdW1lUGVuZGluZ0NoZWNrb3V0LFxuICB9ID0gdXNlTWVyY2hpRm9ybUNvbnRleHQoKTtcblxuICBjb25zdCBhbGxvd2VkID0gcHJvZHVjdEFsbG93c0NsaWVudERlc2lnbihwcm9kdWN0KTtcbiAgY29uc3QgZm9ybVZhbHVlcyA9IGhvb2tGb3JtLndhdGNoID8gaG9va0Zvcm0ud2F0Y2goKSA6IGhvb2tGb3JtLmdldFZhbHVlcz8uKCkgfHwge307XG4gIGNvbnN0IGRyYWZ0cyA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHByb2R1Y3Q/LmlkXG4gICAgPyBsb2FkRHJhZnRzKHByb2R1Y3QuaWQpXG4gICAgOiBbXTtcbiAgY29uc3QgbWlzc2luZyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gbWlzc2luZ0Rlc2lnblNsb3RzKHByb2R1Y3QsIGZvcm1WYWx1ZXMsIGRyYWZ0cyksXG4gICAgW3Byb2R1Y3QsIGZvcm1WYWx1ZXMsIGRyYWZ0c10sXG4gICk7XG4gIGNvbnN0IFtjdGFBbmNob3IsIHNldEN0YUFuY2hvcl0gPSB1c2VTdGF0ZTxIVE1MRWxlbWVudCB8IG51bGw+KG51bGwpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFhbGxvd2VkIHx8IGlzUHJvZHVjdExlYWRGb3JtKHByb2R1Y3QpKSByZXR1cm47XG4gICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5tZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEnKSkgcmV0dXJuO1xuXG4gICAgY29uc3QgYnV0dG9ucyA9IGZpbmRDaGVja291dEJ1dHRvbnNFbCgpO1xuICAgIGlmICghYnV0dG9ucz8ucGFyZW50RWxlbWVudCkgcmV0dXJuO1xuXG4gICAgY29uc3Qgc2xvdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHNsb3Quc2V0QXR0cmlidXRlKCdkYXRhLW1lcmNoaS1kcmFmdC1jdGEtc2xvdCcsICd0cnVlJyk7XG4gICAgYnV0dG9ucy5wYXJlbnRFbGVtZW50Lmluc2VydEJlZm9yZShzbG90LCBidXR0b25zKTtcbiAgICBzZXRDdGFBbmNob3Ioc2xvdCk7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHNsb3QucmVtb3ZlKCk7XG4gICAgICBzZXRDdGFBbmNob3IobnVsbCk7XG4gICAgfTtcbiAgfSwgW2FsbG93ZWQsIHByb2R1Y3RdKTtcblxuICBpZiAoIWFsbG93ZWQgfHwgaXNQcm9kdWN0TGVhZEZvcm0ocHJvZHVjdCkpIHJldHVybiBudWxsO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNhdmVkKCkge1xuICAgIHNldElzRHJhZnREZXNpZ25lck9wZW4oZmFsc2UpO1xuICAgIGNvbnN0IHBlbmRpbmcgPSBjb25zdW1lUGVuZGluZ0NoZWNrb3V0Py4oKTtcbiAgICBpZiAocGVuZGluZykge1xuICAgICAgcGVuZGluZygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHtjdGFBbmNob3IgPyBjcmVhdGVQb3J0YWwoPFByb2R1Y3REcmFmdHNDdGEgLz4sIGN0YUFuY2hvcikgOiBudWxsfVxuXG4gICAgICA8RHJhZnREZXNpZ25lclNoZWV0XG4gICAgICAgIG9wZW49e0Jvb2xlYW4oaXNEcmFmdERlc2lnbmVyT3Blbil9XG4gICAgICAgIGluaXRpYWxHcm91cEluZGV4PXttaXNzaW5nWzBdPy5ncm91cEluZGV4IHx8IDB9XG4gICAgICAgIG9uQ2xvc2U9eygpID0+IHNldElzRHJhZnREZXNpZ25lck9wZW4oZmFsc2UpfVxuICAgICAgICBvblNhdmVkPXtoYW5kbGVTYXZlZH1cbiAgICAgIC8+XG5cbiAgICAgIHtpc0RyYWZ0TW9kYWxPcGVuICYmIHR5cGVvZiBkb2N1bWVudCAhPT0gJ3VuZGVmaW5lZCdcbiAgICAgICAgPyBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1hcHByb3ZlJ1xuICAgICAgICAgICAgcm9sZT0nZGlhbG9nJ1xuICAgICAgICAgICAgYXJpYS1tb2RhbD0ndHJ1ZSdcbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtYXBwcm92ZS10aXRsZSdcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtYXBwcm92ZS1wYW5lbCc+XG4gICAgICAgICAgICAgIDxEcmFmdEFwcHJvdmVQYW5lbCAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+LFxuICAgICAgICAgIGRvY3VtZW50LmJvZHksXG4gICAgICAgIClcbiAgICAgICAgOiBudWxsfVxuICAgIDwvPlxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxZQUFZOztBQUFDLFNBQUFBLFFBQUFDLENBQUEsc0NBQUFELE9BQUEsd0JBQUFFLE1BQUEsdUJBQUFBLE1BQUEsQ0FBQUMsUUFBQSxhQUFBRixDQUFBLGtCQUFBQSxDQUFBLGdCQUFBQSxDQUFBLFdBQUFBLENBQUEseUJBQUFDLE1BQUEsSUFBQUQsQ0FBQSxDQUFBRyxXQUFBLEtBQUFGLE1BQUEsSUFBQUQsQ0FBQSxLQUFBQyxNQUFBLENBQUFHLFNBQUEscUJBQUFKLENBQUEsS0FBQUQsT0FBQSxDQUFBQyxDQUFBO0FBQUEsU0FBQUssbUJBQUFDLENBQUEsV0FBQUMsa0JBQUEsQ0FBQUQsQ0FBQSxLQUFBRSxnQkFBQSxDQUFBRixDQUFBLEtBQUFHLDJCQUFBLENBQUFILENBQUEsS0FBQUksa0JBQUE7QUFBQSxTQUFBQSxtQkFBQSxjQUFBQyxTQUFBO0FBQUEsU0FBQUgsaUJBQUFGLENBQUEsOEJBQUFMLE1BQUEsWUFBQUssQ0FBQSxDQUFBTCxNQUFBLENBQUFDLFFBQUEsYUFBQUksQ0FBQSx1QkFBQU0sS0FBQSxDQUFBQyxJQUFBLENBQUFQLENBQUE7QUFBQSxTQUFBQyxtQkFBQUQsQ0FBQSxRQUFBTSxLQUFBLENBQUFFLE9BQUEsQ0FBQVIsQ0FBQSxVQUFBUyxpQkFBQSxDQUFBVCxDQUFBO0FBQUEsU0FBQVUsUUFBQUMsQ0FBQSxFQUFB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@merchi/product-form",
3
- "version": "1.19.49",
3
+ "version": "1.19.51",
4
4
  "description": "A React component for Merchi product forms",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/index.js",
@@ -84,7 +84,7 @@
84
84
  "draft-js": "^0.11.7",
85
85
  "konva": "^10.3.2",
86
86
  "lodash": "^4.17.21",
87
- "@merchi/sdk": "^1.42.21",
87
+ "@merchi/sdk": "^1.42.22",
88
88
  "moment-timezone": "^0.5.45",
89
89
  "react-dropzone": "^14.2.3",
90
90
  "react-hook-form": "^7.45.4",