merchi_checkout 1.2.9 → 1.3.2

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.
Files changed (57) hide show
  1. package/README.md +196 -196
  2. package/lib/actions/confirm.js +1 -1
  3. package/lib/actions/customer.js +1 -1
  4. package/lib/actions/domain.js +1 -1
  5. package/lib/actions/files.js +1 -1
  6. package/lib/actions/helpers.js +1 -1
  7. package/lib/actions/invoice.js +1 -1
  8. package/lib/area.js +16 -16
  9. package/lib/checkoutSession.js +1 -1
  10. package/lib/components/Alerts.js +1 -1
  11. package/lib/components/CancelOrderConfirmModal.js +1 -1
  12. package/lib/components/CheckoutSummaryFields.js +1 -1
  13. package/lib/components/Collapse.js +1 -1
  14. package/lib/components/CustomerCheckoutMethodTabs.js +1 -1
  15. package/lib/components/DiscountInputGroup.js +1 -1
  16. package/lib/components/DraftImageUploaded.js +1 -1
  17. package/lib/components/FooterButtons.js +1 -1
  18. package/lib/components/InvoiceInfo.js +1 -1
  19. package/lib/components/JobInfoContent.js +1 -1
  20. package/lib/components/MerchiCheckout.js +1 -1
  21. package/lib/components/MerchiCheckoutProvider.js +1 -1
  22. package/lib/components/MerchiCheckoutTabs.js +1 -1
  23. package/lib/components/TabPane.js +1 -1
  24. package/lib/components/TabPaneAddress.js +1 -1
  25. package/lib/components/TabPaneConfirm.js +1 -1
  26. package/lib/components/TabPaneContainer.js +1 -1
  27. package/lib/components/TabPaneCustomer.js +1 -1
  28. package/lib/components/TabPaneNewDomain.js +1 -1
  29. package/lib/components/TabPanePayment.js +6 -3
  30. package/lib/components/TabPaneSubmitted.js +1 -1
  31. package/lib/components/TitleStep.js +1 -1
  32. package/lib/components/buttons/ButtonInvoiceDownload.js +1 -1
  33. package/lib/components/buttons/ButtonNext.js +1 -1
  34. package/lib/components/buttons/ButtonPrevious.js +1 -1
  35. package/lib/components/buttons/index.js +1 -1
  36. package/lib/components/currency.js +8 -8
  37. package/lib/components/forms/CheckboxBillingAddressSameAsShippingAddress.js +1 -1
  38. package/lib/components/forms/FormAddresses.js +1 -1
  39. package/lib/components/forms/FormDomainNew.js +1 -1
  40. package/lib/components/forms/FormWhatsappCustomer.js +1 -1
  41. package/lib/components/forms/InputAcceptUserTermsAndConditions.js +1 -1
  42. package/lib/components/forms/InputCheckStoreName.js +1 -1
  43. package/lib/components/forms/InputError.js +1 -1
  44. package/lib/components/forms/InputFileUpload.js +1 -1
  45. package/lib/components/forms/InputSelect.js +1 -1
  46. package/lib/components/forms/InputText.js +1 -1
  47. package/lib/components/forms/InputsAddress.js +1 -1
  48. package/lib/components/forms/index.js +1 -1
  49. package/lib/components/lists/ListShipmentQuoteOptions.js +1 -1
  50. package/lib/components/lists/index.js +1 -1
  51. package/lib/index.js +1 -1
  52. package/lib/merchi_source.js +1 -1
  53. package/lib/styles/globals.scss +2763 -2763
  54. package/lib/tabs_utils.js +1 -1
  55. package/lib/types.js +1 -1
  56. package/lib/utils.js +20 -9
  57. package/package.json +91 -91
package/lib/tabs_utils.js CHANGED
@@ -101,4 +101,4 @@ export function tabsInit(settings) {
101
101
  job: job
102
102
  }));
103
103
  }
104
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc1Byb2R1Y3RTdXBwbGllck1PRCIsImZhQWRkcmVzc0NhcmQiLCJmYUNoZWNrQ2lyY2xlIiwiZmFDcmVkaXRDYXJkIiwiZmFTaG9wcGluZ0NhcnQiLCJmYVRodW1ic1VwIiwiZmFUcnVjayIsIm1ha2VUYWJEYXRhIiwiaWNvbiIsImlkIiwidGl0bGUiLCJkaXNhYmxlZCIsInRhYklkQ3VzdG9tZXJJbmZvIiwidGFiQ3VzdG9tZXJJbmZvIiwidGFiSWRTaGlwbWVudCIsInRhYlNoaXBtZW50IiwidGFiSWRDb25maXJtIiwidGFiQ29uZmlybSIsInRhYk1PRENvbmZpcm0iLCJ0YWJJZFBheW1lbnQiLCJ0YWJQYXltZW50IiwidGFiSWRDb21wbGV0ZSIsInRhYkNvbXBsZXRlUXVvdGUiLCJ0YWJDb21wbGV0ZSIsInRhYnNQcm9kdWN0TU9EIiwiX3JlZiIsImluY2x1ZGVEb21haW5TaWdudXAiLCJqb2IiLCJjbGllbnQiLCJwcm9kdWN0IiwiaGFzQ2xpZW50IiwiY2xpZW50SGFzRG9tYWluIiwiaGFzU3RvcmUiLCJ0YWJzIiwibmVlZHNEcmFmdGluZyIsIl9vYmplY3RTcHJlYWQiLCJ0YWJzUHJvZHVjdFN1cHBsaWVyIiwiX3JlZjIiLCJpc0J1eVJlcXVlc3QiLCJuZWVkc1NoaXBwaW5nIiwidGFic0luaXQiLCJzZXR0aW5ncyIsIl9zZXR0aW5ncyRpc0J1eVJlcXVlcyIsImlzU3VwcGxpZXJNT0QiLCJPYmplY3QiLCJ2YWx1ZXMiXSwic291cmNlcyI6WyIuLi9zcmMvdGFic191dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1Byb2R1Y3RTdXBwbGllck1PRCwgdXNlckFkbWluRG9tYWlucyB9IGZyb20gJy4vdXRpbHMnO1xyXG5pbXBvcnQge1xyXG4gIGZhQWRkcmVzc0NhcmQsXHJcbiAgZmFDaGVja0NpcmNsZSxcclxuICBmYUNyZWRpdENhcmQsXHJcbiAgZmFEcmFmdGluZ0NvbXBhc3MsXHJcbiAgZmFTaG9wcGluZ0NhcnQsXHJcbiAgZmFTdG9yZSxcclxuICBmYVRodW1ic1VwLFxyXG4gIGZhVHJ1Y2ssXHJcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcclxuaW1wb3J0IHsgTWVyY2hpQ2hlY2tvdXRUYWIgfSBmcm9tICcuL3R5cGVzJztcclxuXHJcbmZ1bmN0aW9uIG1ha2VUYWJEYXRhKGljb246IGFueSwgaWQ6IHN0cmluZywgdGl0bGU6IHN0cmluZykge1xyXG4gIHJldHVybiB7XHJcbiAgICBkaXNhYmxlZDogdHJ1ZSxcclxuICAgIGljb24sXHJcbiAgICBpZCxcclxuICAgIHRpdGxlLFxyXG4gIH0gYXMgTWVyY2hpQ2hlY2tvdXRUYWI7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB0YWJJZEN1c3RvbWVySW5mbyA9ICdjdXN0b21lcic7XHJcbmV4cG9ydCBjb25zdCB0YWJDdXN0b21lckluZm8gPSBtYWtlVGFiRGF0YShcclxuICBmYUFkZHJlc3NDYXJkLFxyXG4gIHRhYklkQ3VzdG9tZXJJbmZvLFxyXG4gICdDdXN0b21lcidcclxuKTtcclxuZXhwb3J0IGNvbnN0IHRhYklkU2hpcG1lbnQgPSAnc2hpcG1lbnQnO1xyXG5leHBvcnQgY29uc3QgdGFiU2hpcG1lbnQgPSBtYWtlVGFiRGF0YShmYVRydWNrLCB0YWJJZFNoaXBtZW50LCAnQWRkcmVzcycpO1xyXG5leHBvcnQgY29uc3QgdGFiSWRDb25maXJtID0gJ2NvbmZpcm0nO1xyXG5leHBvcnQgY29uc3QgdGFiQ29uZmlybSA9IG1ha2VUYWJEYXRhKGZhU2hvcHBpbmdDYXJ0LCB0YWJJZENvbmZpcm0sICdDb25maXJtJyk7XHJcbmV4cG9ydCBjb25zdCB0YWJNT0RDb25maXJtID0gbWFrZVRhYkRhdGEoXHJcbiAgZmFDaGVja0NpcmNsZSxcclxuICB0YWJJZENvbmZpcm0sXHJcbiAgJ0NvbmZpcm0nXHJcbik7XHJcbmV4cG9ydCBjb25zdCB0YWJJZFBheW1lbnQgPSAncGF5bWVudCc7XHJcbmV4cG9ydCBjb25zdCB0YWJQYXltZW50ID0gbWFrZVRhYkRhdGEoZmFDcmVkaXRDYXJkLCB0YWJJZFBheW1lbnQsICdDaGVja291dCcpO1xyXG5leHBvcnQgY29uc3QgdGFiSWRDb21wbGV0ZSA9ICdjb21wbGV0ZSc7XHJcbmV4cG9ydCBjb25zdCB0YWJDb21wbGV0ZVF1b3RlID0gbWFrZVRhYkRhdGEoXHJcbiAgZmFUaHVtYnNVcCxcclxuICB0YWJJZENvbXBsZXRlLFxyXG4gICdTdWJtaXR0ZWQnXHJcbik7XHJcbmV4cG9ydCBjb25zdCB0YWJDb21wbGV0ZSA9IG1ha2VUYWJEYXRhKGZhVGh1bWJzVXAsIHRhYklkQ29tcGxldGUsICdDb21wbGV0ZScpO1xyXG5cclxuaW50ZXJmYWNlIFRhYnNQcm9kdWN0TU9EIHtcclxuICBpbmNsdWRlRG9tYWluU2lnbnVwPzogYm9vbGVhbjtcclxuICBqb2I6IGFueTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRhYnNQcm9kdWN0TU9EKHtcclxuICBpbmNsdWRlRG9tYWluU2lnbnVwLFxyXG4gIGpvYixcclxufTogVGFic1Byb2R1Y3RNT0QpIHtcclxuICBjb25zdCB7IGNsaWVudCwgcHJvZHVjdCB9ID0gam9iO1xyXG4gIGNvbnN0IGhhc0NsaWVudCA9IGNsaWVudCAmJiAoY2xpZW50IGFzIGFueSkuaWQgPiAwO1xyXG4gIGNvbnN0IGNsaWVudEhhc0RvbWFpbiA9IGNsaWVudCAmJiBjbGllbnQuaGFzU3RvcmU7XHJcbiAgY29uc3QgdGFicyA9IHt9IGFzIGFueTtcclxuICBjb25zdCB7IG5lZWRzRHJhZnRpbmcgfSA9IHByb2R1Y3Q7XHJcbiAgLy8gaWYgdGhlIGN1cnJlbnQgdXNlciBkb2Vzbid0IGhhdmUgYW4gYWNjb3VudCBhc2sgdGhlbSB0byBzaWduIHVwXHJcbiAgaWYgKCFoYXNDbGllbnQpIHtcclxuICAgIHRhYnNbdGFiSWRDdXN0b21lckluZm9dID0gbmVlZHNEcmFmdGluZ1xyXG4gICAgICA/IHRhYkN1c3RvbWVySW5mb1xyXG4gICAgICA6IHsgLi4udGFiQ3VzdG9tZXJJbmZvLCBkaXNhYmxlZDogZmFsc2UgfTtcclxuICB9XHJcbiAgLy8gaWYgdGhlIGN1cnJlbnQgdXNlciBkb2Vzbid0IGhhdmUgZG9tYWluIGFzayB0aGVtIHRvIG1ha2UgYSBkb21haW5cclxuICAvLyBpZiAoIWNsaWVudEhhc0RvbWFpbiAmJiBpbmNsdWRlRG9tYWluU2lnbnVwKSB7XHJcbiAgLy8gICB0YWJzW3RhYklkTmV3RG9tYWluXSA9XHJcbiAgLy8gICAgIGhhc0NsaWVudCA/XHJcbiAgLy8gICAgICAgey4uLnRhYk5ld0RvbWFpbiwgZGlzYWJsZWQ6IG5lZWRzRHJhZnRpbmd9IDpcclxuICAvLyAgICAgICB0YWJOZXdEb21haW47XHJcbiAgLy8gfVxyXG4gIHRhYnNbdGFiSWRDb25maXJtXSA9IHRhYk1PRENvbmZpcm07XHJcbiAgdGFic1t0YWJJZENvbXBsZXRlXSA9IHRhYkNvbXBsZXRlUXVvdGU7XHJcbiAgcmV0dXJuIHRhYnM7XHJcbn1cclxuXHJcbmludGVyZmFjZSBUYWJzUHJvZHVjdFN1cHBsaWVyIHtcclxuICBpbmNsdWRlRG9tYWluU2lnbnVwPzogYm9vbGVhbjtcclxuICBpc0J1eVJlcXVlc3Q6IGJvb2xlYW47XHJcbiAgam9iOiBhbnk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB0YWJzUHJvZHVjdFN1cHBsaWVyKHtcclxuICBpbmNsdWRlRG9tYWluU2lnbnVwLFxyXG4gIGpvYixcclxuICBpc0J1eVJlcXVlc3QsXHJcbn06IFRhYnNQcm9kdWN0U3VwcGxpZXIpIHtcclxuICBjb25zdCB7IGNsaWVudCwgcHJvZHVjdCB9ID0gam9iO1xyXG4gIGNvbnN0IHRhYnMgPSB7fSBhcyBhbnk7XHJcbiAgY29uc3QgaGFzQ2xpZW50ID0gY2xpZW50ICYmIChjbGllbnQgYXMgYW55KS5pZCA+IDA7XHJcbiAgY29uc3QgeyBuZWVkc0RyYWZ0aW5nLCBuZWVkc1NoaXBwaW5nIH0gPSBwcm9kdWN0O1xyXG4gIC8vIGlmIHRoZSBjdXJyZW50IHVzZXIgZG9lc24ndCBoYXZlIGFuIGFjY291bnQgYXNrIHRoZW0gdG8gc2lnbiB1cFxyXG4gIHRhYnNbdGFiSWRDdXN0b21lckluZm9dID1cclxuICAgIG5lZWRzRHJhZnRpbmdcclxuICAgICAgPyB0YWJDdXN0b21lckluZm9cclxuICAgICAgOiB7IC4uLnRhYkN1c3RvbWVySW5mbywgZGlzYWJsZWQ6IGZhbHNlIH07XHJcbiAgaWYgKG5lZWRzU2hpcHBpbmcpIHtcclxuICAgIHRhYnNbdGFiSWRTaGlwbWVudF0gPSB7XHJcbiAgICAgIC4uLnRhYlNoaXBtZW50LFxyXG4gICAgICBkaXNhYmxlZDogIWhhc0NsaWVudCB8fCBuZWVkc0RyYWZ0aW5nLFxyXG4gICAgfTtcclxuICB9XHJcbiAgdGFic1t0YWJJZENvbmZpcm1dID0ge1xyXG4gICAgLi4udGFiQ29uZmlybSxcclxuICAgIGRpc2FibGVkOiAhaGFzQ2xpZW50IHx8IG5lZWRzRHJhZnRpbmcgfHwgbmVlZHNTaGlwcGluZyxcclxuICB9O1xyXG4gIGlmIChpc0J1eVJlcXVlc3QpIHtcclxuICAgIHRhYnNbdGFiSWRQYXltZW50XSA9IHRhYlBheW1lbnQ7XHJcbiAgICB0YWJzW3RhYklkQ29tcGxldGVdID0gdGFiQ29tcGxldGU7XHJcbiAgfSBlbHNlIHtcclxuICAgIHRhYnNbdGFiSWRDb21wbGV0ZV0gPSB0YWJDb21wbGV0ZVF1b3RlO1xyXG4gIH1cclxuICByZXR1cm4gdGFicztcclxufVxyXG5cclxuaW50ZXJmYWNlIFRhYnNJbml0IHtcclxuICBpbmNsdWRlRG9tYWluU2lnbnVwPzogYm9vbGVhbjtcclxuICBpc0J1eVJlcXVlc3Q/OiBib29sZWFuO1xyXG4gIGpvYjogYW55O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdGFic0luaXQoc2V0dGluZ3M6IFRhYnNJbml0KSB7XHJcbiAgY29uc3Qge1xyXG4gICAgaW5jbHVkZURvbWFpblNpZ251cCxcclxuICAgIGlzQnV5UmVxdWVzdCA9IGZhbHNlLFxyXG4gICAgam9iLFxyXG4gIH0gPSBzZXR0aW5ncztcclxuICBjb25zdCB7IHByb2R1Y3QgfSA9IGpvYjtcclxuICBjb25zdCBpc1N1cHBsaWVyTU9EID0gaXNQcm9kdWN0U3VwcGxpZXJNT0QocHJvZHVjdCk7XHJcbiAgaWYgKGlzU3VwcGxpZXJNT0QpIHtcclxuICAgIHJldHVybiBPYmplY3QudmFsdWVzKFxyXG4gICAgICB0YWJzUHJvZHVjdE1PRCh7IGluY2x1ZGVEb21haW5TaWdudXAsIGpvYiB9KVxyXG4gICAgKTtcclxuICB9XHJcbiAgcmV0dXJuIE9iamVjdC52YWx1ZXMoXHJcbiAgICB0YWJzUHJvZHVjdFN1cHBsaWVyKHtcclxuICAgICAgaW5jbHVkZURvbWFpblNpZ251cCxcclxuICAgICAgaXNCdXlSZXF1ZXN0LFxyXG4gICAgICBqb2IsXHJcbiAgICB9KVxyXG4gICk7XHJcbn1cclxuXHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsU0FBU0Esb0JBQW9CLFFBQTBCLFNBQVM7QUFDaEUsU0FDRUMsYUFBYSxFQUNiQyxhQUFhLEVBQ2JDLFlBQVksRUFFWkMsY0FBYyxFQUVkQyxVQUFVLEVBQ1ZDLE9BQU8sUUFDRixtQ0FBbUM7QUFHMUMsU0FBU0MsV0FBV0EsQ0FBQ0MsSUFBUyxFQUFFQyxFQUFVLEVBQUVDLEtBQWEsRUFBRTtFQUN6RCxPQUFPO0lBQ0xDLFFBQVEsRUFBRSxJQUFJO0lBQ2RILElBQUksRUFBSkEsSUFBSTtJQUNKQyxFQUFFLEVBQUZBLEVBQUU7SUFDRkMsS0FBSyxFQUFMQTtFQUNGLENBQUM7QUFDSDtBQUVBLE9BQU8sSUFBTUUsaUJBQWlCLEdBQUcsVUFBVTtBQUMzQyxPQUFPLElBQU1DLGVBQWUsR0FBR04sV0FBVyxDQUN4Q04sYUFBYSxFQUNiVyxpQkFBaUIsRUFDakIsVUFDRixDQUFDO0FBQ0QsT0FBTyxJQUFNRSxhQUFhLEdBQUcsVUFBVTtBQUN2QyxPQUFPLElBQU1DLFdBQVcsR0FBR1IsV0FBVyxDQUFDRCxPQUFPLEVBQUVRLGFBQWEsRUFBRSxTQUFTLENBQUM7QUFDekUsT0FBTyxJQUFNRSxZQUFZLEdBQUcsU0FBUztBQUNyQyxPQUFP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
104
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc1Byb2R1Y3RTdXBwbGllck1PRCIsImZhQWRkcmVzc0NhcmQiLCJmYUNoZWNrQ2lyY2xlIiwiZmFDcmVkaXRDYXJkIiwiZmFTaG9wcGluZ0NhcnQiLCJmYVRodW1ic1VwIiwiZmFUcnVjayIsIm1ha2VUYWJEYXRhIiwiaWNvbiIsImlkIiwidGl0bGUiLCJkaXNhYmxlZCIsInRhYklkQ3VzdG9tZXJJbmZvIiwidGFiQ3VzdG9tZXJJbmZvIiwidGFiSWRTaGlwbWVudCIsInRhYlNoaXBtZW50IiwidGFiSWRDb25maXJtIiwidGFiQ29uZmlybSIsInRhYk1PRENvbmZpcm0iLCJ0YWJJZFBheW1lbnQiLCJ0YWJQYXltZW50IiwidGFiSWRDb21wbGV0ZSIsInRhYkNvbXBsZXRlUXVvdGUiLCJ0YWJDb21wbGV0ZSIsInRhYnNQcm9kdWN0TU9EIiwiX3JlZiIsImluY2x1ZGVEb21haW5TaWdudXAiLCJqb2IiLCJjbGllbnQiLCJwcm9kdWN0IiwiaGFzQ2xpZW50IiwiY2xpZW50SGFzRG9tYWluIiwiaGFzU3RvcmUiLCJ0YWJzIiwibmVlZHNEcmFmdGluZyIsIl9vYmplY3RTcHJlYWQiLCJ0YWJzUHJvZHVjdFN1cHBsaWVyIiwiX3JlZjIiLCJpc0J1eVJlcXVlc3QiLCJuZWVkc1NoaXBwaW5nIiwidGFic0luaXQiLCJzZXR0aW5ncyIsIl9zZXR0aW5ncyRpc0J1eVJlcXVlcyIsImlzU3VwcGxpZXJNT0QiLCJPYmplY3QiLCJ2YWx1ZXMiXSwic291cmNlcyI6WyIuLi9zcmMvdGFic191dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1Byb2R1Y3RTdXBwbGllck1PRCwgdXNlckFkbWluRG9tYWlucyB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHtcbiAgZmFBZGRyZXNzQ2FyZCxcbiAgZmFDaGVja0NpcmNsZSxcbiAgZmFDcmVkaXRDYXJkLFxuICBmYURyYWZ0aW5nQ29tcGFzcyxcbiAgZmFTaG9wcGluZ0NhcnQsXG4gIGZhU3RvcmUsXG4gIGZhVGh1bWJzVXAsXG4gIGZhVHJ1Y2ssXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBNZXJjaGlDaGVja291dFRhYiB9IGZyb20gJy4vdHlwZXMnO1xuXG5mdW5jdGlvbiBtYWtlVGFiRGF0YShpY29uOiBhbnksIGlkOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHtcbiAgICBkaXNhYmxlZDogdHJ1ZSxcbiAgICBpY29uLFxuICAgIGlkLFxuICAgIHRpdGxlLFxuICB9IGFzIE1lcmNoaUNoZWNrb3V0VGFiO1xufVxuXG5leHBvcnQgY29uc3QgdGFiSWRDdXN0b21lckluZm8gPSAnY3VzdG9tZXInO1xuZXhwb3J0IGNvbnN0IHRhYkN1c3RvbWVySW5mbyA9IG1ha2VUYWJEYXRhKFxuICBmYUFkZHJlc3NDYXJkLFxuICB0YWJJZEN1c3RvbWVySW5mbyxcbiAgJ0N1c3RvbWVyJ1xuKTtcbmV4cG9ydCBjb25zdCB0YWJJZFNoaXBtZW50ID0gJ3NoaXBtZW50JztcbmV4cG9ydCBjb25zdCB0YWJTaGlwbWVudCA9IG1ha2VUYWJEYXRhKGZhVHJ1Y2ssIHRhYklkU2hpcG1lbnQsICdBZGRyZXNzJyk7XG5leHBvcnQgY29uc3QgdGFiSWRDb25maXJtID0gJ2NvbmZpcm0nO1xuZXhwb3J0IGNvbnN0IHRhYkNvbmZpcm0gPSBtYWtlVGFiRGF0YShmYVNob3BwaW5nQ2FydCwgdGFiSWRDb25maXJtLCAnQ29uZmlybScpO1xuZXhwb3J0IGNvbnN0IHRhYk1PRENvbmZpcm0gPSBtYWtlVGFiRGF0YShcbiAgZmFDaGVja0NpcmNsZSxcbiAgdGFiSWRDb25maXJtLFxuICAnQ29uZmlybSdcbik7XG5leHBvcnQgY29uc3QgdGFiSWRQYXltZW50ID0gJ3BheW1lbnQnO1xuZXhwb3J0IGNvbnN0IHRhYlBheW1lbnQgPSBtYWtlVGFiRGF0YShmYUNyZWRpdENhcmQsIHRhYklkUGF5bWVudCwgJ0NoZWNrb3V0Jyk7XG5leHBvcnQgY29uc3QgdGFiSWRDb21wbGV0ZSA9ICdjb21wbGV0ZSc7XG5leHBvcnQgY29uc3QgdGFiQ29tcGxldGVRdW90ZSA9IG1ha2VUYWJEYXRhKFxuICBmYVRodW1ic1VwLFxuICB0YWJJZENvbXBsZXRlLFxuICAnU3VibWl0dGVkJ1xuKTtcbmV4cG9ydCBjb25zdCB0YWJDb21wbGV0ZSA9IG1ha2VUYWJEYXRhKGZhVGh1bWJzVXAsIHRhYklkQ29tcGxldGUsICdDb21wbGV0ZScpO1xuXG5pbnRlcmZhY2UgVGFic1Byb2R1Y3RNT0Qge1xuICBpbmNsdWRlRG9tYWluU2lnbnVwPzogYm9vbGVhbjtcbiAgam9iOiBhbnk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJzUHJvZHVjdE1PRCh7XG4gIGluY2x1ZGVEb21haW5TaWdudXAsXG4gIGpvYixcbn06IFRhYnNQcm9kdWN0TU9EKSB7XG4gIGNvbnN0IHsgY2xpZW50LCBwcm9kdWN0IH0gPSBqb2I7XG4gIGNvbnN0IGhhc0NsaWVudCA9IGNsaWVudCAmJiAoY2xpZW50IGFzIGFueSkuaWQgPiAwO1xuICBjb25zdCBjbGllbnRIYXNEb21haW4gPSBjbGllbnQgJiYgY2xpZW50Lmhhc1N0b3JlO1xuICBjb25zdCB0YWJzID0ge30gYXMgYW55O1xuICBjb25zdCB7IG5lZWRzRHJhZnRpbmcgfSA9IHByb2R1Y3Q7XG4gIC8vIGlmIHRoZSBjdXJyZW50IHVzZXIgZG9lc24ndCBoYXZlIGFuIGFjY291bnQgYXNrIHRoZW0gdG8gc2lnbiB1cFxuICBpZiAoIWhhc0NsaWVudCkge1xuICAgIHRhYnNbdGFiSWRDdXN0b21lckluZm9dID0gbmVlZHNEcmFmdGluZ1xuICAgICAgPyB0YWJDdXN0b21lckluZm9cbiAgICAgIDogeyAuLi50YWJDdXN0b21lckluZm8sIGRpc2FibGVkOiBmYWxzZSB9O1xuICB9XG4gIC8vIGlmIHRoZSBjdXJyZW50IHVzZXIgZG9lc24ndCBoYXZlIGRvbWFpbiBhc2sgdGhlbSB0byBtYWtlIGEgZG9tYWluXG4gIC8vIGlmICghY2xpZW50SGFzRG9tYWluICYmIGluY2x1ZGVEb21haW5TaWdudXApIHtcbiAgLy8gICB0YWJzW3RhYklkTmV3RG9tYWluXSA9XG4gIC8vICAgICBoYXNDbGllbnQgP1xuICAvLyAgICAgICB7Li4udGFiTmV3RG9tYWluLCBkaXNhYmxlZDogbmVlZHNEcmFmdGluZ30gOlxuICAvLyAgICAgICB0YWJOZXdEb21haW47XG4gIC8vIH1cbiAgdGFic1t0YWJJZENvbmZpcm1dID0gdGFiTU9EQ29uZmlybTtcbiAgdGFic1t0YWJJZENvbXBsZXRlXSA9IHRhYkNvbXBsZXRlUXVvdGU7XG4gIHJldHVybiB0YWJzO1xufVxuXG5pbnRlcmZhY2UgVGFic1Byb2R1Y3RTdXBwbGllciB7XG4gIGluY2x1ZGVEb21haW5TaWdudXA/OiBib29sZWFuO1xuICBpc0J1eVJlcXVlc3Q6IGJvb2xlYW47XG4gIGpvYjogYW55O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGFic1Byb2R1Y3RTdXBwbGllcih7XG4gIGluY2x1ZGVEb21haW5TaWdudXAsXG4gIGpvYixcbiAgaXNCdXlSZXF1ZXN0LFxufTogVGFic1Byb2R1Y3RTdXBwbGllcikge1xuICBjb25zdCB7IGNsaWVudCwgcHJvZHVjdCB9ID0gam9iO1xuICBjb25zdCB0YWJzID0ge30gYXMgYW55O1xuICBjb25zdCBoYXNDbGllbnQgPSBjbGllbnQgJiYgKGNsaWVudCBhcyBhbnkpLmlkID4gMDtcbiAgY29uc3QgeyBuZWVkc0RyYWZ0aW5nLCBuZWVkc1NoaXBwaW5nIH0gPSBwcm9kdWN0O1xuICAvLyBpZiB0aGUgY3VycmVudCB1c2VyIGRvZXNuJ3QgaGF2ZSBhbiBhY2NvdW50IGFzayB0aGVtIHRvIHNpZ24gdXBcbiAgdGFic1t0YWJJZEN1c3RvbWVySW5mb10gPVxuICAgIG5lZWRzRHJhZnRpbmdcbiAgICAgID8gdGFiQ3VzdG9tZXJJbmZvXG4gICAgICA6IHsgLi4udGFiQ3VzdG9tZXJJbmZvLCBkaXNhYmxlZDogZmFsc2UgfTtcbiAgaWYgKG5lZWRzU2hpcHBpbmcpIHtcbiAgICB0YWJzW3RhYklkU2hpcG1lbnRdID0ge1xuICAgICAgLi4udGFiU2hpcG1lbnQsXG4gICAgICBkaXNhYmxlZDogIWhhc0NsaWVudCB8fCBuZWVkc0RyYWZ0aW5nLFxuICAgIH07XG4gIH1cbiAgdGFic1t0YWJJZENvbmZpcm1dID0ge1xuICAgIC4uLnRhYkNvbmZpcm0sXG4gICAgZGlzYWJsZWQ6ICFoYXNDbGllbnQgfHwgbmVlZHNEcmFmdGluZyB8fCBuZWVkc1NoaXBwaW5nLFxuICB9O1xuICBpZiAoaXNCdXlSZXF1ZXN0KSB7XG4gICAgdGFic1t0YWJJZFBheW1lbnRdID0gdGFiUGF5bWVudDtcbiAgICB0YWJzW3RhYklkQ29tcGxldGVdID0gdGFiQ29tcGxldGU7XG4gIH0gZWxzZSB7XG4gICAgdGFic1t0YWJJZENvbXBsZXRlXSA9IHRhYkNvbXBsZXRlUXVvdGU7XG4gIH1cbiAgcmV0dXJuIHRhYnM7XG59XG5cbmludGVyZmFjZSBUYWJzSW5pdCB7XG4gIGluY2x1ZGVEb21haW5TaWdudXA/OiBib29sZWFuO1xuICBpc0J1eVJlcXVlc3Q/OiBib29sZWFuO1xuICBqb2I6IGFueTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRhYnNJbml0KHNldHRpbmdzOiBUYWJzSW5pdCkge1xuICBjb25zdCB7XG4gICAgaW5jbHVkZURvbWFpblNpZ251cCxcbiAgICBpc0J1eVJlcXVlc3QgPSBmYWxzZSxcbiAgICBqb2IsXG4gIH0gPSBzZXR0aW5ncztcbiAgY29uc3QgeyBwcm9kdWN0IH0gPSBqb2I7XG4gIGNvbnN0IGlzU3VwcGxpZXJNT0QgPSBpc1Byb2R1Y3RTdXBwbGllck1PRChwcm9kdWN0KTtcbiAgaWYgKGlzU3VwcGxpZXJNT0QpIHtcbiAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyhcbiAgICAgIHRhYnNQcm9kdWN0TU9EKHsgaW5jbHVkZURvbWFpblNpZ251cCwgam9iIH0pXG4gICAgKTtcbiAgfVxuICByZXR1cm4gT2JqZWN0LnZhbHVlcyhcbiAgICB0YWJzUHJvZHVjdFN1cHBsaWVyKHtcbiAgICAgIGluY2x1ZGVEb21haW5T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
package/lib/types.js CHANGED
@@ -36,4 +36,4 @@ export var Role = /*#__PURE__*/function (Role) {
36
36
  Role[Role["THEME_EDITOR"] = 8] = "THEME_EDITOR";
37
37
  return Role;
38
38
  }({});
