@commercetools-uikit/localized-money-input 16.5.0 → 16.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -70,6 +70,7 @@ export default Example;
70
70
  | `hasWarning` | `boolean` | | | Control to indicate on the input if there are values that are potentially invalid |
71
71
  | `errors` | `Record` | | | A map of errors. Error messages for known errors are rendered automatically.&#xA;<br>&#xA;Unknown errors will be forwarded to `renderError` |
72
72
  | `warnings` | `Record` | | | A map of warnings. |
73
+ | `hasHighPrecisionBadge` | `boolean` | | | Shows high precision badge in case current value uses high precision. |
73
74
 
74
75
  ## Signatures
75
76
 
@@ -85,7 +85,7 @@ var _ref = process.env.NODE_ENV === "production" ? {
85
85
  } : {
86
86
  name: "1ysn02y-LocalizedInput",
87
87
  styles: "width:100%;position:relative;display:flex;label:LocalizedInput;",
88
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC1tb25leS1pbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb09nQiIsImZpbGUiOiJsb2NhbGl6ZWQtbW9uZXktaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVG9nZ2xlU3RhdGUsIHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgTW9uZXlJbnB1dCwge1xuICB0eXBlIFRDdXJyZW5jeUNvZGUsXG4gIHR5cGUgVE1vbmV5VmFsdWUsXG4gIHR5cGUgVFZhbHVlLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9tb25leS1pbnB1dCc7XG5pbXBvcnQgU3RhY2sgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3Mtc3RhY2snO1xuaW1wb3J0IENvbnN0cmFpbnRzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2NvbnN0cmFpbnRzJztcbmltcG9ydCB7IENvaW5zSWNvbiB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2ljb25zJztcbmltcG9ydCB7XG4gIGNyZWF0ZUxvY2FsaXplZERhdGFBdHRyaWJ1dGVzLFxuICBnZXRIYXNFcnJvck9uUmVtYWluaW5nTGFuZ3VhZ2VzLFxuICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMsXG4gIGdldElkLFxuICBnZXROYW1lLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9sb2NhbGl6ZWQtdXRpbHMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgTG9jYWxpemVkSW5wdXRUb2dnbGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pbnB1dC11dGlscyc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgVEN1c3RvbUV2ZW50ID0ge1xuICB0YXJnZXQ6IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xuICB9O1xuICBwZXJzaXN0PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIFRMb2NhbGl6ZWRNb25leUlucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdXNlZCB0byBjcmVhdGUgYSBIVE1MIGBuYW1lYCBwcm9wZXJ0eSBmb3IgdGhlIGFtb3VudCBpbnB1dCBmaWVsZCAoYCR7bmFtZX0uYW1vdW50YCkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogdmFsdWUgb2YgcG9zc2libGUgY3VycmVuY3lcbiAgICogPGJyLz5cbiAgICogdGhlIGlucHV0IGRvZXNuJ3QgYWNjZXB0IGEgXCJjdXJyZW5jaWVzXCIgcHJvcCwgaW5zdGVhZCBhbGwgcG9zc2libGVcbiAgICogY3VycmVuY2llcyBoYXZlIHRvIGV4aXN0ICh3aXRoIGVtcHR5IG9yIGZpbGxlZCBzdHJpbmdzKSBvbiB0aGUgdmFsdWU6XG4gICAqIHsgRVVSOiB7YW1vdW50OiAnMTIuMDAnLCBjdXJyZW5jeUNvZGU6ICdFVVInfSwgVVNEOiB7YW1vdW50OiAnJywgY3VycmVuY3lDb2RlOiAnVVNEJ319XG4gICAqL1xuICB2YWx1ZTogUmVjb3JkPHN0cmluZywgVFZhbHVlPjtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBvbkNoYW5nZT86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBjdXJyZW5jeVxuICAgKi9cbiAgc2VsZWN0ZWRDdXJyZW5jeTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgYmx1cnJlZFxuICAgKi9cbiAgb25CbHVyPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAqL1xuICBvbkZvY3VzPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBXaWxsIGhpZGUgdGhlIGN1cnJlbmN5IGV4cGFuc2lvbiBjb250cm9scyB3aGVuIHNldCB0byBgdHJ1ZWAuIEFsbCBjdXJyZW5jaWVzIHdpbGwgYmUgc2hvd24gd2hlbiBzZXQgdG8gYHRydWVgLlxuICAgKi9cbiAgaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29udHJvbHMgd2hldGhlciBvbmUgb3IgYWxsIGN1cnJlbmNpcnMgYXJlIHZpc2libGUgYnkgZGVmYXVsdFxuICAgKi9cbiAgZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGlucHV0IGNhbm5vdCBiZSBtb2RpZmllZCAoZS5nIG5vdCBhdXRob3JpemVkLCBvciBjaGFuZ2VzIGN1cnJlbnRseSBzYXZpbmcpLlxuICAgKi9cbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgZmllbGQgaXMgZGlzcGxheWluZyByZWFkLW9ubHkgY29udGVudFxuICAgKi9cbiAgaXNSZWFkT25seT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OlxuICAgIHwgM1xuICAgIHwgNFxuICAgIHwgNVxuICAgIHwgNlxuICAgIHwgN1xuICAgIHwgOFxuICAgIHwgOVxuICAgIHwgMTBcbiAgICB8IDExXG4gICAgfCAxMlxuICAgIHwgMTNcbiAgICB8IDE0XG4gICAgfCAxNVxuICAgIHwgMTZcbiAgICB8ICdzY2FsZSdcbiAgICB8ICdhdXRvJztcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IGlucHV0IGhhcyBlcnJvcnNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2wgdG8gaW5kaWNhdGUgb24gdGhlIGlucHV0IGlmIHRoZXJlIGFyZSB2YWx1ZXMgdGhhdCBhcmUgcG90ZW50aWFsbHkgaW52YWxpZFxuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBlcnJvcnMuIEVycm9yIG1lc3NhZ2VzIGZvciBrbm93biBlcnJvcnMgYXJlIHJlbmRlcmVkIGF1dG9tYXRpY2FsbHkuXG4gICAqIDxicj5cbiAgICogVW5rbm93biBlcnJvcnMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gYHJlbmRlckVycm9yYFxuICAgKi9cbiAgZXJyb3JzPzogUmVjb3JkPHN0cmluZywgUmVhY3ROb2RlPjtcbiAgLyoqXG4gICAqIEEgbWFwIG9mIHdhcm5pbmdzLlxuICAgKi9cbiAgd2FybmluZ3M/OiBSZWNvcmQ8c3RyaW5nLCBSZWFjdE5vZGU+O1xufTtcblxudHlwZSBUTG9jYWxpemVkSW5wdXRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBpZCBwcm9wZXJ0eS5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHByZWZpeCB1c2VkIHRvIGNyZWF0ZSBhIEhUTUwgYG5hbWVgIHByb3BlcnR5IGZvciB0aGUgYW1vdW50IGlucHV0IGZpZWxkIChgJHtuYW1lfS5hbW91bnRgKS5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB2YWx1ZSBvZiBwb3NzaWJsZSBjdXJyZW5jeVxuICAgKi9cbiAgdmFsdWU6IFRWYWx1ZTtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBvbkNoYW5nZT86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dC5cbiAgICovXG4gIGN1cnJlbmN5OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgaW5wdXQgaGFzIGVycm9yc1xuICAgKi9cbiAgaGFzRXJyb3I/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29udHJvbCB0byBpbmRpY2F0ZSBvbiB0aGUgaW5wdXQgaWYgdGhlcmUgYXJlIHZhbHVlcyB0aGF0IGFyZSBwb3RlbnRpYWxseSBpbnZhbGlkXG4gICAqL1xuICBoYXNXYXJuaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dFxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBlcnJvcnMuIEVycm9yIG1lc3NhZ2VzIGZvciBrbm93biBlcnJvcnMgYXJlIHJlbmRlcmVkIGF1dG9tYXRpY2FsbHkuXG4gICAqIDxicj5cbiAgICogVW5rbm93biBlcnJvcnMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gYHJlbmRlckVycm9yYFxuICAgKi9cbiAgZXJyb3I/OiBSZWFjdE5vZGU7XG4gIC8qKlxuICAgKiBIVE1MIG5vZGUgdG8gZGlzcGxheSB3YXJuaW5nXG4gICAqL1xuICB3YXJuaW5nPzogUmVhY3ROb2RlO1xufTtcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCdsb2NhbGl6ZWQtbW9uZXktaW5wdXQtJyk7XG5cbi8vIHNvcnRzIHRoZSBjdXJyZW5jaWVzIHdpdGggdGhlIGZvbGxvd2luZyBwcmlvcml0eTpcbi8vIC0gVGhlIHNlbGVjdGVkIGN1cnJlbmN5IGlzIHBsYWNlZCBmaXJzdCAoZS5nIEVVUilcbi8vIC0gQWxsIG90aGVyIGN1cnJlbmNpZXMgZm9sbG93LCBzb3J0ZWQgYWxwaGFiZXRpY2FsbHkgYXMgd2VsbFxuZXhwb3J0IGNvbnN0IHNvcnRDdXJyZW5jaWVzID0gKFxuICBzZWxlY3RlZEN1cnJlbmN5OiBzdHJpbmcsXG4gIGFsbEN1cnJlbmNpZXM6IHN0cmluZ1tdXG4pID0+IHtcbiAgY29uc3QgcmVtYWluaW5nQ3VycmVuY2llcyA9IGFsbEN1cnJlbmNpZXMuZmlsdGVyKFxuICAgIChjdXJyZW5jeSkgPT4gY3VycmVuY3kgIT09IHNlbGVjdGVkQ3VycmVuY3lcbiAgKTtcbiAgcmV0dXJuIFtzZWxlY3RlZEN1cnJlbmN5LCAuLi5yZW1haW5pbmdDdXJyZW5jaWVzLnNvcnQoKV07XG59O1xuXG5jb25zdCBMb2NhbGl6ZWRJbnB1dCA9IChwcm9wczogVExvY2FsaXplZElucHV0UHJvcHMpID0+IHtcbiAgY29uc3QgeyBvbkNoYW5nZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgLy8gV2UgbWFuaXB1bGF0ZSB0aGUgZXZlbnQgdG8gYWRkIHRoZSBjdXJyZW5jeSB0byB0aGUgdGFyZ2V0LlxuICAgICAgLy8gVGhhdCB3YXkgdGhlIHVzZXJzICBjYW4gcmVhZFxuICAgICAgLy8gZXZlbnQudGFyZ2V0LmN1cnJlbmN5IGFuZCBldmVudC50YXJnZXQudmFsdWUgdG8gZGV0ZXJtaW5lIHRoZSBuZXh0IHZhbHVlLlxuICAgICAgLy9cbiAgICAgIC8vIFdlIG9ubHkgbmVlZCB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGUgc3RvcnksIHRoZSBNQyBhcHBsaWNhdGlvbiBjb2RlIHdpbGxcbiAgICAgIC8vIG5ldmVyIG5lZWQgdG8gYWNjZXNzIHRoZSBpbmZvcm1hdGlvbiBpbiBzdWNoIGFuIGluY29udmVuaWVudCB3YXksIGFzXG4gICAgICAvLyBGb3JtaWsgY2FuIGRlYWwgd2l0aCBhIG5hbWUgbGlrZSBcImZvby5lblwiIGFuZCBzZXRzIHRoZSB2YWx1ZSBjb3JyZWN0bHkuXG4gICAgICAvLyBXZSBjYW4ndCB1c2UgdGhpcyBhcyB3ZSBhcmVuJ3QgZ3VhcmFudGVlZCBhIG5hbWUgaW4gdGhlIHN0b3J5IGFzIHRoZSB1c2VyXG4gICAgICAvLyBtaWdodCBjbGVhciBpdCB1c2luZyB0aGUga25vYiwgYW5kIHRoZW4gd2UgY2FuJ3QgcGFyc2UgdGhlIGN1cnJlbmN5IGZyb21cbiAgICAgIC8vIHRoZSBpbnB1dCBuYW1lIGFueW1vcmUuXG4gICAgICAvL1xuICAgICAgZXZlbnQudGFyZ2V0LmN1cnJlbmN5ID0gcHJvcHMuY3VycmVuY3k7XG4gICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICB9LFxuICAgIFtwcm9wcy5jdXJyZW5jeSwgb25DaGFuZ2VdXG4gICk7XG4gIHJldHVybiAoXG4gICAgPFN0YWNrIHNjYWxlPVwieHNcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIDxNb25leUlucHV0XG4gICAgICAgICAgbmFtZT17cHJvcHMubmFtZX1cbiAgICAgICAgICB2YWx1ZT17cHJvcHMudmFsdWV9XG4gICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgIGlzUmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e3Byb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgIGhhc0Vycm9yPXtwcm9wcy5oYXNFcnJvcn1cbiAgICAgICAgICBoYXNXYXJuaW5nPXtwcm9wcy5oYXNXYXJuaW5nfVxuICAgICAgICAgIHsuLi5maWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyl9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIHsocHJvcHMuZXJyb3IgfHwgcHJvcHMud2FybmluZykgJiYgKFxuICAgICAgICA8ZGl2Pntwcm9wcy5lcnJvciA/IHByb3BzLmVycm9yIDogcHJvcHMud2FybmluZ308L2Rpdj5cbiAgICAgICl9XG4gICAgPC9TdGFjaz5cbiAgKTtcbn07XG5cbkxvY2FsaXplZElucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZElucHV0JztcblxuY29uc3QgTG9jYWxpemVkTW9uZXlJbnB1dCA9IChwcm9wczogVExvY2FsaXplZE1vbmV5SW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuXG4gIGNvbnN0IGRlZmF1bHRFeHBhbnNpb25TdGF0ZSA9XG4gICAgcHJvcHMuaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHMgfHxcbiAgICBwcm9wcy5kZWZhdWx0RXhwYW5kQ3VycmVuY2llcyB8fFxuICAgIC8vIGRlZmF1bHQgdG8gYGZhbHNlYCwgYmVjYXVzZSB1c2VUb2dnbGVTdGF0ZSBkZWZhdWx0cyB0byBgdHJ1ZWBcbiAgICBmYWxzZTtcblxuICBjb25zdCBbYXJlQ3VycmVuY2llc0V4cGFuZGVkLCB0b2dnbGVDdXJyZW5jaWVzXSA9IHVzZVRvZ2dsZVN0YXRlKFxuICAgIGRlZmF1bHRFeHBhbnNpb25TdGF0ZVxuICApO1xuXG4gIGNvbnN0IG9uTG9jYWxpemVkTW9uZXlJbnB1dFRvZ2dsZSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRvZ2dsZUN1cnJlbmNpZXMoKSxcbiAgICBbdG9nZ2xlQ3VycmVuY2llc11cbiAgKTtcblxuICBjb25zdCBpZCA9IHVzZUZpZWxkSWQocHJvcHMuaWQsIHNlcXVlbnRpYWxJZCk7XG5cbiAgY29uc3QgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc0Vycm9yIHx8XG4gICAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyhwcm9wcy5lcnJvcnMsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGNvbnN0IGhhc1dhcm5pbmdJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc1dhcm5pbmcgfHxcbiAgICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMocHJvcHMud2FybmluZ3MsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGlmIChoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyB8fCBoYXNXYXJuaW5nSW5SZW1haW5pbmdDdXJyZW5jaWVzKSB7XG4gICAgLy8gdGhpcyB1cGRhdGUgd2l0aGluIHJlbmRlciByZXBsYWNlcyB0aGUgb2xkIGBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHNgIGZ1bmN0aW9uYWxpdHlcbiAgICAvLyBodHRwczovL3JlYWN0anMub3JnL2RvY3MvaG9va3MtZmFxLmh0bWwjaG93LWRvLWktaW1wbGVtZW50LWdldGRlcml2ZWRzdGF0ZWZyb21wcm9wc1xuICAgIGlmICghYXJlQ3VycmVuY2llc0V4cGFuZGVkKSB7XG4gICAgICB0b2dnbGVDdXJyZW5jaWVzKCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgY3VycmVuY2llcyA9IHNvcnRDdXJyZW5jaWVzKFxuICAgIHByb3BzLnNlbGVjdGVkQ3VycmVuY3ksXG4gICAgT2JqZWN0LmtleXMocHJvcHMudmFsdWUpXG4gICk7XG5cbiAgY29uc3Qgc2hvdWxkUmVuZGVyQ3VycmVuY3lDb250cm9sID1cbiAgICBjdXJyZW5jaWVzLmxlbmd0aCA+IDEgJiYgIXByb3BzLmhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzO1xuXG4gIGlmIChwcm9wcy5oaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9scykge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMuZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXMgIT09ICdib29sZWFuJyxcbiAgICAgICdMb2NhbGl6ZWRNb25leUlucHV0OiBcImRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzXCIgZG9lcyBub3QgaGF2ZSBhbnkgZWZmZWN0IHdoZW4gXCJoaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9sc1wiIGlzIHNldC4nXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8U3RhY2sgc2NhbGU9XCJ4c1wiPlxuICAgICAgICA8U3RhY2sgc2NhbGU9XCJzXCI+XG4gICAgICAgICAge2N1cnJlbmNpZXMubWFwKChjdXJyZW5jeSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RDdXJyZW5jeSA9IGluZGV4ID09PSAwO1xuICAgICAgICAgICAgaWYgKCFpc0ZpcnN0Q3VycmVuY3kgJiYgIWFyZUN1cnJlbmNpZXNFeHBhbmRlZCkgcmV0dXJuIG51bGw7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxMb2NhbGl6ZWRJbnB1dFxuICAgICAgICAgICAgICAgIGtleT17Y3VycmVuY3l9XG4gICAgICAgICAgICAgICAgaWQ9e0xvY2FsaXplZE1vbmV5SW5wdXQuZ2V0SWQoaWQsIGN1cnJlbmN5KX1cbiAgICAgICAgICAgICAgICBuYW1lPXtMb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUocHJvcHMubmFtZSwgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwcm9wcy52YWx1ZVtjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAgICAgICAgIGN1cnJlbmN5PXtjdXJyZW5jeX1cbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17XG4gICAgICAgICAgICAgICAgICBwcm9wcy5wbGFjZWhvbGRlciA/IHByb3BzLnBsYWNlaG9sZGVyW2N1cnJlbmN5XSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICAgICAgICBvbkZvY3VzPXtwcm9wcy5vbkZvY3VzfVxuICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgICAgICBoYXNFcnJvcj17Qm9vbGVhbihcbiAgICAgICAgICAgICAgICAgIHByb3BzLmhhc0Vycm9yIHx8IChwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2N1cnJlbmN5XSlcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIGhhc1dhcm5pbmc9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICBwcm9wcy5oYXNXYXJuaW5nIHx8XG4gICAgICAgICAgICAgICAgICAgIChwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV0pXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICB3YXJuaW5nPXtwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgZXJyb3I9e3Byb3BzLmVycm9ycyAmJiBwcm9wcy5lcnJvcnNbY3VycmVuY3ldfVxuICAgICAgICAgICAgICAgIHsuLi5jcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyhwcm9wcywgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgICAge3Nob3VsZFJlbmRlckN1cnJlbmN5Q29udHJvbCAmJiAoXG4gICAgICAgICAgPExvY2FsaXplZElucHV0VG9nZ2xlXG4gICAgICAgICAgICBpY29uPXs8Q29pbnNJY29uIC8+fVxuICAgICAgICAgICAgb25DbGljaz17b25Mb2NhbGl6ZWRNb25leUlucHV0VG9nZ2xlfVxuICAgICAgICAgICAgaXNPcGVuPXthcmVDdXJyZW5jaWVzRXhwYW5kZWR9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXtcbiAgICAgICAgICAgICAgYXJlQ3VycmVuY2llc0V4cGFuZGVkICYmXG4gICAgICAgICAgICAgIEJvb2xlYW4oXG4gICAgICAgICAgICAgICAgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgfHwgaGFzV2FybmluZ0luUmVtYWluaW5nQ3VycmVuY2llc1xuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzaG93TWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLnNob3csIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBoaWRlTWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLmhpZGUsIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3RhY2s+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5kaXNwbGF5TmFtZSA9ICdMb2NhbGl6ZWRNb25leUlucHV0JztcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRJZCA9IGdldElkO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUgPSBnZXROYW1lO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmNvbnZlcnRUb01vbmV5VmFsdWVzID0gKFxuICB2YWx1ZXM6IFRWYWx1ZVtdLFxuICBsb2NhbGU6IHN0cmluZ1xuKTogQXJyYXk8VE1vbmV5VmFsdWUgfCBudWxsPiA9PlxuICBPYmplY3QudmFsdWVzKHZhbHVlcykubWFwPFRNb25leVZhbHVlIHwgbnVsbD4oKHZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIE1vbmV5SW5wdXQuY29udmVydFRvTW9uZXlWYWx1ZSh2YWx1ZSwgbG9jYWxlKTtcbiAgfSk7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQucGFyc2VNb25leVZhbHVlcyA9IChcbiAgbW9uZXlWYWx1ZXM6IFRNb25leVZhbHVlW10gPSBbXSxcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+ID0+XG4gIG1vbmV5VmFsdWVzLnJlZHVjZTxSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPj4oKGFsbFZhbHVlcywgbW9uZXlWYWx1ZSkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gTW9uZXlJbnB1dC5wYXJzZU1vbmV5VmFsdWUobW9uZXlWYWx1ZSwgbG9jYWxlKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uYWxsVmFsdWVzLFxuICAgICAgW3ZhbHVlLmN1cnJlbmN5Q29kZV06IHZhbHVlLFxuICAgIH07XG4gIH0sIHt9IGFzIFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+KTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRIaWdoUHJlY2lzaW9uQ3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPixcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFRDdXJyZW5jeUNvZGVbXSA9PiB7XG4gIGNvbnN0IHR5cGVkQ3VycmVuY3lDb2RlcyA9IE9iamVjdC5rZXlzKHZhbHVlcykgYXMgVEN1cnJlbmN5Q29kZVtdO1xuICByZXR1cm4gdHlwZWRDdXJyZW5jeUNvZGVzLmZpbHRlcigoY3VycmVuY3lDb2RlKSA9PlxuICAgIE1vbmV5SW5wdXQuaXNIaWdoUHJlY2lzaW9uKHZhbHVlc1tjdXJyZW5jeUNvZGVdLCBsb2NhbGUpXG4gICk7XG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldEVtcHR5Q3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPlxuKTogVEN1cnJlbmN5Q29kZVtdID0+IHtcbiAgY29uc3QgdHlwZWRDdXJyZW5jeUNvZGVzID0gT2JqZWN0LmtleXModmFsdWVzKSBhcyBUQ3VycmVuY3lDb2RlW107XG4gIHJldHVybiB0eXBlZEN1cnJlbmN5Q29kZXMuZmlsdGVyKChjdXJyZW5jeUNvZGUpID0+XG4gICAgTW9uZXlJbnB1dC5pc0VtcHR5KHZhbHVlc1tjdXJyZW5jeUNvZGVdKVxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9jYWxpemVkTW9uZXlJbnB1dDtcbiJdfQ== */",
88
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC1tb25leS1pbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNE9nQiIsImZpbGUiOiJsb2NhbGl6ZWQtbW9uZXktaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVG9nZ2xlU3RhdGUsIHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgTW9uZXlJbnB1dCwge1xuICB0eXBlIFRDdXJyZW5jeUNvZGUsXG4gIHR5cGUgVE1vbmV5VmFsdWUsXG4gIHR5cGUgVFZhbHVlLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9tb25leS1pbnB1dCc7XG5pbXBvcnQgU3RhY2sgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3Mtc3RhY2snO1xuaW1wb3J0IENvbnN0cmFpbnRzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2NvbnN0cmFpbnRzJztcbmltcG9ydCB7IENvaW5zSWNvbiB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2ljb25zJztcbmltcG9ydCB7XG4gIGNyZWF0ZUxvY2FsaXplZERhdGFBdHRyaWJ1dGVzLFxuICBnZXRIYXNFcnJvck9uUmVtYWluaW5nTGFuZ3VhZ2VzLFxuICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMsXG4gIGdldElkLFxuICBnZXROYW1lLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9sb2NhbGl6ZWQtdXRpbHMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgTG9jYWxpemVkSW5wdXRUb2dnbGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pbnB1dC11dGlscyc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgVEN1c3RvbUV2ZW50ID0ge1xuICB0YXJnZXQ6IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xuICB9O1xuICBwZXJzaXN0PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIFRMb2NhbGl6ZWRNb25leUlucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdXNlZCB0byBjcmVhdGUgYSBIVE1MIGBuYW1lYCBwcm9wZXJ0eSBmb3IgdGhlIGFtb3VudCBpbnB1dCBmaWVsZCAoYCR7bmFtZX0uYW1vdW50YCkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogdmFsdWUgb2YgcG9zc2libGUgY3VycmVuY3lcbiAgICogPGJyLz5cbiAgICogdGhlIGlucHV0IGRvZXNuJ3QgYWNjZXB0IGEgXCJjdXJyZW5jaWVzXCIgcHJvcCwgaW5zdGVhZCBhbGwgcG9zc2libGVcbiAgICogY3VycmVuY2llcyBoYXZlIHRvIGV4aXN0ICh3aXRoIGVtcHR5IG9yIGZpbGxlZCBzdHJpbmdzKSBvbiB0aGUgdmFsdWU6XG4gICAqIHsgRVVSOiB7YW1vdW50OiAnMTIuMDAnLCBjdXJyZW5jeUNvZGU6ICdFVVInfSwgVVNEOiB7YW1vdW50OiAnJywgY3VycmVuY3lDb2RlOiAnVVNEJ319XG4gICAqL1xuICB2YWx1ZTogUmVjb3JkPHN0cmluZywgVFZhbHVlPjtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBvbkNoYW5nZT86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBjdXJyZW5jeVxuICAgKi9cbiAgc2VsZWN0ZWRDdXJyZW5jeTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgYmx1cnJlZFxuICAgKi9cbiAgb25CbHVyPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAqL1xuICBvbkZvY3VzPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBXaWxsIGhpZGUgdGhlIGN1cnJlbmN5IGV4cGFuc2lvbiBjb250cm9scyB3aGVuIHNldCB0byBgdHJ1ZWAuIEFsbCBjdXJyZW5jaWVzIHdpbGwgYmUgc2hvd24gd2hlbiBzZXQgdG8gYHRydWVgLlxuICAgKi9cbiAgaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29udHJvbHMgd2hldGhlciBvbmUgb3IgYWxsIGN1cnJlbmNpcnMgYXJlIHZpc2libGUgYnkgZGVmYXVsdFxuICAgKi9cbiAgZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGlucHV0IGNhbm5vdCBiZSBtb2RpZmllZCAoZS5nIG5vdCBhdXRob3JpemVkLCBvciBjaGFuZ2VzIGN1cnJlbnRseSBzYXZpbmcpLlxuICAgKi9cbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgZmllbGQgaXMgZGlzcGxheWluZyByZWFkLW9ubHkgY29udGVudFxuICAgKi9cbiAgaXNSZWFkT25seT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OlxuICAgIHwgM1xuICAgIHwgNFxuICAgIHwgNVxuICAgIHwgNlxuICAgIHwgN1xuICAgIHwgOFxuICAgIHwgOVxuICAgIHwgMTBcbiAgICB8IDExXG4gICAgfCAxMlxuICAgIHwgMTNcbiAgICB8IDE0XG4gICAgfCAxNVxuICAgIHwgMTZcbiAgICB8ICdzY2FsZSdcbiAgICB8ICdhdXRvJztcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IGlucHV0IGhhcyBlcnJvcnNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2wgdG8gaW5kaWNhdGUgb24gdGhlIGlucHV0IGlmIHRoZXJlIGFyZSB2YWx1ZXMgdGhhdCBhcmUgcG90ZW50aWFsbHkgaW52YWxpZFxuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBlcnJvcnMuIEVycm9yIG1lc3NhZ2VzIGZvciBrbm93biBlcnJvcnMgYXJlIHJlbmRlcmVkIGF1dG9tYXRpY2FsbHkuXG4gICAqIDxicj5cbiAgICogVW5rbm93biBlcnJvcnMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gYHJlbmRlckVycm9yYFxuICAgKi9cbiAgZXJyb3JzPzogUmVjb3JkPHN0cmluZywgUmVhY3ROb2RlPjtcbiAgLyoqXG4gICAqIEEgbWFwIG9mIHdhcm5pbmdzLlxuICAgKi9cbiAgd2FybmluZ3M/OiBSZWNvcmQ8c3RyaW5nLCBSZWFjdE5vZGU+O1xuICAvKipcbiAgICogU2hvd3MgaGlnaCBwcmVjaXNpb24gYmFkZ2UgaW4gY2FzZSBjdXJyZW50IHZhbHVlIHVzZXMgaGlnaCBwcmVjaXNpb24uXG4gICAqL1xuICBoYXNIaWdoUHJlY2lzaW9uQmFkZ2U/OiBib29sZWFuO1xufTtcblxudHlwZSBUTG9jYWxpemVkSW5wdXRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBpZCBwcm9wZXJ0eS5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHByZWZpeCB1c2VkIHRvIGNyZWF0ZSBhIEhUTUwgYG5hbWVgIHByb3BlcnR5IGZvciB0aGUgYW1vdW50IGlucHV0IGZpZWxkIChgJHtuYW1lfS5hbW91bnRgKS5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB2YWx1ZSBvZiBwb3NzaWJsZSBjdXJyZW5jeVxuICAgKi9cbiAgdmFsdWU6IFRWYWx1ZTtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBvbkNoYW5nZT86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dC5cbiAgICovXG4gIGN1cnJlbmN5OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgaW5wdXQgaGFzIGVycm9yc1xuICAgKi9cbiAgaGFzRXJyb3I/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29udHJvbCB0byBpbmRpY2F0ZSBvbiB0aGUgaW5wdXQgaWYgdGhlcmUgYXJlIHZhbHVlcyB0aGF0IGFyZSBwb3RlbnRpYWxseSBpbnZhbGlkXG4gICAqL1xuICBoYXNXYXJuaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dFxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBlcnJvcnMuIEVycm9yIG1lc3NhZ2VzIGZvciBrbm93biBlcnJvcnMgYXJlIHJlbmRlcmVkIGF1dG9tYXRpY2FsbHkuXG4gICAqIDxicj5cbiAgICogVW5rbm93biBlcnJvcnMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gYHJlbmRlckVycm9yYFxuICAgKi9cbiAgZXJyb3I/OiBSZWFjdE5vZGU7XG4gIC8qKlxuICAgKiBIVE1MIG5vZGUgdG8gZGlzcGxheSB3YXJuaW5nXG4gICAqL1xuICB3YXJuaW5nPzogUmVhY3ROb2RlO1xuICAvKipcbiAgICogU2hvd3MgaGlnaCBwcmVjaXNpb24gYmFkZ2UgaW4gY2FzZSBjdXJyZW50IHZhbHVlIHVzZXMgaGlnaCBwcmVjaXNpb24uXG4gICAqL1xuICBoYXNIaWdoUHJlY2lzaW9uQmFkZ2U/OiBib29sZWFuO1xufTtcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCdsb2NhbGl6ZWQtbW9uZXktaW5wdXQtJyk7XG5cbi8vIHNvcnRzIHRoZSBjdXJyZW5jaWVzIHdpdGggdGhlIGZvbGxvd2luZyBwcmlvcml0eTpcbi8vIC0gVGhlIHNlbGVjdGVkIGN1cnJlbmN5IGlzIHBsYWNlZCBmaXJzdCAoZS5nIEVVUilcbi8vIC0gQWxsIG90aGVyIGN1cnJlbmNpZXMgZm9sbG93LCBzb3J0ZWQgYWxwaGFiZXRpY2FsbHkgYXMgd2VsbFxuZXhwb3J0IGNvbnN0IHNvcnRDdXJyZW5jaWVzID0gKFxuICBzZWxlY3RlZEN1cnJlbmN5OiBzdHJpbmcsXG4gIGFsbEN1cnJlbmNpZXM6IHN0cmluZ1tdXG4pID0+IHtcbiAgY29uc3QgcmVtYWluaW5nQ3VycmVuY2llcyA9IGFsbEN1cnJlbmNpZXMuZmlsdGVyKFxuICAgIChjdXJyZW5jeSkgPT4gY3VycmVuY3kgIT09IHNlbGVjdGVkQ3VycmVuY3lcbiAgKTtcbiAgcmV0dXJuIFtzZWxlY3RlZEN1cnJlbmN5LCAuLi5yZW1haW5pbmdDdXJyZW5jaWVzLnNvcnQoKV07XG59O1xuXG5jb25zdCBMb2NhbGl6ZWRJbnB1dCA9IChwcm9wczogVExvY2FsaXplZElucHV0UHJvcHMpID0+IHtcbiAgY29uc3QgeyBvbkNoYW5nZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgLy8gV2UgbWFuaXB1bGF0ZSB0aGUgZXZlbnQgdG8gYWRkIHRoZSBjdXJyZW5jeSB0byB0aGUgdGFyZ2V0LlxuICAgICAgLy8gVGhhdCB3YXkgdGhlIHVzZXJzICBjYW4gcmVhZFxuICAgICAgLy8gZXZlbnQudGFyZ2V0LmN1cnJlbmN5IGFuZCBldmVudC50YXJnZXQudmFsdWUgdG8gZGV0ZXJtaW5lIHRoZSBuZXh0IHZhbHVlLlxuICAgICAgLy9cbiAgICAgIC8vIFdlIG9ubHkgbmVlZCB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGUgc3RvcnksIHRoZSBNQyBhcHBsaWNhdGlvbiBjb2RlIHdpbGxcbiAgICAgIC8vIG5ldmVyIG5lZWQgdG8gYWNjZXNzIHRoZSBpbmZvcm1hdGlvbiBpbiBzdWNoIGFuIGluY29udmVuaWVudCB3YXksIGFzXG4gICAgICAvLyBGb3JtaWsgY2FuIGRlYWwgd2l0aCBhIG5hbWUgbGlrZSBcImZvby5lblwiIGFuZCBzZXRzIHRoZSB2YWx1ZSBjb3JyZWN0bHkuXG4gICAgICAvLyBXZSBjYW4ndCB1c2UgdGhpcyBhcyB3ZSBhcmVuJ3QgZ3VhcmFudGVlZCBhIG5hbWUgaW4gdGhlIHN0b3J5IGFzIHRoZSB1c2VyXG4gICAgICAvLyBtaWdodCBjbGVhciBpdCB1c2luZyB0aGUga25vYiwgYW5kIHRoZW4gd2UgY2FuJ3QgcGFyc2UgdGhlIGN1cnJlbmN5IGZyb21cbiAgICAgIC8vIHRoZSBpbnB1dCBuYW1lIGFueW1vcmUuXG4gICAgICAvL1xuICAgICAgZXZlbnQudGFyZ2V0LmN1cnJlbmN5ID0gcHJvcHMuY3VycmVuY3k7XG4gICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICB9LFxuICAgIFtwcm9wcy5jdXJyZW5jeSwgb25DaGFuZ2VdXG4gICk7XG4gIHJldHVybiAoXG4gICAgPFN0YWNrIHNjYWxlPVwieHNcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIDxNb25leUlucHV0XG4gICAgICAgICAgbmFtZT17cHJvcHMubmFtZX1cbiAgICAgICAgICB2YWx1ZT17cHJvcHMudmFsdWV9XG4gICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgIGlzUmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e3Byb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgIGhhc0Vycm9yPXtwcm9wcy5oYXNFcnJvcn1cbiAgICAgICAgICBoYXNXYXJuaW5nPXtwcm9wcy5oYXNXYXJuaW5nfVxuICAgICAgICAgIGhhc0hpZ2hQcmVjaXNpb25CYWRnZT17cHJvcHMuaGFzSGlnaFByZWNpc2lvbkJhZGdlfVxuICAgICAgICAgIHsuLi5maWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyl9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIHsocHJvcHMuZXJyb3IgfHwgcHJvcHMud2FybmluZykgJiYgKFxuICAgICAgICA8ZGl2Pntwcm9wcy5lcnJvciA/IHByb3BzLmVycm9yIDogcHJvcHMud2FybmluZ308L2Rpdj5cbiAgICAgICl9XG4gICAgPC9TdGFjaz5cbiAgKTtcbn07XG5cbkxvY2FsaXplZElucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZElucHV0JztcblxuY29uc3QgTG9jYWxpemVkTW9uZXlJbnB1dCA9IChwcm9wczogVExvY2FsaXplZE1vbmV5SW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuXG4gIGNvbnN0IGRlZmF1bHRFeHBhbnNpb25TdGF0ZSA9XG4gICAgcHJvcHMuaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHMgfHxcbiAgICBwcm9wcy5kZWZhdWx0RXhwYW5kQ3VycmVuY2llcyB8fFxuICAgIC8vIGRlZmF1bHQgdG8gYGZhbHNlYCwgYmVjYXVzZSB1c2VUb2dnbGVTdGF0ZSBkZWZhdWx0cyB0byBgdHJ1ZWBcbiAgICBmYWxzZTtcblxuICBjb25zdCBbYXJlQ3VycmVuY2llc0V4cGFuZGVkLCB0b2dnbGVDdXJyZW5jaWVzXSA9IHVzZVRvZ2dsZVN0YXRlKFxuICAgIGRlZmF1bHRFeHBhbnNpb25TdGF0ZVxuICApO1xuXG4gIGNvbnN0IG9uTG9jYWxpemVkTW9uZXlJbnB1dFRvZ2dsZSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRvZ2dsZUN1cnJlbmNpZXMoKSxcbiAgICBbdG9nZ2xlQ3VycmVuY2llc11cbiAgKTtcblxuICBjb25zdCBpZCA9IHVzZUZpZWxkSWQocHJvcHMuaWQsIHNlcXVlbnRpYWxJZCk7XG5cbiAgY29uc3QgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc0Vycm9yIHx8XG4gICAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyhwcm9wcy5lcnJvcnMsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGNvbnN0IGhhc1dhcm5pbmdJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc1dhcm5pbmcgfHxcbiAgICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMocHJvcHMud2FybmluZ3MsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGlmIChoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyB8fCBoYXNXYXJuaW5nSW5SZW1haW5pbmdDdXJyZW5jaWVzKSB7XG4gICAgLy8gdGhpcyB1cGRhdGUgd2l0aGluIHJlbmRlciByZXBsYWNlcyB0aGUgb2xkIGBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHNgIGZ1bmN0aW9uYWxpdHlcbiAgICAvLyBodHRwczovL3JlYWN0anMub3JnL2RvY3MvaG9va3MtZmFxLmh0bWwjaG93LWRvLWktaW1wbGVtZW50LWdldGRlcml2ZWRzdGF0ZWZyb21wcm9wc1xuICAgIGlmICghYXJlQ3VycmVuY2llc0V4cGFuZGVkKSB7XG4gICAgICB0b2dnbGVDdXJyZW5jaWVzKCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgY3VycmVuY2llcyA9IHNvcnRDdXJyZW5jaWVzKFxuICAgIHByb3BzLnNlbGVjdGVkQ3VycmVuY3ksXG4gICAgT2JqZWN0LmtleXMocHJvcHMudmFsdWUpXG4gICk7XG5cbiAgY29uc3Qgc2hvdWxkUmVuZGVyQ3VycmVuY3lDb250cm9sID1cbiAgICBjdXJyZW5jaWVzLmxlbmd0aCA+IDEgJiYgIXByb3BzLmhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzO1xuXG4gIGlmIChwcm9wcy5oaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9scykge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMuZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXMgIT09ICdib29sZWFuJyxcbiAgICAgICdMb2NhbGl6ZWRNb25leUlucHV0OiBcImRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzXCIgZG9lcyBub3QgaGF2ZSBhbnkgZWZmZWN0IHdoZW4gXCJoaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9sc1wiIGlzIHNldC4nXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8U3RhY2sgc2NhbGU9XCJ4c1wiPlxuICAgICAgICA8U3RhY2sgc2NhbGU9XCJzXCI+XG4gICAgICAgICAge2N1cnJlbmNpZXMubWFwKChjdXJyZW5jeSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RDdXJyZW5jeSA9IGluZGV4ID09PSAwO1xuICAgICAgICAgICAgaWYgKCFpc0ZpcnN0Q3VycmVuY3kgJiYgIWFyZUN1cnJlbmNpZXNFeHBhbmRlZCkgcmV0dXJuIG51bGw7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxMb2NhbGl6ZWRJbnB1dFxuICAgICAgICAgICAgICAgIGtleT17Y3VycmVuY3l9XG4gICAgICAgICAgICAgICAgaWQ9e0xvY2FsaXplZE1vbmV5SW5wdXQuZ2V0SWQoaWQsIGN1cnJlbmN5KX1cbiAgICAgICAgICAgICAgICBuYW1lPXtMb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUocHJvcHMubmFtZSwgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwcm9wcy52YWx1ZVtjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAgICAgICAgIGN1cnJlbmN5PXtjdXJyZW5jeX1cbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17XG4gICAgICAgICAgICAgICAgICBwcm9wcy5wbGFjZWhvbGRlciA/IHByb3BzLnBsYWNlaG9sZGVyW2N1cnJlbmN5XSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICAgICAgICBvbkZvY3VzPXtwcm9wcy5vbkZvY3VzfVxuICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgICAgICBoYXNFcnJvcj17Qm9vbGVhbihcbiAgICAgICAgICAgICAgICAgIHByb3BzLmhhc0Vycm9yIHx8IChwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2N1cnJlbmN5XSlcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIGhhc1dhcm5pbmc9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICBwcm9wcy5oYXNXYXJuaW5nIHx8XG4gICAgICAgICAgICAgICAgICAgIChwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV0pXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICB3YXJuaW5nPXtwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgZXJyb3I9e3Byb3BzLmVycm9ycyAmJiBwcm9wcy5lcnJvcnNbY3VycmVuY3ldfVxuICAgICAgICAgICAgICAgIHsuLi5jcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyhwcm9wcywgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIGhhc0hpZ2hQcmVjaXNpb25CYWRnZT17cHJvcHMuaGFzSGlnaFByZWNpc2lvbkJhZGdlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgICAge3Nob3VsZFJlbmRlckN1cnJlbmN5Q29udHJvbCAmJiAoXG4gICAgICAgICAgPExvY2FsaXplZElucHV0VG9nZ2xlXG4gICAgICAgICAgICBpY29uPXs8Q29pbnNJY29uIC8+fVxuICAgICAgICAgICAgb25DbGljaz17b25Mb2NhbGl6ZWRNb25leUlucHV0VG9nZ2xlfVxuICAgICAgICAgICAgaXNPcGVuPXthcmVDdXJyZW5jaWVzRXhwYW5kZWR9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXtcbiAgICAgICAgICAgICAgYXJlQ3VycmVuY2llc0V4cGFuZGVkICYmXG4gICAgICAgICAgICAgIEJvb2xlYW4oXG4gICAgICAgICAgICAgICAgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgfHwgaGFzV2FybmluZ0luUmVtYWluaW5nQ3VycmVuY2llc1xuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzaG93TWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLnNob3csIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBoaWRlTWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLmhpZGUsIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3RhY2s+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5kaXNwbGF5TmFtZSA9ICdMb2NhbGl6ZWRNb25leUlucHV0JztcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRJZCA9IGdldElkO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUgPSBnZXROYW1lO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmNvbnZlcnRUb01vbmV5VmFsdWVzID0gKFxuICB2YWx1ZXM6IFRWYWx1ZVtdLFxuICBsb2NhbGU6IHN0cmluZ1xuKTogQXJyYXk8VE1vbmV5VmFsdWUgfCBudWxsPiA9PlxuICBPYmplY3QudmFsdWVzKHZhbHVlcykubWFwPFRNb25leVZhbHVlIHwgbnVsbD4oKHZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIE1vbmV5SW5wdXQuY29udmVydFRvTW9uZXlWYWx1ZSh2YWx1ZSwgbG9jYWxlKTtcbiAgfSk7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQucGFyc2VNb25leVZhbHVlcyA9IChcbiAgbW9uZXlWYWx1ZXM6IFRNb25leVZhbHVlW10gPSBbXSxcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+ID0+XG4gIG1vbmV5VmFsdWVzLnJlZHVjZTxSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPj4oKGFsbFZhbHVlcywgbW9uZXlWYWx1ZSkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gTW9uZXlJbnB1dC5wYXJzZU1vbmV5VmFsdWUobW9uZXlWYWx1ZSwgbG9jYWxlKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uYWxsVmFsdWVzLFxuICAgICAgW3ZhbHVlLmN1cnJlbmN5Q29kZV06IHZhbHVlLFxuICAgIH07XG4gIH0sIHt9IGFzIFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+KTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRIaWdoUHJlY2lzaW9uQ3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPixcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFRDdXJyZW5jeUNvZGVbXSA9PiB7XG4gIGNvbnN0IHR5cGVkQ3VycmVuY3lDb2RlcyA9IE9iamVjdC5rZXlzKHZhbHVlcykgYXMgVEN1cnJlbmN5Q29kZVtdO1xuICByZXR1cm4gdHlwZWRDdXJyZW5jeUNvZGVzLmZpbHRlcigoY3VycmVuY3lDb2RlKSA9PlxuICAgIE1vbmV5SW5wdXQuaXNIaWdoUHJlY2lzaW9uKHZhbHVlc1tjdXJyZW5jeUNvZGVdLCBsb2NhbGUpXG4gICk7XG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldEVtcHR5Q3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPlxuKTogVEN1cnJlbmN5Q29kZVtdID0+IHtcbiAgY29uc3QgdHlwZWRDdXJyZW5jeUNvZGVzID0gT2JqZWN0LmtleXModmFsdWVzKSBhcyBUQ3VycmVuY3lDb2RlW107XG4gIHJldHVybiB0eXBlZEN1cnJlbmN5Q29kZXMuZmlsdGVyKChjdXJyZW5jeUNvZGUpID0+XG4gICAgTW9uZXlJbnB1dC5pc0VtcHR5KHZhbHVlc1tjdXJyZW5jeUNvZGVdKVxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9jYWxpemVkTW9uZXlJbnB1dDtcbiJdfQ== */",
89
89
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
90
90
  };
