@1money/component-ui 0.0.94-alpha.0 → 0.0.94-alpha.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 (50) hide show
  1. package/es/business/Dialog/BaseDialog/style/BaseDialog.css +0 -3
  2. package/es/business/Dialog/Descriptions/Descriptions.js +7 -3
  3. package/es/business/Dialog/Descriptions/interface.d.ts +7 -0
  4. package/es/business/Dialog/DetailsDialog/DetailsDialog.js +4 -2
  5. package/es/business/Dialog/DetailsDialog/interface.d.ts +5 -0
  6. package/es/business/Dialog/DetailsDialog/style/DetailsDialog.css +4 -0
  7. package/es/business/Dialog/FormDialog/FormDialog.js +2 -2
  8. package/es/business/Dialog/FormDialog/interface.d.ts +8 -1
  9. package/es/business/Dialog/VerificationDialog/style/VerificationDialog.css +0 -8
  10. package/es/business/Select/Currency/CurrencySelect.js +2 -2
  11. package/es/business/Select/Currency/style/CurrencySelect.css +2 -2
  12. package/es/components/Dialog/DialogContent.js +5 -2
  13. package/es/components/Input/interface.d.ts +6 -0
  14. package/es/components/ProForm/ProFormItem.js +14 -4
  15. package/es/components/ProForm/core/constants.d.ts +7 -0
  16. package/es/components/ProForm/core/constants.js +8 -1
  17. package/es/components/ProForm/fields/createProFormField.js +4 -2
  18. package/es/components/ProForm/interface.d.ts +20 -0
  19. package/es/components/ProForm/style/ProForm.css +4 -0
  20. package/es/components/Typography/interface.d.ts +1 -1
  21. package/es/components/Typography/interface.js +4 -2
  22. package/es/components/Typography/style/Typography.css +10 -0
  23. package/es/index.css +1 -1
  24. package/es/styles/index.css +6 -0
  25. package/lib/business/Dialog/BaseDialog/style/BaseDialog.css +0 -3
  26. package/lib/business/Dialog/Descriptions/Descriptions.js +7 -3
  27. package/lib/business/Dialog/Descriptions/interface.d.ts +7 -0
  28. package/lib/business/Dialog/DetailsDialog/DetailsDialog.js +4 -2
  29. package/lib/business/Dialog/DetailsDialog/interface.d.ts +5 -0
  30. package/lib/business/Dialog/DetailsDialog/style/DetailsDialog.css +4 -0
  31. package/lib/business/Dialog/FormDialog/FormDialog.js +2 -2
  32. package/lib/business/Dialog/FormDialog/interface.d.ts +8 -1
  33. package/lib/business/Dialog/VerificationDialog/style/VerificationDialog.css +0 -8
  34. package/lib/business/Select/Currency/CurrencySelect.js +2 -2
  35. package/lib/business/Select/Currency/style/CurrencySelect.css +2 -2
  36. package/lib/components/Dialog/DialogContent.js +5 -2
  37. package/lib/components/Input/interface.d.ts +6 -0
  38. package/lib/components/ProForm/ProFormItem.js +13 -3
  39. package/lib/components/ProForm/core/constants.d.ts +7 -0
  40. package/lib/components/ProForm/core/constants.js +9 -2
  41. package/lib/components/ProForm/fields/createProFormField.js +4 -2
  42. package/lib/components/ProForm/interface.d.ts +20 -0
  43. package/lib/components/ProForm/style/ProForm.css +4 -0
  44. package/lib/components/Typography/interface.d.ts +1 -1
  45. package/lib/components/Typography/interface.js +4 -2
  46. package/lib/components/Typography/style/Typography.css +10 -0
  47. package/lib/index.css +1 -1
  48. package/lib/styles/index.css +6 -0
  49. package/package.json +1 -1
  50. package/scripts/mcp-server/index.generated.json +17 -0
