@1money/component-ui 0.0.56-alpha.0 → 0.0.56-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.
- package/es/components/Navigation/style/Navigation.css +2 -2
- package/es/components/Select/Select.js +4 -3
- package/es/components/Select/SelectCustom.js +4 -3
- package/es/components/Select/constants.d.ts +0 -7
- package/es/components/Select/constants.js +1 -14
- package/es/components/Select/interface.d.ts +5 -0
- package/es/components/Select/interface.js +1 -1
- package/es/components/Select/utils.d.ts +2 -0
- package/es/components/Select/utils.js +8 -1
- package/es/index.css +1 -1
- package/lib/components/Navigation/style/Navigation.css +2 -2
- package/lib/components/Select/Select.js +3 -2
- package/lib/components/Select/SelectCustom.js +3 -2
- package/lib/components/Select/constants.d.ts +0 -7
- package/lib/components/Select/constants.js +1 -14
- package/lib/components/Select/interface.d.ts +5 -0
- package/lib/components/Select/interface.js +1 -1
- package/lib/components/Select/utils.d.ts +2 -0
- package/lib/components/Select/utils.js +9 -1
- package/lib/index.css +1 -1
- package/package.json +1 -1
|
@@ -360,12 +360,12 @@
|
|
|
360
360
|
}
|
|
361
361
|
.om-component-ui-navigation-collapsed .om-component-ui-navigation-menu {
|
|
362
362
|
gap: var(--om-spacing-200, 8px);
|
|
363
|
-
align-items:
|
|
363
|
+
align-items: stretch;
|
|
364
364
|
width: 100%;
|
|
365
365
|
}
|
|
366
366
|
.om-component-ui-navigation-collapsed .om-component-ui-navigation-settings {
|
|
367
367
|
gap: var(--om-spacing-200, 8px);
|
|
368
|
-
align-items:
|
|
368
|
+
align-items: stretch;
|
|
369
369
|
width: 100%;
|
|
370
370
|
}
|
|
371
371
|
.om-component-ui-navigation-collapsed .om-component-ui-navigation-divider {
|
|
@@ -400,7 +400,8 @@ var Select = exports.Select = function Select(props) {
|
|
|
400
400
|
open: innerOpen,
|
|
401
401
|
placeholder: !hasSelection,
|
|
402
402
|
selectedOptions: selectedOptions,
|
|
403
|
-
size: normalizedSize
|
|
403
|
+
size: normalizedSize,
|
|
404
|
+
fontSize: (0, _utils.getFontSize)(normalizedSize)
|
|
404
405
|
};
|
|
405
406
|
var valueLabelClass = hasSelection ? 'value' : 'placeholder';
|
|
406
407
|
var isMultipleValueFilled = multiple && hasSelection && maxVisibleValues === undefined;
|
|
@@ -573,4 +574,4 @@ var Select = exports.Select = function Select(props) {
|
|
|
573
574
|
};
|
|
574
575
|
Select.displayName = 'Select';
|
|
575
576
|
var _default = exports["default"] = /*#__PURE__*/(0, _react2.memo)(Select);
|
|
576
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdC5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L1NlbGVjdC50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0MiIsIl9ob29rcyIsIl9JY29ucyIsIl9TcGlubmVyIiwiX1R5cG9ncmFwaHkiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX1NlbGVjdEZpZWxkU2hlbGwiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1NlbGVjdE9wdGlvbkNvbnRlbnQiLCJfU2VsZWN0U2VhcmNoQ29udHJvbCIsIl9TZWxlY3RWYWx1ZUNvbnRlbnQiLCJfdXNlU2VsZWN0U2hlbGwyIiwiX2NvbnN0YW50cyIsIl91dGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkRFRkFVTFRfTUFYX0hFSUdIVCIsIlNlbGVjdCIsImV4cG9ydHMiLCJwcm9wcyIsIl9wcm9wcyRjbGFzc05hbWUiLCJjbGFzc05hbWUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwic3R5bGUiLCJpZCIsIm5hbWUiLCJhcmlhTGFiZWwiLCJhcmlhTGFiZWxsZWRCeSIsIl9wcm9wcyRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwiX3Byb3BzJG9wdGlvbnMiLCJvcHRpb25zIiwidmFsdWUiLCJkZWZhdWx0VmFsdWUiLCJfcHJvcHMkc2l6ZSIsInNpemUiLCJfcHJvcHMkc3RhdHVzIiwic3RhdHVzIiwiX3Byb3BzJHZhcmlhbnQiLCJ2YXJpYW50IiwiX3Byb3BzJGRpc2FibGVkIiwiZGlzYWJsZWQiLCJkaXNhYmxlZFByb3AiLCJfcHJvcHMkcmVhZE9ubHkiLCJyZWFkT25seSIsIl9wcm9wcyRsb2FkaW5nIiwibG9hZGluZyIsIl9wcm9wcyRtdWx0aXBsZSIsIm11bHRpcGxlIiwibWF4VmlzaWJsZVZhbHVlcyIsIl9wcm9wcyRzZWFyY2hhYmxlIiwic2VhcmNoYWJsZSIsIl9wcm9wcyRzZWFyY2hQbGFjZWhvbCIsInNlYXJjaFBsYWNlaG9sZGVyIiwic2VhcmNoVmFsdWUiLCJfcHJvcHMkZGVmYXVsdFNlYXJjaFYiLCJkZWZhdWx0U2VhcmNoVmFsdWUiLCJfcHJvcHMkZmlsdGVySW5wdXRBdXQiLCJmaWx0ZXJJbnB1dEF1dG9Gb2N1cyIsImxhYmVsIiwibGFiZWxDbGFzc05hbWUiLCJpbmZvIiwiZGVzY3JpcHRpb24iLCJmZWVkYmFjayIsIl9wcm9wcyRyZXF1aXJlZCIsInJlcXVpcmVkIiwicHJlZml4IiwiX3Byb3BzJGVtcHR5Q29udGVudCIsImVtcHR5Q29udGVudCIsInBhbmVsRm9vdGVyIiwib3BlbiIsIl9wcm9wcyRkZWZhdWx0T3BlbiIsImRlZmF1bHRPcGVuIiwiX3Byb3BzJHBvcnRhbCIsInBvcnRhbCIsIl9wcm9wcyRhbGxvd0Rlc2VsZWN0IiwiYWxsb3dEZXNlbGVjdCIsInBhbmVsQ2xhc3NOYW1lIiwib3B0aW9uQ2xhc3NOYW1lIiwiX3Byb3BzJGxpc3RNYXhIZWlnaHQiLCJsaXN0TWF4SGVpZ2h0Iiwib2Zmc2V0IiwiYW5pbWF0aW9uIiwib25DaGFuZ2UiLCJvbk9wZW5DaGFuZ2UiLCJvblNlYXJjaENoYW5nZSIsIm9uQmx1ciIsImZpbHRlck9wdGlvbiIsInJlbmRlck9wdGlvbiIsInJlbmRlck9wdGlvbkNvbnRlbnQiLCJyZW5kZXJWYWx1ZSIsInJlZiIsImludGVyYWN0aXZlIiwiY2xhc3NlcyIsInJvb3RDbGFzc25hbWVzIiwiYXV0b0lkIiwidXNlSWQiLCJ0cmlnZ2VySWQiLCJsYWJlbElkIiwiZGVzY3JpcHRpb25JZCIsImZlZWRiYWNrSWQiLCJvcHRpb25JZFByZWZpeCIsIl91c2VDb250cm9sbGVkU3RhdGUiLCJ1c2VDb250cm9sbGVkU3RhdGUiLCJ1bmRlZmluZWQiLCJfdXNlQ29udHJvbGxlZFN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImlubmVyVmFsdWUiLCJzZXRJbm5lclZhbHVlIiwiX3VzZUNvbnRyb2xsZWRTdGF0ZTMiLCJfdXNlQ29udHJvbGxlZFN0YXRlNCIsImlubmVyU2VhcmNoVmFsdWUiLCJzZXRJbm5lclNlYXJjaFZhbHVlIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiYWN0aXZlSW5kZXgiLCJzZXRBY3RpdmVJbmRleCIsIm5vcm1hbGl6ZWRTaXplIiwibm9ybWFsaXplU2l6ZSIsImFsbE9wdGlvbkdyb3VwcyIsInVzZU1lbW8iLCJub3JtYWxpemVPcHRpb25Hcm91cHMiLCJhbGxGbGF0T3B0aW9ucyIsImZsYXR0ZW5PcHRpb25Hcm91cHMiLCJ2aXNpYmxlT3B0aW9uR3JvdXBzIiwiZmlsdGVyT3B0aW9uR3JvdXBzIiwidmlzaWJsZUZsYXRPcHRpb25zIiwic2VsZWN0ZWRPcHRpb25zIiwiZ2V0U2VsZWN0ZWRPcHRpb25zIiwic2VsZWN0ZWRJbmRleCIsImxlbmd0aCIsIm1hdGNoZWRJbmRleCIsImZpbmRJbmRleCIsIm9wdGlvbiIsImhhc1NlbGVjdGlvbiIsImxpc3RSZWYiLCJ1c2VSZWYiLCJsaXN0Q29udGVudFJlZiIsImZsb2F0aW5nUmVmIiwidHJpZ2dlclJlZiIsInNlYXJjaElucHV0UmVmIiwiaGFuZGxlVHJpZ2dlclJlZiIsInVzZUV2ZW50Q2FsbGJhY2siLCJub2RlIiwiY3VycmVudCIsIl91c2VTZWxlY3RTaGVsbCIsInVzZVNlbGVjdFNoZWxsIiwiaW5uZXJPcGVuIiwiaXNPcGVuIiwiaGFuZGxlT3BlbkNoYW5nZSIsInNldE9wZW4iLCJyZWZzIiwiY29udGV4dCIsImZsb2F0aW5nU3R5bGVzIiwidHJhbnNpdGlvblN0eWxlcyIsImlzTW91bnRlZCIsImJhc2VJbnRlcmFjdGlvbnMiLCJzZXRSZWZlcmVuY2UiLCJzZXRGbG9hdGluZyIsImxpc3ROYXZpZ2F0aW9uIiwidXNlTGlzdE5hdmlnYXRpb24iLCJvbk5hdmlnYXRlIiwiZW5hYmxlZCIsImxvb3AiLCJ2aXJ0dWFsIiwidHlwZWFoZWFkIiwidXNlVHlwZWFoZWFkIiwib25NYXRjaCIsIl91c2VJbnRlcmFjdGlvbnMiLCJ1c2VJbnRlcmFjdGlvbnMiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiZ2V0UmVmZXJlbmNlUHJvcHMiLCJnZXRGbG9hdGluZ1Byb3BzIiwiZ2V0SXRlbVByb3BzIiwiZmlyc3RFbmFibGVkSW5kZXgiLCJ1c2VFZmZlY3QiLCJwcmV2IiwiX2EiLCJmb2N1cyIsInByZXZlbnRTY3JvbGwiLCJzbGljZSIsInNldFNlYXJjaElucHV0UmVmIiwibm90aWZ5Qmx1cklmT3V0c2lkZSIsInJlbGF0ZWRUYXJnZXQiLCJldmVudCIsIl9iIiwibmV4dFRhcmdldCIsIndpdGhpblRyaWdnZXIiLCJjb250YWlucyIsIndpdGhpbkZsb2F0aW5nIiwiaGFuZGxlVHJpZ2dlckJsdXIiLCJoYW5kbGVPcHRpb25CbHVyIiwiY29tbWl0Q2hhbmdlIiwibmV4dFZhbHVlIiwibmV4dE9wdGlvbiIsImhhbmRsZVNlbGVjdE9wdGlvbiIsInRvZ2dsZU11bHRpcGxlVmFsdWUiLCJuZXh0T3B0aW9ucyIsImdldE9wdGlvbnNCeVZhbHVlcyIsImhhbmRsZVJlbW92ZVNlbGVjdGVkVmFsdWUiLCJvcHRpb25WYWx1ZSIsImdldE11bHRpcGxlVmFsdWUiLCJpbmNsdWRlcyIsInJlbW92ZU11bHRpcGxlVmFsdWUiLCJoYW5kbGVUcmlnZ2VyS2V5RG93biIsImtleSIsIktFWUJPQVJEIiwiRU5URVIiLCJTUEFDRSIsInByZXZlbnREZWZhdWx0IiwiQVJST1dfRE9XTiIsIkFSUk9XX1VQIiwiaGFuZGxlSXRlbU1vdXNlRW50ZXIiLCJpbmRleCIsImhhbmRsZVRhZ1JlbW92ZU1vdXNlRG93biIsInN0b3BQcm9wYWdhdGlvbiIsImhhbmRsZVRhZ1JlbW92ZUNsaWNrIiwiaGFuZGxlU2VhcmNoQmx1ciIsImhhbmRsZVNlYXJjaENoYW5nZSIsIl9ldmVudCIsImZpbmRFbmFibGVkSW5kZXgiLCJkaXJlY3Rpb24iLCJzdGFydCIsInN0ZXAiLCJjYW5kaWRhdGUiLCJoYW5kbGVTZWFyY2hLZXlEb3duIiwibmV4dCIsIkVTQ0FQRSIsInJlbmRlclZhbHVlTWV0YSIsInZhbHVlTGFiZWxDbGFzcyIsImlzTXVsdGlwbGVWYWx1ZUZpbGxlZCIsInRyaWdnZXJDbGFzc05hbWUiLCJqb2luQ2xzIiwiaWNvblNpemUiLCJhY3RpdmVPcHRpb25JZCIsImZsb2F0aW5nQXJpYUxhYmVsbGVkQnkiLCJkZXNjcmliZWRCeUlkcyIsImZpbHRlciIsIkJvb2xlYW4iLCJqb2luIiwiX2pzeHMiLCJTZWxlY3RGaWVsZFNoZWxsIiwiY2hpbGRyZW4iLCJhc3NpZ24iLCJ0eXBlIiwib25LZXlEb3duIiwiX2pzeCIsIlNlbGVjdFZhbHVlQ29udGVudCIsIm9uUmVtb3ZlIiwib25SZW1vdmVDbGljayIsIm9uUmVtb3ZlTW91c2VEb3duIiwiU3Bpbm5lciIsInN0cm9rZVdpZHRoIiwiSWNvbnMiLCJjb2xvciIsInBhbmVsTm9kZSIsIkZsb2F0aW5nRm9jdXNNYW5hZ2VyIiwibW9kYWwiLCJpbml0aWFsRm9jdXMiLCJyZXR1cm5Gb2N1cyIsIlNlbGVjdFNlYXJjaENvbnRyb2wiLCJhY3RpdmVEZXNjZW5kYW50IiwiVHlwb2dyYXBoeUJvZHkiLCJTRUxFQ1RfVFlQT0dSQVBIWSIsImVtcHR5IiwiZmxhdEluZGV4IiwibWFwIiwiZ3JvdXAiLCJUeXBvZ3JhcGh5TGFiZWwiLCJncm91cExhYmVsIiwic3Ryb25nIiwib3B0aW9uRmxhdEluZGV4Iiwic2VsZWN0ZWQiLCJpc09wdGlvblNlbGVjdGVkIiwiYWN0aXZlIiwib3B0aW9uTWV0YSIsImV4dHJhY3RPcHRpb25UZXh0Iiwicm9sZSIsIm9uQ2xpY2siLCJvbk1vdXNlRW50ZXIiLCJTZWxlY3RPcHRpb25Db250ZW50IiwiY29udGVudCIsIkZsb2F0aW5nUG9ydGFsIiwiZGlzcGxheU5hbWUiLCJfZGVmYXVsdCIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNBQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFPQSxJQUFBRSxPQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxNQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxRQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxXQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxXQUFBLEdBQUFDLHVCQUFBLENBQUFSLE9BQUE7QUFnQkEsSUFBQVMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQVYsT0FBQTtBQUNBLElBQUFXLG9CQUFBLEdBQUFELHNCQUFBLENBQUFWLE9BQUE7QUFDQSxJQUFBWSxvQkFBQSxHQUFBRixzQkFBQSxDQUFBVixPQUFBO0FBQ0EsSUFBQWEsbUJBQUEsR0FBQUgsc0JBQUEsQ0FBQVYsT0FBQTtBQUNBLElBQUFjLGdCQUFBLEdBQUFkLE9BQUE7QUFDQSxJQUFBZSxVQUFBLEdBQUFmLE9BQUE7QUFDQSxJQUFBZ0IsTUFBQSxHQUFBaEIsT0FBQTtBQWFBQSxPQUFBO0FBQWlCLFNBQUFpQix5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQVYsd0JBQUFVLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JB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QUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQW5CQSxtQkFBbUIsQ0FBRzZDLE1BQU0sRUFBRStJLFVBQVU7c0JBQUMsQ0FBQTtvQkFFckQsQ0FBQSxDQUFBLEtBQUExRyxNQUFBLENBcENPa0csS0FBSyxDQUFDOUQsR0FBRyxPQUFBcEMsTUFBQSxDQUFJckMsTUFBTSxDQUFDdEcsS0FBSyxDQUFFLENBcUM1QjtrQkFFYixDQUFDLENBQUM7Z0JBQUEsQ0FBQSxFQWhFTTZPLEtBQUssQ0FBQzlELEdBQUcsQ0FpRWI7Y0FBQSxDQUNQLENBQUM7WUFDSixDQUFDLENBQUM7VUFDSCxDQUFBLENBQ0csRUFDTDFJLFdBQVcsSUFBSSxJQUFJLElBQ2xCLElBQUFtTCxlQUFBLEVBQUEsS0FBQSxFQUFBO1lBQUtwTyxTQUFTLEVBQUV5RSxPQUFPLENBQUMsY0FBYyxDQUFDO1lBQUF1SixRQUFBLEVBQUcvSztVQUFXLENBQUEsQ0FDdEQ7UUFBQSxDQUFBLENBQUE7TUFDRyxDQUFBLENBRVQ7TUFFRCxPQUFPSyxNQUFNLEdBQUcsSUFBQThLLGVBQUEsRUFBQ29DLHFCQUFjLEVBQUE7UUFBQXhDLFFBQUEsRUFBRWE7TUFBUyxDQUFBLENBQWtCLEdBQUdBLFNBQVM7SUFDMUUsQ0FBQyxDQUFDLENBQUU7RUFBQSxDQUFBLENBQ2E7QUFFdkIsQ0FBQztBQUVEalAsTUFBTSxDQUFDNlEsV0FBVyxHQUFHLFFBQVE7QUFBQyxJQUFBQyxRQUFBLEdBQUE3USxPQUFBLDJCQUVmLElBQUE4USxZQUFJLEVBQUMvUSxNQUFNLENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9TZWxlY3QvU2VsZWN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IEZsb2F0aW5nRm9jdXNNYW5hZ2VyLCBGbG9hdGluZ1BvcnRhbCwgdXNlSW50ZXJhY3Rpb25zLCB1c2VMaXN0TmF2aWdhdGlvbiwgdXNlVHlwZWFoZWFkLCB9IGZyb20gJ0BmbG9hdGluZy11aS9yZWFjdCc7XG5pbXBvcnQgeyBtZW1vLCB1c2VFZmZlY3QsIHVzZUlkLCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlQ29udHJvbGxlZFN0YXRlLCB1c2VFdmVudENhbGxiYWNrIH0gZnJvbSAnQDFtb25leS9ob29rcyc7XG5pbXBvcnQgeyBJY29ucyB9IGZyb20gJy4uL0ljb25zJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuLi9TcGlubmVyJztcbmltcG9ydCB7IFR5cG9ncmFwaHlCb2R5LCBUeXBvZ3JhcGh5TGFiZWwgfSBmcm9tICcuLi9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IGpvaW5DbHMsIGRlZmF1bHQgYXMgcm9vdENsYXNzbmFtZXMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCBTZWxlY3RGaWVsZFNoZWxsIGZyb20gJy4vU2VsZWN0RmllbGRTaGVsbCc7XG5pbXBvcnQgU2VsZWN0T3B0aW9uQ29udGVudCBmcm9tICcuL1NlbGVjdE9wdGlvbkNvbnRlbnQnO1xuaW1wb3J0IFNlbGVjdFNlYXJjaENvbnRyb2wgZnJvbSAnLi9TZWxlY3RTZWFyY2hDb250cm9sJztcbmltcG9ydCBTZWxlY3RWYWx1ZUNvbnRlbnQgZnJvbSAnLi9TZWxlY3RWYWx1ZUNvbnRlbnQnO1xuaW1wb3J0IHsgdXNlU2VsZWN0U2hlbGwgfSBmcm9tICcuL3VzZVNlbGVjdFNoZWxsJztcbmltcG9ydCB7IEtFWUJPQVJELCBTRUxFQ1RfVFlQT0dSQVBIWSB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGV4dHJhY3RPcHRpb25UZXh0LCBmaWx0ZXJPcHRpb25Hcm91cHMsIGZsYXR0ZW5PcHRpb25Hcm91cHMsIGdldE11bHRpcGxlVmFsdWUsIGdldE9wdGlvbnNCeVZhbHVlcywgZ2V0U2VsZWN0ZWRPcHRpb25zLCBpc09wdGlvblNlbGVjdGVkLCBub3JtYWxpemVTaXplLCBub3JtYWxpemVPcHRpb25Hcm91cHMsIHJlbW92ZU11bHRpcGxlVmFsdWUsIHRvZ2dsZU11bHRpcGxlVmFsdWUsIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgJy4vc3R5bGUnO1xuY29uc3QgREVGQVVMVF9NQVhfSEVJR0hUID0gMzIwO1xuZXhwb3J0IGNvbnN0IFNlbGVjdCA9IChwcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgY2xhc3NOYW1lID0gJycsIHByZWZpeENscyA9ICdzZWxlY3QnLCBzdHlsZSwgaWQsIG5hbWUsICdhcmlhLWxhYmVsJzogYXJpYUxhYmVsLCAnYXJpYS1sYWJlbGxlZGJ5JzogYXJpYUxhYmVsbGVkQnksIHBsYWNlaG9sZGVyID0gJ1ZhbHVlJywgb3B0aW9ucyA9IFtdLCB2YWx1ZSwgZGVmYXVsdFZhbHVlLCBzaXplID0gJ2xhcmdlJywgc3RhdHVzID0gJ2RlZmF1bHQnLCB2YXJpYW50ID0gJ2ZpbGwnLCBkaXNhYmxlZDogZGlzYWJsZWRQcm9wID0gZmFsc2UsIHJlYWRPbmx5ID0gZmFsc2UsIGxvYWRpbmcgPSBmYWxzZSwgbXVsdGlwbGUgPSBmYWxzZSwgbWF4VmlzaWJsZVZhbHVlcywgc2VhcmNoYWJsZSA9IGZhbHNlLCBzZWFyY2hQbGFjZWhvbGRlciA9ICdTZWFyY2gnLCBzZWFyY2hWYWx1ZSwgZGVmYXVsdFNlYXJjaFZhbHVlID0gJycsIGZpbHRlcklucHV0QXV0b0ZvY3VzID0gdHJ1ZSwgbGFiZWwsIGxhYmVsQ2xhc3NOYW1lLCBpbmZvLCBkZXNjcmlwdGlvbiwgZmVlZGJhY2ssIHJlcXVpcmVkID0gdHJ1ZSwgcHJlZml4LCBlbXB0eUNvbnRlbnQgPSAnTm8gb3B0aW9ucycsIHBhbmVsRm9vdGVyLCBvcGVuLCBkZWZhdWx0T3BlbiA9IGZhbHNlLCBwb3J0YWwgPSB0cnVlLCBhbGxvd0Rlc2VsZWN0ID0gZmFsc2UsIHBhbmVsQ2xhc3NOYW1lLCBvcHRpb25DbGFzc05hbWUsIGxpc3RNYXhIZWlnaHQgPSBERUZBVUxUX01BWF9IRUlHSFQsIG9mZnNldCwgYW5pbWF0aW9uLCBvbkNoYW5nZSwgb25PcGVuQ2hhbmdlLCBvblNlYXJjaENoYW5nZSwgb25CbHVyLCBmaWx0ZXJPcHRpb24sIHJlbmRlck9wdGlvbiwgcmVuZGVyT3B0aW9uQ29udGVudCwgcmVuZGVyVmFsdWUsIHJlZiwgfSA9IHByb3BzO1xuICAgIGNvbnN0IGRpc2FibGVkID0gZGlzYWJsZWRQcm9wIHx8IGxvYWRpbmc7XG4gICAgY29uc3QgaW50ZXJhY3RpdmUgPSAhZGlzYWJsZWQgJiYgIXJlYWRPbmx5O1xuICAgIGNvbnN0IGNsYXNzZXMgPSByb290Q2xhc3NuYW1lcyhwcmVmaXhDbHMpO1xuICAgIGNvbnN0IGF1dG9JZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgdHJpZ2dlcklkID0gaWQgIT09IG51bGwgJiYgaWQgIT09IHZvaWQgMCA/IGlkIDogYXV0b0lkO1xuICAgIGNvbnN0IGxhYmVsSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGRlc2NyaXB0aW9uSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGZlZWRiYWNrSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IG9wdGlvbklkUHJlZml4ID0gdXNlSWQoKTtcbiAgICBjb25zdCBbaW5uZXJWYWx1ZSwgc2V0SW5uZXJWYWx1ZV0gPSB1c2VDb250cm9sbGVkU3RhdGUoZGVmYXVsdFZhbHVlICE9PSBudWxsICYmIGRlZmF1bHRWYWx1ZSAhPT0gdm9pZCAwID8gZGVmYXVsdFZhbHVlIDogKG11bHRpcGxlID8gW10gOiB1bmRlZmluZWQpLCB2YWx1ZSk7XG4gICAgY29uc3QgW2lubmVyU2VhcmNoVmFsdWUsIHNldElubmVyU2VhcmNoVmFsdWVdID0gdXNlQ29udHJvbGxlZFN0YXRlKGRlZmF1bHRTZWFyY2hWYWx1ZSwgc2VhcmNoVmFsdWUpO1xuICAgIGNvbnN0IFthY3RpdmVJbmRleCwgc2V0QWN0aXZlSW5kZXhdID0gdXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3Qgbm9ybWFsaXplZFNpemUgPSBub3JtYWxpemVTaXplKHNpemUpO1xuICAgIGNvbnN0IGFsbE9wdGlvbkdyb3VwcyA9IHVzZU1lbW8oKCkgPT4gbm9ybWFsaXplT3B0aW9uR3JvdXBzKG9wdGlvbnMpLCBbb3B0aW9uc10pO1xuICAgIGNvbnN0IGFsbEZsYXRPcHRpb25zID0gdXNlTWVtbygoKSA9PiBmbGF0dGVuT3B0aW9uR3JvdXBzKGFsbE9wdGlvbkdyb3VwcyksIFthbGxPcHRpb25Hcm91cHNdKTtcbiAgICBjb25zdCB2aXNpYmxlT3B0aW9uR3JvdXBzID0gdXNlTWVtbygoKSA9PiAoc2VhcmNoYWJsZVxuICAgICAgICA/IGZpbHRlck9wdGlvbkdyb3VwcyhhbGxPcHRpb25Hcm91cHMsIGlubmVyU2VhcmNoVmFsdWUsIGZpbHRlck9wdGlvbilcbiAgICAgICAgOiBhbGxPcHRpb25Hcm91cHMpLCBbYWxsT3B0aW9uR3JvdXBzLCBmaWx0ZXJPcHRpb24sIGlubmVyU2VhcmNoVmFsdWUsIHNlYXJjaGFibGVdKTtcbiAgICBjb25zdCB2aXNpYmxlRmxhdE9wdGlvbnMgPSB1c2VNZW1vKCgpID0+IGZsYXR0ZW5PcHRpb25Hcm91cHModmlzaWJsZU9wdGlvbkdyb3VwcyksIFt2aXNpYmxlT3B0aW9uR3JvdXBzXSk7XG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb25zID0gdXNlTWVtbygoKSA9PiBnZXRTZWxlY3RlZE9wdGlvbnMoYWxsRmxhdE9wdGlvbnMsIGlubmVyVmFsdWUsIG11bHRpcGxlKSwgW2FsbEZsYXRPcHRpb25zLCBpbm5lclZhbHVlLCBtdWx0aXBsZV0pO1xuICAgIGNvbnN0IHNlbGVjdGVkSW5kZXggPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgaWYgKHNlbGVjdGVkT3B0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG1hdGNoZWRJbmRleCA9IHZpc2libGVGbGF0T3B0aW9ucy5maW5kSW5kZXgoKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlID09PSBzZWxlY3RlZE9wdGlvbnNbMF0udmFsdWUpO1xuICAgICAgICByZXR1cm4gbWF0Y2hlZEluZGV4ID49IDAgPyBtYXRjaGVkSW5kZXggOiBudWxsO1xuICAgIH0sIFtzZWxlY3RlZE9wdGlvbnMsIHZpc2libGVGbGF0T3B0aW9uc10pO1xuICAgIGNvbnN0IGhhc1NlbGVjdGlvbiA9IHNlbGVjdGVkT3B0aW9ucy5sZW5ndGggPiAwO1xuICAgIGNvbnN0IGxpc3RSZWYgPSB1c2VSZWYoW10pO1xuICAgIGNvbnN0IGxpc3RDb250ZW50UmVmID0gdXNlUmVmKFtdKTtcbiAgICBjb25zdCBmbG9hdGluZ1JlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCB0cmlnZ2VyUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHNlYXJjaElucHV0UmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IGhhbmRsZVRyaWdnZXJSZWYgPSB1c2VFdmVudENhbGxiYWNrKChub2RlKSA9PiB7XG4gICAgICAgIHRyaWdnZXJSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICAgIGlmIChyZWYpIHtcbiAgICAgICAgICAgIHJlZi5jdXJyZW50ID0gbm9kZTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IHsgaXNPcGVuOiBpbm5lck9wZW4sIHNldE9wZW46IGhhbmRsZU9wZW5DaGFuZ2UsIHJlZnMsIGNvbnRleHQsIGZsb2F0aW5nU3R5bGVzLCB0cmFuc2l0aW9uU3R5bGVzLCBpc01vdW50ZWQsIGJhc2VJbnRlcmFjdGlvbnMsIH0gPSB1c2VTZWxlY3RTaGVsbCh7XG4gICAgICAgIG9wZW4sXG4gICAgICAgIGRlZmF1bHRPcGVuLFxuICAgICAgICBvbk9wZW5DaGFuZ2UsXG4gICAgICAgIGRpc2FibGVkLFxuICAgICAgICByZWFkT25seSxcbiAgICAgICAgbGlzdE1heEhlaWdodCxcbiAgICAgICAgYW5pbWF0aW9uLFxuICAgICAgICBvZmZzZXQsXG4gICAgfSk7XG4gICAgY29uc3Qgc2V0UmVmZXJlbmNlID0gdXNlRXZlbnRDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICByZWZzLnNldFJlZmVyZW5jZShub2RlKTtcbiAgICAgICAgaGFuZGxlVHJpZ2dlclJlZihub2RlKTtcbiAgICB9KTtcbiAgICBjb25zdCBzZXRGbG9hdGluZyA9IHVzZUV2ZW50Q2FsbGJhY2soKG5vZGUpID0+IHtcbiAgICAgICAgcmVmcy5zZXRGbG9hdGluZyhub2RlKTtcbiAgICAgICAgZmxvYXRpbmdSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgfSk7XG4gICAgY29uc3QgbGlzdE5hdmlnYXRpb24gPSB1c2VMaXN0TmF2aWdhdGlvbihjb250ZXh0LCB7XG4gICAgICAgIGxpc3RSZWYsXG4gICAgICAgIGFjdGl2ZUluZGV4LFxuICAgICAgICBzZWxlY3RlZEluZGV4LFxuICAgICAgICBvbk5hdmlnYXRlOiBzZXRBY3RpdmVJbmRleCxcbiAgICAgICAgZW5hYmxlZDogaW5uZXJPcGVuLFxuICAgICAgICBsb29wOiB0cnVlLFxuICAgICAgICB2aXJ0dWFsOiBzZWFyY2hhYmxlLFxuICAgIH0pO1xuICAgIGNvbnN0IHR5cGVhaGVhZCA9IHVzZVR5cGVhaGVhZChjb250ZXh0LCB7XG4gICAgICAgIGxpc3RSZWY6IGxpc3RDb250ZW50UmVmLFxuICAgICAgICBhY3RpdmVJbmRleCxcbiAgICAgICAgc2VsZWN0ZWRJbmRleCxcbiAgICAgICAgZW5hYmxlZDogaW5uZXJPcGVuICYmICFzZWFyY2hhYmxlLFxuICAgICAgICBvbk1hdGNoOiBzZXRBY3RpdmVJbmRleCxcbiAgICB9KTtcbiAgICBjb25zdCB7IGdldFJlZmVyZW5jZVByb3BzLCBnZXRGbG9hdGluZ1Byb3BzLCBnZXRJdGVtUHJvcHMgfSA9IHVzZUludGVyYWN0aW9ucyhbXG4gICAgICAgIC4uLmJhc2VJbnRlcmFjdGlvbnMsXG4gICAgICAgIGxpc3ROYXZpZ2F0aW9uLFxuICAgICAgICB0eXBlYWhlYWQsXG4gICAgXSk7XG4gICAgY29uc3QgZmlyc3RFbmFibGVkSW5kZXggPSB1c2VNZW1vKCgpID0+IHZpc2libGVGbGF0T3B0aW9ucy5maW5kSW5kZXgoKG9wdGlvbikgPT4gIW9wdGlvbi5kaXNhYmxlZCksIFt2aXNpYmxlRmxhdE9wdGlvbnNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoIWlubmVyT3Blbikge1xuICAgICAgICAgICAgc2V0QWN0aXZlSW5kZXgoc2VsZWN0ZWRJbmRleCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2V0QWN0aXZlSW5kZXgoKHByZXYpID0+IHtcbiAgICAgICAgICAgIGlmIChwcmV2ICE9PSBudWxsICYmIHZpc2libGVGbGF0T3B0aW9uc1twcmV2XSAmJiAhdmlzaWJsZUZsYXRPcHRpb25zW3ByZXZdLmRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHByZXY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2VsZWN0ZWRJbmRleCAhPT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgIHZpc2libGVGbGF0T3B0aW9uc1tzZWxlY3RlZEluZGV4XSAmJlxuICAgICAgICAgICAgICAgICF2aXNpYmxlRmxhdE9wdGlvbnNbc2VsZWN0ZWRJbmRleF0uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBmaXJzdEVuYWJsZWRJbmRleCA+PSAwID8gZmlyc3RFbmFibGVkSW5kZXggOiBudWxsO1xuICAgICAgICB9KTtcbiAgICB9LCBbZmlyc3RFbmFibGVkSW5kZXgsIGlubmVyT3Blbiwgc2VsZWN0ZWRJbmRleCwgdmlzaWJsZUZsYXRPcHRpb25zXSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBpZiAoIWlubmVyT3BlbiB8fCBhY3RpdmVJbmRleCA9PT0gbnVsbCB8fCBzZWFyY2hhYmxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgKF9hID0gbGlzdFJlZi5jdXJyZW50W2FjdGl2ZUluZGV4XSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICB9LCBbYWN0aXZlSW5kZXgsIGlubmVyT3Blbiwgc2VhcmNoYWJsZV0pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGxpc3RSZWYuY3VycmVudCA9IGxpc3RSZWYuY3VycmVudC5zbGljZSgwLCB2aXNpYmxlRmxhdE9wdGlvbnMubGVuZ3RoKTtcbiAgICAgICAgbGlzdENvbnRlbnRSZWYuY3VycmVudCA9IGxpc3RDb250ZW50UmVmLmN1cnJlbnQuc2xpY2UoMCwgdmlzaWJsZUZsYXRPcHRpb25zLmxlbmd0aCk7XG4gICAgfSwgW3Zpc2libGVGbGF0T3B0aW9ucy5sZW5ndGhdKTtcbiAgICBjb25zdCBzZXRTZWFyY2hJbnB1dFJlZiA9IHVzZUV2ZW50Q2FsbGJhY2soKG5vZGUpID0+IHtcbiAgICAgICAgc2VhcmNoSW5wdXRSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICAgIGlmIChub2RlICYmIGlubmVyT3BlbiAmJiBmaWx0ZXJJbnB1dEF1dG9Gb2N1cykge1xuICAgICAgICAgICAgbm9kZS5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCBub3RpZnlCbHVySWZPdXRzaWRlID0gdXNlRXZlbnRDYWxsYmFjaygocmVsYXRlZFRhcmdldCwgZXZlbnQpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgY29uc3QgbmV4dFRhcmdldCA9IHJlbGF0ZWRUYXJnZXQ7XG4gICAgICAgIGNvbnN0IHdpdGhpblRyaWdnZXIgPSAhIShuZXh0VGFyZ2V0ICYmICgoX2EgPSB0cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jb250YWlucyhuZXh0VGFyZ2V0KSkpO1xuICAgICAgICBjb25zdCB3aXRoaW5GbG9hdGluZyA9ICEhKG5leHRUYXJnZXQgJiYgKChfYiA9IGZsb2F0aW5nUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jb250YWlucyhuZXh0VGFyZ2V0KSkpO1xuICAgICAgICBpZiAoIXdpdGhpblRyaWdnZXIgJiYgIXdpdGhpbkZsb2F0aW5nKSB7XG4gICAgICAgICAgICBvbkJsdXIgPT09IG51bGwgfHwgb25CbHVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkJsdXIoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlVHJpZ2dlckJsdXIgPSB1c2VFdmVudENhbGxiYWNrKChldmVudCkgPT4ge1xuICAgICAgICBub3RpZnlCbHVySWZPdXRzaWRlKGV2ZW50LnJlbGF0ZWRUYXJnZXQsIGV2ZW50KTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVPcHRpb25CbHVyID0gdXNlRXZlbnRDYWxsYmFjaygoZXZlbnQpID0+IHtcbiAgICAgICAgbm90aWZ5Qmx1cklmT3V0c2lkZShldmVudC5yZWxhdGVkVGFyZ2V0LCBldmVudCk7XG4gICAgfSk7XG4gICAgY29uc3QgY29tbWl0Q2hhbmdlID0gdXNlRXZlbnRDYWxsYmFjaygobmV4dFZhbHVlLCBuZXh0T3B0aW9uKSA9PiB7XG4gICAgICAgIHNldElubmVyVmFsdWUobmV4dFZhbHVlKTtcbiAgICAgICAgb25DaGFuZ2UgPT09IG51bGwgfHwgb25DaGFuZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQ2hhbmdlKG5leHRWYWx1ZSwgbmV4dE9wdGlvbiwgbmFtZSk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlU2VsZWN0T3B0aW9uID0gdXNlRXZlbnRDYWxsYmFjaygob3B0aW9uKSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGlmIChvcHRpb24uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAobXVsdGlwbGUpIHtcbiAgICAgICAgICAgIGNvbnN0IG5leHRWYWx1ZSA9IHRvZ2dsZU11bHRpcGxlVmFsdWUoaW5uZXJWYWx1ZSwgb3B0aW9uLnZhbHVlKTtcbiAgICAgICAgICAgIGNvbnN0IG5leHRPcHRpb25zID0gZ2V0T3B0aW9uc0J5VmFsdWVzKGFsbEZsYXRPcHRpb25zLCBuZXh0VmFsdWUpO1xuICAgICAgICAgICAgY29tbWl0Q2hhbmdlKG5leHRWYWx1ZSwgbmV4dE9wdGlvbnMpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhbGxvd0Rlc2VsZWN0ICYmIGlubmVyVmFsdWUgPT09IG9wdGlvbi52YWx1ZSkge1xuICAgICAgICAgICAgY29tbWl0Q2hhbmdlKHVuZGVmaW5lZCwgdW5kZWZpbmVkKTtcbiAgICAgICAgICAgIGhhbmRsZU9wZW5DaGFuZ2UoZmFsc2UpO1xuICAgICAgICAgICAgb25CbHVyID09PSBudWxsIHx8IG9uQmx1ciA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CbHVyKCk7XG4gICAgICAgICAgICAoX2EgPSB0cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29tbWl0Q2hhbmdlKG9wdGlvbi52YWx1ZSwgb3B0aW9uKTtcbiAgICAgICAgaGFuZGxlT3BlbkNoYW5nZShmYWxzZSk7XG4gICAgICAgIG9uQmx1ciA9PT0gbnVsbCB8fCBvbkJsdXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQmx1cigpO1xuICAgICAgICAoX2IgPSB0cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlUmVtb3ZlU2VsZWN0ZWRWYWx1ZSA9IHVzZUV2ZW50Q2FsbGJhY2soKG9wdGlvblZhbHVlKSA9PiB7XG4gICAgICAgIGlmICghbXVsdGlwbGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWdldE11bHRpcGxlVmFsdWUoaW5uZXJWYWx1ZSkuaW5jbHVkZXMob3B0aW9uVmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbmV4dFZhbHVlID0gcmVtb3ZlTXVsdGlwbGVWYWx1ZShpbm5lclZhbHVlLCBvcHRpb25WYWx1ZSk7XG4gICAgICAgIGNvbnN0IG5leHRPcHRpb25zID0gZ2V0T3B0aW9uc0J5VmFsdWVzKGFsbEZsYXRPcHRpb25zLCBuZXh0VmFsdWUpO1xuICAgICAgICBjb21taXRDaGFuZ2UobmV4dFZhbHVlLCBuZXh0T3B0aW9ucyk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlVHJpZ2dlcktleURvd24gPSB1c2VFdmVudENhbGxiYWNrKChldmVudCkgPT4ge1xuICAgICAgICBpZiAoIWludGVyYWN0aXZlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gS0VZQk9BUkQuRU5URVIgfHwgZXZlbnQua2V5ID09PSBLRVlCT0FSRC5TUEFDRSkge1xuICAgICAgICAgICAgaWYgKGlubmVyT3BlbiAmJlxuICAgICAgICAgICAgICAgIGFjdGl2ZUluZGV4ICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgdmlzaWJsZUZsYXRPcHRpb25zW2FjdGl2ZUluZGV4XSAmJlxuICAgICAgICAgICAgICAgICF2aXNpYmxlRmxhdE9wdGlvbnNbYWN0aXZlSW5kZXhdLmRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBoYW5kbGVTZWxlY3RPcHRpb24odmlzaWJsZUZsYXRPcHRpb25zW2FjdGl2ZUluZGV4XSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGhhbmRsZU9wZW5DaGFuZ2UoIWlubmVyT3Blbik7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gS0VZQk9BUkQuQVJST1dfRE9XTiB8fCBldmVudC5rZXkgPT09IEtFWUJPQVJELkFSUk9XX1VQKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgaWYgKCFpbm5lck9wZW4pIHtcbiAgICAgICAgICAgICAgICBoYW5kbGVPcGVuQ2hhbmdlKHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlSXRlbU1vdXNlRW50ZXIgPSB1c2VFdmVudENhbGxiYWNrKChpbmRleCkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGlmICghKChfYSA9IHZpc2libGVGbGF0T3B0aW9uc1tpbmRleF0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5kaXNhYmxlZCkpIHtcbiAgICAgICAgICAgIHNldEFjdGl2ZUluZGV4KGluZGV4KTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZVRhZ1JlbW92ZU1vdXNlRG93biA9IHVzZUV2ZW50Q2FsbGJhY2soKGV2ZW50KSA9PiB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZVRhZ1JlbW92ZUNsaWNrID0gdXNlRXZlbnRDYWxsYmFjaygoZXZlbnQpID0+IHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlU2VhcmNoQmx1ciA9IHVzZUV2ZW50Q2FsbGJhY2soKGV2ZW50KSA9PiB7XG4gICAgICAgIG5vdGlmeUJsdXJJZk91dHNpZGUoZXZlbnQucmVsYXRlZFRhcmdldCwgZXZlbnQpO1xuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaENoYW5nZSA9IHVzZUV2ZW50Q2FsbGJhY2soKG5leHRWYWx1ZSwgX2V2ZW50KSA9PiB7XG4gICAgICAgIHNldElubmVyU2VhcmNoVmFsdWUobmV4dFZhbHVlKTtcbiAgICAgICAgb25TZWFyY2hDaGFuZ2UgPT09IG51bGwgfHwgb25TZWFyY2hDaGFuZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uU2VhcmNoQ2hhbmdlKG5leHRWYWx1ZSk7XG4gICAgfSk7XG4gICAgY29uc3QgZmluZEVuYWJsZWRJbmRleCA9IHVzZUV2ZW50Q2FsbGJhY2soKGN1cnJlbnQsIGRpcmVjdGlvbikgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IHZpc2libGVGbGF0T3B0aW9ucy5sZW5ndGg7XG4gICAgICAgIGlmIChsZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gY3VycmVudCAhPT0gbnVsbCAmJiBjdXJyZW50ICE9PSB2b2lkIDAgPyBjdXJyZW50IDogKGRpcmVjdGlvbiA9PT0gMSA/IC0xIDogbGVuZ3RoKTtcbiAgICAgICAgZm9yIChsZXQgc3RlcCA9IDE7IHN0ZXAgPD0gbGVuZ3RoOyBzdGVwICs9IDEpIHtcbiAgICAgICAgICAgIGNvbnN0IGNhbmRpZGF0ZSA9ICgoc3RhcnQgKyBkaXJlY3Rpb24gKiBzdGVwKSAlIGxlbmd0aCArIGxlbmd0aCkgJSBsZW5ndGg7XG4gICAgICAgICAgICBpZiAoISgoX2EgPSB2aXNpYmxlRmxhdE9wdGlvbnNbY2FuZGlkYXRlXSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmRpc2FibGVkKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBjYW5kaWRhdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlU2VhcmNoS2V5RG93biA9IHVzZUV2ZW50Q2FsbGJhY2soKGV2ZW50KSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gS0VZQk9BUkQuQVJST1dfRE9XTikge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGNvbnN0IG5leHQgPSBmaW5kRW5hYmxlZEluZGV4KGFjdGl2ZUluZGV4LCAxKTtcbiAgICAgICAgICAgIGlmIChuZXh0ICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgc2V0QWN0aXZlSW5kZXgobmV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gS0VZQk9BUkQuQVJST1dfVVApIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBjb25zdCBwcmV2ID0gZmluZEVuYWJsZWRJbmRleChhY3RpdmVJbmRleCwgLTEpO1xuICAgICAgICAgICAgaWYgKHByZXYgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBzZXRBY3RpdmVJbmRleChwcmV2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSBLRVlCT0FSRC5FTlRFUikge1xuICAgICAgICAgICAgaWYgKGFjdGl2ZUluZGV4ICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgdmlzaWJsZUZsYXRPcHRpb25zW2FjdGl2ZUluZGV4XSAmJlxuICAgICAgICAgICAgICAgICF2aXNpYmxlRmxhdE9wdGlvbnNbYWN0aXZlSW5kZXhdLmRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBoYW5kbGVTZWxlY3RPcHRpb24odmlzaWJsZUZsYXRPcHRpb25zW2FjdGl2ZUluZGV4XSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gS0VZQk9BUkQuRVNDQVBFKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgaGFuZGxlT3BlbkNoYW5nZShmYWxzZSk7XG4gICAgICAgICAgICAoX2EgPSB0cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCByZW5kZXJWYWx1ZU1ldGEgPSB7XG4gICAgICAgIGRpc2FibGVkLFxuICAgICAgICByZWFkT25seSxcbiAgICAgICAgbXVsdGlwbGUsXG4gICAgICAgIG1heFZpc2libGVWYWx1ZXMsXG4gICAgICAgIG9wZW46IGlubmVyT3BlbixcbiAgICAgICAgcGxhY2Vob2xkZXI6ICFoYXNTZWxlY3Rpb24sXG4gICAgICAgIHNlbGVjdGVkT3B0aW9ucyxcbiAgICAgICAgc2l6ZTogbm9ybWFsaXplZFNpemUsXG4gICAgfTtcbiAgICBjb25zdCB2YWx1ZUxhYmVsQ2xhc3MgPSBoYXNTZWxlY3Rpb24gPyAndmFsdWUnIDogJ3BsYWNlaG9sZGVyJztcbiAgICBjb25zdCBpc011bHRpcGxlVmFsdWVGaWxsZWQgPSAobXVsdGlwbGUgJiZcbiAgICAgICAgaGFzU2VsZWN0aW9uICYmXG4gICAgICAgIG1heFZpc2libGVWYWx1ZXMgPT09IHVuZGVmaW5lZCk7XG4gICAgY29uc3QgdHJpZ2dlckNsYXNzTmFtZSA9IGNsYXNzZXMoJ3RyaWdnZXInLCBqb2luQ2xzKGNsYXNzZXMoYHRyaWdnZXItJHtub3JtYWxpemVkU2l6ZX1gKSwgY2xhc3NlcyhgdHJpZ2dlci0ke3ZhcmlhbnR9YCksIGlubmVyT3BlbiAmJiBjbGFzc2VzKCd0cmlnZ2VyLW9wZW4nKSwgaXNNdWx0aXBsZVZhbHVlRmlsbGVkICYmIGNsYXNzZXMoJ3RyaWdnZXItbXVsdGlwbGUtZmlsbGVkJyksIGhhc1NlbGVjdGlvbiA/IGNsYXNzZXMoJ3RyaWdnZXItZmlsbGVkJykgOiBjbGFzc2VzKCd0cmlnZ2VyLXBsYWNlaG9sZGVyJyksIHN0YXR1cyAhPT0gJ2RlZmF1bHQnICYmIGNsYXNzZXMoYHRyaWdnZXItJHtzdGF0dXN9YCksIGRpc2FibGVkICYmIGNsYXNzZXMoJ3RyaWdnZXItZGlzYWJsZWQnKSwgcmVhZE9ubHkgJiYgIWRpc2FibGVkICYmIGNsYXNzZXMoJ3RyaWdnZXItcmVhZG9ubHknKSkpO1xuICAgIGNvbnN0IGljb25TaXplID0gbm9ybWFsaXplZFNpemUgPT09ICdzbWFsbCcgPyAxNiA6IDIwO1xuICAgIGNvbnN0IGFjdGl2ZU9wdGlvbklkID0gc2VhcmNoYWJsZSAmJiBpbm5lck9wZW4gJiYgYWN0aXZlSW5kZXggIT09IG51bGxcbiAgICAgICAgPyBgJHtvcHRpb25JZFByZWZpeH0tJHthY3RpdmVJbmRleH1gXG4gICAgICAgIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IGZsb2F0aW5nQXJpYUxhYmVsbGVkQnkgPSBhcmlhTGFiZWxsZWRCeSAhPT0gbnVsbCAmJiBhcmlhTGFiZWxsZWRCeSAhPT0gdm9pZCAwID8gYXJpYUxhYmVsbGVkQnkgOiAobGFiZWwgPyBsYWJlbElkIDogdW5kZWZpbmVkKTtcbiAgICBjb25zdCBkZXNjcmliZWRCeUlkcyA9IFtcbiAgICAgICAgZGVzY3JpcHRpb24gPyBkZXNjcmlwdGlvbklkIDogbnVsbCxcbiAgICAgICAgZmVlZGJhY2sgPyBmZWVkYmFja0lkIDogbnVsbCxcbiAgICBdLmZpbHRlcihCb29sZWFuKS5qb2luKCcgJykgfHwgdW5kZWZpbmVkO1xuICAgIHJldHVybiAoX2pzeHMoU2VsZWN0RmllbGRTaGVsbCwgeyBjbGFzc2VzOiBjbGFzc2VzLCBjbGFzc05hbWU6IGNsYXNzTmFtZSwgc2l6ZTogbm9ybWFsaXplZFNpemUsIHZhcmlhbnQ6IHZhcmlhbnQsIHN0YXR1czogc3RhdHVzLCBkaXNhYmxlZDogZGlzYWJsZWQsIHJlYWRPbmx5OiByZWFkT25seSwgbG9hZGluZzogbG9hZGluZywgbGFiZWw6IGxhYmVsLCBsYWJlbENsYXNzTmFtZTogbGFiZWxDbGFzc05hbWUsIGluZm86IGluZm8sIGRlc2NyaXB0aW9uOiBkZXNjcmlwdGlvbiwgZmVlZGJhY2s6IGZlZWRiYWNrLCByZXF1aXJlZDogcmVxdWlyZWQsIGxhYmVsSWQ6IGxhYmVsSWQsIGRlc2NyaXB0aW9uSWQ6IGRlc2NyaXB0aW9uSWQsIGZlZWRiYWNrSWQ6IGZlZWRiYWNrSWQsIGNoaWxkcmVuOiBbX2pzeHMoXCJidXR0b25cIiwgT2JqZWN0LmFzc2lnbih7fSwgZ2V0UmVmZXJlbmNlUHJvcHMoe1xuICAgICAgICAgICAgICAgIHJlZjogc2V0UmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgIGlkOiB0cmlnZ2VySWQsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAnYXJpYS1yZWFkb25seSc6IHJlYWRPbmx5IHx8IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IHRyaWdnZXJDbGFzc05hbWUsXG4gICAgICAgICAgICAgICAgb25LZXlEb3duOiBoYW5kbGVUcmlnZ2VyS2V5RG93bixcbiAgICAgICAgICAgICAgICBvbkJsdXI6IGhhbmRsZVRyaWdnZXJCbHVyLFxuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsJzogYXJpYUxhYmVsLFxuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsbGVkYnknOiBmbG9hdGluZ0FyaWFMYWJlbGxlZEJ5LFxuICAgICAgICAgICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogZGVzY3JpYmVkQnlJZHMsXG4gICAgICAgICAgICB9KSwgeyBjaGlsZHJlbjogW19qc3hzKFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnY29udGVudCcpLCBjaGlsZHJlbjogW3ByZWZpeCAmJiBfanN4KFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncHJlZml4JyksIGNoaWxkcmVuOiBwcmVmaXggfSksIF9qc3goXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKHZhbHVlTGFiZWxDbGFzcywgam9pbkNscyhjbGFzc2VzKGAke3ZhbHVlTGFiZWxDbGFzc30tJHtub3JtYWxpemVkU2l6ZX1gKSwgaXNNdWx0aXBsZVZhbHVlRmlsbGVkICYmIGNsYXNzZXMoYCR7dmFsdWVMYWJlbENsYXNzfS1tdWx0aXBsZWApLCBkaXNhYmxlZCAmJiBjbGFzc2VzKGAke3ZhbHVlTGFiZWxDbGFzc30tZGlzYWJsZWRgKSkpLCBjaGlsZHJlbjogX2pzeChTZWxlY3RWYWx1ZUNvbnRlbnQsIHsgY2xhc3NlczogY2xhc3NlcywgaGFzU2VsZWN0aW9uOiBoYXNTZWxlY3Rpb24sIG11bHRpcGxlOiBtdWx0aXBsZSwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyLCByZW5kZXJWYWx1ZTogcmVuZGVyVmFsdWUsIHJlbmRlclZhbHVlTWV0YTogcmVuZGVyVmFsdWVNZXRhLCBzZWxlY3RlZE9wdGlvbnM6IHNlbGVjdGVkT3B0aW9ucywgbWF4VmlzaWJsZVZhbHVlczogbWF4VmlzaWJsZVZhbHVlcywgb25SZW1vdmU6IGhhbmRsZVJlbW92ZVNlbGVjdGVkVmFsdWUsIG9uUmVtb3ZlQ2xpY2s6IGhhbmRsZVRhZ1JlbW92ZUNsaWNrLCBvblJlbW92ZU1vdXNlRG93bjogaGFuZGxlVGFnUmVtb3ZlTW91c2VEb3duIH0pIH0pXSB9KSwgX2pzeChcInNwYW5cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2ljb24nKSwgY2hpbGRyZW46IGxvYWRpbmcgPyAoX2pzeChTcGlubmVyLCB7IHNpemU6IGljb25TaXplLCBzdHJva2VXaWR0aDogMiB9KSkgOiAoX2pzeChJY29ucywgeyBuYW1lOiBpbm5lck9wZW4gPyAnY2hldnJvblVwJyA6ICdjaGV2cm9uRG93bicsIHNpemU6IGljb25TaXplLCBjb2xvcjogXCJjdXJyZW50Q29sb3JcIiB9KSkgfSldIH0pKSwgaXNNb3VudGVkICYmIGludGVyYWN0aXZlICYmICgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGFuZWxOb2RlID0gKF9qc3goRmxvYXRpbmdGb2N1c01hbmFnZXIsIHsgY29udGV4dDogY29udGV4dCwgbW9kYWw6IGZhbHNlLCBpbml0aWFsRm9jdXM6IC0xLCByZXR1cm5Gb2N1czogZmFsc2UsIGNoaWxkcmVuOiBfanN4cyhcImRpdlwiLCBPYmplY3QuYXNzaWduKHt9LCBnZXRGbG9hdGluZ1Byb3BzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZjogc2V0RmxvYXRpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU6IGpvaW5DbHMoY2xhc3NlcygncGFuZWwnKSwgcGFuZWxDbGFzc05hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgZmxvYXRpbmdTdHlsZXMpLCB0cmFuc2l0aW9uU3R5bGVzKSxcbiAgICAgICAgICAgICAgICAgICAgfSksIHsgY2hpbGRyZW46IFtzZWFyY2hhYmxlICYmIChfanN4KFNlbGVjdFNlYXJjaENvbnRyb2wsIHsgcmVmOiBzZXRTZWFyY2hJbnB1dFJlZiwgY2xhc3NlczogY2xhc3Nlcywgc2l6ZTogbm9ybWFsaXplZFNpemUsIHBsYWNlaG9sZGVyOiBzZWFyY2hQbGFjZWhvbGRlciwgdmFsdWU6IGlubmVyU2VhcmNoVmFsdWUsIGFjdGl2ZURlc2NlbmRhbnQ6IGFjdGl2ZU9wdGlvbklkLCBvbkJsdXI6IGhhbmRsZVNlYXJjaEJsdXIsIG9uQ2hhbmdlOiBoYW5kbGVTZWFyY2hDaGFuZ2UsIG9uS2V5RG93bjogaGFuZGxlU2VhcmNoS2V5RG93biB9KSksIF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3BhbmVsLWJvZHknKSwgY2hpbGRyZW46IHZpc2libGVGbGF0T3B0aW9ucy5sZW5ndGggPT09IDAgPyAoX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnZW1wdHknKSwgY2hpbGRyZW46IF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogU0VMRUNUX1RZUE9HUkFQSFkuZW1wdHkuc2l6ZSwgY29sb3I6IFNFTEVDVF9UWVBPR1JBUEhZLmVtcHR5LmNvbG9yLCBjaGlsZHJlbjogZW1wdHlDb250ZW50IH0pIH0pKSA6ICgoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZsYXRJbmRleCA9IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmlzaWJsZU9wdGlvbkdyb3Vwcy5tYXAoKGdyb3VwKSA9PiAoX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2dyb3VwJyksIGNoaWxkcmVuOiBbZ3JvdXAubGFiZWwgJiYgKF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2dyb3VwLWxhYmVsJyksIGNoaWxkcmVuOiBfanN4KFR5cG9ncmFwaHlMYWJlbCwgeyBzaXplOiBTRUxFQ1RfVFlQT0dSQVBIWS5ncm91cExhYmVsLnNpemUsIHN0cm9uZzogdHJ1ZSwgY2hpbGRyZW46IGdyb3VwLmxhYmVsIH0pIH0pKSwgZ3JvdXAub3B0aW9ucy5tYXAoKG9wdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9uRmxhdEluZGV4ID0gZmxhdEluZGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhdEluZGV4ICs9IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzZWxlY3RlZCA9IGlzT3B0aW9uU2VsZWN0ZWQoaW5uZXJWYWx1ZSwgbXVsdGlwbGUsIG9wdGlvbi52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhY3RpdmUgPSBhY3RpdmVJbmRleCA9PT0gb3B0aW9uRmxhdEluZGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9uTWV0YSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6ICEhb3B0aW9uLmRpc2FibGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBvcHRpb25GbGF0SW5kZXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbjogaW5uZXJPcGVuLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RDb250ZW50UmVmLmN1cnJlbnRbb3B0aW9uRmxhdEluZGV4XSA9IGV4dHJhY3RPcHRpb25UZXh0KG9wdGlvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKF9qc3goXCJidXR0b25cIiwgT2JqZWN0LmFzc2lnbih7fSwgZ2V0SXRlbVByb3BzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWYobm9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0UmVmLmN1cnJlbnRbb3B0aW9uRmxhdEluZGV4XSA9IG5vZGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogYCR7b3B0aW9uSWRQcmVmaXh9LSR7b3B0aW9uRmxhdEluZGV4fWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm9sZTogJ29wdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lOiBjbGFzc2VzKCdvcHRpb24nLCBqb2luQ2xzKGFjdGl2ZSAmJiBjbGFzc2VzKCdvcHRpb24tYWN0aXZlJyksIHNlbGVjdGVkICYmIGNsYXNzZXMoJ29wdGlvbi1zZWxlY3RlZCcpLCBvcHRpb24uZGlzYWJsZWQgJiYgY2xhc3Nlcygnb3B0aW9uLWRpc2FibGVkJyksIG9wdGlvbkNsYXNzTmFtZSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiBvcHRpb24uZGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FyaWEtc2VsZWN0ZWQnOiBzZWxlY3RlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrOiAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlU2VsZWN0T3B0aW9uKG9wdGlvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbk1vdXNlRW50ZXI6ICgpID0+IGhhbmRsZUl0ZW1Nb3VzZUVudGVyKG9wdGlvbkZsYXRJbmRleCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25CbHVyOiBoYW5kbGVPcHRpb25CbHVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIHsgY2hpbGRyZW46IHJlbmRlck9wdGlvbiA/IChyZW5kZXJPcHRpb24ob3B0aW9uLCBvcHRpb25NZXRhKSkgOiAoX2pzeChTZWxlY3RPcHRpb25Db250ZW50LCB7IGNsYXNzZXM6IGNsYXNzZXMsIG9wdGlvbjogb3B0aW9uLCBzZWxlY3RlZDogc2VsZWN0ZWQsIGNvbnRlbnQ6IHJlbmRlck9wdGlvbkNvbnRlbnQgPT09IG51bGwgfHwgcmVuZGVyT3B0aW9uQ29udGVudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogcmVuZGVyT3B0aW9uQ29udGVudChvcHRpb24sIG9wdGlvbk1ldGEpIH0pKSB9KSwgYCR7Z3JvdXAua2V5fS0ke29wdGlvbi52YWx1ZX1gKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXSB9LCBncm91cC5rZXkpKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKCkpIH0pLCBwYW5lbEZvb3RlciAhPSBudWxsICYmIChfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdwYW5lbC1mb290ZXInKSwgY2hpbGRyZW46IHBhbmVsRm9vdGVyIH0pKV0gfSkpIH0pKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcG9ydGFsID8gX2pzeChGbG9hdGluZ1BvcnRhbCwgeyBjaGlsZHJlbjogcGFuZWxOb2RlIH0pIDogcGFuZWxOb2RlO1xuICAgICAgICAgICAgfSkoKV0gfSkpO1xufTtcblNlbGVjdC5kaXNwbGF5TmFtZSA9ICdTZWxlY3QnO1xuZXhwb3J0IGRlZmF1bHQgbWVtbyhTZWxlY3QpOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
577
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdC5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L1NlbGVjdC50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0MiIsIl9ob29rcyIsIl9JY29ucyIsIl9TcGlubmVyIiwiX1R5cG9ncmFwaHkiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX1NlbGVjdEZpZWxkU2hlbGwiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1NlbGVjdE9wdGlvbkNvbnRlbnQiLCJfU2VsZWN0U2VhcmNoQ29udHJvbCIsIl9TZWxlY3RWYWx1ZUNvbnRlbnQiLCJfdXNlU2VsZWN0U2hlbGwyIiwiX2NvbnN0YW50cyIsIl91dGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkRFRkFVTFRfTUFYX0hFSUdIVCIsIlNlbGVjdCIsImV4cG9ydHMiLCJwcm9wcyIsIl9wcm9wcyRjbGFzc05hbWUiLCJjbGFzc05hbWUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwic3R5bGUiLCJpZCIsIm5hbWUiLCJhcmlhTGFiZWwiLCJhcmlhTGFiZWxsZWRCeSIsIl9wcm9wcyRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwiX3Byb3BzJG9wdGlvbnMiLCJvcHRpb25zIiwidmFsdWUiLCJkZWZhdWx0VmFsdWUiLCJfcHJvcHMkc2l6ZSIsInNpemUiLCJfcHJvcHMkc3RhdHVzIiwic3RhdHVzIiwiX3Byb3BzJHZhcmlhbnQiLCJ2YXJpYW50IiwiX3Byb3BzJGRpc2FibGVkIiwiZGlzYWJsZWQiLCJkaXNhYmxlZFByb3AiLCJfcHJvcHMkcmVhZE9ubHkiLCJyZWFkT25seSIsIl9wcm9wcyRsb2FkaW5nIiwibG9hZGluZyIsIl9wcm9wcyRtdWx0aXBsZSIsIm11bHRpcGxlIiwibWF4VmlzaWJsZVZhbHVlcyIsIl9wcm9wcyRzZWFyY2hhYmxlIiwic2VhcmNoYWJsZSIsIl9wcm9wcyRzZWFyY2hQbGFjZWhvbCIsInNlYXJjaFBsYWNlaG9sZGVyIiwic2VhcmNoVmFsdWUiLCJfcHJvcHMkZGVmYXVsdFNlYXJjaFYiLCJkZWZhdWx0U2VhcmNoVmFsdWUiLCJfcHJvcHMkZmlsdGVySW5wdXRBdXQiLCJmaWx0ZXJJbnB1dEF1dG9Gb2N1cyIsImxhYmVsIiwibGFiZWxDbGFzc05hbWUiLCJpbmZvIiwiZGVzY3JpcHRpb24iLCJmZWVkYmFjayIsIl9wcm9wcyRyZXF1aXJlZCIsInJlcXVpcmVkIiwicHJlZml4IiwiX3Byb3BzJGVtcHR5Q29udGVudCIsImVtcHR5Q29udGVudCIsInBhbmVsRm9vdGVyIiwib3BlbiIsIl9wcm9wcyRkZWZhdWx0T3BlbiIsImRlZmF1bHRPcGVuIiwiX3Byb3BzJHBvcnRhbCIsInBvcnRhbCIsIl9wcm9wcyRhbGxvd0Rlc2VsZWN0IiwiYWxsb3dEZXNlbGVjdCIsInBhbmVsQ2xhc3NOYW1lIiwib3B0aW9uQ2xhc3NOYW1lIiwiX3Byb3BzJGxpc3RNYXhIZWlnaHQiLCJsaXN0TWF4SGVpZ2h0Iiwib2Zmc2V0IiwiYW5pbWF0aW9uIiwib25DaGFuZ2UiLCJvbk9wZW5DaGFuZ2UiLCJvblNlYXJjaENoYW5nZSIsIm9uQmx1ciIsImZpbHRlck9wdGlvbiIsInJlbmRlck9wdGlvbiIsInJlbmRlck9wdGlvbkNvbnRlbnQiLCJyZW5kZXJWYWx1ZSIsInJlZiIsImludGVyYWN0aXZlIiwiY2xhc3NlcyIsInJvb3RDbGFzc25hbWVzIiwiYXV0b0lkIiwidXNlSWQiLCJ0cmlnZ2VySWQiLCJsYWJlbElkIiwiZGVzY3JpcHRpb25JZCIsImZlZWRiYWNrSWQiLCJvcHRpb25JZFByZWZpeCIsIl91c2VDb250cm9sbGVkU3RhdGUiLCJ1c2VDb250cm9sbGVkU3RhdGUiLCJ1bmRlZmluZWQiLCJfdXNlQ29udHJvbGxlZFN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImlubmVyVmFsdWUiLCJzZXRJbm5lclZhbHVlIiwiX3VzZUNvbnRyb2xsZWRTdGF0ZTMiLCJfdXNlQ29udHJvbGxlZFN0YXRlNCIsImlubmVyU2VhcmNoVmFsdWUiLCJzZXRJbm5lclNlYXJjaFZhbHVlIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiYWN0aXZlSW5kZXgiLCJzZXRBY3RpdmVJbmRleCIsIm5vcm1hbGl6ZWRTaXplIiwibm9ybWFsaXplU2l6ZSIsImFsbE9wdGlvbkdyb3VwcyIsInVzZU1lbW8iLCJub3JtYWxpemVPcHRpb25Hcm91cHMiLCJhbGxGbGF0T3B0aW9ucyIsImZsYXR0ZW5PcHRpb25Hcm91cHMiLCJ2aXNpYmxlT3B0aW9uR3JvdXBzIiwiZmlsdGVyT3B0aW9uR3JvdXBzIiwidmlzaWJsZUZsYXRPcHRpb25zIiwic2VsZWN0ZWRPcHRpb25zIiwiZ2V0U2VsZWN0ZWRPcHRpb25zIiwic2VsZWN0ZWRJbmRleCIsImxlbmd0aCIsIm1hdGNoZWRJbmRleCIsImZpbmRJbmRleCIsIm9wdGlvbiIsImhhc1NlbGVjdGlvbiIsImxpc3RSZWYiLCJ1c2VSZWYiLCJsaXN0Q29udGVudFJlZiIsImZsb2F0aW5nUmVmIiwidHJpZ2dlclJlZiIsInNlYXJjaElucHV0UmVmIiwiaGFuZGxlVHJpZ2dlclJlZiIsInVzZUV2ZW50Q2FsbGJhY2siLCJub2RlIiwiY3VycmVudCIsIl91c2VTZWxlY3RTaGVsbCIsInVzZVNlbGVjdFNoZWxsIiwiaW5uZXJPcGVuIiwiaXNPcGVuIiwiaGFuZGxlT3BlbkNoYW5nZSIsInNldE9wZW4iLCJyZWZzIiwiY29udGV4dCIsImZsb2F0aW5nU3R5bGVzIiwidHJhbnNpdGlvblN0eWxlcyIsImlzTW91bnRlZCIsImJhc2VJbnRlcmFjdGlvbnMiLCJzZXRSZWZlcmVuY2UiLCJzZXRGbG9hdGluZyIsImxpc3ROYXZpZ2F0aW9uIiwidXNlTGlzdE5hdmlnYXRpb24iLCJvbk5hdmlnYXRlIiwiZW5hYmxlZCIsImxvb3AiLCJ2aXJ0dWFsIiwidHlwZWFoZWFkIiwidXNlVHlwZWFoZWFkIiwib25NYXRjaCIsIl91c2VJbnRlcmFjdGlvbnMiLCJ1c2VJbnRlcmFjdGlvbnMiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiZ2V0UmVmZXJlbmNlUHJvcHMiLCJnZXRGbG9hdGluZ1Byb3BzIiwiZ2V0SXRlbVByb3BzIiwiZmlyc3RFbmFibGVkSW5kZXgiLCJ1c2VFZmZlY3QiLCJwcmV2IiwiX2EiLCJmb2N1cyIsInByZXZlbnRTY3JvbGwiLCJzbGljZSIsInNldFNlYXJjaElucHV0UmVmIiwibm90aWZ5Qmx1cklmT3V0c2lkZSIsInJlbGF0ZWRUYXJnZXQiLCJldmVudCIsIl9iIiwibmV4dFRhcmdldCIsIndpdGhpblRyaWdnZXIiLCJjb250YWlucyIsIndpdGhpbkZsb2F0aW5nIiwiaGFuZGxlVHJpZ2dlckJsdXIiLCJoYW5kbGVPcHRpb25CbHVyIiwiY29tbWl0Q2hhbmdlIiwibmV4dFZhbHVlIiwibmV4dE9wdGlvbiIsImhhbmRsZVNlbGVjdE9wdGlvbiIsInRvZ2dsZU11bHRpcGxlVmFsdWUiLCJuZXh0T3B0aW9ucyIsImdldE9wdGlvbnNCeVZhbHVlcyIsImhhbmRsZVJlbW92ZVNlbGVjdGVkVmFsdWUiLCJvcHRpb25WYWx1ZSIsImdldE11bHRpcGxlVmFsdWUiLCJpbmNsdWRlcyIsInJlbW92ZU11bHRpcGxlVmFsdWUiLCJoYW5kbGVUcmlnZ2VyS2V5RG93biIsImtleSIsIktFWUJPQVJEIiwiRU5URVIiLCJTUEFDRSIsInByZXZlbnREZWZhdWx0IiwiQVJST1dfRE9XTiIsIkFSUk9XX1VQIiwiaGFuZGxlSXRlbU1vdXNlRW50ZXIiLCJpbmRleCIsImhhbmRsZVRhZ1JlbW92ZU1vdXNlRG93biIsInN0b3BQcm9wYWdhdGlvbiIsImhhbmRsZVRhZ1JlbW92ZUNsaWNrIiwiaGFuZGxlU2VhcmNoQmx1ciIsImhhbmRsZVNlYXJjaENoYW5nZSIsIl9ldmVudCIsImZpbmRFbmFibGVkSW5kZXgiLCJkaXJlY3Rpb24iLCJzdGFydCIsInN0ZXAiLCJjYW5kaWRhdGUiLCJoYW5kbGVTZWFyY2hLZXlEb3duIiwibmV4dCIsIkVTQ0FQRSIsInJlbmRlclZhbHVlTWV0YSIsImZvbnRTaXplIiwiZ2V0Rm9udFNpemUiLCJ2YWx1ZUxhYmVsQ2xhc3MiLCJpc011bHRpcGxlVmFsdWVGaWxsZWQiLCJ0cmlnZ2VyQ2xhc3NOYW1lIiwiam9pbkNscyIsImljb25TaXplIiwiYWN0aXZlT3B0aW9uSWQiLCJmbG9hdGluZ0FyaWFMYWJlbGxlZEJ5IiwiZGVzY3JpYmVkQnlJZHMiLCJmaWx0ZXIiLCJCb29sZWFuIiwiam9pbiIsIl9qc3hzIiwiU2VsZWN0RmllbGRTaGVsbCIsImNoaWxkcmVuIiwiYXNzaWduIiwidHlwZSIsIm9uS2V5RG93biIsIl9qc3giLCJTZWxlY3RWYWx1ZUNvbnRlbnQiLCJvblJlbW92ZSIsIm9uUmVtb3ZlQ2xpY2siLCJvblJlbW92ZU1vdXNlRG93biIsIlNwaW5uZXIiLCJzdHJva2VXaWR0aCIsIkljb25zIiwiY29sb3IiLCJwYW5lbE5vZGUiLCJGbG9hdGluZ0ZvY3VzTWFuYWdlciIsIm1vZGFsIiwiaW5pdGlhbEZvY3VzIiwicmV0dXJuRm9jdXMiLCJTZWxlY3RTZWFyY2hDb250cm9sIiwiYWN0aXZlRGVzY2VuZGFudCIsIlR5cG9ncmFwaHlCb2R5IiwiU0VMRUNUX1RZUE9HUkFQSFkiLCJlbXB0eSIsImZsYXRJbmRleCIsIm1hcCIsImdyb3VwIiwiVHlwb2dyYXBoeUxhYmVsIiwiZ3JvdXBMYWJlbCIsInN0cm9uZyIsIm9wdGlvbkZsYXRJbmRleCIsInNlbGVjdGVkIiwiaXNPcHRpb25TZWxlY3RlZCIsImFjdGl2ZSIsIm9wdGlvbk1ldGEiLCJleHRyYWN0T3B0aW9uVGV4dCIsInJvbGUiLCJvbkNsaWNrIiwib25Nb3VzZUVudGVyIiwiU2VsZWN0T3B0aW9uQ29udGVudCIsImNvbnRlbnQiLCJGbG9hdGluZ1BvcnRhbCIsImRpc3BsYXlOYW1lIiwiX2RlZmF1bHQiLCJtZW1vIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDQUEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBT0EsSUFBQUUsT0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sV0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sV0FBQSxHQUFBQyx1QkFBQSxDQUFBUixPQUFBO0FBZ0JBLElBQUFTLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFWLE9BQUE7QUFDQSxJQUFBVyxvQkFBQSxHQUFBRCxzQkFBQSxDQUFBVixPQUFBO0FBQ0EsSUFBQVksb0JBQUEsR0FBQUYsc0JBQUEsQ0FBQVYsT0FBQTtBQUNBLElBQUFhLG1CQUFBLEdBQUFILHNCQUFBLENBQUFWLE9BQUE7QUFDQSxJQUFBYyxnQkFBQSxHQUFBZCxPQUFBO0FBQ0EsSUFBQWUsVUFBQSxHQUFBZixPQUFBO0FBQ0EsSUFBQWdCLE1BQUEsR0FBQWhCLE9BQUE7QUFjQUEsT0FBQTtBQUFpQixTQUFBaUIseUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFWLHdCQUFBVSxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUksVUFBQSxTQUFBSixDQUFBLGVBQUFBLENBQUEsZ0JBQUFLLE9BQUEsQ0FBQUwsQ0FBQSwwQkFBQUEsQ0FBQSxzQkFBQUEs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ZDhJLFFBQVEsRUFBRUEsUUFBUTt3QkFDbEJTLE9BQU8sRUFBRXBNLG1CQUFtQixLQUFBLElBQUEsSUFBbkJBLG1CQUFtQixLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFuQkEsbUJBQW1CLENBQUc2QyxNQUFNLEVBQUVpSixVQUFVO3NCQUFDLENBQUE7b0JBRXJELENBQUEsQ0FBQSxLQUFBNUcsTUFBQSxDQXBDT29HLEtBQUssQ0FBQ2hFLEdBQUcsT0FBQXBDLE1BQUEsQ0FBSXJDLE1BQU0sQ0FBQ3RHLEtBQUssQ0FBRSxDQXFDNUI7a0JBRWIsQ0FBQyxDQUFDO2dCQUFBLENBQUEsRUFoRU0rTyxLQUFLLENBQUNoRSxHQUFHLENBaUViO2NBQUEsQ0FDUCxDQUFDO1lBQ0osQ0FBQyxDQUFDO1VBQ0gsQ0FBQSxDQUNHLEVBQ0wxSSxXQUFXLElBQUksSUFBSSxJQUNsQixJQUFBcUwsZUFBQSxFQUFBLEtBQUEsRUFBQTtZQUFLdE8sU0FBUyxFQUFFeUUsT0FBTyxDQUFDLGNBQWMsQ0FBQztZQUFBeUosUUFBQSxFQUFHakw7VUFBVyxDQUFBLENBQ3REO1FBQUEsQ0FBQSxDQUFBO01BQ0csQ0FBQSxDQUVUO01BRUQsT0FBT0ssTUFBTSxHQUFHLElBQUFnTCxlQUFBLEVBQUNvQyxxQkFBYyxFQUFBO1FBQUF4QyxRQUFBLEVBQUVhO01BQVMsQ0FBQSxDQUFrQixHQUFHQSxTQUFTO0lBQzFFLENBQUMsQ0FBQyxDQUFFO0VBQUEsQ0FBQSxDQUNhO0FBRXZCLENBQUM7QUFFRG5QLE1BQU0sQ0FBQytRLFdBQVcsR0FBRyxRQUFRO0FBQUMsSUFBQUMsUUFBQSxHQUFBL1EsT0FBQSwyQkFFZixJQUFBZ1IsWUFBSSxFQUFDalIsTUFBTSxDQUFDIiwiZmlsZSI6ImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBGbG9hdGluZ0ZvY3VzTWFuYWdlciwgRmxvYXRpbmdQb3J0YWwsIHVzZUludGVyYWN0aW9ucywgdXNlTGlzdE5hdmlnYXRpb24sIHVzZVR5cGVhaGVhZCwgfSBmcm9tICdAZmxvYXRpbmctdWkvcmVhY3QnO1xuaW1wb3J0IHsgbWVtbywgdXNlRWZmZWN0LCB1c2VJZCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUNvbnRyb2xsZWRTdGF0ZSwgdXNlRXZlbnRDYWxsYmFjayB9IGZyb20gJ0AxbW9uZXkvaG9va3MnO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi9JY29ucyc7XG5pbXBvcnQgeyBTcGlubmVyIH0gZnJvbSAnLi4vU3Bpbm5lcic7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Qm9keSwgVHlwb2dyYXBoeUxhYmVsIH0gZnJvbSAnLi4vVHlwb2dyYXBoeSc7XG5pbXBvcnQgeyBqb2luQ2xzLCBkZWZhdWx0IGFzIHJvb3RDbGFzc25hbWVzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgU2VsZWN0RmllbGRTaGVsbCBmcm9tICcuL1NlbGVjdEZpZWxkU2hlbGwnO1xuaW1wb3J0IFNlbGVjdE9wdGlvbkNvbnRlbnQgZnJvbSAnLi9TZWxlY3RPcHRpb25Db250ZW50JztcbmltcG9ydCBTZWxlY3RTZWFyY2hDb250cm9sIGZyb20gJy4vU2VsZWN0U2VhcmNoQ29udHJvbCc7XG5pbXBvcnQgU2VsZWN0VmFsdWVDb250ZW50IGZyb20gJy4vU2VsZWN0VmFsdWVDb250ZW50JztcbmltcG9ydCB7IHVzZVNlbGVjdFNoZWxsIH0gZnJvbSAnLi91c2VTZWxlY3RTaGVsbCc7XG5pbXBvcnQgeyBLRVlCT0FSRCwgU0VMRUNUX1RZUE9HUkFQSFkgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBleHRyYWN0T3B0aW9uVGV4dCwgZmlsdGVyT3B0aW9uR3JvdXBzLCBmbGF0dGVuT3B0aW9uR3JvdXBzLCBnZXRNdWx0aXBsZVZhbHVlLCBnZXRGb250U2l6ZSwgZ2V0T3B0aW9uc0J5VmFsdWVzLCBnZXRTZWxlY3RlZE9wdGlvbnMsIGlzT3B0aW9uU2VsZWN0ZWQsIG5vcm1hbGl6ZVNpemUsIG5vcm1hbGl6ZU9wdGlvbkdyb3VwcywgcmVtb3ZlTXVsdGlwbGVWYWx1ZSwgdG9nZ2xlTXVsdGlwbGVWYWx1ZSwgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCAnLi9zdHlsZSc7XG5jb25zdCBERUZBVUxUX01BWF9IRUlHSFQgPSAzMjA7XG5leHBvcnQgY29uc3QgU2VsZWN0ID0gKHByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBjbGFzc05hbWUgPSAnJywgcHJlZml4Q2xzID0gJ3NlbGVjdCcsIHN0eWxlLCBpZCwgbmFtZSwgJ2FyaWEtbGFiZWwnOiBhcmlhTGFiZWwsICdhcmlhLWxhYmVsbGVkYnknOiBhcmlhTGFiZWxsZWRCeSwgcGxhY2Vob2xkZXIgPSAnVmFsdWUnLCBvcHRpb25zID0gW10sIHZhbHVlLCBkZWZhdWx0VmFsdWUsIHNpemUgPSAnbGFyZ2UnLCBzdGF0dXMgPSAnZGVmYXVsdCcsIHZhcmlhbnQgPSAnZmlsbCcsIGRpc2FibGVkOiBkaXNhYmxlZFByb3AgPSBmYWxzZSwgcmVhZE9ubHkgPSBmYWxzZSwgbG9hZGluZyA9IGZhbHNlLCBtdWx0aXBsZSA9IGZhbHNlLCBtYXhWaXNpYmxlVmFsdWVzLCBzZWFyY2hhYmxlID0gZmFsc2UsIHNlYXJjaFBsYWNlaG9sZGVyID0gJ1NlYXJjaCcsIHNlYXJjaFZhbHVlLCBkZWZhdWx0U2VhcmNoVmFsdWUgPSAnJywgZmlsdGVySW5wdXRBdXRvRm9jdXMgPSB0cnVlLCBsYWJlbCwgbGFiZWxDbGFzc05hbWUsIGluZm8sIGRlc2NyaXB0aW9uLCBmZWVkYmFjaywgcmVxdWlyZWQgPSB0cnVlLCBwcmVmaXgsIGVtcHR5Q29udGVudCA9ICdObyBvcHRpb25zJywgcGFuZWxGb290ZXIsIG9wZW4sIGRlZmF1bHRPcGVuID0gZmFsc2UsIHBvcnRhbCA9IHRydWUsIGFsbG93RGVzZWxlY3QgPSBmYWxzZSwgcGFuZWxDbGFzc05hbWUsIG9wdGlvbkNsYXNzTmFtZSwgbGlzdE1heEhlaWdodCA9IERFRkFVTFRfTUFYX0hFSUdIVCwgb2Zmc2V0LCBhbmltYXRpb24sIG9uQ2hhbmdlLCBvbk9wZW5DaGFuZ2UsIG9uU2VhcmNoQ2hhbmdlLCBvbkJsdXIsIGZpbHRlck9wdGlvbiwgcmVuZGVyT3B0aW9uLCByZW5kZXJPcHRpb25Db250ZW50LCByZW5kZXJWYWx1ZSwgcmVmLCB9ID0gcHJvcHM7XG4gICAgY29uc3QgZGlzYWJsZWQgPSBkaXNhYmxlZFByb3AgfHwgbG9hZGluZztcbiAgICBjb25zdCBpbnRlcmFjdGl2ZSA9ICFkaXNhYmxlZCAmJiAhcmVhZE9ubHk7XG4gICAgY29uc3QgY2xhc3NlcyA9IHJvb3RDbGFzc25hbWVzKHByZWZpeENscyk7XG4gICAgY29uc3QgYXV0b0lkID0gdXNlSWQoKTtcbiAgICBjb25zdCB0cmlnZ2VySWQgPSBpZCAhPT0gbnVsbCAmJiBpZCAhPT0gdm9pZCAwID8gaWQgOiBhdXRvSWQ7XG4gICAgY29uc3QgbGFiZWxJZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZGVzY3JpcHRpb25JZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZmVlZGJhY2tJZCA9IHVzZUlkKCk7XG4gICAgY29uc3Qgb3B0aW9uSWRQcmVmaXggPSB1c2VJZCgpO1xuICAgIGNvbnN0IFtpbm5lclZhbHVlLCBzZXRJbm5lclZhbHVlXSA9IHVzZUNvbnRyb2xsZWRTdGF0ZShkZWZhdWx0VmFsdWUgIT09IG51bGwgJiYgZGVmYXVsdFZhbHVlICE9PSB2b2lkIDAgPyBkZWZhdWx0VmFsdWUgOiAobXVsdGlwbGUgPyBbXSA6IHVuZGVmaW5lZCksIHZhbHVlKTtcbiAgICBjb25zdCBbaW5uZXJTZWFyY2hWYWx1ZSwgc2V0SW5uZXJTZWFyY2hWYWx1ZV0gPSB1c2VDb250cm9sbGVkU3RhdGUoZGVmYXVsdFNlYXJjaFZhbHVlLCBzZWFyY2hWYWx1ZSk7XG4gICAgY29uc3QgW2FjdGl2ZUluZGV4LCBzZXRBY3RpdmVJbmRleF0gPSB1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBub3JtYWxpemVkU2l6ZSA9IG5vcm1hbGl6ZVNpemUoc2l6ZSk7XG4gICAgY29uc3QgYWxsT3B0aW9uR3JvdXBzID0gdXNlTWVtbygoKSA9PiBub3JtYWxpemVPcHRpb25Hcm91cHMob3B0aW9ucyksIFtvcHRpb25zXSk7XG4gICAgY29uc3QgYWxsRmxhdE9wdGlvbnMgPSB1c2VNZW1vKCgpID0+IGZsYXR0ZW5PcHRpb25Hcm91cHMoYWxsT3B0aW9uR3JvdXBzKSwgW2FsbE9wdGlvbkdyb3Vwc10pO1xuICAgIGNvbnN0IHZpc2libGVPcHRpb25Hcm91cHMgPSB1c2VNZW1vKCgpID0+IChzZWFyY2hhYmxlXG4gICAgICAgID8gZmlsdGVyT3B0aW9uR3JvdXBzKGFsbE9wdGlvbkdyb3VwcywgaW5uZXJTZWFyY2hWYWx1ZSwgZmlsdGVyT3B0aW9uKVxuICAgICAgICA6IGFsbE9wdGlvbkdyb3VwcyksIFthbGxPcHRpb25Hcm91cHMsIGZpbHRlck9wdGlvbiwgaW5uZXJTZWFyY2hWYWx1ZSwgc2VhcmNoYWJsZV0pO1xuICAgIGNvbnN0IHZpc2libGVGbGF0T3B0aW9ucyA9IHVzZU1lbW8oKCkgPT4gZmxhdHRlbk9wdGlvbkdyb3Vwcyh2aXNpYmxlT3B0aW9uR3JvdXBzKSwgW3Zpc2libGVPcHRpb25Hcm91cHNdKTtcbiAgICBjb25zdCBzZWxlY3RlZE9wdGlvbnMgPSB1c2VNZW1vKCgpID0+IGdldFNlbGVjdGVkT3B0aW9ucyhhbGxGbGF0T3B0aW9ucywgaW5uZXJWYWx1ZSwgbXVsdGlwbGUpLCBbYWxsRmxhdE9wdGlvbnMsIGlubmVyVmFsdWUsIG11bHRpcGxlXSk7XG4gICAgY29uc3Qgc2VsZWN0ZWRJbmRleCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBpZiAoc2VsZWN0ZWRPcHRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWF0Y2hlZEluZGV4ID0gdmlzaWJsZUZsYXRPcHRpb25zLmZpbmRJbmRleCgob3B0aW9uKSA9PiBvcHRpb24udmFsdWUgPT09IHNlbGVjdGVkT3B0aW9uc1swXS52YWx1ZSk7XG4gICAgICAgIHJldHVybiBtYXRjaGVkSW5kZXggPj0gMCA/IG1hdGNoZWRJbmRleCA6IG51bGw7XG4gICAgfSwgW3NlbGVjdGVkT3B0aW9ucywgdmlzaWJsZUZsYXRPcHRpb25zXSk7XG4gICAgY29uc3QgaGFzU2VsZWN0aW9uID0gc2VsZWN0ZWRPcHRpb25zLmxlbmd0aCA+IDA7XG4gICAgY29uc3QgbGlzdFJlZiA9IHVzZVJlZihbXSk7XG4gICAgY29uc3QgbGlzdENvbnRlbnRSZWYgPSB1c2VSZWYoW10pO1xuICAgIGNvbnN0IGZsb2F0aW5nUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHRyaWdnZXJSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3Qgc2VhcmNoSW5wdXRSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgaGFuZGxlVHJpZ2dlclJlZiA9IHVzZUV2ZW50Q2FsbGJhY2soKG5vZGUpID0+IHtcbiAgICAgICAgdHJpZ2dlclJlZi5jdXJyZW50ID0gbm9kZTtcbiAgICAgICAgaWYgKHJlZikge1xuICAgICAgICAgICAgcmVmLmN1cnJlbnQgPSBub2RlO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgY29uc3QgeyBpc09wZW46IGlubmVyT3Blbiwgc2V0T3BlbjogaGFuZGxlT3BlbkNoYW5nZSwgcmVmcywgY29udGV4dCwgZmxvYXRpbmdTdHlsZXMsIHRyYW5zaXRpb25TdHlsZXMsIGlzTW91bnRlZCwgYmFzZUludGVyYWN0aW9ucywgfSA9IHVzZVNlbGVjdFNoZWxsKHtcbiAgICAgICAgb3BlbixcbiAgICAgICAgZGVmYXVsdE9wZW4sXG4gICAgICAgIG9uT3BlbkNoYW5nZSxcbiAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgIHJlYWRPbmx5LFxuICAgICAgICBsaXN0TWF4SGVpZ2h0LFxuICAgICAgICBhbmltYXRpb24sXG4gICAgICAgIG9mZnNldCxcbiAgICB9KTtcbiAgICBjb25zdCBzZXRSZWZlcmVuY2UgPSB1c2VFdmVudENhbGxiYWNrKChub2RlKSA9PiB7XG4gICAgICAgIHJlZnMuc2V0UmVmZXJlbmNlKG5vZGUpO1xuICAgICAgICBoYW5kbGVUcmlnZ2VyUmVmKG5vZGUpO1xuICAgIH0pO1xuICAgIGNvbnN0IHNldEZsb2F0aW5nID0gdXNlRXZlbnRDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICByZWZzLnNldEZsb2F0aW5nKG5vZGUpO1xuICAgICAgICBmbG9hdGluZ1JlZi5jdXJyZW50ID0gbm9kZTtcbiAgICB9KTtcbiAgICBjb25zdCBsaXN0TmF2aWdhdGlvbiA9IHVzZUxpc3ROYXZpZ2F0aW9uKGNvbnRleHQsIHtcbiAgICAgICAgbGlzdFJlZixcbiAgICAgICAgYWN0aXZlSW5kZXgsXG4gICAgICAgIHNlbGVjdGVkSW5kZXgsXG4gICAgICAgIG9uTmF2aWdhdGU6IHNldEFjdGl2ZUluZGV4LFxuICAgICAgICBlbmFibGVkOiBpbm5lck9wZW4sXG4gICAgICAgIGxvb3A6IHRydWUsXG4gICAgICAgIHZpcnR1YWw6IHNlYXJjaGFibGUsXG4gICAgfSk7XG4gICAgY29uc3QgdHlwZWFoZWFkID0gdXNlVHlwZWFoZWFkKGNvbnRleHQsIHtcbiAgICAgICAgbGlzdFJlZjogbGlzdENvbnRlbnRSZWYsXG4gICAgICAgIGFjdGl2ZUluZGV4LFxuICAgICAgICBzZWxlY3RlZEluZGV4LFxuICAgICAgICBlbmFibGVkOiBpbm5lck9wZW4gJiYgIXNlYXJjaGFibGUsXG4gICAgICAgIG9uTWF0Y2g6IHNldEFjdGl2ZUluZGV4LFxuICAgIH0pO1xuICAgIGNvbnN0IHsgZ2V0UmVmZXJlbmNlUHJvcHMsIGdldEZsb2F0aW5nUHJvcHMsIGdldEl0ZW1Qcm9wcyB9ID0gdXNlSW50ZXJhY3Rpb25zKFtcbiAgICAgICAgLi4uYmFzZUludGVyYWN0aW9ucyxcbiAgICAgICAgbGlzdE5hdmlnYXRpb24sXG4gICAgICAgIHR5cGVhaGVhZCxcbiAgICBdKTtcbiAgICBjb25zdCBmaXJzdEVuYWJsZWRJbmRleCA9IHVzZU1lbW8oKCkgPT4gdmlzaWJsZUZsYXRPcHRpb25zLmZpbmRJbmRleCgob3B0aW9uKSA9PiAhb3B0aW9uLmRpc2FibGVkKSwgW3Zpc2libGVGbGF0T3B0aW9uc10pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghaW5uZXJPcGVuKSB7XG4gICAgICAgICAgICBzZXRBY3RpdmVJbmRleChzZWxlY3RlZEluZGV4KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzZXRBY3RpdmVJbmRleCgocHJldikgPT4ge1xuICAgICAgICAgICAgaWYgKHByZXYgIT09IG51bGwgJiYgdmlzaWJsZUZsYXRPcHRpb25zW3ByZXZdICYmICF2aXNpYmxlRmxhdE9wdGlvbnNbcHJldl0uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJldjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzZWxlY3RlZEluZGV4ICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgdmlzaWJsZUZsYXRPcHRpb25zW3NlbGVjdGVkSW5kZXhdICYmXG4gICAgICAgICAgICAgICAgIXZpc2libGVGbGF0T3B0aW9uc1tzZWxlY3RlZEluZGV4XS5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZEluZGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGZpcnN0RW5hYmxlZEluZGV4ID49IDAgPyBmaXJzdEVuYWJsZWRJbmRleCA6IG51bGw7XG4gICAgICAgIH0pO1xuICAgIH0sIFtmaXJzdEVuYWJsZWRJbmRleCwgaW5uZXJPcGVuLCBzZWxlY3RlZEluZGV4LCB2aXNpYmxlRmxhdE9wdGlvbnNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGlmICghaW5uZXJPcGVuIHx8IGFjdGl2ZUluZGV4ID09PSBudWxsIHx8IHNlYXJjaGFibGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAoX2EgPSBsaXN0UmVmLmN1cnJlbnRbYWN0aXZlSW5kZXhdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZm9jdXMoeyBwcmV2ZW50U2Nyb2xsOiB0cnVlIH0pO1xuICAgIH0sIFthY3RpdmVJbmRleCwgaW5uZXJPcGVuLCBzZWFyY2hhYmxlXSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgbGlzdFJlZi5jdXJyZW50ID0gbGlzdFJlZi5jdXJyZW50LnNsaWNlKDAsIHZpc2libGVGbGF0T3B0aW9ucy5sZW5ndGgpO1xuICAgICAgICBsaXN0Q29udGVudFJlZi5jdXJyZW50ID0gbGlzdENvbnRlbnRSZWYuY3VycmVudC5zbGljZSgwLCB2aXNpYmxlRmxhdE9wdGlvbnMubGVuZ3RoKTtcbiAgICB9LCBbdmlzaWJsZUZsYXRPcHRpb25zLmxlbmd0aF0pO1xuICAgIGNvbnN0IHNldFNlYXJjaElucHV0UmVmID0gdXNlRXZlbnRDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICBzZWFyY2hJbnB1dFJlZi5jdXJyZW50ID0gbm9kZTtcbiAgICAgICAgaWYgKG5vZGUgJiYgaW5uZXJPcGVuICYmIGZpbHRlcklucHV0QXV0b0ZvY3VzKSB7XG4gICAgICAgICAgICBub2RlLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IG5vdGlmeUJsdXJJZk91dHNpZGUgPSB1c2VFdmVudENhbGxiYWNrKChyZWxhdGVkVGFyZ2V0LCBldmVudCkgPT4ge1xuICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICBjb25zdCBuZXh0VGFyZ2V0ID0gcmVsYXRlZFRhcmdldDtcbiAgICAgICAgY29uc3Qgd2l0aGluVHJpZ2dlciA9ICEhKG5leHRUYXJnZXQgJiYgKChfYSA9IHRyaWdnZXJSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNvbnRhaW5zKG5leHRUYXJnZXQpKSk7XG4gICAgICAgIGNvbnN0IHdpdGhpbkZsb2F0aW5nID0gISEobmV4dFRhcmdldCAmJiAoKF9iID0gZmxvYXRpbmdSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNvbnRhaW5zKG5leHRUYXJnZXQpKSk7XG4gICAgICAgIGlmICghd2l0aGluVHJpZ2dlciAmJiAhd2l0aGluRmxvYXRpbmcpIHtcbiAgICAgICAgICAgIG9uQmx1ciA9PT0gbnVsbCB8fCBvbkJsdXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQmx1cihldmVudCk7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVUcmlnZ2VyQmx1ciA9IHVzZUV2ZW50Q2FsbGJhY2soKGV2ZW50KSA9PiB7XG4gICAgICAgIG5vdGlmeUJsdXJJZk91dHNpZGUoZXZlbnQucmVsYXRlZFRhcmdldCwgZXZlbnQpO1xuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZU9wdGlvbkJsdXIgPSB1c2VFdmVudENhbGxiYWNrKChldmVudCkgPT4ge1xuICAgICAgICBub3RpZnlCbHVySWZPdXRzaWRlKGV2ZW50LnJlbGF0ZWRUYXJnZXQsIGV2ZW50KTtcbiAgICB9KTtcbiAgICBjb25zdCBjb21taXRDaGFuZ2UgPSB1c2VFdmVudENhbGxiYWNrKChuZXh0VmFsdWUsIG5leHRPcHRpb24pID0+IHtcbiAgICAgICAgc2V0SW5uZXJWYWx1ZShuZXh0VmFsdWUpO1xuICAgICAgICBvbkNoYW5nZSA9PT0gbnVsbCB8fCBvbkNoYW5nZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25DaGFuZ2UobmV4dFZhbHVlLCBuZXh0T3B0aW9uLCBuYW1lKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVTZWxlY3RPcHRpb24gPSB1c2VFdmVudENhbGxiYWNrKChvcHRpb24pID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgaWYgKG9wdGlvbi5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChtdWx0aXBsZSkge1xuICAgICAgICAgICAgY29uc3QgbmV4dFZhbHVlID0gdG9nZ2xlTXVsdGlwbGVWYWx1ZShpbm5lclZhbHVlLCBvcHRpb24udmFsdWUpO1xuICAgICAgICAgICAgY29uc3QgbmV4dE9wdGlvbnMgPSBnZXRPcHRpb25zQnlWYWx1ZXMoYWxsRmxhdE9wdGlvbnMsIG5leHRWYWx1ZSk7XG4gICAgICAgICAgICBjb21taXRDaGFuZ2UobmV4dFZhbHVlLCBuZXh0T3B0aW9ucyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGFsbG93RGVzZWxlY3QgJiYgaW5uZXJWYWx1ZSA9PT0gb3B0aW9uLnZhbHVlKSB7XG4gICAgICAgICAgICBjb21taXRDaGFuZ2UodW5kZWZpbmVkLCB1bmRlZmluZWQpO1xuICAgICAgICAgICAgaGFuZGxlT3BlbkNoYW5nZShmYWxzZSk7XG4gICAgICAgICAgICBvbkJsdXIgPT09IG51bGwgfHwgb25CbHVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkJsdXIoKTtcbiAgICAgICAgICAgIChfYSA9IHRyaWdnZXJSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb21taXRDaGFuZ2Uob3B0aW9uLnZhbHVlLCBvcHRpb24pO1xuICAgICAgICBoYW5kbGVPcGVuQ2hhbmdlKGZhbHNlKTtcbiAgICAgICAgb25CbHVyID09PSBudWxsIHx8IG9uQmx1ciA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CbHVyKCk7XG4gICAgICAgIChfYiA9IHRyaWdnZXJSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVSZW1vdmVTZWxlY3RlZFZhbHVlID0gdXNlRXZlbnRDYWxsYmFjaygob3B0aW9uVmFsdWUpID0+IHtcbiAgICAgICAgaWYgKCFtdWx0aXBsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICghZ2V0TXVsdGlwbGVWYWx1ZShpbm5lclZhbHVlKS5pbmNsdWRlcyhvcHRpb25WYWx1ZSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXh0VmFsdWUgPSByZW1vdmVNdWx0aXBsZVZhbHVlKGlubmVyVmFsdWUsIG9wdGlvblZhbHVlKTtcbiAgICAgICAgY29uc3QgbmV4dE9wdGlvbnMgPSBnZXRPcHRpb25zQnlWYWx1ZXMoYWxsRmxhdE9wdGlvbnMsIG5leHRWYWx1ZSk7XG4gICAgICAgIGNvbW1pdENoYW5nZShuZXh0VmFsdWUsIG5leHRPcHRpb25zKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVUcmlnZ2VyS2V5RG93biA9IHVzZUV2ZW50Q2FsbGJhY2soKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmICghaW50ZXJhY3RpdmUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSBLRVlCT0FSRC5FTlRFUiB8fCBldmVudC5rZXkgPT09IEtFWUJPQVJELlNQQUNFKSB7XG4gICAgICAgICAgICBpZiAoaW5uZXJPcGVuICYmXG4gICAgICAgICAgICAgICAgYWN0aXZlSW5kZXggIT09IG51bGwgJiZcbiAgICAgICAgICAgICAgICB2aXNpYmxlRmxhdE9wdGlvbnNbYWN0aXZlSW5kZXhdICYmXG4gICAgICAgICAgICAgICAgIXZpc2libGVGbGF0T3B0aW9uc1thY3RpdmVJbmRleF0uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIGhhbmRsZVNlbGVjdE9wdGlvbih2aXNpYmxlRmxhdE9wdGlvbnNbYWN0aXZlSW5kZXhdKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgaGFuZGxlT3BlbkNoYW5nZSghaW5uZXJPcGVuKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSBLRVlCT0FSRC5BUlJPV19ET1dOIHx8IGV2ZW50LmtleSA9PT0gS0VZQk9BUkQuQVJST1dfVVApIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBpZiAoIWlubmVyT3Blbikge1xuICAgICAgICAgICAgICAgIGhhbmRsZU9wZW5DaGFuZ2UodHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVJdGVtTW91c2VFbnRlciA9IHVzZUV2ZW50Q2FsbGJhY2soKGluZGV4KSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgaWYgKCEoKF9hID0gdmlzaWJsZUZsYXRPcHRpb25zW2luZGV4XSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmRpc2FibGVkKSkge1xuICAgICAgICAgICAgc2V0QWN0aXZlSW5kZXgoaW5kZXgpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlVGFnUmVtb3ZlTW91c2VEb3duID0gdXNlRXZlbnRDYWxsYmFjaygoZXZlbnQpID0+IHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlVGFnUmVtb3ZlQ2xpY2sgPSB1c2VFdmVudENhbGxiYWNrKChldmVudCkgPT4ge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVTZWFyY2hCbHVyID0gdXNlRXZlbnRDYWxsYmFjaygoZXZlbnQpID0+IHtcbiAgICAgICAgbm90aWZ5Qmx1cklmT3V0c2lkZShldmVudC5yZWxhdGVkVGFyZ2V0LCBldmVudCk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlU2VhcmNoQ2hhbmdlID0gdXNlRXZlbnRDYWxsYmFjaygobmV4dFZhbHVlLCBfZXZlbnQpID0+IHtcbiAgICAgICAgc2V0SW5uZXJTZWFyY2hWYWx1ZShuZXh0VmFsdWUpO1xuICAgICAgICBvblNlYXJjaENoYW5nZSA9PT0gbnVsbCB8fCBvblNlYXJjaENoYW5nZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25TZWFyY2hDaGFuZ2UobmV4dFZhbHVlKTtcbiAgICB9KTtcbiAgICBjb25zdCBmaW5kRW5hYmxlZEluZGV4ID0gdXNlRXZlbnRDYWxsYmFjaygoY3VycmVudCwgZGlyZWN0aW9uKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gdmlzaWJsZUZsYXRPcHRpb25zLmxlbmd0aDtcbiAgICAgICAgaWYgKGxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc3RhcnQgPSBjdXJyZW50ICE9PSBudWxsICYmIGN1cnJlbnQgIT09IHZvaWQgMCA/IGN1cnJlbnQgOiAoZGlyZWN0aW9uID09PSAxID8gLTEgOiBsZW5ndGgpO1xuICAgICAgICBmb3IgKGxldCBzdGVwID0gMTsgc3RlcCA8PSBsZW5ndGg7IHN0ZXAgKz0gMSkge1xuICAgICAgICAgICAgY29uc3QgY2FuZGlkYXRlID0gKChzdGFydCArIGRpcmVjdGlvbiAqIHN0ZXApICUgbGVuZ3RoICsgbGVuZ3RoKSAlIGxlbmd0aDtcbiAgICAgICAgICAgIGlmICghKChfYSA9IHZpc2libGVGbGF0T3B0aW9uc1tjYW5kaWRhdGVdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZGlzYWJsZWQpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbmRpZGF0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVTZWFyY2hLZXlEb3duID0gdXNlRXZlbnRDYWxsYmFjaygoZXZlbnQpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSBLRVlCT0FSRC5BUlJPV19ET1dOKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgY29uc3QgbmV4dCA9IGZpbmRFbmFibGVkSW5kZXgoYWN0aXZlSW5kZXgsIDEpO1xuICAgICAgICAgICAgaWYgKG5leHQgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBzZXRBY3RpdmVJbmRleChuZXh0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSBLRVlCT0FSRC5BUlJPV19VUCkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGNvbnN0IHByZXYgPSBmaW5kRW5hYmxlZEluZGV4KGFjdGl2ZUluZGV4LCAtMSk7XG4gICAgICAgICAgICBpZiAocHJldiAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHNldEFjdGl2ZUluZGV4KHByZXYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChldmVudC5rZXkgPT09IEtFWUJPQVJELkVOVEVSKSB7XG4gICAgICAgICAgICBpZiAoYWN0aXZlSW5kZXggIT09IG51bGwgJiZcbiAgICAgICAgICAgICAgICB2aXNpYmxlRmxhdE9wdGlvbnNbYWN0aXZlSW5kZXhdICYmXG4gICAgICAgICAgICAgICAgIXZpc2libGVGbGF0T3B0aW9uc1thY3RpdmVJbmRleF0uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIGhhbmRsZVNlbGVjdE9wdGlvbih2aXNpYmxlRmxhdE9wdGlvbnNbYWN0aXZlSW5kZXhdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSBLRVlCT0FSRC5FU0NBUEUpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBoYW5kbGVPcGVuQ2hhbmdlKGZhbHNlKTtcbiAgICAgICAgICAgIChfYSA9IHRyaWdnZXJSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IHJlbmRlclZhbHVlTWV0YSA9IHtcbiAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgIHJlYWRPbmx5LFxuICAgICAgICBtdWx0aXBsZSxcbiAgICAgICAgbWF4VmlzaWJsZVZhbHVlcyxcbiAgICAgICAgb3BlbjogaW5uZXJPcGVuLFxuICAgICAgICBwbGFjZWhvbGRlcjogIWhhc1NlbGVjdGlvbixcbiAgICAgICAgc2VsZWN0ZWRPcHRpb25zLFxuICAgICAgICBzaXplOiBub3JtYWxpemVkU2l6ZSxcbiAgICAgICAgZm9udFNpemU6IGdldEZvbnRTaXplKG5vcm1hbGl6ZWRTaXplKSxcbiAgICB9O1xuICAgIGNvbnN0IHZhbHVlTGFiZWxDbGFzcyA9IGhhc1NlbGVjdGlvbiA/ICd2YWx1ZScgOiAncGxhY2Vob2xkZXInO1xuICAgIGNvbnN0IGlzTXVsdGlwbGVWYWx1ZUZpbGxlZCA9IChtdWx0aXBsZSAmJlxuICAgICAgICBoYXNTZWxlY3Rpb24gJiZcbiAgICAgICAgbWF4VmlzaWJsZVZhbHVlcyA9PT0gdW5kZWZpbmVkKTtcbiAgICBjb25zdCB0cmlnZ2VyQ2xhc3NOYW1lID0gY2xhc3NlcygndHJpZ2dlcicsIGpvaW5DbHMoY2xhc3NlcyhgdHJpZ2dlci0ke25vcm1hbGl6ZWRTaXplfWApLCBjbGFzc2VzKGB0cmlnZ2VyLSR7dmFyaWFudH1gKSwgaW5uZXJPcGVuICYmIGNsYXNzZXMoJ3RyaWdnZXItb3BlbicpLCBpc011bHRpcGxlVmFsdWVGaWxsZWQgJiYgY2xhc3NlcygndHJpZ2dlci1tdWx0aXBsZS1maWxsZWQnKSwgaGFzU2VsZWN0aW9uID8gY2xhc3NlcygndHJpZ2dlci1maWxsZWQnKSA6IGNsYXNzZXMoJ3RyaWdnZXItcGxhY2Vob2xkZXInKSwgc3RhdHVzICE9PSAnZGVmYXVsdCcgJiYgY2xhc3NlcyhgdHJpZ2dlci0ke3N0YXR1c31gKSwgZGlzYWJsZWQgJiYgY2xhc3NlcygndHJpZ2dlci1kaXNhYmxlZCcpLCByZWFkT25seSAmJiAhZGlzYWJsZWQgJiYgY2xhc3NlcygndHJpZ2dlci1yZWFkb25seScpKSk7XG4gICAgY29uc3QgaWNvblNpemUgPSBub3JtYWxpemVkU2l6ZSA9PT0gJ3NtYWxsJyA/IDE2IDogMjA7XG4gICAgY29uc3QgYWN0aXZlT3B0aW9uSWQgPSBzZWFyY2hhYmxlICYmIGlubmVyT3BlbiAmJiBhY3RpdmVJbmRleCAhPT0gbnVsbFxuICAgICAgICA/IGAke29wdGlvbklkUHJlZml4fS0ke2FjdGl2ZUluZGV4fWBcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgZmxvYXRpbmdBcmlhTGFiZWxsZWRCeSA9IGFyaWFMYWJlbGxlZEJ5ICE9PSBudWxsICYmIGFyaWFMYWJlbGxlZEJ5ICE9PSB2b2lkIDAgPyBhcmlhTGFiZWxsZWRCeSA6IChsYWJlbCA/IGxhYmVsSWQgOiB1bmRlZmluZWQpO1xuICAgIGNvbnN0IGRlc2NyaWJlZEJ5SWRzID0gW1xuICAgICAgICBkZXNjcmlwdGlvbiA/IGRlc2NyaXB0aW9uSWQgOiBudWxsLFxuICAgICAgICBmZWVkYmFjayA/IGZlZWRiYWNrSWQgOiBudWxsLFxuICAgIF0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oJyAnKSB8fCB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIChfanN4cyhTZWxlY3RGaWVsZFNoZWxsLCB7IGNsYXNzZXM6IGNsYXNzZXMsIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBzaXplOiBub3JtYWxpemVkU2l6ZSwgdmFyaWFudDogdmFyaWFudCwgc3RhdHVzOiBzdGF0dXMsIGRpc2FibGVkOiBkaXNhYmxlZCwgcmVhZE9ubHk6IHJlYWRPbmx5LCBsb2FkaW5nOiBsb2FkaW5nLCBsYWJlbDogbGFiZWwsIGxhYmVsQ2xhc3NOYW1lOiBsYWJlbENsYXNzTmFtZSwgaW5mbzogaW5mbywgZGVzY3JpcHRpb246IGRlc2NyaXB0aW9uLCBmZWVkYmFjazogZmVlZGJhY2ssIHJlcXVpcmVkOiByZXF1aXJlZCwgbGFiZWxJZDogbGFiZWxJZCwgZGVzY3JpcHRpb25JZDogZGVzY3JpcHRpb25JZCwgZmVlZGJhY2tJZDogZmVlZGJhY2tJZCwgY2hpbGRyZW46IFtfanN4cyhcImJ1dHRvblwiLCBPYmplY3QuYXNzaWduKHt9LCBnZXRSZWZlcmVuY2VQcm9wcyh7XG4gICAgICAgICAgICAgICAgcmVmOiBzZXRSZWZlcmVuY2UsXG4gICAgICAgICAgICAgICAgaWQ6IHRyaWdnZXJJZCxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnV0dG9uJyxcbiAgICAgICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgICAgICdhcmlhLXJlYWRvbmx5JzogcmVhZE9ubHkgfHwgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZTogdHJpZ2dlckNsYXNzTmFtZSxcbiAgICAgICAgICAgICAgICBvbktleURvd246IGhhbmRsZVRyaWdnZXJLZXlEb3duLFxuICAgICAgICAgICAgICAgIG9uQmx1cjogaGFuZGxlVHJpZ2dlckJsdXIsXG4gICAgICAgICAgICAgICAgJ2FyaWEtbGFiZWwnOiBhcmlhTGFiZWwsXG4gICAgICAgICAgICAgICAgJ2FyaWEtbGFiZWxsZWRieSc6IGZsb2F0aW5nQXJpYUxhYmVsbGVkQnksXG4gICAgICAgICAgICAgICAgJ2FyaWEtZGVzY3JpYmVkYnknOiBkZXNjcmliZWRCeUlkcyxcbiAgICAgICAgICAgIH0pLCB7IGNoaWxkcmVuOiBbX2pzeHMoXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdjb250ZW50JyksIGNoaWxkcmVuOiBbcHJlZml4ICYmIF9qc3goXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdwcmVmaXgnKSwgY2hpbGRyZW46IHByZWZpeCB9KSwgX2pzeChcInNwYW5cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXModmFsdWVMYWJlbENsYXNzLCBqb2luQ2xzKGNsYXNzZXMoYCR7dmFsdWVMYWJlbENsYXNzfS0ke25vcm1hbGl6ZWRTaXplfWApLCBpc011bHRpcGxlVmFsdWVGaWxsZWQgJiYgY2xhc3NlcyhgJHt2YWx1ZUxhYmVsQ2xhc3N9LW11bHRpcGxlYCksIGRpc2FibGVkICYmIGNsYXNzZXMoYCR7dmFsdWVMYWJlbENsYXNzfS1kaXNhYmxlZGApKSksIGNoaWxkcmVuOiBfanN4KFNlbGVjdFZhbHVlQ29udGVudCwgeyBjbGFzc2VzOiBjbGFzc2VzLCBoYXNTZWxlY3Rpb246IGhhc1NlbGVjdGlvbiwgbXVsdGlwbGU6IG11bHRpcGxlLCBwbGFjZWhvbGRlcjogcGxhY2Vob2xkZXIsIHJlbmRlclZhbHVlOiByZW5kZXJWYWx1ZSwgcmVuZGVyVmFsdWVNZXRhOiByZW5kZXJWYWx1ZU1ldGEsIHNlbGVjdGVkT3B0aW9uczogc2VsZWN0ZWRPcHRpb25zLCBtYXhWaXNpYmxlVmFsdWVzOiBtYXhWaXNpYmxlVmFsdWVzLCBvblJlbW92ZTogaGFuZGxlUmVtb3ZlU2VsZWN0ZWRWYWx1ZSwgb25SZW1vdmVDbGljazogaGFuZGxlVGFnUmVtb3ZlQ2xpY2ssIG9uUmVtb3ZlTW91c2VEb3duOiBoYW5kbGVUYWdSZW1vdmVNb3VzZURvd24gfSkgfSldIH0pLCBfanN4KFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnaWNvbicpLCBjaGlsZHJlbjogbG9hZGluZyA/IChfanN4KFNwaW5uZXIsIHsgc2l6ZTogaWNvblNpemUsIHN0cm9rZVdpZHRoOiAyIH0pKSA6IChfanN4KEljb25zLCB7IG5hbWU6IGlubmVyT3BlbiA/ICdjaGV2cm9uVXAnIDogJ2NoZXZyb25Eb3duJywgc2l6ZTogaWNvblNpemUsIGNvbG9yOiBcImN1cnJlbnRDb2xvclwiIH0pKSB9KV0gfSkpLCBpc01vdW50ZWQgJiYgaW50ZXJhY3RpdmUgJiYgKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBwYW5lbE5vZGUgPSAoX2pzeChGbG9hdGluZ0ZvY3VzTWFuYWdlciwgeyBjb250ZXh0OiBjb250ZXh0LCBtb2RhbDogZmFsc2UsIGluaXRpYWxGb2N1czogLTEsIHJldHVybkZvY3VzOiBmYWxzZSwgY2hpbGRyZW46IF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIGdldEZsb2F0aW5nUHJvcHMoe1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVmOiBzZXRGbG9hdGluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZTogam9pbkNscyhjbGFzc2VzKCdwYW5lbCcpLCBwYW5lbENsYXNzTmFtZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBmbG9hdGluZ1N0eWxlcyksIHRyYW5zaXRpb25TdHlsZXMpLFxuICAgICAgICAgICAgICAgICAgICB9KSwgeyBjaGlsZHJlbjogW3NlYXJjaGFibGUgJiYgKF9qc3goU2VsZWN0U2VhcmNoQ29udHJvbCwgeyByZWY6IHNldFNlYXJjaElucHV0UmVmLCBjbGFzc2VzOiBjbGFzc2VzLCBzaXplOiBub3JtYWxpemVkU2l6ZSwgcGxhY2Vob2xkZXI6IHNlYXJjaFBsYWNlaG9sZGVyLCB2YWx1ZTogaW5uZXJTZWFyY2hWYWx1ZSwgYWN0aXZlRGVzY2VuZGFudDogYWN0aXZlT3B0aW9uSWQsIG9uQmx1cjogaGFuZGxlU2VhcmNoQmx1ciwgb25DaGFuZ2U6IGhhbmRsZVNlYXJjaENoYW5nZSwgb25LZXlEb3duOiBoYW5kbGVTZWFyY2hLZXlEb3duIH0pKSwgX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncGFuZWwtYm9keScpLCBjaGlsZHJlbjogdmlzaWJsZUZsYXRPcHRpb25zLmxlbmd0aCA9PT0gMCA/IChfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdlbXB0eScpLCBjaGlsZHJlbjogX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBzaXplOiBTRUxFQ1RfVFlQT0dSQVBIWS5lbXB0eS5zaXplLCBjb2xvcjogU0VMRUNUX1RZUE9HUkFQSFkuZW1wdHkuY29sb3IsIGNoaWxkcmVuOiBlbXB0eUNvbnRlbnQgfSkgfSkpIDogKCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmxhdEluZGV4ID0gMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2aXNpYmxlT3B0aW9uR3JvdXBzLm1hcCgoZ3JvdXApID0+IChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnZ3JvdXAnKSwgY2hpbGRyZW46IFtncm91cC5sYWJlbCAmJiAoX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnZ3JvdXAtbGFiZWwnKSwgY2hpbGRyZW46IF9qc3goVHlwb2dyYXBoeUxhYmVsLCB7IHNpemU6IFNFTEVDVF9UWVBPR1JBUEhZLmdyb3VwTGFiZWwuc2l6ZSwgc3Ryb25nOiB0cnVlLCBjaGlsZHJlbjogZ3JvdXAubGFiZWwgfSkgfSkpLCBncm91cC5vcHRpb25zLm1hcCgob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcHRpb25GbGF0SW5kZXggPSBmbGF0SW5kZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGF0SW5kZXggKz0gMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNlbGVjdGVkID0gaXNPcHRpb25TZWxlY3RlZChpbm5lclZhbHVlLCBtdWx0aXBsZSwgb3B0aW9uLnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGFjdGl2ZSA9IGFjdGl2ZUluZGV4ID09PSBvcHRpb25GbGF0SW5kZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcHRpb25NZXRhID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZDogISFvcHRpb24uZGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IG9wdGlvbkZsYXRJbmRleCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuOiBpbm5lck9wZW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdENvbnRlbnRSZWYuY3VycmVudFtvcHRpb25GbGF0SW5kZXhdID0gZXh0cmFjdE9wdGlvblRleHQob3B0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoX2pzeChcImJ1dHRvblwiLCBPYmplY3QuYXNzaWduKHt9LCBnZXRJdGVtUHJvcHMoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZihub2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RSZWYuY3VycmVudFtvcHRpb25GbGF0SW5kZXhdID0gbm9kZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBgJHtvcHRpb25JZFByZWZpeH0tJHtvcHRpb25GbGF0SW5kZXh9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYnV0dG9uJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb2xlOiAnb3B0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU6IGNsYXNzZXMoJ29wdGlvbicsIGpvaW5DbHMoYWN0aXZlICYmIGNsYXNzZXMoJ29wdGlvbi1hY3RpdmUnKSwgc2VsZWN0ZWQgJiYgY2xhc3Nlcygnb3B0aW9uLXNlbGVjdGVkJyksIG9wdGlvbi5kaXNhYmxlZCAmJiBjbGFzc2VzKCdvcHRpb24tZGlzYWJsZWQnKSwgb3B0aW9uQ2xhc3NOYW1lKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6IG9wdGlvbi5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYXJpYS1zZWxlY3RlZCc6IHNlbGVjdGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s6IChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVTZWxlY3RPcHRpb24ob3B0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTW91c2VFbnRlcjogKCkgPT4gaGFuZGxlSXRlbU1vdXNlRW50ZXIob3B0aW9uRmxhdEluZGV4KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkJsdXI6IGhhbmRsZU9wdGlvbkJsdXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSwgeyBjaGlsZHJlbjogcmVuZGVyT3B0aW9uID8gKHJlbmRlck9wdGlvbihvcHRpb24sIG9wdGlvbk1ldGEpKSA6IChfanN4KFNlbGVjdE9wdGlvbkNvbnRlbnQsIHsgY2xhc3NlczogY2xhc3Nlcywgb3B0aW9uOiBvcHRpb24sIHNlbGVjdGVkOiBzZWxlY3RlZCwgY29udGVudDogcmVuZGVyT3B0aW9uQ29udGVudCA9PT0gbnVsbCB8fCByZW5kZXJPcHRpb25Db250ZW50ID09PSB2b2lkIDAgPyB2b2lkIDAgOiByZW5kZXJPcHRpb25Db250ZW50KG9wdGlvbiwgb3B0aW9uTWV0YSkgfSkpIH0pLCBgJHtncm91cC5rZXl9LSR7b3B0aW9uLnZhbHVlfWApKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSldIH0sIGdyb3VwLmtleSkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSkgfSksIHBhbmVsRm9vdGVyICE9IG51bGwgJiYgKF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3BhbmVsLWZvb3RlcicpLCBjaGlsZHJlbjogcGFuZWxGb290ZXIgfSkpXSB9KSkgfSkpO1xuICAgICAgICAgICAgICAgIHJldHVybiBwb3J0YWwgPyBfanN4KEZsb2F0aW5nUG9ydGFsLCB7IGNoaWxkcmVuOiBwYW5lbE5vZGUgfSkgOiBwYW5lbE5vZGU7XG4gICAgICAgICAgICB9KSgpXSB9KSk7XG59O1xuU2VsZWN0LmRpc3BsYXlOYW1lID0gJ1NlbGVjdCc7XG5leHBvcnQgZGVmYXVsdCBtZW1vKFNlbGVjdCk7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -149,7 +149,8 @@ var SelectCustom = exports.SelectCustom = function SelectCustom(props) {
|
|
|
149
149
|
open: isOpen,
|
|
150
150
|
disabled: disabled,
|
|
151
151
|
readOnly: readOnly,
|
|
152
|
-
size: normalizedSize
|
|
152
|
+
size: normalizedSize,
|
|
153
|
+
fontSize: (0, _utils.getFontSize)(normalizedSize)
|
|
153
154
|
}) : selectedTemplate;
|
|
154
155
|
var hasSelection = isRenderableTemplate(triggerContent);
|
|
155
156
|
var valueLabelClass = hasSelection ? 'value' : 'placeholder';
|
|
@@ -242,4 +243,4 @@ var SelectCustom = exports.SelectCustom = function SelectCustom(props) {
|
|
|
242
243
|
};
|
|
243
244
|
SelectCustom.displayName = 'SelectCustom';
|
|
244
245
|
var _default = exports["default"] = /*#__PURE__*/(0, _react2.memo)(SelectCustom);
|
|
245
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0MiIsIl9ob29rcyIsIl9JY29ucyIsIl9TcGlubmVyIiwiX2NsYXNzbmFtZXMiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9TZWxlY3RGaWVsZFNoZWxsIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl91c2VTZWxlY3RTaGVsbDIiLCJfdXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJERUZBVUxUX01BWF9IRUlHSFQiLCJpc1JlbmRlcmFibGVUZW1wbGF0ZSIsInZhbHVlIiwidW5kZWZpbmVkIiwiU2VsZWN0Q3VzdG9tIiwiZXhwb3J0cyIsInByb3BzIiwiX3Byb3BzJGNsYXNzTmFtZSIsImNsYXNzTmFtZSIsIl9wcm9wcyRwcmVmaXhDbHMiLCJwcmVmaXhDbHMiLCJzdHlsZSIsImlkIiwibmFtZSIsImFyaWFMYWJlbCIsImFyaWFMYWJlbGxlZEJ5IiwiX3Byb3BzJHNpemUiLCJzaXplIiwiX3Byb3BzJHN0YXR1cyIsInN0YXR1cyIsIl9wcm9wcyR2YXJpYW50IiwidmFyaWFudCIsIl9wcm9wcyRkaXNhYmxlZCIsImRpc2FibGVkIiwiZGlzYWJsZWRQcm9wIiwiX3Byb3BzJHJlYWRPbmx5IiwicmVhZE9ubHkiLCJfcHJvcHMkbG9hZGluZyIsImxvYWRpbmciLCJsYWJlbCIsImxhYmVsQ2xhc3NOYW1lIiwiaW5mbyIsImRlc2NyaXB0aW9uIiwiZmVlZGJhY2siLCJfcHJvcHMkcmVxdWlyZWQiLCJyZXF1aXJlZCIsInByZWZpeCIsIl9wcm9wcyRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwic2VsZWN0ZWRUZW1wbGF0ZSIsIl9wcm9wcyRhcnJvdyIsImFycm93Iiwib3BlbiIsIl9wcm9wcyRkZWZhdWx0T3BlbiIsImRlZmF1bHRPcGVuIiwiX3Byb3BzJHBvcnRhbCIsInBvcnRhbCIsInBhbmVsQ2xhc3NOYW1lIiwicGFuZWxGb290ZXIiLCJfcHJvcHMkbGlzdE1heEhlaWdodCIsImxpc3RNYXhIZWlnaHQiLCJwbGFjZW1lbnQiLCJwYW5lbFdpZHRoIiwib2Zmc2V0IiwiX3Byb3BzJHJvbGUiLCJyb2xlIiwicm9sZVByb3AiLCJhbmltYXRpb24iLCJvbk9wZW5DaGFuZ2UiLCJvbkJsdXIiLCJjaGlsZHJlbiIsInJlZiIsImludGVyYWN0aXZlIiwiY2xhc3NlcyIsInJvb3RDbGFzc25hbWVzIiwiYXV0b0lkIiwidXNlSWQiLCJ0cmlnZ2VySWQiLCJsYWJlbElkIiwiZGVzY3JpcHRpb25JZCIsImZlZWRiYWNrSWQiLCJub3JtYWxpemVkU2l6ZSIsIm5vcm1hbGl6ZVNpemUiLCJmbG9hdGluZ1JlZiIsInVzZVJlZiIsInRyaWdnZXJSZWYiLCJoYW5kbGVUcmlnZ2VyUmVmIiwidXNlRXZlbnRDYWxsYmFjayIsIm5vZGUiLCJjdXJyZW50IiwiX3VzZVNlbGVjdFNoZWxsIiwidXNlU2VsZWN0U2hlbGwiLCJpc09wZW4iLCJzZXRPcGVuIiwicmVmcyIsImNvbnRleHQiLCJmbG9hdGluZ1N0eWxlcyIsInRyYW5zaXRpb25TdHlsZXMiLCJpc01vdW50ZWQiLCJiYXNlSW50ZXJhY3Rpb25zIiwic2V0UmVmZXJlbmNlIiwic2V0RmxvYXRpbmciLCJfdXNlSW50ZXJhY3Rpb25zIiwidXNlSW50ZXJhY3Rpb25zIiwiZ2V0UmVmZXJlbmNlUHJvcHMiLCJnZXRGbG9hdGluZ1Byb3BzIiwibm90aWZ5Qmx1cklmT3V0c2lkZSIsInJlbGF0ZWRUYXJnZXQiLCJldmVudCIsIl9hIiwiX2IiLCJuZXh0VGFyZ2V0Iiwid2l0aGluVHJpZ2dlciIsImNvbnRhaW5zIiwid2l0aGluRmxvYXRpbmciLCJoYW5kbGVUcmlnZ2VyQmx1ciIsImNsb3NlIiwiZm9jdXMiLCJwcmV2ZW50U2Nyb2xsIiwidHJpZ2dlckNvbnRlbnQiLCJoYXNTZWxlY3Rpb24iLCJ2YWx1ZUxhYmVsQ2xhc3MiLCJ0cmlnZ2VyQ2xhc3NOYW1lIiwiam9pbkNscyIsImNvbmNhdCIsImljb25TaXplIiwiZmxvYXRpbmdBcmlhTGFiZWxsZWRCeSIsImRlc2NyaWJlZEJ5SWRzIiwiZmlsdGVyIiwiQm9vbGVhbiIsImpvaW4iLCJwYW5lbEN0eCIsInBhbmVsQm9keSIsIl9qc3hzIiwiU2VsZWN0RmllbGRTaGVsbCIsImFzc2lnbiIsInR5cGUiLCJfanN4IiwiU3Bpbm5lciIsInN0cm9rZVdpZHRoIiwiSWNvbnMiLCJjb2xvciIsInBhbmVsTm9kZSIsIkZsb2F0aW5nRm9jdXNNYW5hZ2VyIiwibW9kYWwiLCJpbml0aWFsRm9jdXMiLCJyZXR1cm5Gb2N1cyIsIkZsb2F0aW5nUG9ydGFsIiwiZGlzcGxheU5hbWUiLCJfZGVmYXVsdCIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDQUEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsT0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sV0FBQSxHQUFBQyx1QkFBQSxDQUFBUCxPQUFBO0FBR0EsSUFBQVEsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQVQsT0FBQTtBQUNBLElBQUFVLGdCQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxNQUFBLEdBQUFYLE9BQUE7QUFDQUEsT0FBQTtBQUFpQixTQUFBWSx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQU4sd0JBQUFNLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUcsR0FBQSxDQUFBTixDQUFBLFVBQUFHLENBQUEsQ0FBQUksR0FBQSxDQUFBUCxDQUFBLE9BQUFRLENBQUEsS0FBQUMsU0FBQSxVQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLENBQUEsSUFBQWQsQ0FBQSxvQkFBQWMsQ0FBQSxPQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWhCLENBQUEsRUFBQWMsQ0FBQSxTQUFBRyxDQUFBLEdBQUFQLENBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBYixDQUFBLEVBQUFjLENBQUEsVUFBQUcsQ0FBQSxLQUFBQSxDQUFBLENBQUFWLEdBQUEsSUFBQVUsQ0FBQSxDQUFBQyxHQUFBLElBQUFQLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSixDQUFBLEVBQUFNLENBQUEsRUFBQUcsQ0FBQSxJQUFBVCxDQUFBLENBQUFNLENBQUEsSUFBQWQsQ0FBQSxDQUFBYyxDQUFBLFlBQUFOLENBQUEsY0FBQVIsQ0FBQSxFQUFBRyxDQUFBLElBQUFBLENBQUEsQ0FBQWUsR0FBQSxDQUFBbEIsQ0FBQSxFQUFBUSxDQUFBLEdBQUFBLENBQUE7QUFFakIsSUFBTVcsa0JBQWtCLEdBQUcsR0FBRztBQUU5QixJQUFNQyxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQW9CQSxDQUFJQyxLQUFjO0VBQUEsT0FDMUNBLEtBQUssS0FBSyxJQUFJLElBQUlBLEtBQUssS0FBS0MsU0FBUyxJQUFJRCxLQUFLLEtBQUssS0FBSztBQUFBO0FBRW5ELElBQU1FLFlBQVksR0FBQUMsT0FBQSxDQUFBRCxZQUFBLEdBQTBCLFNBQXRDQSxZQUFZQSxDQUEyQkUsS0FBSyxFQUFJO0VBQzNELElBQUFDLGdCQUFBLEdBdUNJRCxLQUFLLENBdENQRSxTQUFTO0lBQVRBLFNBQVMsR0FBQUQsZ0JBQUEsY0FBRyxFQUFFLEdBQUFBLGdCQUFBO0lBQUFFLGdCQUFBLEdBc0NaSCxLQUFLLENBckNQSSxTQUFTO0lBQVRBLFNBQVMsR0FBQUQsZ0JBQUEsY0FBRyxRQUFRLEdBQUFBLGdCQUFBO0lBQ3BCRSxLQUFLLEdBb0NITCxLQUFLLENBcENQSyxLQUFLO0lBQ0xDLEVBQUUsR0FtQ0FOLEtBQUssQ0FuQ1BNLEVBQUU7SUFDRkMsSUFBSSxHQWtDRlAsS0FBSyxDQWxDUE8sSUFBSTtJQUNVQyxTQUFTLEdBaUNyQlIsS0FBSyxDQWpDUCxZQUFZO0lBQ09TLGNBQWMsR0FnQy9CVCxLQUFLLENBaENQLGlCQUFpQjtJQUFBVSxXQUFBLEdBZ0NmVixLQUFLLENBL0JQVyxJQUFJO0lBQUpBLElBQUksR0FBQUQsV0FBQSxjQUFHLE9BQU8sR0FBQUEsV0FBQTtJQUFBRSxhQUFBLEdBK0JaWixLQUFLLENBOUJQYSxNQUFNO0lBQU5BLE1BQU0sR0FBQUQsYUFBQSxjQUFHLFNBQVMsR0FBQUEsYUFBQTtJQUFBRSxjQUFBLEdBOEJoQmQsS0FBSyxDQTdCUGUsT0FBTztJQUFQQSxPQUFPLEdBQUFELGNBQUEsY0FBRyxNQUFNLEdBQUFBLGNBQUE7SUFBQUUsZUFBQSxHQTZCZGhCLEtBQUssQ0E1QlBpQixRQUFRO0lBQUVDLFlBQVksR0FBQUYsZUFBQSxjQUFHLEtBQUssR0FBQUEsZUFBQTtJQUFBRyxlQUFBLEdBNEI1Qm5CLEtBQUssQ0EzQlBvQixRQUFRO0lBQVJBLFFBQVEsR0FBQUQsZUFBQSxjQUFHLEtBQUssR0FBQUEsZUFBQTtJQUFBRSxjQUFBLEdBMkJkckIsS0FBSyxDQTFCUHNCLE9BQU87SUFBUEEsT0FBTyxHQUFBRCxjQUFBLGNBQUcsS0FBSyxHQUFBQSxjQUFBO0lBQ2ZFLEtBQUssR0F5Qkh2QixLQUFLLENBekJQdUIsS0FBSztJQUNMQyxjQUFjLEdBd0JaeEIsS0FBSyxDQXhCUHdCLGNBQWM7SUFDZEMsSUFBSSxHQXVCRnpCLEtBQUssQ0F2QlB5QixJQUFJO0lBQ0pDLFdBQVcsR0FzQlQxQixLQUFLLENBdEJQMEIsV0FBVztJQUNYQyxRQUFRLEdBcUJOM0IsS0FBSyxDQXJCUDJCLFFBQVE7SUFBQUMsZUFBQSxHQXFCTjVCLEtBQUssQ0FwQlA2QixRQUFRO0lBQVJBLFFBQVEsR0FBQUQsZUFBQSxjQUFHLElBQUksR0FBQUEsZUFBQTtJQUNmRSxNQUFNLEdBbUJKOUIsS0FBSyxDQW5CUDhCLE1BQU07SUFBQUMsa0JBQUEsR0FtQkovQixLQUFLLENBbEJQZ0MsV0FBVztJQUFYQSxXQUFXLEdBQUFELGtCQUFBLGNBQUcsT0FBTyxHQUFBQSxrQkFBQTtJQUNyQkUsZ0JBQWdCLEdBaUJkakMsS0FBSyxDQWpCUGlDLGdCQUFnQjtJQUFBQyxZQUFBLEdBaUJkbEMsS0FBSyxDQWhCUG1DLEtBQUs7SUFBTEEsS0FBSyxHQUFBRCxZQUFBLGNBQUcsSUFBSSxHQUFBQSxZQUFBO0lBQ1pFLElBQUksR0FlRnBDLEtBQUssQ0FmUG9DLElBQUk7SUFBQUMsa0JBQUEsR0FlRnJDLEtBQUssQ0FkUHNDLFdBQVc7SUFBWEEsV0FBVyxHQUFBRCxrQkFBQSxjQUFHLEtBQUssR0FBQUEsa0JBQUE7SUFBQUUsYUFBQSxHQWNqQnZDLEtBQUssQ0FiUHdDLE1BQU07SUFBTkEsTUFBTSxHQUFBRCxhQUFBLGNBQUcsSUFBSSxHQUFBQSxhQUFBO0lBQ2JFLGNBQWMsR0FZWnpDLEtBQUssQ0FaUHlDLGNBQWM7SUFDZEMsV0FBVyxHQVdUMUMsS0FBSyxDQVhQMEMsV0FBVztJQUFBQyxvQkFBQSxHQVdUM0MsS0FBSyxDQVZQNEMsYUFBYTtJQUFiQSxhQUFhLEdBQUFELG9CQUFBLGNBQUdqRCxrQkFBa0IsR0FBQWlELG9CQUFBO0lBQ2xDRSxTQUFTLEdBU1A3QyxLQUFLLENBVFA2QyxTQUFTO0lBQ1RDLFVBQVUsR0FRUjlDLEtBQUssQ0FSUDhDLFVBQVU7SUFDVkMsTUFBTSxHQU9KL0MsS0FBSyxDQVBQK0MsTUFBTTtJQUFBQyxXQUFBLEdBT0poRCxLQUFLLENBTlBpRCxJQUFJO0lBQUVDLFFBQVEsR0FBQUYsV0FBQSxjQUFHLFFBQVEsR0FBQUEsV0FBQTtJQUN6QkcsU0FBUyxHQUtQbkQsS0FBSyxDQUxQbUQsU0FBUztJQUNUQyxZQUFZLEdBSVZwRCxLQUFLLENBSlBvRCxZQUFZO0lBQ1pDLE1BQU0sR0FHSnJELEtBQUssQ0FIUHFELE1BQU07SUFDTkMsUUFBUSxHQUVOdEQsS0FBSyxDQUZQc0QsUUFBUTtJQUNSQyxHQUFHLEdBQ0R2RCxLQUFLLENBRFB1RCxHQUFHO0VBRUwsSUFBTXRDLFFBQVEsR0FBR0MsWUFBWSxJQUFJSSxPQUFPO0VBQ3hDLElBQU1rQyxXQUFXLEdBQUcsQ0FBQ3ZDLFFBQVEsSUFBSSxDQUFDRyxRQUFRO0VBRTFDLElBQU1xQyxPQUFPLEdBQUcsSUFBQUMsc0JBQWMsRUFBQ3RELFNBQVMsQ0FBQztFQUN6QyxJQUFNdUQsTUFBTSxHQUFHLElBQUFDLGFBQUssRUFBQSxDQUFFO0VBQ3RCLElBQU1DLFNBQVMsR0FBR3ZELEVBQUUsS0FBQSxJQUFBLElBQUZBLEVBQUUsS0FBQSxLQUFBLENBQUEsR0FBRkEsRUFBRSxHQUFJcUQsTUFBTTtFQUM5QixJQUFNRyxPQUFPLEdBQUcsSUFBQUYsYUFBSyxFQUFBLENBQUU7RUFDdkIsSUFBTUcsYUFBYSxHQUFHLElBQUFILGFBQUssRUFBQSxDQUFFO0VBQzdCLElBQU1JLFVBQVUsR0FBRyxJQUFBSixhQUFLLEVBQUEsQ0FBRTtFQUUxQixJQUFNSyxjQUFjLEdBQUcsSUFBQUMsb0JBQWEsRUFBQ3ZELElBQUksQ0FBQztFQUMxQyxJQUFNd0QsV0FBVyxHQUFHLElBQUFDLGNBQU0sRUFBd0IsSUFBSSxDQUFDO0VBQ3ZELElBQU1DLFVBQVUsR0FBRyxJQUFBRCxjQUFNLEVBQTJCLElBQUksQ0FBQztFQUV6RCxJQUFNRSxnQkFBZ0IsR0FBRyxJQUFBQyx1QkFBZ0IsRUFBQyxVQUFDQyxJQUE4QixFQUFJO0lBQzNFSCxVQUFVLENBQUNJLE9BQU8sR0FBR0QsSUFBSTtJQUN6QixJQUFJakIsR0FBRyxFQUFFO01BQ05BLEdBQTZDLENBQUNrQixPQUFPLEdBQUdELElBQUk7SUFDL0Q7RUFDRixDQUFDLENBQUM7RUFFRixJQUFBRSxlQUFBLEdBU0ksSUFBQUMsK0JBQWMsRUFBb0I7TUFDcEN2QyxJQUFJLEVBQUpBLElBQUk7TUFDSkUsV0FBVyxFQUFYQSxXQUFXO01BQ1hjLFlBQVksRUFBWkEsWUFBWTtNQUNabkMsUUFBUSxFQUFSQSxRQUFRO01BQ1JHLFFBQVEsRUFBUkEsUUFBUTtNQUNSeUIsU0FBUyxFQUFUQSxTQUFTO01BQ1RDLFVBQVUsRUFBVkEsVUFBVTtNQUNWRixhQUFhLEVBQWJBLGFBQWE7TUFDYk8sU0FBUyxFQUFUQSxTQUFTO01BQ1RGLElBQUksRUFBRUMsUUFBUTtNQUNkSCxNQUFNLEVBQU5BO0lEeERBLENDeURELENBQUM7SUFwQkE2QixNQUFNLEdBQUFGLGVBQUEsQ0FBTkUsTUFBTTtJQUNOQyxPQUFPLEdBQUFILGVBQUEsQ0FBUEcsT0FBTztJQUNQQyxJQUFJLEdBQUFKLGVBQUEsQ0FBSkksSUFBSTtJQUNKQyxPQUFPLEdBQUFMLGVBQUEsQ0FBUEssT0FBTztJQUNQQyxjQUFjLEdBQUFOLGVBQUEsQ0FBZE0sY0FBYztJQUNkQyxnQkFBZ0IsR0FBQVAsZUFBQSxDQUFoQk8sZ0JBQWdCO0lBQ2hCQyxTQUFTLEdBQUFSLGVBQUEsQ0FBVFEsU0FBUztJQUNUQyxnQkFBZ0IsR0FBQVQsZUFBQSxDQUFoQlMsZ0JBQWdCO0VBZWxCLElBQU1DLFlBQVksR0FBRyxJQUFBYix1QkFBZ0IsRUFBQyxVQUFDQyxJQUE4QixFQUFJO0lBQ3ZFTSxJQUFJLENBQUNNLFlBQVksQ0FBQ1osSUFBSSxDQUFDO0lBQ3ZCRixnQkFBZ0IsQ0FBQ0UsSUFBSSxDQUFDO0VBQ3hCLENBQUMsQ0FBQztFQUVGLElBQU1hLFdBQVcsR0FBRyxJQUFBZCx1QkFBZ0IsRUFBQyxVQUFDQyxJQUEyQixFQUFJO0lBQ25FTSxJQUFJLENBQUNPLFdBQVcsQ0FBQ2IsSUFBSSxDQUFDO0lBQ3RCTCxXQUFXLENBQUNNLE9BQU8sR0FBR0QsSUFBSTtFQUM1QixDQUFDLENBQUM7RUFFRixJQUFBYyxnQkFBQSxHQUFnRCxJQUFBQyxzQkFBZSxFQUFDSixnQkFBZ0IsQ0FBQztJQUF6RUssaUJBQWlCLEdBQUFGLGdCQUFBLENBQWpCRSxpQkFBaUI7SUFBRUMsZ0JBQWdCLEdBQUFILGdCQUFBLENBQWhCRyxnQkFBZ0I7RUFFM0MsSUFBTUMsbUJBQW1CLEdBQUcsSUFBQW5CLHVCQUFnQixFQUMxQyxVQUFDb0IsYUFBaUMsRUFBRUMsS0FBK0IsRUFBSTtJRDdEbkUsSUFBSUMsRUFBRSxFQUFFQyxFQUFFO0lDOERaLElBQU1DLFVBQVUsR0FBR0osYUFBNEI7SUFDL0MsSUFBTUssYUFBYSxHQUFHLENBQUMsRUFBRUQsVUFBVSxLQUFJLENBQUFGLEVBQUEsR0FBQXhCLFVBQVUsQ0FBQ0ksT0FBTyxNQUFBLElBQUEsSUFBQW9CLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxDQUFFSSxRQUFRLENBQUNGLFVBQVUsQ0FBQyxDQUFBLENBQUM7SUFDaEYsSUFBTUcsY0FBYyxHQUFHLENBQUMsRUFBRUgsVUFBVSxLQUFJLENBQUFELEVBQUEsR0FBQTNCLFdBQVcsQ0FBQ00sT0FBTyxNQUFBLElBQUEsSUFBQXFCLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxDQUFFRyxRQUFRLENBQUNGLFVBQVUsQ0FBQyxDQUFBLENBQUM7SUFFbEYsSUFBSSxDQUFDQyxhQUFhLElBQUksQ0FBQ0UsY0FBYyxFQUFFO01BQ3JDN0MsTUFBTSxLQUFBLElBQUEsSUFBTkEsTUFBTSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFOQSxNQUFNLENBQUd1QyxLQUFLLENBQUM7SUFDakI7RUFDRixDQUFDLENBQ0Y7RUFFRCxJQUFNTyxpQkFBaUIsR0FBRyxJQUFBNUIsdUJBQWdCLEVBQUMsVUFBQ3FCLEtBQW9DLEVBQUk7SUFDbEZGLG1CQUFtQixDQUFDRSxLQUFLLENBQUNELGFBQWEsRUFBRUMsS0FBZ0MsQ0FBQztFQUM1RSxDQUFDLENBQUM7RUFFRixJQUFNUSxLQUFLLEdBQUcsSUFBQTdCLHVCQUFnQixFQUFDLFlBQUs7SURoRTlCLElBQUlzQixFQUFFO0lDaUVWaEIsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUNkLENBQUFnQixFQUFBLEdBQUF4QixVQUFVLENBQUNJLE9BQU8sTUFBQSxJQUFBLElBQUFvQixFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsQ0FBRVEsS0FBSyxDQUFDO01BQUVDLGFBQWEsRUFBRTtJQUFJLENBQUUsQ0FBQztFQUNwRCxDQUFDLENBQUM7RUFFRixJQUFNQyxjQUFjLEdBQ2xCLE9BQU90RSxnQkFBZ0IsS0FBSyxVQUFVLEdBQ2xDQSxnQkFBZ0IsQ0FBQztJQUFFRyxJQUFJLEVBQUV3QyxNQUFNO0lBQUUzRCxRQUFRLEVBQVJBLFFBQVE7SUFBRUcsUUFBUSxFQUFSQSxRQUFRO0lBQUVULElBQUksRUFBRXNEO0VBQWMsQ0FBRSxDQUFDLEdBQzVFaEMsZ0JBQWdCO0VBQ3RCLElBQU11RSxZQUFZLEdBQUc3RyxvQkFBb0IsQ0FBQzRHLGNBQWMsQ0FBQztFQUV6RCxJQUFNRSxlQUFlLEdBQUdELFlBQVksR0FBRyxPQUFPLEdBQUcsYUFBYTtFQUM5RCxJQUFNRSxnQkFBZ0IsR0FBR2pELE9BQU8sQ0FDOUIsU0FBUyxFQUNULElBQUFrRCxtQkFBTyxFQUNMbEQsT0FBTyxZQUFBbUQsTUFBQSxDQUFZM0MsY0FBYyxDQUFFLENBQUMsRUFDcENSLE9BQU8sWUFBQW1ELE1BQUEsQ0FBWTdGLE9BQU8sQ0FBRSxDQUFDLEVBQzdCNkQsTUFBTSxJQUFJbkIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUNqQytDLFlBQVksR0FBRy9DLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHQSxPQUFPLENBQUMscUJBQXFCLENBQUMsRUFDekU1QyxNQUFNLEtBQUssU0FBUyxJQUFJNEMsT0FBTyxZQUFBbUQsTUFBQSxDQUFZL0YsTUFBTSxDQUFFLENBQUMsRUFDcERJLFFBQVEsSUFBSXdDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxFQUN2Q3JDLFFBQVEsSUFBSSxDQUFDSCxRQUFRLElBQUl3QyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FDckQsQ0FDRjtFQUNELElBQU1vRCxRQUFRLEdBQUc1QyxjQUFjLEtBQUssT0FBTyxHQUFHLEVBQUUsR0FBRyxFQUFFO0VBQ3JELElBQU02QyxzQkFBc0IsR0FBR3JHLGNBQWMsS0FBQSxJQUFBLElBQWRBLGNBQWMsS0FBQSxLQUFBLENBQUEsR0FBZEEsY0FBYyxHQUFLYyxLQUFLLEdBQUd1QyxPQUFPLEdBQUdqRSxTQUFVO0VBQzlFLElBQU1rSCxjQUFjLEdBQ2xCLENBQUNyRixXQUFXLEdBQUdxQyxhQUFhLEdBQUcsSUFBSSxFQUFFcEMsUUFBUSxHQUFHcUMsVUFBVSxHQUFHLElBQUksQ0FBQyxDQUMvRGdELE1BQU0sQ0FBQ0MsT0FBTyxDQUFDLENBQ2ZDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSXJILFNBQVM7RUFFM0IsSUFBTXNILFFBQVEsR0FBNkI7SUFBRWYsS0FBSyxFQUFMQSxLQUFLO0lBQUVoRSxJQUFJLEVBQUV3QztFQUFNLENBQUU7RUFDbEUsSUFBTXdDLFNBQVMsR0FBRyxPQUFPOUQsUUFBUSxLQUFLLFVBQVUsR0FBR0EsUUFBUSxDQUFDNkQsUUFBUSxDQUFDLEdBQUc3RCxRQUFRO0VBRWhGLE9BQ0UsSUFBQStELGdCQUFBLEVBQUNDLDRCQUFnQixFQUFBO0lBQ2Y3RCxPQUFPLEVBQUVBLE9BQU87SUFDaEJ2RCxTQUFTLEVBQUVBLFNBQVM7SUFDcEJTLElBQUksRUFBRXNELGNBQWM7SUFDcEJsRCxPQUFPLEVBQUVBLE9BQU87SUFDaEJGLE1BQU0sRUFBRUEsTUFBTTtJQUNkSSxRQUFRLEVBQUVBLFFBQVE7SUFDbEJHLFFBQVEsRUFBRUEsUUFBUTtJQUNsQkUsT0FBTyxFQUFFQSxPQUFPO0lBQ2hCQyxLQUFLLEVBQUVBLEtBQUs7SUFDWkMsY0FBYyxFQUFFQSxjQUFjO0lBQzlCQyxJQUFJLEVBQUVBLElBQUk7SUFDVkMsV0FBVyxFQUFFQSxXQUFXO0lBQ3hCQyxRQUFRLEVBQUVBLFFBQVE7SUFDbEJFLFFBQVEsRUFBRUEsUUFBUTtJQUNsQmlDLE9BQU8sRUFBRUEsT0FBTztJQUNoQkMsYUFBYSxFQUFFQSxhQUFhO0lBQzVCQyxVQUFVLEVBQUVBLFVBQVU7SUFBQVYsUUFBQSxFQUFBLENBRXRCLElBQUErRCxnQkFBQSxFQUFBLFFBQUEsRUFBQW5JLE1BQUEsQ0FBQXFJLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDTS9CLGlCQUFpQixDQUFDO01BQ3BCakMsR0FBRyxFQUFFNkIsWUFBWTtNQUNqQjlFLEVBQUUsRUFBRXVELFNBQVM7TUFDYjJELElBQUksRUFBRSxRQUFRO01BQ2RqSCxJQUFJLEVBQUpBLElBQUk7TUFDSlUsUUFBUSxFQUFSQSxRQUFRO01BQ1IsZUFBZSxFQUFFRyxRQUFRLElBQUl2QixTQUFTO01BQ3RDUSxLQUFLLEVBQUxBLEtBQUs7TUFDTEgsU0FBUyxFQUFFd0csZ0JBQWdCO01BQzNCckQsTUFBTSxFQUFFOEMsaUJBQWlCO01BQ3pCLFlBQVksRUFBRTNGLFNBQVM7TUFDdkIsaUJBQWlCLEVBQUVzRyxzQkFBc0I7TUFDekMsa0JBQWtCLEVBQUVDO0lEckdsQixDQ3NHSCxDQUFDLEVBQUE7TUFBQXpELFFBQUEsRUFBQSxDQUVGLElBQUErRCxnQkFBQSxFQUFBLE1BQUEsRUFBQTtRQUFNbkgsU0FBUyxFQUFFdUQsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUFBSCxRQUFBLEVBQUEsQ0FDaEN4QixNQUFNLElBQUksSUFBQTJGLGVBQUEsRUFBQSxNQUFBLEVBQUE7VUFBTXZILFNBQVMsRUFBRXVELE9BQU8sQ0FBQyxRQUFRLENBQUM7VUFBQUgsUUFBQSxFQUFHeEI7UUFBTSxDQUFBLENBQVEsRUFDOUQsSUFBQTJGLGVBQUEsRUFBQSxNQUFBLEVBQUE7VUFDRXZILFNBQVMsRUFBRXVELE9BQU8sQ0FDaEJnRCxlQUFlLEVBQ2YsSUFBQUUsbUJBQU8sRUFDTGxELE9BQU8sSUFBQW1ELE1BQUEsQ0FBSUgsZUFBZSxPQUFBRyxNQUFBLENBQUkzQyxjQUFjLENBQUUsQ0FBQyxFQUMvQ2hELFFBQVEsSUFBSXdDLE9BQU8sSUFBQW1ELE1BQUEsQ0FBSUgsZUFBZSxjQUFXLENBQUMsQ0FDbkQsQ0FDRjtVQUFBbkQsUUFBQSxFQUVBa0QsWUFBWSxHQUFHRCxjQUFjLEdBQUd2RTtRQUFXLENBQUEsQ0FDdkM7TUFBQSxDQUFBLENBQ0YsRUFDTkcsS0FBSyxJQUNKLElBQUFzRixlQUFBLEVBQUEsTUFBQSxFQUFBO1FBQU12SCxTQUFTLEVBQUV1RCxPQUFPLENBQUMsTUFBTSxDQUFDO1FBQUFILFFBQUEsRUFDN0JoQyxPQUFPLEdBQ04sSUFBQW1HLGVBQUEsRUFBQ0MsZ0JBQU8sRUFBQTtVQUFDL0csSUFBSSxFQUFFa0csUUFBUTtVQUFFYyxXQUFXLEVBQUU7UUFBQyxDQUFBLENBQUksR0FFM0MsSUFBQUYsZUFBQSxFQUFDRyxZQUFLLEVBQUE7VUFDSnJILElBQUksRUFBRXFFLE1BQU0sR0FBRyxXQUFXLEdBQUcsYUFBYTtVQUMxQ2pFLElBQUksRUFBRWtHLFFBQVE7VUFDZGdCLEtBQUssRUFBQztRQUFjLENBQUE7TUFFdkIsQ0FBQSxDQUVKO0lBQUEsQ0FBQSxDQUFBLENBQ00sRUFFUjNDLFNBQVMsSUFBSTFCLFdBQVcsSUFBSyxZQUFLO01BQ2pDLElBQU1zRSxTQUFTLEdBQ2IsSUFBQUwsZUFBQSxFQUFDTSwyQkFBb0IsRUFBQTtRQUNuQmhELE9BQU8sRUFBRUEsT0FBTztRQUNoQmlELEtBQUssRUFBRSxLQUFLO1FBQ1pDLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDaEJDLFdBQVcsRUFBRSxLQUFLO1FBQUE1RSxRQUFBLEVBRWxCLElBQUErRCxnQkFBQSxFQUFBLEtBQUEsRUFBQW5JLE1BQUEsQ0FBQXFJLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDTTlCLGdCQUFnQixDQUFDO1VBQ25CbEMsR0FBRyxFQUFFOEIsV0FBVztVQUNoQm5GLFNBQVMsRUFBRSxJQUFBeUcsbUJBQU8sRUFBQ2xELE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRWhCLGNBQWMsQ0FBQztVQUNwRHBDLEtBQUssRUFBQW5CLE1BQUEsQ0FBQXFJLE1BQUEsQ0FBQXJJLE1BQUEsQ0FBQXFJLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFBT3ZDLGNBQWMsQ0FBQSxFQUFLQyxnQkFBZ0I7UUQ1STNDLENDNklMLENBQUMsRUFBQTtVQUFBM0IsUUFBQSxFQUFBLENBRUYsSUFBQW1FLGVBQUEsRUFBQSxLQUFBLEVBQUE7WUFBS3ZILFNBQVMsRUFBRXVELE9BQU8sQ0FBQyxZQUFZLENBQUM7WUFBQUgsUUFBQSxFQUFHOEQ7VUFBUyxDQUFBLENBQU8sRUFDdkQxRSxXQUFXLElBQUksSUFBSSxJQUNsQixJQUFBK0UsZUFBQSxFQUFBLEtBQUEsRUFBQTtZQUFLdkgsU0FBUyxFQUFFdUQsT0FBTyxDQUFDLGNBQWMsQ0FBQztZQUFBSCxRQUFBLEVBQUdaO1VBQVcsQ0FBQSxDQUN0RDtRQUFBLENBQUEsQ0FBQTtNQUNHLENBQUEsQ0FFVDtNQUVELE9BQU9GLE1BQU0sR0FBRyxJQUFBaUYsZUFBQSxFQUFDVSxxQkFBYyxFQUFBO1FBQUE3RSxRQUFBLEVBQUV3RTtNQUFTLENBQUEsQ0FBa0IsR0FBR0EsU0FBUztJQUMxRSxDQUFDLENBQUMsQ0FBRTtFQUFBLENBQUEsQ0FDYTtBQUV2QixDQUFDO0FBRURoSSxZQUFZLENBQUNzSSxXQUFXLEdBQUcsY0FBYztBQUFDLElBQUFDLFFBQUEsR0FBQXRJLE9BQUEsMkJBRTNCLElBQUF1SSxZQUFJLEVBQUN4SSxZQUFZLENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9TZWxlY3QvU2VsZWN0Q3VzdG9tLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IEZsb2F0aW5nRm9jdXNNYW5hZ2VyLCBGbG9hdGluZ1BvcnRhbCwgdXNlSW50ZXJhY3Rpb25zIH0gZnJvbSAnQGZsb2F0aW5nLXVpL3JlYWN0JztcbmltcG9ydCB7IG1lbW8sIHVzZUlkLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VFdmVudENhbGxiYWNrIH0gZnJvbSAnQDFtb25leS9ob29rcyc7XG5pbXBvcnQgeyBJY29ucyB9IGZyb20gJy4uL0ljb25zJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuLi9TcGlubmVyJztcbmltcG9ydCB7IGpvaW5DbHMsIGRlZmF1bHQgYXMgcm9vdENsYXNzbmFtZXMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCBTZWxlY3RGaWVsZFNoZWxsIGZyb20gJy4vU2VsZWN0RmllbGRTaGVsbCc7XG5pbXBvcnQgeyB1c2VTZWxlY3RTaGVsbCB9IGZyb20gJy4vdXNlU2VsZWN0U2hlbGwnO1xuaW1wb3J0IHsgbm9ybWFsaXplU2l6ZSB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICcuL3N0eWxlJztcbmNvbnN0IERFRkFVTFRfTUFYX0hFSUdIVCA9IDMyMDtcbmNvbnN0IGlzUmVuZGVyYWJsZVRlbXBsYXRlID0gKHZhbHVlKSA9PiB2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBmYWxzZTtcbmV4cG9ydCBjb25zdCBTZWxlY3RDdXN0b20gPSAocHJvcHMpID0+IHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSA9ICcnLCBwcmVmaXhDbHMgPSAnc2VsZWN0Jywgc3R5bGUsIGlkLCBuYW1lLCAnYXJpYS1sYWJlbCc6IGFyaWFMYWJlbCwgJ2FyaWEtbGFiZWxsZWRieSc6IGFyaWFMYWJlbGxlZEJ5LCBzaXplID0gJ2xhcmdlJywgc3RhdHVzID0gJ2RlZmF1bHQnLCB2YXJpYW50ID0gJ2ZpbGwnLCBkaXNhYmxlZDogZGlzYWJsZWRQcm9wID0gZmFsc2UsIHJlYWRPbmx5ID0gZmFsc2UsIGxvYWRpbmcgPSBmYWxzZSwgbGFiZWwsIGxhYmVsQ2xhc3NOYW1lLCBpbmZvLCBkZXNjcmlwdGlvbiwgZmVlZGJhY2ssIHJlcXVpcmVkID0gdHJ1ZSwgcHJlZml4LCBwbGFjZWhvbGRlciA9ICdWYWx1ZScsIHNlbGVjdGVkVGVtcGxhdGUsIGFycm93ID0gdHJ1ZSwgb3BlbiwgZGVmYXVsdE9wZW4gPSBmYWxzZSwgcG9ydGFsID0gdHJ1ZSwgcGFuZWxDbGFzc05hbWUsIHBhbmVsRm9vdGVyLCBsaXN0TWF4SGVpZ2h0ID0gREVGQVVMVF9NQVhfSEVJR0hULCBwbGFjZW1lbnQsIHBhbmVsV2lkdGgsIG9mZnNldCwgcm9sZTogcm9sZVByb3AgPSAnZGlhbG9nJywgYW5pbWF0aW9uLCBvbk9wZW5DaGFuZ2UsIG9uQmx1ciwgY2hpbGRyZW4sIHJlZiwgfSA9IHByb3BzO1xuICAgIGNvbnN0IGRpc2FibGVkID0gZGlzYWJsZWRQcm9wIHx8IGxvYWRpbmc7XG4gICAgY29uc3QgaW50ZXJhY3RpdmUgPSAhZGlzYWJsZWQgJiYgIXJlYWRPbmx5O1xuICAgIGNvbnN0IGNsYXNzZXMgPSByb290Q2xhc3NuYW1lcyhwcmVmaXhDbHMpO1xuICAgIGNvbnN0IGF1dG9JZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgdHJpZ2dlcklkID0gaWQgIT09IG51bGwgJiYgaWQgIT09IHZvaWQgMCA/IGlkIDogYXV0b0lkO1xuICAgIGNvbnN0IGxhYmVsSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGRlc2NyaXB0aW9uSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGZlZWRiYWNrSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IG5vcm1hbGl6ZWRTaXplID0gbm9ybWFsaXplU2l6ZShzaXplKTtcbiAgICBjb25zdCBmbG9hdGluZ1JlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCB0cmlnZ2VyUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IGhhbmRsZVRyaWdnZXJSZWYgPSB1c2VFdmVudENhbGxiYWNrKChub2RlKSA9PiB7XG4gICAgICAgIHRyaWdnZXJSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICAgIGlmIChyZWYpIHtcbiAgICAgICAgICAgIHJlZi5jdXJyZW50ID0gbm9kZTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IHsgaXNPcGVuLCBzZXRPcGVuLCByZWZzLCBjb250ZXh0LCBmbG9hdGluZ1N0eWxlcywgdHJhbnNpdGlvblN0eWxlcywgaXNNb3VudGVkLCBiYXNlSW50ZXJhY3Rpb25zLCB9ID0gdXNlU2VsZWN0U2hlbGwoe1xuICAgICAgICBvcGVuLFxuICAgICAgICBkZWZhdWx0T3BlbixcbiAgICAgICAgb25PcGVuQ2hhbmdlLFxuICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgcmVhZE9ubHksXG4gICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgcGFuZWxXaWR0aCxcbiAgICAgICAgbGlzdE1heEhlaWdodCxcbiAgICAgICAgYW5pbWF0aW9uLFxuICAgICAgICByb2xlOiByb2xlUHJvcCxcbiAgICAgICAgb2Zmc2V0LFxuICAgIH0pO1xuICAgIGNvbnN0IHNldFJlZmVyZW5jZSA9IHVzZUV2ZW50Q2FsbGJhY2soKG5vZGUpID0+IHtcbiAgICAgICAgcmVmcy5zZXRSZWZlcmVuY2Uobm9kZSk7XG4gICAgICAgIGhhbmRsZVRyaWdnZXJSZWYobm9kZSk7XG4gICAgfSk7XG4gICAgY29uc3Qgc2V0RmxvYXRpbmcgPSB1c2VFdmVudENhbGxiYWNrKChub2RlKSA9PiB7XG4gICAgICAgIHJlZnMuc2V0RmxvYXRpbmcobm9kZSk7XG4gICAgICAgIGZsb2F0aW5nUmVmLmN1cnJlbnQgPSBub2RlO1xuICAgIH0pO1xuICAgIGNvbnN0IHsgZ2V0UmVmZXJlbmNlUHJvcHMsIGdldEZsb2F0aW5nUHJvcHMgfSA9IHVzZUludGVyYWN0aW9ucyhiYXNlSW50ZXJhY3Rpb25zKTtcbiAgICBjb25zdCBub3RpZnlCbHVySWZPdXRzaWRlID0gdXNlRXZlbnRDYWxsYmFjaygocmVsYXRlZFRhcmdldCwgZXZlbnQpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgY29uc3QgbmV4dFRhcmdldCA9IHJlbGF0ZWRUYXJnZXQ7XG4gICAgICAgIGNvbnN0IHdpdGhpblRyaWdnZXIgPSAhIShuZXh0VGFyZ2V0ICYmICgoX2EgPSB0cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jb250YWlucyhuZXh0VGFyZ2V0KSkpO1xuICAgICAgICBjb25zdCB3aXRoaW5GbG9hdGluZyA9ICEhKG5leHRUYXJnZXQgJiYgKChfYiA9IGZsb2F0aW5nUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jb250YWlucyhuZXh0VGFyZ2V0KSkpO1xuICAgICAgICBpZiAoIXdpdGhpblRyaWdnZXIgJiYgIXdpdGhpbkZsb2F0aW5nKSB7XG4gICAgICAgICAgICBvbkJsdXIgPT09IG51bGwgfHwgb25CbHVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkJsdXIoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlVHJpZ2dlckJsdXIgPSB1c2VFdmVudENhbGxiYWNrKChldmVudCkgPT4ge1xuICAgICAgICBub3RpZnlCbHVySWZPdXRzaWRlKGV2ZW50LnJlbGF0ZWRUYXJnZXQsIGV2ZW50KTtcbiAgICB9KTtcbiAgICBjb25zdCBjbG9zZSA9IHVzZUV2ZW50Q2FsbGJhY2soKCkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHNldE9wZW4oZmFsc2UpO1xuICAgICAgICAoX2EgPSB0cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb2N1cyh7IHByZXZlbnRTY3JvbGw6IHRydWUgfSk7XG4gICAgfSk7XG4gICAgY29uc3QgdHJpZ2dlckNvbnRlbnQgPSB0eXBlb2Ygc2VsZWN0ZWRUZW1wbGF0ZSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICA/IHNlbGVjdGVkVGVtcGxhdGUoeyBvcGVuOiBpc09wZW4sIGRpc2FibGVkLCByZWFkT25seSwgc2l6ZTogbm9ybWFsaXplZFNpemUgfSlcbiAgICAgICAgOiBzZWxlY3RlZFRlbXBsYXRlO1xuICAgIGNvbnN0IGhhc1NlbGVjdGlvbiA9IGlzUmVuZGVyYWJsZVRlbXBsYXRlKHRyaWdnZXJDb250ZW50KTtcbiAgICBjb25zdCB2YWx1ZUxhYmVsQ2xhc3MgPSBoYXNTZWxlY3Rpb24gPyAndmFsdWUnIDogJ3BsYWNlaG9sZGVyJztcbiAgICBjb25zdCB0cmlnZ2VyQ2xhc3NOYW1lID0gY2xhc3NlcygndHJpZ2dlcicsIGpvaW5DbHMoY2xhc3NlcyhgdHJpZ2dlci0ke25vcm1hbGl6ZWRTaXplfWApLCBjbGFzc2VzKGB0cmlnZ2VyLSR7dmFyaWFudH1gKSwgaXNPcGVuICYmIGNsYXNzZXMoJ3RyaWdnZXItb3BlbicpLCBoYXNTZWxlY3Rpb24gPyBjbGFzc2VzKCd0cmlnZ2VyLWZpbGxlZCcpIDogY2xhc3NlcygndHJpZ2dlci1wbGFjZWhvbGRlcicpLCBzdGF0dXMgIT09ICdkZWZhdWx0JyAmJiBjbGFzc2VzKGB0cmlnZ2VyLSR7c3RhdHVzfWApLCBkaXNhYmxlZCAmJiBjbGFzc2VzKCd0cmlnZ2VyLWRpc2FibGVkJyksIHJlYWRPbmx5ICYmICFkaXNhYmxlZCAmJiBjbGFzc2VzKCd0cmlnZ2VyLXJlYWRvbmx5JykpKTtcbiAgICBjb25zdCBpY29uU2l6ZSA9IG5vcm1hbGl6ZWRTaXplID09PSAnc21hbGwnID8gMTYgOiAyMDtcbiAgICBjb25zdCBmbG9hdGluZ0FyaWFMYWJlbGxlZEJ5ID0gYXJpYUxhYmVsbGVkQnkgIT09IG51bGwgJiYgYXJpYUxhYmVsbGVkQnkgIT09IHZvaWQgMCA/IGFyaWFMYWJlbGxlZEJ5IDogKGxhYmVsID8gbGFiZWxJZCA6IHVuZGVmaW5lZCk7XG4gICAgY29uc3QgZGVzY3JpYmVkQnlJZHMgPSBbZGVzY3JpcHRpb24gPyBkZXNjcmlwdGlvbklkIDogbnVsbCwgZmVlZGJhY2sgPyBmZWVkYmFja0lkIDogbnVsbF1cbiAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAuam9pbignICcpIHx8IHVuZGVmaW5lZDtcbiAgICBjb25zdCBwYW5lbEN0eCA9IHsgY2xvc2UsIG9wZW46IGlzT3BlbiB9O1xuICAgIGNvbnN0IHBhbmVsQm9keSA9IHR5cGVvZiBjaGlsZHJlbiA9PT0gJ2Z1bmN0aW9uJyA/IGNoaWxkcmVuKHBhbmVsQ3R4KSA6IGNoaWxkcmVuO1xuICAgIHJldHVybiAoX2pzeHMoU2VsZWN0RmllbGRTaGVsbCwgeyBjbGFzc2VzOiBjbGFzc2VzLCBjbGFzc05hbWU6IGNsYXNzTmFtZSwgc2l6ZTogbm9ybWFsaXplZFNpemUsIHZhcmlhbnQ6IHZhcmlhbnQsIHN0YXR1czogc3RhdHVzLCBkaXNhYmxlZDogZGlzYWJsZWQsIHJlYWRPbmx5OiByZWFkT25seSwgbG9hZGluZzogbG9hZGluZywgbGFiZWw6IGxhYmVsLCBsYWJlbENsYXNzTmFtZTogbGFiZWxDbGFzc05hbWUsIGluZm86IGluZm8sIGRlc2NyaXB0aW9uOiBkZXNjcmlwdGlvbiwgZmVlZGJhY2s6IGZlZWRiYWNrLCByZXF1aXJlZDogcmVxdWlyZWQsIGxhYmVsSWQ6IGxhYmVsSWQsIGRlc2NyaXB0aW9uSWQ6IGRlc2NyaXB0aW9uSWQsIGZlZWRiYWNrSWQ6IGZlZWRiYWNrSWQsIGNoaWxkcmVuOiBbX2pzeHMoXCJidXR0b25cIiwgT2JqZWN0LmFzc2lnbih7fSwgZ2V0UmVmZXJlbmNlUHJvcHMoe1xuICAgICAgICAgICAgICAgIHJlZjogc2V0UmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgIGlkOiB0cmlnZ2VySWQsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAnYXJpYS1yZWFkb25seSc6IHJlYWRPbmx5IHx8IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBzdHlsZSxcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IHRyaWdnZXJDbGFzc05hbWUsXG4gICAgICAgICAgICAgICAgb25CbHVyOiBoYW5kbGVUcmlnZ2VyQmx1cixcbiAgICAgICAgICAgICAgICAnYXJpYS1sYWJlbCc6IGFyaWFMYWJlbCxcbiAgICAgICAgICAgICAgICAnYXJpYS1sYWJlbGxlZGJ5JzogZmxvYXRpbmdBcmlhTGFiZWxsZWRCeSxcbiAgICAgICAgICAgICAgICAnYXJpYS1kZXNjcmliZWRieSc6IGRlc2NyaWJlZEJ5SWRzLFxuICAgICAgICAgICAgfSksIHsgY2hpbGRyZW46IFtfanN4cyhcInNwYW5cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2NvbnRlbnQnKSwgY2hpbGRyZW46IFtwcmVmaXggJiYgX2pzeChcInNwYW5cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3ByZWZpeCcpLCBjaGlsZHJlbjogcHJlZml4IH0pLCBfanN4KFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3Nlcyh2YWx1ZUxhYmVsQ2xhc3MsIGpvaW5DbHMoY2xhc3NlcyhgJHt2YWx1ZUxhYmVsQ2xhc3N9LSR7bm9ybWFsaXplZFNpemV9YCksIGRpc2FibGVkICYmIGNsYXNzZXMoYCR7dmFsdWVMYWJlbENsYXNzfS1kaXNhYmxlZGApKSksIGNoaWxkcmVuOiBoYXNTZWxlY3Rpb24gPyB0cmlnZ2VyQ29udGVudCA6IHBsYWNlaG9sZGVyIH0pXSB9KSwgYXJyb3cgJiYgKF9qc3goXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdpY29uJyksIGNoaWxkcmVuOiBsb2FkaW5nID8gKF9qc3goU3Bpbm5lciwgeyBzaXplOiBpY29uU2l6ZSwgc3Ryb2tlV2lkdGg6IDIgfSkpIDogKF9qc3goSWNvbnMsIHsgbmFtZTogaXNPcGVuID8gJ2NoZXZyb25VcCcgOiAnY2hldnJvbkRvd24nLCBzaXplOiBpY29uU2l6ZSwgY29sb3I6IFwiY3VycmVudENvbG9yXCIgfSkpIH0pKV0gfSkpLCBpc01vdW50ZWQgJiYgaW50ZXJhY3RpdmUgJiYgKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBwYW5lbE5vZGUgPSAoX2pzeChGbG9hdGluZ0ZvY3VzTWFuYWdlciwgeyBjb250ZXh0OiBjb250ZXh0LCBtb2RhbDogZmFsc2UsIGluaXRpYWxGb2N1czogLTEsIHJldHVybkZvY3VzOiBmYWxzZSwgY2hpbGRyZW46IF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIGdldEZsb2F0aW5nUHJvcHMoe1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVmOiBzZXRGbG9hdGluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZTogam9pbkNscyhjbGFzc2VzKCdwYW5lbCcpLCBwYW5lbENsYXNzTmFtZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBmbG9hdGluZ1N0eWxlcyksIHRyYW5zaXRpb25TdHlsZXMpLFxuICAgICAgICAgICAgICAgICAgICB9KSwgeyBjaGlsZHJlbjogW19qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3BhbmVsLWJvZHknKSwgY2hpbGRyZW46IHBhbmVsQm9keSB9KSwgcGFuZWxGb290ZXIgIT0gbnVsbCAmJiAoX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncGFuZWwtZm9vdGVyJyksIGNoaWxkcmVuOiBwYW5lbEZvb3RlciB9KSldIH0pKSB9KSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbCA/IF9qc3goRmxvYXRpbmdQb3J0YWwsIHsgY2hpbGRyZW46IHBhbmVsTm9kZSB9KSA6IHBhbmVsTm9kZTtcbiAgICAgICAgICAgIH0pKCldIH0pKTtcbn07XG5TZWxlY3RDdXN0b20uZGlzcGxheU5hbWUgPSAnU2VsZWN0Q3VzdG9tJztcbmV4cG9ydCBkZWZhdWx0IG1lbW8oU2VsZWN0Q3VzdG9tKTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
246
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0MiIsIl9ob29rcyIsIl9JY29ucyIsIl9TcGlubmVyIiwiX2NsYXNzbmFtZXMiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9TZWxlY3RGaWVsZFNoZWxsIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl91c2VTZWxlY3RTaGVsbDIiLCJfdXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJERUZBVUxUX01BWF9IRUlHSFQiLCJpc1JlbmRlcmFibGVUZW1wbGF0ZSIsInZhbHVlIiwidW5kZWZpbmVkIiwiU2VsZWN0Q3VzdG9tIiwiZXhwb3J0cyIsInByb3BzIiwiX3Byb3BzJGNsYXNzTmFtZSIsImNsYXNzTmFtZSIsIl9wcm9wcyRwcmVmaXhDbHMiLCJwcmVmaXhDbHMiLCJzdHlsZSIsImlkIiwibmFtZSIsImFyaWFMYWJlbCIsImFyaWFMYWJlbGxlZEJ5IiwiX3Byb3BzJHNpemUiLCJzaXplIiwiX3Byb3BzJHN0YXR1cyIsInN0YXR1cyIsIl9wcm9wcyR2YXJpYW50IiwidmFyaWFudCIsIl9wcm9wcyRkaXNhYmxlZCIsImRpc2FibGVkIiwiZGlzYWJsZWRQcm9wIiwiX3Byb3BzJHJlYWRPbmx5IiwicmVhZE9ubHkiLCJfcHJvcHMkbG9hZGluZyIsImxvYWRpbmciLCJsYWJlbCIsImxhYmVsQ2xhc3NOYW1lIiwiaW5mbyIsImRlc2NyaXB0aW9uIiwiZmVlZGJhY2siLCJfcHJvcHMkcmVxdWlyZWQiLCJyZXF1aXJlZCIsInByZWZpeCIsIl9wcm9wcyRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwic2VsZWN0ZWRUZW1wbGF0ZSIsIl9wcm9wcyRhcnJvdyIsImFycm93Iiwib3BlbiIsIl9wcm9wcyRkZWZhdWx0T3BlbiIsImRlZmF1bHRPcGVuIiwiX3Byb3BzJHBvcnRhbCIsInBvcnRhbCIsInBhbmVsQ2xhc3NOYW1lIiwicGFuZWxGb290ZXIiLCJfcHJvcHMkbGlzdE1heEhlaWdodCIsImxpc3RNYXhIZWlnaHQiLCJwbGFjZW1lbnQiLCJwYW5lbFdpZHRoIiwib2Zmc2V0IiwiX3Byb3BzJHJvbGUiLCJyb2xlIiwicm9sZVByb3AiLCJhbmltYXRpb24iLCJvbk9wZW5DaGFuZ2UiLCJvbkJsdXIiLCJjaGlsZHJlbiIsInJlZiIsImludGVyYWN0aXZlIiwiY2xhc3NlcyIsInJvb3RDbGFzc25hbWVzIiwiYXV0b0lkIiwidXNlSWQiLCJ0cmlnZ2VySWQiLCJsYWJlbElkIiwiZGVzY3JpcHRpb25JZCIsImZlZWRiYWNrSWQiLCJub3JtYWxpemVkU2l6ZSIsIm5vcm1hbGl6ZVNpemUiLCJmbG9hdGluZ1JlZiIsInVzZVJlZiIsInRyaWdnZXJSZWYiLCJoYW5kbGVUcmlnZ2VyUmVmIiwidXNlRXZlbnRDYWxsYmFjayIsIm5vZGUiLCJjdXJyZW50IiwiX3VzZVNlbGVjdFNoZWxsIiwidXNlU2VsZWN0U2hlbGwiLCJpc09wZW4iLCJzZXRPcGVuIiwicmVmcyIsImNvbnRleHQiLCJmbG9hdGluZ1N0eWxlcyIsInRyYW5zaXRpb25TdHlsZXMiLCJpc01vdW50ZWQiLCJiYXNlSW50ZXJhY3Rpb25zIiwic2V0UmVmZXJlbmNlIiwic2V0RmxvYXRpbmciLCJfdXNlSW50ZXJhY3Rpb25zIiwidXNlSW50ZXJhY3Rpb25zIiwiZ2V0UmVmZXJlbmNlUHJvcHMiLCJnZXRGbG9hdGluZ1Byb3BzIiwibm90aWZ5Qmx1cklmT3V0c2lkZSIsInJlbGF0ZWRUYXJnZXQiLCJldmVudCIsIl9hIiwiX2IiLCJuZXh0VGFyZ2V0Iiwid2l0aGluVHJpZ2dlciIsImNvbnRhaW5zIiwid2l0aGluRmxvYXRpbmciLCJoYW5kbGVUcmlnZ2VyQmx1ciIsImNsb3NlIiwiZm9jdXMiLCJwcmV2ZW50U2Nyb2xsIiwidHJpZ2dlckNvbnRlbnQiLCJmb250U2l6ZSIsImdldEZvbnRTaXplIiwiaGFzU2VsZWN0aW9uIiwidmFsdWVMYWJlbENsYXNzIiwidHJpZ2dlckNsYXNzTmFtZSIsImpvaW5DbHMiLCJjb25jYXQiLCJpY29uU2l6ZSIsImZsb2F0aW5nQXJpYUxhYmVsbGVkQnkiLCJkZXNjcmliZWRCeUlkcyIsImZpbHRlciIsIkJvb2xlYW4iLCJqb2luIiwicGFuZWxDdHgiLCJwYW5lbEJvZHkiLCJfanN4cyIsIlNlbGVjdEZpZWxkU2hlbGwiLCJhc3NpZ24iLCJ0eXBlIiwiX2pzeCIsIlNwaW5uZXIiLCJzdHJva2VXaWR0aCIsIkljb25zIiwiY29sb3IiLCJwYW5lbE5vZGUiLCJGbG9hdGluZ0ZvY3VzTWFuYWdlciIsIm1vZGFsIiwiaW5pdGlhbEZvY3VzIiwicmV0dXJuRm9jdXMiLCJGbG9hdGluZ1BvcnRhbCIsImRpc3BsYXlOYW1lIiwiX2RlZmF1bHQiLCJtZW1vIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ0FBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE1BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFFBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFdBQUEsR0FBQUMsdUJBQUEsQ0FBQVAsT0FBQTtBQUdBLElBQUFRLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFULE9BQUE7QUFDQSxJQUFBVSxnQkFBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsTUFBQSxHQUFBWCxPQUFBO0FBQ0FB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LElBQUF5SSxZQUFJLEVBQUMxSSxZQUFZLENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9TZWxlY3QvU2VsZWN0Q3VzdG9tLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IEZsb2F0aW5nRm9jdXNNYW5hZ2VyLCBGbG9hdGluZ1BvcnRhbCwgdXNlSW50ZXJhY3Rpb25zIH0gZnJvbSAnQGZsb2F0aW5nLXVpL3JlYWN0JztcbmltcG9ydCB7IG1lbW8sIHVzZUlkLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VFdmVudENhbGxiYWNrIH0gZnJvbSAnQDFtb25leS9ob29rcyc7XG5pbXBvcnQgeyBJY29ucyB9IGZyb20gJy4uL0ljb25zJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuLi9TcGlubmVyJztcbmltcG9ydCB7IGpvaW5DbHMsIGRlZmF1bHQgYXMgcm9vdENsYXNzbmFtZXMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCBTZWxlY3RGaWVsZFNoZWxsIGZyb20gJy4vU2VsZWN0RmllbGRTaGVsbCc7XG5pbXBvcnQgeyB1c2VTZWxlY3RTaGVsbCB9IGZyb20gJy4vdXNlU2VsZWN0U2hlbGwnO1xuaW1wb3J0IHsgZ2V0Rm9udFNpemUsIG5vcm1hbGl6ZVNpemUgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCAnLi9zdHlsZSc7XG5jb25zdCBERUZBVUxUX01BWF9IRUlHSFQgPSAzMjA7XG5jb25zdCBpc1JlbmRlcmFibGVUZW1wbGF0ZSA9ICh2YWx1ZSkgPT4gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gZmFsc2U7XG5leHBvcnQgY29uc3QgU2VsZWN0Q3VzdG9tID0gKHByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBjbGFzc05hbWUgPSAnJywgcHJlZml4Q2xzID0gJ3NlbGVjdCcsIHN0eWxlLCBpZCwgbmFtZSwgJ2FyaWEtbGFiZWwnOiBhcmlhTGFiZWwsICdhcmlhLWxhYmVsbGVkYnknOiBhcmlhTGFiZWxsZWRCeSwgc2l6ZSA9ICdsYXJnZScsIHN0YXR1cyA9ICdkZWZhdWx0JywgdmFyaWFudCA9ICdmaWxsJywgZGlzYWJsZWQ6IGRpc2FibGVkUHJvcCA9IGZhbHNlLCByZWFkT25seSA9IGZhbHNlLCBsb2FkaW5nID0gZmFsc2UsIGxhYmVsLCBsYWJlbENsYXNzTmFtZSwgaW5mbywgZGVzY3JpcHRpb24sIGZlZWRiYWNrLCByZXF1aXJlZCA9IHRydWUsIHByZWZpeCwgcGxhY2Vob2xkZXIgPSAnVmFsdWUnLCBzZWxlY3RlZFRlbXBsYXRlLCBhcnJvdyA9IHRydWUsIG9wZW4sIGRlZmF1bHRPcGVuID0gZmFsc2UsIHBvcnRhbCA9IHRydWUsIHBhbmVsQ2xhc3NOYW1lLCBwYW5lbEZvb3RlciwgbGlzdE1heEhlaWdodCA9IERFRkFVTFRfTUFYX0hFSUdIVCwgcGxhY2VtZW50LCBwYW5lbFdpZHRoLCBvZmZzZXQsIHJvbGU6IHJvbGVQcm9wID0gJ2RpYWxvZycsIGFuaW1hdGlvbiwgb25PcGVuQ2hhbmdlLCBvbkJsdXIsIGNoaWxkcmVuLCByZWYsIH0gPSBwcm9wcztcbiAgICBjb25zdCBkaXNhYmxlZCA9IGRpc2FibGVkUHJvcCB8fCBsb2FkaW5nO1xuICAgIGNvbnN0IGludGVyYWN0aXZlID0gIWRpc2FibGVkICYmICFyZWFkT25seTtcbiAgICBjb25zdCBjbGFzc2VzID0gcm9vdENsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICBjb25zdCBhdXRvSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IHRyaWdnZXJJZCA9IGlkICE9PSBudWxsICYmIGlkICE9PSB2b2lkIDAgPyBpZCA6IGF1dG9JZDtcbiAgICBjb25zdCBsYWJlbElkID0gdXNlSWQoKTtcbiAgICBjb25zdCBkZXNjcmlwdGlvbklkID0gdXNlSWQoKTtcbiAgICBjb25zdCBmZWVkYmFja0lkID0gdXNlSWQoKTtcbiAgICBjb25zdCBub3JtYWxpemVkU2l6ZSA9IG5vcm1hbGl6ZVNpemUoc2l6ZSk7XG4gICAgY29uc3QgZmxvYXRpbmdSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgdHJpZ2dlclJlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBoYW5kbGVUcmlnZ2VyUmVmID0gdXNlRXZlbnRDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICB0cmlnZ2VyUmVmLmN1cnJlbnQgPSBub2RlO1xuICAgICAgICBpZiAocmVmKSB7XG4gICAgICAgICAgICByZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCB7IGlzT3Blbiwgc2V0T3BlbiwgcmVmcywgY29udGV4dCwgZmxvYXRpbmdTdHlsZXMsIHRyYW5zaXRpb25TdHlsZXMsIGlzTW91bnRlZCwgYmFzZUludGVyYWN0aW9ucywgfSA9IHVzZVNlbGVjdFNoZWxsKHtcbiAgICAgICAgb3BlbixcbiAgICAgICAgZGVmYXVsdE9wZW4sXG4gICAgICAgIG9uT3BlbkNoYW5nZSxcbiAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgIHJlYWRPbmx5LFxuICAgICAgICBwbGFjZW1lbnQsXG4gICAgICAgIHBhbmVsV2lkdGgsXG4gICAgICAgIGxpc3RNYXhIZWlnaHQsXG4gICAgICAgIGFuaW1hdGlvbixcbiAgICAgICAgcm9sZTogcm9sZVByb3AsXG4gICAgICAgIG9mZnNldCxcbiAgICB9KTtcbiAgICBjb25zdCBzZXRSZWZlcmVuY2UgPSB1c2VFdmVudENhbGxiYWNrKChub2RlKSA9PiB7XG4gICAgICAgIHJlZnMuc2V0UmVmZXJlbmNlKG5vZGUpO1xuICAgICAgICBoYW5kbGVUcmlnZ2VyUmVmKG5vZGUpO1xuICAgIH0pO1xuICAgIGNvbnN0IHNldEZsb2F0aW5nID0gdXNlRXZlbnRDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICByZWZzLnNldEZsb2F0aW5nKG5vZGUpO1xuICAgICAgICBmbG9hdGluZ1JlZi5jdXJyZW50ID0gbm9kZTtcbiAgICB9KTtcbiAgICBjb25zdCB7IGdldFJlZmVyZW5jZVByb3BzLCBnZXRGbG9hdGluZ1Byb3BzIH0gPSB1c2VJbnRlcmFjdGlvbnMoYmFzZUludGVyYWN0aW9ucyk7XG4gICAgY29uc3Qgbm90aWZ5Qmx1cklmT3V0c2lkZSA9IHVzZUV2ZW50Q2FsbGJhY2soKHJlbGF0ZWRUYXJnZXQsIGV2ZW50KSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGNvbnN0IG5leHRUYXJnZXQgPSByZWxhdGVkVGFyZ2V0O1xuICAgICAgICBjb25zdCB3aXRoaW5UcmlnZ2VyID0gISEobmV4dFRhcmdldCAmJiAoKF9hID0gdHJpZ2dlclJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29udGFpbnMobmV4dFRhcmdldCkpKTtcbiAgICAgICAgY29uc3Qgd2l0aGluRmxvYXRpbmcgPSAhIShuZXh0VGFyZ2V0ICYmICgoX2IgPSBmbG9hdGluZ1JlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY29udGFpbnMobmV4dFRhcmdldCkpKTtcbiAgICAgICAgaWYgKCF3aXRoaW5UcmlnZ2VyICYmICF3aXRoaW5GbG9hdGluZykge1xuICAgICAgICAgICAgb25CbHVyID09PSBudWxsIHx8IG9uQmx1ciA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CbHVyKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZVRyaWdnZXJCbHVyID0gdXNlRXZlbnRDYWxsYmFjaygoZXZlbnQpID0+IHtcbiAgICAgICAgbm90aWZ5Qmx1cklmT3V0c2lkZShldmVudC5yZWxhdGVkVGFyZ2V0LCBldmVudCk7XG4gICAgfSk7XG4gICAgY29uc3QgY2xvc2UgPSB1c2VFdmVudENhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBzZXRPcGVuKGZhbHNlKTtcbiAgICAgICAgKF9hID0gdHJpZ2dlclJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZm9jdXMoeyBwcmV2ZW50U2Nyb2xsOiB0cnVlIH0pO1xuICAgIH0pO1xuICAgIGNvbnN0IHRyaWdnZXJDb250ZW50ID0gdHlwZW9mIHNlbGVjdGVkVGVtcGxhdGUgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyBzZWxlY3RlZFRlbXBsYXRlKHtcbiAgICAgICAgICAgIG9wZW46IGlzT3BlbixcbiAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICBzaXplOiBub3JtYWxpemVkU2l6ZSxcbiAgICAgICAgICAgIGZvbnRTaXplOiBnZXRGb250U2l6ZShub3JtYWxpemVkU2l6ZSksXG4gICAgICAgIH0pXG4gICAgICAgIDogc2VsZWN0ZWRUZW1wbGF0ZTtcbiAgICBjb25zdCBoYXNTZWxlY3Rpb24gPSBpc1JlbmRlcmFibGVUZW1wbGF0ZSh0cmlnZ2VyQ29udGVudCk7XG4gICAgY29uc3QgdmFsdWVMYWJlbENsYXNzID0gaGFzU2VsZWN0aW9uID8gJ3ZhbHVlJyA6ICdwbGFjZWhvbGRlcic7XG4gICAgY29uc3QgdHJpZ2dlckNsYXNzTmFtZSA9IGNsYXNzZXMoJ3RyaWdnZXInLCBqb2luQ2xzKGNsYXNzZXMoYHRyaWdnZXItJHtub3JtYWxpemVkU2l6ZX1gKSwgY2xhc3NlcyhgdHJpZ2dlci0ke3ZhcmlhbnR9YCksIGlzT3BlbiAmJiBjbGFzc2VzKCd0cmlnZ2VyLW9wZW4nKSwgaGFzU2VsZWN0aW9uID8gY2xhc3NlcygndHJpZ2dlci1maWxsZWQnKSA6IGNsYXNzZXMoJ3RyaWdnZXItcGxhY2Vob2xkZXInKSwgc3RhdHVzICE9PSAnZGVmYXVsdCcgJiYgY2xhc3NlcyhgdHJpZ2dlci0ke3N0YXR1c31gKSwgZGlzYWJsZWQgJiYgY2xhc3NlcygndHJpZ2dlci1kaXNhYmxlZCcpLCByZWFkT25seSAmJiAhZGlzYWJsZWQgJiYgY2xhc3NlcygndHJpZ2dlci1yZWFkb25seScpKSk7XG4gICAgY29uc3QgaWNvblNpemUgPSBub3JtYWxpemVkU2l6ZSA9PT0gJ3NtYWxsJyA/IDE2IDogMjA7XG4gICAgY29uc3QgZmxvYXRpbmdBcmlhTGFiZWxsZWRCeSA9IGFyaWFMYWJlbGxlZEJ5ICE9PSBudWxsICYmIGFyaWFMYWJlbGxlZEJ5ICE9PSB2b2lkIDAgPyBhcmlhTGFiZWxsZWRCeSA6IChsYWJlbCA/IGxhYmVsSWQgOiB1bmRlZmluZWQpO1xuICAgIGNvbnN0IGRlc2NyaWJlZEJ5SWRzID0gW2Rlc2NyaXB0aW9uID8gZGVzY3JpcHRpb25JZCA6IG51bGwsIGZlZWRiYWNrID8gZmVlZGJhY2tJZCA6IG51bGxdXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgLmpvaW4oJyAnKSB8fCB1bmRlZmluZWQ7XG4gICAgY29uc3QgcGFuZWxDdHggPSB7IGNsb3NlLCBvcGVuOiBpc09wZW4gfTtcbiAgICBjb25zdCBwYW5lbEJvZHkgPSB0eXBlb2YgY2hpbGRyZW4gPT09ICdmdW5jdGlvbicgPyBjaGlsZHJlbihwYW5lbEN0eCkgOiBjaGlsZHJlbjtcbiAgICByZXR1cm4gKF9qc3hzKFNlbGVjdEZpZWxkU2hlbGwsIHsgY2xhc3NlczogY2xhc3NlcywgY2xhc3NOYW1lOiBjbGFzc05hbWUsIHNpemU6IG5vcm1hbGl6ZWRTaXplLCB2YXJpYW50OiB2YXJpYW50LCBzdGF0dXM6IHN0YXR1cywgZGlzYWJsZWQ6IGRpc2FibGVkLCByZWFkT25seTogcmVhZE9ubHksIGxvYWRpbmc6IGxvYWRpbmcsIGxhYmVsOiBsYWJlbCwgbGFiZWxDbGFzc05hbWU6IGxhYmVsQ2xhc3NOYW1lLCBpbmZvOiBpbmZvLCBkZXNjcmlwdGlvbjogZGVzY3JpcHRpb24sIGZlZWRiYWNrOiBmZWVkYmFjaywgcmVxdWlyZWQ6IHJlcXVpcmVkLCBsYWJlbElkOiBsYWJlbElkLCBkZXNjcmlwdGlvbklkOiBkZXNjcmlwdGlvbklkLCBmZWVkYmFja0lkOiBmZWVkYmFja0lkLCBjaGlsZHJlbjogW19qc3hzKFwiYnV0dG9uXCIsIE9iamVjdC5hc3NpZ24oe30sIGdldFJlZmVyZW5jZVByb3BzKHtcbiAgICAgICAgICAgICAgICByZWY6IHNldFJlZmVyZW5jZSxcbiAgICAgICAgICAgICAgICBpZDogdHJpZ2dlcklkLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdidXR0b24nLFxuICAgICAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgJ2FyaWEtcmVhZG9ubHknOiByZWFkT25seSB8fCB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgc3R5bGUsXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lOiB0cmlnZ2VyQ2xhc3NOYW1lLFxuICAgICAgICAgICAgICAgIG9uQmx1cjogaGFuZGxlVHJpZ2dlckJsdXIsXG4gICAgICAgICAgICAgICAgJ2FyaWEtbGFiZWwnOiBhcmlhTGFiZWwsXG4gICAgICAgICAgICAgICAgJ2FyaWEtbGFiZWxsZWRieSc6IGZsb2F0aW5nQXJpYUxhYmVsbGVkQnksXG4gICAgICAgICAgICAgICAgJ2FyaWEtZGVzY3JpYmVkYnknOiBkZXNjcmliZWRCeUlkcyxcbiAgICAgICAgICAgIH0pLCB7IGNoaWxkcmVuOiBbX2pzeHMoXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdjb250ZW50JyksIGNoaWxkcmVuOiBbcHJlZml4ICYmIF9qc3goXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdwcmVmaXgnKSwgY2hpbGRyZW46IHByZWZpeCB9KSwgX2pzeChcInNwYW5cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXModmFsdWVMYWJlbENsYXNzLCBqb2luQ2xzKGNsYXNzZXMoYCR7dmFsdWVMYWJlbENsYXNzfS0ke25vcm1hbGl6ZWRTaXplfWApLCBkaXNhYmxlZCAmJiBjbGFzc2VzKGAke3ZhbHVlTGFiZWxDbGFzc30tZGlzYWJsZWRgKSkpLCBjaGlsZHJlbjogaGFzU2VsZWN0aW9uID8gdHJpZ2dlckNvbnRlbnQgOiBwbGFjZWhvbGRlciB9KV0gfSksIGFycm93ICYmIChfanN4KFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnaWNvbicpLCBjaGlsZHJlbjogbG9hZGluZyA/IChfanN4KFNwaW5uZXIsIHsgc2l6ZTogaWNvblNpemUsIHN0cm9rZVdpZHRoOiAyIH0pKSA6IChfanN4KEljb25zLCB7IG5hbWU6IGlzT3BlbiA/ICdjaGV2cm9uVXAnIDogJ2NoZXZyb25Eb3duJywgc2l6ZTogaWNvblNpemUsIGNvbG9yOiBcImN1cnJlbnRDb2xvclwiIH0pKSB9KSldIH0pKSwgaXNNb3VudGVkICYmIGludGVyYWN0aXZlICYmICgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGFuZWxOb2RlID0gKF9qc3goRmxvYXRpbmdGb2N1c01hbmFnZXIsIHsgY29udGV4dDogY29udGV4dCwgbW9kYWw6IGZhbHNlLCBpbml0aWFsRm9jdXM6IC0xLCByZXR1cm5Gb2N1czogZmFsc2UsIGNoaWxkcmVuOiBfanN4cyhcImRpdlwiLCBPYmplY3QuYXNzaWduKHt9LCBnZXRGbG9hdGluZ1Byb3BzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZjogc2V0RmxvYXRpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU6IGpvaW5DbHMoY2xhc3NlcygncGFuZWwnKSwgcGFuZWxDbGFzc05hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgZmxvYXRpbmdTdHlsZXMpLCB0cmFuc2l0aW9uU3R5bGVzKSxcbiAgICAgICAgICAgICAgICAgICAgfSksIHsgY2hpbGRyZW46IFtfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdwYW5lbC1ib2R5JyksIGNoaWxkcmVuOiBwYW5lbEJvZHkgfSksIHBhbmVsRm9vdGVyICE9IG51bGwgJiYgKF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3BhbmVsLWZvb3RlcicpLCBjaGlsZHJlbjogcGFuZWxGb290ZXIgfSkpXSB9KSkgfSkpO1xuICAgICAgICAgICAgICAgIHJldHVybiBwb3J0YWwgPyBfanN4KEZsb2F0aW5nUG9ydGFsLCB7IGNoaWxkcmVuOiBwYW5lbE5vZGUgfSkgOiBwYW5lbE5vZGU7XG4gICAgICAgICAgICB9KSgpXSB9KSk7XG59O1xuU2VsZWN0Q3VzdG9tLmRpc3BsYXlOYW1lID0gJ1NlbGVjdEN1c3RvbSc7XG5leHBvcnQgZGVmYXVsdCBtZW1vKFNlbGVjdEN1c3RvbSk7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -15,13 +15,6 @@ interface SelectTypographyConfig {
|
|
|
15
15
|
disabled: TypographyColor;
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
|
-
value: {
|
|
19
|
-
size: Record<SelectSize, TypographyBodySize>;
|
|
20
|
-
strong: boolean;
|
|
21
|
-
};
|
|
22
|
-
placeholder: {
|
|
23
|
-
size: Record<SelectSize, TypographyBodySize>;
|
|
24
|
-
};
|
|
25
18
|
description: {
|
|
26
19
|
size: TypographyBodySize;
|
|
27
20
|
color: {
|
|
@@ -22,19 +22,6 @@ var SELECT_TYPOGRAPHY = exports.SELECT_TYPOGRAPHY = {
|
|
|
22
22
|
disabled: 'disabled'
|
|
23
23
|
}
|
|
24
24
|
},
|
|
25
|
-
value: {
|
|
26
|
-
size: {
|
|
27
|
-
large: 'lg',
|
|
28
|
-
small: 'md'
|
|
29
|
-
},
|
|
30
|
-
strong: true
|
|
31
|
-
},
|
|
32
|
-
placeholder: {
|
|
33
|
-
size: {
|
|
34
|
-
large: 'lg',
|
|
35
|
-
small: 'md'
|
|
36
|
-
}
|
|
37
|
-
},
|
|
38
25
|
description: {
|
|
39
26
|
size: 'md',
|
|
40
27
|
color: {
|
|
@@ -62,4 +49,4 @@ var SELECT_TYPOGRAPHY = exports.SELECT_TYPOGRAPHY = {
|
|
|
62
49
|
color: 'default-tertiary'
|
|
63
50
|
}
|
|
64
51
|
};
|
|
65
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L2NvbnN0YW50cy50cyIsImNvbXBvbmVudHMvU2VsZWN0L2NvbnN0YW50cy5qcyJdLCJuYW1lcyI6WyJLRVlCT0FSRCIsImV4cG9ydHMiLCJFTlRFUiIsIlNQQUNFIiwiQVJST1dfRE9XTiIsIkFSUk9XX1VQIiwiRVNDQVBFIiwiU0VMRUNUX1RZUE9HUkFQSFkiLCJsYWJlbCIsInNpemUiLCJsYXJnZSIsInNtYWxsIiwiY29sb3IiLCJkaXNhYmxlZCIsImRlc2NyaXB0aW9uIiwiZmVlZGJhY2siLCJvcHRpb24iLCJncm91cExhYmVsIiwiZW1wdHkiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUdPLElBQU1BLFFBQVEsR0FBQUMsT0FBQSxDQUFBRCxRQUFBLEdBQUc7RUFDdEJFLEtBQUssRUFBRSxPQUFPO0VBQ2RDLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLFVBQVUsRUFBRSxXQUFXO0VBQ3ZCQyxRQUFRLEVBQUUsU0FBUztFQUNuQkMsTUFBTSxFQUFFO0FDRlYsQ0RHVTtBQW9DSCxJQUFNQyxpQkFBaUIsR0FBQU4sT0FBQSxDQUFBTSxpQkFBQSxHQUEyQjtFQUN2REMsS0FBSyxFQUFFO0lBQ0xDLElBQUksRUFBRTtNQUFFQyxLQUFLLEVBQUUsSUFBSTtNQUFFQyxLQUFLLEVBQUU7SUFBSSxDQUFFO0lBQ2xDQyxLQUFLLEVBQUU7TUFBRSxXQUFTLFNBQVM7TUFBRUMsUUFBUSxFQUFFO0lBQVU7RUNyQ2pELENEc0NEO0VBQ0RDLFdBQVcsRUFBRTtJQUNYTCxJQUFJLEVBQUUsSUFBSTtJQUNWRyxLQUFLLEVBQUU7TUFBRSxXQUFTLGtCQUFrQjtNQUFFQyxRQUFRLEVBQUU7SUFBVTtFQ3JDMUQsQ0RzQ0Q7RUFDREUsUUFBUSxFQUFFO0lBQUVOLElBQUksRUFBRTtFQUFJLENBQUU7RUFDeEJPLE1BQU0sRUFBRTtJQUNOUixLQUFLLEVBQUU7TUFBRUMsSUFBSSxFQUFFO0lBQUksQ0FBRTtJQUNyQkssV0FBVyxFQUFFO01BQUVMLElBQUksRUFBRSxJQUFJO01BQUVHLEtBQUssRUFBRTtJQUFrQjtFQ3JDcEQsQ0RzQ0Q7RUFDREssVUFBVSxFQUFFO0lBQUVSLElBQUksRUFBRTtFQUFJLENBQUU7RUFDMUJTLEtBQUssRUFBRTtJQUFFVCxJQUFJLEVBQUUsSUFBSTtJQUFFRyxLQUFLLEVBQUU7RUFBa0I7QUNyQ2hELENEc0NDIiwiZmlsZSI6ImNvbXBvbmVudHMvU2VsZWN0L2NvbnN0YW50cy5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiZXhwb3J0IGNvbnN0IEtFWUJPQVJEID0ge1xuICAgIEVOVEVSOiAnRW50ZXInLFxuICAgIFNQQUNFOiAnICcsXG4gICAgQVJST1dfRE9XTjogJ0Fycm93RG93bicsXG4gICAgQVJST1dfVVA6ICdBcnJvd1VwJyxcbiAgICBFU0NBUEU6ICdFc2NhcGUnLFxufTtcbmV4cG9ydCBjb25zdCBTRUxFQ1RfVFlQT0dSQVBIWSA9IHtcbiAgICBsYWJlbDoge1xuICAgICAgICBzaXplOiB7IGxhcmdlOiAnbGcnLCBzbWFsbDogJ21kJyB9LFxuICAgICAgICBjb2xvcjogeyBkZWZhdWx0OiAnZGVmYXVsdCcsIGRpc2FibGVkOiAnZGlzYWJsZWQnIH0sXG4gICAgfSxcbiAgICBkZXNjcmlwdGlvbjoge1xuICAgICAgICBzaXplOiAnbWQnLFxuICAgICAgICBjb2xvcjogeyBkZWZhdWx0OiAnZGVmYXVsdC10ZXJ0aWFyeScsIGRpc2FibGVkOiAnZGlzYWJsZWQnIH0sXG4gICAgfSxcbiAgICBmZWVkYmFjazogeyBzaXplOiAnc20nIH0sXG4gICAgb3B0aW9uOiB7XG4gICAgICAgIGxhYmVsOiB7IHNpemU6ICdtZCcgfSxcbiAgICAgICAgZGVzY3JpcHRpb246IHsgc2l6ZTogJ3NtJywgY29sb3I6ICdkZWZhdWx0LXRlcnRpYXJ5JyB9LFxuICAgIH0sXG4gICAgZ3JvdXBMYWJlbDogeyBzaXplOiAnbGcnIH0sXG4gICAgZW1wdHk6IHsgc2l6ZTogJ21kJywgY29sb3I6ICdkZWZhdWx0LXRlcnRpYXJ5JyB9LFxufTsiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Placement, UseRoleProps } from '@floating-ui/react';
|
|
2
2
|
import type { CSSProperties, FocusEvent, HTMLAttributes, ReactNode, RefObject } from 'react';
|
|
3
3
|
import type { FloatingAnimation } from "../../hooks/useFloatingAnimation";
|
|
4
|
+
import type { TypographyBodySize } from "../Typography";
|
|
4
5
|
export type SelectOffset = number | {
|
|
5
6
|
mainAxis?: number;
|
|
6
7
|
crossAxis?: number;
|
|
@@ -12,6 +13,8 @@ export interface SelectCustomTriggerContext {
|
|
|
12
13
|
disabled: boolean;
|
|
13
14
|
readOnly: boolean;
|
|
14
15
|
size: SelectSize;
|
|
16
|
+
/** Typography `body` size that matches the trigger — use directly on `<Typography.Body size={fontSize}>`. */
|
|
17
|
+
fontSize: TypographyBodySize;
|
|
15
18
|
}
|
|
16
19
|
export interface SelectCustomPanelContext {
|
|
17
20
|
close: () => void;
|
|
@@ -64,6 +67,8 @@ export interface SelectRenderValueMeta {
|
|
|
64
67
|
placeholder: boolean;
|
|
65
68
|
selectedOptions: SelectOption[];
|
|
66
69
|
size: SelectSize;
|
|
70
|
+
/** Typography `body` size that matches the trigger — use directly on `<Typography.Body size={fontSize}>`. */
|
|
71
|
+
fontSize: TypographyBodySize;
|
|
67
72
|
}
|
|
68
73
|
export type SelectFilterOption = (searchValue: string, option: SelectOption) => boolean;
|
|
69
74
|
export interface SelectProps extends Omit<HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'onBlur' | 'onChange' | 'prefix'> {
|
|
@@ -7,4 +7,4 @@ exports.SELECT_VARIANTS = exports.SELECT_STATUSES = exports.SELECT_SIZES = void
|
|
|
7
7
|
var SELECT_SIZES = exports.SELECT_SIZES = ['large', 'small'];
|
|
8
8
|
var SELECT_STATUSES = exports.SELECT_STATUSES = ['default', 'error', 'warning', 'success'];
|
|
9
9
|
var SELECT_VARIANTS = exports.SELECT_VARIANTS = ['fill', 'stroke', 'frameless'];
|
|
10
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L2ludGVyZmFjZS50cyJdLCJuYW1lcyI6WyJTRUxFQ1RfU0laRVMiLCJleHBvcnRzIiwiU0VMRUNUX1NUQVRVU0VTIiwiU0VMRUNUX1ZBUklBTlRTIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUF5Qk8sSUFBTUEsWUFBWSxHQUFBQyxPQUFBLENBQUFELFlBQUEsR0FBRyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQVU7QUFDaEQsSUFBTUUsZUFBZSxHQUFBRCxPQUFBLENBQUFDLGVBQUEsR0FBRyxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBVTtBQUMzRSxJQUFNQyxlQUFlLEdBQUFGLE9BQUEsQ0FBQUUsZUFBQSxHQUFHLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQVUiLCJmaWxlIjoiY29tcG9uZW50cy9TZWxlY3QvaW50ZXJmYWNlLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { TypographyBodySize } from "../Typography";
|
|
1
2
|
import type { SelectFilterOption, SelectMultipleValue, SelectOptionData, SelectOptionGroup, SelectOption, SelectOptionValue, SelectProps, SelectSize, SelectValue } from './interface';
|
|
2
3
|
export interface SelectOptionGroupSection {
|
|
3
4
|
key: string;
|
|
@@ -5,6 +6,7 @@ export interface SelectOptionGroupSection {
|
|
|
5
6
|
options: SelectOption[];
|
|
6
7
|
}
|
|
7
8
|
export declare function normalizeSize(size?: SelectProps['size']): SelectSize;
|
|
9
|
+
export declare function getFontSize(size: SelectSize): TypographyBodySize;
|
|
8
10
|
export declare function extractOptionText(option: SelectOption): string;
|
|
9
11
|
export declare function isSelectMultipleValue(value: SelectValue, multiple: boolean): value is SelectMultipleValue;
|
|
10
12
|
export declare function isSelectOptionGroup(option: SelectOptionData): option is SelectOptionGroup;
|