91
91
  const LocalizedInput = props => {
@@ -118,7 +118,8 @@ const LocalizedInput = props => {
118
118
  isReadOnly: props.isReadOnly,
119
119
  placeholder: props.placeholder,
120
120
  hasError: props.hasError,
121
- hasWarning: props.hasWarning
121
+ hasWarning: props.hasWarning,
122
+ hasHighPrecisionBadge: props.hasHighPrecisionBadge
122
123
  }, utils.filterDataAttributes(props)))
123
124
  }), (props.error || props.warning) && jsxRuntime.jsx("div", {
124
125
  children: props.error ? props.error : props.warning
@@ -139,7 +140,8 @@ LocalizedInput.propTypes = process.env.NODE_ENV !== "production" ? {
139
140
  hasWarning: _pt__default["default"].bool,
140
141
  placeholder: _pt__default["default"].string,
141
142
  error: _pt__default["default"].node,
142
- warning: _pt__default["default"].node
143
+ warning: _pt__default["default"].node,
144
+ hasHighPrecisionBadge: _pt__default["default"].bool
143
145
  } : {};
144
146
  LocalizedInput.displayName = 'LocalizedInput';
145
147
  const LocalizedMoneyInput = props => {
@@ -176,7 +178,7 @@ const LocalizedMoneyInput = props => {
176
178
  children: _mapInstanceProperty__default["default"](currencies).call(currencies, (currency, index) => {
177
179
  const isFirstCurrency = index === 0;
178
180
  if (!isFirstCurrency && !areCurrenciesExpanded) return null;
179
- return jsxRuntime.jsx(LocalizedInput, _objectSpread({
181
+ return jsxRuntime.jsx(LocalizedInput, _objectSpread(_objectSpread({
180
182
  id: LocalizedMoneyInput.getId(id, currency),
181
183
  name: LocalizedMoneyInput.getName(props.name, currency),
182
184
  value: props.value[currency],
@@ -191,7 +193,9 @@ const LocalizedMoneyInput = props => {
191
193
  hasWarning: Boolean(props.hasWarning || props.warnings && props.warnings[currency]),
192
194
  warning: props.warnings && props.warnings[currency],
193
195
  error: props.errors && props.errors[currency]
194
- }, localizedUtils.createLocalizedDataAttributes(props, currency)), currency);
196
+ }, localizedUtils.createLocalizedDataAttributes(props, currency)), {}, {
197
+ hasHighPrecisionBadge: props.hasHighPrecisionBadge
198
+ }), currency);
195
199
  })
196
200
  }), shouldRenderCurrencyControl && jsxRuntime.jsx(inputUtils.LocalizedInputToggle, {
197
201
  icon: jsxRuntime.jsx(icons.CoinsIcon, {}),
@@ -225,7 +229,8 @@ LocalizedMoneyInput.propTypes = process.env.NODE_ENV !== "production" ? {
225
229
  hasError: _pt__default["default"].bool,
226
230
  hasWarning: _pt__default["default"].bool,
227
231
  errors: _pt__default["default"].objectOf(_pt__default["default"].node),
228
- warnings: _pt__default["default"].objectOf(_pt__default["default"].node)
232
+ warnings: _pt__default["default"].objectOf(_pt__default["default"].node),
233
+ hasHighPrecisionBadge: _pt__default["default"].bool
229
234
  } : {};
230
235
  LocalizedMoneyInput.displayName = 'LocalizedMoneyInput';
231
236
  LocalizedMoneyInput.getId = localizedUtils.getId;
@@ -260,7 +265,7 @@ LocalizedMoneyInput.getEmptyCurrencies = values => {
260
265
  var LocalizedMoneyInput$1 = LocalizedMoneyInput;
261
266
 
262
267
  // NOTE: This string will be replaced on build time with the package version.
263
- var version = "16.5.0";
268
+ var version = "16.6.0";
264
269
 
265
270
  exports["default"] = LocalizedMoneyInput$1;
266
271
  exports.version = version;
@@ -111,7 +111,8 @@ const LocalizedInput = props => {
111
111
  isReadOnly: props.isReadOnly,
112
112
  placeholder: props.placeholder,
113
113
  hasError: props.hasError,
114
- hasWarning: props.hasWarning
114
+ hasWarning: props.hasWarning,
115
+ hasHighPrecisionBadge: props.hasHighPrecisionBadge
115
116
  }, utils.filterDataAttributes(props)))
116
117
  }), (props.error || props.warning) && jsxRuntime.jsx("div", {
117
118
  children: props.error ? props.error : props.warning
@@ -152,7 +153,7 @@ const LocalizedMoneyInput = props => {
152
153
  children: _mapInstanceProperty__default["default"](currencies).call(currencies, (currency, index) => {
153
154
  const isFirstCurrency = index === 0;
154
155
  if (!isFirstCurrency && !areCurrenciesExpanded) return null;
155
- return jsxRuntime.jsx(LocalizedInput, _objectSpread({
156
+ return jsxRuntime.jsx(LocalizedInput, _objectSpread(_objectSpread({
156
157
  id: LocalizedMoneyInput.getId(id, currency),
157
158
  name: LocalizedMoneyInput.getName(props.name, currency),
158
159
  value: props.value[currency],
@@ -167,7 +168,9 @@ const LocalizedMoneyInput = props => {
167
168
  hasWarning: Boolean(props.hasWarning || props.warnings && props.warnings[currency]),
168
169
  warning: props.warnings && props.warnings[currency],
169
170
  error: props.errors && props.errors[currency]
170
- }, localizedUtils.createLocalizedDataAttributes(props, currency)), currency);
171
+ }, localizedUtils.createLocalizedDataAttributes(props, currency)), {}, {
172
+ hasHighPrecisionBadge: props.hasHighPrecisionBadge
173
+ }), currency);
171
174
  })
172
175
  }), shouldRenderCurrencyControl && jsxRuntime.jsx(inputUtils.LocalizedInputToggle, {
173
176
  icon: jsxRuntime.jsx(icons.CoinsIcon, {}),
@@ -218,7 +221,7 @@ LocalizedMoneyInput.getEmptyCurrencies = values => {
218
221
  var LocalizedMoneyInput$1 = LocalizedMoneyInput;
219
222
 
220
223
  // NOTE: This string will be replaced on build time with the package version.
221
- var version = "16.5.0";
224
+ var version = "16.6.0";
222
225
 
223
226
  exports["default"] = LocalizedMoneyInput$1;
224
227
  exports.version = version;
@@ -62,7 +62,7 @@ var _ref = process.env.NODE_ENV === "production" ? {
62
62
  } : {
63
63
  name: "1ysn02y-LocalizedInput",
64
64
  styles: "width:100%;position:relative;display:flex;label:LocalizedInput;",
65
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC1tb25leS1pbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb09nQiIsImZpbGUiOiJsb2NhbGl6ZWQtbW9uZXktaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVG9nZ2xlU3RhdGUsIHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgTW9uZXlJbnB1dCwge1xuICB0eXBlIFRDdXJyZW5jeUNvZGUsXG4gIHR5cGUgVE1vbmV5VmFsdWUsXG4gIHR5cGUgVFZhbHVlLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9tb25leS1pbnB1dCc7XG5pbXBvcnQgU3RhY2sgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3Mtc3RhY2snO1xuaW1wb3J0IENvbnN0cmFpbnRzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2NvbnN0cmFpbnRzJztcbmltcG9ydCB7IENvaW5zSWNvbiB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2ljb25zJztcbmltcG9ydCB7XG4gIGNyZWF0ZUxvY2FsaXplZERhdGFBdHRyaWJ1dGVzLFxuICBnZXRIYXNFcnJvck9uUmVtYWluaW5nTGFuZ3VhZ2VzLFxuICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMsXG4gIGdldElkLFxuICBnZXROYW1lLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9sb2NhbGl6ZWQtdXRpbHMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgTG9jYWxpemVkSW5wdXRUb2dnbGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pbnB1dC11dGlscyc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgVEN1c3RvbUV2ZW50ID0ge1xuICB0YXJnZXQ6IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xuICB9O1xuICBwZXJzaXN0PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIFRMb2NhbGl6ZWRNb25leUlucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdXNlZCB0byBjcmVhdGUgYSBIVE1MIGBuYW1lYCBwcm9wZXJ0eSBmb3IgdGhlIGFtb3VudCBpbnB1dCBmaWVsZCAoYCR7bmFtZX0uYW1vdW50YCkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogdmFsdWUgb2YgcG9zc2libGUgY3VycmVuY3lcbiAgICogPGJyLz5cbiAgICogdGhlIGlucHV0IGRvZXNuJ3QgYWNjZXB0IGEgXCJjdXJyZW5jaWVzXCIgcHJvcCwgaW5zdGVhZCBhbGwgcG9zc2libGVcbiAgICogY3VycmVuY2llcyBoYXZlIHRvIGV4aXN0ICh3aXRoIGVtcHR5IG9yIGZpbGxlZCBzdHJpbmdzKSBvbiB0aGUgdmFsdWU6XG4gICAqIHsgRVVSOiB7YW1vdW50OiAnMTIuMDAnLCBjdXJyZW5jeUNvZGU6ICdFVVInfSwgVVNEOiB7YW1vdW50OiAnJywgY3VycmVuY3lDb2RlOiAnVVNEJ319XG4gICAqL1xuICB2YWx1ZTogUmVjb3JkPHN0cmluZywgVFZhbHVlPjtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBvbkNoYW5nZT86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBjdXJyZW5jeVxuICAgKi9cbiAgc2VsZWN0ZWRDdXJyZW5jeTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgYmx1cnJlZFxuICAgKi9cbiAgb25CbHVyPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAqL1xuICBvbkZvY3VzPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBXaWxsIGhpZGUgdGhlIGN1cnJlbmN5IGV4cGFuc2lvbiBjb250cm9scyB3aGVuIHNldCB0byBgdHJ1ZWAuIEFsbCBjdXJyZW5jaWVzIHdpbGwgYmUgc2hvd24gd2hlbiBzZXQgdG8gYHRydWVgLlxuICAgKi9cbiAgaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29udHJvbHMgd2hldGhlciBvbmUgb3IgYWxsIGN1cnJlbmNpcnMgYXJlIHZpc2libGUgYnkgZGVmYXVsdFxuICAgKi9cbiAgZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGlucHV0IGNhbm5vdCBiZSBtb2RpZmllZCAoZS5nIG5vdCBhdXRob3JpemVkLCBvciBjaGFuZ2VzIGN1cnJlbnRseSBzYXZpbmcpLlxuICAgKi9cbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgZmllbGQgaXMgZGlzcGxheWluZyByZWFkLW9ubHkgY29udGVudFxuICAgKi9cbiAgaXNSZWFkT25seT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OlxuICAgIHwgM1xuICAgIHwgNFxuICAgIHwgNVxuICAgIHwgNlxuICAgIHwgN1xuICAgIHwgOFxuICAgIHwgOVxuICAgIHwgMTBcbiAgICB8IDExXG4gICAgfCAxMlxuICAgIHwgMTNcbiAgICB8IDE0XG4gICAgfCAxNVxuICAgIHwgMTZcbiAgICB8ICdzY2FsZSdcbiAgICB8ICdhdXRvJztcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IGlucHV0IGhhcyBlcnJvcnNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2wgdG8gaW5kaWNhdGUgb24gdGhlIGlucHV0IGlmIHRoZXJlIGFyZSB2YWx1ZXMgdGhhdCBhcmUgcG90ZW50aWFsbHkgaW52YWxpZFxuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBlcnJvcnMuIEVycm9yIG1lc3NhZ2VzIGZvciBrbm93biBlcnJvcnMgYXJlIHJlbmRlcmVkIGF1dG9tYXRpY2FsbHkuXG4gICAqIDxicj5cbiAgICogVW5rbm93biBlcnJvcnMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gYHJlbmRlckVycm9yYFxuICAgKi9cbiAgZXJyb3JzPzogUmVjb3JkPHN0cmluZywgUmVhY3ROb2RlPjtcbiAgLyoqXG4gICAqIEEgbWFwIG9mIHdhcm5pbmdzLlxuICAgKi9cbiAgd2FybmluZ3M/OiBSZWNvcmQ8c3RyaW5nLCBSZWFjdE5vZGU+O1xufTtcblxudHlwZSBUTG9jYWxpemVkSW5wdXRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBpZCBwcm9wZXJ0eS5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHByZWZpeCB1c2VkIHRvIGNyZWF0ZSBhIEhUTUwgYG5hbWVgIHByb3BlcnR5IGZvciB0aGUgYW1vdW50IGlucHV0IGZpZWxkIChgJHtuYW1lfS5hbW91bnRgKS5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB2YWx1ZSBvZiBwb3NzaWJsZSBjdXJyZW5jeVxuICAgKi9cbiAgdmFsdWU6IFRWYWx1ZTtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBvbkNoYW5nZT86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dC5cbiAgICovXG4gIGN1cnJlbmN5OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgaW5wdXQgaGFzIGVycm9yc1xuICAgKi9cbiAgaGFzRXJyb3I/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29udHJvbCB0byBpbmRpY2F0ZSBvbiB0aGUgaW5wdXQgaWYgdGhlcmUgYXJlIHZhbHVlcyB0aGF0IGFyZSBwb3RlbnRpYWxseSBpbnZhbGlkXG4gICAqL1xuICBoYXNXYXJuaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dFxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBlcnJvcnMuIEVycm9yIG1lc3NhZ2VzIGZvciBrbm93biBlcnJvcnMgYXJlIHJlbmRlcmVkIGF1dG9tYXRpY2FsbHkuXG4gICAqIDxicj5cbiAgICogVW5rbm93biBlcnJvcnMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gYHJlbmRlckVycm9yYFxuICAgKi9cbiAgZXJyb3I/OiBSZWFjdE5vZGU7XG4gIC8qKlxuICAgKiBIVE1MIG5vZGUgdG8gZGlzcGxheSB3YXJuaW5nXG4gICAqL1xuICB3YXJuaW5nPzogUmVhY3ROb2RlO1xufTtcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCdsb2NhbGl6ZWQtbW9uZXktaW5wdXQtJyk7XG5cbi8vIHNvcnRzIHRoZSBjdXJyZW5jaWVzIHdpdGggdGhlIGZvbGxvd2luZyBwcmlvcml0eTpcbi8vIC0gVGhlIHNlbGVjdGVkIGN1cnJlbmN5IGlzIHBsYWNlZCBmaXJzdCAoZS5nIEVVUilcbi8vIC0gQWxsIG90aGVyIGN1cnJlbmNpZXMgZm9sbG93LCBzb3J0ZWQgYWxwaGFiZXRpY2FsbHkgYXMgd2VsbFxuZXhwb3J0IGNvbnN0IHNvcnRDdXJyZW5jaWVzID0gKFxuICBzZWxlY3RlZEN1cnJlbmN5OiBzdHJpbmcsXG4gIGFsbEN1cnJlbmNpZXM6IHN0cmluZ1tdXG4pID0+IHtcbiAgY29uc3QgcmVtYWluaW5nQ3VycmVuY2llcyA9IGFsbEN1cnJlbmNpZXMuZmlsdGVyKFxuICAgIChjdXJyZW5jeSkgPT4gY3VycmVuY3kgIT09IHNlbGVjdGVkQ3VycmVuY3lcbiAgKTtcbiAgcmV0dXJuIFtzZWxlY3RlZEN1cnJlbmN5LCAuLi5yZW1haW5pbmdDdXJyZW5jaWVzLnNvcnQoKV07XG59O1xuXG5jb25zdCBMb2NhbGl6ZWRJbnB1dCA9IChwcm9wczogVExvY2FsaXplZElucHV0UHJvcHMpID0+IHtcbiAgY29uc3QgeyBvbkNoYW5nZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgLy8gV2UgbWFuaXB1bGF0ZSB0aGUgZXZlbnQgdG8gYWRkIHRoZSBjdXJyZW5jeSB0byB0aGUgdGFyZ2V0LlxuICAgICAgLy8gVGhhdCB3YXkgdGhlIHVzZXJzICBjYW4gcmVhZFxuICAgICAgLy8gZXZlbnQudGFyZ2V0LmN1cnJlbmN5IGFuZCBldmVudC50YXJnZXQudmFsdWUgdG8gZGV0ZXJtaW5lIHRoZSBuZXh0IHZhbHVlLlxuICAgICAgLy9cbiAgICAgIC8vIFdlIG9ubHkgbmVlZCB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGUgc3RvcnksIHRoZSBNQyBhcHBsaWNhdGlvbiBjb2RlIHdpbGxcbiAgICAgIC8vIG5ldmVyIG5lZWQgdG8gYWNjZXNzIHRoZSBpbmZvcm1hdGlvbiBpbiBzdWNoIGFuIGluY29udmVuaWVudCB3YXksIGFzXG4gICAgICAvLyBGb3JtaWsgY2FuIGRlYWwgd2l0aCBhIG5hbWUgbGlrZSBcImZvby5lblwiIGFuZCBzZXRzIHRoZSB2YWx1ZSBjb3JyZWN0bHkuXG4gICAgICAvLyBXZSBjYW4ndCB1c2UgdGhpcyBhcyB3ZSBhcmVuJ3QgZ3VhcmFudGVlZCBhIG5hbWUgaW4gdGhlIHN0b3J5IGFzIHRoZSB1c2VyXG4gICAgICAvLyBtaWdodCBjbGVhciBpdCB1c2luZyB0aGUga25vYiwgYW5kIHRoZW4gd2UgY2FuJ3QgcGFyc2UgdGhlIGN1cnJlbmN5IGZyb21cbiAgICAgIC8vIHRoZSBpbnB1dCBuYW1lIGFueW1vcmUuXG4gICAgICAvL1xuICAgICAgZXZlbnQudGFyZ2V0LmN1cnJlbmN5ID0gcHJvcHMuY3VycmVuY3k7XG4gICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICB9LFxuICAgIFtwcm9wcy5jdXJyZW5jeSwgb25DaGFuZ2VdXG4gICk7XG4gIHJldHVybiAoXG4gICAgPFN0YWNrIHNjYWxlPVwieHNcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIDxNb25leUlucHV0XG4gICAgICAgICAgbmFtZT17cHJvcHMubmFtZX1cbiAgICAgICAgICB2YWx1ZT17cHJvcHMudmFsdWV9XG4gICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgIGlzUmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e3Byb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgIGhhc0Vycm9yPXtwcm9wcy5oYXNFcnJvcn1cbiAgICAgICAgICBoYXNXYXJuaW5nPXtwcm9wcy5oYXNXYXJuaW5nfVxuICAgICAgICAgIHsuLi5maWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyl9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIHsocHJvcHMuZXJyb3IgfHwgcHJvcHMud2FybmluZykgJiYgKFxuICAgICAgICA8ZGl2Pntwcm9wcy5lcnJvciA/IHByb3BzLmVycm9yIDogcHJvcHMud2FybmluZ308L2Rpdj5cbiAgICAgICl9XG4gICAgPC9TdGFjaz5cbiAgKTtcbn07XG5cbkxvY2FsaXplZElucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZElucHV0JztcblxuY29uc3QgTG9jYWxpemVkTW9uZXlJbnB1dCA9IChwcm9wczogVExvY2FsaXplZE1vbmV5SW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuXG4gIGNvbnN0IGRlZmF1bHRFeHBhbnNpb25TdGF0ZSA9XG4gICAgcHJvcHMuaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHMgfHxcbiAgICBwcm9wcy5kZWZhdWx0RXhwYW5kQ3VycmVuY2llcyB8fFxuICAgIC8vIGRlZmF1bHQgdG8gYGZhbHNlYCwgYmVjYXVzZSB1c2VUb2dnbGVTdGF0ZSBkZWZhdWx0cyB0byBgdHJ1ZWBcbiAgICBmYWxzZTtcblxuICBjb25zdCBbYXJlQ3VycmVuY2llc0V4cGFuZGVkLCB0b2dnbGVDdXJyZW5jaWVzXSA9IHVzZVRvZ2dsZVN0YXRlKFxuICAgIGRlZmF1bHRFeHBhbnNpb25TdGF0ZVxuICApO1xuXG4gIGNvbnN0IG9uTG9jYWxpemVkTW9uZXlJbnB1dFRvZ2dsZSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRvZ2dsZUN1cnJlbmNpZXMoKSxcbiAgICBbdG9nZ2xlQ3VycmVuY2llc11cbiAgKTtcblxuICBjb25zdCBpZCA9IHVzZUZpZWxkSWQocHJvcHMuaWQsIHNlcXVlbnRpYWxJZCk7XG5cbiAgY29uc3QgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc0Vycm9yIHx8XG4gICAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyhwcm9wcy5lcnJvcnMsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGNvbnN0IGhhc1dhcm5pbmdJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc1dhcm5pbmcgfHxcbiAgICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMocHJvcHMud2FybmluZ3MsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGlmIChoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyB8fCBoYXNXYXJuaW5nSW5SZW1haW5pbmdDdXJyZW5jaWVzKSB7XG4gICAgLy8gdGhpcyB1cGRhdGUgd2l0aGluIHJlbmRlciByZXBsYWNlcyB0aGUgb2xkIGBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHNgIGZ1bmN0aW9uYWxpdHlcbiAgICAvLyBodHRwczovL3JlYWN0anMub3JnL2RvY3MvaG9va3MtZmFxLmh0bWwjaG93LWRvLWktaW1wbGVtZW50LWdldGRlcml2ZWRzdGF0ZWZyb21wcm9wc1xuICAgIGlmICghYXJlQ3VycmVuY2llc0V4cGFuZGVkKSB7XG4gICAgICB0b2dnbGVDdXJyZW5jaWVzKCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgY3VycmVuY2llcyA9IHNvcnRDdXJyZW5jaWVzKFxuICAgIHByb3BzLnNlbGVjdGVkQ3VycmVuY3ksXG4gICAgT2JqZWN0LmtleXMocHJvcHMudmFsdWUpXG4gICk7XG5cbiAgY29uc3Qgc2hvdWxkUmVuZGVyQ3VycmVuY3lDb250cm9sID1cbiAgICBjdXJyZW5jaWVzLmxlbmd0aCA+IDEgJiYgIXByb3BzLmhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzO1xuXG4gIGlmIChwcm9wcy5oaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9scykge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMuZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXMgIT09ICdib29sZWFuJyxcbiAgICAgICdMb2NhbGl6ZWRNb25leUlucHV0OiBcImRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzXCIgZG9lcyBub3QgaGF2ZSBhbnkgZWZmZWN0IHdoZW4gXCJoaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9sc1wiIGlzIHNldC4nXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8U3RhY2sgc2NhbGU9XCJ4c1wiPlxuICAgICAgICA8U3RhY2sgc2NhbGU9XCJzXCI+XG4gICAgICAgICAge2N1cnJlbmNpZXMubWFwKChjdXJyZW5jeSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RDdXJyZW5jeSA9IGluZGV4ID09PSAwO1xuICAgICAgICAgICAgaWYgKCFpc0ZpcnN0Q3VycmVuY3kgJiYgIWFyZUN1cnJlbmNpZXNFeHBhbmRlZCkgcmV0dXJuIG51bGw7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxMb2NhbGl6ZWRJbnB1dFxuICAgICAgICAgICAgICAgIGtleT17Y3VycmVuY3l9XG4gICAgICAgICAgICAgICAgaWQ9e0xvY2FsaXplZE1vbmV5SW5wdXQuZ2V0SWQoaWQsIGN1cnJlbmN5KX1cbiAgICAgICAgICAgICAgICBuYW1lPXtMb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUocHJvcHMubmFtZSwgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwcm9wcy52YWx1ZVtjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAgICAgICAgIGN1cnJlbmN5PXtjdXJyZW5jeX1cbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17XG4gICAgICAgICAgICAgICAgICBwcm9wcy5wbGFjZWhvbGRlciA/IHByb3BzLnBsYWNlaG9sZGVyW2N1cnJlbmN5XSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICAgICAgICBvbkZvY3VzPXtwcm9wcy5vbkZvY3VzfVxuICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgICAgICBoYXNFcnJvcj17Qm9vbGVhbihcbiAgICAgICAgICAgICAgICAgIHByb3BzLmhhc0Vycm9yIHx8IChwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2N1cnJlbmN5XSlcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIGhhc1dhcm5pbmc9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICBwcm9wcy5oYXNXYXJuaW5nIHx8XG4gICAgICAgICAgICAgICAgICAgIChwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV0pXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICB3YXJuaW5nPXtwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgZXJyb3I9e3Byb3BzLmVycm9ycyAmJiBwcm9wcy5lcnJvcnNbY3VycmVuY3ldfVxuICAgICAgICAgICAgICAgIHsuLi5jcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyhwcm9wcywgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgICAge3Nob3VsZFJlbmRlckN1cnJlbmN5Q29udHJvbCAmJiAoXG4gICAgICAgICAgPExvY2FsaXplZElucHV0VG9nZ2xlXG4gICAgICAgICAgICBpY29uPXs8Q29pbnNJY29uIC8+fVxuICAgICAgICAgICAgb25DbGljaz17b25Mb2NhbGl6ZWRNb25leUlucHV0VG9nZ2xlfVxuICAgICAgICAgICAgaXNPcGVuPXthcmVDdXJyZW5jaWVzRXhwYW5kZWR9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXtcbiAgICAgICAgICAgICAgYXJlQ3VycmVuY2llc0V4cGFuZGVkICYmXG4gICAgICAgICAgICAgIEJvb2xlYW4oXG4gICAgICAgICAgICAgICAgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgfHwgaGFzV2FybmluZ0luUmVtYWluaW5nQ3VycmVuY2llc1xuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzaG93TWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLnNob3csIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBoaWRlTWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLmhpZGUsIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3RhY2s+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5kaXNwbGF5TmFtZSA9ICdMb2NhbGl6ZWRNb25leUlucHV0JztcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRJZCA9IGdldElkO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUgPSBnZXROYW1lO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmNvbnZlcnRUb01vbmV5VmFsdWVzID0gKFxuICB2YWx1ZXM6IFRWYWx1ZVtdLFxuICBsb2NhbGU6IHN0cmluZ1xuKTogQXJyYXk8VE1vbmV5VmFsdWUgfCBudWxsPiA9PlxuICBPYmplY3QudmFsdWVzKHZhbHVlcykubWFwPFRNb25leVZhbHVlIHwgbnVsbD4oKHZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIE1vbmV5SW5wdXQuY29udmVydFRvTW9uZXlWYWx1ZSh2YWx1ZSwgbG9jYWxlKTtcbiAgfSk7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQucGFyc2VNb25leVZhbHVlcyA9IChcbiAgbW9uZXlWYWx1ZXM6IFRNb25leVZhbHVlW10gPSBbXSxcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+ID0+XG4gIG1vbmV5VmFsdWVzLnJlZHVjZTxSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPj4oKGFsbFZhbHVlcywgbW9uZXlWYWx1ZSkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gTW9uZXlJbnB1dC5wYXJzZU1vbmV5VmFsdWUobW9uZXlWYWx1ZSwgbG9jYWxlKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uYWxsVmFsdWVzLFxuICAgICAgW3ZhbHVlLmN1cnJlbmN5Q29kZV06IHZhbHVlLFxuICAgIH07XG4gIH0sIHt9IGFzIFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+KTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRIaWdoUHJlY2lzaW9uQ3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPixcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFRDdXJyZW5jeUNvZGVbXSA9PiB7XG4gIGNvbnN0IHR5cGVkQ3VycmVuY3lDb2RlcyA9IE9iamVjdC5rZXlzKHZhbHVlcykgYXMgVEN1cnJlbmN5Q29kZVtdO1xuICByZXR1cm4gdHlwZWRDdXJyZW5jeUNvZGVzLmZpbHRlcigoY3VycmVuY3lDb2RlKSA9PlxuICAgIE1vbmV5SW5wdXQuaXNIaWdoUHJlY2lzaW9uKHZhbHVlc1tjdXJyZW5jeUNvZGVdLCBsb2NhbGUpXG4gICk7XG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldEVtcHR5Q3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPlxuKTogVEN1cnJlbmN5Q29kZVtdID0+IHtcbiAgY29uc3QgdHlwZWRDdXJyZW5jeUNvZGVzID0gT2JqZWN0LmtleXModmFsdWVzKSBhcyBUQ3VycmVuY3lDb2RlW107XG4gIHJldHVybiB0eXBlZEN1cnJlbmN5Q29kZXMuZmlsdGVyKChjdXJyZW5jeUNvZGUpID0+XG4gICAgTW9uZXlJbnB1dC5pc0VtcHR5KHZhbHVlc1tjdXJyZW5jeUNvZGVdKVxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9jYWxpemVkTW9uZXlJbnB1dDtcbiJdfQ== */",
65
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC1tb25leS1pbnB1dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNE9nQiIsImZpbGUiOiJsb2NhbGl6ZWQtbW9uZXktaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50bCB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVG9nZ2xlU3RhdGUsIHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgTW9uZXlJbnB1dCwge1xuICB0eXBlIFRDdXJyZW5jeUNvZGUsXG4gIHR5cGUgVE1vbmV5VmFsdWUsXG4gIHR5cGUgVFZhbHVlLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9tb25leS1pbnB1dCc7XG5pbXBvcnQgU3RhY2sgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3Mtc3RhY2snO1xuaW1wb3J0IENvbnN0cmFpbnRzIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2NvbnN0cmFpbnRzJztcbmltcG9ydCB7IENvaW5zSWNvbiB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2ljb25zJztcbmltcG9ydCB7XG4gIGNyZWF0ZUxvY2FsaXplZERhdGFBdHRyaWJ1dGVzLFxuICBnZXRIYXNFcnJvck9uUmVtYWluaW5nTGFuZ3VhZ2VzLFxuICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMsXG4gIGdldElkLFxuICBnZXROYW1lLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9sb2NhbGl6ZWQtdXRpbHMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgTG9jYWxpemVkSW5wdXRUb2dnbGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pbnB1dC11dGlscyc7XG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9tZXNzYWdlcyc7XG5cbnR5cGUgVEN1c3RvbUV2ZW50ID0ge1xuICB0YXJnZXQ6IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xuICB9O1xuICBwZXJzaXN0PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIFRMb2NhbGl6ZWRNb25leUlucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdXNlZCB0byBjcmVhdGUgYSBIVE1MIGBuYW1lYCBwcm9wZXJ0eSBmb3IgdGhlIGFtb3VudCBpbnB1dCBmaWVsZCAoYCR7bmFtZX0uYW1vdW50YCkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogdmFsdWUgb2YgcG9zc2libGUgY3VycmVuY3lcbiAgICogPGJyLz5cbiAgICogdGhlIGlucHV0IGRvZXNuJ3QgYWNjZXB0IGEgXCJjdXJyZW5jaWVzXCIgcHJvcCwgaW5zdGVhZCBhbGwgcG9zc2libGVcbiAgICogY3VycmVuY2llcyBoYXZlIHRvIGV4aXN0ICh3aXRoIGVtcHR5IG9yIGZpbGxlZCBzdHJpbmdzKSBvbiB0aGUgdmFsdWU6XG4gICAqIHsgRVVSOiB7YW1vdW50OiAnMTIuMDAnLCBjdXJyZW5jeUNvZGU6ICdFVVInfSwgVVNEOiB7YW1vdW50OiAnJywgY3VycmVuY3lDb2RlOiAnVVNEJ319XG4gICAqL1xuICB2YWx1ZTogUmVjb3JkPHN0cmluZywgVFZhbHVlPjtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBvbkNoYW5nZT86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBjdXJyZW5jeVxuICAgKi9cbiAgc2VsZWN0ZWRDdXJyZW5jeTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgYmx1cnJlZFxuICAgKi9cbiAgb25CbHVyPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAqL1xuICBvbkZvY3VzPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBXaWxsIGhpZGUgdGhlIGN1cnJlbmN5IGV4cGFuc2lvbiBjb250cm9scyB3aGVuIHNldCB0byBgdHJ1ZWAuIEFsbCBjdXJyZW5jaWVzIHdpbGwgYmUgc2hvd24gd2hlbiBzZXQgdG8gYHRydWVgLlxuICAgKi9cbiAgaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29udHJvbHMgd2hldGhlciBvbmUgb3IgYWxsIGN1cnJlbmNpcnMgYXJlIHZpc2libGUgYnkgZGVmYXVsdFxuICAgKi9cbiAgZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGlucHV0IGNhbm5vdCBiZSBtb2RpZmllZCAoZS5nIG5vdCBhdXRob3JpemVkLCBvciBjaGFuZ2VzIGN1cnJlbnRseSBzYXZpbmcpLlxuICAgKi9cbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgZmllbGQgaXMgZGlzcGxheWluZyByZWFkLW9ubHkgY29udGVudFxuICAgKi9cbiAgaXNSZWFkT25seT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OlxuICAgIHwgM1xuICAgIHwgNFxuICAgIHwgNVxuICAgIHwgNlxuICAgIHwgN1xuICAgIHwgOFxuICAgIHwgOVxuICAgIHwgMTBcbiAgICB8IDExXG4gICAgfCAxMlxuICAgIHwgMTNcbiAgICB8IDE0XG4gICAgfCAxNVxuICAgIHwgMTZcbiAgICB8ICdzY2FsZSdcbiAgICB8ICdhdXRvJztcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IGlucHV0IGhhcyBlcnJvcnNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2wgdG8gaW5kaWNhdGUgb24gdGhlIGlucHV0IGlmIHRoZXJlIGFyZSB2YWx1ZXMgdGhhdCBhcmUgcG90ZW50aWFsbHkgaW52YWxpZFxuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBlcnJvcnMuIEVycm9yIG1lc3NhZ2VzIGZvciBrbm93biBlcnJvcnMgYXJlIHJlbmRlcmVkIGF1dG9tYXRpY2FsbHkuXG4gICAqIDxicj5cbiAgICogVW5rbm93biBlcnJvcnMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gYHJlbmRlckVycm9yYFxuICAgKi9cbiAgZXJyb3JzPzogUmVjb3JkPHN0cmluZywgUmVhY3ROb2RlPjtcbiAgLyoqXG4gICAqIEEgbWFwIG9mIHdhcm5pbmdzLlxuICAgKi9cbiAgd2FybmluZ3M/OiBSZWNvcmQ8c3RyaW5nLCBSZWFjdE5vZGU+O1xuICAvKipcbiAgICogU2hvd3MgaGlnaCBwcmVjaXNpb24gYmFkZ2UgaW4gY2FzZSBjdXJyZW50IHZhbHVlIHVzZXMgaGlnaCBwcmVjaXNpb24uXG4gICAqL1xuICBoYXNIaWdoUHJlY2lzaW9uQmFkZ2U/OiBib29sZWFuO1xufTtcblxudHlwZSBUTG9jYWxpemVkSW5wdXRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBpZCBwcm9wZXJ0eS5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHByZWZpeCB1c2VkIHRvIGNyZWF0ZSBhIEhUTUwgYG5hbWVgIHByb3BlcnR5IGZvciB0aGUgYW1vdW50IGlucHV0IGZpZWxkIChgJHtuYW1lfS5hbW91bnRgKS5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB2YWx1ZSBvZiBwb3NzaWJsZSBjdXJyZW5jeVxuICAgKi9cbiAgdmFsdWU6IFRWYWx1ZTtcbiAgLyoqXG4gICAqIENhbGxlZCB3aXRoIHRoZSBldmVudCBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBvbkNoYW5nZT86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dC5cbiAgICovXG4gIGN1cnJlbmN5OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgaW5wdXQgaGFzIGVycm9yc1xuICAgKi9cbiAgaGFzRXJyb3I/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29udHJvbCB0byBpbmRpY2F0ZSBvbiB0aGUgaW5wdXQgaWYgdGhlcmUgYXJlIHZhbHVlcyB0aGF0IGFyZSBwb3RlbnRpYWxseSBpbnZhbGlkXG4gICAqL1xuICBoYXNXYXJuaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dFxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBlcnJvcnMuIEVycm9yIG1lc3NhZ2VzIGZvciBrbm93biBlcnJvcnMgYXJlIHJlbmRlcmVkIGF1dG9tYXRpY2FsbHkuXG4gICAqIDxicj5cbiAgICogVW5rbm93biBlcnJvcnMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gYHJlbmRlckVycm9yYFxuICAgKi9cbiAgZXJyb3I/OiBSZWFjdE5vZGU7XG4gIC8qKlxuICAgKiBIVE1MIG5vZGUgdG8gZGlzcGxheSB3YXJuaW5nXG4gICAqL1xuICB3YXJuaW5nPzogUmVhY3ROb2RlO1xuICAvKipcbiAgICogU2hvd3MgaGlnaCBwcmVjaXNpb24gYmFkZ2UgaW4gY2FzZSBjdXJyZW50IHZhbHVlIHVzZXMgaGlnaCBwcmVjaXNpb24uXG4gICAqL1xuICBoYXNIaWdoUHJlY2lzaW9uQmFkZ2U/OiBib29sZWFuO1xufTtcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCdsb2NhbGl6ZWQtbW9uZXktaW5wdXQtJyk7XG5cbi8vIHNvcnRzIHRoZSBjdXJyZW5jaWVzIHdpdGggdGhlIGZvbGxvd2luZyBwcmlvcml0eTpcbi8vIC0gVGhlIHNlbGVjdGVkIGN1cnJlbmN5IGlzIHBsYWNlZCBmaXJzdCAoZS5nIEVVUilcbi8vIC0gQWxsIG90aGVyIGN1cnJlbmNpZXMgZm9sbG93LCBzb3J0ZWQgYWxwaGFiZXRpY2FsbHkgYXMgd2VsbFxuZXhwb3J0IGNvbnN0IHNvcnRDdXJyZW5jaWVzID0gKFxuICBzZWxlY3RlZEN1cnJlbmN5OiBzdHJpbmcsXG4gIGFsbEN1cnJlbmNpZXM6IHN0cmluZ1tdXG4pID0+IHtcbiAgY29uc3QgcmVtYWluaW5nQ3VycmVuY2llcyA9IGFsbEN1cnJlbmNpZXMuZmlsdGVyKFxuICAgIChjdXJyZW5jeSkgPT4gY3VycmVuY3kgIT09IHNlbGVjdGVkQ3VycmVuY3lcbiAgKTtcbiAgcmV0dXJuIFtzZWxlY3RlZEN1cnJlbmN5LCAuLi5yZW1haW5pbmdDdXJyZW5jaWVzLnNvcnQoKV07XG59O1xuXG5jb25zdCBMb2NhbGl6ZWRJbnB1dCA9IChwcm9wczogVExvY2FsaXplZElucHV0UHJvcHMpID0+IHtcbiAgY29uc3QgeyBvbkNoYW5nZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgLy8gV2UgbWFuaXB1bGF0ZSB0aGUgZXZlbnQgdG8gYWRkIHRoZSBjdXJyZW5jeSB0byB0aGUgdGFyZ2V0LlxuICAgICAgLy8gVGhhdCB3YXkgdGhlIHVzZXJzICBjYW4gcmVhZFxuICAgICAgLy8gZXZlbnQudGFyZ2V0LmN1cnJlbmN5IGFuZCBldmVudC50YXJnZXQudmFsdWUgdG8gZGV0ZXJtaW5lIHRoZSBuZXh0IHZhbHVlLlxuICAgICAgLy9cbiAgICAgIC8vIFdlIG9ubHkgbmVlZCB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGUgc3RvcnksIHRoZSBNQyBhcHBsaWNhdGlvbiBjb2RlIHdpbGxcbiAgICAgIC8vIG5ldmVyIG5lZWQgdG8gYWNjZXNzIHRoZSBpbmZvcm1hdGlvbiBpbiBzdWNoIGFuIGluY29udmVuaWVudCB3YXksIGFzXG4gICAgICAvLyBGb3JtaWsgY2FuIGRlYWwgd2l0aCBhIG5hbWUgbGlrZSBcImZvby5lblwiIGFuZCBzZXRzIHRoZSB2YWx1ZSBjb3JyZWN0bHkuXG4gICAgICAvLyBXZSBjYW4ndCB1c2UgdGhpcyBhcyB3ZSBhcmVuJ3QgZ3VhcmFudGVlZCBhIG5hbWUgaW4gdGhlIHN0b3J5IGFzIHRoZSB1c2VyXG4gICAgICAvLyBtaWdodCBjbGVhciBpdCB1c2luZyB0aGUga25vYiwgYW5kIHRoZW4gd2UgY2FuJ3QgcGFyc2UgdGhlIGN1cnJlbmN5IGZyb21cbiAgICAgIC8vIHRoZSBpbnB1dCBuYW1lIGFueW1vcmUuXG4gICAgICAvL1xuICAgICAgZXZlbnQudGFyZ2V0LmN1cnJlbmN5ID0gcHJvcHMuY3VycmVuY3k7XG4gICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICB9LFxuICAgIFtwcm9wcy5jdXJyZW5jeSwgb25DaGFuZ2VdXG4gICk7XG4gIHJldHVybiAoXG4gICAgPFN0YWNrIHNjYWxlPVwieHNcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY3NzPXtjc3NgXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGB9XG4gICAgICA+XG4gICAgICAgIDxNb25leUlucHV0XG4gICAgICAgICAgbmFtZT17cHJvcHMubmFtZX1cbiAgICAgICAgICB2YWx1ZT17cHJvcHMudmFsdWV9XG4gICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgIGlzUmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e3Byb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgIGhhc0Vycm9yPXtwcm9wcy5oYXNFcnJvcn1cbiAgICAgICAgICBoYXNXYXJuaW5nPXtwcm9wcy5oYXNXYXJuaW5nfVxuICAgICAgICAgIGhhc0hpZ2hQcmVjaXNpb25CYWRnZT17cHJvcHMuaGFzSGlnaFByZWNpc2lvbkJhZGdlfVxuICAgICAgICAgIHsuLi5maWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyl9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIHsocHJvcHMuZXJyb3IgfHwgcHJvcHMud2FybmluZykgJiYgKFxuICAgICAgICA8ZGl2Pntwcm9wcy5lcnJvciA/IHByb3BzLmVycm9yIDogcHJvcHMud2FybmluZ308L2Rpdj5cbiAgICAgICl9XG4gICAgPC9TdGFjaz5cbiAgKTtcbn07XG5cbkxvY2FsaXplZElucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZElucHV0JztcblxuY29uc3QgTG9jYWxpemVkTW9uZXlJbnB1dCA9IChwcm9wczogVExvY2FsaXplZE1vbmV5SW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuXG4gIGNvbnN0IGRlZmF1bHRFeHBhbnNpb25TdGF0ZSA9XG4gICAgcHJvcHMuaGlkZUN1cnJlbmN5RXhwYW5zaW9uQ29udHJvbHMgfHxcbiAgICBwcm9wcy5kZWZhdWx0RXhwYW5kQ3VycmVuY2llcyB8fFxuICAgIC8vIGRlZmF1bHQgdG8gYGZhbHNlYCwgYmVjYXVzZSB1c2VUb2dnbGVTdGF0ZSBkZWZhdWx0cyB0byBgdHJ1ZWBcbiAgICBmYWxzZTtcblxuICBjb25zdCBbYXJlQ3VycmVuY2llc0V4cGFuZGVkLCB0b2dnbGVDdXJyZW5jaWVzXSA9IHVzZVRvZ2dsZVN0YXRlKFxuICAgIGRlZmF1bHRFeHBhbnNpb25TdGF0ZVxuICApO1xuXG4gIGNvbnN0IG9uTG9jYWxpemVkTW9uZXlJbnB1dFRvZ2dsZSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRvZ2dsZUN1cnJlbmNpZXMoKSxcbiAgICBbdG9nZ2xlQ3VycmVuY2llc11cbiAgKTtcblxuICBjb25zdCBpZCA9IHVzZUZpZWxkSWQocHJvcHMuaWQsIHNlcXVlbnRpYWxJZCk7XG5cbiAgY29uc3QgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc0Vycm9yIHx8XG4gICAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyhwcm9wcy5lcnJvcnMsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGNvbnN0IGhhc1dhcm5pbmdJblJlbWFpbmluZ0N1cnJlbmNpZXMgPVxuICAgIHByb3BzLmhhc1dhcm5pbmcgfHxcbiAgICBnZXRIYXNXYXJuaW5nT25SZW1haW5pbmdMYW5ndWFnZXMocHJvcHMud2FybmluZ3MsIHByb3BzLnNlbGVjdGVkQ3VycmVuY3kpO1xuXG4gIGlmIChoYXNFcnJvckluUmVtYWluaW5nQ3VycmVuY2llcyB8fCBoYXNXYXJuaW5nSW5SZW1haW5pbmdDdXJyZW5jaWVzKSB7XG4gICAgLy8gdGhpcyB1cGRhdGUgd2l0aGluIHJlbmRlciByZXBsYWNlcyB0aGUgb2xkIGBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHNgIGZ1bmN0aW9uYWxpdHlcbiAgICAvLyBodHRwczovL3JlYWN0anMub3JnL2RvY3MvaG9va3MtZmFxLmh0bWwjaG93LWRvLWktaW1wbGVtZW50LWdldGRlcml2ZWRzdGF0ZWZyb21wcm9wc1xuICAgIGlmICghYXJlQ3VycmVuY2llc0V4cGFuZGVkKSB7XG4gICAgICB0b2dnbGVDdXJyZW5jaWVzKCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgY3VycmVuY2llcyA9IHNvcnRDdXJyZW5jaWVzKFxuICAgIHByb3BzLnNlbGVjdGVkQ3VycmVuY3ksXG4gICAgT2JqZWN0LmtleXMocHJvcHMudmFsdWUpXG4gICk7XG5cbiAgY29uc3Qgc2hvdWxkUmVuZGVyQ3VycmVuY3lDb250cm9sID1cbiAgICBjdXJyZW5jaWVzLmxlbmd0aCA+IDEgJiYgIXByb3BzLmhpZGVDdXJyZW5jeUV4cGFuc2lvbkNvbnRyb2xzO1xuXG4gIGlmIChwcm9wcy5oaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9scykge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMuZGVmYXVsdEV4cGFuZEN1cnJlbmNpZXMgIT09ICdib29sZWFuJyxcbiAgICAgICdMb2NhbGl6ZWRNb25leUlucHV0OiBcImRlZmF1bHRFeHBhbmRDdXJyZW5jaWVzXCIgZG9lcyBub3QgaGF2ZSBhbnkgZWZmZWN0IHdoZW4gXCJoaWRlQ3VycmVuY3lFeHBhbnNpb25Db250cm9sc1wiIGlzIHNldC4nXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8U3RhY2sgc2NhbGU9XCJ4c1wiPlxuICAgICAgICA8U3RhY2sgc2NhbGU9XCJzXCI+XG4gICAgICAgICAge2N1cnJlbmNpZXMubWFwKChjdXJyZW5jeSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RDdXJyZW5jeSA9IGluZGV4ID09PSAwO1xuICAgICAgICAgICAgaWYgKCFpc0ZpcnN0Q3VycmVuY3kgJiYgIWFyZUN1cnJlbmNpZXNFeHBhbmRlZCkgcmV0dXJuIG51bGw7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxMb2NhbGl6ZWRJbnB1dFxuICAgICAgICAgICAgICAgIGtleT17Y3VycmVuY3l9XG4gICAgICAgICAgICAgICAgaWQ9e0xvY2FsaXplZE1vbmV5SW5wdXQuZ2V0SWQoaWQsIGN1cnJlbmN5KX1cbiAgICAgICAgICAgICAgICBuYW1lPXtMb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUocHJvcHMubmFtZSwgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwcm9wcy52YWx1ZVtjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAgICAgICAgIGN1cnJlbmN5PXtjdXJyZW5jeX1cbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17XG4gICAgICAgICAgICAgICAgICBwcm9wcy5wbGFjZWhvbGRlciA/IHByb3BzLnBsYWNlaG9sZGVyW2N1cnJlbmN5XSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e3Byb3BzLm9uQmx1cn1cbiAgICAgICAgICAgICAgICBvbkZvY3VzPXtwcm9wcy5vbkZvY3VzfVxuICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgICAgICBoYXNFcnJvcj17Qm9vbGVhbihcbiAgICAgICAgICAgICAgICAgIHByb3BzLmhhc0Vycm9yIHx8IChwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2N1cnJlbmN5XSlcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIGhhc1dhcm5pbmc9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICBwcm9wcy5oYXNXYXJuaW5nIHx8XG4gICAgICAgICAgICAgICAgICAgIChwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV0pXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICB3YXJuaW5nPXtwcm9wcy53YXJuaW5ncyAmJiBwcm9wcy53YXJuaW5nc1tjdXJyZW5jeV19XG4gICAgICAgICAgICAgICAgZXJyb3I9e3Byb3BzLmVycm9ycyAmJiBwcm9wcy5lcnJvcnNbY3VycmVuY3ldfVxuICAgICAgICAgICAgICAgIHsuLi5jcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyhwcm9wcywgY3VycmVuY3kpfVxuICAgICAgICAgICAgICAgIGhhc0hpZ2hQcmVjaXNpb25CYWRnZT17cHJvcHMuaGFzSGlnaFByZWNpc2lvbkJhZGdlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgICAge3Nob3VsZFJlbmRlckN1cnJlbmN5Q29udHJvbCAmJiAoXG4gICAgICAgICAgPExvY2FsaXplZElucHV0VG9nZ2xlXG4gICAgICAgICAgICBpY29uPXs8Q29pbnNJY29uIC8+fVxuICAgICAgICAgICAgb25DbGljaz17b25Mb2NhbGl6ZWRNb25leUlucHV0VG9nZ2xlfVxuICAgICAgICAgICAgaXNPcGVuPXthcmVDdXJyZW5jaWVzRXhwYW5kZWR9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXtcbiAgICAgICAgICAgICAgYXJlQ3VycmVuY2llc0V4cGFuZGVkICYmXG4gICAgICAgICAgICAgIEJvb2xlYW4oXG4gICAgICAgICAgICAgICAgaGFzRXJyb3JJblJlbWFpbmluZ0N1cnJlbmNpZXMgfHwgaGFzV2FybmluZ0luUmVtYWluaW5nQ3VycmVuY2llc1xuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzaG93TWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLnNob3csIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBoaWRlTWVzc2FnZT17aW50bC5mb3JtYXRNZXNzYWdlKG1lc3NhZ2VzLmhpZGUsIHtcbiAgICAgICAgICAgICAgcmVtYWluaW5nQ3VycmVuY2llczogY3VycmVuY2llcy5sZW5ndGggLSAxLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3RhY2s+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5kaXNwbGF5TmFtZSA9ICdMb2NhbGl6ZWRNb25leUlucHV0JztcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRJZCA9IGdldElkO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldE5hbWUgPSBnZXROYW1lO1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmNvbnZlcnRUb01vbmV5VmFsdWVzID0gKFxuICB2YWx1ZXM6IFRWYWx1ZVtdLFxuICBsb2NhbGU6IHN0cmluZ1xuKTogQXJyYXk8VE1vbmV5VmFsdWUgfCBudWxsPiA9PlxuICBPYmplY3QudmFsdWVzKHZhbHVlcykubWFwPFRNb25leVZhbHVlIHwgbnVsbD4oKHZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIE1vbmV5SW5wdXQuY29udmVydFRvTW9uZXlWYWx1ZSh2YWx1ZSwgbG9jYWxlKTtcbiAgfSk7XG5cbkxvY2FsaXplZE1vbmV5SW5wdXQucGFyc2VNb25leVZhbHVlcyA9IChcbiAgbW9uZXlWYWx1ZXM6IFRNb25leVZhbHVlW10gPSBbXSxcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+ID0+XG4gIG1vbmV5VmFsdWVzLnJlZHVjZTxSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPj4oKGFsbFZhbHVlcywgbW9uZXlWYWx1ZSkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gTW9uZXlJbnB1dC5wYXJzZU1vbmV5VmFsdWUobW9uZXlWYWx1ZSwgbG9jYWxlKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uYWxsVmFsdWVzLFxuICAgICAgW3ZhbHVlLmN1cnJlbmN5Q29kZV06IHZhbHVlLFxuICAgIH07XG4gIH0sIHt9IGFzIFJlY29yZDxUQ3VycmVuY3lDb2RlLCBUVmFsdWU+KTtcblxuTG9jYWxpemVkTW9uZXlJbnB1dC5nZXRIaWdoUHJlY2lzaW9uQ3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPixcbiAgbG9jYWxlOiBzdHJpbmdcbik6IFRDdXJyZW5jeUNvZGVbXSA9PiB7XG4gIGNvbnN0IHR5cGVkQ3VycmVuY3lDb2RlcyA9IE9iamVjdC5rZXlzKHZhbHVlcykgYXMgVEN1cnJlbmN5Q29kZVtdO1xuICByZXR1cm4gdHlwZWRDdXJyZW5jeUNvZGVzLmZpbHRlcigoY3VycmVuY3lDb2RlKSA9PlxuICAgIE1vbmV5SW5wdXQuaXNIaWdoUHJlY2lzaW9uKHZhbHVlc1tjdXJyZW5jeUNvZGVdLCBsb2NhbGUpXG4gICk7XG59O1xuXG5Mb2NhbGl6ZWRNb25leUlucHV0LmdldEVtcHR5Q3VycmVuY2llcyA9IChcbiAgdmFsdWVzOiBSZWNvcmQ8VEN1cnJlbmN5Q29kZSwgVFZhbHVlPlxuKTogVEN1cnJlbmN5Q29kZVtdID0+IHtcbiAgY29uc3QgdHlwZWRDdXJyZW5jeUNvZGVzID0gT2JqZWN0LmtleXModmFsdWVzKSBhcyBUQ3VycmVuY3lDb2RlW107XG4gIHJldHVybiB0eXBlZEN1cnJlbmN5Q29kZXMuZmlsdGVyKChjdXJyZW5jeUNvZGUpID0+XG4gICAgTW9uZXlJbnB1dC5pc0VtcHR5KHZhbHVlc1tjdXJyZW5jeUNvZGVdKVxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9jYWxpemVkTW9uZXlJbnB1dDtcbiJdfQ== */",
66
66
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
67
67
  };
68
68
  const LocalizedInput = props => {
@@ -95,7 +95,8 @@ const LocalizedInput = props => {
95
95
  isReadOnly: props.isReadOnly,
96
96
  placeholder: props.placeholder,
97
97
  hasError: props.hasError,
98
- hasWarning: props.hasWarning
98
+ hasWarning: props.hasWarning,
99
+ hasHighPrecisionBadge: props.hasHighPrecisionBadge
99
100
  }, filterDataAttributes(props)))
100
101
  }), (props.error || props.warning) && jsx("div", {
101
102
  children: props.error ? props.error : props.warning
@@ -116,7 +117,8 @@ LocalizedInput.propTypes = process.env.NODE_ENV !== "production" ? {
116
117
  hasWarning: _pt.bool,
117
118
  placeholder: _pt.string,
118
119
  error: _pt.node,
119
- warning: _pt.node
120
+ warning: _pt.node,
121
+ hasHighPrecisionBadge: _pt.bool
120
122
  } : {};
121
123
  LocalizedInput.displayName = 'LocalizedInput';
122
124
  const LocalizedMoneyInput = props => {
@@ -153,7 +155,7 @@ const LocalizedMoneyInput = props => {
153
155
  children: _mapInstanceProperty(currencies).call(currencies, (currency, index) => {
154
156
  const isFirstCurrency = index === 0;
155
157
  if (!isFirstCurrency && !areCurrenciesExpanded) return null;
156
- return jsx(LocalizedInput, _objectSpread({
158
+ return jsx(LocalizedInput, _objectSpread(_objectSpread({
157
159
  id: LocalizedMoneyInput.getId(id, currency),
158
160
  name: LocalizedMoneyInput.getName(props.name, currency),
159
161
  value: props.value[currency],
@@ -168,7 +170,9 @@ const LocalizedMoneyInput = props => {
168
170
  hasWarning: Boolean(props.hasWarning || props.warnings && props.warnings[currency]),
169
171
  warning: props.warnings && props.warnings[currency],
170
172
  error: props.errors && props.errors[currency]
171
- }, createLocalizedDataAttributes(props, currency)), currency);
173
+ }, createLocalizedDataAttributes(props, currency)), {}, {
174
+ hasHighPrecisionBadge: props.hasHighPrecisionBadge
175
+ }), currency);
172
176
  })
173
177
  }), shouldRenderCurrencyControl && jsx(LocalizedInputToggle, {
174
178
  icon: jsx(CoinsIcon, {}),
@@ -202,7 +206,8 @@ LocalizedMoneyInput.propTypes = process.env.NODE_ENV !== "production" ? {
202
206
  hasError: _pt.bool,
203
207
  hasWarning: _pt.bool,
204
208
  errors: _pt.objectOf(_pt.node),
205
- warnings: _pt.objectOf(_pt.node)
209
+ warnings: _pt.objectOf(_pt.node),
210
+ hasHighPrecisionBadge: _pt.bool
206
211
  } : {};
207
212
  LocalizedMoneyInput.displayName = 'LocalizedMoneyInput';
208
213
  LocalizedMoneyInput.getId = getId;
@@ -237,6 +242,6 @@ LocalizedMoneyInput.getEmptyCurrencies = values => {
237
242
  var LocalizedMoneyInput$1 = LocalizedMoneyInput;
238
243
 
239
244
  // NOTE: This string will be replaced on build time with the package version.
240
- var version = "16.5.0";
245
+ var version = "16.6.0";
241
246
 
242
247
  export { LocalizedMoneyInput$1 as default, version };
@@ -26,6 +26,7 @@ export type TLocalizedMoneyInputProps = {
26
26
  hasWarning?: boolean;
27
27
  errors?: Record<string, ReactNode>;
28
28
  warnings?: Record<string, ReactNode>;
29
+ hasHighPrecisionBadge?: boolean;
29
30
  };
30
31
  export declare const sortCurrencies: (selectedCurrency: string, allCurrencies: string[]) => string[];
31
32
  declare const LocalizedMoneyInput: {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@commercetools-uikit/localized-money-input",
3
3
  "description": "A controlled input component for localized money values with validation states.",
4
- "version": "16.5.0",
4
+ "version": "16.6.0",
5
5
  "bugs": "https://github.com/commercetools/ui-kit/issues",
6
6
  "repository": {
7
7
  "type": "git",
@@ -21,18 +21,18 @@
21
21
  "dependencies": {
22
22
  "@babel/runtime": "^7.20.13",
23
23
  "@babel/runtime-corejs3": "^7.20.13",
24
- "@commercetools-uikit/constraints": "16.5.0",
25
- "@commercetools-uikit/design-system": "16.5.0",
26
- "@commercetools-uikit/flat-button": "16.5.0",
27
- "@commercetools-uikit/hooks": "16.5.0",
28
- "@commercetools-uikit/icons": "16.5.0",
29
- "@commercetools-uikit/input-utils": "16.5.0",
30
- "@commercetools-uikit/localized-utils": "16.5.0",
31
- "@commercetools-uikit/money-input": "16.5.0",
32
- "@commercetools-uikit/select-utils": "16.5.0",
33
- "@commercetools-uikit/spacings-stack": "16.5.0",
34
- "@commercetools-uikit/tooltip": "16.5.0",
35
- "@commercetools-uikit/utils": "16.5.0",
24
+ "@commercetools-uikit/constraints": "16.6.0",
25
+ "@commercetools-uikit/design-system": "16.6.0",
26
+ "@commercetools-uikit/flat-button": "16.6.0",
27
+ "@commercetools-uikit/hooks": "16.6.0",
28
+ "@commercetools-uikit/icons": "16.6.0",
29
+ "@commercetools-uikit/input-utils": "16.6.0",
30
+ "@commercetools-uikit/localized-utils": "16.6.0",
31
+ "@commercetools-uikit/money-input": "16.6.0",
32
+ "@commercetools-uikit/select-utils": "16.6.0",
33
+ "@commercetools-uikit/spacings-stack": "16.6.0",
34
+ "@commercetools-uikit/tooltip": "16.6.0",
35
+ "@commercetools-uikit/utils": "16.6.0",
36
36
  "@emotion/react": "^11.10.5",
37
37
  "@emotion/styled": "^11.10.5",
38
38
  "prop-types": "15.8.1",