@@ -137,6 +137,8 @@ var ProFormItemBase = function ProFormItemBase(props) {
137
137
  children = _mergedProps.children,
138
138
  name = _mergedProps.name,
139
139
  label = _mergedProps.label,
140
+ _mergedProps$required = _mergedProps.required,
141
+ required = _mergedProps$required === void 0 ? true : _mergedProps$required,
140
142
  description = _mergedProps.description,
141
143
  rules = _mergedProps.rules,
142
144
  feedback = _mergedProps.feedback,
@@ -264,13 +266,21 @@ var ProFormItemBase = function ProFormItemBase(props) {
264
266
  style: gapStyle,
265
267
  children: [label && (0, _jsxRuntime.jsxs)("div", {
266
268
  className: classes('label-wrapper', (0, _classnames.joinCls)(classes('label-wrapper-vertical'), labelAlign && classes("label-wrapper-".concat(labelAlign)))),
267
- children: [(0, _jsxRuntime.jsx)(_Typography.TypographyLabel, {
269
+ children: [(0, _jsxRuntime.jsxs)(_Typography.TypographyLabel, {
268
270
  as: "label",
269
271
  strong: true,
270
272
  size: _constants.FORM_LABEL_SIZES[size],
271
273
  color: _constants.FORM_LABEL_COLOR,
272
274
  className: classes('label'),
273
- children: label
275
+ children: [label, !required && (0, _jsxRuntime.jsx)(_Typography.TypographyLabel, {
276
+ as: "span",
277
+ italic: true,
278
+ strong: true,
279
+ className: classes('optional'),
280
+ size: _constants.FORM_LABEL_SIZES[size],
281
+ color: _constants.FORM_OPTIONAL_COLOR,
282
+ children: _constants.FORM_OPTIONAL_TEXT
283
+ })]
274
284
  }), description && (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
275
285
  as: "div",
276
286
  className: classes('description'),
@@ -327,4 +337,4 @@ var ProFormItemBase = function ProFormItemBase(props) {
327
337
  ProFormItemBase.displayName = 'ProFormItem';
328
338
  var ProFormItem = exports.ProFormItem = /*#__PURE__*/(0, _react.memo)(ProFormItemBase);
329
339
  var _default = exports["default"] = ProFormItem;
330
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfR3JpZCIsIl9JY29ucyIsIl9UeXBvZ3JhcGh5IiwiX2NsYXNzbmFtZXMiLCJfdXNlRm9ybUl0ZW0yIiwiX2NvbnN0YW50cyIsIl9jb250ZXh0IiwiX2Zvcm1TdG9yZSIsIl9wYXRoVXRpbHMiLCJfY29uc3RhbnRzMiIsIl91dGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkVNUFRZX1RFWFRfREVGQVVMVCIsInJlbmRlckJ5VmFsdWVUeXBlIiwidmFsdWVUeXBlIiwidmFsdWUiLCJwcm9wcyIsInVuZGVmaW5lZCIsInJlcGVhdCIsIlN0cmluZyIsImxlbmd0aCIsIm51bSIsIk51bWJlciIsImlzTmFOIiwidG9Mb2NhbGVTdHJpbmciLCJ2YWx1ZUVudW0iLCJvcHRpb25zIiwidmFsdWVFbnVtVG9PcHRpb25zIiwibWF0Y2giLCJmaW5kIiwibyIsImxhYmVsIiwiRGF0ZSIsImZvcm1hdERhdGVCeVBhdHRlcm4iLCJEQVRFX0ZPUk1BVCIsIkRBVEVfVElNRV9GT1JNQVQiLCJSZWFkb25seUNoaWxkQmFzZSIsIl9yZWYiLCJuYW1lIiwiY29udmVydFZhbHVlIiwicmVhZG9ubHlSZW5kZXIiLCJlbXB0eVRleHQiLCJzdG9yZSIsInVzZVByb0Zvcm1TdG9yZSIsIl91c2VTdG9yZVNlbGVjdG9yIiwidXNlU3RvcmVTZWxlY3RvciIsInN0YXRlIiwicmVzb2x2ZVZhbHVlIiwidmFsdWVzIiwic2hhbGxvd0VxdWFsQXJyYXlzIiwiX3VzZVN0b3JlU2VsZWN0b3IyIiwiX3NsaWNlZFRvQXJyYXkyIiwicmF3IiwiYWxsVmFsdWVzIiwibm9kZSIsImdldFN0YXRlIiwiX2pzeCIsImNoaWxkcmVuIiwicmVuZGVyZWQiLCJkaXNwbGF5TmFtZSIsIlJlYWRvbmx5Q2hpbGQiLCJtZW1vIiwiQ29udmVydFZhbHVlQ2hpbGRCYXNlIiwiX3JlZjIiLCJfcmVmMiR2YWx1ZVByb3BOYW1lIiwidmFsdWVQcm9wTmFtZSIsImNvbnZlcnRlZCIsIlJlYWN0IiwiY2xvbmVFbGVtZW50IiwiX2RlZmluZVByb3BlcnR5MiIsIkNvbnZlcnRWYWx1ZUNoaWxkIiwiUHJvRm9ybUl0ZW1CYXNlIiwiX2EiLCJjdHgiLCJ1c2VQcm9Gb3JtU3RhYmxlIiwibWVyZ2VkUHJvcHMiLCJmb3JtSXRlbVByb3BzIiwibWVyZ2VkIiwiYXNzaWduIiwiX2kiLCJfT2JqZWN0JGtleXMiLCJrZXlzIiwia2V5IiwiX21lcmdlZFByb3BzIiwiZGVzY3JpcHRpb24iLCJydWxlcyIsImZlZWRiYWNrIiwidmFsaWRhdGVTdGF0dXMiLCJfbWVyZ2VkUHJvcHMkY2xhc3NOYW0iLCJjbGFzc05hbWUiLCJfbWVyZ2VkUHJvcHMkcHJlZml4Q2wiLCJwcmVmaXhDbHMiLCJoaWRkZW4iLCJ0cmFuc2Zvcm0iLCJjb2xQcm9wcyIsIm1vZGVQcm9wIiwibW9kZSIsIl9tZXJnZWRQcm9wcyRlbXB0eVRleCIsInZhbGlkYXRlRGVib3VuY2UiLCJ2YWxpZGF0ZVRyaWdnZXIiLCJtZXJnZWRNb2RlIiwiaXNSZWFkb25seSIsIl91c2VGb3JtSXRlbSIsInVzZUZvcm1JdGVtIiwiZmllbGRFcnJvciIsImZpZWxkV2FybmluZyIsInNpemUiLCJsYWJlbEFsaWduIiwiaW5qZWN0RmllbGQiLCJvd25UcmFuc2Zvcm1SZWYiLCJ1c2VSZWYiLCJvd25WYWx1ZVR5cGVSZWYiLCJwcmV2VHJhbnNmb3JtIiwiY3VycmVudCIsInVucmVnaXN0ZXJUcmFuc2Zvcm0iLCJmbiIsInJlZ2lzdGVyVHJhbnNmb3JtIiwicHJldlZhbHVlVHlwZSIsInVucmVnaXN0ZXJWYWx1ZVR5cGUiLCJyZWdpc3RlclZhbHVlVHlwZSIsInVzZUVmZmVjdCIsInRyYW5zZm9ybVJlZyIsInZhbHVlVHlwZVJlZyIsInYiLCJjb250cm9sQ2hpbGQiLCJpbmplY3RlZCIsImlzVmFsaWRFbGVtZW50IiwiY2xhc3NlcyIsImNsYXNzbmFtZXMiLCJpdGVtR2FwIiwibGF5b3V0IiwiZ2FwU3R5bGUiLCJtYXJnaW5Cb3R0b20iLCJjb25jYXQiLCJzaGVsbCIsIl9qc3hzIiwiam9pbkNscyIsInN0eWxlIiwiVHlwb2dyYXBoeUxhYmVsIiwiYXMiLCJzdHJvbmciLCJGT1JNX0xBQkVMX1NJWkVTIiwiY29sb3IiLCJGT1JNX0xBQkVMX0NPTE9SIiwiVHlwb2dyYXBoeUJvZHkiLCJGT1JNX0RFU0NSSVBUSU9OX1NJWkUiLCJGT1JNX0RFU0NSSVBUSU9OX0NPTE9SIiwiSWNvbnMiLCJGT1JNX01FU1NBR0VfSUNPTl9TSVpFIiwiRk9STV9FUlJPUl9TSVpFIiwiRk9STV9FUlJPUl9DT0xPUiIsIkZPUk1fV0FSTklOR19TSVpFIiwiRk9STV9XQVJOSU5HX0NPTE9SIiwiRk9STV9GRUVEQkFDS19TSVpFIiwiRk9STV9GRUVEQkFDS19DT0xPUiIsImdyaWQiLCJfbWVyZ2VkJHNwYW4iLCJzcGFuIiwiREVGQVVMVF9DT0xfU1BBTiIsInNtIiwibWQiLCJsZyIsIkNvbCIsIlByb0Zvcm1JdGVtIiwiZXhwb3J0cyIsIl9kZWZhdWx0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDQUEsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsS0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FB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aWxlIjoiY29tcG9uZW50cy9Qcm9Gb3JtL1Byb0Zvcm1JdGVtLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCBSZWFjdCwgeyBtZW1vLCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IENvbCB9IGZyb20gJy4uL0dyaWQnO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi9JY29ucyc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Qm9keSwgVHlwb2dyYXBoeUxhYmVsIH0gZnJvbSAnLi4vVHlwb2dyYXBoeSc7XG5pbXBvcnQgeyBkZWZhdWx0IGFzIGNsYXNzbmFtZXMsIGpvaW5DbHMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IHVzZUZvcm1JdGVtIH0gZnJvbSAnLi9jb3JlL3VzZUZvcm1JdGVtJztcbmltcG9ydCB7IEZPUk1fRVJST1JfQ09MT1IsIEZPUk1fRVJST1JfU0laRSwgRk9STV9NRVNTQUdFX0lDT05fU0laRSwgRk9STV9XQVJOSU5HX0NPTE9SLCBGT1JNX1dBUk5JTkdfU0laRSwgRk9STV9ERVNDUklQVElPTl9DT0xPUiwgRk9STV9ERVNDUklQVElPTl9TSVpFLCBGT1JNX0ZFRURCQUNLX0NPTE9SLCBGT1JNX0ZFRURCQUNLX1NJWkUsIEZPUk1fTEFCRUxfQ09MT1IsIEZPUk1fTEFCRUxfU0laRVMsIH0gZnJvbSAnLi9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB1c2VQcm9Gb3JtU3RhYmxlLCB1c2VQcm9Gb3JtU3RvcmUgfSBmcm9tICcuL2NvbnRleHQnO1xuaW1wb3J0IHsgdXNlU3RvcmVTZWxlY3Rvciwgc2hhbGxvd0VxdWFsQXJyYXlzIH0gZnJvbSAnLi9jb3JlL2Zvcm1TdG9yZSc7XG5pbXBvcnQgeyByZXNvbHZlVmFsdWUgfSBmcm9tICcuL2NvcmUvcGF0aFV0aWxzJztcbmltcG9ydCB7IERFRkFVTFRfQ09MX1NQQU4gfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB2YWx1ZUVudW1Ub09wdGlvbnMsIGZvcm1hdERhdGVCeVBhdHRlcm4sIERBVEVfRk9STUFULCBEQVRFX1RJTUVfRk9STUFUIH0gZnJvbSAnLi91dGlscyc7XG5jb25zdCBFTVBUWV9URVhUX0RFRkFVTFQgPSAnLSc7XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJlYWQtbW9kZSByZW5kZXJpbmcgZm9yIGVhY2ggc3VwcG9ydGVkIHZhbHVlVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5mdW5jdGlvbiByZW5kZXJCeVZhbHVlVHlwZSh2YWx1ZVR5cGUsIHZhbHVlLCBwcm9wcykge1xuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSAnJylcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgc3dpdGNoICh2YWx1ZVR5cGUpIHtcbiAgICAgICAgY2FzZSAncGFzc3dvcmQnOlxuICAgICAgICAgICAgcmV0dXJuICcqJy5yZXBlYXQoU3RyaW5nKHZhbHVlKS5sZW5ndGgpO1xuICAgICAgICBjYXNlICdzd2l0Y2gnOlxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlID8gJ09uJyA6ICdPZmYnO1xuICAgICAgICBjYXNlICdkaWdpdCc6IHtcbiAgICAgICAgICAgIGNvbnN0IG51bSA9IE51bWJlcih2YWx1ZSk7XG4gICAgICAgICAgICBpZiAoTnVtYmVyLmlzTmFOKG51bSkpXG4gICAgICAgICAgICAgICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gbnVtLnRvTG9jYWxlU3RyaW5nKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAnc2VsZWN0JzpcbiAgICAgICAgY2FzZSAncmFkaW8nOlxuICAgICAgICBjYXNlICd0YWcnOiB7XG4gICAgICAgICAgICBpZiAoIXByb3BzLnZhbHVlRW51bSlcbiAgICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB2YWx1ZUVudW1Ub09wdGlvbnMocHJvcHMudmFsdWVFbnVtKTtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gb3B0aW9ucy5maW5kKChvKSA9PiBTdHJpbmcoby52YWx1ZSkgPT09IFN0cmluZyh2YWx1ZSkpO1xuICAgICAgICAgICAgcmV0dXJuIG1hdGNoID8gbWF0Y2gubGFiZWwgOiBTdHJpbmcodmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSA/IGZvcm1hdERhdGVCeVBhdHRlcm4odmFsdWUsIERBVEVfRk9STUFUKSA6IFN0cmluZyh2YWx1ZSk7XG4gICAgICAgIGNhc2UgJ2RhdGVUaW1lJzpcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIERhdGUgPyBmb3JtYXREYXRlQnlQYXR0ZXJuKHZhbHVlLCBEQVRFX1RJTUVfRk9STUFUKSA6IFN0cmluZyh2YWx1ZSk7XG4gICAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgfVxufVxuY29uc3QgUmVhZG9ubHlDaGlsZEJhc2UgPSAoeyBuYW1lLCB2YWx1ZVR5cGUsIHZhbHVlRW51bSwgY29udmVydFZhbHVlLCByZWFkb25seVJlbmRlciwgZW1wdHlUZXh0LCB9KSA9PiB7XG4gICAgY29uc3Qgc3RvcmUgPSB1c2VQcm9Gb3JtU3RvcmUoKTtcbiAgICAvLyBTdWJzY3JpYmUgcGVyLWZpZWxkOyBvbmx5IGEgY3VzdG9tIHJlYWRvbmx5UmVuZGVyICh3aGljaCByZWNlaXZlcyBBTExcbiAgICAvLyB2YWx1ZXMpIG5lZWRzIHRvIHRyYWNrIHRoZSB3aG9sZSB2YWx1ZXMgb2JqZWN0LlxuICAgIGNvbnN0IFtyYXcsIGFsbFZhbHVlc10gPSB1c2VTdG9yZVNlbGVjdG9yKHN0b3JlLCAoc3RhdGUpID0+IFtcbiAgICAgICAgbmFtZSA/IHJlc29sdmVWYWx1ZShzdGF0ZS52YWx1ZXMsIG5hbWUpIDogdW5kZWZpbmVkLFxuICAgICAgICByZWFkb25seVJlbmRlciA/IHN0YXRlLnZhbHVlcyA6IHVuZGVmaW5lZCxcbiAgICBdLCBzaGFsbG93RXF1YWxBcnJheXMpO1xuICAgIGNvbnN0IHZhbHVlID0gY29udmVydFZhbHVlICYmIG5hbWUgPyBjb252ZXJ0VmFsdWUocmF3LCBuYW1lKSA6IHJhdztcbiAgICBpZiAocmVhZG9ubHlSZW5kZXIpIHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHJlYWRvbmx5UmVuZGVyKHZhbHVlLCBhbGxWYWx1ZXMgIT09IG51bGwgJiYgYWxsVmFsdWVzICE9PSB2b2lkIDAgPyBhbGxWYWx1ZXMgOiBzdG9yZS5nZXRTdGF0ZSgpLnZhbHVlcyk7XG4gICAgICAgIHJldHVybiBfanN4KFwic3BhblwiLCB7IGNoaWxkcmVuOiBub2RlICE9PSBudWxsICYmIG5vZGUgIT09IHZvaWQgMCA/IG5vZGUgOiBlbXB0eVRleHQgfSk7XG4gICAgfVxuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSAnJykge1xuICAgICAgICByZXR1cm4gX2pzeChcInNwYW5cIiwgeyBjaGlsZHJlbjogZW1wdHlUZXh0IH0pO1xuICAgIH1cbiAgICBjb25zdCByZW5kZXJlZCA9IHJlbmRlckJ5VmFsdWVUeXBlKHZhbHVlVHlwZSwgdmFsdWUsIHsgdmFsdWVFbnVtIH0pO1xuICAgIHJldHVybiBfanN4KFwic3BhblwiLCB7IGNoaWxkcmVuOiByZW5kZXJlZCAhPT0gbnVsbCAmJiByZW5kZXJlZCAhPT0gdm9pZCAwID8gcmVuZGVyZWQgOiBlbXB0eVRleHQgfSk7XG59O1xuUmVhZG9ubHlDaGlsZEJhc2UuZGlzcGxheU5hbWUgPSAnUHJvRm9ybUl0ZW1SZWFkb25seSc7XG5jb25zdCBSZWFkb25seUNoaWxkID0gbWVtbyhSZWFkb25seUNoaWxkQmFzZSk7XG5jb25zdCBDb252ZXJ0VmFsdWVDaGlsZEJhc2UgPSAoeyBuYW1lLCBjb252ZXJ0VmFsdWUsIHZhbHVlUHJvcE5hbWUgPSAndmFsdWUnLCBjaGlsZHJlbiwgfSkgPT4ge1xuICAgIGNvbnN0IHN0b3JlID0gdXNlUHJvRm9ybVN0b3JlKCk7XG4gICAgY29uc3QgcmF3ID0gdXNlU3RvcmVTZWxlY3RvcihzdG9yZSwgKHN0YXRlKSA9PiByZXNvbHZlVmFsdWUoc3RhdGUudmFsdWVzLCBuYW1lKSk7XG4gICAgY29uc3QgY29udmVydGVkID0gY29udmVydFZhbHVlID8gY29udmVydFZhbHVlKHJhdywgbmFtZSkgOiByYXc7XG4gICAgcmV0dXJuIFJlYWN0LmNsb25lRWxlbWVudChjaGlsZHJlbiwgeyBbdmFsdWVQcm9wTmFtZV06IGNvbnZlcnRlZCB9KTtcbn07XG5Db252ZXJ0VmFsdWVDaGlsZEJhc2UuZGlzcGxheU5hbWUgPSAnUHJvRm9ybUl0ZW1Db252ZXJ0VmFsdWUnO1xuY29uc3QgQ29udmVydFZhbHVlQ2hpbGQgPSBtZW1vKENvbnZlcnRWYWx1ZUNoaWxkQmFzZSk7XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFByb0Zvcm1JdGVtXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmNvbnN0IFByb0Zvcm1JdGVtQmFzZSA9IChwcm9wcykgPT4ge1xuICAgIHZhciBfYTtcbiAgICAvLyBTdGFibGUgc2xpY2Ugb25seSDigJQgdmFsdWUvZXJyb3IgcmVhY3Rpdml0eSBsaXZlcyBpbiB1c2VGb3JtSXRlbSdzXG4gICAgLy8gcGVyLWZpZWxkIHN1YnNjcmlwdGlvbiwgc28gdGhpcyBzaGVsbCBuZXZlciByZS1yZW5kZXJzIGZvciBzaWJsaW5ncy5cbiAgICBjb25zdCBjdHggPSB1c2VQcm9Gb3JtU3RhYmxlKCk7XG4gICAgLy8gRm9ybS1sZXZlbCBgZm9ybUl0ZW1Qcm9wc2AgYWN0IGFzIERFRkFVTFRTOyBwcm9wcyBleHBsaWNpdGx5IHNldCBvbiB0aGVcbiAgICAvLyBpdGVtIHdpbi4gSlNYIGZyZXF1ZW50bHkgcGFzc2VzIGB1bmRlZmluZWRgIGZvciB1bnNldCBwcm9wcyAoZS5nLiB0aGVcbiAgICAvLyBjcmVhdGVQcm9Gb3JtRmllbGQgcGFzcy10aHJvdWdoKSwgc28gb25seSBkZWZpbmVkIHZhbHVlcyBtYXkgb3ZlcnJpZGUuXG4gICAgbGV0IG1lcmdlZFByb3BzID0gcHJvcHM7XG4gICAgaWYgKGN0eC5mb3JtSXRlbVByb3BzKSB7XG4gICAgICAgIGNvbnN0IG1lcmdlZCA9IE9iamVjdC5hc3NpZ24oe30sIGN0eC5mb3JtSXRlbVByb3BzKTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMocHJvcHMpKSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHByb3BzW2tleV07XG4gICAgICAgICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICBtZXJnZWRba2V5XSA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIG1lcmdlZFByb3BzID0gbWVyZ2VkO1xuICAgIH1cbiAgICBjb25zdCB7IGNoaWxkcmVuLCBuYW1lLCBsYWJlbCwgZGVzY3JpcHRpb24sIHJ1bGVzLCBmZWVkYmFjaywgdmFsaWRhdGVTdGF0dXMsIGNsYXNzTmFtZSA9ICcnLCBwcmVmaXhDbHMgPSAnZm9ybS1pdGVtJywgaGlkZGVuLCB0cmFuc2Zvcm0sIGNvbnZlcnRWYWx1ZSwgdmFsdWVUeXBlLCByZWFkb25seVJlbmRlciwgY29sUHJvcHMsIG1vZGU6IG1vZGVQcm9wLCBlbXB0eVRleHQgPSBFTVBUWV9URVhUX0RFRkFVTFQsIHZhbHVlRW51bSwgdmFsdWVQcm9wTmFtZSwgdmFsaWRhdGVEZWJvdW5jZSwgdmFsaWRhdGVUcmlnZ2VyLCB9ID0gbWVyZ2VkUHJvcHM7XG4gICAgY29uc3QgbWVyZ2VkTW9kZSA9IG1vZGVQcm9wICE9PSBudWxsICYmIG1vZGVQcm9wICE9PSB2b2lkIDAgPyBtb2RlUHJvcCA6IGN0eC5tb2RlO1xuICAgIGNvbnN0IGlzUmVhZG9ubHkgPSBtZXJnZWRNb2RlID09PSAncmVhZCc7XG4gICAgY29uc3QgeyBmaWVsZEVycm9yLCBmaWVsZFdhcm5pbmcsIHNpemUsIGxhYmVsQWxpZ24sIGluamVjdEZpZWxkLCB9ID0gdXNlRm9ybUl0ZW0oe1xuICAgICAgICBuYW1lLFxuICAgICAgICBydWxlcyxcbiAgICAgICAgdmFsaWRhdGVTdGF0dXMsXG4gICAgICAgIHZhbHVlUHJvcE5hbWUsXG4gICAgICAgIHZhbGlkYXRlRGVib3VuY2UsXG4gICAgICAgIHZhbGlkYXRlVHJpZ2dlcixcbiAgICB9KTtcbiAgICAvLyBSZWdpc3RlciB0cmFuc2Zvcm0gLyB2YWx1ZVR5cGUgRFVSSU5HIHJlbmRlciAoaWRlbXBvdGVudCByZWYgd3JpdGVzLCBsaWtlXG4gICAgLy8gcmVnaXN0ZXJGaWVsZCk6IGNvbnN1bWVycyByZW5kZXJlZCBsYXRlciBpbiB0aGUgc2FtZSBwYXNzIOKAlCBlLmcuIGFcbiAgICAvLyBEZXBlbmRlbmN5IHJlYWRpbmcgZm9ybWF0dGVkIHZhbHVlcyDigJQgbXVzdCBhbHJlYWR5IHNlZSB0aGVtLiBFZmZlY3RzXG4gICAgLy8gd291bGQgcmVnaXN0ZXIgdG9vIGxhdGUgKGFmdGVyIHRoZSB3aG9sZSB0cmVlIHJlbmRlcmVkKS5cbiAgICAvL1xuICAgIC8vIEVhY2ggaW5zdGFuY2UgdHJhY2tzIHRoZSB7bmFtZSwgdmFsdWV9IFBBSVIgaXQgcmVnaXN0ZXJlZC4gUmVtb3ZhbCBpc1xuICAgIC8vIGFsd2F5cyBwZXJmb3JtZWQgd2l0aCB0aGUgcGFpcidzIG93biBuYW1lIEFORCB2YWx1ZTogYW4gaXRlbSB3aXRob3V0IGFcbiAgICAvLyB0cmFuc2Zvcm0gbmV2ZXIgdG91Y2hlcyBhIHNhbWUtbmFtZSBzaWJsaW5nJ3MgcmVnaXN0cmF0aW9uLCBhbiB1bm1vdW50XG4gICAgLy8gY2xlYW51cCBjYW4ndCB3aXBlIGEgc3VjY2Vzc29yJ3MgKHZhbHVlLWd1YXJkZWQpLCBhbmQgYSBOQU1FIGNoYW5nZVxuICAgIC8vIHJlbW92ZXMgdGhlIG9sZCBuYW1lJ3MgZW50cnkgd2l0aCB0aGUgT0xEIHZhbHVlIGJlZm9yZSB0aGUgcmVmIGlzXG4gICAgLy8gb3ZlcndyaXR0ZW4gKGEgbGl2ZSBzaW5nbGUtdmFsdWUgcmVmIHdvdWxkIGxlYWsgaXQpLlxuICAgIGNvbnN0IG93blRyYW5zZm9ybVJlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBvd25WYWx1ZVR5cGVSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgcHJldlRyYW5zZm9ybSA9IG93blRyYW5zZm9ybVJlZi5jdXJyZW50O1xuICAgIGlmIChwcmV2VHJhbnNmb3JtICYmIChwcmV2VHJhbnNmb3JtLm5hbWUgIT09IG5hbWUgfHwgIXRyYW5zZm9ybSkpIHtcbiAgICAgICAgY3R4LnVucmVnaXN0ZXJUcmFuc2Zvcm0ocHJldlRyYW5zZm9ybS5uYW1lLCBwcmV2VHJhbnNmb3JtLmZuKTtcbiAgICAgICAgb3duVHJhbnNmb3JtUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH1cbiAgICBpZiAobmFtZSAmJiB0cmFuc2Zvcm0pIHtcbiAgICAgICAgY3R4LnJlZ2lzdGVyVHJhbnNmb3JtKG5hbWUsIHRyYW5zZm9ybSk7XG4gICAgICAgIG93blRyYW5zZm9ybVJlZi5jdXJyZW50ID0geyBuYW1lLCBmbjogdHJhbnNmb3JtIH07XG4gICAgfVxuICAgIGNvbnN0IHByZXZWYWx1ZVR5cGUgPSBvd25WYWx1ZVR5cGVSZWYuY3VycmVudDtcbiAgICBpZiAocHJldlZhbHVlVHlwZSAmJiAocHJldlZhbHVlVHlwZS5uYW1lICE9PSBuYW1lIHx8ICF2YWx1ZVR5cGUpKSB7XG4gICAgICAgIGN0eC51bnJlZ2lzdGVyVmFsdWVUeXBlKHByZXZWYWx1ZVR5cGUubmFtZSwgcHJldlZhbHVlVHlwZS52YWx1ZVR5cGUpO1xuICAgICAgICBvd25WYWx1ZVR5cGVSZWYuY3VycmVudCA9IG51bGw7XG4gICAgfVxuICAgIGlmIChuYW1lICYmIHZhbHVlVHlwZSkge1xuICAgICAgICBjdHgucmVnaXN0ZXJWYWx1ZVR5cGUobmFtZSwgdmFsdWVUeXBlKTtcbiAgICAgICAgb3duVmFsdWVUeXBlUmVmLmN1cnJlbnQgPSB7IG5hbWUsIHZhbHVlVHlwZSB9O1xuICAgIH1cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICAvLyBSRS1SRUdJU1RFUiBpbiB0aGUgYm9keTogU3RyaWN0TW9kZSdzIG1vdW504oaSY2xlYW51cOKGknJlLXJ1biBjeWNsZSBhbmRcbiAgICAgICAgLy8ga2V5ZWQgcmVtb3VudHMgKG9sZCBpbnN0YW5jZSdzIGNsZWFudXAgcnVucyBBRlRFUiB0aGUgbmV3IHJlbmRlclxuICAgICAgICAvLyByZWdpc3RlcmVkKSBib3RoIGVuZCB3aXRoIGEgY2xlYW51cCBoYXZpbmcgZGVsZXRlZCB0aGUgZW50cnkg4oCUIHRoZVxuICAgICAgICAvLyBlZmZlY3QgYm9keSBtdXN0IHJlc3RvcmUgdGhlIGxhdGVzdCByZWdpc3RyYXRpb24uXG4gICAgICAgIGNvbnN0IHRyYW5zZm9ybVJlZyA9IG93blRyYW5zZm9ybVJlZi5jdXJyZW50O1xuICAgICAgICBpZiAodHJhbnNmb3JtUmVnKVxuICAgICAgICAgICAgY3R4LnJlZ2lzdGVyVHJhbnNmb3JtKHRyYW5zZm9ybVJlZy5uYW1lLCB0cmFuc2Zvcm1SZWcuZm4pO1xuICAgICAgICBjb25zdCB2YWx1ZVR5cGVSZWcgPSBvd25WYWx1ZVR5cGVSZWYuY3VycmVudDtcbiAgICAgICAgaWYgKHZhbHVlVHlwZVJlZylcbiAgICAgICAgICAgIGN0eC5yZWdpc3RlclZhbHVlVHlwZSh2YWx1ZVR5cGVSZWcubmFtZSwgdmFsdWVUeXBlUmVnLnZhbHVlVHlwZSk7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0ID0gb3duVHJhbnNmb3JtUmVmLmN1cnJlbnQ7XG4gICAgICAgICAgICBpZiAodClcbiAgICAgICAgICAgICAgICBjdHgudW5yZWdpc3RlclRyYW5zZm9ybSh0Lm5hbWUsIHQuZm4pO1xuICAgICAgICAgICAgY29uc3QgdiA9IG93blZhbHVlVHlwZVJlZi5jdXJyZW50O1xuICAgICAgICAgICAgaWYgKHYpXG4gICAgICAgICAgICAgICAgY3R4LnVucmVnaXN0ZXJWYWx1ZVR5cGUodi5uYW1lLCB2LnZhbHVlVHlwZSk7XG4gICAgICAgIH07XG4gICAgfSwgW25hbWUsIGN0eC5yZWdpc3RlclRyYW5zZm9ybSwgY3R4LnVucmVnaXN0ZXJUcmFuc2Zvcm0sIGN0eC5yZWdpc3RlclZhbHVlVHlwZSwgY3R4LnVucmVnaXN0ZXJWYWx1ZVR5cGVdKTtcbiAgICBpZiAoaGlkZGVuKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBsZXQgY29udHJvbENoaWxkO1xuICAgIGlmIChpc1JlYWRvbmx5KSB7XG4gICAgICAgIGNvbnRyb2xDaGlsZCA9IChfanN4KFJlYWRvbmx5Q2hpbGQsIHsgbmFtZTogbmFtZSwgdmFsdWVUeXBlOiB2YWx1ZVR5cGUsIHZhbHVlRW51bTogdmFsdWVFbnVtLCBjb252ZXJ0VmFsdWU6IGNvbnZlcnRWYWx1ZSwgcmVhZG9ubHlSZW5kZXI6IHJlYWRvbmx5UmVuZGVyLCBlbXB0eVRleHQ6IGVtcHR5VGV4dCB9KSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvLyBJbmplY3QgZmlyc3Qgc28gdGhlIHJlYWwgZmllbGQgcmVjZWl2ZXMgdmFsdWUvb25DaGFuZ2Uvb25CbHVyLFxuICAgICAgICAvLyB0aGVuIG9wdGlvbmFsbHkgd3JhcCBpbiBDb252ZXJ0VmFsdWVDaGlsZCB0byBvdmVycmlkZSB0aGUgZGlzcGxheWVkIHZhbHVlLlxuICAgICAgICBjb25zdCBpbmplY3RlZCA9IGluamVjdEZpZWxkKGNoaWxkcmVuKTtcbiAgICAgICAgaWYgKGNvbnZlcnRWYWx1ZSAmJiBuYW1lICYmIFJlYWN0LmlzVmFsaWRFbGVtZW50KGluamVjdGVkKSkge1xuICAgICAgICAgICAgY29udHJvbENoaWxkID0gKF9qc3goQ29udmVydFZhbHVlQ2hpbGQsIHsgbmFtZTogbmFtZSwgY29udmVydFZhbHVlOiBjb252ZXJ0VmFsdWUsIHZhbHVlUHJvcE5hbWU6IHZhbHVlUHJvcE5hbWUsIGNoaWxkcmVuOiBpbmplY3RlZCB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb250cm9sQ2hpbGQgPSBpbmplY3RlZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhwcmVmaXhDbHMpO1xuICAgIC8vIEZvcm0tbGV2ZWwgbGF5b3V0Lml0ZW1HYXAgb3ZlcnJpZGVzIHRoZSBzaXplLWNsYXNzIG1hcmdpbiAoaW5saW5lIHN0eWxlXG4gICAgLy8gd2lucyk7IGl0ZW1HYXA9MCBpcyBtZWFuaW5nZnVsLlxuICAgIGNvbnN0IGl0ZW1HYXAgPSAoX2EgPSBjdHgubGF5b3V0KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaXRlbUdhcDtcbiAgICBjb25zdCBnYXBTdHlsZSA9IGl0ZW1HYXAgIT09IHVuZGVmaW5lZFxuICAgICAgICA/IHsgbWFyZ2luQm90dG9tOiB0eXBlb2YgaXRlbUdhcCA9PT0gJ251bWJlcicgPyBgJHtpdGVtR2FwfXB4YCA6IGl0ZW1HYXAgfVxuICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCBzaGVsbCA9IChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3Nlcyh1bmRlZmluZWQsIGpvaW5DbHMoY2xhc3NlcyhzaXplKSwgY2xhc3NOYW1lKSksIHN0eWxlOiBnYXBTdHlsZSwgY2hpbGRyZW46IFtsYWJlbCAmJiAoX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2xhYmVsLXdyYXBwZXInLCBqb2luQ2xzKGNsYXNzZXMoJ2xhYmVsLXdyYXBwZXItdmVydGljYWwnKSwgbGFiZWxBbGlnbiAmJiBjbGFzc2VzKGBsYWJlbC13cmFwcGVyLSR7bGFiZWxBbGlnbn1gKSkpLCBjaGlsZHJlbjogW19qc3goVHlwb2dyYXBoeUxhYmVsLCB7IGFzOiBcImxhYmVsXCIsIHN0cm9uZzogdHJ1ZSwgc2l6ZTogRk9STV9MQUJFTF9TSVpFU1tzaXplXSwgY29sb3I6IEZPUk1fTEFCRUxfQ09MT1IsIGNsYXNzTmFtZTogY2xhc3NlcygnbGFiZWwnKSwgY2hpbGRyZW46IGxhYmVsIH0pLCBkZXNjcmlwdGlvbiAmJiAoX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBhczogXCJkaXZcIiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdkZXNjcmlwdGlvbicpLCBzaXplOiBGT1JNX0RFU0NSSVBUSU9OX1NJWkUsIGNvbG9yOiBGT1JNX0RFU0NSSVBUSU9OX0NPTE9SLCBjaGlsZHJlbjogZGVzY3JpcHRpb24gfSkpXSB9KSksIF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdjb250cm9sJyksIGNoaWxkcmVuOiBbY29udHJvbENoaWxkLCBmaWVsZEVycm9yICYmIChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnZXJyb3InKSwgY2hpbGRyZW46IFtfanN4KEljb25zLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnbWVzc2FnZS1pY29uJyksIG5hbWU6IFwiZXJyb3JcIiwgc2l6ZTogRk9STV9NRVNTQUdFX0lDT05fU0laRSB9KSwgX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBhczogXCJzcGFuXCIsIHNpemU6IEZPUk1fRVJST1JfU0laRSwgY29sb3I6IEZPUk1fRVJST1JfQ09MT1IsIGNoaWxkcmVuOiBmaWVsZEVycm9yIH0pXSB9KSksICFmaWVsZEVycm9yICYmIGZpZWxkV2FybmluZyAmJiAoX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBhczogXCJkaXZcIiwgY2xhc3NOYW1lOiBjbGFzc2VzKCd3YXJuaW5nJyksIHNpemU6IEZPUk1fV0FSTklOR19TSVpFLCBjb2xvcjogRk9STV9XQVJOSU5HX0NPTE9SLCBjaGlsZHJlbjogZmllbGRXYXJuaW5nIH0pKSwgIWZpZWxkRXJyb3IgJiYgIWZpZWxkV2FybmluZyAmJiBmZWVkYmFjayAmJiAoX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBhczogXCJkaXZcIiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdmZWVkYmFjaycpLCBzaXplOiBGT1JNX0ZFRURCQUNLX1NJWkUsIGNvbG9yOiBGT1JNX0ZFRURCQUNLX0NPTE9SLCBjaGlsZHJlbjogZmVlZGJhY2sgfSkpXSB9KV0gfSkpO1xuICAgIGlmIChjdHguZ3JpZCkge1xuICAgICAgICBjb25zdCBtZXJnZWQgPSBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGN0eC5jb2xQcm9wcyksIGNvbFByb3BzKTtcbiAgICAgICAgY29uc3QgeyBzcGFuID0gREVGQVVMVF9DT0xfU1BBTiwgc20sIG1kLCBsZyB9ID0gbWVyZ2VkO1xuICAgICAgICByZXR1cm4gX2pzeChDb2wsIHsgc3Bhbjogc3Bhbiwgc206IHNtLCBtZDogbWQsIGxnOiBsZywgY2hpbGRyZW46IHNoZWxsIH0pO1xuICAgIH1cbiAgICByZXR1cm4gc2hlbGw7XG59O1xuUHJvRm9ybUl0ZW1CYXNlLmRpc3BsYXlOYW1lID0gJ1Byb0Zvcm1JdGVtJztcbmV4cG9ydCBjb25zdCBQcm9Gb3JtSXRlbSA9IG1lbW8oUHJvRm9ybUl0ZW1CYXNlKTtcbmV4cG9ydCBkZWZhdWx0IFByb0Zvcm1JdGVtOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
340
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfR3JpZCIsIl9JY29ucyIsIl9UeXBvZ3JhcGh5IiwiX2NsYXNzbmFtZXMiLCJfdXNlRm9ybUl0ZW0yIiwiX2NvbnN0YW50cyIsIl9jb250ZXh0IiwiX2Zvcm1TdG9yZSIsIl9wYXRoVXRpbHMiLCJfY29uc3RhbnRzMiIsIl91dGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkVNUFRZX1RFWFRfREVGQVVMVCIsInJlbmRlckJ5VmFsdWVUeXBlIiwidmFsdWVUeXBlIiwidmFsdWUiLCJwcm9wcyIsInVuZGVmaW5lZCIsInJlcGVhdCIsIlN0cmluZyIsImxlbmd0aCIsIm51bSIsIk51bWJlciIsImlzTmFOIiwidG9Mb2NhbGVTdHJpbmciLCJ2YWx1ZUVudW0iLCJvcHRpb25zIiwidmFsdWVFbnVtVG9PcHRpb25zIiwibWF0Y2giLCJmaW5kIiwibyIsImxhYmVsIiwiRGF0ZSIsImZvcm1hdERhdGVCeVBhdHRlcm4iLCJEQVRFX0ZPUk1BVCIsIkRBVEVfVElNRV9GT1JNQVQiLCJSZWFkb25seUNoaWxkQmFzZSIsIl9yZWYiLCJuYW1lIiwiY29udmVydFZhbHVlIiwicmVhZG9ubHlSZW5kZXIiLCJlbXB0eVRleHQiLCJzdG9yZSIsInVzZVByb0Zvcm1TdG9yZSIsIl91c2VTdG9yZVNlbGVjdG9yIiwidXNlU3RvcmVTZWxlY3RvciIsInN0YXRlIiwicmVzb2x2ZVZhbHVlIiwidmFsdWVzIiwic2hhbGxvd0VxdWFsQXJyYXlzIiwiX3VzZVN0b3JlU2VsZWN0b3IyIiwiX3NsaWNlZFRvQXJyYXkyIiwicmF3IiwiYWxsVmFsdWVzIiwibm9kZSIsImdldFN0YXRlIiwiX2pzeCIsImNoaWxkcmVuIiwicmVuZGVyZWQiLCJkaXNwbGF5TmFtZSIsIlJlYWRvbmx5Q2hpbGQiLCJtZW1vIiwiQ29udmVydFZhbHVlQ2hpbGRCYXNlIiwiX3JlZjIiLCJfcmVmMiR2YWx1ZVByb3BOYW1lIiwidmFsdWVQcm9wTmFtZSIsImNvbnZlcnRlZCIsIlJlYWN0IiwiY2xvbmVFbGVtZW50IiwiX2RlZmluZVByb3BlcnR5MiIsIkNvbnZlcnRWYWx1ZUNoaWxkIiwiUHJvRm9ybUl0ZW1CYXNlIiwiX2EiLCJjdHgiLCJ1c2VQcm9Gb3JtU3RhYmxlIiwibWVyZ2VkUHJvcHMiLCJmb3JtSXRlbVByb3BzIiwibWVyZ2VkIiwiYXNzaWduIiwiX2kiLCJfT2JqZWN0JGtleXMiLCJrZXlzIiwia2V5IiwiX21lcmdlZFByb3BzIiwiX21lcmdlZFByb3BzJHJlcXVpcmVkIiwicmVxdWlyZWQiLCJkZXNjcmlwdGlvbiIsInJ1bGVzIiwiZmVlZGJhY2siLCJ2YWxpZGF0ZVN0YXR1cyIsIl9tZXJnZWRQcm9wcyRjbGFzc05hbSIsImNsYXNzTmFtZSIsIl9tZXJnZWRQcm9wcyRwcmVmaXhDbCIsInByZWZpeENscyIsImhpZGRlbiIsInRyYW5zZm9ybSIsImNvbFByb3BzIiwibW9kZVByb3AiLCJtb2RlIiwiX21lcmdlZFByb3BzJGVtcHR5VGV4IiwidmFsaWRhdGVEZWJvdW5jZSIsInZhbGlkYXRlVHJpZ2dlciIsIm1lcmdlZE1vZGUiLCJpc1JlYWRvbmx5IiwiX3VzZUZvcm1JdGVtIiwidXNlRm9ybUl0ZW0iLCJmaWVsZEVycm9yIiwiZmllbGRXYXJuaW5nIiwic2l6ZSIsImxhYmVsQWxpZ24iLCJpbmplY3RGaWVsZCIsIm93blRyYW5zZm9ybVJlZiIsInVzZVJlZiIsIm93blZhbHVlVHlwZVJlZiIsInByZXZUcmFuc2Zvcm0iLCJjdXJyZW50IiwidW5yZWdpc3RlclRyYW5zZm9ybSIsImZuIiwicmVnaXN0ZXJUcmFuc2Zvcm0iLCJwcmV2VmFsdWVUeXBlIiwidW5yZWdpc3RlclZhbHVlVHlwZSIsInJlZ2lzdGVyVmFsdWVUeXBlIiwidXNlRWZmZWN0IiwidHJhbnNmb3JtUmVnIiwidmFsdWVUeXBlUmVnIiwidiIsImNvbnRyb2xDaGlsZCIsImluamVjdGVkIiwiaXNWYWxpZEVsZW1lbnQiLCJjbGFzc2VzIiwiY2xhc3NuYW1lcyIsIml0ZW1HYXAiLCJsYXlvdXQiLCJnYXBTdHlsZSIsIm1hcmdpbkJvdHRvbSIsImNvbmNhdCIsInNoZWxsIiwiX2pzeHMiLCJqb2luQ2xzIiwic3R5bGUiLCJUeXBvZ3JhcGh5TGFiZWwiLCJhcyIsInN0cm9uZyIsIkZPUk1fTEFCRUxfU0laRVMiLCJjb2xvciIsIkZPUk1fTEFCRUxfQ09MT1IiLCJpdGFsaWMiLCJGT1JNX09QVElPTkFMX0NPTE9SIiwiRk9STV9PUFRJT05BTF9URVhUIiwiVHlwb2dyYXBoeUJvZHkiLCJGT1JNX0RFU0NSSVBUSU9OX1NJWkUiLCJGT1JNX0RFU0NSSVBUSU9OX0NPTE9SIiwiSWNvbnMiLCJGT1JNX01FU1NBR0VfSUNPTl9TSVpFIiwiRk9STV9FUlJPUl9TSVpFIiwiRk9STV9FUlJPUl9DT0xPUiIsIkZPUk1fV0FSTklOR19TSVpFIiwiRk9STV9XQVJOSU5HX0NPTE9SIiwiRk9STV9GRUVEQkFDS19TSVpFIiwiRk9STV9GRUVEQkFDS19DT0xPUiIsImdyaWQiLCJfbWVyZ2VkJHNwYW4iLCJzcGFuIiwiREVGQVVMVF9DT0xfU1BBTiIsInNtIiwibWQiLCJsZyIsIkNvbCIsIlByb0Zvcm1JdGVtIiwiZXhwb3J0cyIsIl9kZWZhdWx0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDQUEsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsS0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sV0FBQSxHQUFBSix1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQU8sYUFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsVUFBQSxHQUFBUixPQUFBO0FBZUEsSUFBQVMsUUFBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsVUFBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsVUFBQSxHQUFBWCxPQUFBO0FBQ0EsSUFBQVksV0FBQSxHQUFBWixPQUFBO0FBQ0EsSUFBQWEsTUFBQSxHQUFBYixPQUFBO0FBQWlHLFNBQUFjLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBYix3QkFBQWEsQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsT0FBQVEsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZCxDQUFBLG9CQUFBYyxDQUFBLE9BQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBaEIsQ0FBQSxFQUFBYyxDQUFBLFNBQUFHLENBQUEsR0FBQVAsQ0FBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFiLENBQUEsRUFBQWMsQ0FBQSxVQUFBRyxDQUFBLEtBQUFBLENBQUEsQ0FBQVYsR0FBQSxJQUFBVSxDQUFBLENBQUFDLEdBQUEsSUFBQVAsTUFBQSxDQUFBQyxjQUFBLENBQUFKLENBQUEsRUFBQU0sQ0FBQSxFQUFBRyxDQUFBLElBQUFULENBQUEsQ0FBQU0sQ0FBQSxJQUFBZCxDQUFBLENBQUFjLENBQUEsWUFBQU4sQ0FBQSxjQUFBUixDQUFBLEVBQUFHLENBQUEsSUFBQUEsQ0FBQSxDQUFBZSxHQUFBLENBQUFsQixDQUFBLEVBQUFRLENBQUEsR0FBQUEsQ0FBQTtBQUlqRyxJQUFNVyxrQkFBa0IsR0FBRyxHQUFHO0FBRTlCO0FBQ0E7QUFDQTtBQUNBLFNBQVNDLGlCQUFpQkEsQ0FDeEJDLFNBQXVDLEVBQ3ZDQyxLQUFVLEVBQ1ZDLEtBQTBDLEVBQUE7RUFFMUMsSUFBSUQsS0FBSyxLQUFLLElBQUksSUFBSUEsS0FBSyxLQUFLRSxTQUFTLElBQUlGLEtBQUssS0FBSyxFQUFFLEVBQUUsT0FBTyxJQUFJO0VBRXRFLFFBQVFELFNBQVM7SUFDZixLQUFLLFVBQVU7TUFDYixPQUFPLEdBQUcsQ0FBQ0ksTUFBTSxDQUFDQyxNQUFNLENBQUNKLEtBQUssQ0FBQyxDQUFDSyxNQUFNLENBQUM7SUFDekMsS0FBSyxRQUFRO01BQ1gsT0FBT0wsS0FBSyxHQUFHLElBQUksR0FBRyxLQUFLO0lBQzdCLEtBQUssT0FBTztNQUFFO1FBQ1osSUFBTU0sR0FBRyxHQUFHQyxNQUFNLENBQUNQLEtBQUssQ0FBQztRQUN6QixJQUFJTyxNQUFNLENBQUNDLEtBQUssQ0FBQ0YsR0FBRyxDQUFDLEVBQUUsT0FBT0YsTUFBTSxDQUFDSixLQUFLLENBQUM7UUFDM0MsT0FBT00sR0FBRyxDQUFDRyxjQUFjLENBQUEsQ0FBRTtNQUM3QjtJQUNBLEtBQUssUUFBUTtJQUNiLEtBQUssT0FBTztJQUNaLEtBQUssS0FBSztNQUFFO1FBQ1YsSUFBSSxDQUFDUixLQUFLLENBQUNTLFNBQVMsRUFBRSxPQUFPTixNQUFNLENBQUNKLEtBQUssQ0FBQztRQUMxQyxJQUFNVyxPQUFPLEdBQUcsSUFBQUMseUJBQWtCLEVBQUNYLEtBQUssQ0FBQ1MsU0FBUyxDQUFDO1FBQ25ELElBQU1HLEtBQUssR0FBR0YsT0FBTyxDQUFDRyxJQUFJLENBQUMsVUFBQ0MsQ0FBQztVQUFBLE9BQUtYLE1BQU0sQ0FBQ1csQ0FBQyxDQUFDZixLQUFLLENBQUMsS0FBS0ksTUFBTSxDQUFDSixLQUFLLENBQUM7UUFBQSxFQUFDO1FBQ3BFLE9BQU9hLEtBQUssR0FBR0EsS0FBSyxDQUFDRyxLQUFLLEdBQUdaLE1BQU0sQ0FBQ0osS0FBSyxDQUFDO01BQzVDO0lBQ0EsS0FBSyxNQUFNO01BQ1QsT0FBT0EsS0FBSyxZQUFZaUIsSUFBSSxHQUFHLElBQUFDLDBCQUFtQixFQUFDbEIsS0FBSyxFQUFFbUIsa0JBQVcsQ0FBQyxHQUFHZixNQUFNLENBQUNKLEtBQUssQ0FBQztJQUN4RixLQUFLLFVBQVU7TUFDYixPQUFPQSxLQUFLLFlBQVlpQixJQUFJLEdBQUcsSUFBQUMsMEJBQW1CLEVBQUNsQixLQUFLLEVBQUVvQix1QkFBZ0IsQ0FBQyxHQUFHaEIsTUFBTSxDQUFDSixLQUFLLENBQUM7SUFDN0YsS0FBSyxNQUFNO0lBQ1g7TUFDRSxPQUFPSSxNQUFNLENBQUNKLEtBQUssQ0FBQztFQUN4QjtBQUNGO0FBY0EsSUFBTXFCLGlCQUFpQixHQUEyQixTQUE1Q0EsaUJBQWlCQSxDQUFBQyxJQUFBLEVBT2xCO0VBQUEsSUFOSEMsSUFBSSxHQUFBRCxJQUFBLENBQUpDLElBQUk7SUFDSnhCLFNBQVMsR0FBQXVCLElBQUEsQ0FBVHZCLFNBQVM7SUFDVFcsU0FBUyxHQUFBWSxJQUFBLENBQVRaLFNBQVM7SUFDVGMsWUFBWSxHQUFBRixJQUFBLENBQVpFLFlBQVk7SUFDWkMsY0FBYyxHQUFBSCxJQUFBLENBQWRHLGNBQWM7SUFDZEMsU0FBUyxHQUFBSixJQUFBLENBQVRJLFNBQVM7RUFFVCxJQUFNQyxLQUFLLEdBQUcsSUFBQUMsd0JBQWUsRUFBQSxDQUFFO0VBQy9CO0VBQ0E7RUFDQSxJQUFBQyxpQkFBQSxHQUF5QixJQUFBQywyQkFBZ0IsRUFDdkNILEtBQUssRUFDTCxVQUFDSSxLQUFLO01BQUEsT0FBNkMsQ0FDakRSLElBQUksR0FBRyxJQUFBUyx1QkFBWSxFQUFDRCxLQUFLLENBQUNFLE1BQU0sRUFBRVYsSUFBSSxDQUFDLEdBQUdyQixTQUFTLEVBQ25EdUIsY0FBYyxHQUFHTSxLQUFLLENBQUNFLE1BQU0sR0FBRy9CLFNBQVMsQ0FDMUM7SUFBQSxHQUNEZ0MsNkJBQWtCLENBQ25CO0lBQUFDLGtCQUFBLE9BQUFDLGVBQUEsYUFBQVAsaUJBQUE7SUFQTVEsR0FBRyxHQUFBRixrQkFBQTtJQUFFRyxTQUFTLEdBQUFILGtCQUFBO0VBUXJCLElBQU1uQyxLQUFLLEdBQUd3QixZQUFZLElBQUlELElBQUksR0FBR0MsWUFBWSxDQUFDYSxHQUFHLEVBQUVkLElBQUksQ0FBQyxHQUFHYyxHQUFHO0VBRWxFLElBQUlaLGNBQWMsRUFBRTtJQUNsQixJQUFNYyxJQUFJLEdBQUdkLGNBQWMsQ0FBQ3pCLEtBQUssRUFBRXNDLFNBQVMsS0FBQSxJQUFBLElBQVRBLFNBQVMsS0FBQSxLQUFBLENBQUEsR0FBVEEsU0FBUyxHQUFJWCxLQUFLLENBQUNhLFFBQVEsQ0FBQSxDQUFFLENBQUNQLE1BQU0sQ0FBQztJQUN4RSxPQUFPLElBQUFRLGVBQUEsRUFBQSxNQUFBLEVBQUE7TUFBQUMsUUFBQSxFQUFPSCxJQUFJLEtBQUEsSUFBQSxJQUFKQSxJQUFJLEtBQUEsS0FBQSxDQUFBLEdBQUpBLElBQUksR0FBSWI7SUFBUyxDQUFBLENBQVE7RUFDekM7RUFFQSxJQUFJMUIsS0FBSyxLQUFLLElBQUksSUFBSUEsS0FBSyxLQUFLRSxTQUFTLElBQUlGLEtBQUssS0FBSyxFQUFFLEVBQUU7SUFDekQsT0FBTyxJQUFBeUMsZUFBQSxFQUFBLE1BQUEsRUFBQTtNQUFBQyxRQUFBLEVBQU9oQjtJQUFTLENBQUEsQ0FBUTtFQUNqQztFQUVBLElBQU1pQixRQUFRLEdBQUc3QyxpQkFBaUIsQ0FBQ0MsU0FBUyxFQUFFQyxLQUFLLEVBQUU7SUFBRVUsU0FBUyxFQUFUQTtFQUFTLENBQUUsQ0FBQztFQUNuRSxPQUFPLElBQUErQixlQUFBLEVBQUEsTUFBQSxFQUFBO0lBQUFDLFFBQUEsRUFBT0MsUUFBUSxLQUFBLElBQUEsSUFBUkEsUUFBUSxLQUFBLEtBQUEsQ0FBQSxHQUFSQSxRQUFRLEdBQUlqQjtFQUFTLENBQUEsQ0FBUTtBQUM3QyxDQUFDO0FBRURMLGlCQUFpQixDQUFDdUIsV0FBVyxHQUFHLHFCQUFxQjtBQUNyRCxJQUFNQyxhQUFhLGdCQUFHLElBQUFDLFdBQUksRUFBQ3pCLGlCQUFpQixDQUFDO0FBYTdDLElBQU0wQixxQkFBcUIsR0FBK0IsU0FBcERBLHFCQUFxQkEsQ0FBQUMsS0FBQSxFQUt0QjtFQUFBLElBSkh6QixJQUFJLEdBQUF5QixLQUFBLENBQUp6QixJQUFJO0lBQ0pDLFlBQVksR0FBQXdCLEtBQUEsQ0FBWnhCLFlBQVk7SUFBQXlCLG1CQUFBLEdBQUFELEtBQUEsQ0FDWkUsYUFBYTtJQUFiQSxhQUFhLEdBQUFELG1CQUFBLGNBQUcsT0FBTyxHQUFBQSxtQkFBQTtJQUN2QlAsUUFBUSxHQUFBTSxLQUFBLENBQVJOLFFBQVE7RUFFUixJQUFNZixLQUFLLEdBQUcsSUFBQUMsd0JBQWUsRUFBQSxDQUFFO0VBQy9CLElBQU1TLEdBQUcsR0FBRyxJQUFBUCwyQkFBZ0IsRUFBQ0gsS0FBSyxFQUFFLFVBQUNJLEtBQUs7SUFBQSxPQUFLLElBQUFDLHVCQUFZLEVBQUNELEtBQUssQ0FBQ0UsTUFBTSxFQUFFVixJQUFJLENBQUM7RUFBQSxFQUFDO0VBQ2hGLElBQU00QixTQUFTLEdBQUczQixZQUFZLEdBQUdBLFlBQVksQ0FBQ2EsR0FBRyxFQUFFZCxJQUFJLENBQUMsR0FBR2MsR0FBRztFQUM5RCxvQkFBT2UsaUJBQUssQ0FBQ0MsWUFBWSxDQUFDWCxRQUFRLE1BQUFZLGdCQUFBLGlCQUFLSixhQUFhLEVBQUdDLFNBQVMsQ0FBeUIsQ0FBQztBQUM1RixDQUFDO0FBRURKLHFCQUFxQixDQUFDSCxXQUFXLEdBQUcseUJBQXlCO0FBQzdELElBQU1XLGlCQUFpQixnQkFBRyxJQUFBVCxXQUFJLEVBQUNDLHFCQUFxQixDQUFDO0FBRXJEO0FBQ0E7QUFDQTtBQUNBLElBQU1TLGVBQWUsR0FBeUIsU0FBeENBLGVBQWVBLENBQTBCdkQsS0FBSyxFQUFJO0VEbEVwRCxJQUFJd0QsRUFBRTtFQ21FUjtFQUNBO0VBQ0EsSUFBTUMsR0FBRyxHQUFHLElBQUFDLHlCQUFnQixFQUFBLENBQUU7RUFFOUI7RUFDQTtFQUNBO0VBQ0EsSUFBSUMsV0FBVyxHQUFHM0QsS0FBSztFQUN2QixJQUFJeUQsR0FBRyxDQUFDRyxhQUFhLEVBQUU7SUFDckIsSUFBTUMsTUFBTSxHQUFBekUsTUFBQSxDQUFBMEUsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUE2QkwsR0FBRyxDQUFDRyxhQUFhLENBQUU7SUFDNUQsU0FBQUcsRUFBQSxNQUFBQyxZQUFBLEdBQWtCNUUsTUFBTSxDQUFDNkUsSUFBSSxDQUFDakUsS0FBSyxDQUFDLEVBQUErRCxFQUFBLEdBQUFDLFlBQUEsQ0FBQTVELE1BQUEsRUFBQTJELEVBQUEsSUFBRTtNQUFqQyxJQUFNRyxHQUFHLEdBQUFGLFlBQUEsQ0FBQUQsRUFBQTtNQUNaLElBQU1oRSxLQUFLLEdBQUlDLEtBQTZCLENBQUNrRSxHQUFHLENBQUM7TUFDakQsSUFBSW5FLEtBQUssS0FBS0UsU0FBUyxFQUFFNEQsTUFBTSxDQUFDSyxHQUFHLENBQUMsR0FBR25FLEtBQUs7SUFDOUM7SUFDQTRELFdBQVcsR0FBR0UsTUFBMEI7RUFDMUM7RUFFQSxJQUFBTSxZQUFBLEdBdUJJUixXQUFXO0lBdEJibEIsUUFBUSxHQUFBMEIsWUFBQSxDQUFSMUIsUUFBUTtJQUNSbkIsSUFBSSxHQUFBNkMsWUFBQSxDQUFKN0MsSUFBSTtJQUNKUCxLQUFLLEdBQUFvRCxZQUFBLENBQUxwRCxLQUFLO0lBQUFxRCxxQkFBQSxHQUFBRCxZQUFBLENBQ0xFLFFBQVE7SUFBUkEsUUFBUSxHQUFBRCxxQkFBQSxjQUFHLElBQUksR0FBQUEscUJBQUE7SUFDZkUsV0FBVyxHQUFBSCxZQUFBLENBQVhHLFdBQVc7SUFDWEMsS0FBSyxHQUFBSixZQUFBLENBQUxJLEtBQUs7SUFDTEMsUUFBUSxHQUFBTCxZQUFBLENBQVJLLFFBQVE7SUFDUkMsY0FBYyxHQUFBTixZQUFBLENBQWRNLGNBQWM7SUFBQUMscUJBQUEsR0FBQVAsWUFBQSxDQUNkUSxTQUFTO0lBQVRBLFNBQVMsR0FBQUQscUJBQUEsY0FBRyxFQUFFLEdBQUFBLHFCQUFBO0lBQUFFLHFCQUFBLEdBQUFULFlBQUEsQ0FDZFUsU0FBUztJQUFUQSxTQUFTLEdBQUFELHFCQUFBLGNBQUcsV0FBVyxHQUFBQSxxQkFBQTtJQUN2QkUsTUFBTSxHQUFBWCxZQUFBLENBQU5XLE1BQU07SUFDTkMsU0FBUyxHQUFBWixZQUFBLENBQVRZLFNBQVM7SUFDVHhELFlBQVksR0FBQTRDLFlBQUEsQ0FBWjVDLFlBQVk7SUFDWnpCLFNBQVMsR0FBQXFFLFlBQUEsQ0FBVHJFLFNBQVM7SUFDVDBCLGNBQWMsR0FBQTJDLFlBQUEsQ0FBZDNDLGNBQWM7SUFDZHdELFFBQVEsR0FBQWIsWUFBQSxDQUFSYSxRQUFRO0lBQ0ZDLFFBQVEsR0FBQWQsWUFBQSxDQUFkZSxJQUFJO0lBQUFDLHFCQUFBLEdBQUFoQixZQUFBLENBQ0oxQyxTQUFTO0lBQVRBLFNBQVMsR0FBQTBELHFCQUFBLGNBQUd2RixrQkFBa0IsR0FBQXVGLHFCQUFBO0lBQzlCMUUsU0FBUyxHQUFBMEQsWUFBQSxDQUFUMUQsU0FBUztJQUNUd0MsYUFBYSxHQUFBa0IsWUFBQSxDQUFibEIsYUFBYTtJQUNibUMsZ0JBQWdCLEdBQUFqQixZQUFBLENBQWhCaUIsZ0JBQWdCO0lBQ2hCQyxlQUFlLEdBQUFsQixZQUFBLENBQWZrQixlQUFlO0VBR2pCLElBQU1DLFVBQVUsR0FBR0wsUUFBUSxLQUFBLElBQUEsSUFBUkEsUUFBUSxLQUFBLEtBQUEsQ0FBQSxHQUFSQSxRQUFRLEdBQUl4QixHQUFHLENBQUN5QixJQUFJO0VBQ3ZDLElBQU1LLFVBQVUsR0FBR0QsVUFBVSxLQUFLLE1BQU07RUFFeEMsSUFBQUUsWUFBQSxHQU1JLElBQUFDLHlCQUFXLEVBQUM7TUFDZG5FLElBQUksRUFBSkEsSUFBSTtNQUNKaUQsS0FBSyxFQUFMQSxLQUFLO01BQ0xFLGNBQWMsRUFBZEEsY0FBYztNQUNkeEIsYUFBYSxFQUFiQSxhQUFhO01BQ2JtQyxnQkFBZ0IsRUFBaEJBLGdCQUFnQjtNQUNoQkMsZUFBZSxFQUFmQTtJRGpHQSxDQ2tHRCxDQUFDO0lBWkFLLFVBQVUsR0FBQUYsWUFBQSxDQUFWRSxVQUFVO0lBQ1ZDLFlBQVksR0FBQUgsWUFBQSxDQUFaRyxZQUFZO0lBQ1pDLElBQUksR0FBQUosWUFBQSxDQUFKSSxJQUFJO0lBQ0pDLFVBQVUsR0FBQUwsWUFBQSxDQUFWSyxVQUFVO0lBQ1ZDLFdBQVcsR0FBQU4sWUFBQSxDQUFYTSxXQUFXO0VBVWI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLElBQU1DLGVBQWUsR0FBRyxJQUFBQyxhQUFNLEVBQXVELElBQUksQ0FBQztFQUMxRixJQUFNQyxlQUFlLEdBQUcsSUFBQUQsYUFBTSxFQUF1RCxJQUFJLENBQUM7RUFFMUYsSUFBTUUsYUFBYSxHQUFHSCxlQUFlLENBQUNJLE9BQU87RUFDN0MsSUFBSUQsYUFBYSxLQUFLQSxhQUFhLENBQUM1RSxJQUFJLEtBQUtBLElBQUksSUFBSSxDQUFDeUQsU0FBUyxDQUFDLEVBQUU7SUFDaEV0QixHQUFHLENBQUMyQyxtQkFBbUIsQ0FBQ0YsYUFBYSxDQUFDNUUsSUFBSSxFQUFFNEUsYUFBYSxDQUFDRyxFQUFFLENBQUM7SUFDN0ROLGVBQWUsQ0FBQ0ksT0FBTyxHQUFHLElBQUk7RUFDaEM7RUFDQSxJQUFJN0UsSUFBSSxJQUFJeUQsU0FBUyxFQUFFO0lBQ3JCdEIsR0FBRyxDQUFDNkMsaUJBQWlCLENBQUNoRixJQUFJLEVBQUV5RCxTQUFTLENBQUM7SUFDdENnQixlQUFlLENBQUNJLE9BQU8sR0FBRztNQUFFN0UsSUFBSSxFQUFKQSxJQUFJO01BQUUrRSxFQUFFLEVBQUV0QjtJQUFTLENBQUU7RUFDbkQ7RUFFQSxJQUFNd0IsYUFBYSxHQUFHTixlQUFlLENBQUNFLE9BQU87RUFDN0MsSUFBSUksYUFBYSxLQUFLQSxhQUFhLENBQUNqRixJQUFJLEtBQUtBLElBQUksSUFBSSxDQUFDeEIsU0FBUyxDQUFDLEVBQUU7SUFDaEUyRCxHQUFHLENBQUMrQyxtQkFBbUIsQ0FBQ0QsYUFBYSxDQUFDakYsSUFBSSxFQUFFaUYsYUFBYSxDQUFDekcsU0FBUyxDQUFDO0lBQ3BFbUcsZUFBZSxDQUFDRSxPQUFPLEdBQUcsSUFBSTtFQUNoQztFQUNBLElBQUk3RSxJQUFJLElBQUl4QixTQUFTLEVBQUU7SUFDckIyRCxHQUFHLENBQUNnRCxpQkFBaUIsQ0FBQ25GLElBQUksRUFBRXhCLFNBQVMsQ0FBQztJQUN0Q21HLGVBQWUsQ0FBQ0UsT0FBTyxHQUFHO01BQUU3RSxJQUFJLEVBQUpBLElBQUk7TUFBRXhCLFNBQVMsRUFBVEE7SUFBUyxDQUFFO0VBQy9DO0VBRUEsSUFBQTRHLGdCQUFTLEVBQUMsWUFBSztJQUNiO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsSUFBTUMsWUFBWSxHQUFHWixlQUFlLENBQUNJLE9BQU87SUFDNUMsSUFBSVEsWUFBWSxFQUFFbEQsR0FBRyxDQUFDNkMsaUJBQWlCLENBQUNLLFlBQVksQ0FBQ3JGLElBQUksRUFBRXFGLFlBQVksQ0FBQ04sRUFBRSxDQUFDO0lBQzNFLElBQU1PLFlBQVksR0FBR1gsZUFBZSxDQUFDRSxPQUFPO0lBQzVDLElBQUlTLFlBQVksRUFBRW5ELEdBQUcsQ0FBQ2dELGlCQUFpQixDQUFDRyxZQUFZLENBQUN0RixJQUFJLEVBQUVzRixZQUFZLENBQUM5RyxTQUFTLENBQUM7SUFDbEYsT0FBTyxZQUFLO01BQ1YsSUFBTWxCLENBQUMsR0FBR21ILGVBQWUsQ0FBQ0ksT0FBTztNQUNqQyxJQUFJdkgsQ0FBQyxFQUFFNkUsR0FBRyxDQUFDMkMsbUJBQW1CLENBQUN4SCxDQUFDLENBQUMwQyxJQUFJLEVBQUUxQyxDQUFDLENBQUN5SCxFQUFFLENBQUM7TUFDNUMsSUFBTVEsQ0FBQyxHQUFHWixlQUFlLENBQUNFLE9BQU87TUFDakMsSUFBSVUsQ0FBQyxFQUFFcEQsR0FBRyxDQUFDK0MsbUJBQW1CLENBQUNLLENBQUMsQ0FBQ3ZGLElBQUksRUFBRXVGLENBQUMsQ0FBQy9HLFNBQVMsQ0FBQztJQUNyRCxDQUFDO0VBQ0gsQ0FBQyxFQUFFLENBQUN3QixJQUFJLEVBQUVtQyxHQUFHLENBQUM2QyxpQkFBaUIsRUFBRTdDLEdBQUcsQ0FBQzJDLG1CQUFtQixFQUFFM0MsR0FBRyxDQUFDZ0QsaUJBQWlCLEVBQUVoRCxHQUFHLENBQUMrQyxtQkFBbUIsQ0FBQyxDQUFDO0VBRTFHLElBQUkxQixNQUFNLEVBQUUsT0FBTyxJQUFJO0VBRXZCLElBQUlnQyxZQUF1QjtFQUMzQixJQUFJdkIsVUFBVSxFQUFFO0lBQ2R1QixZQUFZLEdBQ1YsSUFBQXRFLGVBQUEsRUFBQ0ksYUFBYSxFQUFBO01BQ1p0QixJQUFJLEVBQUVBLElBQUk7TUFDVnhCLFNBQVMsRUFBRUEsU0FBUztNQUNwQlcsU0FBUyxFQUFFQSxTQUFTO01BQ3BCYyxZQUFZLEVBQUVBLFlBQVk7TUFDMUJDLGNBQWMsRUFBRUEsY0FBYztNQUM5QkMsU0FBUyxFQUFFQTtJQUFTLENBQUEsQ0FFdkI7RUFDSCxDQUFDLE1BQU07SUFDTDtJQUNBO0lBQ0EsSUFBTXNGLFFBQVEsR0FBR2pCLFdBQVcsQ0FBQ3JELFFBQVEsQ0FBQztJQUN0QyxJQUFJbEIsWUFBWSxJQUFJRCxJQUFJLGlCQUFJNkIsaUJBQUssQ0FBQzZELGNBQWMsQ0FBQ0QsUUFBUSxDQUFDLEVBQUU7TUFDMURELFlBQVksR0FDVixJQUFBdEUsZUFBQSxFQUFDYyxpQkFBaUIsRUFBQTtRQUFDaEMsSUFBSSxFQUFFQSxJQUFJO1FBQUVDLFlBQVksRUFBRUEsWUFBWTtRQUFFMEIsYUFBYSxFQUFFQSxhQUFhO1FBQUFSLFFBQUEsRUFDcEZzRTtNQUE4QixDQUFBLENBRWxDO0lBQ0gsQ0FBQyxNQUFNO01BQ0xELFlBQVksR0FBR0MsUUFBUTtJQUN6QjtFQUNGO0VBRUEsSUFBTUUsT0FBTyxHQUFHLElBQUFDLHNCQUFVLEVBQUNyQyxTQUFTLENBQUM7RUFFckM7RUFDQTtFQUNBLElBQU1zQyxPQUFPLEdBQUcsQ0FBQTNELEVBQUEsR0FBQUMsR0FBRyxDQUFDMkQsTUFBTSxNQUFBLElBQUEsSUFBQTVELEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxDQUFFMkQsT0FBTztFQUNuQyxJQUFNRSxRQUFRLEdBQ1pGLE9BQU8sS0FBS2xILFNBQVMsR0FDakI7SUFBRXFILFlBQVksRUFBRSxPQUFPSCxPQUFPLEtBQUssUUFBUSxNQUFBSSxNQUFBLENBQU1KLE9BQU8sVUFBT0E7RUFBTyxDQUFFLEdBQ3hFbEgsU0FBUztFQUVmLElBQU11SCxLQUFLLEdBQ1QsSUFBQUMsZ0JBQUEsRUFBQSxLQUFBLEVBQUE7SUFDRTlDLFNBQVMsRUFBRXNDLE9BQU8sQ0FDaEJoSCxTQUFTLEVBQ1QsSUFBQXlILG1CQUFPLEVBQUNULE9BQU8sQ0FBQ3JCLElBQUksQ0FBQyxFQUFFakIsU0FBUyxDQUFDLENBQ2xDO0lBQ0RnRCxLQUFLLEVBQUVOLFFBQVE7SUFBQTVFLFFBQUEsRUFBQSxDQUVkMUIsS0FBSyxJQUNKLElBQUEwRyxnQkFBQSxFQUFBLEtBQUEsRUFBQTtNQUNFOUMsU0FBUyxFQUFFc0MsT0FBTyxDQUNoQixlQUFlLEVBQ2YsSUFBQVMsbUJBQU8sRUFDTFQsT0FBTyxDQUFDLHdCQUF3QixDQUFDLEVBQ2pDcEIsVUFBVSxJQUFJb0IsT0FBTyxrQkFBQU0sTUFBQSxDQUFrQjFCLFVBQVUsQ0FBRSxDQUFDLENBQ3JELENBQ0Y7TUFBQXBELFFBQUEsRUFBQSxDQU9ELElBQUFnRixnQkFBQSxFQUFDRywyQkFBZSxFQUFBO1FBQ2RDLEVBQUUsRUFBQyxPQUFPO1FBQ1ZDLE1BQU0sRUFBQSxJQUFBO1FBQ05sQyxJQUFJLEVBQUVtQywyQkFBZ0IsQ0FBQ25DLElBQUksQ0FBQztRQUM1Qm9DLEtBQUssRUFBRUMsMkJBQWdCO1FBQ3ZCdEQsU0FBUyxFQUFFc0MsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUFBeEUsUUFBQSxFQUFBLENBRTFCMUIsS0FBSyxFQUNMLENBQUNzRCxRQUFRLElBQ1IsSUFBQTdCLGVBQUEsRUFBQ29GLDJCQUFlLEVBQUE7VUFDZEMsRUFBRSxFQUFDLE1BQU07VUFDVEssTUFBTSxFQUFBLElBQUE7VUFDTkosTUFBTSxFQUFBLElBQUE7VUFDTm5ELFNBQVMsRUFBRXNDLE9BQU8sQ0FBQyxVQUFVLENBQUM7VUFDOUJyQixJQUFJLEVBQUVtQywyQkFBZ0IsQ0FBQ25DLElBQUksQ0FBQztVQUM1Qm9DLEtBQUssRUFBRUcsOEJBQW1CO1VBQUExRixRQUFBLEVBRXpCMkY7UUFBa0IsQ0FBQSxDQUV0QjtNQUFBLENBQUEsQ0FDZSxFQUNqQjlELFdBQVcsSUFDVixJQUFBOUIsZUFBQSxFQUFDNkYsMEJBQWMsRUFBQTtRQUNiUixFQUFFLEVBQUMsS0FBSztRQUNSbEQsU0FBUyxFQUFFc0MsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUNqQ3JCLElBQUksRUFBRTBDLGdDQUFxQjtRQUMzQk4sS0FBSyxFQUFFTyxpQ0FBc0I7UUFBQTlGLFFBQUEsRUFFNUI2QjtNQUFXLENBQUEsQ0FFZjtJQUFBLENBQUEsQ0FFSixFQUVELElBQUFtRCxnQkFBQSxFQUFBLEtBQUEsRUFBQTtNQUFLOUMsU0FBUyxFQUFFc0MsT0FBTyxDQUFDLFNBQVMsQ0FBQztNQUFBeEUsUUFBQSxFQUFBLENBQy9CcUUsWUFBWSxFQUtacEIsVUFBVSxJQUNULElBQUErQixnQkFBQSxFQUFBLEtBQUEsRUFBQTtRQUFLOUMsU0FBUyxFQUFFc0MsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUFBeEUsUUFBQSxFQUFBLENBQzlCLElBQUFELGVBQUEsRUFBQ2dHLFlBQUssRUFBQTtVQUFDN0QsU0FBUyxFQUFFc0MsT0FBTyxDQUFDLGNBQWMsQ0FBQztVQUFFM0YsSUFBSSxFQUFDLE9BQU87VUFBQ3NFLElBQUksRUFBRTZDO1FBQXNCLENBQUEsQ0FBSSxFQUN4RixJQUFBakcsZUFBQSxFQUFDNkYsMEJBQWMsRUFBQTtVQUFDUixFQUFFLEVBQUMsTUFBTTtVQUFDakMsSUFBSSxFQUFFOEMsMEJBQWU7VUFBRVYsS0FBSyxFQUFFVywyQkFBZ0I7VUFBQWxHLFFBQUEsRUFDckVpRDtRQUFVLENBQUEsQ0FDSTtNQUFBLENBQUEsQ0FFcEIsRUFFQSxDQUFDQSxVQUFVLElBQUlDLFlBQVksSUFDMUIsSUFBQW5ELGVBQUEsRUFBQzZGLDBCQUFjLEVBQUE7UUFDYlIsRUFBRSxFQUFDLEtBQUs7UUFDUmxELFNBQVMsRUFBRXNDLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDN0JyQixJQUFJLEVBQUVnRCw0QkFBaUI7UUFDdkJaLEtBQUssRUFBRWEsNkJBQWtCO1FBQUFwRyxRQUFBLEVBRXhCa0Q7TUFBWSxDQUFBLENBRWhCLEVBRUEsQ0FBQ0QsVUFBVSxJQUFJLENBQUNDLFlBQVksSUFBSW5CLFFBQVEsSUFDdkMsSUFBQWhDLGVBQUEsRUFBQzZGLDBCQUFjLEVBQUE7UUFDYlIsRUFBRSxFQUFDLEtBQUs7UUFDUmxELFNBQVMsRUFBRXNDLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDOUJyQixJQUFJLEVBQUVrRCw2QkFBa0I7UUFDeEJkLEtBQUssRUFBRWUsOEJBQW1CO1FBQUF0RyxRQUFBLEVBRXpCK0I7TUFBUSxDQUFBLENBRVo7SUFBQSxDQUFBLENBQ0c7RUFBQSxDQUFBLENBRVQ7RUFFRCxJQUFJZixHQUFHLENBQUN1RixJQUFJLEVBQUU7SUFDWixJQUFNbkYsT0FBTSxHQUFBekUsTUFBQSxDQUFBMEUsTUFBQSxDQUFBMUUsTUFBQSxDQUFBMEUsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFRTCxHQUFHLENBQUN1QixRQUFRLENBQUEsRUFBS0EsUUFBUSxDQUFFO0lBQy9DLElBQUFpRSxZQUFBLEdBQWdEcEYsT0FBTSxDQUE5Q3FGLElBQUk7TUFBSkEsSUFBSSxHQUFBRCxZQUFBLGNBQUdFLDRCQUFnQixHQUFBRixZQUFBO01BQUVHLEVBQUUsR0FBYXZGLE9BQU0sQ0FBckJ1RixFQUFFO01BQUVDLEVBQUUsR0FBU3hGLE9BQU0sQ0FBakJ3RixFQUFFO01BQUVDLEVBQUUsR0FBS3pGLE9BQU0sQ0FBYnlGLEVBQUU7SUFDM0MsT0FBTyxJQUFBOUcsZUFBQSxFQUFDK0csU0FBRyxFQUFBO01BQUNMLElBQUksRUFBRUEsSUFBSTtNQUFFRSxFQUFFLEVBQUVBLEVBQUU7TUFBRUMsRUFBRSxFQUFFQSxFQUFFO01BQUVDLEVBQUUsRUFBRUEsRUFBRTtNQUFBN0csUUFBQSxFQUFHK0U7SUFBSyxDQUFBLENBQU87RUFDL0Q7RUFFQSxPQUFPQSxLQUFLO0FBQ2QsQ0FBQztBQUVEakUsZUFBZSxDQUFDWixXQUFXLEdBQUcsYUFBYTtBQVlwQyxJQUFNNkcsV0FBVyxHQUFBQyxPQUFBLENBQUFELFdBQUEsZ0JBQUcsSUFBQTNHLFdBQUksRUFBQ1UsZUFBZSxDQUFnQztBQUFDLElBQUFtRyxRQUFBLEdBQUFELE9BQUEsY0FFakVELFdBQVciLCJmaWxlIjoiY29tcG9uZW50cy9Qcm9Gb3JtL1Byb0Zvcm1JdGVtLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCBSZWFjdCwgeyBtZW1vLCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IENvbCB9IGZyb20gJy4uL0dyaWQnO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi9JY29ucyc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Qm9keSwgVHlwb2dyYXBoeUxhYmVsIH0gZnJvbSAnLi4vVHlwb2dyYXBoeSc7XG5pbXBvcnQgeyBkZWZhdWx0IGFzIGNsYXNzbmFtZXMsIGpvaW5DbHMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IHVzZUZvcm1JdGVtIH0gZnJvbSAnLi9jb3JlL3VzZUZvcm1JdGVtJztcbmltcG9ydCB7IEZPUk1fRVJST1JfQ09MT1IsIEZPUk1fRVJST1JfU0laRSwgRk9STV9NRVNTQUdFX0lDT05fU0laRSwgRk9STV9XQVJOSU5HX0NPTE9SLCBGT1JNX1dBUk5JTkdfU0laRSwgRk9STV9ERVNDUklQVElPTl9DT0xPUiwgRk9STV9ERVNDUklQVElPTl9TSVpFLCBGT1JNX0ZFRURCQUNLX0NPTE9SLCBGT1JNX0ZFRURCQUNLX1NJWkUsIEZPUk1fTEFCRUxfQ09MT1IsIEZPUk1fTEFCRUxfU0laRVMsIEZPUk1fT1BUSU9OQUxfQ09MT1IsIEZPUk1fT1BUSU9OQUxfVEVYVCwgfSBmcm9tICcuL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7IHVzZVByb0Zvcm1TdGFibGUsIHVzZVByb0Zvcm1TdG9yZSB9IGZyb20gJy4vY29udGV4dCc7XG5pbXBvcnQgeyB1c2VTdG9yZVNlbGVjdG9yLCBzaGFsbG93RXF1YWxBcnJheXMgfSBmcm9tICcuL2NvcmUvZm9ybVN0b3JlJztcbmltcG9ydCB7IHJlc29sdmVWYWx1ZSB9IGZyb20gJy4vY29yZS9wYXRoVXRpbHMnO1xuaW1wb3J0IHsgREVGQVVMVF9DT0xfU1BBTiB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IHZhbHVlRW51bVRvT3B0aW9ucywgZm9ybWF0RGF0ZUJ5UGF0dGVybiwgREFURV9GT1JNQVQsIERBVEVfVElNRV9GT1JNQVQgfSBmcm9tICcuL3V0aWxzJztcbmNvbnN0IEVNUFRZX1RFWFRfREVGQVVMVCA9ICctJztcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmVhZC1tb2RlIHJlbmRlcmluZyBmb3IgZWFjaCBzdXBwb3J0ZWQgdmFsdWVUeXBlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmZ1bmN0aW9uIHJlbmRlckJ5VmFsdWVUeXBlKHZhbHVlVHlwZSwgdmFsdWUsIHByb3BzKSB7XG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBzd2l0Y2ggKHZhbHVlVHlwZSkge1xuICAgICAgICBjYXNlICdwYXNzd29yZCc6XG4gICAgICAgICAgICByZXR1cm4gJyonLnJlcGVhdChTdHJpbmcodmFsdWUpLmxlbmd0aCk7XG4gICAgICAgIGNhc2UgJ3N3aXRjaCc6XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgPyAnT24nIDogJ09mZic7XG4gICAgICAgIGNhc2UgJ2RpZ2l0Jzoge1xuICAgICAgICAgICAgY29uc3QgbnVtID0gTnVtYmVyKHZhbHVlKTtcbiAgICAgICAgICAgIGlmIChOdW1iZXIuaXNOYU4obnVtKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybiBudW0udG9Mb2NhbGVTdHJpbmcoKTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdzZWxlY3QnOlxuICAgICAgICBjYXNlICdyYWRpbyc6XG4gICAgICAgIGNhc2UgJ3RhZyc6IHtcbiAgICAgICAgICAgIGlmICghcHJvcHMudmFsdWVFbnVtKVxuICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcodmFsdWUpO1xuICAgICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHZhbHVlRW51bVRvT3B0aW9ucyhwcm9wcy52YWx1ZUVudW0pO1xuICAgICAgICAgICAgY29uc3QgbWF0Y2ggPSBvcHRpb25zLmZpbmQoKG8pID0+IFN0cmluZyhvLnZhbHVlKSA9PT0gU3RyaW5nKHZhbHVlKSk7XG4gICAgICAgICAgICByZXR1cm4gbWF0Y2ggPyBtYXRjaC5sYWJlbCA6IFN0cmluZyh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAnZGF0ZSc6XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBEYXRlID8gZm9ybWF0RGF0ZUJ5UGF0dGVybih2YWx1ZSwgREFURV9GT1JNQVQpIDogU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgY2FzZSAnZGF0ZVRpbWUnOlxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSA/IGZvcm1hdERhdGVCeVBhdHRlcm4odmFsdWUsIERBVEVfVElNRV9GT1JNQVQpIDogU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgY2FzZSAndGV4dCc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbiAgICB9XG59XG5jb25zdCBSZWFkb25seUNoaWxkQmFzZSA9ICh7IG5hbWUsIHZhbHVlVHlwZSwgdmFsdWVFbnVtLCBjb252ZXJ0VmFsdWUsIHJlYWRvbmx5UmVuZGVyLCBlbXB0eVRleHQsIH0pID0+IHtcbiAgICBjb25zdCBzdG9yZSA9IHVzZVByb0Zvcm1TdG9yZSgpO1xuICAgIC8vIFN1YnNjcmliZSBwZXItZmllbGQ7IG9ubHkgYSBjdXN0b20gcmVhZG9ubHlSZW5kZXIgKHdoaWNoIHJlY2VpdmVzIEFMTFxuICAgIC8vIHZhbHVlcykgbmVlZHMgdG8gdHJhY2sgdGhlIHdob2xlIHZhbHVlcyBvYmplY3QuXG4gICAgY29uc3QgW3JhdywgYWxsVmFsdWVzXSA9IHVzZVN0b3JlU2VsZWN0b3Ioc3RvcmUsIChzdGF0ZSkgPT4gW1xuICAgICAgICBuYW1lID8gcmVzb2x2ZVZhbHVlKHN0YXRlLnZhbHVlcywgbmFtZSkgOiB1bmRlZmluZWQsXG4gICAgICAgIHJlYWRvbmx5UmVuZGVyID8gc3RhdGUudmFsdWVzIDogdW5kZWZpbmVkLFxuICAgIF0sIHNoYWxsb3dFcXVhbEFycmF5cyk7XG4gICAgY29uc3QgdmFsdWUgPSBjb252ZXJ0VmFsdWUgJiYgbmFtZSA/IGNvbnZlcnRWYWx1ZShyYXcsIG5hbWUpIDogcmF3O1xuICAgIGlmIChyZWFkb25seVJlbmRlcikge1xuICAgICAgICBjb25zdCBub2RlID0gcmVhZG9ubHlSZW5kZXIodmFsdWUsIGFsbFZhbHVlcyAhPT0gbnVsbCAmJiBhbGxWYWx1ZXMgIT09IHZvaWQgMCA/IGFsbFZhbHVlcyA6IHN0b3JlLmdldFN0YXRlKCkudmFsdWVzKTtcbiAgICAgICAgcmV0dXJuIF9qc3goXCJzcGFuXCIsIHsgY2hpbGRyZW46IG5vZGUgIT09IG51bGwgJiYgbm9kZSAhPT0gdm9pZCAwID8gbm9kZSA6IGVtcHR5VGV4dCB9KTtcbiAgICB9XG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgICAgIHJldHVybiBfanN4KFwic3BhblwiLCB7IGNoaWxkcmVuOiBlbXB0eVRleHQgfSk7XG4gICAgfVxuICAgIGNvbnN0IHJlbmRlcmVkID0gcmVuZGVyQnlWYWx1ZVR5cGUodmFsdWVUeXBlLCB2YWx1ZSwgeyB2YWx1ZUVudW0gfSk7XG4gICAgcmV0dXJuIF9qc3goXCJzcGFuXCIsIHsgY2hpbGRyZW46IHJlbmRlcmVkICE9PSBudWxsICYmIHJlbmRlcmVkICE9PSB2b2lkIDAgPyByZW5kZXJlZCA6IGVtcHR5VGV4dCB9KTtcbn07XG5SZWFkb25seUNoaWxkQmFzZS5kaXNwbGF5TmFtZSA9ICdQcm9Gb3JtSXRlbVJlYWRvbmx5JztcbmNvbnN0IFJlYWRvbmx5Q2hpbGQgPSBtZW1vKFJlYWRvbmx5Q2hpbGRCYXNlKTtcbmNvbnN0IENvbnZlcnRWYWx1ZUNoaWxkQmFzZSA9ICh7IG5hbWUsIGNvbnZlcnRWYWx1ZSwgdmFsdWVQcm9wTmFtZSA9ICd2YWx1ZScsIGNoaWxkcmVuLCB9KSA9PiB7XG4gICAgY29uc3Qgc3RvcmUgPSB1c2VQcm9Gb3JtU3RvcmUoKTtcbiAgICBjb25zdCByYXcgPSB1c2VTdG9yZVNlbGVjdG9yKHN0b3JlLCAoc3RhdGUpID0+IHJlc29sdmVWYWx1ZShzdGF0ZS52YWx1ZXMsIG5hbWUpKTtcbiAgICBjb25zdCBjb252ZXJ0ZWQgPSBjb252ZXJ0VmFsdWUgPyBjb252ZXJ0VmFsdWUocmF3LCBuYW1lKSA6IHJhdztcbiAgICByZXR1cm4gUmVhY3QuY2xvbmVFbGVtZW50KGNoaWxkcmVuLCB7IFt2YWx1ZVByb3BOYW1lXTogY29udmVydGVkIH0pO1xufTtcbkNvbnZlcnRWYWx1ZUNoaWxkQmFzZS5kaXNwbGF5TmFtZSA9ICdQcm9Gb3JtSXRlbUNvbnZlcnRWYWx1ZSc7XG5jb25zdCBDb252ZXJ0VmFsdWVDaGlsZCA9IG1lbW8oQ29udmVydFZhbHVlQ2hpbGRCYXNlKTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUHJvRm9ybUl0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuY29uc3QgUHJvRm9ybUl0ZW1CYXNlID0gKHByb3BzKSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIC8vIFN0YWJsZSBzbGljZSBvbmx5IOKAlCB2YWx1ZS9lcnJvciByZWFjdGl2aXR5IGxpdmVzIGluIHVzZUZvcm1JdGVtJ3NcbiAgICAvLyBwZXItZmllbGQgc3Vic2NyaXB0aW9uLCBzbyB0aGlzIHNoZWxsIG5ldmVyIHJlLXJlbmRlcnMgZm9yIHNpYmxpbmdzLlxuICAgIGNvbnN0IGN0eCA9IHVzZVByb0Zvcm1TdGFibGUoKTtcbiAgICAvLyBGb3JtLWxldmVsIGBmb3JtSXRlbVByb3BzYCBhY3QgYXMgREVGQVVMVFM7IHByb3BzIGV4cGxpY2l0bHkgc2V0IG9uIHRoZVxuICAgIC8vIGl0ZW0gd2luLiBKU1ggZnJlcXVlbnRseSBwYXNzZXMgYHVuZGVmaW5lZGAgZm9yIHVuc2V0IHByb3BzIChlLmcuIHRoZVxuICAgIC8vIGNyZWF0ZVByb0Zvcm1GaWVsZCBwYXNzLXRocm91Z2gpLCBzbyBvbmx5IGRlZmluZWQgdmFsdWVzIG1heSBvdmVycmlkZS5cbiAgICBsZXQgbWVyZ2VkUHJvcHMgPSBwcm9wcztcbiAgICBpZiAoY3R4LmZvcm1JdGVtUHJvcHMpIHtcbiAgICAgICAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbih7fSwgY3R4LmZvcm1JdGVtUHJvcHMpO1xuICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhwcm9wcykpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcHJvcHNba2V5XTtcbiAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgIG1lcmdlZFtrZXldID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgbWVyZ2VkUHJvcHMgPSBtZXJnZWQ7XG4gICAgfVxuICAgIGNvbnN0IHsgY2hpbGRyZW4sIG5hbWUsIGxhYmVsLCByZXF1aXJlZCA9IHRydWUsIGRlc2NyaXB0aW9uLCBydWxlcywgZmVlZGJhY2ssIHZhbGlkYXRlU3RhdHVzLCBjbGFzc05hbWUgPSAnJywgcHJlZml4Q2xzID0gJ2Zvcm0taXRlbScsIGhpZGRlbiwgdHJhbnNmb3JtLCBjb252ZXJ0VmFsdWUsIHZhbHVlVHlwZSwgcmVhZG9ubHlSZW5kZXIsIGNvbFByb3BzLCBtb2RlOiBtb2RlUHJvcCwgZW1wdHlUZXh0ID0gRU1QVFlfVEVYVF9ERUZBVUxULCB2YWx1ZUVudW0sIHZhbHVlUHJvcE5hbWUsIHZhbGlkYXRlRGVib3VuY2UsIHZhbGlkYXRlVHJpZ2dlciwgfSA9IG1lcmdlZFByb3BzO1xuICAgIGNvbnN0IG1lcmdlZE1vZGUgPSBtb2RlUHJvcCAhPT0gbnVsbCAmJiBtb2RlUHJvcCAhPT0gdm9pZCAwID8gbW9kZVByb3AgOiBjdHgubW9kZTtcbiAgICBjb25zdCBpc1JlYWRvbmx5ID0gbWVyZ2VkTW9kZSA9PT0gJ3JlYWQnO1xuICAgIGNvbnN0IHsgZmllbGRFcnJvciwgZmllbGRXYXJuaW5nLCBzaXplLCBsYWJlbEFsaWduLCBpbmplY3RGaWVsZCwgfSA9IHVzZUZvcm1JdGVtKHtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgcnVsZXMsXG4gICAgICAgIHZhbGlkYXRlU3RhdHVzLFxuICAgICAgICB2YWx1ZVByb3BOYW1lLFxuICAgICAgICB2YWxpZGF0ZURlYm91bmNlLFxuICAgICAgICB2YWxpZGF0ZVRyaWdnZXIsXG4gICAgfSk7XG4gICAgLy8gUmVnaXN0ZXIgdHJhbnNmb3JtIC8gdmFsdWVUeXBlIERVUklORyByZW5kZXIgKGlkZW1wb3RlbnQgcmVmIHdyaXRlcywgbGlrZVxuICAgIC8vIHJlZ2lzdGVyRmllbGQpOiBjb25zdW1lcnMgcmVuZGVyZWQgbGF0ZXIgaW4gdGhlIHNhbWUgcGFzcyDigJQgZS5nLiBhXG4gICAgLy8gRGVwZW5kZW5jeSByZWFkaW5nIGZvcm1hdHRlZCB2YWx1ZXMg4oCUIG11c3QgYWxyZWFkeSBzZWUgdGhlbS4gRWZmZWN0c1xuICAgIC8vIHdvdWxkIHJlZ2lzdGVyIHRvbyBsYXRlIChhZnRlciB0aGUgd2hvbGUgdHJlZSByZW5kZXJlZCkuXG4gICAgLy9cbiAgICAvLyBFYWNoIGluc3RhbmNlIHRyYWNrcyB0aGUge25hbWUsIHZhbHVlfSBQQUlSIGl0IHJlZ2lzdGVyZWQuIFJlbW92YWwgaXNcbiAgICAvLyBhbHdheXMgcGVyZm9ybWVkIHdpdGggdGhlIHBhaXIncyBvd24gbmFtZSBBTkQgdmFsdWU6IGFuIGl0ZW0gd2l0aG91dCBhXG4gICAgLy8gdHJhbnNmb3JtIG5ldmVyIHRvdWNoZXMgYSBzYW1lLW5hbWUgc2libGluZydzIHJlZ2lzdHJhdGlvbiwgYW4gdW5tb3VudFxuICAgIC8vIGNsZWFudXAgY2FuJ3Qgd2lwZSBhIHN1Y2Nlc3NvcidzICh2YWx1ZS1ndWFyZGVkKSwgYW5kIGEgTkFNRSBjaGFuZ2VcbiAgICAvLyByZW1vdmVzIHRoZSBvbGQgbmFtZSdzIGVudHJ5IHdpdGggdGhlIE9MRCB2YWx1ZSBiZWZvcmUgdGhlIHJlZiBpc1xuICAgIC8vIG92ZXJ3cml0dGVuIChhIGxpdmUgc2luZ2xlLXZhbHVlIHJlZiB3b3VsZCBsZWFrIGl0KS5cbiAgICBjb25zdCBvd25UcmFuc2Zvcm1SZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3Qgb3duVmFsdWVUeXBlUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHByZXZUcmFuc2Zvcm0gPSBvd25UcmFuc2Zvcm1SZWYuY3VycmVudDtcbiAgICBpZiAocHJldlRyYW5zZm9ybSAmJiAocHJldlRyYW5zZm9ybS5uYW1lICE9PSBuYW1lIHx8ICF0cmFuc2Zvcm0pKSB7XG4gICAgICAgIGN0eC51bnJlZ2lzdGVyVHJhbnNmb3JtKHByZXZUcmFuc2Zvcm0ubmFtZSwgcHJldlRyYW5zZm9ybS5mbik7XG4gICAgICAgIG93blRyYW5zZm9ybVJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICB9XG4gICAgaWYgKG5hbWUgJiYgdHJhbnNmb3JtKSB7XG4gICAgICAgIGN0eC5yZWdpc3RlclRyYW5zZm9ybShuYW1lLCB0cmFuc2Zvcm0pO1xuICAgICAgICBvd25UcmFuc2Zvcm1SZWYuY3VycmVudCA9IHsgbmFtZSwgZm46IHRyYW5zZm9ybSB9O1xuICAgIH1cbiAgICBjb25zdCBwcmV2VmFsdWVUeXBlID0gb3duVmFsdWVUeXBlUmVmLmN1cnJlbnQ7XG4gICAgaWYgKHByZXZWYWx1ZVR5cGUgJiYgKHByZXZWYWx1ZVR5cGUubmFtZSAhPT0gbmFtZSB8fCAhdmFsdWVUeXBlKSkge1xuICAgICAgICBjdHgudW5yZWdpc3RlclZhbHVlVHlwZShwcmV2VmFsdWVUeXBlLm5hbWUsIHByZXZWYWx1ZVR5cGUudmFsdWVUeXBlKTtcbiAgICAgICAgb3duVmFsdWVUeXBlUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH1cbiAgICBpZiAobmFtZSAmJiB2YWx1ZVR5cGUpIHtcbiAgICAgICAgY3R4LnJlZ2lzdGVyVmFsdWVUeXBlKG5hbWUsIHZhbHVlVHlwZSk7XG4gICAgICAgIG93blZhbHVlVHlwZVJlZi5jdXJyZW50ID0geyBuYW1lLCB2YWx1ZVR5cGUgfTtcbiAgICB9XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgLy8gUkUtUkVHSVNURVIgaW4gdGhlIGJvZHk6IFN0cmljdE1vZGUncyBtb3VudOKGkmNsZWFudXDihpJyZS1ydW4gY3ljbGUgYW5kXG4gICAgICAgIC8vIGtleWVkIHJlbW91bnRzIChvbGQgaW5zdGFuY2UncyBjbGVhbnVwIHJ1bnMgQUZURVIgdGhlIG5ldyByZW5kZXJcbiAgICAgICAgLy8gcmVnaXN0ZXJlZCkgYm90aCBlbmQgd2l0aCBhIGNsZWFudXAgaGF2aW5nIGRlbGV0ZWQgdGhlIGVudHJ5IOKAlCB0aGVcbiAgICAgICAgLy8gZWZmZWN0IGJvZHkgbXVzdCByZXN0b3JlIHRoZSBsYXRlc3QgcmVnaXN0cmF0aW9uLlxuICAgICAgICBjb25zdCB0cmFuc2Zvcm1SZWcgPSBvd25UcmFuc2Zvcm1SZWYuY3VycmVudDtcbiAgICAgICAgaWYgKHRyYW5zZm9ybVJlZylcbiAgICAgICAgICAgIGN0eC5yZWdpc3RlclRyYW5zZm9ybSh0cmFuc2Zvcm1SZWcubmFtZSwgdHJhbnNmb3JtUmVnLmZuKTtcbiAgICAgICAgY29uc3QgdmFsdWVUeXBlUmVnID0gb3duVmFsdWVUeXBlUmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmICh2YWx1ZVR5cGVSZWcpXG4gICAgICAgICAgICBjdHgucmVnaXN0ZXJWYWx1ZVR5cGUodmFsdWVUeXBlUmVnLm5hbWUsIHZhbHVlVHlwZVJlZy52YWx1ZVR5cGUpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdCA9IG93blRyYW5zZm9ybVJlZi5jdXJyZW50O1xuICAgICAgICAgICAgaWYgKHQpXG4gICAgICAgICAgICAgICAgY3R4LnVucmVnaXN0ZXJUcmFuc2Zvcm0odC5uYW1lLCB0LmZuKTtcbiAgICAgICAgICAgIGNvbnN0IHYgPSBvd25WYWx1ZVR5cGVSZWYuY3VycmVudDtcbiAgICAgICAgICAgIGlmICh2KVxuICAgICAgICAgICAgICAgIGN0eC51bnJlZ2lzdGVyVmFsdWVUeXBlKHYubmFtZSwgdi52YWx1ZVR5cGUpO1xuICAgICAgICB9O1xuICAgIH0sIFtuYW1lLCBjdHgucmVnaXN0ZXJUcmFuc2Zvcm0sIGN0eC51bnJlZ2lzdGVyVHJhbnNmb3JtLCBjdHgucmVnaXN0ZXJWYWx1ZVR5cGUsIGN0eC51bnJlZ2lzdGVyVmFsdWVUeXBlXSk7XG4gICAgaWYgKGhpZGRlbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgbGV0IGNvbnRyb2xDaGlsZDtcbiAgICBpZiAoaXNSZWFkb25seSkge1xuICAgICAgICBjb250cm9sQ2hpbGQgPSAoX2pzeChSZWFkb25seUNoaWxkLCB7IG5hbWU6IG5hbWUsIHZhbHVlVHlwZTogdmFsdWVUeXBlLCB2YWx1ZUVudW06IHZhbHVlRW51bSwgY29udmVydFZhbHVlOiBjb252ZXJ0VmFsdWUsIHJlYWRvbmx5UmVuZGVyOiByZWFkb25seVJlbmRlciwgZW1wdHlUZXh0OiBlbXB0eVRleHQgfSkpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gSW5qZWN0IGZpcnN0IHNvIHRoZSByZWFsIGZpZWxkIHJlY2VpdmVzIHZhbHVlL29uQ2hhbmdlL29uQmx1cixcbiAgICAgICAgLy8gdGhlbiBvcHRpb25hbGx5IHdyYXAgaW4gQ29udmVydFZhbHVlQ2hpbGQgdG8gb3ZlcnJpZGUgdGhlIGRpc3BsYXllZCB2YWx1ZS5cbiAgICAgICAgY29uc3QgaW5qZWN0ZWQgPSBpbmplY3RGaWVsZChjaGlsZHJlbik7XG4gICAgICAgIGlmIChjb252ZXJ0VmFsdWUgJiYgbmFtZSAmJiBSZWFjdC5pc1ZhbGlkRWxlbWVudChpbmplY3RlZCkpIHtcbiAgICAgICAgICAgIGNvbnRyb2xDaGlsZCA9IChfanN4KENvbnZlcnRWYWx1ZUNoaWxkLCB7IG5hbWU6IG5hbWUsIGNvbnZlcnRWYWx1ZTogY29udmVydFZhbHVlLCB2YWx1ZVByb3BOYW1lOiB2YWx1ZVByb3BOYW1lLCBjaGlsZHJlbjogaW5qZWN0ZWQgfSkpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY29udHJvbENoaWxkID0gaW5qZWN0ZWQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICAvLyBGb3JtLWxldmVsIGxheW91dC5pdGVtR2FwIG92ZXJyaWRlcyB0aGUgc2l6ZS1jbGFzcyBtYXJnaW4gKGlubGluZSBzdHlsZVxuICAgIC8vIHdpbnMpOyBpdGVtR2FwPTAgaXMgbWVhbmluZ2Z1bC5cbiAgICBjb25zdCBpdGVtR2FwID0gKF9hID0gY3R4LmxheW91dCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLml0ZW1HYXA7XG4gICAgY29uc3QgZ2FwU3R5bGUgPSBpdGVtR2FwICE9PSB1bmRlZmluZWRcbiAgICAgICAgPyB7IG1hcmdpbkJvdHRvbTogdHlwZW9mIGl0ZW1HYXAgPT09ICdudW1iZXInID8gYCR7aXRlbUdhcH1weGAgOiBpdGVtR2FwIH1cbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3Qgc2hlbGwgPSAoX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXModW5kZWZpbmVkLCBqb2luQ2xzKGNsYXNzZXMoc2l6ZSksIGNsYXNzTmFtZSkpLCBzdHlsZTogZ2FwU3R5bGUsIGNoaWxkcmVuOiBbbGFiZWwgJiYgKF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdsYWJlbC13cmFwcGVyJywgam9pbkNscyhjbGFzc2VzKCdsYWJlbC13cmFwcGVyLXZlcnRpY2FsJyksIGxhYmVsQWxpZ24gJiYgY2xhc3NlcyhgbGFiZWwtd3JhcHBlci0ke2xhYmVsQWxpZ259YCkpKSwgY2hpbGRyZW46IFtfanN4cyhUeXBvZ3JhcGh5TGFiZWwsIHsgYXM6IFwibGFiZWxcIiwgc3Ryb25nOiB0cnVlLCBzaXplOiBGT1JNX0xBQkVMX1NJWkVTW3NpemVdLCBjb2xvcjogRk9STV9MQUJFTF9DT0xPUiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdsYWJlbCcpLCBjaGlsZHJlbjogW2xhYmVsLCAhcmVxdWlyZWQgJiYgKF9qc3goVHlwb2dyYXBoeUxhYmVsLCB7IGFzOiBcInNwYW5cIiwgaXRhbGljOiB0cnVlLCBzdHJvbmc6IHRydWUsIGNsYXNzTmFtZTogY2xhc3Nlcygnb3B0aW9uYWwnKSwgc2l6ZTogRk9STV9MQUJFTF9TSVpFU1tzaXplXSwgY29sb3I6IEZPUk1fT1BUSU9OQUxfQ09MT1IsIGNoaWxkcmVuOiBGT1JNX09QVElPTkFMX1RFWFQgfSkpXSB9KSwgZGVzY3JpcHRpb24gJiYgKF9qc3goVHlwb2dyYXBoeUJvZHksIHsgYXM6IFwiZGl2XCIsIGNsYXNzTmFtZTogY2xhc3NlcygnZGVzY3JpcHRpb24nKSwgc2l6ZTogRk9STV9ERVNDUklQVElPTl9TSVpFLCBjb2xvcjogRk9STV9ERVNDUklQVElPTl9DT0xPUiwgY2hpbGRyZW46IGRlc2NyaXB0aW9uIH0pKV0gfSkpLCBfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnY29udHJvbCcpLCBjaGlsZHJlbjogW2NvbnRyb2xDaGlsZCwgZmllbGRFcnJvciAmJiAoX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2Vycm9yJyksIGNoaWxkcmVuOiBbX2pzeChJY29ucywgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ21lc3NhZ2UtaWNvbicpLCBuYW1lOiBcImVycm9yXCIsIHNpemU6IEZPUk1fTUVTU0FHRV9JQ09OX1NJWkUgfSksIF9qc3goVHlwb2dyYXBoeUJvZHksIHsgYXM6IFwic3BhblwiLCBzaXplOiBGT1JNX0VSUk9SX1NJWkUsIGNvbG9yOiBGT1JNX0VSUk9SX0NPTE9SLCBjaGlsZHJlbjogZmllbGRFcnJvciB9KV0gfSkpLCAhZmllbGRFcnJvciAmJiBmaWVsZFdhcm5pbmcgJiYgKF9qc3goVHlwb2dyYXBoeUJvZHksIHsgYXM6IFwiZGl2XCIsIGNsYXNzTmFtZTogY2xhc3Nlcygnd2FybmluZycpLCBzaXplOiBGT1JNX1dBUk5JTkdfU0laRSwgY29sb3I6IEZPUk1fV0FSTklOR19DT0xPUiwgY2hpbGRyZW46IGZpZWxkV2FybmluZyB9KSksICFmaWVsZEVycm9yICYmICFmaWVsZFdhcm5pbmcgJiYgZmVlZGJhY2sgJiYgKF9qc3goVHlwb2dyYXBoeUJvZHksIHsgYXM6IFwiZGl2XCIsIGNsYXNzTmFtZTogY2xhc3NlcygnZmVlZGJhY2snKSwgc2l6ZTogRk9STV9GRUVEQkFDS19TSVpFLCBjb2xvcjogRk9STV9GRUVEQkFDS19DT0xPUiwgY2hpbGRyZW46IGZlZWRiYWNrIH0pKV0gfSldIH0pKTtcbiAgICBpZiAoY3R4LmdyaWQpIHtcbiAgICAgICAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBjdHguY29sUHJvcHMpLCBjb2xQcm9wcyk7XG4gICAgICAgIGNvbnN0IHsgc3BhbiA9IERFRkFVTFRfQ09MX1NQQU4sIHNtLCBtZCwgbGcgfSA9IG1lcmdlZDtcbiAgICAgICAgcmV0dXJuIF9qc3goQ29sLCB7IHNwYW46IHNwYW4sIHNtOiBzbSwgbWQ6IG1kLCBsZzogbGcsIGNoaWxkcmVuOiBzaGVsbCB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHNoZWxsO1xufTtcblByb0Zvcm1JdGVtQmFzZS5kaXNwbGF5TmFtZSA9ICdQcm9Gb3JtSXRlbSc7XG5leHBvcnQgY29uc3QgUHJvRm9ybUl0ZW0gPSBtZW1vKFByb0Zvcm1JdGVtQmFzZSk7XG5leHBvcnQgZGVmYXVsdCBQcm9Gb3JtSXRlbTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -13,6 +13,13 @@ export type ValidateStatus = (typeof VALIDATE_STATUSES)[number];
13
13
  export type ValidateTrigger = (typeof VALIDATE_TRIGGERS)[number];
14
14
  export declare const FORM_LABEL_SIZES: Record<FormSize, TypographyLabelSize>;
15
15
  export declare const FORM_LABEL_COLOR: TypographyColor;
16
+ /**
17
+ * The `(Optional)` label suffix — Figma `Label/* Italic (optional)` in
18
+ * `Text/Default/Tertiary` (#646465). Mirrors the Input/Select field shells;
19
+ * there is no required marker, only this optional one.
20
+ */
21
+ export declare const FORM_OPTIONAL_TEXT = "(Optional)";
22
+ export declare const FORM_OPTIONAL_COLOR: TypographyColor;
16
23
  export declare const FORM_ERROR_SIZE: TypographyBodySize;
17
24
  export declare const FORM_ERROR_COLOR: TypographyColor;
18
25
  export declare const FORM_WARNING_SIZE: TypographyBodySize;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.VALIDATE_TRIGGERS = exports.VALIDATE_STATUSES = exports.TEXT_LIKE_COMPONENT_NAMES = exports.SIZE_AWARE_COMPONENT_NAMES = exports.RULE_CONTEXT_READ_MEMBERS = exports.RULE_CONTEXT_MUTATOR_MEMBERS = exports.LABEL_ALIGNS = exports.FORM_WARNING_SIZE = exports.FORM_WARNING_COLOR = exports.FORM_SIZES = exports.FORM_MESSAGE_ICON_SIZE = exports.FORM_LAYOUTS = exports.FORM_LABEL_SIZES = exports.FORM_LABEL_COLOR = exports.FORM_FEEDBACK_SIZE = exports.FORM_FEEDBACK_COLOR = exports.FORM_ERROR_SIZE = exports.FORM_ERROR_COLOR = exports.FORM_DESCRIPTION_SIZE = exports.FORM_DESCRIPTION_COLOR = exports.FORM_COMPONENT_NAMES = void 0;
6
+ exports.VALIDATE_TRIGGERS = exports.VALIDATE_STATUSES = exports.TEXT_LIKE_COMPONENT_NAMES = exports.SIZE_AWARE_COMPONENT_NAMES = exports.RULE_CONTEXT_READ_MEMBERS = exports.RULE_CONTEXT_MUTATOR_MEMBERS = exports.LABEL_ALIGNS = exports.FORM_WARNING_SIZE = exports.FORM_WARNING_COLOR = exports.FORM_SIZES = exports.FORM_OPTIONAL_TEXT = exports.FORM_OPTIONAL_COLOR = exports.FORM_MESSAGE_ICON_SIZE = exports.FORM_LAYOUTS = exports.FORM_LABEL_SIZES = exports.FORM_LABEL_COLOR = exports.FORM_FEEDBACK_SIZE = exports.FORM_FEEDBACK_COLOR = exports.FORM_ERROR_SIZE = exports.FORM_ERROR_COLOR = exports.FORM_DESCRIPTION_SIZE = exports.FORM_DESCRIPTION_COLOR = exports.FORM_COMPONENT_NAMES = void 0;
7
7
  var FORM_SIZES = exports.FORM_SIZES = ['large', 'small'];
8
8
  var FORM_LAYOUTS = exports.FORM_LAYOUTS = ['vertical'];
9
9
  var LABEL_ALIGNS = exports.LABEL_ALIGNS = ['left', 'right'];
@@ -23,6 +23,13 @@ var FORM_LABEL_SIZES = exports.FORM_LABEL_SIZES = {
23
23
  small: 'md'
24
24
  };
25
25
  var FORM_LABEL_COLOR = exports.FORM_LABEL_COLOR = 'default';
26
+ /**
27
+ * The `(Optional)` label suffix — Figma `Label/* Italic (optional)` in
28
+ * `Text/Default/Tertiary` (#646465). Mirrors the Input/Select field shells;
29
+ * there is no required marker, only this optional one.
30
+ */
31
+ var FORM_OPTIONAL_TEXT = exports.FORM_OPTIONAL_TEXT = '(Optional)';
32
+ var FORM_OPTIONAL_COLOR = exports.FORM_OPTIONAL_COLOR = 'default-tertiary';
26
33
  var FORM_ERROR_SIZE = exports.FORM_ERROR_SIZE = 'sm';
27
34
  var FORM_ERROR_COLOR = exports.FORM_ERROR_COLOR = 'danger';
28
35
  var FORM_WARNING_SIZE = exports.FORM_WARNING_SIZE = 'sm';
@@ -51,4 +58,4 @@ var SIZE_AWARE_COMPONENT_NAMES = exports.SIZE_AWARE_COMPONENT_NAMES = ['Input',
51
58
  * fallback value.
52
59
  */
53
60
  var TEXT_LIKE_COMPONENT_NAMES = exports.TEXT_LIKE_COMPONENT_NAMES = ['Input', 'InputPassword', 'InputTextArea', 'InputSearch', 'InputOTP', 'InputTrade', 'InputAmount', 'InputMask', 'TextArea', 'InputNumber'];
54
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9zcmMvY29tcG9uZW50cy9Qcm9Gb3JtL2NvcmUvY29uc3RhbnRzLnRzIiwiY29tcG9uZW50cy9Qcm9Gb3JtL2NvcmUvY29uc3RhbnRzLmpzIl0sIm5hbWVzIjpbIkZPUk1fU0laRVMiLCJleHBvcnRzIiwiRk9STV9MQVlPVVRTIiwiTEFCRUxfQUxJR05TIiwiVkFMSURBVEVfU1RBVFVTRVMiLCJWQUxJREFURV9UUklHR0VSUyIsIlJVTEVfQ09OVEVYVF9SRUFEX01FTUJFUlMiLCJSVUxFX0NPTlRFWFRfTVVUQVRPUl9NRU1CRVJTIiwiRk9STV9MQUJFTF9TSVpFUyIsImxhcmdlIiwic21hbGwiLCJGT1JNX0xBQkVMX0NPTE9SIiwiRk9STV9FUlJPUl9TSVpFIiwiRk9STV9FUlJPUl9DT0xPUiIsIkZPUk1fV0FSTklOR19TSVpFIiwiRk9STV9XQVJOSU5HX0NPTE9SIiwiRk9STV9NRVNTQUdFX0lDT05fU0laRSIsIkZPUk1fREVTQ1JJUFRJT05fU0laRSIsIkZPUk1fREVTQ1JJUFRJT05fQ09MT1IiLCJGT1JNX0ZFRURCQUNLX1NJWkUiLCJGT1JNX0ZFRURCQUNLX0NPTE9SIiwiRk9STV9DT01QT05FTlRfTkFNRVMiLCJTSVpFX0FXQVJFX0NPTVBPTkVOVF9OQU1FUyIsIlRFWFRfTElLRV9DT01QT05FTlRfTkFNRVMiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVPLElBQU1BLFVBQVUsR0FBQUMsT0FBQSxDQUFBRCxVQUFBLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFVO0FBQzlDLElBQU1FLFlBQVksR0FBQUQsT0FBQSxDQUFBQyxZQUFBLEdBQUcsQ0FBQyxVQUFVLENBQVU7QUFDMUMsSUFBTUMsWUFBWSxHQUFBRixPQUFBLENBQUFFLFlBQUEsR0FBRyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQVU7QUFDL0MsSUFBTUMsaUJBQWlCLEdBQUFILE9BQUEsQ0FBQUcsaUJBQUEsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFlBQVksQ0FBVTtBQUNoRixJQUFNQyxpQkFBaUIsR0FBQUosT0FBQSxDQUFBSSxpQkFBQSxHQUFHLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBVTtBQUVoRTtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU1DLHlCQUF5QixHQUFBTCxPQUFBLENBQUFLLHlCQUFBLEdBQUcsQ0FDdkMsZUFBZSxFQUNmLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsbUJBQW1CLENBQ1g7QUFDSCxJQUFNQyw0QkFBNEIsR0FBQU4sT0FBQSxDQUFBTSw0QkFBQSxHQUFHLENBQzFDLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsYUFBYSxDQUNMO0FBUVY7QUFDQTtBQUNBO0FBQ08sSUFBTUMsZ0JBQWdCLEdBQUFQLE9BQUEsQ0FBQU8sZ0JBQUEsR0FBMEM7RUFDckVDLEtBQUssRUFBRSxJQUFJO0VBQ1hDLEtBQUssRUFBRTtBQ1RULENEVUM7QUFDTSxJQUFNQyxnQkFBZ0IsR0FBQVYsT0FBQSxDQUFBVSxnQkFBQSxHQUFvQixTQUFTO0FBQ25ELElBQU1DLGVBQWUsR0FBQVgsT0FBQSxDQUFBVyxlQUFBLEdBQXVCLElBQUk7QUFDaEQsSUFBTUMsZ0JBQWdCLEdBQUFaLE9BQUEsQ0FBQVksZ0JBQUEsR0FBb0IsUUFBUTtBQUNsRCxJQUFNQyxpQkFBaUIsR0FBQWIsT0FBQSxDQUFBYSxpQkFBQSxHQUF1QixJQUFJO0FBQ2xELElBQU1DLGtCQUFrQixHQUFBZCxPQUFBLENBQUFjLGtCQUFBLEdBQW9CLFNBQVM7QUFDNUQ7QUFDTyxJQUFNQyxzQkFBc0IsR0FBQWYsT0FBQSxDQUFBZSxzQkFBQSxHQUFHLEVBQUU7QUFDakMsSUFBTUMscUJBQXFCLEdBQUFoQixPQUFBLENBQUFnQixxQkFBQSxHQUF1QixJQUFJO0FBQ3RELElBQU1DLHNCQUFzQixHQUFBakIsT0FBQSxDQUFBaUIsc0JBQUEsR0FBb0Isa0JBQWtCO0FBQ2xFLElBQU1DLGtCQUFrQixHQUFBbEIsT0FBQSxDQUFBa0Isa0JBQUEsR0FBdUIsSUFBSTtBQUNuRCxJQUFNQyxtQkFBbUIsR0FBQW5CLE9BQUEsQ0FBQW1CLG1CQUFBLEdBQW9CLGtCQUFrQjtBQUUvRCxJQUFNQyxvQkFBb0IsR0FBQXBCLE9BQUEsQ0FBQW9CLG9CQUFBLEdBQUcsQ0FDbEMsT0FBTyxFQUNQLGFBQWEsRUFDYixlQUFlLEVBQ2YsZUFBZSxFQUNmLGFBQWEsRUFDYixVQUFVLEVBQ1YsWUFBWSxFQUNaLGFBQWEsRUFDYixXQUFXLEVBQ1gsUUFBUSxFQUNSLFlBQVksRUFDWixZQUFZLEVBQ1osWUFBWSxFQUNaLFVBQVUsRUFDVixVQUFVLEVBQ1YsZUFBZSxFQUNmLE9BQU8sRUFDUCxZQUFZLEVBQ1osUUFBUSxFQUNSLFFBQVEsRUFDUixVQUFVO0FBQ1Y7QUFDQTtBQUNBLGFBQWEsRUFDYixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixxQkFBcUIsQ0FDYjtBQUVWO0FDWEE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FEYU8sSUFBTUMsMEJBQTBCLEdBQUFyQixPQUFBLENBQUFxQiwwQkFBQSxHQUFzQixDQUMzRCxPQUFPLEVBQ1AsZUFBZSxFQUNmLGVBQWUsRUFDZixhQUFhLEVBQ2IsVUFBVSxFQUNWLGFBQWEsRUFDYixXQUFXLEVBQ1gsUUFBUSxFQUNSLFVBQVUsRUFDVixPQUFPLEVBQ1AsWUFBWSxDQUNiO0FBRUQ7QUNaQTtBQUNBO0FBQ0E7QUFDQTtBRGNPLElBQU1DLHlCQUF5QixHQUFBdEIsT0FBQSxDQUFBc0IseUJBQUEsR0FBc0IsQ0FDMUQsT0FBTyxFQUNQLGVBQWUsRUFDZixlQUFlLEVBQ2YsYUFBYSxFQUNiLFVBQVUsRUFDVixZQUFZLEVBQ1osYUFBYSxFQUNiLFdBQVcsRUFDWCxVQUFVLEVBQ1YsYUFBYSxDQUNkIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvRm9ybS9jb3JlL2NvbnN0YW50cy5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiZXhwb3J0IGNvbnN0IEZPUk1fU0laRVMgPSBbJ2xhcmdlJywgJ3NtYWxsJ107XG5leHBvcnQgY29uc3QgRk9STV9MQVlPVVRTID0gWyd2ZXJ0aWNhbCddO1xuZXhwb3J0IGNvbnN0IExBQkVMX0FMSUdOUyA9IFsnbGVmdCcsICdyaWdodCddO1xuZXhwb3J0IGNvbnN0IFZBTElEQVRFX1NUQVRVU0VTID0gWydzdWNjZXNzJywgJ3dhcm5pbmcnLCAnZXJyb3InLCAndmFsaWRhdGluZyddO1xuZXhwb3J0IGNvbnN0IFZBTElEQVRFX1RSSUdHRVJTID0gWydvbkNoYW5nZScsICdvbkJsdXInXTtcbi8vIFJ1bGVDb250ZXh0IGluc3RhbmNlIG1lbWJlcnMsIHNwbGl0IGJ5IHNhZmV0eTogUkVBRCBtZW1iZXJzIGFyZSBhdmFpbGFibGVcbi8vIGluIEVWRVJZIHJ1bGUgcmVzb2x1dGlvbiAoaW5jbHVkaW5nIHJlbmRlci1waGFzZSByZXF1aXJlZC1tYXJrIGNoZWNrcyk7XG4vLyBNVVRBVE9SIG1lbWJlcnMgYXJlIGhhbmRlZCBvdXQgb25seSBkdXJpbmcgdmFsaWRhdGlvbi10aW1lIHJlc29sdXRpb25zLlxuLy8gdXNlRm9ybUl0ZW0gKHJlbmRlclNhZmVJbnN0YW5jZSkgYW5kIHRoZSBjb250cmFjdCB0ZXN0cyBkZXJpdmUgZnJvbSB0aGVzZS5cbmV4cG9ydCBjb25zdCBSVUxFX0NPTlRFWFRfUkVBRF9NRU1CRVJTID0gW1xuICAgICdnZXRGaWVsZEVycm9yJyxcbiAgICAnZ2V0RmllbGRXYXJuaW5nJyxcbiAgICAnaXNGaWVsZFRvdWNoZWQnLFxuICAgICdpc0ZpZWxkVmFsaWRhdGluZycsXG5dO1xuZXhwb3J0IGNvbnN0IFJVTEVfQ09OVEVYVF9NVVRBVE9SX01FTUJFUlMgPSBbXG4gICAgJ3NldEZpZWxkVmFsdWUnLFxuICAgICdzZXRGaWVsZHNWYWx1ZScsXG4gICAgJ3Jlc2V0RmllbGRzJyxcbl07XG4vLyBMYWJlbCB0eXBvZ3JhcGh5IHBhaXJzIHdpdGggdGhlIGZpZWxkIGNvbnRyb2wncyB0ZXh0IHNpemUgZm9yIGVhY2ggZm9ybVxuLy8gc2l6ZTogbGFyZ2UgY29udHJvbCB0ZXh0IGlzIGJvZHkvbGcgKDE2cHgpIOKGkiBsYWJlbCBsZzsgc21hbGwgaXMgYm9keS9tZFxuLy8gKDE0cHgpIOKGkiBsYWJlbCBtZC5cbmV4cG9ydCBjb25zdCBGT1JNX0xBQkVMX1NJWkVTID0ge1xuICAgIGxhcmdlOiAnbGcnLFxuICAgIHNtYWxsOiAnbWQnLFxufTtcbmV4cG9ydCBjb25zdCBGT1JNX0xBQkVMX0NPTE9SID0gJ2RlZmF1bHQnO1xuZXhwb3J0IGNvbnN0IEZPUk1fRVJST1JfU0laRSA9ICdzbSc7XG5leHBvcnQgY29uc3QgRk9STV9FUlJPUl9DT0xPUiA9ICdkYW5nZXInO1xuZXhwb3J0IGNvbnN0IEZPUk1fV0FSTklOR19TSVpFID0gJ3NtJztcbmV4cG9ydCBjb25zdCBGT1JNX1dBUk5JTkdfQ09MT1IgPSAnd2FybmluZyc7XG4vKiogTGVhZGluZyBpY29uIG9uIGEgdmFsaWRhdGlvbiBtZXNzYWdlIOKAlCBtYXRjaGVzIEZpZWxkU2hlbGwncyBmZWVkYmFjayBpY29uLiAqL1xuZXhwb3J0IGNvbnN0IEZPUk1fTUVTU0FHRV9JQ09OX1NJWkUgPSAxNjtcbmV4cG9ydCBjb25zdCBGT1JNX0RFU0NSSVBUSU9OX1NJWkUgPSAnbWQnO1xuZXhwb3J0IGNvbnN0IEZPUk1fREVTQ1JJUFRJT05fQ09MT1IgPSAnZGVmYXVsdC10ZXJ0aWFyeSc7XG5leHBvcnQgY29uc3QgRk9STV9GRUVEQkFDS19TSVpFID0gJ3NtJztcbmV4cG9ydCBjb25zdCBGT1JNX0ZFRURCQUNLX0NPTE9SID0gJ2RlZmF1bHQtdGVydGlhcnknO1xuZXhwb3J0IGNvbnN0IEZPUk1fQ09NUE9ORU5UX05BTUVTID0gW1xuICAgICdJbnB1dCcsXG4gICAgJ0lucHV0TnVtYmVyJyxcbiAgICAnSW5wdXRQYXNzd29yZCcsXG4gICAgJ0lucHV0VGV4dEFyZWEnLFxuICAgICdJbnB1dFNlYXJjaCcsXG4gICAgJ0lucHV0T1RQJyxcbiAgICAnSW5wdXRUcmFkZScsXG4gICAgJ0lucHV0QW1vdW50JyxcbiAgICAnSW5wdXRNYXNrJyxcbiAgICAnU2VsZWN0JyxcbiAgICAnQmFzZVNlbGVjdCcsXG4gICAgJ0RhdGVQaWNrZXInLFxuICAgICdUaW1lUGlja2VyJyxcbiAgICAnQ2FsZW5kYXInLFxuICAgICdDaGVja2JveCcsXG4gICAgJ0NoZWNrYm94R3JvdXAnLFxuICAgICdSYWRpbycsXG4gICAgJ1JhZGlvR3JvdXAnLFxuICAgICdTd2l0Y2gnLFxuICAgICdTbGlkZXInLFxuICAgICdUZXh0QXJlYScsXG4gICAgLy8gYnVzaW5lc3MvIHNlbGVjdHMg4oCUIHJlY29nbml6ZWQgYnkgdGhlaXIgZXhwbGljaXQgZGlzcGxheU5hbWUgc28gaG9zdHNcbiAgICAvLyBkb24ndCBoYXZlIHRvIHBhc3MgYSBwbGFjZWhvbGRlci92YWx1ZSBqdXN0IHRvIHRyaWdnZXIgaW5qZWN0aW9uLlxuICAgICdBc3NldFNlbGVjdCcsXG4gICAgJ0NvdW50cnlTZWxlY3QnLFxuICAgICdDdXJyZW5jeVNlbGVjdCcsXG4gICAgJ05ldHdvcmtTZWxlY3QnLFxuICAgICdQYXltZW50TWV0aG9kU2VsZWN0Jyxcbl07XG4vKipcbiAqIEZvcm0gY29udHJvbHMgdGhhdCBkZWNsYXJlIGEgYHNpemVgIHByb3AgYWNjZXB0aW5nIGAnbGFyZ2UnIHwgJ3NtYWxsJ2AuXG4gKiBgaW5qZWN0RmllbGRgIGNhc2NhZGVzIHRoZSBmb3JtLWxldmVsIGBzaXplYCBpbnRvIHRoZXNlIGFzIGEgREVGQVVMVCDigJQgYW5cbiAqIGV4cGxpY2l0IGZpZWxkLWxldmVsIGBzaXplYCAob3duIHByb3Agb3IgdmlhIGBmaWVsZFByb3BzYCkgd2lucy4gQ29udHJvbHNcbiAqIHdpdGhvdXQgYSBzaXplIHByb3AgKENoZWNrYm94LCBTd2l0Y2gsIFNsaWRlciwg4oCmKSBtdXN0IHN0YXkgb2ZmIHRoaXMgbGlzdDpcbiAqIGFuIGFueSBgc2l6ZWAgcHJvcCBjb3VsZCBsZWFrIG9udG8gdGhlIERPTSBlbGVtZW50LlxuICovXG5leHBvcnQgY29uc3QgU0laRV9BV0FSRV9DT01QT05FTlRfTkFNRVMgPSBbXG4gICAgJ0lucHV0JyxcbiAgICAnSW5wdXRQYXNzd29yZCcsXG4gICAgJ0lucHV0VGV4dEFyZWEnLFxuICAgICdJbnB1dFNlYXJjaCcsXG4gICAgJ0lucHV0T1RQJyxcbiAgICAnSW5wdXRBbW91bnQnLFxuICAgICdJbnB1dE1hc2snLFxuICAgICdTZWxlY3QnLFxuICAgICdDYWxlbmRhcicsXG4gICAgJ1JhZGlvJyxcbiAgICAnUmFkaW9Hcm91cCcsXG5dO1xuLyoqXG4gKiBUZXh0LWxpa2UgZm9ybSBjb250cm9scyB3aG9zZSBlbXB0eSB2YWx1ZSBtdXN0IGRlZmF1bHQgdG8gJycgKGEgY29udHJvbGxlZFxuICogc3RyaW5nIGlucHV0KSByYXRoZXIgdGhhbiB1bmRlZmluZWQuIFVzZWQgYnkgYGluamVjdEZpZWxkYCB0byBwaWNrIGEgc2FmZVxuICogZmFsbGJhY2sgdmFsdWUuXG4gKi9cbmV4cG9ydCBjb25zdCBURVhUX0xJS0VfQ09NUE9ORU5UX05BTUVTID0gW1xuICAgICdJbnB1dCcsXG4gICAgJ0lucHV0UGFzc3dvcmQnLFxuICAgICdJbnB1dFRleHRBcmVhJyxcbiAgICAnSW5wdXRTZWFyY2gnLFxuICAgICdJbnB1dE9UUCcsXG4gICAgJ0lucHV0VHJhZGUnLFxuICAgICdJbnB1dEFtb3VudCcsXG4gICAgJ0lucHV0TWFzaycsXG4gICAgJ1RleHRBcmVhJyxcbiAgICAnSW5wdXROdW1iZXInLFxuXTsiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
61
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9zcmMvY29tcG9uZW50cy9Qcm9Gb3JtL2NvcmUvY29uc3RhbnRzLnRzIiwiY29tcG9uZW50cy9Qcm9Gb3JtL2NvcmUvY29uc3RhbnRzLmpzIl0sIm5hbWVzIjpbIkZPUk1fU0laRVMiLCJleHBvcnRzIiwiRk9STV9MQVlPVVRTIiwiTEFCRUxfQUxJR05TIiwiVkFMSURBVEVfU1RBVFVTRVMiLCJWQUxJREFURV9UUklHR0VSUyIsIlJVTEVfQ09OVEVYVF9SRUFEX01FTUJFUlMiLCJSVUxFX0NPTlRFWFRfTVVUQVRPUl9NRU1CRVJTIiwiRk9STV9MQUJFTF9TSVpFUyIsImxhcmdlIiwic21hbGwiLCJGT1JNX0xBQkVMX0NPTE9SIiwiRk9STV9PUFRJT05BTF9URVhUIiwiRk9STV9PUFRJT05BTF9DT0xPUiIsIkZPUk1fRVJST1JfU0laRSIsIkZPUk1fRVJST1JfQ09MT1IiLCJGT1JNX1dBUk5JTkdfU0laRSIsIkZPUk1fV0FSTklOR19DT0xPUiIsIkZPUk1fTUVTU0FHRV9JQ09OX1NJWkUiLCJGT1JNX0RFU0NSSVBUSU9OX1NJWkUiLCJGT1JNX0RFU0NSSVBUSU9OX0NPTE9SIiwiRk9STV9GRUVEQkFDS19TSVpFIiwiRk9STV9GRUVEQkFDS19DT0xPUiIsIkZPUk1fQ09NUE9ORU5UX05BTUVTIiwiU0laRV9BV0FSRV9DT01QT05FTlRfTkFNRVMiLCJURVhUX0xJS0VfQ09NUE9ORU5UX05BTUVTIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFTyxJQUFNQSxVQUFVLEdBQUFDLE9BQUEsQ0FBQUQsVUFBQSxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBVTtBQUM5QyxJQUFNRSxZQUFZLEdBQUFELE9BQUEsQ0FBQUMsWUFBQSxHQUFHLENBQUMsVUFBVSxDQUFVO0FBQzFDLElBQU1DLFlBQVksR0FBQUYsT0FBQSxDQUFBRSxZQUFBLEdBQUcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFVO0FBQy9DLElBQU1DLGlCQUFpQixHQUFBSCxP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WixhQUFhLEVBQ2IsV0FBVyxFQUNYLFVBQVUsRUFDVixhQUFhLENBQ2QiLCJmaWxlIjoiY29tcG9uZW50cy9Qcm9Gb3JtL2NvcmUvY29uc3RhbnRzLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCJleHBvcnQgY29uc3QgRk9STV9TSVpFUyA9IFsnbGFyZ2UnLCAnc21hbGwnXTtcbmV4cG9ydCBjb25zdCBGT1JNX0xBWU9VVFMgPSBbJ3ZlcnRpY2FsJ107XG5leHBvcnQgY29uc3QgTEFCRUxfQUxJR05TID0gWydsZWZ0JywgJ3JpZ2h0J107XG5leHBvcnQgY29uc3QgVkFMSURBVEVfU1RBVFVTRVMgPSBbJ3N1Y2Nlc3MnLCAnd2FybmluZycsICdlcnJvcicsICd2YWxpZGF0aW5nJ107XG5leHBvcnQgY29uc3QgVkFMSURBVEVfVFJJR0dFUlMgPSBbJ29uQ2hhbmdlJywgJ29uQmx1ciddO1xuLy8gUnVsZUNvbnRleHQgaW5zdGFuY2UgbWVtYmVycywgc3BsaXQgYnkgc2FmZXR5OiBSRUFEIG1lbWJlcnMgYXJlIGF2YWlsYWJsZVxuLy8gaW4gRVZFUlkgcnVsZSByZXNvbHV0aW9uIChpbmNsdWRpbmcgcmVuZGVyLXBoYXNlIHJlcXVpcmVkLW1hcmsgY2hlY2tzKTtcbi8vIE1VVEFUT1IgbWVtYmVycyBhcmUgaGFuZGVkIG91dCBvbmx5IGR1cmluZyB2YWxpZGF0aW9uLXRpbWUgcmVzb2x1dGlvbnMuXG4vLyB1c2VGb3JtSXRlbSAocmVuZGVyU2FmZUluc3RhbmNlKSBhbmQgdGhlIGNvbnRyYWN0IHRlc3RzIGRlcml2ZSBmcm9tIHRoZXNlLlxuZXhwb3J0IGNvbnN0IFJVTEVfQ09OVEVYVF9SRUFEX01FTUJFUlMgPSBbXG4gICAgJ2dldEZpZWxkRXJyb3InLFxuICAgICdnZXRGaWVsZFdhcm5pbmcnLFxuICAgICdpc0ZpZWxkVG91Y2hlZCcsXG4gICAgJ2lzRmllbGRWYWxpZGF0aW5nJyxcbl07XG5leHBvcnQgY29uc3QgUlVMRV9DT05URVhUX01VVEFUT1JfTUVNQkVSUyA9IFtcbiAgICAnc2V0RmllbGRWYWx1ZScsXG4gICAgJ3NldEZpZWxkc1ZhbHVlJyxcbiAgICAncmVzZXRGaWVsZHMnLFxuXTtcbi8vIExhYmVsIHR5cG9ncmFwaHkgcGFpcnMgd2l0aCB0aGUgZmllbGQgY29udHJvbCdzIHRleHQgc2l6ZSBmb3IgZWFjaCBmb3JtXG4vLyBzaXplOiBsYXJnZSBjb250cm9sIHRleHQgaXMgYm9keS9sZyAoMTZweCkg4oaSIGxhYmVsIGxnOyBzbWFsbCBpcyBib2R5L21kXG4vLyAoMTRweCkg4oaSIGxhYmVsIG1kLlxuZXhwb3J0IGNvbnN0IEZPUk1fTEFCRUxfU0laRVMgPSB7XG4gICAgbGFyZ2U6ICdsZycsXG4gICAgc21hbGw6ICdtZCcsXG59O1xuZXhwb3J0IGNvbnN0IEZPUk1fTEFCRUxfQ09MT1IgPSAnZGVmYXVsdCc7XG4vKipcbiAqIFRoZSBgKE9wdGlvbmFsKWAgbGFiZWwgc3VmZml4IOKAlCBGaWdtYSBgTGFiZWwvKiBJdGFsaWMgKG9wdGlvbmFsKWAgaW5cbiAqIGBUZXh0L0RlZmF1bHQvVGVydGlhcnlgICgjNjQ2NDY1KS4gTWlycm9ycyB0aGUgSW5wdXQvU2VsZWN0IGZpZWxkIHNoZWxscztcbiAqIHRoZXJlIGlzIG5vIHJlcXVpcmVkIG1hcmtlciwgb25seSB0aGlzIG9wdGlvbmFsIG9uZS5cbiAqL1xuZXhwb3J0IGNvbnN0IEZPUk1fT1BUSU9OQUxfVEVYVCA9ICcoT3B0aW9uYWwpJztcbmV4cG9ydCBjb25zdCBGT1JNX09QVElPTkFMX0NPTE9SID0gJ2RlZmF1bHQtdGVydGlhcnknO1xuZXhwb3J0IGNvbnN0IEZPUk1fRVJST1JfU0laRSA9ICdzbSc7XG5leHBvcnQgY29uc3QgRk9STV9FUlJPUl9DT0xPUiA9ICdkYW5nZXInO1xuZXhwb3J0IGNvbnN0IEZPUk1fV0FSTklOR19TSVpFID0gJ3NtJztcbmV4cG9ydCBjb25zdCBGT1JNX1dBUk5JTkdfQ09MT1IgPSAnd2FybmluZyc7XG4vKiogTGVhZGluZyBpY29uIG9uIGEgdmFsaWRhdGlvbiBtZXNzYWdlIOKAlCBtYXRjaGVzIEZpZWxkU2hlbGwncyBmZWVkYmFjayBpY29uLiAqL1xuZXhwb3J0IGNvbnN0IEZPUk1fTUVTU0FHRV9JQ09OX1NJWkUgPSAxNjtcbmV4cG9ydCBjb25zdCBGT1JNX0RFU0NSSVBUSU9OX1NJWkUgPSAnbWQnO1xuZXhwb3J0IGNvbnN0IEZPUk1fREVTQ1JJUFRJT05fQ09MT1IgPSAnZGVmYXVsdC10ZXJ0aWFyeSc7XG5leHBvcnQgY29uc3QgRk9STV9GRUVEQkFDS19TSVpFID0gJ3NtJztcbmV4cG9ydCBjb25zdCBGT1JNX0ZFRURCQUNLX0NPTE9SID0gJ2RlZmF1bHQtdGVydGlhcnknO1xuZXhwb3J0IGNvbnN0IEZPUk1fQ09NUE9ORU5UX05BTUVTID0gW1xuICAgICdJbnB1dCcsXG4gICAgJ0lucHV0TnVtYmVyJyxcbiAgICAnSW5wdXRQYXNzd29yZCcsXG4gICAgJ0lucHV0VGV4dEFyZWEnLFxuICAgICdJbnB1dFNlYXJjaCcsXG4gICAgJ0lucHV0T1RQJyxcbiAgICAnSW5wdXRUcmFkZScsXG4gICAgJ0lucHV0QW1vdW50JyxcbiAgICAnSW5wdXRNYXNrJyxcbiAgICAnU2VsZWN0JyxcbiAgICAnQmFzZVNlbGVjdCcsXG4gICAgJ0RhdGVQaWNrZXInLFxuICAgICdUaW1lUGlja2VyJyxcbiAgICAnQ2FsZW5kYXInLFxuICAgICdDaGVja2JveCcsXG4gICAgJ0NoZWNrYm94R3JvdXAnLFxuICAgICdSYWRpbycsXG4gICAgJ1JhZGlvR3JvdXAnLFxuICAgICdTd2l0Y2gnLFxuICAgICdTbGlkZXInLFxuICAgICdUZXh0QXJlYScsXG4gICAgLy8gYnVzaW5lc3MvIHNlbGVjdHMg4oCUIHJlY29nbml6ZWQgYnkgdGhlaXIgZXhwbGljaXQgZGlzcGxheU5hbWUgc28gaG9zdHNcbiAgICAvLyBkb24ndCBoYXZlIHRvIHBhc3MgYSBwbGFjZWhvbGRlci92YWx1ZSBqdXN0IHRvIHRyaWdnZXIgaW5qZWN0aW9uLlxuICAgICdBc3NldFNlbGVjdCcsXG4gICAgJ0NvdW50cnlTZWxlY3QnLFxuICAgICdDdXJyZW5jeVNlbGVjdCcsXG4gICAgJ05ldHdvcmtTZWxlY3QnLFxuICAgICdQYXltZW50TWV0aG9kU2VsZWN0Jyxcbl07XG4vKipcbiAqIEZvcm0gY29udHJvbHMgdGhhdCBkZWNsYXJlIGEgYHNpemVgIHByb3AgYWNjZXB0aW5nIGAnbGFyZ2UnIHwgJ3NtYWxsJ2AuXG4gKiBgaW5qZWN0RmllbGRgIGNhc2NhZGVzIHRoZSBmb3JtLWxldmVsIGBzaXplYCBpbnRvIHRoZXNlIGFzIGEgREVGQVVMVCDigJQgYW5cbiAqIGV4cGxpY2l0IGZpZWxkLWxldmVsIGBzaXplYCAob3duIHByb3Agb3IgdmlhIGBmaWVsZFByb3BzYCkgd2lucy4gQ29udHJvbHNcbiAqIHdpdGhvdXQgYSBzaXplIHByb3AgKENoZWNrYm94LCBTd2l0Y2gsIFNsaWRlciwg4oCmKSBtdXN0IHN0YXkgb2ZmIHRoaXMgbGlzdDpcbiAqIGFuIGFueSBgc2l6ZWAgcHJvcCBjb3VsZCBsZWFrIG9udG8gdGhlIERPTSBlbGVtZW50LlxuICovXG5leHBvcnQgY29uc3QgU0laRV9BV0FSRV9DT01QT05FTlRfTkFNRVMgPSBbXG4gICAgJ0lucHV0JyxcbiAgICAnSW5wdXRQYXNzd29yZCcsXG4gICAgJ0lucHV0VGV4dEFyZWEnLFxuICAgICdJbnB1dFNlYXJjaCcsXG4gICAgJ0lucHV0T1RQJyxcbiAgICAnSW5wdXRBbW91bnQnLFxuICAgICdJbnB1dE1hc2snLFxuICAgICdTZWxlY3QnLFxuICAgICdDYWxlbmRhcicsXG4gICAgJ1JhZGlvJyxcbiAgICAnUmFkaW9Hcm91cCcsXG5dO1xuLyoqXG4gKiBUZXh0LWxpa2UgZm9ybSBjb250cm9scyB3aG9zZSBlbXB0eSB2YWx1ZSBtdXN0IGRlZmF1bHQgdG8gJycgKGEgY29udHJvbGxlZFxuICogc3RyaW5nIGlucHV0KSByYXRoZXIgdGhhbiB1bmRlZmluZWQuIFVzZWQgYnkgYGluamVjdEZpZWxkYCB0byBwaWNrIGEgc2FmZVxuICogZmFsbGJhY2sgdmFsdWUuXG4gKi9cbmV4cG9ydCBjb25zdCBURVhUX0xJS0VfQ09NUE9ORU5UX05BTUVTID0gW1xuICAgICdJbnB1dCcsXG4gICAgJ0lucHV0UGFzc3dvcmQnLFxuICAgICdJbnB1dFRleHRBcmVhJyxcbiAgICAnSW5wdXRTZWFyY2gnLFxuICAgICdJbnB1dE9UUCcsXG4gICAgJ0lucHV0VHJhZGUnLFxuICAgICdJbnB1dEFtb3VudCcsXG4gICAgJ0lucHV0TWFzaycsXG4gICAgJ1RleHRBcmVhJyxcbiAgICAnSW5wdXROdW1iZXInLFxuXTsiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -44,6 +44,7 @@ function createProFormField(config) {
44
44
  var _c = props,
45
45
  name = _c.name,
46
46
  label = _c.label,
47
+ required = _c.required,
47
48
  description = _c.description,
48
49
  rules = _c.rules,
49
50
  feedback = _c.feedback,
@@ -66,7 +67,7 @@ function createProFormField(config) {
66
67
  validateTrigger = _c.validateTrigger,
67
68
  valueType = _c.valueType,
68
69
  dependenciesValues = _c.dependenciesValues,
69
- rest = __rest(_c, ["name", "label", "description", "rules", "feedback", "validateStatus", "mode", "hidden", "colProps", "fieldProps", "placeholder", "disabled", "width", "transform", "convertValue", "dependencies", "request", "params", "valueEnum", "debounceTime", "validateDebounce", "validateTrigger", "valueType", "dependenciesValues"]);
70
+ rest = __rest(_c, ["name", "label", "required", "description", "rules", "feedback", "validateStatus", "mode", "hidden", "colProps", "fieldProps", "placeholder", "disabled", "width", "transform", "convertValue", "dependencies", "request", "params", "valueEnum", "debounceTime", "validateDebounce", "validateTrigger", "valueType", "dependenciesValues"]);
70
71
 
71
72
  // Form-level fieldProps (lowest priority after mapProps defaults).
72
73
  // Stable slice only — the field shell must NOT re-render per keystroke;
@@ -129,6 +130,7 @@ function createProFormField(config) {
129
130
  return (0, _jsxRuntime.jsx)(_ProFormItem.ProFormItem, {
130
131
  name: name,
131
132
  label: label,
133
+ required: required,
132
134
  description: description,
133
135
  rules: rules,
134
136
  feedback: feedback,
@@ -169,4 +171,4 @@ function createProFormField(config) {
169
171
  return MemoizedField;
170
172
  }
171
173
  var _default = exports["default"] = createProFormField;
172
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9maWVsZHMvY3JlYXRlUHJvRm9ybUZpZWxkLmpzIiwiY29tcG9uZW50cy9Qcm9Gb3JtL3NyYy9jb21wb25lbnRzL1Byb0Zvcm0vZmllbGRzL2NyZWF0ZVByb0Zvcm1GaWVsZC50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3VzZURlYm91bmNlZENhbGxiYWNrMiIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUHJvRm9ybUl0ZW0iLCJfUHJvRm9ybURlcGVuZGVuY3kiLCJfY29udGV4dCIsIl91c2VGaWVsZFJlcXVlc3QzIiwiX3V0aWxzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJjcmVhdGVQcm9Gb3JtRmllbGQiLCJjb25maWciLCJDb21wb25lbnQiLCJjb21wb25lbnQiLCJ2YWx1ZVByb3BOYW1lIiwiZGVmYXVsdFZhbHVlVHlwZSIsInZhbHVlVHlwZSIsIm1hcFByb3BzIiwicmVuZGVyUmVhZG9ubHkiLCJNZW1vaXplZENvbXBvbmVudCIsIm1lbW8iLCJkaXNwbGF5TmFtZSIsIm5hbWUiLCJJbm5lckZpZWxkIiwicHJvcHMiLCJfYSIsIl9iIiwiX2MiLCJsYWJlbCIsImRlc2NyaXB0aW9uIiwicnVsZXMiLCJmZWVkYmFjayIsInZhbGlkYXRlU3RhdHVzIiwibW9kZSIsImhpZGRlbiIsImNvbFByb3BzIiwiZmllbGRQcm9wcyIsInBsYWNlaG9sZGVyIiwiZGlzYWJsZWQiLCJ3aWR0aCIsInRyYW5zZm9ybSIsImNvbnZlcnRWYWx1ZSIsIl9kZXBzIiwiZGVwZW5kZW5jaWVzIiwicmVxdWVzdCIsInBhcmFtcyIsInZhbHVlRW51bSIsImRlYm91bmNlVGltZSIsInZhbGlkYXRlRGVib3VuY2UiLCJ2YWxpZGF0ZVRyaWdnZXIiLCJkZXBlbmRlbmNpZXNWYWx1ZXMiLCJyZXN0IiwiX3VzZVByb0Zvcm1TdGFibGUiLCJ1c2VQcm9Gb3JtU3RhYmxlIiwiY29udGV4dEZpZWxkUHJvcHMiLCJmb3JtRGlzYWJsZWQiLCJtZXJnZWRSZXF1ZXN0UGFyYW1zIiwiYXNzaWduIiwiX3VzZUZpZWxkUmVxdWVzdCIsInVzZUZpZWxkUmVxdWVzdCIsIl91c2VGaWVsZFJlcXVlc3QyIiwiX3NsaWNlZFRvQXJyYXkyIiwicmVxdWVzdExvYWRpbmciLCJyZXF1ZXN0T3B0aW9ucyIsIm1hcHBlZCIsInVzZXJPbkNoYW5nZSIsIm9uQ2hhbmdlIiwiX3VzZURlYm91bmNlZENhbGxiYWNrIiwidXNlRGVib3VuY2VkQ2FsbGJhY2siLCJhcHBseSIsImFyZ3VtZW50cyIsImRlYm91bmNlZE9uQ2hhbmdlIiwicnVuIiwid2lkdGhTdHlsZSIsInVuZGVmaW5lZCIsInJlc29sdmVXaWR0aCIsImZpZWxkU3R5bGUiLCJzdHlsZSIsIm1lcmdlZFN0eWxlIiwibWVyZ2VkT3B0aW9ucyIsIm9wdGlvbnMiLCJ2YWx1ZUVudW1Ub09wdGlvbnMiLCJjb21wb25lbnRQcm9wcyIsImxvYWRpbmciLCJfanN4IiwiUHJvRm9ybUl0ZW0iLCJyZWFkb25seVJlbmRlciIsInZhbHVlIiwiY2hpbGRyZW4iLCJQcm9Gb3JtRmllbGRDb21wb25lbnRCYXNlIiwiUHJvRm9ybURlcGVuZGVuY3kiLCJkZXBWYWx1ZXMiLCJNZW1vaXplZEZpZWxkIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxzQkFBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksWUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssa0JBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFFBQUEsR0FBQU4s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VUFBVSxFQUFBdEIsTUFBQSxDQUFBd0QsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFLakMsS0FBSyxDQUFBLENBQUk7RUFDbEMsQ0FBQztFQUVELElBQU1vRSxhQUFhLGdCQUFHLElBQUF4RSxXQUFJLEVBQUNxRSx5QkFBeUIsQ0FBQztFQUNyRCxPQUFPRyxhQUF5RDtBQUNsRTtBQUFDLElBQUFDLFFBQUEsR0FBQUMsT0FBQSxjQUVjcEYsa0JBQWtCIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvRm9ybS9maWVsZHMvY3JlYXRlUHJvRm9ybUZpZWxkLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdXNlRGVib3VuY2VkQ2FsbGJhY2sgZnJvbSAnQDFtb25leS9ob29rcy91c2VEZWJvdW5jZWRDYWxsYmFjayc7XG5pbXBvcnQgeyBQcm9Gb3JtSXRlbSB9IGZyb20gJy4uL1Byb0Zvcm1JdGVtJztcbmltcG9ydCB7IFByb0Zvcm1EZXBlbmRlbmN5IH0gZnJvbSAnLi4vUHJvRm9ybURlcGVuZGVuY3knO1xuaW1wb3J0IHsgdXNlUHJvRm9ybVN0YWJsZSB9IGZyb20gJy4uL2NvbnRleHQnO1xuaW1wb3J0IHsgdXNlRmllbGRSZXF1ZXN0IH0gZnJvbSAnLi4vaG9va3MvdXNlRmllbGRSZXF1ZXN0JztcbmltcG9ydCB7IHJlc29sdmVXaWR0aCwgdmFsdWVFbnVtVG9PcHRpb25zIH0gZnJvbSAnLi4vdXRpbHMnO1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBjcmVhdGVQcm9Gb3JtRmllbGQg4oCUIGZhY3RvcnkgdGhhdCBwcm9kdWNlcyBhIFByb0Zvcm0tYXdhcmUgZmllbGQgY29tcG9uZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9Gb3JtRmllbGQoY29uZmlnKSB7XG4gICAgY29uc3QgeyBjb21wb25lbnQ6IENvbXBvbmVudCwgdmFsdWVQcm9wTmFtZSwgdmFsdWVUeXBlOiBkZWZhdWx0VmFsdWVUeXBlLCBtYXBQcm9wcywgcmVuZGVyUmVhZG9ubHksIH0gPSBjb25maWc7XG4gICAgLy8gTWVtbyBib3VuZGFyeSBhcm91bmQgdGhlIHdyYXBwZWQgY29udHJvbDogY29tYmluZWQgd2l0aCB0aGUgc3RhYmxlXG4gICAgLy8gaW5qZWN0ZWQgaGFuZGxlcnMgZnJvbSB1c2VGb3JtSXRlbSwgZmllbGRzIHdob3NlIHZhbHVlIGRpZG4ndCBjaGFuZ2UgY2FuXG4gICAgLy8gYmFpbCBvdXQgd2hpbGUgYW5vdGhlciBmaWVsZCBpbiB0aGUgZm9ybSBpcyB0eXBpbmcuIGRpc3BsYXlOYW1lIG11c3QgYmVcbiAgICAvLyBjYXJyaWVkIG92ZXIg4oCUIGluamVjdEZpZWxkIHVzZXMgaXQgdG8gcmVjb2duaXplIGZvcm0gY29udHJvbHMuXG4gICAgY29uc3QgTWVtb2l6ZWRDb21wb25lbnQgPSBtZW1vKENvbXBvbmVudCk7XG4gICAgTWVtb2l6ZWRDb21wb25lbnQuZGlzcGxheU5hbWUgPVxuICAgICAgICBDb21wb25lbnQuZGlzcGxheU5hbWUgfHwgQ29tcG9uZW50Lm5hbWU7XG4gICAgLy8gSW5uZXIgY29tcG9uZW50IOKAlCBoYW5kbGVzIG1vZGUsIHJlcXVlc3QsIHZhbHVlRW51bSwgZGVib3VuY2UsIHJlbmRlclxuICAgIGNvbnN0IElubmVyRmllbGQgPSAocHJvcHMpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgY29uc3QgX2MgPSBwcm9wcywgeyBuYW1lLCBsYWJlbCwgZGVzY3JpcHRpb24sIHJ1bGVzLCBmZWVkYmFjaywgdmFsaWRhdGVTdGF0dXMsIG1vZGUsIGhpZGRlbiwgY29sUHJvcHMsIGZpZWxkUHJvcHMsIHBsYWNlaG9sZGVyLCBkaXNhYmxlZCwgd2lkdGgsIHRyYW5zZm9ybSwgY29udmVydFZhbHVlLCBcbiAgICAgICAgLy8gRmllbGQtbGV2ZWwgZmVhdHVyZXNcbiAgICAgICAgZGVwZW5kZW5jaWVzOiBfZGVwcywgcmVxdWVzdCwgcGFyYW1zLCB2YWx1ZUVudW0sIGRlYm91bmNlVGltZSwgdmFsaWRhdGVEZWJvdW5jZSwgdmFsaWRhdGVUcmlnZ2VyLCB2YWx1ZVR5cGUsIGRlcGVuZGVuY2llc1ZhbHVlcyB9ID0gX2MsIHJlc3QgPSBfX3Jlc3QoX2MsIFtcIm5hbWVcIiwgXCJsYWJlbFwiLCBcImRlc2NyaXB0aW9uXCIsIFwicnVsZXNcIiwgXCJmZWVkYmFja1wiLCBcInZhbGlkYXRlU3RhdHVzXCIsIFwibW9kZVwiLCBcImhpZGRlblwiLCBcImNvbFByb3BzXCIsIFwiZmllbGRQcm9wc1wiLCBcInBsYWNlaG9sZGVyXCIsIFwiZGlzYWJsZWRcIiwgXCJ3aWR0aFwiLCBcInRyYW5zZm9ybVwiLCBcImNvbnZlcnRWYWx1ZVwiLCBcImRlcGVuZGVuY2llc1wiLCBcInJlcXVlc3RcIiwgXCJwYXJhbXNcIiwgXCJ2YWx1ZUVudW1cIiwgXCJkZWJvdW5jZVRpbWVcIiwgXCJ2YWxpZGF0ZURlYm91bmNlXCIsIFwidmFsaWRhdGVUcmlnZ2VyXCIsIFwidmFsdWVUeXBlXCIsIFwiZGVwZW5kZW5jaWVzVmFsdWVzXCJdKTtcbiAgICAgICAgLy8gRm9ybS1sZXZlbCBmaWVsZFByb3BzIChsb3dlc3QgcHJpb3JpdHkgYWZ0ZXIgbWFwUHJvcHMgZGVmYXVsdHMpLlxuICAgICAgICAvLyBTdGFibGUgc2xpY2Ugb25seSDigJQgdGhlIGZpZWxkIHNoZWxsIG11c3QgTk9UIHJlLXJlbmRlciBwZXIga2V5c3Ryb2tlO1xuICAgICAgICAvLyB2YWx1ZS9lcnJvciByZWFjdGl2aXR5IGxpdmVzIGluc2lkZSBQcm9Gb3JtSXRlbS5cbiAgICAgICAgY29uc3QgeyBmaWVsZFByb3BzOiBjb250ZXh0RmllbGRQcm9wcywgZGlzYWJsZWQ6IGZvcm1EaXNhYmxlZCwgfSA9IHVzZVByb0Zvcm1TdGFibGUoKTtcbiAgICAgICAgLy8g4pSA4pSAIEZpZWxkLWxldmVsIHJlcXVlc3Qg4pSA4pSAXG4gICAgICAgIGNvbnN0IG1lcmdlZFJlcXVlc3RQYXJhbXMgPSBkZXBlbmRlbmNpZXNWYWx1ZXNcbiAgICAgICAgICAgID8gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwYXJhbXMpLCBkZXBlbmRlbmNpZXNWYWx1ZXMpIDogcGFyYW1zO1xuICAgICAgICBjb25zdCBbcmVxdWVzdExvYWRpbmcsIHJlcXVlc3RPcHRpb25zXSA9IHVzZUZpZWxkUmVxdWVzdChyZXF1ZXN0LCBtZXJnZWRSZXF1ZXN0UGFyYW1zKTtcbiAgICAgICAgLy8gQnVpbGQgdGhlIGZpZWxkIGNoaWxkXG4gICAgICAgIGNvbnN0IG1hcHBlZCA9IG1hcFByb3BzID8gbWFwUHJvcHMocmVzdCkgOiB7fTtcbiAgICAgICAgLy8g4pSA4pSAIERlYm91bmNlIG9uQ2hhbmdlIOKUgOKUgFxuICAgICAgICAvLyBUaGUgZWZmZWN0aXZlIG9uQ2hhbmdlIGlzIHdoYXRldmVyIGVuZHMgdXAgb24gdGhlIGZpZWxkIChmaWVsZFByb3BzIHdpbnNcbiAgICAgICAgLy8gb3ZlciBtYXBwZWQsIG1hdGNoaW5nIHRoZSBzcHJlYWQgb3JkZXIgYmVsb3cpLiB1c2VEZWJvdW5jZWRDYWxsYmFjayByZWFkc1xuICAgICAgICAvLyB0aGUgbGF0ZXN0IGNhbGxiYWNrIGludGVybmFsbHksIHNvIHRoZSB3cmFwcGVyIG5ldmVyIGdvZXMgc3RhbGUgYW5kIHRoZVxuICAgICAgICAvLyBwZW5kaW5nIGNhbGwgaXMgYXV0by1jYW5jZWxsZWQgb24gdW5tb3VudC5cbiAgICAgICAgY29uc3QgdXNlck9uQ2hhbmdlID0gKChfYiA9IChfYSA9IGZpZWxkUHJvcHMgPT09IG51bGwgfHwgZmllbGRQcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogZmllbGRQcm9wcy5vbkNoYW5nZSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogY29udGV4dEZpZWxkUHJvcHMgPT09IG51bGwgfHwgY29udGV4dEZpZWxkUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbnRleHRGaWVsZFByb3BzLm9uQ2hhbmdlKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBtYXBwZWQgPT09IG51bGwgfHwgbWFwcGVkID09PSB2b2lkIDAgPyB2b2lkIDAgOiBtYXBwZWQub25DaGFuZ2UpO1xuICAgICAgICBjb25zdCB7IHJ1bjogZGVib3VuY2VkT25DaGFuZ2UgfSA9IHVzZURlYm91bmNlZENhbGxiYWNrKCguLi5hcmdzKSA9PiB1c2VyT25DaGFuZ2UgPT09IG51bGwgfHwgdXNlck9uQ2hhbmdlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB1c2VyT25DaGFuZ2UoLi4uYXJncyksIGRlYm91bmNlVGltZSk7XG4gICAgICAgIGNvbnN0IHdpZHRoU3R5bGUgPSB3aWR0aCAhPT0gdW5kZWZpbmVkID8geyB3aWR0aDogcmVzb2x2ZVdpZHRoKHdpZHRoKSB9IDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBmaWVsZFN0eWxlID0gZmllbGRQcm9wcyA9PT0gbnVsbCB8fCBmaWVsZFByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBmaWVsZFByb3BzLnN0eWxlO1xuICAgICAgICBjb25zdCBtZXJnZWRTdHlsZSA9IHdpZHRoU3R5bGVcbiAgICAgICAgICAgID8gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCAoZmllbGRTdHlsZSB8fCB7fSkpLCB3aWR0aFN0eWxlKSA6IGZpZWxkU3R5bGU7XG4gICAgICAgIC8vIE1lcmdlIHZhbHVlRW51bSArIHJlcXVlc3Qgb3B0aW9ucyBpbnRvIGZpZWxkUHJvcHMub3B0aW9ucy4gQSBjb25maWd1cmVkXG4gICAgICAgIC8vIHJlcXVlc3QgaXMgQVVUSE9SSVRBVElWRTogYW4gZW1wdHkgcmVzdWx0IG1lYW5zIFwibm8gb3B0aW9uc1wiIOKAlCBmYWxsaW5nXG4gICAgICAgIC8vIGJhY2sgdG8gdmFsdWVFbnVtL2ZpZWxkUHJvcHMub3B0aW9ucyB3b3VsZCBzaG93IG9wdGlvbnMgdGhlIHNlcnZlciBqdXN0XG4gICAgICAgIC8vIHNhaWQgZG9uJ3QgZXhpc3QuXG4gICAgICAgIGxldCBtZXJnZWRPcHRpb25zID0gZmllbGRQcm9wcyA9PT0gbnVsbCB8fCBmaWVsZFByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBmaWVsZFByb3BzLm9wdGlvbnM7XG4gICAgICAgIGlmICh2YWx1ZUVudW0pIHtcbiAgICAgICAgICAgIG1lcmdlZE9wdGlvbnMgPSB2YWx1ZUVudW1Ub09wdGlvbnModmFsdWVFbnVtKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocmVxdWVzdCkge1xuICAgICAgICAgICAgbWVyZ2VkT3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFByb3BzID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIG1hcHBlZCksIChmb3JtRGlzYWJsZWQgPyB7IGRpc2FibGVkOiB0cnVlIH0gOiB7fSkpLCAoY29udGV4dEZpZWxkUHJvcHMgfHwge30pKSwgKGZpZWxkUHJvcHMgfHwge30pKSwgKG1lcmdlZE9wdGlvbnMgIT09IHVuZGVmaW5lZCA/IHsgb3B0aW9uczogbWVyZ2VkT3B0aW9ucyB9IDoge30pKSwgKHJlcXVlc3RMb2FkaW5nID8geyBsb2FkaW5nOiB0cnVlIH0gOiB7fSkpLCAocGxhY2Vob2xkZXIgIT09IHVuZGVmaW5lZCA/IHsgcGxhY2Vob2xkZXIgfSA6IHt9KSksIChkaXNhYmxlZCAhPT0gdW5kZWZpbmVkID8geyBkaXNhYmxlZCB9IDoge30pKSwgKG1lcmdlZFN0eWxlID8geyBzdHlsZTogbWVyZ2VkU3R5bGUgfSA6IHt9KSk7XG4gICAgICAgIC8vIFdpcmUgZGVib3VuY2UuIFRoZSB3cmFwcGVyIGZvcndhcmRzIHRvIHRoZSBsYXRlc3QgdXNlciBvbkNoYW5nZSB2aWFcbiAgICAgICAgLy8gYG9uQ2hhbmdlTGF0ZXN0YCwgc28gbm8gbmVlZCB0byBzdGFzaCBpdCBvbiBhIHJlZiBoZXJlLlxuICAgICAgICBpZiAoZGVib3VuY2VUaW1lICYmIGRlYm91bmNlVGltZSA+IDApIHtcbiAgICAgICAgICAgIGNvbXBvbmVudFByb3BzLm9uQ2hhbmdlID0gZGVib3VuY2VkT25DaGFuZ2U7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChfanN4KFByb0Zvcm1JdGVtLCB7IG5hbWU6IG5hbWUsIGxhYmVsOiBsYWJlbCwgZGVzY3JpcHRpb246IGRlc2NyaXB0aW9uLCBydWxlczogcnVsZXMsIGZlZWRiYWNrOiBmZWVkYmFjaywgdmFsaWRhdGVTdGF0dXM6IHZhbGlkYXRlU3RhdHVzLCBoaWRkZW46IGhpZGRlbiwgbW9kZTogbW9kZSwgY29sUHJvcHM6IGNvbFByb3BzLCB0cmFuc2Zvcm06IHRyYW5zZm9ybSwgY29udmVydFZhbHVlOiBjb252ZXJ0VmFsdWUsIHZhbHVlUHJvcE5hbWU6IHZhbHVlUHJvcE5hbWUsIHZhbGlkYXRlRGVib3VuY2U6IHZhbGlkYXRlRGVib3VuY2UsIHZhbGlkYXRlVHJpZ2dlcjogdmFsaWRhdGVUcmlnZ2VyLCB2YWx1ZVR5cGU6IHZhbHVlVHlwZSAhPT0gbnVsbCAmJiB2YWx1ZVR5cGUgIT09IHZvaWQgMCA/IHZhbHVlVHlwZSA6IGRlZmF1bHRWYWx1ZVR5cGUsIFxuICAgICAgICAgICAgLy8gVGhlIHJlbmRlcmVyIGdldHMgdGhlIFJFU09MVkVEIGNvbXBvbmVudCBwcm9wcyAodmFsdWVFbnVtL3JlcXVlc3RcbiAgICAgICAgICAgIC8vIGFscmVhZHkgbWVyZ2VkIGludG8gYG9wdGlvbnNgKSBzbyBpdCBjYW4gbWFwIHZhbHVlcyB0byBsYWJlbHMuXG4gICAgICAgICAgICByZWFkb25seVJlbmRlcjogcmVuZGVyUmVhZG9ubHlcbiAgICAgICAgICAgICAgICA/ICh2YWx1ZSkgPT4gcmVuZGVyUmVhZG9ubHkodmFsdWUsIGNvbXBvbmVudFByb3BzKVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLCBjaGlsZHJlbjogX2pzeChNZW1vaXplZENvbXBvbmVudCwgT2JqZWN0LmFzc2lnbih7fSwgY29tcG9uZW50UHJvcHMpKSB9KSk7XG4gICAgfTtcbiAgICAvLyBPdXRlciBjb21wb25lbnQg4oCUIGhhbmRsZXMgYXV0by13cmFwcGluZyB3aXRoIFByb0Zvcm1EZXBlbmRlbmN5XG4gICAgY29uc3QgUHJvRm9ybUZpZWxkQ29tcG9uZW50QmFzZSA9IChwcm9wcykgPT4ge1xuICAgICAgICBjb25zdCB7IGRlcGVuZGVuY2llcyB9ID0gcHJvcHM7XG4gICAgICAgIGlmIChkZXBlbmRlbmNpZXMgJiYgZGVwZW5kZW5jaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHJldHVybiAoX2pzeChQcm9Gb3JtRGVwZW5kZW5jeSwgeyBuYW1lOiBkZXBlbmRlbmNpZXMsIGNoaWxkcmVuOiAoZGVwVmFsdWVzKSA9PiAoX2pzeChJbm5lckZpZWxkLCBPYmplY3QuYXNzaWduKHt9LCBwcm9wcywgeyBkZXBlbmRlbmNpZXNWYWx1ZXM6IGRlcFZhbHVlcyB9KSkpIH0pKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gX2pzeChJbm5lckZpZWxkLCBPYmplY3QuYXNzaWduKHt9LCBwcm9wcykpO1xuICAgIH07XG4gICAgY29uc3QgTWVtb2l6ZWRGaWVsZCA9IG1lbW8oUHJvRm9ybUZpZWxkQ29tcG9uZW50QmFzZSk7XG4gICAgcmV0dXJuIE1lbW9pemVkRmllbGQ7XG59XG5leHBvcnQgZGVmYXVsdCBjcmVhdGVQcm9Gb3JtRmllbGQ7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
174
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9maWVsZHMvY3JlYXRlUHJvRm9ybUZpZWxkLmpzIiwiY29tcG9uZW50cy9Qcm9Gb3JtL3NyYy9jb21wb25lbnRzL1Byb0Zvcm0vZmllbGRzL2NyZWF0ZVByb0Zvcm1GaWVsZC50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3VzZURlYm91bmNlZENhbGxiYWNrMiIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUHJvRm9ybUl0ZW0iLCJfUHJvRm9ybURlcGVuZGVuY3kiLCJfY29udGV4dCIsIl91c2VGaWVsZFJlcXVlc3QzIiwiX3V0aWxzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJjcmVhdGVQcm9Gb3JtRmllbGQiLCJjb25maWciLCJDb21wb25lbnQiLCJjb21wb25lbnQiLCJ2YWx1ZVByb3BOYW1lIiwiZGVmYXVsdFZhbHVlVHlwZSIsInZhbHVlVHlwZSIsIm1hcFByb3BzIiwicmVuZGVyUmVhZG9ubHkiLCJNZW1vaXplZENvbXBvbmVudCIsIm1lbW8iLCJkaXNwbGF5TmFtZSIsIm5hbWUiLCJJbm5lckZpZWxkIiwicHJvcHMiLCJfYSIsIl9iIiwiX2MiLCJsYWJlbCIsInJlcXVpcmVkIiwiZGVzY3JpcHRpb24iLCJydWxlcyIsImZlZWRiYWNrIiwidmFsaWRhdGVTdGF0dXMiLCJtb2RlIiwiaGlkZGVuIiwiY29sUHJvcHMiLCJmaWVsZFByb3BzIiwicGxhY2Vob2xkZXIiLCJkaXNhYmxlZCIsIndpZHRoIiwidHJhbnNmb3JtIiwiY29udmVydFZhbHVlIiwiX2RlcHMiLCJkZXBlbmRlbmNpZXMiLCJyZXF1ZXN0IiwicGFyYW1zIiwidmFsdWVFbnVtIiwiZGVib3VuY2VUaW1lIiwidmFsaWRhdGVEZWJvdW5jZSIsInZhbGlkYXRlVHJpZ2dlciIsImRlcGVuZGVuY2llc1ZhbHVlcyIsInJlc3QiLCJfdXNlUHJvRm9ybVN0YWJsZSIsInVzZVByb0Zvcm1TdGFibGUiLCJjb250ZXh0RmllbGRQcm9wcyIsImZvcm1EaXNhYmxlZCIsIm1lcmdlZFJlcXVlc3RQYXJhbXMiLCJhc3NpZ24iLCJfdXNlRmllbGRSZXF1ZXN0IiwidXNlRmllbGRSZXF1ZXN0IiwiX3VzZUZpZWxkUmVxdWVzdDIiLCJfc2xpY2VkVG9BcnJheTIiLCJyZXF1ZXN0TG9hZGluZyIsInJlcXVlc3RPcHRpb25zIiwibWFwcGVkIiwidXNlck9uQ2hhbmdlIiwib25DaGFuZ2UiLCJfdXNlRGVib3VuY2VkQ2FsbGJhY2siLCJ1c2VEZWJvdW5jZWRDYWxsYmFjayIsImFwcGx5IiwiYXJndW1lbnRzIiwiZGVib3VuY2VkT25DaGFuZ2UiLCJydW4iLCJ3aWR0aFN0eWxlIiwidW5kZWZpbmVkIiwicmVzb2x2ZVdpZHRoIiwiZmllbGRTdHlsZSIsInN0eWxlIiwibWVyZ2VkU3R5bGUiLCJtZXJnZWRPcHRpb25zIiwib3B0aW9ucyIsInZhbHVlRW51bVRvT3B0aW9ucyIsImNvbXBvbmVudFByb3BzIiwibG9hZGluZyIsIl9qc3giLCJQcm9Gb3JtSXRlbSIsInJlYWRvbmx5UmVuZGVyIiwidmFsdWUiLCJjaGlsZHJlbiIsIlByb0Zvcm1GaWVsZENvbXBvbmVudEJhc2UiLCJQcm9Gb3JtRGVwZW5kZW5jeSIsImRlcFZhbHVlcyIsIk1lbW9pemVkRmllbGQiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQVdBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ1hBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLHNCQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxZQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxrQkFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sUUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8saUJBQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLE1BQUEsR0FBQVIsT0FBQTtBRFBBLElBQUlTLE1BQU0sR0FBSSxVQUFRLFNBQUtBLE1BQU0sSUFBSyxVQUFVQyxDQUFDLEVBQUVDLENBQUMsRUFBRTtFQUNsRCxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VBQ1YsS0FBSyxJQUFJQyxDQUFDLElBQUlILENBQUMsRUFBRSxJQUFJSSxNQUFNLENBQUNDLFNBQVMsQ0FBQ0MsY0FBYyxDQUFDQyxJQUFJLENBQUNQLENBQUMsRUFBRUcsQ0FBQyxDQUFDLElBQUlGLENBQUMsQ0FBQ08sT0FBTyxDQUFDTCxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQy9FRCxDQUFDLENBQUNDLENBQUMsQ0FBQyxHQUFHSCxDQUFDLENBQUNHLENBQUMsQ0FBQztFQUNmLElBQUlILENBQUMsSUFBSSxJQUFJLElBQUksT0FBT0ksTUFBTSxDQUFDSyxxQkFBcUIsS0FBSyxVQUFVLEVBQy9ELEtBQUssSUFBSUMsQ0FBQyxHQUFHLENBQUMsRUFBRVAsQ0FBQyxHQUFHQyxNQUFNLENBQUNLLHFCQUFxQixDQUFDVCxDQUFDLENBQUMsRUFBRVUsQ0FBQyxHQUFHUCxDQUFDLENBQUNRLE1BQU0sRUFBRUQsQ0FBQyxFQUFFLEVBQUU7SUFDcEUsSUFBSVQsQ0FBQyxDQUFDTyxPQUFPLENBQUNMLENBQUMsQ0FBQ08sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUlOLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDTyxvQkFBb0IsQ0FBQ0wsSUFBSSxDQUFDUCxDQUFDLEVBQUVHLENBQUMsQ0FBQ08sQ0FBQyxDQUFDLENBQUMsRUFDMUVSLENBQUMsQ0FBQ0MsQ0FBQyxDQUFDTyxDQUFDLENBQUMsQ0FBQyxHQUFHVixDQUFDLENBQUNHLENBQUMsQ0FBQ08sQ0FBQyxDQUFDLENBQUM7RUFDekI7RUFDSixPQUFPUixDQUFDO0FBQ1osQ0FBQztBQ0VEO0FBQ0E7QUFDQTtBQUNNLFNBQVVXLGtCQUFrQkEsQ0FDaENDLE1BQTRDLEVBQUE7RUFFNUMsSUFDYUMsU0FBUyxHQUtsQkQsTUFBTSxDQUxSRSxTQUFTO0lBQ1RDLGFBQWEsR0FJWEgsTUFBTSxDQUpSRyxhQUFhO0lBQ0ZDLGdCQUFnQixHQUd6QkosTUFBTSxDQUhSSyxTQUFTO0lBQ1RDLFFBQVEsR0FFTk4sTUFBTSxDQUZSTSxRQUFRO0lBQ1JDLGNBQWMsR0FDWlAsTUFBTSxDQURSTyxjQUFjO0VBR2hCO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsSUFBTUMsaUJBQWlCLGdCQUFHLElBQUFDLFdBQUksRUFBQ1IsU0FBUyxDQUFDO0VBQ3pDTyxpQkFBaUIsQ0FBQ0UsV0FBVyxHQUMxQlQsU0FBc0MsQ0FBQ1MsV0FBVyxJQUFJVCxTQUFTLENBQUNVLElBQUk7RUFFdkU7RUFDQSxJQUFNQyxVQUFVLEdBQWtILFNBQTVIQSxVQUFVQSxDQUFtSEMsS0FBSyxFQUFJO0lERnRJLElBQUlDLEVBQUUsRUFBRUMsRUFBRTtJQ0dSLElBQUFDLEVBQUEsR0E0QkZILEtBQWtIO01BM0JwSEYsSUFBSSxHQXlCY0ssRUFFa0csQ0EzQnBITCxJQUFJO01BQ0pNLEtBQUssR0F3QmFELEVBRWtHLENBMUJwSEMsS0FBSztNQUNMQyxRQUFRLEdBdUJVRixFQUVrRyxDQXpCcEhFLFFBQVE7TUFDUkMsV0FBVyxHQXNCT0gsRUFFa0csQ0F4QnBIRyxXQUFXO01BQ1hDLEtBQUssR0FxQmFKLEVBRWtHLENBdkJwSEksS0FBSztNQUNMQyxRQUFRLEdBb0JVTCxFQUVrRyxDQXRCcEhLLFFBQVE7TUFDUkMsY0FBYyxHQW1CSU4sRUFFa0csQ0FyQnBITSxjQUFjO01BQ2RDLElBQUksR0FrQmNQLEVBRWtHLENBcEJwSE8sSUFBSTtNQUNKQyxNQUFNLEdBaUJZUixFQUVrRyxDQW5CcEhRLE1BQU07TUFDTkMsUUFBUSxHQWdCVVQsRUFFa0csQ0FsQnBIUyxRQUFRO01BQ1JDLFVBQVUsR0FlUVYsRUFFa0csQ0FqQnBIVSxVQUFVO01BQ1ZDLFdBQVcsR0FjT1gsRUFFa0csQ0FoQnBIVyxXQUFXO01BQ1hDLFFBQVEsR0FhVVosRUFFa0csQ0FmcEhZLFFBQVE7TUFDUkMsS0FBSyxHQVlhYixFQUVrRyxDQWRwSGEsS0FBSztNQUNMQyxTQUFTLEdBV1NkLEVBRWtHLENBYnBIYyxTQUFTO01BQ1RDLFlBQVksR0FVTWYsRUFFa0csQ0FacEhlLFlBQVk7TUFFRUMsS0FBSyxHQVFEaEIsRUFFa0csQ0FWcEhpQixZQUFZO01BQ1pDLE9BQU8sR0FPV2xCLEVBRWtHLENBVHBIa0IsT0FBTztNQUNQQyxNQUFNLEdBTVluQixFQUVrRyxDQVJwSG1CLE1BQU07TUFDTkMsU0FBUyxHQUtTcEIsRUFFa0csQ0FQcEhvQixTQUFTO01BQ1RDLFlBQVksR0FJTXJCLEVBRWtHLENBTnBIcUIsWUFBWTtNQUNaQyxnQkFBZ0IsR0FHRXRCLEVBRWtHLENBTHBIc0IsZ0JBQWdCO01BQ2hCQyxlQUFlLEdBRUd2QixFQUVrRyxDQUpwSHVCLGVBQWU7TUFDZmxDLFNBQVMsR0FDU1csRUFFa0csQ0FIcEhYLFNBQVM7TUFDVG1DLGtCQUFrQixHQUFBeEIsRUFFa0csQ0FGcEh3QixrQkFBa0I7TUFDZkMsSUFBSSxHQUFBeEQsTUFBQSxDQUFBK0IsRUFBQSxFQTNCSCxDQUFBLE1BQUEsRUFBQSxPQUFBLEVBQUEsVUFBQSxFQUFBLGFBQUEsRUFBQSxPQUFBLEVBQUEsVUFBQSxFQUFBLGdCQUFBLEVBQUEsTUFBQSxFQUFBLFFBQUEsRUFBQSxVQUFBLEVBQUEsWUFBQSxFQUFBLGFBQUEsRUFBQSxVQUFBLEVBQUEsT0FBQSxFQUFBLFdBQUEsRUFBQSxjQUFBLEVBQUEsY0FBQSxFQUFBLFNBQUEsRUFBQSxRQUFBLEVBQUEsV0FBQSxFQUFBLGNBQUEsRUFBQSxrQkFBQSxFQUFBLGlCQUFBLEVBQUEsV0FBQSxFQUFBLG9CQUFBLENBNEJMLENBQXFIOztJQUV0SDtJQUNBO0lBQ0E7SUFDQSxJQUFBMEIsaUJBQUEsR0FHSSxJQUFBQyx5QkFBZ0IsRUFBQSxDQUFFO01BRlJDLGlCQUFpQixHQUFBRixpQkFBQSxDQUE3QmhCLFVBQVU7TUFDQW1CLFlBQVksR0FBQUgsaUJBQUEsQ0FBdEJkLFFBQVE7SUFHVjtJQUNBLElBQU1rQixtQkFBbUIsR0FBR04sa0JBQWtCLEdBQzNDbEQsTUFBQSxDQUFBeUQsTUFBQSxDQUFBekQsTUFBQSxDQUFBeUQsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFNWixNQUFNLENBQUEsRUFBS0ssa0JBQWtCLENBQUEsR0FDbENMLE1BQU07SUFDVixJQUFBYSxnQkFBQSxHQUF5QyxJQUFBQyxpQ0FBZSxFQUFDZixPQUFPLEVBQUVZLG1CQUFtQixDQUFDO01BQUFJLGlCQUFBLE9BQUFDLGVBQUEsYUFBQUgsZ0JBQUE7TUFBL0VJLGNBQWMsR0FBQUYsaUJBQUE7TUFBRUcsY0FBYyxHQUFBSCxpQkFBQTtJQUVyQztJQUNBLElBQU1JLE1BQU0sR0FBR2hELFFBQVEsR0FBR0EsUUFBUSxDQUFDbUMsSUFBMkIsQ0FBQyxHQUFHLENBQUEsQ0FBRTtJQUVwRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsSUFBTWMsWUFBWSxHQUFJLENBQUF4QyxFQUFBLEdBQUEsQ0FBQUQsRUFBQSxHQUFDWSxVQUFrQyxLQUFBLElBQUEsSUFBbENBLFVBQVUsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBVkEsVUFBVSxDQUEwQjhCLFFBQVEsTUFBQSxJQUFBLElBQUExQyxFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsR0FDN0Q4QixpQkFBcUQsS0FBQSxJQUFBLElBQXJEQSxpQkFBaUIsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBakJBLGlCQUFpQixDQUFzQ1ksUUFBUSxNQUFBLElBQUEsSUFBQXpDLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxHQUMvRHVDLE1BQThCLEtBQUEsSUFBQSxJQUE5QkEsTUFBTSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFOQSxNQUFNLENBQTBCRSxRQUFnRDtJQUN0RixJQUFBQyxxQkFBQSxHQUFtQyxJQUFBQyxpQ0FBb0IsRUFDckQ7UUFBQSxPQUFvQkgsWUFBWSxLQUFBLElBQUEsSUFBWkEsWUFBWSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFaQSxZQUFZLENBQUFJLEtBQUEsU0FBQUMsU0FBVSxDQUFDO01BQUEsR0FDM0N2QixZQUFZLENBQ2I7TUFIWXdCLGlCQUFpQixHQUFBSixxQkFBQSxDQUF0QkssR0FBRztJQUlYLElBQU1DLFVBQVUsR0FBR2xDLEtBQUssS0FBS21DLFNBQVMsR0FBRztNQUFFbkMsS0FBSyxFQUFFLElBQUFvQyxtQkFBWSxFQUFDcEMsS0FBSztJQUFDLENBQUUsR0FBR21DLFNBQVM7SUFDbkYsSUFBTUUsVUFBVSxHQUFJeEMsVUFBa0MsS0FBQSxJQUFBLElBQWxDQSxVQUFVLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQVZBLFVBQVUsQ0FBMEJ5QyxLQUF3QztJQUNoRyxJQUFNQyxXQUFXLEdBQUdMLFVBQVUsR0FDM0J6RSxNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQU9tQixVQUFVLElBQUksQ0FBQSxDQUFHLENBQUEsRUFBS0gsVUFBVSxDQUFBLEdBQ3RDRyxVQUFVO0lBRWQ7SUFDQTtJQUNBO0lBQ0E7SUFDQSxJQUFJRyxhQUFhLEdBQUkzQyxVQUFrQyxLQUFBLElBQUEsSUFBbENBLFVBQVUsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBVkEsVUFBVSxDQUEwQjRDLE9BQTRCO0lBQ3JGLElBQUlsQyxTQUFTLEVBQUU7TUFDYmlDLGFBQWEsR0FBRyxJQUFBRSx5QkFBa0IsRUFBQ25DLFNBQVMsQ0FBQztJQUMvQztJQUNBLElBQUlGLE9BQU8sRUFBRTtNQUNYbUMsYUFBYSxHQUFHaEIsY0FBYztJQUNoQztJQUVBLElBQU1tQixjQUFjLEdBQUdsRixNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUF6RCxNQUFBLENBQUF5RCxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQ2xCTyxNQUFNLENBQUEsRUFHTFQsWUFBWSxHQUFHO01BQUVqQixRQUFRLEVBQUU7SUFBSSxDQUFFLEdBQUcsQ0FBQSxDQUFHLENBQUEsRUFDdkNnQixpQkFBaUIsSUFBSSxDQUFBLENBQUcsQ0FBQSxFQUN4QmxCLFVBQVUsSUFBSSxDQUFBLENBQUcsQ0FBQSxFQUNqQjJDLGFBQWEsS0FBS0wsU0FBUyxHQUFHO01BQUVNLE9BQU8sRUFBRUQ7SUFBYSxDQUFFLEdBQUcsQ0FBQSxDQUFHLENBQUEsRUFDOURqQixjQUFjLEdBQUc7TUFBRXFCLE9BQU8sRUFBRTtJQUFJLENBQUUsR0FBRyxDQUFBLENBQUcsQ0FBQSxFQUN4QzlDLFdBQVcsS0FBS3FDLFNBQVMsR0FBRztNQUFFckMsV0FBVyxFQUFYQTtJQUFXLENBQUUsR0FBRyxDQUFBLENBQUcsQ0FBQSxFQUNqREMsUUFBUSxLQUFLb0MsU0FBUyxHQUFHO01BQUVwQyxRQUFRLEVBQVJBO0lBQVEsQ0FBRSxHQUFHLENBQUEsQ0FBRyxDQUFBLEVBQzNDd0MsV0FBVyxHQUFHO01BQUVELEtBQUssRUFBRUM7SUFBVyxDQUFFLEdBQUcsQ0FBQSxDQUFHLENBQ2pDO0lBRWY7SUFDQTtJQUNBLElBQUkvQixZQUFZLElBQUlBLFlBQVksR0FBRyxDQUFDLEVBQUU7TUFDbkNtQyxjQUFzQyxDQUFDaEIsUUFBUSxHQUFHSyxpQkFBaUI7SUFDdEU7SUFFQSxPQUNFLElBQUFhLGVBQUEsRUFBQ0Msd0JBQVcsRUFBQTtNQUNWaEUsSUFBSSxFQUFFQSxJQUFJO01BQ1ZNLEtBQUssRUFBRUEsS0FBSztNQUNaQyxRQUFRLEVBQUVBLFFBQVE7TUFDbEJDLFdBQVcsRUFBRUEsV0FBVztNQUN4QkMsS0FBSyxFQUFFQSxLQUFLO01BQ1pDLFFBQVEsRUFBRUEsUUFBUTtNQUNsQkMsY0FBYyxFQUFFQSxjQUE0QztNQUM1REUsTUFBTSxFQUFFQSxNQUFNO01BQ2RELElBQUksRUFBRUEsSUFBSTtNQUNWRSxRQUFRLEVBQUVBLFFBQVE7TUFDbEJLLFNBQVMsRUFBRUEsU0FBUztNQUNwQkMsWUFBWSxFQUFFQSxZQUFZO01BQzFCNUIsYUFBYSxFQUFFQSxhQUFhO01BQzVCbUMsZ0JBQWdCLEVBQUVBLGdCQUFnQjtNQUNsQ0MsZUFBZSxFQUFFQSxlQUFlO01BQ2hDbEMsU0FBUyxFQUFFQSxTQUFTLEtBQUEsSUFBQSxJQUFUQSxTQUFTLEtBQUEsS0FBQSxDQUFBLEdBQVRBLFNBQVMsR0FBSUQsZ0JBQWdCO01BQ3hDO01BQ0E7TUFDQXdFLGNBQWMsRUFDWnJFLGNBQWMsR0FDVixVQUFDc0UsS0FBSztRQUFBLE9BQUt0RSxjQUFjLENBQUNzRSxLQUFLLEVBQUVMLGNBQXFDLENBQUM7TUFBQSxJQUN2RVIsU0FBUztNQUFBYyxRQUFBLEVBR2YsSUFBQUosZUFBQSxFQUFDbEUsaUJBQWlCLEVBQUFsQixNQUFBLENBQUF5RCxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQUt5QixjQUFjLENBQUE7SUFBSSxDQUFBLENBQzdCO0VBRWxCLENBQUM7RUFFRDtFQUNBLElBQU1PLHlCQUF5QixHQUFtRSxTQUE1RkEseUJBQXlCQSxDQUFvRWxFLEtBQUssRUFBSTtJQUMxRyxJQUFRb0IsWUFBWSxHQUFLcEIsS0FBSyxDQUF0Qm9CLFlBQVk7SUFFcEIsSUFBSUEsWUFBWSxJQUFJQSxZQUFZLENBQUNwQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO01BQzNDLE9BQ0UsSUFBQTZFLGVBQUEsRUFBQ00sb0NBQWlCLEVBQUE7UUFBQ3JFLElBQUksRUFBRXNCLFlBQVk7UUFBQTZDLFFBQUEsRUFDbEMsU0FEa0NBLFFBQUFBLENBQ2pDRyxTQUFTO1VBQUEsT0FDVCxJQUFBUCxlQUFBLEVBQUM5RCxVQUFVLEVBQUF0QixNQUFBLENBQUF5RCxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQUtsQyxLQUFLLEVBQUE7WUFBRTJCLGtCQUFrQixFQUFFeUM7VUFBUyxDQUFBLENBQUEsQ0FBSTtRQUFBO01BQ3pELENBQUEsQ0FDaUI7SUFFeEI7SUFFQSxPQUFPLElBQUFQLGVBQUEsRUFBQzlELFVBQVUsRUFBQXRCLE1BQUEsQ0FBQXlELE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFBS2xDLEtBQUssQ0FBQSxDQUFJO0VBQ2xDLENBQUM7RUFFRCxJQUFNcUUsYUFBYSxnQkFBRyxJQUFBekUsV0FBSSxFQUFDc0UseUJBQXlCLENBQUM7RUFDckQsT0FBT0csYUFBeUQ7QUFDbEU7QUFBQyxJQUFBQyxRQUFBLEdBQUFDLE9BQUEsY0FFY3JGLGtCQUFrQiIsImZpbGUiOiJjb21wb25lbnRzL1Byb0Zvcm0vZmllbGRzL2NyZWF0ZVByb0Zvcm1GaWVsZC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHVzZURlYm91bmNlZENhbGxiYWNrIGZyb20gJ0AxbW9uZXkvaG9va3MvdXNlRGVib3VuY2VkQ2FsbGJhY2snO1xuaW1wb3J0IHsgUHJvRm9ybUl0ZW0gfSBmcm9tICcuLi9Qcm9Gb3JtSXRlbSc7XG5pbXBvcnQgeyBQcm9Gb3JtRGVwZW5kZW5jeSB9IGZyb20gJy4uL1Byb0Zvcm1EZXBlbmRlbmN5JztcbmltcG9ydCB7IHVzZVByb0Zvcm1TdGFibGUgfSBmcm9tICcuLi9jb250ZXh0JztcbmltcG9ydCB7IHVzZUZpZWxkUmVxdWVzdCB9IGZyb20gJy4uL2hvb2tzL3VzZUZpZWxkUmVxdWVzdCc7XG5pbXBvcnQgeyByZXNvbHZlV2lkdGgsIHZhbHVlRW51bVRvT3B0aW9ucyB9IGZyb20gJy4uL3V0aWxzJztcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gY3JlYXRlUHJvRm9ybUZpZWxkIOKAlCBmYWN0b3J5IHRoYXQgcHJvZHVjZXMgYSBQcm9Gb3JtLWF3YXJlIGZpZWxkIGNvbXBvbmVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUHJvRm9ybUZpZWxkKGNvbmZpZykge1xuICAgIGNvbnN0IHsgY29tcG9uZW50OiBDb21wb25lbnQsIHZhbHVlUHJvcE5hbWUsIHZhbHVlVHlwZTogZGVmYXVsdFZhbHVlVHlwZSwgbWFwUHJvcHMsIHJlbmRlclJlYWRvbmx5LCB9ID0gY29uZmlnO1xuICAgIC8vIE1lbW8gYm91bmRhcnkgYXJvdW5kIHRoZSB3cmFwcGVkIGNvbnRyb2w6IGNvbWJpbmVkIHdpdGggdGhlIHN0YWJsZVxuICAgIC8vIGluamVjdGVkIGhhbmRsZXJzIGZyb20gdXNlRm9ybUl0ZW0sIGZpZWxkcyB3aG9zZSB2YWx1ZSBkaWRuJ3QgY2hhbmdlIGNhblxuICAgIC8vIGJhaWwgb3V0IHdoaWxlIGFub3RoZXIgZmllbGQgaW4gdGhlIGZvcm0gaXMgdHlwaW5nLiBkaXNwbGF5TmFtZSBtdXN0IGJlXG4gICAgLy8gY2FycmllZCBvdmVyIOKAlCBpbmplY3RGaWVsZCB1c2VzIGl0IHRvIHJlY29nbml6ZSBmb3JtIGNvbnRyb2xzLlxuICAgIGNvbnN0IE1lbW9pemVkQ29tcG9uZW50ID0gbWVtbyhDb21wb25lbnQpO1xuICAgIE1lbW9pemVkQ29tcG9uZW50LmRpc3BsYXlOYW1lID1cbiAgICAgICAgQ29tcG9uZW50LmRpc3BsYXlOYW1lIHx8IENvbXBvbmVudC5uYW1lO1xuICAgIC8vIElubmVyIGNvbXBvbmVudCDigJQgaGFuZGxlcyBtb2RlLCByZXF1ZXN0LCB2YWx1ZUVudW0sIGRlYm91bmNlLCByZW5kZXJcbiAgICBjb25zdCBJbm5lckZpZWxkID0gKHByb3BzKSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGNvbnN0IF9jID0gcHJvcHMsIHsgbmFtZSwgbGFiZWwsIHJlcXVpcmVkLCBkZXNjcmlwdGlvbiwgcnVsZXMsIGZlZWRiYWNrLCB2YWxpZGF0ZVN0YXR1cywgbW9kZSwgaGlkZGVuLCBjb2xQcm9wcywgZmllbGRQcm9wcywgcGxhY2Vob2xkZXIsIGRpc2FibGVkLCB3aWR0aCwgdHJhbnNmb3JtLCBjb252ZXJ0VmFsdWUsIFxuICAgICAgICAvLyBGaWVsZC1sZXZlbCBmZWF0dXJlc1xuICAgICAgICBkZXBlbmRlbmNpZXM6IF9kZXBzLCByZXF1ZXN0LCBwYXJhbXMsIHZhbHVlRW51bSwgZGVib3VuY2VUaW1lLCB2YWxpZGF0ZURlYm91bmNlLCB2YWxpZGF0ZVRyaWdnZXIsIHZhbHVlVHlwZSwgZGVwZW5kZW5jaWVzVmFsdWVzIH0gPSBfYywgcmVzdCA9IF9fcmVzdChfYywgW1wibmFtZVwiLCBcImxhYmVsXCIsIFwicmVxdWlyZWRcIiwgXCJkZXNjcmlwdGlvblwiLCBcInJ1bGVzXCIsIFwiZmVlZGJhY2tcIiwgXCJ2YWxpZGF0ZVN0YXR1c1wiLCBcIm1vZGVcIiwgXCJoaWRkZW5cIiwgXCJjb2xQcm9wc1wiLCBcImZpZWxkUHJvcHNcIiwgXCJwbGFjZWhvbGRlclwiLCBcImRpc2FibGVkXCIsIFwid2lkdGhcIiwgXCJ0cmFuc2Zvcm1cIiwgXCJjb252ZXJ0VmFsdWVcIiwgXCJkZXBlbmRlbmNpZXNcIiwgXCJyZXF1ZXN0XCIsIFwicGFyYW1zXCIsIFwidmFsdWVFbnVtXCIsIFwiZGVib3VuY2VUaW1lXCIsIFwidmFsaWRhdGVEZWJvdW5jZVwiLCBcInZhbGlkYXRlVHJpZ2dlclwiLCBcInZhbHVlVHlwZVwiLCBcImRlcGVuZGVuY2llc1ZhbHVlc1wiXSk7XG4gICAgICAgIC8vIEZvcm0tbGV2ZWwgZmllbGRQcm9wcyAobG93ZXN0IHByaW9yaXR5IGFmdGVyIG1hcFByb3BzIGRlZmF1bHRzKS5cbiAgICAgICAgLy8gU3RhYmxlIHNsaWNlIG9ubHkg4oCUIHRoZSBmaWVsZCBzaGVsbCBtdXN0IE5PVCByZS1yZW5kZXIgcGVyIGtleXN0cm9rZTtcbiAgICAgICAgLy8gdmFsdWUvZXJyb3IgcmVhY3Rpdml0eSBsaXZlcyBpbnNpZGUgUHJvRm9ybUl0ZW0uXG4gICAgICAgIGNvbnN0IHsgZmllbGRQcm9wczogY29udGV4dEZpZWxkUHJvcHMsIGRpc2FibGVkOiBmb3JtRGlzYWJsZWQsIH0gPSB1c2VQcm9Gb3JtU3RhYmxlKCk7XG4gICAgICAgIC8vIOKUgOKUgCBGaWVsZC1sZXZlbCByZXF1ZXN0IOKUgOKUgFxuICAgICAgICBjb25zdCBtZXJnZWRSZXF1ZXN0UGFyYW1zID0gZGVwZW5kZW5jaWVzVmFsdWVzXG4gICAgICAgICAgICA/IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgcGFyYW1zKSwgZGVwZW5kZW5jaWVzVmFsdWVzKSA6IHBhcmFtcztcbiAgICAgICAgY29uc3QgW3JlcXVlc3RMb2FkaW5nLCByZXF1ZXN0T3B0aW9uc10gPSB1c2VGaWVsZFJlcXVlc3QocmVxdWVzdCwgbWVyZ2VkUmVxdWVzdFBhcmFtcyk7XG4gICAgICAgIC8vIEJ1aWxkIHRoZSBmaWVsZCBjaGlsZFxuICAgICAgICBjb25zdCBtYXBwZWQgPSBtYXBQcm9wcyA/IG1hcFByb3BzKHJlc3QpIDoge307XG4gICAgICAgIC8vIOKUgOKUgCBEZWJvdW5jZSBvbkNoYW5nZSDilIDilIBcbiAgICAgICAgLy8gVGhlIGVmZmVjdGl2ZSBvbkNoYW5nZSBpcyB3aGF0ZXZlciBlbmRzIHVwIG9uIHRoZSBmaWVsZCAoZmllbGRQcm9wcyB3aW5zXG4gICAgICAgIC8vIG92ZXIgbWFwcGVkLCBtYXRjaGluZyB0aGUgc3ByZWFkIG9yZGVyIGJlbG93KS4gdXNlRGVib3VuY2VkQ2FsbGJhY2sgcmVhZHNcbiAgICAgICAgLy8gdGhlIGxhdGVzdCBjYWxsYmFjayBpbnRlcm5hbGx5LCBzbyB0aGUgd3JhcHBlciBuZXZlciBnb2VzIHN0YWxlIGFuZCB0aGVcbiAgICAgICAgLy8gcGVuZGluZyBjYWxsIGlzIGF1dG8tY2FuY2VsbGVkIG9uIHVubW91bnQuXG4gICAgICAgIGNvbnN0IHVzZXJPbkNoYW5nZSA9ICgoX2IgPSAoX2EgPSBmaWVsZFByb3BzID09PSBudWxsIHx8IGZpZWxkUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGZpZWxkUHJvcHMub25DaGFuZ2UpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGNvbnRleHRGaWVsZFByb3BzID09PSBudWxsIHx8IGNvbnRleHRGaWVsZFByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjb250ZXh0RmllbGRQcm9wcy5vbkNoYW5nZSkgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogbWFwcGVkID09PSBudWxsIHx8IG1hcHBlZCA9PT0gdm9pZCAwID8gdm9pZCAwIDogbWFwcGVkLm9uQ2hhbmdlKTtcbiAgICAgICAgY29uc3QgeyBydW46IGRlYm91bmNlZE9uQ2hhbmdlIH0gPSB1c2VEZWJvdW5jZWRDYWxsYmFjaygoLi4uYXJncykgPT4gdXNlck9uQ2hhbmdlID09PSBudWxsIHx8IHVzZXJPbkNoYW5nZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogdXNlck9uQ2hhbmdlKC4uLmFyZ3MpLCBkZWJvdW5jZVRpbWUpO1xuICAgICAgICBjb25zdCB3aWR0aFN0eWxlID0gd2lkdGggIT09IHVuZGVmaW5lZCA/IHsgd2lkdGg6IHJlc29sdmVXaWR0aCh3aWR0aCkgfSA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgZmllbGRTdHlsZSA9IGZpZWxkUHJvcHMgPT09IG51bGwgfHwgZmllbGRQcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogZmllbGRQcm9wcy5zdHlsZTtcbiAgICAgICAgY29uc3QgbWVyZ2VkU3R5bGUgPSB3aWR0aFN0eWxlXG4gICAgICAgICAgICA/IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgKGZpZWxkU3R5bGUgfHwge30pKSwgd2lkdGhTdHlsZSkgOiBmaWVsZFN0eWxlO1xuICAgICAgICAvLyBNZXJnZSB2YWx1ZUVudW0gKyByZXF1ZXN0IG9wdGlvbnMgaW50byBmaWVsZFByb3BzLm9wdGlvbnMuIEEgY29uZmlndXJlZFxuICAgICAgICAvLyByZXF1ZXN0IGlzIEFVVEhPUklUQVRJVkU6IGFuIGVtcHR5IHJlc3VsdCBtZWFucyBcIm5vIG9wdGlvbnNcIiDigJQgZmFsbGluZ1xuICAgICAgICAvLyBiYWNrIHRvIHZhbHVlRW51bS9maWVsZFByb3BzLm9wdGlvbnMgd291bGQgc2hvdyBvcHRpb25zIHRoZSBzZXJ2ZXIganVzdFxuICAgICAgICAvLyBzYWlkIGRvbid0IGV4aXN0LlxuICAgICAgICBsZXQgbWVyZ2VkT3B0aW9ucyA9IGZpZWxkUHJvcHMgPT09IG51bGwgfHwgZmllbGRQcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogZmllbGRQcm9wcy5vcHRpb25zO1xuICAgICAgICBpZiAodmFsdWVFbnVtKSB7XG4gICAgICAgICAgICBtZXJnZWRPcHRpb25zID0gdmFsdWVFbnVtVG9PcHRpb25zKHZhbHVlRW51bSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHJlcXVlc3QpIHtcbiAgICAgICAgICAgIG1lcmdlZE9wdGlvbnMgPSByZXF1ZXN0T3B0aW9ucztcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjb21wb25lbnRQcm9wcyA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBtYXBwZWQpLCAoZm9ybURpc2FibGVkID8geyBkaXNhYmxlZDogdHJ1ZSB9IDoge30pKSwgKGNvbnRleHRGaWVsZFByb3BzIHx8IHt9KSksIChmaWVsZFByb3BzIHx8IHt9KSksIChtZXJnZWRPcHRpb25zICE9PSB1bmRlZmluZWQgPyB7IG9wdGlvbnM6IG1lcmdlZE9wdGlvbnMgfSA6IHt9KSksIChyZXF1ZXN0TG9hZGluZyA/IHsgbG9hZGluZzogdHJ1ZSB9IDoge30pKSwgKHBsYWNlaG9sZGVyICE9PSB1bmRlZmluZWQgPyB7IHBsYWNlaG9sZGVyIH0gOiB7fSkpLCAoZGlzYWJsZWQgIT09IHVuZGVmaW5lZCA/IHsgZGlzYWJsZWQgfSA6IHt9KSksIChtZXJnZWRTdHlsZSA/IHsgc3R5bGU6IG1lcmdlZFN0eWxlIH0gOiB7fSkpO1xuICAgICAgICAvLyBXaXJlIGRlYm91bmNlLiBUaGUgd3JhcHBlciBmb3J3YXJkcyB0byB0aGUgbGF0ZXN0IHVzZXIgb25DaGFuZ2UgdmlhXG4gICAgICAgIC8vIGBvbkNoYW5nZUxhdGVzdGAsIHNvIG5vIG5lZWQgdG8gc3Rhc2ggaXQgb24gYSByZWYgaGVyZS5cbiAgICAgICAgaWYgKGRlYm91bmNlVGltZSAmJiBkZWJvdW5jZVRpbWUgPiAwKSB7XG4gICAgICAgICAgICBjb21wb25lbnRQcm9wcy5vbkNoYW5nZSA9IGRlYm91bmNlZE9uQ2hhbmdlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAoX2pzeChQcm9Gb3JtSXRlbSwgeyBuYW1lOiBuYW1lLCBsYWJlbDogbGFiZWwsIHJlcXVpcmVkOiByZXF1aXJlZCwgZGVzY3JpcHRpb246IGRlc2NyaXB0aW9uLCBydWxlczogcnVsZXMsIGZlZWRiYWNrOiBmZWVkYmFjaywgdmFsaWRhdGVTdGF0dXM6IHZhbGlkYXRlU3RhdHVzLCBoaWRkZW46IGhpZGRlbiwgbW9kZTogbW9kZSwgY29sUHJvcHM6IGNvbFByb3BzLCB0cmFuc2Zvcm06IHRyYW5zZm9ybSwgY29udmVydFZhbHVlOiBjb252ZXJ0VmFsdWUsIHZhbHVlUHJvcE5hbWU6IHZhbHVlUHJvcE5hbWUsIHZhbGlkYXRlRGVib3VuY2U6IHZhbGlkYXRlRGVib3VuY2UsIHZhbGlkYXRlVHJpZ2dlcjogdmFsaWRhdGVUcmlnZ2VyLCB2YWx1ZVR5cGU6IHZhbHVlVHlwZSAhPT0gbnVsbCAmJiB2YWx1ZVR5cGUgIT09IHZvaWQgMCA/IHZhbHVlVHlwZSA6IGRlZmF1bHRWYWx1ZVR5cGUsIFxuICAgICAgICAgICAgLy8gVGhlIHJlbmRlcmVyIGdldHMgdGhlIFJFU09MVkVEIGNvbXBvbmVudCBwcm9wcyAodmFsdWVFbnVtL3JlcXVlc3RcbiAgICAgICAgICAgIC8vIGFscmVhZHkgbWVyZ2VkIGludG8gYG9wdGlvbnNgKSBzbyBpdCBjYW4gbWFwIHZhbHVlcyB0byBsYWJlbHMuXG4gICAgICAgICAgICByZWFkb25seVJlbmRlcjogcmVuZGVyUmVhZG9ubHlcbiAgICAgICAgICAgICAgICA/ICh2YWx1ZSkgPT4gcmVuZGVyUmVhZG9ubHkodmFsdWUsIGNvbXBvbmVudFByb3BzKVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLCBjaGlsZHJlbjogX2pzeChNZW1vaXplZENvbXBvbmVudCwgT2JqZWN0LmFzc2lnbih7fSwgY29tcG9uZW50UHJvcHMpKSB9KSk7XG4gICAgfTtcbiAgICAvLyBPdXRlciBjb21wb25lbnQg4oCUIGhhbmRsZXMgYXV0by13cmFwcGluZyB3aXRoIFByb0Zvcm1EZXBlbmRlbmN5XG4gICAgY29uc3QgUHJvRm9ybUZpZWxkQ29tcG9uZW50QmFzZSA9IChwcm9wcykgPT4ge1xuICAgICAgICBjb25zdCB7IGRlcGVuZGVuY2llcyB9ID0gcHJvcHM7XG4gICAgICAgIGlmIChkZXBlbmRlbmNpZXMgJiYgZGVwZW5kZW5jaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHJldHVybiAoX2pzeChQcm9Gb3JtRGVwZW5kZW5jeSwgeyBuYW1lOiBkZXBlbmRlbmNpZXMsIGNoaWxkcmVuOiAoZGVwVmFsdWVzKSA9PiAoX2pzeChJbm5lckZpZWxkLCBPYmplY3QuYXNzaWduKHt9LCBwcm9wcywgeyBkZXBlbmRlbmNpZXNWYWx1ZXM6IGRlcFZhbHVlcyB9KSkpIH0pKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gX2pzeChJbm5lckZpZWxkLCBPYmplY3QuYXNzaWduKHt9LCBwcm9wcykpO1xuICAgIH07XG4gICAgY29uc3QgTWVtb2l6ZWRGaWVsZCA9IG1lbW8oUHJvRm9ybUZpZWxkQ29tcG9uZW50QmFzZSk7XG4gICAgcmV0dXJuIE1lbW9pemVkRmllbGQ7XG59XG5leHBvcnQgZGVmYXVsdCBjcmVhdGVQcm9Gb3JtRmllbGQ7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -119,6 +119,20 @@ export interface ProFormContextValue<Values = Record<string, any>> extends ProFo
119
119
  export interface ProFormTypedFieldProps<Values = Record<string, any>, Name extends ProFormFieldName<Values> = ProFormFieldName<Values>, FieldProps = Record<string, any>, FieldParams = Record<string, any>> {
120
120
  name?: Name;
121
121
  label?: ReactNode;
122
+ /**
123
+ * Defaults to `true`. No marker is drawn for a required field — instead,
124
+ * `required={false}` appends the italic `(Optional)` suffix to the label,
125
+ * matching the Input/Select/Calendar field shells.
126
+ *
127
+ * This is label copy only; it does NOT add or remove validation. Keep it in
128
+ * step with `rules` yourself — a field with `rules: [{ required: true }]`
129
+ * should not also say `(Optional)`.
130
+ *
131
+ * Note this is a field-level prop, not `fieldProps.required`: the label is
132
+ * rendered by `ProFormItem`, so a `required` buried in `fieldProps` reaches
133
+ * a control that has no label and shows nothing.
134
+ */
135
+ required?: boolean;
122
136
  rules?: FormRule<Values>[];
123
137
  description?: ReactNode;
124
138
  feedback?: ReactNode;
@@ -168,6 +182,12 @@ export interface ProFormItemProps<Values = Record<string, any>, Name extends Pro
168
182
  prefixCls?: string;
169
183
  label?: ReactNode;
170
184
  name?: Name;
185
+ /**
186
+ * Defaults to `true`. `required={false}` appends the italic `(Optional)`
187
+ * suffix to the label — there is no required marker. Label copy only; it
188
+ * does not affect validation.
189
+ */
190
+ required?: boolean;
171
191
  rules?: FormRule<Values>[];
172
192
  description?: ReactNode;
173
193
  feedback?: ReactNode;
@@ -37,6 +37,10 @@
37
37
  padding: 0;
38
38
  }
39
39
 
40
+ .om-component-ui-form-item-optional {
41
+ margin-inline-start: var(--om-spacing-100, 4px);
42
+ }
43
+
40
44
  .om-component-ui-form-item-label-wrapper-left {
41
45
  text-align: left;
42
46
  }
@@ -2,7 +2,7 @@ import type { AnchorHTMLAttributes, HTMLAttributes, ReactNode } from 'react';
2
2
  import type { TooltipProps } from "../Tooltip";
3
3
  export declare const TYPOGRAPHY_DISPLAY_SIZES: readonly ["xl", "lg", "md", "sm", "xs"];
4
4
  export declare const TYPOGRAPHY_HEADLINE_SIZES: readonly ["lg", "md", "sm", "xs"];
5
- export declare const TYPOGRAPHY_TITLE_SIZES: readonly ["lg", "md", "sm"];
5
+ export declare const TYPOGRAPHY_TITLE_SIZES: readonly ["lg", "md", "sm", "xs"];
6
6
  export declare const TYPOGRAPHY_BODY_SIZES: readonly ["lg", "md", "sm"];
7
7
  export declare const TYPOGRAPHY_LABEL_SIZES: readonly ["xl", "lg", "md", "sm", "xs"];
8
8
  export declare const TYPOGRAPHY_LINK_SIZES: readonly ["md", "sm"];
@@ -6,7 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.TYPOGRAPHY_TITLE_SIZES = exports.TYPOGRAPHY_LINK_SIZES = exports.TYPOGRAPHY_LABEL_SIZES = exports.TYPOGRAPHY_HEADLINE_SIZES = exports.TYPOGRAPHY_DISPLAY_SIZES = exports.TYPOGRAPHY_COLORS = exports.TYPOGRAPHY_BODY_SIZES = void 0;
7
7
  var TYPOGRAPHY_DISPLAY_SIZES = exports.TYPOGRAPHY_DISPLAY_SIZES = ['xl', 'lg', 'md', 'sm', 'xs'];
8
8
  var TYPOGRAPHY_HEADLINE_SIZES = exports.TYPOGRAPHY_HEADLINE_SIZES = ['lg', 'md', 'sm', 'xs'];
9
- var TYPOGRAPHY_TITLE_SIZES = exports.TYPOGRAPHY_TITLE_SIZES = ['lg', 'md', 'sm'];
9
+ // `xs` is an extension Figma's Title scale stops at Small. It stays for
10
+ // product code that already uses it; prefer Label `sm` for new 12/16 text.
11
+ var TYPOGRAPHY_TITLE_SIZES = exports.TYPOGRAPHY_TITLE_SIZES = ['lg', 'md', 'sm', 'xs'];
10
12
  var TYPOGRAPHY_BODY_SIZES = exports.TYPOGRAPHY_BODY_SIZES = ['lg', 'md', 'sm'];
11
13
  var TYPOGRAPHY_LABEL_SIZES = exports.TYPOGRAPHY_LABEL_SIZES = ['xl', 'lg', 'md', 'sm', 'xs'];
12
14
  var TYPOGRAPHY_LINK_SIZES = exports.TYPOGRAPHY_LINK_SIZES = ['md', 'sm'];
@@ -25,4 +27,4 @@ var TYPOGRAPHY_COLORS = exports.TYPOGRAPHY_COLORS = [
25
27
  'warning', 'warning-secondary', 'warning-tertiary', 'on-warning', 'on-warning-secondary', 'on-warning-tertiary',
26
28
  // Danger
27
29
  'danger', 'danger-secondary', 'danger-tertiary', 'on-danger', 'on-danger-secondary', 'on-danger-tertiary'];
28
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvVHlwb2dyYXBoeS9pbnRlcmZhY2UudHMiXSwibmFtZXMiOlsiVFlQT0dSQVBIWV9ESVNQTEFZX1NJWkVTIiwiZXhwb3J0cyIsIlRZUE9HUkFQSFlfSEVBRExJTkVfU0laRVMiLCJUWVBPR1JBUEhZX1RJVExFX1NJWkVTIiwiVFlQT0dSQVBIWV9CT0RZX1NJWkVTIiwiVFlQT0dSQVBIWV9MQUJFTF9TSVpFUyIsIlRZUE9HUkFQSFlfTElOS19TSVpFUyIsIlRZUE9HUkFQSFlfQ09MT1JTIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFPTyxJQUFNQSx3QkFBd0IsR0FBQUMsT0FBQSxDQUFBRCx3QkFBQSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBVTtBQUN4RSxJQUFNRSx5QkFBeUIsR0FBQUQsT0FBQSxDQUFBQyx5QkFBQSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFVO0FBQ25FLElBQU1DLHNCQUFzQixHQUFBRixPQUFBLENBQUFFLHNCQUFBLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBVTtBQUMxRCxJQUFNQyxxQkFBcUIsR0FBQUgsT0FBQSxDQUFBRyxxQkFBQSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQVU7QUFDekQsSUFBTUMsc0JBQXNCLEdBQUFKLE9BQUEsQ0FBQUksc0JBQUEsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQVU7QUFDdEUsSUFBTUMscUJBQXFCLEdBQUFMLE9BQUEsQ0FBQUsscUJBQUEsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQVU7QUFnQm5ELElBQU1DLGlCQUFpQixHQUFBTixPQUFBLENBQUFNLGlCQUFBLEdBQUc7QUFDL0I7QUFDQSxTQUFTLEVBQ1QsbUJBQW1CLEVBQ25CLGtCQUFrQjtBQUNsQjtBQUNBLFVBQVU7QUFDVjtBQUNBLE9BQU8sRUFDUCxpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixvQkFBb0IsRUFDcEIsbUJBQW1CO0FBQ25CO0FBQ0EsU0FBUyxFQUNULG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsWUFBWSxFQUNaLHNCQUFzQixFQUN0QixxQkFBcUI7QUFDckI7QUFDQSxVQUFVLEVBQ1Ysb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixhQUFhLEVBQ2IsdUJBQXVCLEVBQ3ZCLHNCQUFzQjtBQUN0QjtBQUNBLFNBQVMsRUFDVCxtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLFlBQVksRUFDWixzQkFBc0IsRUFDdEIscUJBQXFCO0FBQ3JCO0FBQ0EsUUFBUSxFQUNSLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsV0FBVyxFQUNYLHFCQUFxQixFQUNyQixvQkFBb0IsQ0FDWiIsImZpbGUiOiJjb21wb25lbnRzL1R5cG9ncmFwaHkvaW50ZXJmYWNlLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
30
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvVHlwb2dyYXBoeS9pbnRlcmZhY2UudHMiXSwibmFtZXMiOlsiVFlQT0dSQVBIWV9ESVNQTEFZX1NJWkVTIiwiZXhwb3J0cyIsIlRZUE9HUkFQSFlfSEVBRExJTkVfU0laRVMiLCJUWVBPR1JBUEhZX1RJVExFX1NJWkVTIiwiVFlQT0dSQVBIWV9CT0RZX1NJWkVTIiwiVFlQT0dSQVBIWV9MQUJFTF9TSVpFUyIsIlRZUE9HUkFQSFlfTElOS19TSVpFUyIsIlRZUE9HUkFQSFlfQ09MT1JTIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFPTyxJQUFNQSx3QkFBd0IsR0FBQUMsT0FBQSxDQUFBRCx3QkFBQSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBVTtBQUN4RSxJQUFNRSx5QkFBeUIsR0FBQUQsT0FBQSxDQUFBQyx5QkFBQSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFVO0FBQzFFO0FBQ0E7QUFDTyxJQUFNQyxzQkFBc0IsR0FBQUYsT0FBQSxDQUFBRSxzQkFBQSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFVO0FBQ2hFLElBQU1DLHFCQUFxQixHQUFBSCxPQUFBLENBQUFHLHFCQUFBLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBVTtBQUN6RCxJQUFNQyxzQkFBc0IsR0FBQUosT0FBQSxDQUFBSSxzQkFBQSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBVTtBQUN0RSxJQUFNQyxxQkFBcUIsR0FBQUwsT0FBQSxDQUFBSyxxQkFBQSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBVTtBQWdCbkQsSUFBTUMsaUJBQWlCLEdBQUFOLE9BQUEsQ0FBQU0saUJBQUEsR0FBRztBQUMvQjtBQUNBLFNBQVMsRUFDVCxtQkFBbUIsRUFDbkIsa0JBQWtCO0FBQ2xCO0FBQ0EsVUFBVTtBQUNWO0FBQ0EsT0FBTyxFQUNQLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsVUFBVSxFQUNWLG9CQUFvQixFQUNwQixtQkFBbUI7QUFDbkI7QUFDQSxTQUFTLEVBQ1QsbUJBQW1CLEVBQ25CLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osc0JBQXNCLEVBQ3RCLHFCQUFxQjtBQUNyQjtBQUNBLFVBQVUsRUFDVixvQkFBb0IsRUFDcEIsbUJBQW1CLEVBQ25CLGFBQWEsRUFDYix1QkFBdUIsRUFDdkIsc0JBQXNCO0FBQ3RCO0FBQ0EsU0FBUyxFQUNULG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsWUFBWSxFQUNaLHNCQUFzQixFQUN0QixxQkFBcUI7QUFDckI7QUFDQSxRQUFRLEVBQ1Isa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNqQixXQUFXLEVBQ1gscUJBQXFCLEVBQ3JCLG9CQUFvQixDQUNaIiwiZmlsZSI6ImNvbXBvbmVudHMvVHlwb2dyYXBoeS9pbnRlcmZhY2UuanMiLCJzb3VyY2VzQ29udGVudCI6W251bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -109,6 +109,13 @@
109
109
  letter-spacing: var(--om-title-sm-letter-spacing);
110
110
  font-weight: var(--om-title-sm-font-weight);
111
111
  }
112
+ .om-component-ui-typography-title-xs {
113
+ font-size: var(--om-title-xs-font-size);
114
+ font-family: var(--om-title-xs-font-family);
115
+ line-height: var(--om-title-xs-line-height);
116
+ letter-spacing: var(--om-title-xs-letter-spacing);
117
+ font-weight: var(--om-title-xs-font-weight);
118
+ }
112
119
  .om-component-ui-typography-body-lg {
113
120
  font-size: var(--om-body-lg-font-size);
114
121
  font-family: var(--om-body-lg-font-family);
@@ -198,6 +205,9 @@
198
205
  .om-component-ui-typography-title-sm.om-component-ui-typography-strong {
199
206
  font-weight: var(--om-title-sm-strong-font-weight);
200
207
  }
208
+ .om-component-ui-typography-title-xs.om-component-ui-typography-strong {
209
+ font-weight: var(--om-title-xs-strong-font-weight);
210
+ }
201
211
  .om-component-ui-typography-body-lg.om-component-ui-typography-strong {
202
212
  font-weight: var(--om-body-lg-strong-font-weight);
203
213
  }