39
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJQcm9kdWN0VHlwZSIsIlJvbGUiXSwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gUHJvZHVjdFR5cGUge1xyXG4gIFNVUFBMSUVSX01PRCA9IDAsXHJcbiAgU1VQUExJRVIgPSAxLFxyXG4gIFNFTExFUiA9IDIsXHJcbiAgU0VMTEVSX01PRCA9IDMsXHJcbiAgQ0xPTkVEX1NVUFBMSUVSX01PRCA9IDQsXHJcbiAgQ0xPTkVEX1NFTExFUl9NT0QgPSA1LFxyXG4gIFBST0RVQ1RJT05fTU9EID0gNixcclxuICBDTE9ORURfU1VQUExJRVIgPSA3LFxyXG4gIElOVkVOVE9SWV9TRUxMRVIgPSA4LFxyXG4gIElOVkVOVE9SWV9TVVBQTElFUiA9IDksXHJcbiAgU0VMTEVSX0dST1VQX0JVWSA9IDEwLFxyXG4gIFNVUFBMSUVSX1JFU0VMTF9NT0QgPSAxMSxcclxuICBTVVBQTElFUl9SRVNFTEwgPSAxMixcclxuICBTVVBQTElFUl9HUk9VUF9CVVlfSU5WRU5UT1JZID0gMTMsXHJcbiAgQ0xPTkVEX0lOVkVOVE9SWV9TRUxMRVIgPSAxNCxcclxuICBDTE9ORURfU0VMTEVSX0dST1VQX0JVWV9JTlZFTlRPUlkgPSAxNSxcclxuICBDTE9ORURfU1VQUExJRVJfUkVTRUxMX01PRCA9IDE2LFxyXG4gIFNVUFBMSUVSX1RPX1NVUFBMSUVSX1JFU0VMTF9NT0QgPSAxNyxcclxuICBDTE9ORURfU1VQUExJRVJfUkVTRUxMID0gMTgsXHJcbiAgU1VQUExZX0RPTUFJTl9SRUZFUkVOQ0UgPSAxOSxcclxuICBTRUxMRVJfRklMRV9ET1dOTE9BRCA9IDIwLFxyXG4gIFNVUFBMSUVSX01PRF9TVVBQTFlfQ0hBSU5fUkVRVUVTVCA9IDIxLFxyXG4gIFNVUFBMSUVSX1NVUFBMWV9DSEFJTl9SRVFVRVNUID0gMjIsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFJvbGUge1xyXG4gIFBVQkxJQyA9IDAsXHJcbiAgQURNSU4gPSAxLFxyXG4gIFNBTEVTID0gMixcclxuICBERVNJR05FUiA9IDMsXHJcbiAgU1VQUExJRVIgPSA0LFxyXG4gIENMSUVOVCA9IDUsXHJcbiAgTUFOQUdFUiA9IDYsXHJcbiAgQUNDT1VOVEFOVCA9IDcsXHJcbiAgVEhFTUVfRURJVE9SID0gOCxcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNZXJjaGlDaGVja291dFRhYiB7XHJcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgaWNvbjogYW55O1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgdGl0bGU6IHN0cmluZztcclxufVxyXG4iXSwibWFwcGluZ3MiOiJBQUFBLFdBQVlBLFdBQVcsMEJBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFBLE9BQVhBLFdBQVc7QUFBQTtBQTBCdkIsV0FBWUMsSUFBSSwwQkFBSkEsSUFBSTtFQUFKQSxJQUFJLENBQUpBLElBQUk7RUFBSkEsSUFBSSxDQUFKQSxJQUFJO0VBQUpBLElBQUksQ0FBSkEsSUFBSTtFQUFKQSxJQUFJLENBQUpBLElBQUk7RUFBSkEsSUFBSSxDQUFKQSxJQUFJO0VBQUpBLElBQUksQ0FBSkEsSUFBSTtFQUFKQSxJQUFJLENBQUpBLElBQUk7RUFBSkEsSUFBSSxDQUFKQSxJQUFJO0VBQUpBLElBQUksQ0FBSkEsSUFBSTtFQUFBLE9BQUpBLElBQUk7QUFBQSJ9
39
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJQcm9kdWN0VHlwZSIsIlJvbGUiXSwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gUHJvZHVjdFR5cGUge1xuICBTVVBQTElFUl9NT0QgPSAwLFxuICBTVVBQTElFUiA9IDEsXG4gIFNFTExFUiA9IDIsXG4gIFNFTExFUl9NT0QgPSAzLFxuICBDTE9ORURfU1VQUExJRVJfTU9EID0gNCxcbiAgQ0xPTkVEX1NFTExFUl9NT0QgPSA1LFxuICBQUk9EVUNUSU9OX01PRCA9IDYsXG4gIENMT05FRF9TVVBQTElFUiA9IDcsXG4gIElOVkVOVE9SWV9TRUxMRVIgPSA4LFxuICBJTlZFTlRPUllfU1VQUExJRVIgPSA5LFxuICBTRUxMRVJfR1JPVVBfQlVZID0gMTAsXG4gIFNVUFBMSUVSX1JFU0VMTF9NT0QgPSAxMSxcbiAgU1VQUExJRVJfUkVTRUxMID0gMTIsXG4gIFNVUFBMSUVSX0dST1VQX0JVWV9JTlZFTlRPUlkgPSAxMyxcbiAgQ0xPTkVEX0lOVkVOVE9SWV9TRUxMRVIgPSAxNCxcbiAgQ0xPTkVEX1NFTExFUl9HUk9VUF9CVVlfSU5WRU5UT1JZID0gMTUsXG4gIENMT05FRF9TVVBQTElFUl9SRVNFTExfTU9EID0gMTYsXG4gIFNVUFBMSUVSX1RPX1NVUFBMSUVSX1JFU0VMTF9NT0QgPSAxNyxcbiAgQ0xPTkVEX1NVUFBMSUVSX1JFU0VMTCA9IDE4LFxuICBTVVBQTFlfRE9NQUlOX1JFRkVSRU5DRSA9IDE5LFxuICBTRUxMRVJfRklMRV9ET1dOTE9BRCA9IDIwLFxuICBTVVBQTElFUl9NT0RfU1VQUExZX0NIQUlOX1JFUVVFU1QgPSAyMSxcbiAgU1VQUExJRVJfU1VQUExZX0NIQUlOX1JFUVVFU1QgPSAyMixcbn1cblxuZXhwb3J0IGVudW0gUm9sZSB7XG4gIFBVQkxJQyA9IDAsXG4gIEFETUlOID0gMSxcbiAgU0FMRVMgPSAyLFxuICBERVNJR05FUiA9IDMsXG4gIFNVUFBMSUVSID0gNCxcbiAgQ0xJRU5UID0gNSxcbiAgTUFOQUdFUiA9IDYsXG4gIEFDQ09VTlRBTlQgPSA3LFxuICBUSEVNRV9FRElUT1IgPSA4LFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lcmNoaUNoZWNrb3V0VGFiIHtcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIGljb246IGFueTtcbiAgaWQ6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsV0FBWUEsV0FBVywwQkFBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQVhBLFdBQVcsQ0FBWEEsV0FBVztFQUFYQSxXQUFXLENBQVhBLFdBQVc7RUFBWEEsV0FBVyxDQUFYQSxXQUFXO0VBQUEsT0FBWEEsV0FBVztBQUFBO0FBMEJ2QixXQUFZQyxJQUFJLDBCQUFKQSxJQUFJO0VBQUpBLElBQUksQ0FBSkEsSUFBSTtFQUFKQSxJQUFJLENBQUpBLElBQUk7RUFBSkEsSUFBSSxDQUFKQSxJQUFJO0VBQUpBLElBQUksQ0FBSkEsSUFBSTtFQUFKQSxJQUFJLENBQUpBLElBQUk7RUFBSkEsSUFBSSxDQUFKQSxJQUFJO0VBQUpBLElBQUksQ0FBSkEsSUFBSTtFQUFKQSxJQUFJLENBQUpBLElBQUk7RUFBSkEsSUFBSSxDQUFKQSxJQUFJO0VBQUEsT0FBSkEsSUFBSTtBQUFBIn0=
package/lib/utils.js CHANGED
@@ -479,9 +479,20 @@ export var supportedCountryDefaultsWithDefault = function supportedCountryDefaul
479
479
  var defaultCountryValues = supportedCountryDefaults[countryCode];
480
480
  return defaultCountryValues ? defaultCountryValues : supportedCountryDefaults.AU;
481
481
  };
482
- export function cleanClientFiles(clientFiles) {
482
+ function isFileRef(value) {
483
+ return value != null && value.id != null && value.id !== '';
484
+ }
485
+ export function cleanClientFiles() {
486
+ var clientFiles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
483
487
  return clientFiles.map(function (clientFile) {
484
- return clientFile.file;
488
+ if (!clientFile) return undefined;
489
+ if (isFileRef(clientFile.file)) return clientFile.file;
490
+ if (isFileRef(clientFile)) return {
491
+ id: clientFile.id
492
+ };
493
+ return undefined;
494
+ }).filter(function (file) {
495
+ return file != null;
485
496
  });
486
497
  }
487
498
  export function appendClientToOwnDraft(job) {
@@ -491,9 +502,9 @@ export function appendClientToOwnDraft(job) {
491
502
  }
492
503
  return job;
493
504
  }
494
- /**
495
- * Decode/normalize a redirect base URL from embed script params.
496
- * Handles percent-encoding, legacy %27 wrappers, and trailing junk.
505
+ /**
506
+ * Decode/normalize a redirect base URL from embed script params.
507
+ * Handles percent-encoding, legacy %27 wrappers, and trailing junk.
497
508
  */
498
509
  export function normalizeRedirectBaseUrl(url) {
499
510
  var clean = String(url || '').trim().replace(/%27/g, '').replace(/%91/g, '').replace(/%92/g, '').replace(/%93/g, '').replace(/%94/g, '').replace(/^['"]+|['"]+$/g, '');
@@ -517,9 +528,9 @@ export function getClientEmail(client) {
517
528
  return typeof email === 'string' && email.trim() ? email.trim() : undefined;
518
529
  }
519
530
 
520
- /**
521
- * Build the post-checkout/quote redirect URL with proper query separators.
522
- * Always safe when the base URL omits a trailing "?" / "&".
531
+ /**
532
+ * Build the post-checkout/quote redirect URL with proper query separators.
533
+ * Always safe when the base URL omits a trailing "?" / "&".
523
534
  */
524
535
  export function buildSuccessRedirectUrl(url, redirectWithValue, value) {
525
536
  var extras = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
@@ -546,4 +557,4 @@ export function redirectOnSuccess(url, redirectWithValue, value) {
546
557
  var extras = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
547
558
  window.location.href = buildSuccessRedirectUrl(url, redirectWithValue, value, extras);
548
559
  }
549
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJQcm9kdWN0VHlwZSIsIlJvbGUiLCJpc29Db3VudHJpZXMiLCJBRiIsIkFYIiwiQUwiLCJEWiIsIkFTIiwiQUQiLCJBTyIsIkFJIiwiQVEiLCJBRyIsIkFSIiwiQU0iLCJBVyIsIkFVIiwiQVQiLCJBWiIsIkJTIiwiQkgiLCJCRCIsIkJCIiwiQlkiLCJCRSIsIkJaIiwiQkoiLCJCTSIsIkJUIiwiQk8iLCJCQSIsIkJXIiwiQlYiLCJCUiIsIklPIiwiQk4iLCJCRyIsIkJGIiwiQkkiLCJLSCIsIkNNIiwiQ0EiLCJDViIsIktZIiwiQ0YiLCJURCIsIkNMIiwiQ04iLCJDWCIsIkNDIiwiQ08iLCJLTSIsIkNHIiwiQ0QiLCJDSyIsIkNSIiwiQ0kiLCJIUiIsIkNVIiwiQ1kiLCJDWiIsIkRLIiwiREoiLCJETSIsIkRPIiwiRUMiLCJFRyIsIlNWIiwiR1EiLCJFUiIsIkVFIiwiRVQiLCJGSyIsIkZPIiwiRkoiLCJGSSIsIkZSIiwiR0YiLCJQRiIsIlRGIiwiR0EiLCJHTSIsIkdFIiwiREUiLCJHSCIsIkdJIiwiR1IiLCJHTCIsIkdEIiwiR1AiLCJHVSIsIkdUIiwiR0ciLCJHTiIsIkdXIiwiR1kiLCJIVCIsIkhNIiwiVkEiLCJITiIsIkhLIiwiSFUiLCJJUyIsIklOIiwiSUQiLCJJUiIsIklRIiwiSUUiLCJJTSIsIklMIiwiSVQiLCJKTSIsIkpQIiwiSkUiLCJKTyIsIktaIiwiS0UiLCJLSSIsIktSIiwiS1ciLCJLRyIsIkxBIiwiTFYiLCJMQiIsIkxTIiwiTFIiLCJMWSIsIkxJIiwiTFQiLCJMVSIsIk1PIiwiTUsiLCJNRyIsIk1XIiwiTVkiLCJNViIsIk1MIiwiTVQiLCJNSCIsIk1RIiwiTVIiLCJNVSIsIllUIiwiTVgiLCJGTSIsIk1EIiwiTUMiLCJNTiIsIk1FIiwiTVMiLCJNQSIsIk1aIiwiTU0iLCJOQSIsIk5SIiwiTlAiLCJOTCIsIkFOIiwiTkMiLCJOWiIsIk5JIiwiTkUiLCJORyIsIk5VIiwiTkYiLCJNUCIsIk5PIiwiT00iLCJQSyIsIlBXIiwiUFMiLCJQQSIsIlBHIiwiUFkiLCJQRSIsIlBIIiwiUE4iLCJQTCIsIlBUIiwiUFIiLCJRQSIsIlJFIiwiUk8iLCJSVSIsIlJXIiwiQkwiLCJTSCIsIktOIiwiTEMiLCJNRiIsIlBNIiwiVkMiLCJXUyIsIlNNIiwiU1QiLCJTQSIsIlNOIiwiUlMiLCJTQyIsIlNMIiwiU0ciLCJTSyIsIlNJIiwiU0IiLCJTTyIsIlpBIiwiR1MiLCJFUyIsIkxLIiwiU0QiLCJTUiIsIlNKIiwiU1oiLCJTRSIsIkNIIiwiU1kiLCJUVyIsIlRKIiwiVFoiLCJUSCIsIlRMIiwiVEciLCJUSyIsIlRPIiwiVFQiLCJUTiIsIlRSIiwiVE0iLCJUQyIsIlRWIiwiVUciLCJVQSIsIkFFIiwiR0IiLCJVUyIsIlVNIiwiVVkiLCJVWiIsIlZVIiwiVkUiLCJWTiIsIlZHIiwiVkkiLCJXRiIsIkVIIiwiWUUiLCJaTSIsIlpXIiwidXNlckRvbWFpbnNCeVJvbGVzIiwidXNlciIsInJvbGVzIiwiZUQiLCJlbnJvbGxlZERvbWFpbnMiLCJkb21haW5zIiwiaSIsImxlbmd0aCIsImUiLCJpbmNsdWRlcyIsInJvbGUiLCJwdXNoIiwiZG9tYWluIiwidXNlckFkbWluRG9tYWlucyIsIkFETUlOIiwiTUFOQUdFUiIsImlzUHJvZHVjdFN1cHBsaWVyTU9EIiwicHJvZHVjdCIsInByb2R1Y3RUeXBlIiwiU3RyaW5nIiwiU1VQUExJRVJfTU9EIiwiU1VQUExJRVJfUkVTRUxMX01PRCIsImlzVXNlclJlZ2lzdGVyZWQiLCJpZCIsInVuZGVmaW5lZCIsImlzUmVnaXN0ZXJlZEFuZEhhc1N0b3JlIiwiaGFzU3RvcmUiLCJzdXBwb3J0ZWROdW1iZXJzIiwicGhvbmVPcHRpb25zIiwiT2JqZWN0Iiwia2V5cyIsIm1hcCIsImtleSIsInZhbHVlIiwibGFiZWwiLCJhZGRyZXNzQ29tcG9uZW50c1NldHRpbmdzQmFja2VuZCIsImFkbWluaXN0cmF0aXZlX2FyZWFfbGV2ZWxfMSIsImFkbWluaXN0cmF0aXZlX2FyZWFfbGV2ZWxfMiIsImNvdW50cnkiLCJlc3RhYmxpc2htZW50IiwiZmxvb3IiLCJsb2NhbGl0eSIsInBvc3RhbF9jb2RlIiwicHJlbWlzZSIsInJvb20iLCJyb3V0ZSIsInN0cmVldF9udW1iZXIiLCJzdWJsb2NhbGl0eSIsInN1YnByZW1pc2UiLCJnb29nbGVQbGFjZXNSZXN1bHRBc05ld0FkZHJlc3MiLCJwbGFjZURldGFpbHMiLCJhZGRyZXNzQ29tcG9uZW50cyIsIm5hbWUiLCJhZGRyZXNzIiwiY2l0eSIsImxpbmVPbmUiLCJsaW5lVHdvIiwicG9zdGNvZGUiLCJzdGF0ZSIsImFkZHJDb21wb25lbnQiLCJhZGRyVHlwZXMiLCJ0eXBlcyIsImFkZHJUeXBlIiwiY29tcG9uZW50U2V0dGluZyIsIl9pdGVyYXRvciIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwiX3N0ZXAiLCJzIiwibiIsImRvbmUiLCJ0eXBlIiwiZXJyIiwiZiIsImFkZHJlc3NWYWwiLCJvbGRMaW5lT25lIiwiY29uY2F0IiwidHJpbSIsIm9sZENpdHkiLCJmb3JtYXR0ZWRBZGRyZXNzIiwicGFydHMiLCJzcGxpdCIsImFkZHJlc3NJbk9uZUxpbmUiLCJhIiwibDEiLCJsMiIsImMiLCJwIiwiY291bnRyeUZ1bGwiLCJGaWVsZFR5cGUiLCJpc1NlbGVjdGFibGUiLCJmaWVsZFR5cGUiLCJTRUxFQ1QiLCJDSEVDS0JPWCIsIlJBRElPIiwiSU1BR0VfU0VMRUNUIiwiQ09MT1VSX1NFTEVDVCIsIlRVUk5BUk9VTkRfVElNRSIsIkNPTE9VUl9FWFRSQUNUIiwiaXNJbnN0cnVjdGlvbnNUeXBlIiwiRklFTERfSU5TVFJVQ1RJT05TIiwiY291bnRyeURlZmF1bHREaWN0IiwiY3VycmVuY3kiLCJzdXBwb3J0ZWRDb3VudHJ5RGVmYXVsdHMiLCJzdXBwb3J0ZWRDb3VudHJ5RGVmYXVsdHNXaXRoRGVmYXVsdCIsImNvdW50cnlDb2RlIiwiZGVmYXVsdENvdW50cnlWYWx1ZXMiLCJjbGVhbkNsaWVudEZpbGVzIiwiY2xpZW50RmlsZXMiLCJjbGllbnRGaWxlIiwiZmlsZSIsImFwcGVuZENsaWVudFRvT3duRHJhZnQiLCJqb2IiLCJvd25EcmFmdHMiLCJkZXNpZ25lciIsImNsaWVudCIsIm5vcm1hbGl6ZVJlZGlyZWN0QmFzZVVybCIsInVybCIsImNsZWFuIiwicmVwbGFjZSIsInRlc3QiLCJkZWNvZGVkIiwiZGVjb2RlVVJJQ29tcG9uZW50IiwiX3VudXNlZCIsImdldENsaWVudEVtYWlsIiwiX2NsaWVudCRlbWFpbEFkZHJlc3NlIiwiZW1haWwiLCJlbWFpbEFkZHJlc3NlcyIsImVtYWlsQWRkcmVzcyIsImJ1aWxkU3VjY2Vzc1JlZGlyZWN0VXJsIiwicmVkaXJlY3RXaXRoVmFsdWUiLCJleHRyYXMiLCJhcmd1bWVudHMiLCJiYXNlIiwidGFyZ2V0IiwiVVJMIiwid2luZG93IiwibG9jYXRpb24iLCJocmVmIiwic2VhcmNoUGFyYW1zIiwic2V0IiwiaW52b2ljZUlkIiwic3RhcnRzV2l0aCIsImhvc3QiLCJwYXRobmFtZSIsInNlYXJjaCIsImhhc2giLCJ0b1N0cmluZyIsInJlZGlyZWN0T25TdWNjZXNzIl0sInNvdXJjZXMiOlsiLi4vc3JjL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2R1Y3RUeXBlLCBSb2xlIH0gZnJvbSAnLi90eXBlcyc7XHJcblxyXG5leHBvcnQgY29uc3QgaXNvQ291bnRyaWVzOiBhbnkgPSB7XHJcbiAgQUY6IFwiQWZnaGFuaXN0YW5cIixcclxuICBBWDogXCJBbGFuZCBJc2xhbmRzXCIsXHJcbiAgQUw6IFwiQWxiYW5pYVwiLFxyXG4gIERaOiBcIkFsZ2VyaWFcIixcclxuICBBUzogXCJBbWVyaWNhbiBTYW1vYVwiLFxyXG4gIEFEOiBcIkFuZG9ycmFcIixcclxuICBBTzogXCJBbmdvbGFcIixcclxuICBBSTogXCJBbmd1aWxsYVwiLFxyXG4gIEFROiBcIkFudGFyY3RpY2FcIixcclxuICBBRzogXCJBbnRpZ3VhIEFuZCBCYXJidWRhXCIsXHJcbiAgQVI6IFwiQXJnZW50aW5hXCIsXHJcbiAgQU06IFwiQXJtZW5pYVwiLFxyXG4gIEFXOiBcIkFydWJhXCIsXHJcbiAgQVU6IFwiQXVzdHJhbGlhXCIsXHJcbiAgQVQ6IFwiQXVzdHJpYVwiLFxyXG4gIEFaOiBcIkF6ZXJiYWlqYW5cIixcclxuICBCUzogXCJCYWhhbWFzXCIsXHJcbiAgQkg6IFwiQmFocmFpblwiLFxyXG4gIEJEOiBcIkJhbmdsYWRlc2hcIixcclxuICBCQjogXCJCYXJiYWRvc1wiLFxyXG4gIEJZOiBcIkJlbGFydXNcIixcclxuICBCRTogXCJCZWxnaXVtXCIsXHJcbiAgQlo6IFwiQmVsaXplXCIsXHJcbiAgQko6IFwiQmVuaW5cIixcclxuICBCTTogXCJCZXJtdWRhXCIsXHJcbiAgQlQ6IFwiQmh1dGFuXCIsXHJcbiAgQk86IFwiQm9saXZpYVwiLFxyXG4gIEJBOiBcIkJvc25pYSBBbmQgSGVyemVnb3ZpbmFcIixcclxuICBCVzogXCJCb3Rzd2FuYVwiLFxyXG4gIEJWOiBcIkJvdXZldCBJc2xhbmRcIixcclxuICBCUjogXCJCcmF6aWxcIixcclxuICBJTzogXCJCcml0aXNoIEluZGlhbiBPY2VhbiBUZXJyaXRvcnlcIixcclxuICBCTjogXCJCcnVuZWkgRGFydXNzYWxhbVwiLFxyXG4gIEJHOiBcIkJ1bGdhcmlhXCIsXHJcbiAgQkY6IFwiQnVya2luYSBGYXNvXCIsXHJcbiAgQkk6IFwiQnVydW5kaVwiLFxyXG4gIEtIOiBcIkNhbWJvZGlhXCIsXHJcbiAgQ006IFwiQ2FtZXJvb25cIixcclxuICBDQTogXCJDYW5hZGFcIixcclxuICBDVjogXCJDYXBlIFZlcmRlXCIsXHJcbiAgS1k6IFwiQ2F5bWFuIElzbGFuZHNcIixcclxuICBDRjogXCJDZW50cmFsIEFmcmljYW4gUmVwdWJsaWNcIixcclxuICBURDogXCJDaGFkXCIsXHJcbiAgQ0w6IFwiQ2hpbGVcIixcclxuICBDTjogXCJDaGluYVwiLFxyXG4gIENYOiBcIkNocmlzdG1hcyBJc2xhbmRcIixcclxuICBDQzogXCJDb2NvcyAoS2VlbGluZykgSXNsYW5kc1wiLFxyXG4gIENPOiBcIkNvbG9tYmlhXCIsXHJcbiAgS006IFwiQ29tb3Jvc1wiLFxyXG4gIENHOiBcIkNvbmdvXCIsXHJcbiAgQ0Q6IFwiQ29uZ28sIERlbW9jcmF0aWMgUmVwdWJsaWNcIixcclxuICBDSzogXCJDb29rIElzbGFuZHNcIixcclxuICBDUjogXCJDb3N0YSBSaWNhXCIsXHJcbiAgQ0k6IFwiQ290ZSBEJ0l2b2lyZVwiLFxyXG4gIEhSOiBcIkNyb2F0aWFcIixcclxuICBDVTogXCJDdWJhXCIsXHJcbiAgQ1k6IFwiQ3lwcnVzXCIsXHJcbiAgQ1o6IFwiQ3plY2ggUmVwdWJsaWNcIixcclxuICBESzogXCJEZW5tYXJrXCIsXHJcbiAgREo6IFwiRGppYm91dGlcIixcclxuICBETTogXCJEb21pbmljYVwiLFxyXG4gIERPOiBcIkRvbWluaWNhbiBSZXB1YmxpY1wiLFxyXG4gIEVDOiBcIkVjdWFkb3JcIixcclxuICBFRzogXCJFZ3lwdFwiLFxyXG4gIFNWOiBcIkVsIFNhbHZhZG9yXCIsXHJcbiAgR1E6IFwiRXF1YXRvcmlhbCBHdWluZWFcIixcclxuICBFUjogXCJFcml0cmVhXCIsXHJcbiAgRUU6IFwiRXN0b25pYVwiLFxyXG4gIEVUOiBcIkV0aGlvcGlhXCIsXHJcbiAgRks6IFwiRmFsa2xhbmQgSXNsYW5kcyAoTWFsdmluYXMpXCIsXHJcbiAgRk86IFwiRmFyb2UgSXNsYW5kc1wiLFxyXG4gIEZKOiBcIkZpamlcIixcclxuICBGSTogXCJGaW5sYW5kXCIsXHJcbiAgRlI6IFwiRnJhbmNlXCIsXHJcbiAgR0Y6IFwiRnJlbmNoIEd1aWFuYVwiLFxyXG4gIFBGOiBcIkZyZW5jaCBQb2x5bmVzaWFcIixcclxuICBURjogXCJGcmVuY2ggU291dGhlcm4gVGVycml0b3JpZXNcIixcclxuICBHQTogXCJHYWJvblwiLFxyXG4gIEdNOiBcIkdhbWJpYVwiLFxyXG4gIEdFOiBcIkdlb3JnaWFcIixcclxuICBERTogXCJHZXJtYW55XCIsXHJcbiAgR0g6IFwiR2hhbmFcIixcclxuICBHSTogXCJHaWJyYWx0YXJcIixcclxuICBHUjogXCJHcmVlY2VcIixcclxuICBHTDogXCJHcmVlbmxhbmRcIixcclxuICBHRDogXCJHcmVuYWRhXCIsXHJcbiAgR1A6IFwiR3VhZGVsb3VwZVwiLFxyXG4gIEdVOiBcIkd1YW1cIixcclxuICBHVDogXCJHdWF0ZW1hbGFcIixcclxuICBHRzogXCJHdWVybnNleVwiLFxyXG4gIEdOOiBcIkd1aW5lYVwiLFxyXG4gIEdXOiBcIkd1aW5lYS1CaXNzYXVcIixcclxuICBHWTogXCJHdXlhbmFcIixcclxuICBIVDogXCJIYWl0aVwiLFxyXG4gIEhNOiBcIkhlYXJkIElzbGFuZCAmIE1jZG9uYWxkIElzbGFuZHNcIixcclxuICBWQTogXCJIb2x5IFNlZSAoVmF0aWNhbiBDaXR5IFN0YXRlKVwiLFxyXG4gIEhOOiBcIkhvbmR1cmFzXCIsXHJcbiAgSEs6IFwiSG9uZyBLb25nXCIsXHJcbiAgSFU6IFwiSHVuZ2FyeVwiLFxyXG4gIElTOiBcIkljZWxhbmRcIixcclxuICBJTjogXCJJbmRpYVwiLFxyXG4gIElEOiBcIkluZG9uZXNpYVwiLFxyXG4gIElSOiBcIklyYW4sIElzbGFtaWMgUmVwdWJsaWMgT2ZcIixcclxuICBJUTogXCJJcmFxXCIsXHJcbiAgSUU6IFwiSXJlbGFuZFwiLFxyXG4gIElNOiBcIklzbGUgT2YgTWFuXCIsXHJcbiAgSUw6IFwiSXNyYWVsXCIsXHJcbiAgSVQ6IFwiSXRhbHlcIixcclxuICBKTTogXCJKYW1haWNhXCIsXHJcbiAgSlA6IFwiSmFwYW5cIixcclxuICBKRTogXCJKZXJzZXlcIixcclxuICBKTzogXCJKb3JkYW5cIixcclxuICBLWjogXCJLYXpha2hzdGFuXCIsXHJcbiAgS0U6IFwiS2VueWFcIixcclxuICBLSTogXCJLaXJpYmF0aVwiLFxyXG4gIEtSOiBcIktvcmVhXCIsXHJcbiAgS1c6IFwiS3V3YWl0XCIsXHJcbiAgS0c6IFwiS3lyZ3l6c3RhblwiLFxyXG4gIExBOiBcIkxhbyBQZW9wbGUncyBEZW1vY3JhdGljIFJlcHVibGljXCIsXHJcbiAgTFY6IFwiTGF0dmlhXCIsXHJcbiAgTEI6IFwiTGViYW5vblwiLFxyXG4gIExTOiBcIkxlc290aG9cIixcclxuICBMUjogXCJMaWJlcmlhXCIsXHJcbiAgTFk6IFwiTGlieWFuIEFyYWIgSmFtYWhpcml5YVwiLFxyXG4gIExJOiBcIkxpZWNodGVuc3RlaW5cIixcclxuICBMVDogXCJMaXRodWFuaWFcIixcclxuICBMVTogXCJMdXhlbWJvdXJnXCIsXHJcbiAgTU86IFwiTWFjYW9cIixcclxuICBNSzogXCJNYWNlZG9uaWFcIixcclxuICBNRzogXCJNYWRhZ2FzY2FyXCIsXHJcbiAgTVc6IFwiTWFsYXdpXCIsXHJcbiAgTVk6IFwiTWFsYXlzaWFcIixcclxuICBNVjogXCJNYWxkaXZlc1wiLFxyXG4gIE1MOiBcIk1hbGlcIixcclxuICBNVDogXCJNYWx0YVwiLFxyXG4gIE1IOiBcIk1hcnNoYWxsIElzbGFuZHNcIixcclxuICBNUTogXCJNYXJ0aW5pcXVlXCIsXHJcbiAgTVI6IFwiTWF1cml0YW5pYVwiLFxyXG4gIE1VOiBcIk1hdXJpdGl1c1wiLFxyXG4gIFlUOiBcIk1heW90dGVcIixcclxuICBNWDogXCJNZXhpY29cIixcclxuICBGTTogXCJNaWNyb25lc2lhLCBGZWRlcmF0ZWQgU3RhdGVzIE9mXCIsXHJcbiAgTUQ6IFwiTW9sZG92YVwiLFxyXG4gIE1DOiBcIk1vbmFjb1wiLFxyXG4gIE1OOiBcIk1vbmdvbGlhXCIsXHJcbiAgTUU6IFwiTW9udGVuZWdyb1wiLFxyXG4gIE1TOiBcIk1vbnRzZXJyYXRcIixcclxuICBNQTogXCJNb3JvY2NvXCIsXHJcbiAgTVo6IFwiTW96YW1iaXF1ZVwiLFxyXG4gIE1NOiBcIk15YW5tYXJcIixcclxuICBOQTogXCJOYW1pYmlhXCIsXHJcbiAgTlI6IFwiTmF1cnVcIixcclxuICBOUDogXCJOZXBhbFwiLFxyXG4gIE5MOiBcIk5ldGhlcmxhbmRzXCIsXHJcbiAgQU46IFwiTmV0aGVybGFuZHMgQW50aWxsZXNcIixcclxuICBOQzogXCJOZXcgQ2FsZWRvbmlhXCIsXHJcbiAgTlo6IFwiTmV3IFplYWxhbmRcIixcclxuICBOSTogXCJOaWNhcmFndWFcIixcclxuICBORTogXCJOaWdlclwiLFxyXG4gIE5HOiBcIk5pZ2VyaWFcIixcclxuICBOVTogXCJOaXVlXCIsXHJcbiAgTkY6IFwiTm9yZm9sayBJc2xhbmRcIixcclxuICBNUDogXCJOb3J0aGVybiBNYXJpYW5hIElzbGFuZHNcIixcclxuICBOTzogXCJOb3J3YXlcIixcclxuICBPTTogXCJPbWFuXCIsXHJcbiAgUEs6IFwiUGFraXN0YW5cIixcclxuICBQVzogXCJQYWxhdVwiLFxyXG4gIFBTOiBcIlBhbGVzdGluaWFuIFRlcnJpdG9yeSwgT2NjdXBpZWRcIixcclxuICBQQTogXCJQYW5hbWFcIixcclxuICBQRzogXCJQYXB1YSBOZXcgR3VpbmVhXCIsXHJcbiAgUFk6IFwiUGFyYWd1YXlcIixcclxuICBQRTogXCJQZXJ1XCIsXHJcbiAgUEg6IFwiUGhpbGlwcGluZXNcIixcclxuICBQTjogXCJQaXRjYWlyblwiLFxyXG4gIFBMOiBcIlBvbGFuZFwiLFxyXG4gIFBUOiBcIlBvcnR1Z2FsXCIsXHJcbiAgUFI6IFwiUHVlcnRvIFJpY29cIixcclxuICBRQTogXCJRYXRhclwiLFxyXG4gIFJFOiBcIlJldW5pb25cIixcclxuICBSTzogXCJSb21hbmlhXCIsXHJcbiAgUlU6IFwiUnVzc2lhbiBGZWRlcmF0aW9uXCIsXHJcbiAgUlc6IFwiUndhbmRhXCIsXHJcbiAgQkw6IFwiU2FpbnQgQmFydGhlbGVteVwiLFxyXG4gIFNIOiBcIlNhaW50IEhlbGVuYVwiLFxyXG4gIEtOOiBcIlNhaW50IEtpdHRzIEFuZCBOZXZpc1wiLFxyXG4gIExDOiBcIlNhaW50IEx1Y2lhXCIsXHJcbiAgTUY6IFwiU2FpbnQgTWFydGluXCIsXHJcbiAgUE06IFwiU2FpbnQgUGllcnJlIEFuZCBNaXF1ZWxvblwiLFxyXG4gIFZDOiBcIlNhaW50IFZpbmNlbnQgQW5kIEdyZW5hZGluZXNcIixcclxuICBXUzogXCJTYW1vYVwiLFxyXG4gIFNNOiBcIlNhbiBNYXJpbm9cIixcclxuICBTVDogXCJTYW8gVG9tZSBBbmQgUHJpbmNpcGVcIixcclxuICBTQTogXCJTYXVkaSBBcmFiaWFcIixcclxuICBTTjogXCJTZW5lZ2FsXCIsXHJcbiAgUlM6IFwiU2VyYmlhXCIsXHJcbiAgU0M6IFwiU2V5Y2hlbGxlc1wiLFxyXG4gIFNMOiBcIlNpZXJyYSBMZW9uZVwiLFxyXG4gIFNHOiBcIlNpbmdhcG9yZVwiLFxyXG4gIFNLOiBcIlNsb3Zha2lhXCIsXHJcbiAgU0k6IFwiU2xvdmVuaWFcIixcclxuICBTQjogXCJTb2xvbW9uIElzbGFuZHNcIixcclxuICBTTzogXCJTb21hbGlhXCIsXHJcbiAgWkE6IFwiU291dGggQWZyaWNhXCIsXHJcbiAgR1M6IFwiU291dGggR2VvcmdpYSBBbmQgU2FuZHdpY2ggSXNsLlwiLFxyXG4gIEVTOiBcIlNwYWluXCIsXHJcbiAgTEs6IFwiU3JpIExhbmthXCIsXHJcbiAgU0Q6IFwiU3VkYW5cIixcclxuICBTUjogXCJTdXJpbmFtZVwiLFxyXG4gIFNKOiBcIlN2YWxiYXJkIEFuZCBKYW4gTWF5ZW5cIixcclxuICBTWjogXCJTd2F6aWxhbmRcIixcclxuICBTRTogXCJTd2VkZW5cIixcclxuICBDSDogXCJTd2l0emVybGFuZFwiLFxyXG4gIFNZOiBcIlN5cmlhbiBBcmFiIFJlcHVibGljXCIsXHJcbiAgVFc6IFwiVGFpd2FuXCIsXHJcbiAgVEo6IFwiVGFqaWtpc3RhblwiLFxyXG4gIFRaOiBcIlRhbnphbmlhXCIsXHJcbiAgVEg6IFwiVGhhaWxhbmRcIixcclxuICBUTDogXCJUaW1vci1MZXN0ZVwiLFxyXG4gIFRHOiBcIlRvZ29cIixcclxuICBUSzogXCJUb2tlbGF1XCIsXHJcbiAgVE86IFwiVG9uZ2FcIixcclxuICBUVDogXCJUcmluaWRhZCBBbmQgVG9iYWdvXCIsXHJcbiAgVE46IFwiVHVuaXNpYVwiLFxyXG4gIFRSOiBcIlR1cmtleVwiLFxyXG4gIFRNOiBcIlR1cmttZW5pc3RhblwiLFxyXG4gIFRDOiBcIlR1cmtzIEFuZCBDYWljb3MgSXNsYW5kc1wiLFxyXG4gIFRWOiBcIlR1dmFsdVwiLFxyXG4gIFVHOiBcIlVnYW5kYVwiLFxyXG4gIFVBOiBcIlVrcmFpbmVcIixcclxuICBBRTogXCJVbml0ZWQgQXJhYiBFbWlyYXRlc1wiLFxyXG4gIEdCOiBcIlVuaXRlZCBLaW5nZG9tXCIsXHJcbiAgVVM6IFwiVW5pdGVkIFN0YXRlc1wiLFxyXG4gIFVNOiBcIlVuaXRlZCBTdGF0ZXMgT3V0bHlpbmcgSXNsYW5kc1wiLFxyXG4gIFVZOiBcIlVydWd1YXlcIixcclxuICBVWjogXCJVemJla2lzdGFuXCIsXHJcbiAgVlU6IFwiVmFudWF0dVwiLFxyXG4gIFZFOiBcIlZlbmV6dWVsYVwiLFxyXG4gIFZOOiBcIlZpZXQgTmFtXCIsXHJcbiAgVkc6IFwiVmlyZ2luIElzbGFuZHMsIEJyaXRpc2hcIixcclxuICBWSTogXCJWaXJnaW4gSXNsYW5kcywgVS5TLlwiLFxyXG4gIFdGOiBcIldhbGxpcyBBbmQgRnV0dW5hXCIsXHJcbiAgRUg6IFwiV2VzdGVybiBTYWhhcmFcIixcclxuICBZRTogXCJZZW1lblwiLFxyXG4gIFpNOiBcIlphbWJpYVwiLFxyXG4gIFpXOiBcIlppbWJhYndlXCJcclxufTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB1c2VyRG9tYWluc0J5Um9sZXModXNlcjogYW55LCByb2xlczogQXJyYXk8bnVtYmVyPikge1xyXG4gIGNvbnN0IGVEID0gdXNlciAmJiB1c2VyLmVucm9sbGVkRG9tYWlucyA/IHVzZXIuZW5yb2xsZWREb21haW5zIDogW107XHJcbiAgY29uc3QgZG9tYWluczogYW55W10gPSBbXTtcclxuICBsZXQgaSA9IDA7XHJcbiAgZm9yIChpOyBpIDwgZUQubGVuZ3RoOyBpKyspIHtcclxuICAgIGNvbnN0IGUgPSBlRFtpXTtcclxuICAgIGlmIChyb2xlcy5pbmNsdWRlcyhlLnJvbGUpKSB7XHJcbiAgICAgIGRvbWFpbnMucHVzaCgoZSBhcyBhbnkpLmRvbWFpbik7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiBkb21haW5zO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdXNlckFkbWluRG9tYWlucyh1c2VyOiBhbnkpIHtcclxuICByZXR1cm4gdXNlckRvbWFpbnNCeVJvbGVzKHVzZXIsIFtSb2xlLkFETUlOLCBSb2xlLk1BTkFHRVJdKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzUHJvZHVjdFN1cHBsaWVyTU9EKHByb2R1Y3Q6IGFueSkge1xyXG4gIGNvbnN0IHByb2R1Y3RUeXBlID0gcHJvZHVjdCAmJiBwcm9kdWN0LnByb2R1Y3RUeXBlXHJcbiAgcmV0dXJuIHByb2R1Y3QgJiYgW1xyXG4gICAgU3RyaW5nKFByb2R1Y3RUeXBlLlNVUFBMSUVSX01PRCksXHJcbiAgICBTdHJpbmcoUHJvZHVjdFR5cGUuU1VQUExJRVJfUkVTRUxMX01PRClcclxuICBdLmluY2x1ZGVzKFN0cmluZyhwcm9kdWN0VHlwZSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNVc2VyUmVnaXN0ZXJlZCh1c2VyOiBhbnkpIHtcclxuICBjb25zdCBpZCA9IHVzZXIgPyB1c2VyLmlkIDogbnVsbDtcclxuICByZXR1cm4gaWQgIT09IHVuZGVmaW5lZCAmJiBpZCAhPT0gbnVsbCAmJiBpZCA+IDA7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1JlZ2lzdGVyZWRBbmRIYXNTdG9yZSh1c2VyOiBhbnkpIHtcclxuICBjb25zdCBpZCA9IHVzZXIgPyB1c2VyLmlkIDogbnVsbDtcclxuICByZXR1cm4gaWQgIT09IHVuZGVmaW5lZCAmJiBpZCAhPT0gbnVsbCAmJiBpZCA+IDAgJiYgdXNlci5oYXNTdG9yZTtcclxufVxyXG5cclxuY29uc3Qgc3VwcG9ydGVkTnVtYmVyczogYW55ID0ge1xyXG4gIEFVOiAnQXVzdHJhbGlhICgrNjEpJyxcclxuICBBRTogJ1VuaXRlZCBBcmFiIEVtaXJhdGVzICgrOTcxKScsXHJcbiAgQkg6ICdCYWhyYWluICgrOTczKScsXHJcbiAgQ046ICdDaGluYSAoKzg2KScsXHJcbiAgREs6ICdEZW5tYXJrICgrNDUpJyxcclxuICBFUzogJ1NwYWluICgrMzQpJyxcclxuICBGUjogJ0ZyYW5jZSAoKzMzKScsXHJcbiAgR0I6ICdVbml0ZWQgS2luZ2RvbSAoKzQ0KScsXHJcbiAgSEs6ICdIb25nIEtvbmcgKCs4NTIpJyxcclxuICBJRDogJ0luZG9uZXNpYSAoKzYyKScsXHJcbiAgSU46ICdJbmRpYSAoKzkxKScsXHJcbiAgSVQ6ICdJdGFseSAoKzM5KScsXHJcbiAgS1I6ICdTb3V0aCBLb3JlYSAoKzgyKScsXHJcbiAgTkM6ICdOZXcgQ2FsZWRvbmlhICgrNjg3KScsXHJcbiAgTlo6ICdOZXcgWmVhbGFuZCAoKzY0KScsXHJcbiAgT006ICdPbWFuICgrOTY4KScsXHJcbiAgUEg6ICdQaGlsaXBwaW5lcyAoKzYzKScsXHJcbiAgUFQ6ICdQb3J0dWdhbCAoKzM1MSknLFxyXG4gIFFBOiAnUWF0YXIgKCs5NzQpJyxcclxuICBTRTogJ1N3ZWRlbiAoKzQ2KScsXHJcbiAgU0c6ICdTaW5nYXBvcmUgKCs2NSknLFxyXG4gIFRIOiAnVGhhaWxhbmQgKCs2NiknLFxyXG4gIFVTOiAnVW5pdGVkIFN0YXRlcyAoKzEpJyxcclxuICBaQTogJ1NvdXRoIEFmcmljYSAoKzI3KScsXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgcGhvbmVPcHRpb25zID0gT2JqZWN0LmtleXMoc3VwcG9ydGVkTnVtYmVycykubWFwKChrZXkpID0+ICh7XHJcbiAgdmFsdWU6IGtleSxcclxuICBsYWJlbDogc3VwcG9ydGVkTnVtYmVyc1trZXldLFxyXG59KSk7XHJcblxyXG5leHBvcnQgY29uc3QgYWRkcmVzc0NvbXBvbmVudHNTZXR0aW5nc0JhY2tlbmQ6IGFueSA9IHtcclxuICBhZG1pbmlzdHJhdGl2ZV9hcmVhX2xldmVsXzE6ICdzaG9ydE5hbWUnLFxyXG4gIGFkbWluaXN0cmF0aXZlX2FyZWFfbGV2ZWxfMjogJ3Nob3J0TmFtZScsXHJcbiAgY291bnRyeTogJ3Nob3J0TmFtZScsXHJcbiAgZXN0YWJsaXNobWVudDogJ2xvbmdOYW1lJyxcclxuICBmbG9vcjogJ3Nob3J0TmFtZScsXHJcbiAgbG9jYWxpdHk6ICdsb25nTmFtZScsXHJcbiAgcG9zdGFsX2NvZGU6ICdzaG9ydE5hbWUnLFxyXG4gIHByZW1pc2U6ICdzaG9ydE5hbWUnLFxyXG4gIHJvb206ICdsb25nTmFtZScsXHJcbiAgcm91dGU6ICdzaG9ydE5hbWUnLFxyXG4gIHN0cmVldF9udW1iZXI6ICdzaG9ydE5hbWUnLFxyXG4gIHN1YmxvY2FsaXR5OiAnbG9uZ05hbWUnLFxyXG4gIHN1YnByZW1pc2U6ICdzaG9ydE5hbWUnLFxyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdvb2dsZVBsYWNlc1Jlc3VsdEFzTmV3QWRkcmVzcyhwbGFjZURldGFpbHM6IGFueSkge1xyXG4gIGNvbnN0IGFkZHJlc3NDb21wb25lbnRzID0gcGxhY2VEZXRhaWxzPy5hZGRyZXNzQ29tcG9uZW50cyB8fCBbXTtcclxuICBjb25zdCBuYW1lID0gcGxhY2VEZXRhaWxzPy5uYW1lIHx8ICcnO1xyXG4gIGNvbnN0IGFkZHJlc3MgPSB7XHJcbiAgICBjaXR5OiAnJyxcclxuICAgIGNvdW50cnk6ICcnLFxyXG4gICAgbGluZU9uZTogbmFtZSA/IG5hbWUgOiAnJyxcclxuICAgIGxpbmVUd286ICcnLFxyXG4gICAgcG9zdGNvZGU6ICcnLFxyXG4gICAgc3RhdGU6ICcnLFxyXG4gIH07XHJcblxyXG4gIGlmIChhZGRyZXNzQ29tcG9uZW50cyAmJiBhZGRyZXNzQ29tcG9uZW50cy5sZW5ndGggPiAwKSB7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFkZHJlc3NDb21wb25lbnRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGFkZHJDb21wb25lbnQgPSBhZGRyZXNzQ29tcG9uZW50c1tpXTtcclxuICAgICAgY29uc3QgYWRkclR5cGVzID0gYWRkckNvbXBvbmVudC50eXBlcztcclxuICAgICAgXHJcbiAgICAgIC8vIEZpbmQgdGhlIGZpcnN0IHJlbGV2YW50IHR5cGUgdGhhdCB3ZSBoYXZlIGEgc2V0dGluZyBmb3JcclxuICAgICAgbGV0IGFkZHJUeXBlID0gbnVsbDtcclxuICAgICAgbGV0IGNvbXBvbmVudFNldHRpbmcgPSBudWxsO1xyXG4gICAgICBcclxuICAgICAgZm9yIChjb25zdCB0eXBlIG9mIGFkZHJUeXBlcykge1xyXG4gICAgICAgIGlmIChhZGRyZXNzQ29tcG9uZW50c1NldHRpbmdzQmFja2VuZFt0eXBlXSkge1xyXG4gICAgICAgICAgYWRkclR5cGUgPSB0eXBlO1xyXG4gICAgICAgICAgY29tcG9uZW50U2V0dGluZyA9IGFkZHJlc3NDb21wb25lbnRzU2V0dGluZ3NCYWNrZW5kW3R5cGVdO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoY29tcG9uZW50U2V0dGluZyAmJiBhZGRyVHlwZSkge1xyXG4gICAgICAgIGNvbnN0IGFkZHJlc3NWYWwgPSBhZGRyQ29tcG9uZW50W2NvbXBvbmVudFNldHRpbmddO1xyXG4gICAgICAgIHN3aXRjaCAoYWRkclR5cGUpIHtcclxuICAgICAgICAgIGNhc2UgJ2VzdGFibGlzaG1lbnQnOlxyXG4gICAgICAgICAgY2FzZSAncm9vbSc6XHJcbiAgICAgICAgICBjYXNlICdmbG9vcic6XHJcbiAgICAgICAgICBjYXNlICdzdHJlZXRfbnVtYmVyJzpcclxuICAgICAgICAgIGNhc2UgJ3ByZW1pc2UnOlxyXG4gICAgICAgICAgY2FzZSAnc3VicHJlbWlzZSc6XHJcbiAgICAgICAgICBjYXNlICdyb3V0ZSc6XHJcbiAgICAgICAgICAgIGNvbnN0IG9sZExpbmVPbmUgPSBhZGRyZXNzLmxpbmVPbmU7XHJcbiAgICAgICAgICAgIGFkZHJlc3MubGluZU9uZSA9IG9sZExpbmVPbmUuaW5jbHVkZXMoYWRkcmVzc1ZhbCkgP1xyXG4gICAgICAgICAgICAgIG9sZExpbmVPbmUgOiBgJHtvbGRMaW5lT25lfSAke2FkZHJlc3NWYWx9YC50cmltKCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSAnbG9jYWxpdHknOlxyXG4gICAgICAgICAgY2FzZSAnc3VibG9jYWxpdHknOlxyXG4gICAgICAgICAgICBjb25zdCBvbGRDaXR5ID0gYWRkcmVzcy5jaXR5ID8gYCR7YWRkcmVzcy5jaXR5fSBgIDogJyc7XHJcbiAgICAgICAgICAgIGFkZHJlc3MuY2l0eSA9IChvbGRDaXR5ICsgYWRkcmVzc1ZhbCkudHJpbSgpO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgJ2FkbWluaXN0cmF0aXZlX2FyZWFfbGV2ZWxfMSc6XHJcblxyXG4gICAgICAgICAgICBhZGRyZXNzLnN0YXRlID0gYWRkcmVzc1ZhbDtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlICdhZG1pbmlzdHJhdGl2ZV9hcmVhX2xldmVsXzInOlxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgJ2NvdW50cnknOlxyXG5cclxuICAgICAgICAgICAgYWRkcmVzcy5jb3VudHJ5ID0gYWRkcmVzc1ZhbDtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlICdwb3N0YWxfY29kZSc6XHJcbiAgICAgICAgICAgIGFkZHJlc3MucG9zdGNvZGUgPSBhZGRyZXNzVmFsO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIENsZWFuIHVwIGxpbmUgb25lIGlmIGl0J3MgZW1wdHkgYW5kIHdlIGhhdmUgYSBmb3JtYXR0ZWQgYWRkcmVzc1xyXG4gICAgaWYgKCFhZGRyZXNzLmxpbmVPbmUudHJpbSgpICYmIHBsYWNlRGV0YWlscz8uZm9ybWF0dGVkQWRkcmVzcykge1xyXG4gICAgICAvLyBUcnkgdG8gZXh0cmFjdCBzdHJlZXQgYWRkcmVzcyBmcm9tIGZvcm1hdHRlZCBhZGRyZXNzXHJcbiAgICAgIGNvbnN0IHBhcnRzID0gcGxhY2VEZXRhaWxzLmZvcm1hdHRlZEFkZHJlc3Muc3BsaXQoJywnKTtcclxuICAgICAgaWYgKHBhcnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICBhZGRyZXNzLmxpbmVPbmUgPSBwYXJ0c1swXS50cmltKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gYWRkcmVzcztcclxuICB9XHJcblxyXG4gIHJldHVybiBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYWRkcmVzc0luT25lTGluZShhZGRyZXNzOiBhbnkpIHtcclxuICBjb25zdCBhID0gYWRkcmVzcyA/IGFkZHJlc3MgOiB7fTtcclxuICBjb25zdCB7XHJcbiAgICBjaXR5LFxyXG4gICAgY291bnRyeSxcclxuICAgIGxpbmVPbmUsXHJcbiAgICBsaW5lVHdvLFxyXG4gICAgcG9zdGNvZGUsXHJcbiAgICBzdGF0ZVxyXG4gIH0gPSBhO1xyXG4gIGNvbnN0IGwxID0gbGluZU9uZSA/IGAke2xpbmVPbmV9IGAgOiAnJztcclxuICBjb25zdCBsMiA9IGxpbmVUd28gPyBgJHtsaW5lVHdvfSBgIDogJyc7XHJcbiAgY29uc3QgYyA9IGNpdHkgPyBgJHtjaXR5fSBgIDogJyc7XHJcbiAgY29uc3QgcyA9IHN0YXRlID8gYCR7c3RhdGV9IGAgOiAnJztcclxuICBjb25zdCBwID0gcG9zdGNvZGUgPyBgJHtwb3N0Y29kZX0gYCA6ICcnO1xyXG4gIGNvbnN0IGNvdW50cnlGdWxsID0gY291bnRyeSA/IGlzb0NvdW50cmllc1tjb3VudHJ5XSA6ICcnO1xyXG4gIHJldHVybiBsMSArIGwyICsgYyArIHMgKyBwICsgY291bnRyeUZ1bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIEZpZWxkVHlwZSB7XHJcbiAgVEVYVF9JTlBVVCA9IDEsXHJcbiAgU0VMRUNUID0gMixcclxuICBGSUxFX1VQTE9BRCA9IDMsXHJcbiAgVEVYVF9BUkVBID0gNCxcclxuICBOVU1CRVJfSU5QVVQgPSA1LFxyXG4gIENIRUNLQk9YID0gNixcclxuICBSQURJTyA9IDcsXHJcbiAgRklFTERfSU5TVFJVQ1RJT05TID0gOCxcclxuICBJTUFHRV9TRUxFQ1QgPSA5LFxyXG4gIENPTE9VUl9QSUNLRVIgPSAxMCxcclxuICBDT0xPVVJfU0VMRUNUID0gMTEsXHJcbiAgVFVSTkFST1VORF9USU1FID0gMTIsXHJcbiAgQ09MT1VSX0VYVFJBQ1QgPSAxMyxcclxuICBBUkVBID0gMTQsXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1NlbGVjdGFibGUoZmllbGRUeXBlOiBudW1iZXIpIHtcclxuICByZXR1cm4gW1xyXG4gICAgRmllbGRUeXBlLlNFTEVDVCxcclxuICAgIEZpZWxkVHlwZS5DSEVDS0JPWCxcclxuICAgIEZpZWxkVHlwZS5SQURJTyxcclxuICAgIEZpZWxkVHlwZS5JTUFHRV9TRUxFQ1QsXHJcbiAgICBGaWVsZFR5cGUuQ09MT1VSX1NFTEVDVCxcclxuICAgIEZpZWxkVHlwZS5UVVJOQVJPVU5EX1RJTUUsXHJcbiAgICBGaWVsZFR5cGUuQ09MT1VSX0VYVFJBQ1QsXHJcbiAgXS5pbmNsdWRlcyhmaWVsZFR5cGUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNJbnN0cnVjdGlvbnNUeXBlKGZpZWxkVHlwZTogbnVtYmVyKSB7XHJcbiAgcmV0dXJuIFN0cmluZyhGaWVsZFR5cGUuRklFTERfSU5TVFJVQ1RJT05TKSA9PT0gU3RyaW5nKGZpZWxkVHlwZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBjb3VudHJ5RGVmYXVsdERpY3QgPSAoY3VycmVuY3k6IHN0cmluZykgPT4ge1xyXG4gIHJldHVybiB7Y3VycmVuY3k6IGN1cnJlbmN5fTtcclxufTtcclxuICBcclxuZXhwb3J0IGNvbnN0IHN1cHBvcnRlZENvdW50cnlEZWZhdWx0czogYW55ID0ge1xyXG4gIEFFOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIEFVOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0FVRCcpLFxyXG4gIEJIOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIENIOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0NOWScpLFxyXG4gIERLOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0VVUicpLFxyXG4gIEVTOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0VVUicpLFxyXG4gIEZSOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0VVUicpLFxyXG4gIEdCOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0dCUCcpLFxyXG4gIEhLOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0hLRCcpLFxyXG4gIElEOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIElOOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0lOUicpLFxyXG4gIElUOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0VVUicpLFxyXG4gIEtSOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIE5DOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIE5aOiBjb3VudHJ5RGVmYXVsdERpY3QoJ05aRCcpLFxyXG4gIE9NOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIFBIOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIFBUOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0VVUicpLFxyXG4gIFFBOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIFNFOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIFNHOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1NHRCcpLFxyXG4gIFRIOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIFVTOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG4gIFpBOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxyXG59O1xyXG4gIFxyXG5leHBvcnQgY29uc3Qgc3VwcG9ydGVkQ291bnRyeURlZmF1bHRzV2l0aERlZmF1bHQgPSAoY291bnRyeUNvZGU6IGFueSkgPT4ge1xyXG4gIGNvbnN0IGRlZmF1bHRDb3VudHJ5VmFsdWVzID0gc3VwcG9ydGVkQ291bnRyeURlZmF1bHRzW2NvdW50cnlDb2RlXTtcclxuICByZXR1cm4gZGVmYXVsdENvdW50cnlWYWx1ZXMgPyBkZWZhdWx0Q291bnRyeVZhbHVlcyA6IHN1cHBvcnRlZENvdW50cnlEZWZhdWx0cy5BVTtcclxufTtcclxuXHJcbmludGVyZmFjZSBDbGllbnRGaWxlQW5kT2JqZWN0SWQge1xyXG4gIGZpbGU6IGFueTtcclxuICBvYmplY3RJZDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2xlYW5DbGllbnRGaWxlcyhjbGllbnRGaWxlczogQ2xpZW50RmlsZUFuZE9iamVjdElkW10pIHtcclxuICByZXR1cm4gY2xpZW50RmlsZXMubWFwKChjbGllbnRGaWxlOiBDbGllbnRGaWxlQW5kT2JqZWN0SWQpID0+IGNsaWVudEZpbGUuZmlsZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBhcHBlbmRDbGllbnRUb093bkRyYWZ0KGpvYjogYW55KSB7XHJcbiAgY29uc3QgeyBvd25EcmFmdHMgfSA9IGpvYjtcclxuICBpZiAoam9iLm93bkRyYWZ0cyAmJiBqb2Iub3duRHJhZnRzLmxlbmd0aCkge1xyXG4gICAgam9iLm93bkRyYWZ0c1swXS5kZXNpZ25lciA9IGpvYi5jbGllbnQ7XHJcbiAgfVxyXG4gIHJldHVybiBqb2I7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3VjY2Vzc1JlZGlyZWN0RXh0cmFzIHtcclxuICAvKiogSW52b2ljZSBpZCBmb3IgcGFpZCBjaGVja291dCwgb3Igam9iIGlkIGZvciBxdW90ZSByZXF1ZXN0cy4gKi9cclxuICBpbnZvaWNlSWQ/OiBzdHJpbmcgfCBudW1iZXIgfCBudWxsO1xyXG4gIGVtYWlsPzogc3RyaW5nIHwgbnVsbDtcclxufVxyXG5cclxuLyoqXHJcbiAqIERlY29kZS9ub3JtYWxpemUgYSByZWRpcmVjdCBiYXNlIFVSTCBmcm9tIGVtYmVkIHNjcmlwdCBwYXJhbXMuXHJcbiAqIEhhbmRsZXMgcGVyY2VudC1lbmNvZGluZywgbGVnYWN5ICUyNyB3cmFwcGVycywgYW5kIHRyYWlsaW5nIGp1bmsuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplUmVkaXJlY3RCYXNlVXJsKHVybDogc3RyaW5nKTogc3RyaW5nIHtcclxuICBsZXQgY2xlYW4gPSBTdHJpbmcodXJsIHx8ICcnKVxyXG4gICAgLnRyaW0oKVxyXG4gICAgLnJlcGxhY2UoLyUyNy9nLCAnJylcclxuICAgIC5yZXBsYWNlKC8lOTEvZywgJycpXHJcbiAgICAucmVwbGFjZSgvJTkyL2csICcnKVxyXG4gICAgLnJlcGxhY2UoLyU5My9nLCAnJylcclxuICAgIC5yZXBsYWNlKC8lOTQvZywgJycpXHJcbiAgICAucmVwbGFjZSgvXlsnXCJdK3xbJ1wiXSskL2csICcnKTtcclxuXHJcbiAgLy8gRnVsbHkgZGVjb2RlIHNvIGVuY29kZWQgYWJzb2x1dGUgVVJMcyBhcmUgbm90IHRyZWF0ZWQgYXMgcmVsYXRpdmUgcGF0aHMuXHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCAyOyBpKyspIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGlmICghLyVbMC05QS1GYS1mXXsyfS8udGVzdChjbGVhbikpIGJyZWFrO1xyXG4gICAgICBjb25zdCBkZWNvZGVkID0gZGVjb2RlVVJJQ29tcG9uZW50KGNsZWFuKTtcclxuICAgICAgaWYgKGRlY29kZWQgPT09IGNsZWFuKSBicmVhaztcclxuICAgICAgY2xlYW4gPSBkZWNvZGVkO1xyXG4gICAgfSBjYXRjaCB7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGNsZWFuO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2xpZW50RW1haWwoY2xpZW50OiBhbnkpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gIGNvbnN0IGVtYWlsID0gY2xpZW50Py5lbWFpbEFkZHJlc3Nlcz8uWzBdPy5lbWFpbEFkZHJlc3M7XHJcbiAgcmV0dXJuIHR5cGVvZiBlbWFpbCA9PT0gJ3N0cmluZycgJiYgZW1haWwudHJpbSgpID8gZW1haWwudHJpbSgpIDogdW5kZWZpbmVkO1xyXG59XHJcblxyXG4vKipcclxuICogQnVpbGQgdGhlIHBvc3QtY2hlY2tvdXQvcXVvdGUgcmVkaXJlY3QgVVJMIHdpdGggcHJvcGVyIHF1ZXJ5IHNlcGFyYXRvcnMuXHJcbiAqIEFsd2F5cyBzYWZlIHdoZW4gdGhlIGJhc2UgVVJMIG9taXRzIGEgdHJhaWxpbmcgXCI/XCIgLyBcIiZcIi5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZFN1Y2Nlc3NSZWRpcmVjdFVybChcclxuICB1cmw6IHN0cmluZyxcclxuICByZWRpcmVjdFdpdGhWYWx1ZT86IGJvb2xlYW4sXHJcbiAgdmFsdWU/OiBhbnksXHJcbiAgZXh0cmFzOiBTdWNjZXNzUmVkaXJlY3RFeHRyYXMgPSB7fSxcclxuKTogc3RyaW5nIHtcclxuICBjb25zdCBiYXNlID0gbm9ybWFsaXplUmVkaXJlY3RCYXNlVXJsKHVybCk7XHJcbiAgaWYgKCFiYXNlKSByZXR1cm4gYmFzZTtcclxuXHJcbiAgY29uc3QgdGFyZ2V0ID0gbmV3IFVSTChcclxuICAgIGJhc2UsXHJcbiAgICB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyA/IHdpbmRvdy5sb2NhdGlvbi5ocmVmIDogJ2h0dHBzOi8vcGxhY2Vob2xkZXIuaW52YWxpZC8nLFxyXG4gICk7XHJcblxyXG4gIGlmIChcclxuICAgIHJlZGlyZWN0V2l0aFZhbHVlICYmXHJcbiAgICB2YWx1ZSAhPT0gdW5kZWZpbmVkICYmXHJcbiAgICB2YWx1ZSAhPT0gbnVsbCAmJlxyXG4gICAgdmFsdWUgIT09ICcnXHJcbiAgKSB7XHJcbiAgICB0YXJnZXQuc2VhcmNoUGFyYW1zLnNldCgnbWVyY2hpVmFsdWUnLCBTdHJpbmcodmFsdWUpKTtcclxuICB9XHJcblxyXG4gIGlmIChleHRyYXMuaW52b2ljZUlkICE9PSB1bmRlZmluZWQgJiYgZXh0cmFzLmludm9pY2VJZCAhPT0gbnVsbCAmJiBleHRyYXMuaW52b2ljZUlkICE9PSAnJykge1xyXG4gICAgdGFyZ2V0LnNlYXJjaFBhcmFtcy5zZXQoJ2ludm9pY2VJZCcsIFN0cmluZyhleHRyYXMuaW52b2ljZUlkKSk7XHJcbiAgfVxyXG5cclxuICBpZiAoZXh0cmFzLmVtYWlsKSB7XHJcbiAgICB0YXJnZXQuc2VhcmNoUGFyYW1zLnNldCgnZW1haWwnLCBTdHJpbmcoZXh0cmFzLmVtYWlsKSk7XHJcbiAgfVxyXG5cclxuICAvLyBQcmVzZXJ2ZSBwcm90b2NvbC1yZWxhdGl2ZSByZWRpcmVjdCB0YXJnZXRzICgvL2V4YW1wbGUuY29tLy4uLikuXHJcbiAgaWYgKGJhc2Uuc3RhcnRzV2l0aCgnLy8nKSkge1xyXG4gICAgcmV0dXJuIGAvLyR7dGFyZ2V0Lmhvc3R9JHt0YXJnZXQucGF0aG5hbWV9JHt0YXJnZXQuc2VhcmNofSR7dGFyZ2V0Lmhhc2h9YDtcclxuICB9XHJcblxyXG4gIHJldHVybiB0YXJnZXQudG9TdHJpbmcoKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlZGlyZWN0T25TdWNjZXNzKFxyXG4gIHVybDogc3RyaW5nLFxyXG4gIHJlZGlyZWN0V2l0aFZhbHVlPzogYm9vbGVhbixcclxuICB2YWx1ZT86IGFueSxcclxuICBleHRyYXM6IFN1Y2Nlc3NSZWRpcmVjdEV4dHJhcyA9IHt9LFxyXG4pIHtcclxuICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGJ1aWxkU3VjY2Vzc1JlZGlyZWN0VXJsKFxyXG4gICAgdXJsLFxyXG4gICAgcmVkaXJlY3RXaXRoVmFsdWUsXHJcbiAgICB2YWx1ZSxcclxuICAgIGV4dHJhcyxcclxuICApO1xyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsU0FBU0EsV0FBVyxFQUFFQyxJQUFJLFFBQVEsU0FBUztBQUUzQyxPQUFPLElBQU1DLFlBQWlCLEdBQUc7RUFDL0JDLEVBQUUsRUFBRSxhQUFhO0VBQ2pCQyxFQUFFLEVBQUUsZUFBZTtFQUNuQkMsRUFBRSxFQUFFLFNBQVM7RUFDYkMsRUFBRSxFQUFFLFNBQVM7RUFDYkMs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
560
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJQcm9kdWN0VHlwZSIsIlJvbGUiLCJpc29Db3VudHJpZXMiLCJBRiIsIkFYIiwiQUwiLCJEWiIsIkFTIiwiQUQiLCJBTyIsIkFJIiwiQVEiLCJBRyIsIkFSIiwiQU0iLCJBVyIsIkFVIiwiQVQiLCJBWiIsIkJTIiwiQkgiLCJCRCIsIkJCIiwiQlkiLCJCRSIsIkJaIiwiQkoiLCJCTSIsIkJUIiwiQk8iLCJCQSIsIkJXIiwiQlYiLCJCUiIsIklPIiwiQk4iLCJCRyIsIkJGIiwiQkkiLCJLSCIsIkNNIiwiQ0EiLCJDViIsIktZIiwiQ0YiLCJURCIsIkNMIiwiQ04iLCJDWCIsIkNDIiwiQ08iLCJLTSIsIkNHIiwiQ0QiLCJDSyIsIkNSIiwiQ0kiLCJIUiIsIkNVIiwiQ1kiLCJDWiIsIkRLIiwiREoiLCJETSIsIkRPIiwiRUMiLCJFRyIsIlNWIiwiR1EiLCJFUiIsIkVFIiwiRVQiLCJGSyIsIkZPIiwiRkoiLCJGSSIsIkZSIiwiR0YiLCJQRiIsIlRGIiwiR0EiLCJHTSIsIkdFIiwiREUiLCJHSCIsIkdJIiwiR1IiLCJHTCIsIkdEIiwiR1AiLCJHVSIsIkdUIiwiR0ciLCJHTiIsIkdXIiwiR1kiLCJIVCIsIkhNIiwiVkEiLCJITiIsIkhLIiwiSFUiLCJJUyIsIklOIiwiSUQiLCJJUiIsIklRIiwiSUUiLCJJTSIsIklMIiwiSVQiLCJKTSIsIkpQIiwiSkUiLCJKTyIsIktaIiwiS0UiLCJLSSIsIktSIiwiS1ciLCJLRyIsIkxBIiwiTFYiLCJMQiIsIkxTIiwiTFIiLCJMWSIsIkxJIiwiTFQiLCJMVSIsIk1PIiwiTUsiLCJNRyIsIk1XIiwiTVkiLCJNViIsIk1MIiwiTVQiLCJNSCIsIk1RIiwiTVIiLCJNVSIsIllUIiwiTVgiLCJGTSIsIk1EIiwiTUMiLCJNTiIsIk1FIiwiTVMiLCJNQSIsIk1aIiwiTU0iLCJOQSIsIk5SIiwiTlAiLCJOTCIsIkFOIiwiTkMiLCJOWiIsIk5JIiwiTkUiLCJORyIsIk5VIiwiTkYiLCJNUCIsIk5PIiwiT00iLCJQSyIsIlBXIiwiUFMiLCJQQSIsIlBHIiwiUFkiLCJQRSIsIlBIIiwiUE4iLCJQTCIsIlBUIiwiUFIiLCJRQSIsIlJFIiwiUk8iLCJSVSIsIlJXIiwiQkwiLCJTSCIsIktOIiwiTEMiLCJNRiIsIlBNIiwiVkMiLCJXUyIsIlNNIiwiU1QiLCJTQSIsIlNOIiwiUlMiLCJTQyIsIlNMIiwiU0ciLCJTSyIsIlNJIiwiU0IiLCJTTyIsIlpBIiwiR1MiLCJFUyIsIkxLIiwiU0QiLCJTUiIsIlNKIiwiU1oiLCJTRSIsIkNIIiwiU1kiLCJUVyIsIlRKIiwiVFoiLCJUSCIsIlRMIiwiVEciLCJUSyIsIlRPIiwiVFQiLCJUTiIsIlRSIiwiVE0iLCJUQyIsIlRWIiwiVUciLCJVQSIsIkFFIiwiR0IiLCJVUyIsIlVNIiwiVVkiLCJVWiIsIlZVIiwiVkUiLCJWTiIsIlZHIiwiVkkiLCJXRiIsIkVIIiwiWUUiLCJaTSIsIlpXIiwidXNlckRvbWFpbnNCeVJvbGVzIiwidXNlciIsInJvbGVzIiwiZUQiLCJlbnJvbGxlZERvbWFpbnMiLCJkb21haW5zIiwiaSIsImxlbmd0aCIsImUiLCJpbmNsdWRlcyIsInJvbGUiLCJwdXNoIiwiZG9tYWluIiwidXNlckFkbWluRG9tYWlucyIsIkFETUlOIiwiTUFOQUdFUiIsImlzUHJvZHVjdFN1cHBsaWVyTU9EIiwicHJvZHVjdCIsInByb2R1Y3RUeXBlIiwiU3RyaW5nIiwiU1VQUExJRVJfTU9EIiwiU1VQUExJRVJfUkVTRUxMX01PRCIsImlzVXNlclJlZ2lzdGVyZWQiLCJpZCIsInVuZGVmaW5lZCIsImlzUmVnaXN0ZXJlZEFuZEhhc1N0b3JlIiwiaGFzU3RvcmUiLCJzdXBwb3J0ZWROdW1iZXJzIiwicGhvbmVPcHRpb25zIiwiT2JqZWN0Iiwia2V5cyIsIm1hcCIsImtleSIsInZhbHVlIiwibGFiZWwiLCJhZGRyZXNzQ29tcG9uZW50c1NldHRpbmdzQmFja2VuZCIsImFkbWluaXN0cmF0aXZlX2FyZWFfbGV2ZWxfMSIsImFkbWluaXN0cmF0aXZlX2FyZWFfbGV2ZWxfMiIsImNvdW50cnkiLCJlc3RhYmxpc2htZW50IiwiZmxvb3IiLCJsb2NhbGl0eSIsInBvc3RhbF9jb2RlIiwicHJlbWlzZSIsInJvb20iLCJyb3V0ZSIsInN0cmVldF9udW1iZXIiLCJzdWJsb2NhbGl0eSIsInN1YnByZW1pc2UiLCJnb29nbGVQbGFjZXNSZXN1bHRBc05ld0FkZHJlc3MiLCJwbGFjZURldGFpbHMiLCJhZGRyZXNzQ29tcG9uZW50cyIsIm5hbWUiLCJhZGRyZXNzIiwiY2l0eSIsImxpbmVPbmUiLCJsaW5lVHdvIiwicG9zdGNvZGUiLCJzdGF0ZSIsImFkZHJDb21wb25lbnQiLCJhZGRyVHlwZXMiLCJ0eXBlcyIsImFkZHJUeXBlIiwiY29tcG9uZW50U2V0dGluZyIsIl9pdGVyYXRvciIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwiX3N0ZXAiLCJzIiwibiIsImRvbmUiLCJ0eXBlIiwiZXJyIiwiZiIsImFkZHJlc3NWYWwiLCJvbGRMaW5lT25lIiwiY29uY2F0IiwidHJpbSIsIm9sZENpdHkiLCJmb3JtYXR0ZWRBZGRyZXNzIiwicGFydHMiLCJzcGxpdCIsImFkZHJlc3NJbk9uZUxpbmUiLCJhIiwibDEiLCJsMiIsImMiLCJwIiwiY291bnRyeUZ1bGwiLCJGaWVsZFR5cGUiLCJpc1NlbGVjdGFibGUiLCJmaWVsZFR5cGUiLCJTRUxFQ1QiLCJDSEVDS0JPWCIsIlJBRElPIiwiSU1BR0VfU0VMRUNUIiwiQ09MT1VSX1NFTEVDVCIsIlRVUk5BUk9VTkRfVElNRSIsIkNPTE9VUl9FWFRSQUNUIiwiaXNJbnN0cnVjdGlvbnNUeXBlIiwiRklFTERfSU5TVFJVQ1RJT05TIiwiY291bnRyeURlZmF1bHREaWN0IiwiY3VycmVuY3kiLCJzdXBwb3J0ZWRDb3VudHJ5RGVmYXVsdHMiLCJzdXBwb3J0ZWRDb3VudHJ5RGVmYXVsdHNXaXRoRGVmYXVsdCIsImNvdW50cnlDb2RlIiwiZGVmYXVsdENvdW50cnlWYWx1ZXMiLCJpc0ZpbGVSZWYiLCJjbGVhbkNsaWVudEZpbGVzIiwiY2xpZW50RmlsZXMiLCJhcmd1bWVudHMiLCJjbGllbnRGaWxlIiwiZmlsZSIsImZpbHRlciIsImFwcGVuZENsaWVudFRvT3duRHJhZnQiLCJqb2IiLCJvd25EcmFmdHMiLCJkZXNpZ25lciIsImNsaWVudCIsIm5vcm1hbGl6ZVJlZGlyZWN0QmFzZVVybCIsInVybCIsImNsZWFuIiwicmVwbGFjZSIsInRlc3QiLCJkZWNvZGVkIiwiZGVjb2RlVVJJQ29tcG9uZW50IiwiX3VudXNlZCIsImdldENsaWVudEVtYWlsIiwiX2NsaWVudCRlbWFpbEFkZHJlc3NlIiwiZW1haWwiLCJlbWFpbEFkZHJlc3NlcyIsImVtYWlsQWRkcmVzcyIsImJ1aWxkU3VjY2Vzc1JlZGlyZWN0VXJsIiwicmVkaXJlY3RXaXRoVmFsdWUiLCJleHRyYXMiLCJiYXNlIiwidGFyZ2V0IiwiVVJMIiwid2luZG93IiwibG9jYXRpb24iLCJocmVmIiwic2VhcmNoUGFyYW1zIiwic2V0IiwiaW52b2ljZUlkIiwic3RhcnRzV2l0aCIsImhvc3QiLCJwYXRobmFtZSIsInNlYXJjaCIsImhhc2giLCJ0b1N0cmluZyIsInJlZGlyZWN0T25TdWNjZXNzIl0sInNvdXJjZXMiOlsiLi4vc3JjL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2R1Y3RUeXBlLCBSb2xlIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBpc29Db3VudHJpZXM6IGFueSA9IHtcbiAgQUY6IFwiQWZnaGFuaXN0YW5cIixcbiAgQVg6IFwiQWxhbmQgSXNsYW5kc1wiLFxuICBBTDogXCJBbGJhbmlhXCIsXG4gIERaOiBcIkFsZ2VyaWFcIixcbiAgQVM6IFwiQW1lcmljYW4gU2Ftb2FcIixcbiAgQUQ6IFwiQW5kb3JyYVwiLFxuICBBTzogXCJBbmdvbGFcIixcbiAgQUk6IFwiQW5ndWlsbGFcIixcbiAgQVE6IFwiQW50YXJjdGljYVwiLFxuICBBRzogXCJBbnRpZ3VhIEFuZCBCYXJidWRhXCIsXG4gIEFSOiBcIkFyZ2VudGluYVwiLFxuICBBTTogXCJBcm1lbmlhXCIsXG4gIEFXOiBcIkFydWJhXCIsXG4gIEFVOiBcIkF1c3RyYWxpYVwiLFxuICBBVDogXCJBdXN0cmlhXCIsXG4gIEFaOiBcIkF6ZXJiYWlqYW5cIixcbiAgQlM6IFwiQmFoYW1hc1wiLFxuICBCSDogXCJCYWhyYWluXCIsXG4gIEJEOiBcIkJhbmdsYWRlc2hcIixcbiAgQkI6IFwiQmFyYmFkb3NcIixcbiAgQlk6IFwiQmVsYXJ1c1wiLFxuICBCRTogXCJCZWxnaXVtXCIsXG4gIEJaOiBcIkJlbGl6ZVwiLFxuICBCSjogXCJCZW5pblwiLFxuICBCTTogXCJCZXJtdWRhXCIsXG4gIEJUOiBcIkJodXRhblwiLFxuICBCTzogXCJCb2xpdmlhXCIsXG4gIEJBOiBcIkJvc25pYSBBbmQgSGVyemVnb3ZpbmFcIixcbiAgQlc6IFwiQm90c3dhbmFcIixcbiAgQlY6IFwiQm91dmV0IElzbGFuZFwiLFxuICBCUjogXCJCcmF6aWxcIixcbiAgSU86IFwiQnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5XCIsXG4gIEJOOiBcIkJydW5laSBEYXJ1c3NhbGFtXCIsXG4gIEJHOiBcIkJ1bGdhcmlhXCIsXG4gIEJGOiBcIkJ1cmtpbmEgRmFzb1wiLFxuICBCSTogXCJCdXJ1bmRpXCIsXG4gIEtIOiBcIkNhbWJvZGlhXCIsXG4gIENNOiBcIkNhbWVyb29uXCIsXG4gIENBOiBcIkNhbmFkYVwiLFxuICBDVjogXCJDYXBlIFZlcmRlXCIsXG4gIEtZOiBcIkNheW1hbiBJc2xhbmRzXCIsXG4gIENGOiBcIkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY1wiLFxuICBURDogXCJDaGFkXCIsXG4gIENMOiBcIkNoaWxlXCIsXG4gIENOOiBcIkNoaW5hXCIsXG4gIENYOiBcIkNocmlzdG1hcyBJc2xhbmRcIixcbiAgQ0M6IFwiQ29jb3MgKEtlZWxpbmcpIElzbGFuZHNcIixcbiAgQ086IFwiQ29sb21iaWFcIixcbiAgS006IFwiQ29tb3Jvc1wiLFxuICBDRzogXCJDb25nb1wiLFxuICBDRDogXCJDb25nbywgRGVtb2NyYXRpYyBSZXB1YmxpY1wiLFxuICBDSzogXCJDb29rIElzbGFuZHNcIixcbiAgQ1I6IFwiQ29zdGEgUmljYVwiLFxuICBDSTogXCJDb3RlIEQnSXZvaXJlXCIsXG4gIEhSOiBcIkNyb2F0aWFcIixcbiAgQ1U6IFwiQ3ViYVwiLFxuICBDWTogXCJDeXBydXNcIixcbiAgQ1o6IFwiQ3plY2ggUmVwdWJsaWNcIixcbiAgREs6IFwiRGVubWFya1wiLFxuICBESjogXCJEamlib3V0aVwiLFxuICBETTogXCJEb21pbmljYVwiLFxuICBETzogXCJEb21pbmljYW4gUmVwdWJsaWNcIixcbiAgRUM6IFwiRWN1YWRvclwiLFxuICBFRzogXCJFZ3lwdFwiLFxuICBTVjogXCJFbCBTYWx2YWRvclwiLFxuICBHUTogXCJFcXVhdG9yaWFsIEd1aW5lYVwiLFxuICBFUjogXCJFcml0cmVhXCIsXG4gIEVFOiBcIkVzdG9uaWFcIixcbiAgRVQ6IFwiRXRoaW9waWFcIixcbiAgRks6IFwiRmFsa2xhbmQgSXNsYW5kcyAoTWFsdmluYXMpXCIsXG4gIEZPOiBcIkZhcm9lIElzbGFuZHNcIixcbiAgRko6IFwiRmlqaVwiLFxuICBGSTogXCJGaW5sYW5kXCIsXG4gIEZSOiBcIkZyYW5jZVwiLFxuICBHRjogXCJGcmVuY2ggR3VpYW5hXCIsXG4gIFBGOiBcIkZyZW5jaCBQb2x5bmVzaWFcIixcbiAgVEY6IFwiRnJlbmNoIFNvdXRoZXJuIFRlcnJpdG9yaWVzXCIsXG4gIEdBOiBcIkdhYm9uXCIsXG4gIEdNOiBcIkdhbWJpYVwiLFxuICBHRTogXCJHZW9yZ2lhXCIsXG4gIERFOiBcIkdlcm1hbnlcIixcbiAgR0g6IFwiR2hhbmFcIixcbiAgR0k6IFwiR2licmFsdGFyXCIsXG4gIEdSOiBcIkdyZWVjZVwiLFxuICBHTDogXCJHcmVlbmxhbmRcIixcbiAgR0Q6IFwiR3JlbmFkYVwiLFxuICBHUDogXCJHdWFkZWxvdXBlXCIsXG4gIEdVOiBcIkd1YW1cIixcbiAgR1Q6IFwiR3VhdGVtYWxhXCIsXG4gIEdHOiBcIkd1ZXJuc2V5XCIsXG4gIEdOOiBcIkd1aW5lYVwiLFxuICBHVzogXCJHdWluZWEtQmlzc2F1XCIsXG4gIEdZOiBcIkd1eWFuYVwiLFxuICBIVDogXCJIYWl0aVwiLFxuICBITTogXCJIZWFyZCBJc2xhbmQgJiBNY2RvbmFsZCBJc2xhbmRzXCIsXG4gIFZBOiBcIkhvbHkgU2VlIChWYXRpY2FuIENpdHkgU3RhdGUpXCIsXG4gIEhOOiBcIkhvbmR1cmFzXCIsXG4gIEhLOiBcIkhvbmcgS29uZ1wiLFxuICBIVTogXCJIdW5nYXJ5XCIsXG4gIElTOiBcIkljZWxhbmRcIixcbiAgSU46IFwiSW5kaWFcIixcbiAgSUQ6IFwiSW5kb25lc2lhXCIsXG4gIElSOiBcIklyYW4sIElzbGFtaWMgUmVwdWJsaWMgT2ZcIixcbiAgSVE6IFwiSXJhcVwiLFxuICBJRTogXCJJcmVsYW5kXCIsXG4gIElNOiBcIklzbGUgT2YgTWFuXCIsXG4gIElMOiBcIklzcmFlbFwiLFxuICBJVDogXCJJdGFseVwiLFxuICBKTTogXCJKYW1haWNhXCIsXG4gIEpQOiBcIkphcGFuXCIsXG4gIEpFOiBcIkplcnNleVwiLFxuICBKTzogXCJKb3JkYW5cIixcbiAgS1o6IFwiS2F6YWtoc3RhblwiLFxuICBLRTogXCJLZW55YVwiLFxuICBLSTogXCJLaXJpYmF0aVwiLFxuICBLUjogXCJLb3JlYVwiLFxuICBLVzogXCJLdXdhaXRcIixcbiAgS0c6IFwiS3lyZ3l6c3RhblwiLFxuICBMQTogXCJMYW8gUGVvcGxlJ3MgRGVtb2NyYXRpYyBSZXB1YmxpY1wiLFxuICBMVjogXCJMYXR2aWFcIixcbiAgTEI6IFwiTGViYW5vblwiLFxuICBMUzogXCJMZXNvdGhvXCIsXG4gIExSOiBcIkxpYmVyaWFcIixcbiAgTFk6IFwiTGlieWFuIEFyYWIgSmFtYWhpcml5YVwiLFxuICBMSTogXCJMaWVjaHRlbnN0ZWluXCIsXG4gIExUOiBcIkxpdGh1YW5pYVwiLFxuICBMVTogXCJMdXhlbWJvdXJnXCIsXG4gIE1POiBcIk1hY2FvXCIsXG4gIE1LOiBcIk1hY2Vkb25pYVwiLFxuICBNRzogXCJNYWRhZ2FzY2FyXCIsXG4gIE1XOiBcIk1hbGF3aVwiLFxuICBNWTogXCJNYWxheXNpYVwiLFxuICBNVjogXCJNYWxkaXZlc1wiLFxuICBNTDogXCJNYWxpXCIsXG4gIE1UOiBcIk1hbHRhXCIsXG4gIE1IOiBcIk1hcnNoYWxsIElzbGFuZHNcIixcbiAgTVE6IFwiTWFydGluaXF1ZVwiLFxuICBNUjogXCJNYXVyaXRhbmlhXCIsXG4gIE1VOiBcIk1hdXJpdGl1c1wiLFxuICBZVDogXCJNYXlvdHRlXCIsXG4gIE1YOiBcIk1leGljb1wiLFxuICBGTTogXCJNaWNyb25lc2lhLCBGZWRlcmF0ZWQgU3RhdGVzIE9mXCIsXG4gIE1EOiBcIk1vbGRvdmFcIixcbiAgTUM6IFwiTW9uYWNvXCIsXG4gIE1OOiBcIk1vbmdvbGlhXCIsXG4gIE1FOiBcIk1vbnRlbmVncm9cIixcbiAgTVM6IFwiTW9udHNlcnJhdFwiLFxuICBNQTogXCJNb3JvY2NvXCIsXG4gIE1aOiBcIk1vemFtYmlxdWVcIixcbiAgTU06IFwiTXlhbm1hclwiLFxuICBOQTogXCJOYW1pYmlhXCIsXG4gIE5SOiBcIk5hdXJ1XCIsXG4gIE5QOiBcIk5lcGFsXCIsXG4gIE5MOiBcIk5ldGhlcmxhbmRzXCIsXG4gIEFOOiBcIk5ldGhlcmxhbmRzIEFudGlsbGVzXCIsXG4gIE5DOiBcIk5ldyBDYWxlZG9uaWFcIixcbiAgTlo6IFwiTmV3IFplYWxhbmRcIixcbiAgTkk6IFwiTmljYXJhZ3VhXCIsXG4gIE5FOiBcIk5pZ2VyXCIsXG4gIE5HOiBcIk5pZ2VyaWFcIixcbiAgTlU6IFwiTml1ZVwiLFxuICBORjogXCJOb3Jmb2xrIElzbGFuZFwiLFxuICBNUDogXCJOb3J0aGVybiBNYXJpYW5hIElzbGFuZHNcIixcbiAgTk86IFwiTm9yd2F5XCIsXG4gIE9NOiBcIk9tYW5cIixcbiAgUEs6IFwiUGFraXN0YW5cIixcbiAgUFc6IFwiUGFsYXVcIixcbiAgUFM6IFwiUGFsZXN0aW5pYW4gVGVycml0b3J5LCBPY2N1cGllZFwiLFxuICBQQTogXCJQYW5hbWFcIixcbiAgUEc6IFwiUGFwdWEgTmV3IEd1aW5lYVwiLFxuICBQWTogXCJQYXJhZ3VheVwiLFxuICBQRTogXCJQZXJ1XCIsXG4gIFBIOiBcIlBoaWxpcHBpbmVzXCIsXG4gIFBOOiBcIlBpdGNhaXJuXCIsXG4gIFBMOiBcIlBvbGFuZFwiLFxuICBQVDogXCJQb3J0dWdhbFwiLFxuICBQUjogXCJQdWVydG8gUmljb1wiLFxuICBRQTogXCJRYXRhclwiLFxuICBSRTogXCJSZXVuaW9uXCIsXG4gIFJPOiBcIlJvbWFuaWFcIixcbiAgUlU6IFwiUnVzc2lhbiBGZWRlcmF0aW9uXCIsXG4gIFJXOiBcIlJ3YW5kYVwiLFxuICBCTDogXCJTYWludCBCYXJ0aGVsZW15XCIsXG4gIFNIOiBcIlNhaW50IEhlbGVuYVwiLFxuICBLTjogXCJTYWludCBLaXR0cyBBbmQgTmV2aXNcIixcbiAgTEM6IFwiU2FpbnQgTHVjaWFcIixcbiAgTUY6IFwiU2FpbnQgTWFydGluXCIsXG4gIFBNOiBcIlNhaW50IFBpZXJyZSBBbmQgTWlxdWVsb25cIixcbiAgVkM6IFwiU2FpbnQgVmluY2VudCBBbmQgR3JlbmFkaW5lc1wiLFxuICBXUzogXCJTYW1vYVwiLFxuICBTTTogXCJTYW4gTWFyaW5vXCIsXG4gIFNUOiBcIlNhbyBUb21lIEFuZCBQcmluY2lwZVwiLFxuICBTQTogXCJTYXVkaSBBcmFiaWFcIixcbiAgU046IFwiU2VuZWdhbFwiLFxuICBSUzogXCJTZXJiaWFcIixcbiAgU0M6IFwiU2V5Y2hlbGxlc1wiLFxuICBTTDogXCJTaWVycmEgTGVvbmVcIixcbiAgU0c6IFwiU2luZ2Fwb3JlXCIsXG4gIFNLOiBcIlNsb3Zha2lhXCIsXG4gIFNJOiBcIlNsb3ZlbmlhXCIsXG4gIFNCOiBcIlNvbG9tb24gSXNsYW5kc1wiLFxuICBTTzogXCJTb21hbGlhXCIsXG4gIFpBOiBcIlNvdXRoIEFmcmljYVwiLFxuICBHUzogXCJTb3V0aCBHZW9yZ2lhIEFuZCBTYW5kd2ljaCBJc2wuXCIsXG4gIEVTOiBcIlNwYWluXCIsXG4gIExLOiBcIlNyaSBMYW5rYVwiLFxuICBTRDogXCJTdWRhblwiLFxuICBTUjogXCJTdXJpbmFtZVwiLFxuICBTSjogXCJTdmFsYmFyZCBBbmQgSmFuIE1heWVuXCIsXG4gIFNaOiBcIlN3YXppbGFuZFwiLFxuICBTRTogXCJTd2VkZW5cIixcbiAgQ0g6IFwiU3dpdHplcmxhbmRcIixcbiAgU1k6IFwiU3lyaWFuIEFyYWIgUmVwdWJsaWNcIixcbiAgVFc6IFwiVGFpd2FuXCIsXG4gIFRKOiBcIlRhamlraXN0YW5cIixcbiAgVFo6IFwiVGFuemFuaWFcIixcbiAgVEg6IFwiVGhhaWxhbmRcIixcbiAgVEw6IFwiVGltb3ItTGVzdGVcIixcbiAgVEc6IFwiVG9nb1wiLFxuICBUSzogXCJUb2tlbGF1XCIsXG4gIFRPOiBcIlRvbmdhXCIsXG4gIFRUOiBcIlRyaW5pZGFkIEFuZCBUb2JhZ29cIixcbiAgVE46IFwiVHVuaXNpYVwiLFxuICBUUjogXCJUdXJrZXlcIixcbiAgVE06IFwiVHVya21lbmlzdGFuXCIsXG4gIFRDOiBcIlR1cmtzIEFuZCBDYWljb3MgSXNsYW5kc1wiLFxuICBUVjogXCJUdXZhbHVcIixcbiAgVUc6IFwiVWdhbmRhXCIsXG4gIFVBOiBcIlVrcmFpbmVcIixcbiAgQUU6IFwiVW5pdGVkIEFyYWIgRW1pcmF0ZXNcIixcbiAgR0I6IFwiVW5pdGVkIEtpbmdkb21cIixcbiAgVVM6IFwiVW5pdGVkIFN0YXRlc1wiLFxuICBVTTogXCJVbml0ZWQgU3RhdGVzIE91dGx5aW5nIElzbGFuZHNcIixcbiAgVVk6IFwiVXJ1Z3VheVwiLFxuICBVWjogXCJVemJla2lzdGFuXCIsXG4gIFZVOiBcIlZhbnVhdHVcIixcbiAgVkU6IFwiVmVuZXp1ZWxhXCIsXG4gIFZOOiBcIlZpZXQgTmFtXCIsXG4gIFZHOiBcIlZpcmdpbiBJc2xhbmRzLCBCcml0aXNoXCIsXG4gIFZJOiBcIlZpcmdpbiBJc2xhbmRzLCBVLlMuXCIsXG4gIFdGOiBcIldhbGxpcyBBbmQgRnV0dW5hXCIsXG4gIEVIOiBcIldlc3Rlcm4gU2FoYXJhXCIsXG4gIFlFOiBcIlllbWVuXCIsXG4gIFpNOiBcIlphbWJpYVwiLFxuICBaVzogXCJaaW1iYWJ3ZVwiXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlckRvbWFpbnNCeVJvbGVzKHVzZXI6IGFueSwgcm9sZXM6IEFycmF5PG51bWJlcj4pIHtcbiAgY29uc3QgZUQgPSB1c2VyICYmIHVzZXIuZW5yb2xsZWREb21haW5zID8gdXNlci5lbnJvbGxlZERvbWFpbnMgOiBbXTtcbiAgY29uc3QgZG9tYWluczogYW55W10gPSBbXTtcbiAgbGV0IGkgPSAwO1xuICBmb3IgKGk7IGkgPCBlRC5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGUgPSBlRFtpXTtcbiAgICBpZiAocm9sZXMuaW5jbHVkZXMoZS5yb2xlKSkge1xuICAgICAgZG9tYWlucy5wdXNoKChlIGFzIGFueSkuZG9tYWluKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGRvbWFpbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VyQWRtaW5Eb21haW5zKHVzZXI6IGFueSkge1xuICByZXR1cm4gdXNlckRvbWFpbnNCeVJvbGVzKHVzZXIsIFtSb2xlLkFETUlOLCBSb2xlLk1BTkFHRVJdKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzUHJvZHVjdFN1cHBsaWVyTU9EKHByb2R1Y3Q6IGFueSkge1xuICBjb25zdCBwcm9kdWN0VHlwZSA9IHByb2R1Y3QgJiYgcHJvZHVjdC5wcm9kdWN0VHlwZVxuICByZXR1cm4gcHJvZHVjdCAmJiBbXG4gICAgU3RyaW5nKFByb2R1Y3RUeXBlLlNVUFBMSUVSX01PRCksXG4gICAgU3RyaW5nKFByb2R1Y3RUeXBlLlNVUFBMSUVSX1JFU0VMTF9NT0QpXG4gIF0uaW5jbHVkZXMoU3RyaW5nKHByb2R1Y3RUeXBlKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1VzZXJSZWdpc3RlcmVkKHVzZXI6IGFueSkge1xuICBjb25zdCBpZCA9IHVzZXIgPyB1c2VyLmlkIDogbnVsbDtcbiAgcmV0dXJuIGlkICE9PSB1bmRlZmluZWQgJiYgaWQgIT09IG51bGwgJiYgaWQgPiAwO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNSZWdpc3RlcmVkQW5kSGFzU3RvcmUodXNlcjogYW55KSB7XG4gIGNvbnN0IGlkID0gdXNlciA/IHVzZXIuaWQgOiBudWxsO1xuICByZXR1cm4gaWQgIT09IHVuZGVmaW5lZCAmJiBpZCAhPT0gbnVsbCAmJiBpZCA+IDAgJiYgdXNlci5oYXNTdG9yZTtcbn1cblxuY29uc3Qgc3VwcG9ydGVkTnVtYmVyczogYW55ID0ge1xuICBBVTogJ0F1c3RyYWxpYSAoKzYxKScsXG4gIEFFOiAnVW5pdGVkIEFyYWIgRW1pcmF0ZXMgKCs5NzEpJyxcbiAgQkg6ICdCYWhyYWluICgrOTczKScsXG4gIENOOiAnQ2hpbmEgKCs4NiknLFxuICBESzogJ0Rlbm1hcmsgKCs0NSknLFxuICBFUzogJ1NwYWluICgrMzQpJyxcbiAgRlI6ICdGcmFuY2UgKCszMyknLFxuICBHQjogJ1VuaXRlZCBLaW5nZG9tICgrNDQpJyxcbiAgSEs6ICdIb25nIEtvbmcgKCs4NTIpJyxcbiAgSUQ6ICdJbmRvbmVzaWEgKCs2MiknLFxuICBJTjogJ0luZGlhICgrOTEpJyxcbiAgSVQ6ICdJdGFseSAoKzM5KScsXG4gIEtSOiAnU291dGggS29yZWEgKCs4MiknLFxuICBOQzogJ05ldyBDYWxlZG9uaWEgKCs2ODcpJyxcbiAgTlo6ICdOZXcgWmVhbGFuZCAoKzY0KScsXG4gIE9NOiAnT21hbiAoKzk2OCknLFxuICBQSDogJ1BoaWxpcHBpbmVzICgrNjMpJyxcbiAgUFQ6ICdQb3J0dWdhbCAoKzM1MSknLFxuICBRQTogJ1FhdGFyICgrOTc0KScsXG4gIFNFOiAnU3dlZGVuICgrNDYpJyxcbiAgU0c6ICdTaW5nYXBvcmUgKCs2NSknLFxuICBUSDogJ1RoYWlsYW5kICgrNjYpJyxcbiAgVVM6ICdVbml0ZWQgU3RhdGVzICgrMSknLFxuICBaQTogJ1NvdXRoIEFmcmljYSAoKzI3KScsXG59O1xuXG5leHBvcnQgY29uc3QgcGhvbmVPcHRpb25zID0gT2JqZWN0LmtleXMoc3VwcG9ydGVkTnVtYmVycykubWFwKChrZXkpID0+ICh7XG4gIHZhbHVlOiBrZXksXG4gIGxhYmVsOiBzdXBwb3J0ZWROdW1iZXJzW2tleV0sXG59KSk7XG5cbmV4cG9ydCBjb25zdCBhZGRyZXNzQ29tcG9uZW50c1NldHRpbmdzQmFja2VuZDogYW55ID0ge1xuICBhZG1pbmlzdHJhdGl2ZV9hcmVhX2xldmVsXzE6ICdzaG9ydE5hbWUnLFxuICBhZG1pbmlzdHJhdGl2ZV9hcmVhX2xldmVsXzI6ICdzaG9ydE5hbWUnLFxuICBjb3VudHJ5OiAnc2hvcnROYW1lJyxcbiAgZXN0YWJsaXNobWVudDogJ2xvbmdOYW1lJyxcbiAgZmxvb3I6ICdzaG9ydE5hbWUnLFxuICBsb2NhbGl0eTogJ2xvbmdOYW1lJyxcbiAgcG9zdGFsX2NvZGU6ICdzaG9ydE5hbWUnLFxuICBwcmVtaXNlOiAnc2hvcnROYW1lJyxcbiAgcm9vbTogJ2xvbmdOYW1lJyxcbiAgcm91dGU6ICdzaG9ydE5hbWUnLFxuICBzdHJlZXRfbnVtYmVyOiAnc2hvcnROYW1lJyxcbiAgc3VibG9jYWxpdHk6ICdsb25nTmFtZScsXG4gIHN1YnByZW1pc2U6ICdzaG9ydE5hbWUnLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdvb2dsZVBsYWNlc1Jlc3VsdEFzTmV3QWRkcmVzcyhwbGFjZURldGFpbHM6IGFueSkge1xuICBjb25zdCBhZGRyZXNzQ29tcG9uZW50cyA9IHBsYWNlRGV0YWlscz8uYWRkcmVzc0NvbXBvbmVudHMgfHwgW107XG4gIGNvbnN0IG5hbWUgPSBwbGFjZURldGFpbHM/Lm5hbWUgfHwgJyc7XG4gIGNvbnN0IGFkZHJlc3MgPSB7XG4gICAgY2l0eTogJycsXG4gICAgY291bnRyeTogJycsXG4gICAgbGluZU9uZTogbmFtZSA/IG5hbWUgOiAnJyxcbiAgICBsaW5lVHdvOiAnJyxcbiAgICBwb3N0Y29kZTogJycsXG4gICAgc3RhdGU6ICcnLFxuICB9O1xuXG4gIGlmIChhZGRyZXNzQ29tcG9uZW50cyAmJiBhZGRyZXNzQ29tcG9uZW50cy5sZW5ndGggPiAwKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhZGRyZXNzQ29tcG9uZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgYWRkckNvbXBvbmVudCA9IGFkZHJlc3NDb21wb25lbnRzW2ldO1xuICAgICAgY29uc3QgYWRkclR5cGVzID0gYWRkckNvbXBvbmVudC50eXBlcztcbiAgICAgIFxuICAgICAgLy8gRmluZCB0aGUgZmlyc3QgcmVsZXZhbnQgdHlwZSB0aGF0IHdlIGhhdmUgYSBzZXR0aW5nIGZvclxuICAgICAgbGV0IGFkZHJUeXBlID0gbnVsbDtcbiAgICAgIGxldCBjb21wb25lbnRTZXR0aW5nID0gbnVsbDtcbiAgICAgIFxuICAgICAgZm9yIChjb25zdCB0eXBlIG9mIGFkZHJUeXBlcykge1xuICAgICAgICBpZiAoYWRkcmVzc0NvbXBvbmVudHNTZXR0aW5nc0JhY2tlbmRbdHlwZV0pIHtcbiAgICAgICAgICBhZGRyVHlwZSA9IHR5cGU7XG4gICAgICAgICAgY29tcG9uZW50U2V0dGluZyA9IGFkZHJlc3NDb21wb25lbnRzU2V0dGluZ3NCYWNrZW5kW3R5cGVdO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChjb21wb25lbnRTZXR0aW5nICYmIGFkZHJUeXBlKSB7XG4gICAgICAgIGNvbnN0IGFkZHJlc3NWYWwgPSBhZGRyQ29tcG9uZW50W2NvbXBvbmVudFNldHRpbmddO1xuICAgICAgICBzd2l0Y2ggKGFkZHJUeXBlKSB7XG4gICAgICAgICAgY2FzZSAnZXN0YWJsaXNobWVudCc6XG4gICAgICAgICAgY2FzZSAncm9vbSc6XG4gICAgICAgICAgY2FzZSAnZmxvb3InOlxuICAgICAgICAgIGNhc2UgJ3N0cmVldF9udW1iZXInOlxuICAgICAgICAgIGNhc2UgJ3ByZW1pc2UnOlxuICAgICAgICAgIGNhc2UgJ3N1YnByZW1pc2UnOlxuICAgICAgICAgIGNhc2UgJ3JvdXRlJzpcbiAgICAgICAgICAgIGNvbnN0IG9sZExpbmVPbmUgPSBhZGRyZXNzLmxpbmVPbmU7XG4gICAgICAgICAgICBhZGRyZXNzLmxpbmVPbmUgPSBvbGRMaW5lT25lLmluY2x1ZGVzKGFkZHJlc3NWYWwpID9cbiAgICAgICAgICAgICAgb2xkTGluZU9uZSA6IGAke29sZExpbmVPbmV9ICR7YWRkcmVzc1ZhbH1gLnRyaW0oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2xvY2FsaXR5JzpcbiAgICAgICAgICBjYXNlICdzdWJsb2NhbGl0eSc6XG4gICAgICAgICAgICBjb25zdCBvbGRDaXR5ID0gYWRkcmVzcy5jaXR5ID8gYCR7YWRkcmVzcy5jaXR5fSBgIDogJyc7XG4gICAgICAgICAgICBhZGRyZXNzLmNpdHkgPSAob2xkQ2l0eSArIGFkZHJlc3NWYWwpLnRyaW0oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2FkbWluaXN0cmF0aXZlX2FyZWFfbGV2ZWxfMSc6XG5cbiAgICAgICAgICAgIGFkZHJlc3Muc3RhdGUgPSBhZGRyZXNzVmFsO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnYWRtaW5pc3RyYXRpdmVfYXJlYV9sZXZlbF8yJzpcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2NvdW50cnknOlxuXG4gICAgICAgICAgICBhZGRyZXNzLmNvdW50cnkgPSBhZGRyZXNzVmFsO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAncG9zdGFsX2NvZGUnOlxuICAgICAgICAgICAgYWRkcmVzcy5wb3N0Y29kZSA9IGFkZHJlc3NWYWw7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbGVhbiB1cCBsaW5lIG9uZSBpZiBpdCdzIGVtcHR5IGFuZCB3ZSBoYXZlIGEgZm9ybWF0dGVkIGFkZHJlc3NcbiAgICBpZiAoIWFkZHJlc3MubGluZU9uZS50cmltKCkgJiYgcGxhY2VEZXRhaWxzPy5mb3JtYXR0ZWRBZGRyZXNzKSB7XG4gICAgICAvLyBUcnkgdG8gZXh0cmFjdCBzdHJlZXQgYWRkcmVzcyBmcm9tIGZvcm1hdHRlZCBhZGRyZXNzXG4gICAgICBjb25zdCBwYXJ0cyA9IHBsYWNlRGV0YWlscy5mb3JtYXR0ZWRBZGRyZXNzLnNwbGl0KCcsJyk7XG4gICAgICBpZiAocGFydHMubGVuZ3RoID4gMCkge1xuICAgICAgICBhZGRyZXNzLmxpbmVPbmUgPSBwYXJ0c1swXS50cmltKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGFkZHJlc3M7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZHJlc3NJbk9uZUxpbmUoYWRkcmVzczogYW55KSB7XG4gIGNvbnN0IGEgPSBhZGRyZXNzID8gYWRkcmVzcyA6IHt9O1xuICBjb25zdCB7XG4gICAgY2l0eSxcbiAgICBjb3VudHJ5LFxuICAgIGxpbmVPbmUsXG4gICAgbGluZVR3byxcbiAgICBwb3N0Y29kZSxcbiAgICBzdGF0ZVxuICB9ID0gYTtcbiAgY29uc3QgbDEgPSBsaW5lT25lID8gYCR7bGluZU9uZX0gYCA6ICcnO1xuICBjb25zdCBsMiA9IGxpbmVUd28gPyBgJHtsaW5lVHdvfSBgIDogJyc7XG4gIGNvbnN0IGMgPSBjaXR5ID8gYCR7Y2l0eX0gYCA6ICcnO1xuICBjb25zdCBzID0gc3RhdGUgPyBgJHtzdGF0ZX0gYCA6ICcnO1xuICBjb25zdCBwID0gcG9zdGNvZGUgPyBgJHtwb3N0Y29kZX0gYCA6ICcnO1xuICBjb25zdCBjb3VudHJ5RnVsbCA9IGNvdW50cnkgPyBpc29Db3VudHJpZXNbY291bnRyeV0gOiAnJztcbiAgcmV0dXJuIGwxICsgbDIgKyBjICsgcyArIHAgKyBjb3VudHJ5RnVsbDtcbn1cblxuZXhwb3J0IGVudW0gRmllbGRUeXBlIHtcbiAgVEVYVF9JTlBVVCA9IDEsXG4gIFNFTEVDVCA9IDIsXG4gIEZJTEVfVVBMT0FEID0gMyxcbiAgVEVYVF9BUkVBID0gNCxcbiAgTlVNQkVSX0lOUFVUID0gNSxcbiAgQ0hFQ0tCT1ggPSA2LFxuICBSQURJTyA9IDcsXG4gIEZJRUxEX0lOU1RSVUNUSU9OUyA9IDgsXG4gIElNQUdFX1NFTEVDVCA9IDksXG4gIENPTE9VUl9QSUNLRVIgPSAxMCxcbiAgQ09MT1VSX1NFTEVDVCA9IDExLFxuICBUVVJOQVJPVU5EX1RJTUUgPSAxMixcbiAgQ09MT1VSX0VYVFJBQ1QgPSAxMyxcbiAgQVJFQSA9IDE0LFxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNTZWxlY3RhYmxlKGZpZWxkVHlwZTogbnVtYmVyKSB7XG4gIHJldHVybiBbXG4gICAgRmllbGRUeXBlLlNFTEVDVCxcbiAgICBGaWVsZFR5cGUuQ0hFQ0tCT1gsXG4gICAgRmllbGRUeXBlLlJBRElPLFxuICAgIEZpZWxkVHlwZS5JTUFHRV9TRUxFQ1QsXG4gICAgRmllbGRUeXBlLkNPTE9VUl9TRUxFQ1QsXG4gICAgRmllbGRUeXBlLlRVUk5BUk9VTkRfVElNRSxcbiAgICBGaWVsZFR5cGUuQ09MT1VSX0VYVFJBQ1QsXG4gIF0uaW5jbHVkZXMoZmllbGRUeXBlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzSW5zdHJ1Y3Rpb25zVHlwZShmaWVsZFR5cGU6IG51bWJlcikge1xuICByZXR1cm4gU3RyaW5nKEZpZWxkVHlwZS5GSUVMRF9JTlNUUlVDVElPTlMpID09PSBTdHJpbmcoZmllbGRUeXBlKTtcbn1cblxuZXhwb3J0IGNvbnN0IGNvdW50cnlEZWZhdWx0RGljdCA9IChjdXJyZW5jeTogc3RyaW5nKSA9PiB7XG4gIHJldHVybiB7Y3VycmVuY3k6IGN1cnJlbmN5fTtcbn07XG4gIFxuZXhwb3J0IGNvbnN0IHN1cHBvcnRlZENvdW50cnlEZWZhdWx0czogYW55ID0ge1xuICBBRTogY291bnRyeURlZmF1bHREaWN0KCdVU0QnKSxcbiAgQVU6IGNvdW50cnlEZWZhdWx0RGljdCgnQVVEJyksXG4gIEJIOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxuICBDSDogY291bnRyeURlZmF1bHREaWN0KCdDTlknKSxcbiAgREs6IGNvdW50cnlEZWZhdWx0RGljdCgnRVVSJyksXG4gIEVTOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0VVUicpLFxuICBGUjogY291bnRyeURlZmF1bHREaWN0KCdFVVInKSxcbiAgR0I6IGNvdW50cnlEZWZhdWx0RGljdCgnR0JQJyksXG4gIEhLOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0hLRCcpLFxuICBJRDogY291bnRyeURlZmF1bHREaWN0KCdVU0QnKSxcbiAgSU46IGNvdW50cnlEZWZhdWx0RGljdCgnSU5SJyksXG4gIElUOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0VVUicpLFxuICBLUjogY291bnRyeURlZmF1bHREaWN0KCdVU0QnKSxcbiAgTkM6IGNvdW50cnlEZWZhdWx0RGljdCgnVVNEJyksXG4gIE5aOiBjb3VudHJ5RGVmYXVsdERpY3QoJ05aRCcpLFxuICBPTTogY291bnRyeURlZmF1bHREaWN0KCdVU0QnKSxcbiAgUEg6IGNvdW50cnlEZWZhdWx0RGljdCgnVVNEJyksXG4gIFBUOiBjb3VudHJ5RGVmYXVsdERpY3QoJ0VVUicpLFxuICBRQTogY291bnRyeURlZmF1bHREaWN0KCdVU0QnKSxcbiAgU0U6IGNvdW50cnlEZWZhdWx0RGljdCgnVVNEJyksXG4gIFNHOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1NHRCcpLFxuICBUSDogY291bnRyeURlZmF1bHREaWN0KCdVU0QnKSxcbiAgVVM6IGNvdW50cnlEZWZhdWx0RGljdCgnVVNEJyksXG4gIFpBOiBjb3VudHJ5RGVmYXVsdERpY3QoJ1VTRCcpLFxufTtcbiAgXG5leHBvcnQgY29uc3Qgc3VwcG9ydGVkQ291bnRyeURlZmF1bHRzV2l0aERlZmF1bHQgPSAoY291bnRyeUNvZGU6IGFueSkgPT4ge1xuICBjb25zdCBkZWZhdWx0Q291bnRyeVZhbHVlcyA9IHN1cHBvcnRlZENvdW50cnlEZWZhdWx0c1tjb3VudHJ5Q29kZV07XG4gIHJldHVybiBkZWZhdWx0Q291bnRyeVZhbHVlcyA/IGRlZmF1bHRDb3VudHJ5VmFsdWVzIDogc3VwcG9ydGVkQ291bnRyeURlZmF1bHRzLkFVO1xufTtcblxuaW50ZXJmYWNlIENsaWVudEZpbGVBbmRPYmplY3RJZCB7XG4gIGZpbGU/OiBhbnk7XG4gIG9iamVjdElkPzogc3RyaW5nO1xuICBpZD86IHN0cmluZyB8IG51bWJlcjtcbn1cblxuZnVuY3Rpb24gaXNGaWxlUmVmKHZhbHVlOiBhbnkpIHtcbiAgcmV0dXJuIHZhbHVlICE9IG51bGwgJiYgdmFsdWUuaWQgIT0gbnVsbCAmJiB2YWx1ZS5pZCAhPT0gJyc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhbkNsaWVudEZpbGVzKGNsaWVudEZpbGVzOiBDbGllbnRGaWxlQW5kT2JqZWN0SWRbXSA9IFtdKSB7XG4gIHJldHVybiBjbGllbnRGaWxlc1xuICAgIC5tYXAoKGNsaWVudEZpbGU6IENsaWVudEZpbGVBbmRPYmplY3RJZCkgPT4ge1xuICAgICAgaWYgKCFjbGllbnRGaWxlKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgaWYgKGlzRmlsZVJlZihjbGllbnRGaWxlLmZpbGUpKSByZXR1cm4gY2xpZW50RmlsZS5maWxlO1xuICAgICAgaWYgKGlzRmlsZVJlZihjbGllbnRGaWxlKSkgcmV0dXJuIHsgaWQ6IGNsaWVudEZpbGUuaWQgfTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfSlcbiAgICAuZmlsdGVyKChmaWxlKSA9PiBmaWxlICE9IG51bGwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXBwZW5kQ2xpZW50VG9Pd25EcmFmdChqb2I6IGFueSkge1xuICBjb25zdCB7IG93bkRyYWZ0cyB9ID0gam9iO1xuICBpZiAoam9iLm93bkRyYWZ0cyAmJiBqb2Iub3duRHJhZnRzLmxlbmd0aCkge1xuICAgIGpvYi5vd25EcmFmdHNbMF0uZGVzaWduZXIgPSBqb2IuY2xpZW50O1xuICB9XG4gIHJldHVybiBqb2I7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VjY2Vzc1JlZGlyZWN0RXh0cmFzIHtcbiAgLyoqIEludm9pY2UgaWQgZm9yIHBhaWQgY2hlY2tvdXQsIG9yIGpvYiBpZCBmb3IgcXVvdGUgcmVxdWVzdHMuICovXG4gIGludm9pY2VJZD86IHN0cmluZyB8IG51bWJlciB8IG51bGw7XG4gIGVtYWlsPzogc3RyaW5nIHwgbnVsbDtcbn1cblxuLyoqXG4gKiBEZWNvZGUvbm9ybWFsaXplIGEgcmVkaXJlY3QgYmFzZSBVUkwgZnJvbSBlbWJlZCBzY3JpcHQgcGFyYW1zLlxuICogSGFuZGxlcyBwZXJjZW50LWVuY29kaW5nLCBsZWdhY3kgJTI3IHdyYXBwZXJzLCBhbmQgdHJhaWxpbmcganVuay5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZVJlZGlyZWN0QmFzZVVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XG4gIGxldCBjbGVhbiA9IFN0cmluZyh1cmwgfHwgJycpXG4gICAgLnRyaW0oKVxuICAgIC5yZXBsYWNlKC8lMjcvZywgJycpXG4gICAgLnJlcGxhY2UoLyU5MS9nLCAnJylcbiAgICAucmVwbGFjZSgvJTkyL2csICcnKVxuICAgIC5yZXBsYWNlKC8lOTMvZywgJycpXG4gICAgLnJlcGxhY2UoLyU5NC9nLCAnJylcbiAgICAucmVwbGFjZSgvXlsnXCJdK3xbJ1wiXSskL2csICcnKTtcblxuICAvLyBGdWxseSBkZWNvZGUgc28gZW5jb2RlZCBhYnNvbHV0ZSBVUkxzIGFyZSBub3QgdHJlYXRlZCBhcyByZWxhdGl2ZSBwYXRocy5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCAyOyBpKyspIHtcbiAgICB0cnkge1xuICAgICAgaWYgKCEvJVswLTlBLUZhLWZdezJ9Ly50ZXN0KGNsZWFuKSkgYnJlYWs7XG4gICAgICBjb25zdCBkZWNvZGVkID0gZGVjb2RlVVJJQ29tcG9uZW50KGNsZWFuKTtcbiAgICAgIGlmIChkZWNvZGVkID09PSBjbGVhbikgYnJlYWs7XG4gICAgICBjbGVhbiA9IGRlY29kZWQ7XG4gICAgfSBjYXRjaCB7XG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2xlYW47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDbGllbnRFbWFpbChjbGllbnQ6IGFueSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IGVtYWlsID0gY2xpZW50Py5lbWFpbEFkZHJlc3Nlcz8uWzBdPy5lbWFpbEFkZHJlc3M7XG4gIHJldHVybiB0eXBlb2YgZW1haWwgPT09ICdzdHJpbmcnICYmIGVtYWlsLnRyaW0oKSA/IGVtYWlsLnRyaW0oKSA6IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBCdWlsZCB0aGUgcG9zdC1jaGVja291dC9xdW90ZSByZWRpcmVjdCBVUkwgd2l0aCBwcm9wZXIgcXVlcnkgc2VwYXJhdG9ycy5cbiAqIEFsd2F5cyBzYWZlIHdoZW4gdGhlIGJhc2UgVVJMIG9taXRzIGEgdHJhaWxpbmcgXCI/XCIgLyBcIiZcIi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkU3VjY2Vzc1JlZGlyZWN0VXJsKFxuICB1cmw6IHN0cmluZyxcbiAgcmVkaXJlY3RXaXRoVmFsdWU/OiBib29sZWFuLFxuICB2YWx1ZT86IGFueSxcbiAgZXh0cmFzOiBTdWNjZXNzUmVkaXJlY3RFeHRyYXMgPSB7fSxcbik6IHN0cmluZyB7XG4gIGNvbnN0IGJhc2UgPSBub3JtYWxpemVSZWRpcmVjdEJhc2VVcmwodXJsKTtcbiAgaWYgKCFiYXNlKSByZXR1cm4gYmFzZTtcblxuICBjb25zdCB0YXJnZXQgPSBuZXcgVVJMKFxuICAgIGJhc2UsXG4gICAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgPyB3aW5kb3cubG9jYXRpb24uaHJlZiA6ICdodHRwczovL3BsYWNlaG9sZGVyLmludmFsaWQvJyxcbiAgKTtcblxuICBpZiAoXG4gICAgcmVkaXJlY3RXaXRoVmFsdWUgJiZcbiAgICB2YWx1ZSAhPT0gdW5kZWZpbmVkICYmXG4gICAgdmFsdWUgIT09IG51bGwgJiZcbiAgICB2YWx1ZSAhPT0gJydcbiAgKSB7XG4gICAgdGFyZ2V0LnNlYXJjaFBhcmFtcy5zZXQoJ21lcmNoaVZhbHVlJywgU3RyaW5nKHZhbHVlKSk7XG4gIH1cblxuICBpZiAoZXh0cmFzLmludm9pY2VJZCAhPT0gdW5kZWZpbmVkICYmIGV4dHJhcy5pbnZvaWNlSWQgIT09IG51bGwgJiYgZXh0cmFzLmludm9pY2VJZCAhPT0gJycpIHtcbiAgICB0YXJnZXQuc2VhcmNoUGFyYW1zLnNldCgnaW52b2ljZUlkJywgU3RyaW5nKGV4dHJhcy5pbnZvaWNlSWQpKTtcbiAgfVxuXG4gIGlmIChleHRyYXMuZW1haWwpIHtcbiAgICB0YXJnZXQuc2VhcmNoUGFyYW1zLnNldCgnZW1haWwnLCBTdHJpbmcoZXh0cmFzLmVtYWlsKSk7XG4gIH1cblxuICAvLyBQcmVzZXJ2ZSBwcm90b2NvbC1yZWxhdGl2ZSByZWRpcmVjdCB0YXJnZXRzICgvL2V4YW1wbGUuY29tLy4uLikuXG4gIGlmIChiYXNlLnN0YXJ0c1dpdGgoJy8vJykpIHtcbiAgICByZXR1cm4gYC8vJHt0YXJnZXQuaG9zdH0ke3RhcmdldC5wYXRobmFtZX0ke3RhcmdldC5zZWFyY2h9JHt0YXJnZXQuaGFzaH1gO1xuICB9XG5cbiAgcmV0dXJuIHRhcmdldC50b1N0cmluZygpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVkaXJlY3RPblN1Y2Nlc3MoXG4gIHVybDogc3RyaW5nLFxuICByZWRpcmVjdFdpdGhWYWx1ZT86IGJvb2xlYW4sXG4gIHZhbHVlPzogYW55LFxuICBleHRyYXM6IFN1Y2Nlc3NSZWRpcmVjdEV4dHJhcyA9IHt9LFxuKSB7XG4gIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gYnVpbGRTdWNjZXNzUmVkaXJlY3RVcmwoXG4gICAgdXJsLFxuICAgIHJlZGlyZWN0V2l0aFZhbHVlLFxuICAgIHZhbHVlLFxuICAgIGV4dHJhcyxcbiAgKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsU0FBU0EsV0FBVyxFQUFFQyxJQUFJLFFBQVEsU0FBUztBQUUzQyxPQUFPLElBQU1DLFlBQWlCLEdBQUc7RUFDL0JDLEVBQUUsRUFBRSxhQUFhO0VBQ2pCQyxFQUFFLEVBQUUs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
package/package.json CHANGED
@@ -1,91 +1,91 @@
1
- {
2
- "name": "merchi_checkout",
3
- "version": "1.2.9",
4
- "description": "Merchi's custom checkout step form",
5
- "main": "lib/index.js",
6
- "module": "src/index.tsx",
7
- "types": "lib/index.d.ts",
8
- "scripts": {
9
- "build": "babel src --out-dir lib --extensions .ts,.tsx --source-maps inline --verbose --copy-files && yarn copy-assets && yarn compile-sass",
10
- "copy-assets": "copyfiles -u 1 src/**/*.png lib",
11
- "compile-sass": "sass src/styles/globals.scss lib/styles/globals.css",
12
- "start": "react-scripts start",
13
- "test": "react-scripts test",
14
- "eject": "react-scripts eject"
15
- },
16
- "repository": {
17
- "type": "git",
18
- "url": "git+https://github.com/merchisdk/merchi_checkout.git"
19
- },
20
- "keywords": [
21
- "react",
22
- "merchi",
23
- "component",
24
- "merch",
25
- "merchandise",
26
- "library",
27
- "stripe"
28
- ],
29
- "author": "Merchi SDK <james@merchi.co>",
30
- "license": "MIT",
31
- "bugs": {
32
- "url": "https://github.com/merchisdk/merchi_checkout/issues"
33
- },
34
- "homepage": "https://github.com/merchisdk/merchi_checkout#readme",
35
- "files": [
36
- "lib"
37
- ],
38
- "peerDependencies": {
39
- "react": "^18.0.0 || ^19.0.0",
40
- "react-dom": "^18.0.0 || ^19.0.0"
41
- },
42
- "devDependencies": {
43
- "@babel/cli": "^7.23.0",
44
- "@babel/core": "^7.23.0",
45
- "@babel/plugin-transform-react-jsx": "^7.22.15",
46
- "@babel/plugin-transform-runtime": "^7.23.3",
47
- "@babel/preset-env": "^7.23.3",
48
- "@babel/preset-react": "^7.23.3",
49
- "@babel/preset-typescript": "^7.23.3",
50
- "@types/lodash": "^4.14.199",
51
- "@types/node": "20.5.0",
52
- "@types/react": "18.2.20",
53
- "@types/react-dom": "18.2.7",
54
- "@types/uuid": "^9.0.5",
55
- "compile-sass": "^2.0.0",
56
- "copyfiles": "^2.4.1",
57
- "eslint": "8.47.0",
58
- "eslint-config-next": "13.4.16",
59
- "sass": "^1.70.0",
60
- "typescript": "^5.1.6"
61
- },
62
- "dependencies": {
63
- "@fortawesome/fontawesome-free": "6.4.2",
64
- "@fortawesome/fontawesome-svg-core": "6.4.2",
65
- "@fortawesome/free-solid-svg-icons": "6.4.2",
66
- "@fortawesome/react-fontawesome": "^0.2.0",
67
- "@pqina/pintura": "^8.71.1",
68
- "@pqina/react-pintura": "^9.0.3",
69
- "@types/node": "20.5.0",
70
- "@types/react": "18.2.20",
71
- "@types/react-dom": "18.2.7",
72
- "eslint": "8.47.0",
73
- "eslint-config-next": "13.4.16",
74
- "js-cookie": "^3.0.5",
75
- "lodash": "^4.17.21",
76
- "merchi_invoice": "^1.2.2",
77
- "merchi_sdk_ts": "^1.32.1",
78
- "react": "^18.0.0 || ^19.0.0",
79
- "react-addons-css-transition-group": "^15.6.2",
80
- "react-country-region-selector": "^3.6.1",
81
- "react-dom": "^18.0.0 || ^19.0.0",
82
- "react-dropzone": "^14.2.3",
83
- "react-hook-form": "7.45.4",
84
- "react-icons": "^4.10.1",
85
- "react-medium-image-zoom": "^5.1.8",
86
- "react-transition": "^1.0.3",
87
- "react-transition-group": "^4.4.5",
88
- "typescript": "5.1.6",
89
- "uuid": "^9.0.0"
90
- }
91
- }
1
+ {
2
+ "name": "merchi_checkout",
3
+ "version": "1.3.2",
4
+ "description": "Merchi's custom checkout step form",
5
+ "main": "lib/index.js",
6
+ "module": "lib/index.js",
7
+ "types": "lib/index.d.ts",
8
+ "scripts": {
9
+ "build": "babel src --out-dir lib --extensions .ts,.tsx --source-maps inline --verbose --copy-files && npm run copy-assets && npm run compile-sass",
10
+ "copy-assets": "copyfiles -u 1 src/**/*.png lib",
11
+ "compile-sass": "sass src/styles/globals.scss lib/styles/globals.css",
12
+ "start": "react-scripts start",
13
+ "test": "react-scripts test",
14
+ "eject": "react-scripts eject"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "git+https://github.com/merchisdk/merchi_checkout.git"
19
+ },
20
+ "keywords": [
21
+ "react",
22
+ "merchi",
23
+ "component",
24
+ "merch",
25
+ "merchandise",
26
+ "library",
27
+ "stripe"
28
+ ],
29
+ "author": "Merchi SDK <james@merchi.co>",
30
+ "license": "MIT",
31
+ "bugs": {
32
+ "url": "https://github.com/merchisdk/merchi_checkout/issues"
33
+ },
34
+ "homepage": "https://github.com/merchisdk/merchi_checkout#readme",
35
+ "files": [
36
+ "lib"
37
+ ],
38
+ "peerDependencies": {
39
+ "react": "^18.0.0 || ^19.0.0",
40
+ "react-dom": "^18.0.0 || ^19.0.0"
41
+ },
42
+ "devDependencies": {
43
+ "@babel/cli": "^7.23.0",
44
+ "@babel/core": "^7.23.0",
45
+ "@babel/plugin-transform-react-jsx": "^7.22.15",
46
+ "@babel/plugin-transform-runtime": "^7.23.3",
47
+ "@babel/preset-env": "^7.23.3",
48
+ "@babel/preset-react": "^7.23.3",
49
+ "@babel/preset-typescript": "^7.23.3",
50
+ "@types/lodash": "^4.14.199",
51
+ "@types/node": "20.5.0",
52
+ "@types/react": "18.2.20",
53
+ "@types/react-dom": "18.2.7",
54
+ "@types/uuid": "^9.0.5",
55
+ "compile-sass": "^2.0.0",
56
+ "copyfiles": "^2.4.1",
57
+ "eslint": "8.47.0",
58
+ "eslint-config-next": "13.4.16",
59
+ "sass": "^1.70.0",
60
+ "typescript": "^5.1.6"
61
+ },
62
+ "dependencies": {
63
+ "@fortawesome/fontawesome-free": "6.4.2",
64
+ "@fortawesome/fontawesome-svg-core": "6.4.2",
65
+ "@fortawesome/free-solid-svg-icons": "6.4.2",
66
+ "@fortawesome/react-fontawesome": "^0.2.0",
67
+ "@pqina/pintura": "^8.71.1",
68
+ "@pqina/react-pintura": "^9.0.3",
69
+ "@types/node": "20.5.0",
70
+ "@types/react": "18.2.20",
71
+ "@types/react-dom": "18.2.7",
72
+ "eslint": "8.47.0",
73
+ "eslint-config-next": "13.4.16",
74
+ "js-cookie": "^3.0.5",
75
+ "lodash": "^4.17.21",
76
+ "merchi_invoice": "^1.3.2",
77
+ "merchi_sdk_ts": "^1.32.1",
78
+ "react": "^18.0.0 || ^19.0.0",
79
+ "react-addons-css-transition-group": "^15.6.2",
80
+ "react-country-region-selector": "^3.6.1",
81
+ "react-dom": "^18.0.0 || ^19.0.0",
82
+ "react-dropzone": "^14.2.3",
83
+ "react-hook-form": "7.45.4",
84
+ "react-icons": "^4.10.1",
85
+ "react-medium-image-zoom": "^5.1.8",
86
+ "react-transition": "^1.0.3",
87
+ "react-transition-group": "^4.4.5",
88
+ "typescript": "5.1.6",
89
+ "uuid": "^9.0.0"
90
+ }
91
+ }