@1money/component-ui 0.1.5-alpha.2 → 0.1.5-alpha.3

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.
@@ -189,7 +189,7 @@ function makeSpacerTransform() {
189
189
  return function (columns) {
190
190
  return [{
191
191
  key: '__spacer_start__',
192
- width: 24,
192
+ width: 16,
193
193
  title: '',
194
194
  className: SPACER_COLUMN_CLS,
195
195
  render: function render() {
@@ -311,4 +311,4 @@ function useTableColumns(config) {
311
311
  return cols;
312
312
  }, [prefixColumns, baseUserColumns, variant]);
313
313
  }
314
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVGFibGUvY29yZS91c2VUYWJsZUNvbHVtbnMuanMiLCJjb21wb25lbnRzL1RhYmxlL3NyYy9jb21wb25lbnRzL1RhYmxlL2NvcmUvdXNlVGFibGVDb2x1bW5zLnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfU2VsZWN0aW9uQ29sdW1uIiwiX0V4cGFuZFRyaWdnZXIiLCJfSGVhZGVyQ2VsbCIsIl9UeXBvZ3JhcGh5IiwiX0JvZHlDZWxsIiwiX2NvbnN0YW50cyIsIl9zaXplIiwiX2NvbHVtblV0aWwiLCJtYWtlRXhwYW5kVHJhbnNmb3JtIiwiY29uZmlnIiwiZXhwYW5kYWJsZSIsIm1lcmdlZEV4cGFuZGVkUm93S2V5cyIsInRyaWdnZXJFeHBhbmQiLCJnZXRSb3dLZXkiLCJjdXN0b21FeHBhbmRJY29uIiwiZXhwYW5kSWNvbiIsInJvd0V4cGFuZGFibGUiLCJleHBhbmRlZEtleVNldCIsIlNldCIsImNvbHVtbnMiLCJfYSIsImtleSIsImNsYXNzTmFtZSIsIkVYUEFORF9DT0xVTU5fQ0xTIiwid2lkdGgiLCJjb2x1bW5XaWR0aCIsInRpdGxlIiwiY29sdW1uVGl0bGUiLCJmaXhlZCIsInVuZGVmaW5lZCIsInJlbmRlciIsIl8iLCJyZWNvcmQiLCJpbmRleCIsImNhbkV4cGFuZCIsInJlY29yZEtleSIsImV4cGFuZGVkIiwiaGFzIiwicHJlZml4Q2xzIiwiVEFCTEVfREVGQVVMVF9QUkVGSVgiLCJvbkV4cGFuZCIsInJlYyIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCJfanN4IiwiRXhwYW5kVHJpZ2dlciIsIm9uVG9nZ2xlIiwiY29uY2F0IiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsIm1ha2VTZWxlY3Rpb25UcmFuc2Zvcm0iLCJyb3dTZWxlY3Rpb24iLCJtZXJnZWRTZWxlY3RlZFJvd0tleXMiLCJjaGVja2JveFByb3BzTWFwIiwiaXNBbGxTZWxlY3RlZCIsImlzSW5kZXRlcm1pbmF0ZSIsInRyaWdnZXJTZWxlY3Rpb24iLCJ0cmlnZ2VyU2VsZWN0QWxsIiwic2VsZWN0aW9uVHlwZSIsInR5cGUiLCJzZWxlY3RlZEtleVNldCIsIk9iamVjdCIsImFzc2lnbiIsIlNFTEVDVElPTl9DT0xVTU5fQ0xTIiwicmVuZGVySGVhZGVyIiwiU2VsZWN0aW9uSGVhZGVyQ29udHJvbCIsImNoZWNrZWQiLCJpbmRldGVybWluYXRlIiwib25DaGFuZ2UiLCJyb3dQcm9wcyIsImdldCIsIlNlbGVjdGlvbkNvbnRyb2wiLCJhcmlhU29ydEZvciIsIm9yZGVyIiwiRU1QVFlfRklMVEVSX1ZBTFVFIiwibWFrZUhlYWRlclRyYW5zZm9ybSIsInNvcnRlciIsInNldFNvcnRlciIsImZpbHRlcnMiLCJzZXRGaWx0ZXJzIiwic2l6ZSIsIm1hcCIsImNvbHVtbiIsIl9iIiwiaXNDb2x1bW5Hcm91cCIsIlR5cG9ncmFwaHlUaXRsZSIsIlRBQkxFX1NJWkVfQ09ORklHIiwiaGVhZGVyRm9udFNpemUiLCJzdHJvbmciLCJjaGlsZHJlbiIsImlzU29ydGFibGUiLCJCb29sZWFuIiwiYWN0aXZlT3JkZXIiLCJjb2x1bW5LZXkiLCJTdHJpbmciLCJmaWx0ZXJTZWxlY3RlZCIsInVzZXJPbkhlYWRlckNlbGwiLCJvbkhlYWRlckNlbGwiLCJjb2wiLCJ1c2VyQXR0cnMiLCJvbkZpbHRlckNoYW5nZSIsIm5leHQiLCJjdXJyZW50IiwiX2RlZmluZVByb3BlcnR5MiIsImxlbmd0aCIsImZvbnRTaXplIiwiSGVhZGVyQ2VsbCIsInNvcnRPcmRlciIsIm9uU29ydENsaWNrIiwiY3VycmVudFNvcnRlciIsIlNQQUNFUl9DT0xVTU5fQ0xTIiwibWFrZVNwYWNlclRyYW5zZm9ybSIsIm1ha2VSZW5kZXJUcmFuc2Zvcm0iLCJlbGxpcHNpcyIsInZhbHVlIiwiQm9keUNlbGwiLCJ1c2VUYWJsZUNvbHVtbnMiLCJ2YXJpYW50IiwiYmFzZVVzZXJDb2x1bW5zIiwidXNlTWVtbyIsImNvbHMiLCJwcmVmaXhDb2x1bW5zIiwic2hvd0V4cGFuZENvbHVt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LEVBQ3JCQyxnQkFBZ0IsRUFDaEJDLGFBQWEsRUFDYkMsZUFBZSxFQUNmMUMsYUFBYSxFQUNiMkMsZ0JBQWdCLEVBQ2hCQyxnQkFBZ0IsRUFDaEJtQixNQUFNLEVBQ05DLFNBQVMsRUFDVEMsT0FBTyxFQUNQQyxVQUFVLEVBQ1ZqRSxTQUFTLENBQ1YsQ0FBQztFQUVGLE9BQU8sSUFBQXlHLGNBQU8sRUFBQyxZQUFLO0lBQ2xCLElBQUlDLElBQUksTUFBQXhFLE1BQUEsS0FBQUMsbUJBQUEsYUFBT3dFLGFBQWEsT0FBQXhFLG1CQUFBLGFBQUtxRSxlQUFlLEVBQUM7SUFDakQsSUFBSUQsT0FBTyxLQUFLLFFBQVEsRUFBRTtNQUN4QkcsSUFBSSxHQUFHVCxtQkFBbUIsQ0FBQSxDQUFLLENBQUNTLElBQUksQ0FBQztJQUN2QztJQUNBLE9BQU9BLElBQXlDO0VBQ2xELENBQUMsRUFBRSxDQUFDQyxhQUFhLEVBQUVILGVBQWUsRUFBRUQsT0FBTyxDQUFDLENBQUM7QUFDL0MiLCJmaWxlIjoiY29tcG9uZW50cy9UYWJsZS9jb3JlL3VzZVRhYmxlQ29sdW1ucy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgU2VsZWN0aW9uQ29udHJvbCwgU2VsZWN0aW9uSGVhZGVyQ29udHJvbCB9IGZyb20gJy4uL2ZlYXR1cmVzL1NlbGVjdGlvbkNvbHVtbic7XG5pbXBvcnQgeyBFeHBhbmRUcmlnZ2VyIH0gZnJvbSAnLi4vZmVhdHVyZXMvRXhwYW5kVHJpZ2dlcic7XG5pbXBvcnQgeyBIZWFkZXJDZWxsIH0gZnJvbSAnLi4vcmVuZGVyZXJzL0hlYWRlckNlbGwnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeVRpdGxlIH0gZnJvbSAnLi4vLi4vVHlwb2dyYXBoeSc7XG5pbXBvcnQgeyBCb2R5Q2VsbCB9IGZyb20gJy4uL3JlbmRlcmVycy9Cb2R5Q2VsbCc7XG5pbXBvcnQgeyBUQUJMRV9ERUZBVUxUX1BSRUZJWCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUQUJMRV9TSVpFX0NPTkZJRyB9IGZyb20gJy4uL3NpemUnO1xuaW1wb3J0IHsgaXNDb2x1bW5Hcm91cCB9IGZyb20gJy4vY29sdW1uVXRpbCc7XG5mdW5jdGlvbiBtYWtlRXhwYW5kVHJhbnNmb3JtKGNvbmZpZykge1xuICAgIGNvbnN0IHsgZXhwYW5kYWJsZSwgbWVyZ2VkRXhwYW5kZWRSb3dLZXlzLCB0cmlnZ2VyRXhwYW5kLCBnZXRSb3dLZXkgfSA9IGNvbmZpZztcbiAgICBjb25zdCBjdXN0b21FeHBhbmRJY29uID0gZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmV4cGFuZEljb247XG4gICAgY29uc3Qgcm93RXhwYW5kYWJsZSA9IGV4cGFuZGFibGUgPT09IG51bGwgfHwgZXhwYW5kYWJsZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZXhwYW5kYWJsZS5yb3dFeHBhbmRhYmxlO1xuICAgIC8vIE8oMSkgcGVyLXJvdyBleHBhbnNpb24gbG9va3VwIOKAlCBgLmluY2x1ZGVzYCBoZXJlIHJhbiBvbmNlIHBlciByZW5kZXJlZCByb3cuXG4gICAgY29uc3QgZXhwYW5kZWRLZXlTZXQgPSBuZXcgU2V0KG1lcmdlZEV4cGFuZGVkUm93S2V5cyk7XG4gICAgcmV0dXJuIChjb2x1bW5zKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBrZXk6ICdfX2V4cGFuZF9fJyxcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IEVYUEFORF9DT0xVTU5fQ0xTLFxuICAgICAgICAgICAgICAgIC8vIEhvbm9yIGBleHBhbmRhYmxlLmNvbHVtbldpZHRoYCAvIGBjb2x1bW5UaXRsZWAgLyBgZml4ZWRgO1xuICAgICAgICAgICAgICAgIC8vIGRlZmF1bHQgdG8gYSBmaXhlZCAxNnB4IGNvbHVtbiAoY2hldnJvbi1vbmx5LCBwYWRkaW5nOiAwKS5cbiAgICAgICAgICAgICAgICB3aWR0aDogKF9hID0gZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmNvbHVtbldpZHRoKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAxNixcbiAgICAgICAgICAgICAgICB0aXRsZTogZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmNvbHVtblRpdGxlLFxuICAgICAgICAgICAgICAgIGZpeGVkOiAoZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmZpeGVkKSA9PT0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICA/ICdsZWZ0J1xuICAgICAgICAgICAgICAgICAgICA6IChleHBhbmRhYmxlID09PSBudWxsIHx8IGV4cGFuZGFibGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGV4cGFuZGFibGUuZml4ZWQpID09PSBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIDogZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmZpeGVkLFxuICAgICAgICAgICAgICAgIHJlbmRlcjogKF8sIHJlY29yZCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gSG9ub3IgYHJvd0V4cGFuZGFibGVgOiB3aGVuIHRoZSBwcmVkaWNhdGUgZGVuaWVzIGEgcmVjb3JkLCByZW5kZXIgbm9cbiAgICAgICAgICAgICAgICAgICAgLy8gY2hldnJvbiBhdCBhbGwgKHRoZSByb3cgaXMgbm9uLWV4cGFuZGFibGUpLlxuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYW5FeHBhbmQgPSByb3dFeHBhbmRhYmxlID8gcm93RXhwYW5kYWJsZShyZWNvcmQpIDogdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFjYW5FeHBhbmQpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkS2V5ID0gZ2V0Um93S2V5KHJlY29yZCwgaW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBleHBhbmRlZCA9IGV4cGFuZGVkS2V5U2V0LmhhcyhyZWNvcmRLZXkpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY3VzdG9tRXhwYW5kSWNvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGN1c3RvbUV4cGFuZEljb24oe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeENsczogVEFCTEVfREVGQVVMVF9QUkVGSVgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwYW5kZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGFuZGFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25FeHBhbmQ6IChyZWMsIGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlckV4cGFuZChnZXRSb3dLZXkocmVjLCBpbmRleCksIHJlYyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoX2pzeChFeHBhbmRUcmlnZ2VyLCB7IGV4cGFuZGVkOiBleHBhbmRlZCwgcmVjb3JkS2V5OiByZWNvcmRLZXksIHJlY29yZDogcmVjb3JkLCBvblRvZ2dsZTogdHJpZ2dlckV4cGFuZCB9KSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAuLi5jb2x1bW5zLFxuICAgICAgICBdO1xuICAgIH07XG59XG5mdW5jdGlvbiBtYWtlU2VsZWN0aW9uVHJhbnNmb3JtKGNvbmZpZykge1xuICAgIHZhciBfYTtcbiAgICBjb25zdCB7IHJvd1NlbGVjdGlvbiwgbWVyZ2VkU2VsZWN0ZWRSb3dLZXlzLCBjaGVja2JveFByb3BzTWFwLCBpc0FsbFNlbGVjdGVkLCBpc0luZGV0ZXJtaW5hdGUsIHRyaWdnZXJTZWxlY3Rpb24sIHRyaWdnZXJTZWxlY3RBbGwsIGdldFJvd0tleSwgfSA9IGNvbmZpZztcbiAgICBpZiAoIXJvd1NlbGVjdGlvbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgY29uc3Qgc2VsZWN0aW9uVHlwZSA9IChfYSA9IHJvd1NlbGVjdGlvbi50eXBlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnY2hlY2tib3gnO1xuICAgIC8vIE8oMSkgcGVyLXJvdyBzZWxlY3Rpb24gbG9va3VwIOKAlCBgLmluY2x1ZGVzYCBoZXJlIHJhbiBvbmNlIHBlciByZW5kZXJlZCByb3cuXG4gICAgY29uc3Qgc2VsZWN0ZWRLZXlTZXQgPSBuZXcgU2V0KG1lcmdlZFNlbGVjdGVkUm93S2V5cyk7XG4gICAgcmV0dXJuIChjb2x1bW5zKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7IGtleTogJ19fc2VsZWN0aW9uX18nLCBjbGFzc05hbWU6IFNFTEVDVElPTl9DT0xVTU5fQ0xTLCB3aWR0aDogKF9hID0gcm93U2VsZWN0aW9uLmNvbHVtbldpZHRoKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAxNiwgZml4ZWQ6IHJvd1NlbGVjdGlvbi5maXhlZCA/ICdsZWZ0JyA6IHVuZGVmaW5lZCB9LCAoc2VsZWN0aW9uVHlwZSA9PT0gJ2NoZWNrYm94J1xuICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJIZWFkZXI6ICgpID0+IChfanN4KFNlbGVjdGlvbkhlYWRlckNvbnRyb2wsIHsgY2hlY2tlZDogaXNBbGxTZWxlY3RlZCwgaW5kZXRlcm1pbmF0ZTogaXNJbmRldGVybWluYXRlLCBvbkNoYW5nZTogdHJpZ2dlclNlbGVjdEFsbCB9KSksXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDoge30pKSwgeyByZW5kZXI6IChfLCByZWNvcmQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlY29yZEtleSA9IGdldFJvd0tleShyZWNvcmQsIGluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93UHJvcHMgPSBjaGVja2JveFByb3BzTWFwLmdldChyZWNvcmRLZXkpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKF9qc3goU2VsZWN0aW9uQ29udHJvbCwgeyB0eXBlOiBzZWxlY3Rpb25UeXBlLCBjaGVja2VkOiBzZWxlY3RlZEtleVNldC5oYXMocmVjb3JkS2V5KSwgcm93UHJvcHM6IHJvd1Byb3BzLCByZWNvcmRLZXk6IHJlY29yZEtleSwgb25DaGFuZ2U6IHRyaWdnZXJTZWxlY3Rpb24gfSkpO1xuICAgICAgICAgICAgICAgIH0gfSksXG4gICAgICAgICAgICAuLi5jb2x1bW5zLFxuICAgICAgICBdO1xuICAgIH07XG59XG5mdW5jdGlvbiBhcmlhU29ydEZvcihvcmRlcikge1xuICAgIGlmIChvcmRlciA9PT0gJ2FzY2VuZCcpXG4gICAgICAgIHJldHVybiAnYXNjZW5kaW5nJztcbiAgICBpZiAob3JkZXIgPT09ICdkZXNjZW5kJylcbiAgICAgICAgcmV0dXJuICdkZXNjZW5kaW5nJztcbiAgICByZXR1cm4gJ25vbmUnO1xufVxuLy8gU3RhYmxlIGVtcHR5LWZpbHRlciByZWZlcmVuY2UuIFdpdGhvdXQgdGhpcywgYGZpbHRlcnNba2V5XSA/PyBbXWAgY3JlYXRlcyBhXG4vLyBmcmVzaCBgW11gIG9uIGV2ZXJ5IHJlbmRlciwgd2hpY2ggdGhyYXNoZXMgYEZpbHRlclRyaWdnZXJgJ3Ncbi8vIGB1c2VFZmZlY3QoW3NlbGVjdGVkS2V5c10pYCBhbmQgY2F1c2VzIGFuIGluZmluaXRlIHNldFN0YXRlIGxvb3AgYWZ0ZXJcbi8vIGNvbmZpcm0gLyByZXNldC5cbmNvbnN0IEVNUFRZX0ZJTFRFUl9WQUxVRSA9IFtdO1xuZnVuY3Rpb24gbWFrZUhlYWRlclRyYW5zZm9ybShjb25maWcpIHtcbiAgICBjb25zdCB7IHNvcnRlciwgc2V0U29ydGVyLCBmaWx0ZXJzLCBzZXRGaWx0ZXJzLCBzaXplIH0gPSBjb25maWc7XG4gICAgcmV0dXJuIChjb2x1bW5zKSA9PiBjb2x1bW5zLm1hcCgoY29sdW1uKSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGlmIChpc0NvbHVtbkdyb3VwKGNvbHVtbikpIHtcbiAgICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGNvbHVtbiksIHsgdGl0bGU6IHR5cGVvZiBjb2x1bW4udGl0bGUgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiBjb2x1bW4udGl0bGUgPT09ICdudW1iZXInXG4gICAgICAgICAgICAgICAgICAgID8gX2pzeChUeXBvZ3JhcGh5VGl0bGUsIHsgc2l6ZTogVEFCTEVfU0laRV9DT05GSUdbc2l6ZV0uaGVhZGVyRm9udFNpemUsIHN0cm9uZzogdHJ1ZSwgY2hpbGRyZW46IGNvbHVtbi50aXRsZSB9KVxuICAgICAgICAgICAgICAgICAgICA6IGNvbHVtbi50aXRsZSwgY2hpbGRyZW46IG1ha2VIZWFkZXJUcmFuc2Zvcm0oY29uZmlnKShjb2x1bW4uY2hpbGRyZW4pIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlzU29ydGFibGUgPSBCb29sZWFuKGNvbHVtbi5zb3J0ZXIpO1xuICAgICAgICBjb25zdCBhY3RpdmVPcmRlciA9IHNvcnRlci5jb2x1bW5LZXkgPT09IGNvbHVtbi5rZXkgPyAoX2EgPSBzb3J0ZXIub3JkZXIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IG51bGwgOiBudWxsO1xuICAgICAgICBjb25zdCBjb2x1bW5LZXkgPSBjb2x1bW4ua2V5ICE9IG51bGwgPyBTdHJpbmcoY29sdW1uLmtleSkgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGZpbHRlclNlbGVjdGVkID0gY29sdW1uS2V5ICE9IG51bGwgPyAoKF9iID0gZmlsdGVyc1tjb2x1bW5LZXldKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBFTVBUWV9GSUxURVJfVkFMVUUpIDogRU1QVFlfRklMVEVSX1ZBTFVFO1xuICAgICAgICAvLyBDb21wb3NlIG9uSGVhZGVyQ2VsbCBzbyB3ZSBkb24ndCBjbG9iYmVyIHVzZXItcHJvdmlkZWQgYXR0cmlidXRlcy5cbiAgICAgICAgY29uc3QgdXNlck9uSGVhZGVyQ2VsbCA9IGNvbHVtbi5vbkhlYWRlckNlbGw7XG4gICAgICAgIGNvbnN0IG9uSGVhZGVyQ2VsbCA9IChjb2wsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBjb25zdCB1c2VyQXR0cnMgPSAoX2EgPSB1c2VyT25IZWFkZXJDZWxsID09PSBudWxsIHx8IHVzZXJPbkhlYWRlckNlbGwgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHVzZXJPbkhlYWRlckNlbGwoY29sLCBpbmRleCkpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHt9O1xuICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgdXNlckF0dHJzKSwgKGlzU29ydGFibGUgPyB7ICdhcmlhLXNvcnQnOiBhcmlhU29ydEZvcihhY3RpdmVPcmRlcikgfSA6IG51bGwpKTtcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3Qgb25GaWx0ZXJDaGFuZ2UgPSAobmV4dCkgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbHVtbktleSA9PSBudWxsKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHNldEZpbHRlcnMoKGN1cnJlbnQpID0+IChPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGN1cnJlbnQpLCB7IFtjb2x1bW5LZXldOiBuZXh0Lmxlbmd0aCA/IG5leHQgOiBudWxsIH0pKSk7XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGNvbHVtbiksIHsgb25IZWFkZXJDZWxsLCB0aXRsZTogY29sdW1uLnJlbmRlckhlYWRlclxuICAgICAgICAgICAgICAgID8gY29sdW1uLnJlbmRlckhlYWRlcih7IGNvbHVtbiwgc2l6ZSwgZm9udFNpemU6IFRBQkxFX1NJWkVfQ09ORklHW3NpemVdLmhlYWRlckZvbnRTaXplIH0pXG4gICAgICAgICAgICAgICAgOiAoX2pzeChIZWFkZXJDZWxsLCB7IHNpemU6IHNpemUsIGNvbHVtbjogY29sdW1uLCBzb3J0T3JkZXI6IGFjdGl2ZU9yZGVyLCBvblNvcnRDbGljazogKCkgPT4gc2V0U29ydGVyKChjdXJyZW50U29ydGVyKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uS2V5OiBjb2x1bW4ua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IGN1cnJlbnRTb3J0ZXIuY29sdW1uS2V5ICE9PSBjb2x1bW4ua2V5IHx8IGN1cnJlbnRTb3J0ZXIub3JkZXIgPT09IG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdhc2NlbmQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBjdXJyZW50U29ydGVyLm9yZGVyID09PSAnYXNjZW5kJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdkZXNjZW5kJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIH0pKSwgZmlsdGVyU2VsZWN0ZWQ6IGZpbHRlclNlbGVjdGVkLCBvbkZpbHRlckNoYW5nZTogb25GaWx0ZXJDaGFuZ2UgfSkpIH0pO1xuICAgIH0pO1xufVxuY29uc3QgU1BBQ0VSX0NPTFVNTl9DTFMgPSAnb20tY29tcG9uZW50LXVpLXRhYmxlLWNlbGwtLXNwYWNlcic7XG5jb25zdCBFWFBBTkRfQ09MVU1OX0NMUyA9ICdvbS1jb21wb25lbnQtdWktdGFibGUtY2VsbC0tZXhwYW5kJztcbmNvbnN0IFNFTEVDVElPTl9DT0xVTU5fQ0xTID0gJ29tLWNvbXBvbmVudC11aS10YWJsZS1jZWxsLS1zZWxlY3Rpb24nO1xuZnVuY3Rpb24gbWFrZVNwYWNlclRyYW5zZm9ybSgpIHtcbiAgICByZXR1cm4gKGNvbHVtbnMpID0+IFtcbiAgICAgICAgeyBrZXk6ICdfX3NwYWNlcl9zdGFydF9fJywgd2lkdGg6IDI0LCB0aXRsZTogJycsIGNsYXNzTmFtZTogU1BBQ0VSX0NPTFVNTl9DTFMsIHJlbmRlcjogKCkgPT4gbnVsbCB9LFxuICAgICAgICAuLi5jb2x1bW5zLFxuICAgICAgICB7IGtleTogJ19fc3BhY2VyX2VuZF9fJywgd2lkdGg6IDE2LCB0aXRsZTogJycsIGNsYXNzTmFtZTogU1BBQ0VSX0NPTFVNTl9DTFMsIHJlbmRlcjogKCkgPT4gbnVsbCB9LFxuICAgIF07XG59XG5mdW5jdGlvbiBtYWtlUmVuZGVyVHJhbnNmb3JtKHNpemUpIHtcbiAgICByZXR1cm4gKGNvbHVtbnMpID0+IGNvbHVtbnMubWFwKChjb2x1bW4pID0+IHtcbiAgICAgICAgaWYgKGlzQ29sdW1uR3JvdXAoY29sdW1uKSkge1xuICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgY29sdW1uKSwgeyBjaGlsZHJlbjogbWFrZVJlbmRlclRyYW5zZm9ybShzaXplKShjb2x1bW4uY2hpbGRyZW4pIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGNvbHVtbiksIHsgZWxsaXBzaXM6IGZhbHNlLCBcbiAgICAgICAgICAgIC8vIEJvZHlDZWxsIGlzIGludGVudGlvbmFsbHkgQ0FMTEVEIGFzIGEgZnVuY3Rpb24sIG5vdCByZW5kZXJlZCBhc1xuICAgICAgICAgICAgLy8gYDxCb2R5Q2VsbCAvPmAuIFRoZSBrZXJuZWwncyBgcmVuZGVyYCBjb250cmFjdCBhbGxvd3MgcmV0dXJuaW5nIGVpdGhlclxuICAgICAgICAgICAgLy8gYSBSZWFjdE5vZGUgb3IgYSBgeyBjaGlsZHJlbiwgcHJvcHMgfWAgY2VsbC1zcGFubmluZyBkZXNjcmlwdG9yLCBhbmRcbiAgICAgICAgICAgIC8vIEJvZHlDZWxsIGZvcndhcmRzIHRoYXQgZGVzY3JpcHRvciB0aHJvdWdoIGZvciBjb2xTcGFuIC8gcm93U3BhbiBzdXBwb3J0LlxuICAgICAgICAgICAgLy8gV3JhcHBpbmcgaXQgaW4gSlNYIHdvdWxkIGNvbGxhcHNlIHRoZSBkZXNjcmlwdG9yIGludG8gYW4gZWxlbWVudCBhbmRcbiAgICAgICAgICAgIC8vIGJyZWFrIGNlbGwgbWVyZ2luZyDigJQgZG8gbm90IFwiZml4XCIgdGhpcyBpbnRvIGFuIGVsZW1lbnQuXG4gICAgICAgICAgICByZW5kZXI6ICh2YWx1ZSwgcmVjb3JkLCBpbmRleCkgPT4gQm9keUNlbGwoe1xuICAgICAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICAgICAgY29sdW1uLFxuICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICAgIHJlY29yZCxcbiAgICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgIH0pIH0pO1xuICAgIH0pO1xufVxuLyoqXG4gKiBSZXR1cm5zIGNvbHVtbnMgcmVhZHkgdG8gYmUgcGFzc2VkIHRvIHRoZSB0YWJsZSBrZXJuZWwuXG4gKlxuICogVGhlIHJldHVybmVkIHNoYXBlIElTIHN0cnVjdHVyYWxseSB0aGUga2VybmVsJ3MgYENvbHVtbnNUeXBlPFQ+YDpcbiAqICAgLSBFdmVyeSBsZWFmIGNvbHVtbidzIGByZW5kZXJgIGlzIHJlcGxhY2VkIGJ5IGBtYWtlUmVuZGVyVHJhbnNmb3JtYCwgd2hpY2hcbiAqICAgICBhbHdheXMgcmV0dXJucyBhIGBSZWFjdE5vZGVgIChCb2R5Q2VsbCBoYW5kbGVzIGBUYWJsZUNlbGxDb250ZW50VmFsdWVgIC9cbiAqICAgICBgVGFibGVSZW5kZXJlZENlbGxgIGV4dHJhcyBhbmQgZW1pdHMgUmVhY3ROb2RlL1JlbmRlcmVkQ2VsbCkuXG4gKiAgIC0gRXZlcnkgbGVhZiBjb2x1bW4ncyBgdGl0bGVgIGlzIGVpdGhlciBhIFJlYWN0Tm9kZSBvciByZXBsYWNlZCBieVxuICogICAgIGA8SGVhZGVyQ2VsbCAvPmAuXG4gKiBCZWNhdXNlIFRTIGNhbid0IHRyYWNrIHRoYXQgdGhvc2UgcmVwbGFjZW1lbnRzIGhhdmUgaGFwcGVuZWQgYWNyb3NzIHRoZVxuICogYHRyYW5zZm9ybXMucmVkdWNlYCBjaGFpbiwgYSBzaW5nbGUgaW50ZXJuYWwgY2FzdCBpcyByZXF1aXJlZCDigJQgY2FsbCBzaXRlcyBub1xuICogbG9uZ2VyIG5lZWQgdGhlaXIgb3duIGBhcyB1bmtub3duIGFzIEludGVybmFsQ29sdW1uc1R5cGU8VD5gIGNhc3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VUYWJsZUNvbHVtbnMoY29uZmlnKSB7XG4gICAgY29uc3QgeyBjb2x1bW5zLCB2YXJpYW50LCBzaXplLCBleHBhbmRhYmxlLCByb3dTZWxlY3Rpb24sIG1lcmdlZEV4cGFuZGVkUm93S2V5cywgbWVyZ2VkU2VsZWN0ZWRSb3dLZXlzLCBjaGVja2JveFByb3BzTWFwLCBpc0FsbFNlbGVjdGVkLCBpc0luZGV0ZXJtaW5hdGUsIHRyaWdnZXJFeHBhbmQsIHRyaWdnZXJTZWxlY3Rpb24sIHRyaWdnZXJTZWxlY3RBbGwsIHNvcnRlciwgc2V0U29ydGVyLCBmaWx0ZXJzLCBzZXRGaWx0ZXJzLCBnZXRSb3dLZXksIH0gPSBjb25maWc7XG4gICAgLy8gVGhlIHVzZXIncyBkYXRhIGNvbHVtbnMgb25seSBkZXBlbmQgb24gdGhlIGhlYWRlciAvIHJlbmRlciBpbnB1dHNcbiAgICAvLyAoc29ydCwgZmlsdGVyKSDigJQgTk9UIG9uIHNlbGVjdGlvbiBvciBleHBhbnNpb24gc3RhdGUuIE1lbW9pc2luZyB0aGVtXG4gICAgLy8gb24gdGhlaXIgb3duIG1lYW5zIHRvZ2dsaW5nIGEgY2hlY2tib3ggb3IgY2hldnJvbiBubyBsb25nZXIgcmVidWlsZHMgYW5kXG4gICAgLy8gcmUtd3JhcHMgdGhlIHJlbmRlciBjbG9zdXJlIG9mICpldmVyeSogZGF0YSBjb2x1bW47IG9ubHkgdGhlIHNtYWxsXG4gICAgLy8gc2VsZWN0aW9uL2V4cGFuZCBwcmVmaXggYmVsb3cgaXMgcmVidWlsdC4gYG1ha2VIZWFkZXJUcmFuc2Zvcm1gIGFuZFxuICAgIC8vIGBtYWtlUmVuZGVyVHJhbnNmb3JtYCBhcmUgcGVyLWNvbHVtbiBpbmRlcGVuZGVudCBtYXBzLCBzbyBhcHBseWluZyB0aGVtIHRvXG4gICAgLy8gdGhlIHVzZXIgY29sdW1ucyBhbmQgdGhlIHByZWZpeCBzZXBhcmF0ZWx5IGFuZCBjb25jYXRlbmF0aW5nIGlzIGVxdWl2YWxlbnRcbiAgICAvLyB0byB0aGUgb3JpZ2luYWwgc2luZ2xlIHJlZHVjZS1jaGFpbi5cbiAgICAvL1xuICAgIC8vIERlcC1saXN0IG5vdGU6IHRoZSB0cmFuc2Zvcm0gZmFjdG9yaWVzIGNhcHR1cmUgdGhlIHdob2xlIGBjb25maWdgLCBidXRcbiAgICAvLyBldmVyeSBjYWxsYmFjayBpbiBpdCAoYHNldFNvcnRlcmAsIGB0cmlnZ2VyRXhwYW5kYCwgYGdldFJvd0tleWAsIOKApikgaXMgYVxuICAgIC8vIHN0YWJsZSBgdXNlTWVtb2l6ZWRGbmAsIHNvIGxpc3RpbmcgdGhlIGdlbnVpbmUgdmFsdWUgaW5wdXRzIGlzIHN1ZmZpY2llbnRcbiAgICAvLyBhbmQgaW50ZW50aW9uYWwuIEtlZXAgdGhlIGxpc3RzIGluIHN5bmMgd2hlbiBhZGRpbmcgaW5wdXRzLlxuICAgIGNvbnN0IGJhc2VVc2VyQ29sdW1ucyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBsZXQgY29scyA9IG1ha2VIZWFkZXJUcmFuc2Zvcm0oY29uZmlnKShjb2x1bW5zKTtcbiAgICAgICAgY29scyA9IG1ha2VSZW5kZXJUcmFuc2Zvcm0oc2l6ZSkoY29scyk7XG4gICAgICAgIHJldHVybiBjb2xzO1xuICAgIH0sIFtjb2x1bW5zLCBzaXplLCBzb3J0ZXIsIGZpbHRlcnMsIHNldFNvcnRlciwgc2V0RmlsdGVyc10pO1xuICAgIC8vIFRoZSBzZWxlY3Rpb24gLyBleHBhbmQgcHJlZml4IGNhcnJpZXMgbGl2ZSBzZWxlY3RlZC9leHBhbmRlZCBzdGF0ZSBpbiBpdHNcbiAgICAvLyByZW5kZXIgb3V0cHV0LCB3aGljaCBpcyB0aGUgc2lnbmFsIHRoYXQgcmUtcmVuZGVycyB0aGUgYWZmZWN0ZWQgcm93cyDigJQgc28gaXRcbiAgICAvLyBtdXN0IHJlYnVpbGQgb24gZXZlcnkgdG9nZ2xlLiBJdCBpcyBhdCBtb3N0IHR3byBjb2x1bW5zLCBzbyB0aGlzIGlzIGNoZWFwLlxuICAgIGNvbnN0IHByZWZpeENvbHVtbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgbGV0IGNvbHMgPSBbXTtcbiAgICAgICAgaWYgKGV4cGFuZGFibGUgJiYgZXhwYW5kYWJsZS5zaG93RXhwYW5kQ29sdW1uICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgY29scyA9IG1ha2VFeHBhbmRUcmFuc2Zvcm0oY29uZmlnKShjb2xzKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzZWxlY3Rpb25UcmFuc2Zvcm0gPSByb3dTZWxlY3Rpb24gPyBtYWtlU2VsZWN0aW9uVHJhbnNmb3JtKGNvbmZpZykgOiBudWxsO1xuICAgICAgICBpZiAoc2VsZWN0aW9uVHJhbnNmb3JtKSB7XG4gICAgICAgICAgICBjb2xzID0gc2VsZWN0aW9uVHJhbnNmb3JtKGNvbHMpO1xuICAgICAgICB9XG4gICAgICAgIC8vIFJ1biB0aGUgcHJlZml4IHRocm91Z2ggdGhlIHNhbWUgaGVhZGVyL3JlbmRlciBtYXBzIHRoZSB1c2VyIGNvbHVtbnMgZ2V0IHNvXG4gICAgICAgIC8vIHRoZSBmaW5hbCBhcnJheSBpcyBieXRlLWZvci1ieXRlIHRoZSBvcmlnaW5hbCBzaW5nbGUtcGlwZWxpbmUgb3V0cHV0LlxuICAgICAgICBjb2xzID0gbWFrZUhlYWRlclRyYW5zZm9ybShjb25maWcpKGNvbHMpO1xuICAgICAgICBjb2xzID0gbWFrZVJlbmRlclRyYW5zZm9ybShzaXplKShjb2xzKTtcbiAgICAgICAgcmV0dXJuIGNvbHM7XG4gICAgfSwgW1xuICAgICAgICBzaXplLFxuICAgICAgICBleHBhbmRhYmxlLFxuICAgICAgICByb3dTZWxlY3Rpb24sXG4gICAgICAgIG1lcmdlZEV4cGFuZGVkUm93S2V5cyxcbiAgICAgICAgbWVyZ2VkU2VsZWN0ZWRSb3dLZXlzLFxuICAgICAgICBjaGVja2JveFByb3BzTWFwLFxuICAgICAgICBpc0FsbFNlbGVjdGVkLFxuICAgICAgICBpc0luZGV0ZXJtaW5hdGUsXG4gICAgICAgIHRyaWdnZXJFeHBhbmQsXG4gICAgICAgIHRyaWdnZXJTZWxlY3Rpb24sXG4gICAgICAgIHRyaWdnZXJTZWxlY3RBbGwsXG4gICAgICAgIHNvcnRlcixcbiAgICAgICAgc2V0U29ydGVyLFxuICAgICAgICBmaWx0ZXJzLFxuICAgICAgICBzZXRGaWx0ZXJzLFxuICAgICAgICBnZXRSb3dLZXksXG4gICAgXSk7XG4gICAgcmV0dXJuIHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBsZXQgY29scyA9IFsuLi5wcmVmaXhDb2x1bW5zLCAuLi5iYXNlVXNlckNvbHVtbnNdO1xuICAgICAgICBpZiAodmFyaWFudCA9PT0gJ3N0cm9rZScpIHtcbiAgICAgICAgICAgIGNvbHMgPSBtYWtlU3BhY2VyVHJhbnNmb3JtKCkoY29scyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbHM7XG4gICAgfSwgW3ByZWZpeENvbHVtbnMsIGJhc2VVc2VyQ29sdW1ucywgdmFyaWFudF0pO1xufSIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
314
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVGFibGUvY29yZS91c2VUYWJsZUNvbHVtbnMuanMiLCJjb21wb25lbnRzL1RhYmxlL3NyYy9jb21wb25lbnRzL1RhYmxlL2NvcmUvdXNlVGFibGVDb2x1bW5zLnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfU2VsZWN0aW9uQ29sdW1uIiwiX0V4cGFuZFRyaWdnZXIiLCJfSGVhZGVyQ2VsbCIsIl9UeXBvZ3JhcGh5IiwiX0JvZHlDZWxsIiwiX2NvbnN0YW50cyIsIl9zaXplIiwiX2NvbHVtblV0aWwiLCJtYWtlRXhwYW5kVHJhbnNmb3JtIiwiY29uZmlnIiwiZXhwYW5kYWJsZSIsIm1lcmdlZEV4cGFuZGVkUm93S2V5cyIsInRyaWdnZXJFeHBhbmQiLCJnZXRSb3dLZXkiLCJjdXN0b21FeHBhbmRJY29uIiwiZXhwYW5kSWNvbiIsInJvd0V4cGFuZGFibGUiLCJleHBhbmRlZEtleVNldCIsIlNldCIsImNvbHVtbnMiLCJfYSIsImtleSIsImNsYXNzTmFtZSIsIkVYUEFORF9DT0xVTU5fQ0xTIiwid2lkdGgiLCJjb2x1bW5XaWR0aCIsInRpdGxlIiwiY29sdW1uVGl0bGUiLCJmaXhlZCIsInVuZGVmaW5lZCIsInJlbmRlciIsIl8iLCJyZWNvcmQiLCJpbmRleCIsImNhbkV4cGFuZCIsInJlY29yZEtleSIsImV4cGFuZGVkIiwiaGFzIiwicHJlZml4Q2xzIiwiVEFCTEVfREVGQVVMVF9QUkVGSVgiLCJvbkV4cGFuZCIsInJlYyIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCJfanN4IiwiRXhwYW5kVHJpZ2dlciIsIm9uVG9nZ2xlIiwiY29uY2F0IiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsIm1ha2VTZWxlY3Rpb25UcmFuc2Zvcm0iLCJyb3dTZWxlY3Rpb24iLCJtZXJnZWRTZWxlY3RlZFJvd0tleXMiLCJjaGVja2JveFByb3BzTWFwIiwiaXNBbGxTZWxlY3RlZCIsImlzSW5kZXRlcm1pbmF0ZSIsInRyaWdnZXJTZWxlY3Rpb24iLCJ0cmlnZ2VyU2VsZWN0QWxsIiwic2VsZWN0aW9uVHlwZSIsInR5cGUiLCJzZWxlY3RlZEtleVNldCIsIk9iamVjdCIsImFzc2lnbiIsIlNFTEVDVElPTl9DT0xVTU5fQ0xTIiwicmVuZGVySGVhZGVyIiwiU2VsZWN0aW9uSGVhZGVyQ29udHJvbCIsImNoZWNrZWQiLCJpbmRldGVybWluYXRlIiwib25DaGFuZ2UiLCJyb3dQcm9wcyIsImdldCIsIlNlbGVjdGlvbkNvbnRyb2wiLCJhcmlhU29ydEZvciIsIm9yZGVyIiwiRU1QVFlfRklMVEVSX1ZBTFVFIiwibWFrZUhlYWRlclRyYW5zZm9ybSIsInNvcnRlciIsInNldFNvcnRlciIsImZpbHRlcnMiLCJzZXRGaWx0ZXJzIiwic2l6ZSIsIm1hcCIsImNvbHVtbiIsIl9iIiwiaXNDb2x1bW5Hcm91cCIsIlR5cG9ncmFwaHlUaXRsZSIsIlRBQkxFX1NJWkVfQ09ORklHIiwiaGVhZGVyRm9udFNpemUiLCJzdHJvbmciLCJjaGlsZHJlbiIsImlzU29ydGFibGUiLCJCb29sZWFuIiwiYWN0aXZlT3JkZXIiLCJjb2x1bW5LZXkiLCJTdHJpbmciLCJmaWx0ZXJTZWxlY3RlZCIsInVzZXJPbkhlYWRlckNlbGwiLCJvbkhlYWRlckNlbGwiLCJjb2wiLCJ1c2VyQXR0cnMiLCJvbkZpbHRlckNoYW5nZSIsIm5leHQiLCJjdXJyZW50IiwiX2RlZmluZVByb3BlcnR5MiIsImxlbmd0aCIsImZvbnRTaXplIiwiSGVhZGVyQ2VsbCIsInNvcnRPcmRlciIsIm9uU29ydENsaWNrIiwiY3VycmVudFNvcnRlciIsIlNQQUNFUl9DT0xVTU5fQ0xTIiwibWFrZVNwYWNlclRyYW5zZm9ybSIsIm1ha2VSZW5kZXJUcmFuc2Zvcm0iLCJlbGxpcHNpcyIsInZhbHVlIiwiQm9keUNlbGwiLCJ1c2VUYWJsZUNvbHVtbnMiLCJ2YXJpYW50IiwiYmFzZVVzZXJDb2x1bW5zIiwidXNlTWVtbyIsImNvbHMiLCJwcmVmaXhDb2x1bW5zIiwic2hvd0V4cGFuZENvbHVt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LEVBQ3JCQyxnQkFBZ0IsRUFDaEJDLGFBQWEsRUFDYkMsZUFBZSxFQUNmMUMsYUFBYSxFQUNiMkMsZ0JBQWdCLEVBQ2hCQyxnQkFBZ0IsRUFDaEJtQixNQUFNLEVBQ05DLFNBQVMsRUFDVEMsT0FBTyxFQUNQQyxVQUFVLEVBQ1ZqRSxTQUFTLENBQ1YsQ0FBQztFQUVGLE9BQU8sSUFBQXlHLGNBQU8sRUFBQyxZQUFLO0lBQ2xCLElBQUlDLElBQUksTUFBQXhFLE1BQUEsS0FBQUMsbUJBQUEsYUFBT3dFLGFBQWEsT0FBQXhFLG1CQUFBLGFBQUtxRSxlQUFlLEVBQUM7SUFDakQsSUFBSUQsT0FBTyxLQUFLLFFBQVEsRUFBRTtNQUN4QkcsSUFBSSxHQUFHVCxtQkFBbUIsQ0FBQSxDQUFLLENBQUNTLElBQUksQ0FBQztJQUN2QztJQUNBLE9BQU9BLElBQXlDO0VBQ2xELENBQUMsRUFBRSxDQUFDQyxhQUFhLEVBQUVILGVBQWUsRUFBRUQsT0FBTyxDQUFDLENBQUM7QUFDL0MiLCJmaWxlIjoiY29tcG9uZW50cy9UYWJsZS9jb3JlL3VzZVRhYmxlQ29sdW1ucy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgU2VsZWN0aW9uQ29udHJvbCwgU2VsZWN0aW9uSGVhZGVyQ29udHJvbCB9IGZyb20gJy4uL2ZlYXR1cmVzL1NlbGVjdGlvbkNvbHVtbic7XG5pbXBvcnQgeyBFeHBhbmRUcmlnZ2VyIH0gZnJvbSAnLi4vZmVhdHVyZXMvRXhwYW5kVHJpZ2dlcic7XG5pbXBvcnQgeyBIZWFkZXJDZWxsIH0gZnJvbSAnLi4vcmVuZGVyZXJzL0hlYWRlckNlbGwnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeVRpdGxlIH0gZnJvbSAnLi4vLi4vVHlwb2dyYXBoeSc7XG5pbXBvcnQgeyBCb2R5Q2VsbCB9IGZyb20gJy4uL3JlbmRlcmVycy9Cb2R5Q2VsbCc7XG5pbXBvcnQgeyBUQUJMRV9ERUZBVUxUX1BSRUZJWCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUQUJMRV9TSVpFX0NPTkZJRyB9IGZyb20gJy4uL3NpemUnO1xuaW1wb3J0IHsgaXNDb2x1bW5Hcm91cCB9IGZyb20gJy4vY29sdW1uVXRpbCc7XG5mdW5jdGlvbiBtYWtlRXhwYW5kVHJhbnNmb3JtKGNvbmZpZykge1xuICAgIGNvbnN0IHsgZXhwYW5kYWJsZSwgbWVyZ2VkRXhwYW5kZWRSb3dLZXlzLCB0cmlnZ2VyRXhwYW5kLCBnZXRSb3dLZXkgfSA9IGNvbmZpZztcbiAgICBjb25zdCBjdXN0b21FeHBhbmRJY29uID0gZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmV4cGFuZEljb247XG4gICAgY29uc3Qgcm93RXhwYW5kYWJsZSA9IGV4cGFuZGFibGUgPT09IG51bGwgfHwgZXhwYW5kYWJsZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZXhwYW5kYWJsZS5yb3dFeHBhbmRhYmxlO1xuICAgIC8vIE8oMSkgcGVyLXJvdyBleHBhbnNpb24gbG9va3VwIOKAlCBgLmluY2x1ZGVzYCBoZXJlIHJhbiBvbmNlIHBlciByZW5kZXJlZCByb3cuXG4gICAgY29uc3QgZXhwYW5kZWRLZXlTZXQgPSBuZXcgU2V0KG1lcmdlZEV4cGFuZGVkUm93S2V5cyk7XG4gICAgcmV0dXJuIChjb2x1bW5zKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBrZXk6ICdfX2V4cGFuZF9fJyxcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IEVYUEFORF9DT0xVTU5fQ0xTLFxuICAgICAgICAgICAgICAgIC8vIEhvbm9yIGBleHBhbmRhYmxlLmNvbHVtbldpZHRoYCAvIGBjb2x1bW5UaXRsZWAgLyBgZml4ZWRgO1xuICAgICAgICAgICAgICAgIC8vIGRlZmF1bHQgdG8gYSBmaXhlZCAxNnB4IGNvbHVtbiAoY2hldnJvbi1vbmx5LCBwYWRkaW5nOiAwKS5cbiAgICAgICAgICAgICAgICB3aWR0aDogKF9hID0gZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmNvbHVtbldpZHRoKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAxNixcbiAgICAgICAgICAgICAgICB0aXRsZTogZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmNvbHVtblRpdGxlLFxuICAgICAgICAgICAgICAgIGZpeGVkOiAoZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmZpeGVkKSA9PT0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICA/ICdsZWZ0J1xuICAgICAgICAgICAgICAgICAgICA6IChleHBhbmRhYmxlID09PSBudWxsIHx8IGV4cGFuZGFibGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGV4cGFuZGFibGUuZml4ZWQpID09PSBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIDogZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmZpeGVkLFxuICAgICAgICAgICAgICAgIHJlbmRlcjogKF8sIHJlY29yZCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gSG9ub3IgYHJvd0V4cGFuZGFibGVgOiB3aGVuIHRoZSBwcmVkaWNhdGUgZGVuaWVzIGEgcmVjb3JkLCByZW5kZXIgbm9cbiAgICAgICAgICAgICAgICAgICAgLy8gY2hldnJvbiBhdCBhbGwgKHRoZSByb3cgaXMgbm9uLWV4cGFuZGFibGUpLlxuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYW5FeHBhbmQgPSByb3dFeHBhbmRhYmxlID8gcm93RXhwYW5kYWJsZShyZWNvcmQpIDogdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFjYW5FeHBhbmQpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjb3JkS2V5ID0gZ2V0Um93S2V5KHJlY29yZCwgaW5kZXgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBleHBhbmRlZCA9IGV4cGFuZGVkS2V5U2V0LmhhcyhyZWNvcmRLZXkpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY3VzdG9tRXhwYW5kSWNvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGN1c3RvbUV4cGFuZEljb24oe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeENsczogVEFCTEVfREVGQVVMVF9QUkVGSVgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwYW5kZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGFuZGFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25FeHBhbmQ6IChyZWMsIGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlckV4cGFuZChnZXRSb3dLZXkocmVjLCBpbmRleCksIHJlYyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoX2pzeChFeHBhbmRUcmlnZ2VyLCB7IGV4cGFuZGVkOiBleHBhbmRlZCwgcmVjb3JkS2V5OiByZWNvcmRLZXksIHJlY29yZDogcmVjb3JkLCBvblRvZ2dsZTogdHJpZ2dlckV4cGFuZCB9KSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAuLi5jb2x1bW5zLFxuICAgICAgICBdO1xuICAgIH07XG59XG5mdW5jdGlvbiBtYWtlU2VsZWN0aW9uVHJhbnNmb3JtKGNvbmZpZykge1xuICAgIHZhciBfYTtcbiAgICBjb25zdCB7IHJvd1NlbGVjdGlvbiwgbWVyZ2VkU2VsZWN0ZWRSb3dLZXlzLCBjaGVja2JveFByb3BzTWFwLCBpc0FsbFNlbGVjdGVkLCBpc0luZGV0ZXJtaW5hdGUsIHRyaWdnZXJTZWxlY3Rpb24sIHRyaWdnZXJTZWxlY3RBbGwsIGdldFJvd0tleSwgfSA9IGNvbmZpZztcbiAgICBpZiAoIXJvd1NlbGVjdGlvbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgY29uc3Qgc2VsZWN0aW9uVHlwZSA9IChfYSA9IHJvd1NlbGVjdGlvbi50eXBlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnY2hlY2tib3gnO1xuICAgIC8vIE8oMSkgcGVyLXJvdyBzZWxlY3Rpb24gbG9va3VwIOKAlCBgLmluY2x1ZGVzYCBoZXJlIHJhbiBvbmNlIHBlciByZW5kZXJlZCByb3cuXG4gICAgY29uc3Qgc2VsZWN0ZWRLZXlTZXQgPSBuZXcgU2V0KG1lcmdlZFNlbGVjdGVkUm93S2V5cyk7XG4gICAgcmV0dXJuIChjb2x1bW5zKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7IGtleTogJ19fc2VsZWN0aW9uX18nLCBjbGFzc05hbWU6IFNFTEVDVElPTl9DT0xVTU5fQ0xTLCB3aWR0aDogKF9hID0gcm93U2VsZWN0aW9uLmNvbHVtbldpZHRoKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAxNiwgZml4ZWQ6IHJvd1NlbGVjdGlvbi5maXhlZCA/ICdsZWZ0JyA6IHVuZGVmaW5lZCB9LCAoc2VsZWN0aW9uVHlwZSA9PT0gJ2NoZWNrYm94J1xuICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJIZWFkZXI6ICgpID0+IChfanN4KFNlbGVjdGlvbkhlYWRlckNvbnRyb2wsIHsgY2hlY2tlZDogaXNBbGxTZWxlY3RlZCwgaW5kZXRlcm1pbmF0ZTogaXNJbmRldGVybWluYXRlLCBvbkNoYW5nZTogdHJpZ2dlclNlbGVjdEFsbCB9KSksXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDoge30pKSwgeyByZW5kZXI6IChfLCByZWNvcmQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlY29yZEtleSA9IGdldFJvd0tleShyZWNvcmQsIGluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93UHJvcHMgPSBjaGVja2JveFByb3BzTWFwLmdldChyZWNvcmRLZXkpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKF9qc3goU2VsZWN0aW9uQ29udHJvbCwgeyB0eXBlOiBzZWxlY3Rpb25UeXBlLCBjaGVja2VkOiBzZWxlY3RlZEtleVNldC5oYXMocmVjb3JkS2V5KSwgcm93UHJvcHM6IHJvd1Byb3BzLCByZWNvcmRLZXk6IHJlY29yZEtleSwgb25DaGFuZ2U6IHRyaWdnZXJTZWxlY3Rpb24gfSkpO1xuICAgICAgICAgICAgICAgIH0gfSksXG4gICAgICAgICAgICAuLi5jb2x1bW5zLFxuICAgICAgICBdO1xuICAgIH07XG59XG5mdW5jdGlvbiBhcmlhU29ydEZvcihvcmRlcikge1xuICAgIGlmIChvcmRlciA9PT0gJ2FzY2VuZCcpXG4gICAgICAgIHJldHVybiAnYXNjZW5kaW5nJztcbiAgICBpZiAob3JkZXIgPT09ICdkZXNjZW5kJylcbiAgICAgICAgcmV0dXJuICdkZXNjZW5kaW5nJztcbiAgICByZXR1cm4gJ25vbmUnO1xufVxuLy8gU3RhYmxlIGVtcHR5LWZpbHRlciByZWZlcmVuY2UuIFdpdGhvdXQgdGhpcywgYGZpbHRlcnNba2V5XSA/PyBbXWAgY3JlYXRlcyBhXG4vLyBmcmVzaCBgW11gIG9uIGV2ZXJ5IHJlbmRlciwgd2hpY2ggdGhyYXNoZXMgYEZpbHRlclRyaWdnZXJgJ3Ncbi8vIGB1c2VFZmZlY3QoW3NlbGVjdGVkS2V5c10pYCBhbmQgY2F1c2VzIGFuIGluZmluaXRlIHNldFN0YXRlIGxvb3AgYWZ0ZXJcbi8vIGNvbmZpcm0gLyByZXNldC5cbmNvbnN0IEVNUFRZX0ZJTFRFUl9WQUxVRSA9IFtdO1xuZnVuY3Rpb24gbWFrZUhlYWRlclRyYW5zZm9ybShjb25maWcpIHtcbiAgICBjb25zdCB7IHNvcnRlciwgc2V0U29ydGVyLCBmaWx0ZXJzLCBzZXRGaWx0ZXJzLCBzaXplIH0gPSBjb25maWc7XG4gICAgcmV0dXJuIChjb2x1bW5zKSA9PiBjb2x1bW5zLm1hcCgoY29sdW1uKSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGlmIChpc0NvbHVtbkdyb3VwKGNvbHVtbikpIHtcbiAgICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGNvbHVtbiksIHsgdGl0bGU6IHR5cGVvZiBjb2x1bW4udGl0bGUgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiBjb2x1bW4udGl0bGUgPT09ICdudW1iZXInXG4gICAgICAgICAgICAgICAgICAgID8gX2pzeChUeXBvZ3JhcGh5VGl0bGUsIHsgc2l6ZTogVEFCTEVfU0laRV9DT05GSUdbc2l6ZV0uaGVhZGVyRm9udFNpemUsIHN0cm9uZzogdHJ1ZSwgY2hpbGRyZW46IGNvbHVtbi50aXRsZSB9KVxuICAgICAgICAgICAgICAgICAgICA6IGNvbHVtbi50aXRsZSwgY2hpbGRyZW46IG1ha2VIZWFkZXJUcmFuc2Zvcm0oY29uZmlnKShjb2x1bW4uY2hpbGRyZW4pIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlzU29ydGFibGUgPSBCb29sZWFuKGNvbHVtbi5zb3J0ZXIpO1xuICAgICAgICBjb25zdCBhY3RpdmVPcmRlciA9IHNvcnRlci5jb2x1bW5LZXkgPT09IGNvbHVtbi5rZXkgPyAoX2EgPSBzb3J0ZXIub3JkZXIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IG51bGwgOiBudWxsO1xuICAgICAgICBjb25zdCBjb2x1bW5LZXkgPSBjb2x1bW4ua2V5ICE9IG51bGwgPyBTdHJpbmcoY29sdW1uLmtleSkgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGZpbHRlclNlbGVjdGVkID0gY29sdW1uS2V5ICE9IG51bGwgPyAoKF9iID0gZmlsdGVyc1tjb2x1bW5LZXldKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBFTVBUWV9GSUxURVJfVkFMVUUpIDogRU1QVFlfRklMVEVSX1ZBTFVFO1xuICAgICAgICAvLyBDb21wb3NlIG9uSGVhZGVyQ2VsbCBzbyB3ZSBkb24ndCBjbG9iYmVyIHVzZXItcHJvdmlkZWQgYXR0cmlidXRlcy5cbiAgICAgICAgY29uc3QgdXNlck9uSGVhZGVyQ2VsbCA9IGNvbHVtbi5vbkhlYWRlckNlbGw7XG4gICAgICAgIGNvbnN0IG9uSGVhZGVyQ2VsbCA9IChjb2wsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBjb25zdCB1c2VyQXR0cnMgPSAoX2EgPSB1c2VyT25IZWFkZXJDZWxsID09PSBudWxsIHx8IHVzZXJPbkhlYWRlckNlbGwgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHVzZXJPbkhlYWRlckNlbGwoY29sLCBpbmRleCkpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHt9O1xuICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgdXNlckF0dHJzKSwgKGlzU29ydGFibGUgPyB7ICdhcmlhLXNvcnQnOiBhcmlhU29ydEZvcihhY3RpdmVPcmRlcikgfSA6IG51bGwpKTtcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3Qgb25GaWx0ZXJDaGFuZ2UgPSAobmV4dCkgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbHVtbktleSA9PSBudWxsKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHNldEZpbHRlcnMoKGN1cnJlbnQpID0+IChPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGN1cnJlbnQpLCB7IFtjb2x1bW5LZXldOiBuZXh0Lmxlbmd0aCA/IG5leHQgOiBudWxsIH0pKSk7XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGNvbHVtbiksIHsgb25IZWFkZXJDZWxsLCB0aXRsZTogY29sdW1uLnJlbmRlckhlYWRlclxuICAgICAgICAgICAgICAgID8gY29sdW1uLnJlbmRlckhlYWRlcih7IGNvbHVtbiwgc2l6ZSwgZm9udFNpemU6IFRBQkxFX1NJWkVfQ09ORklHW3NpemVdLmhlYWRlckZvbnRTaXplIH0pXG4gICAgICAgICAgICAgICAgOiAoX2pzeChIZWFkZXJDZWxsLCB7IHNpemU6IHNpemUsIGNvbHVtbjogY29sdW1uLCBzb3J0T3JkZXI6IGFjdGl2ZU9yZGVyLCBvblNvcnRDbGljazogKCkgPT4gc2V0U29ydGVyKChjdXJyZW50U29ydGVyKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uS2V5OiBjb2x1bW4ua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IGN1cnJlbnRTb3J0ZXIuY29sdW1uS2V5ICE9PSBjb2x1bW4ua2V5IHx8IGN1cnJlbnRTb3J0ZXIub3JkZXIgPT09IG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdhc2NlbmQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBjdXJyZW50U29ydGVyLm9yZGVyID09PSAnYXNjZW5kJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdkZXNjZW5kJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIH0pKSwgZmlsdGVyU2VsZWN0ZWQ6IGZpbHRlclNlbGVjdGVkLCBvbkZpbHRlckNoYW5nZTogb25GaWx0ZXJDaGFuZ2UgfSkpIH0pO1xuICAgIH0pO1xufVxuY29uc3QgU1BBQ0VSX0NPTFVNTl9DTFMgPSAnb20tY29tcG9uZW50LXVpLXRhYmxlLWNlbGwtLXNwYWNlcic7XG5jb25zdCBFWFBBTkRfQ09MVU1OX0NMUyA9ICdvbS1jb21wb25lbnQtdWktdGFibGUtY2VsbC0tZXhwYW5kJztcbmNvbnN0IFNFTEVDVElPTl9DT0xVTU5fQ0xTID0gJ29tLWNvbXBvbmVudC11aS10YWJsZS1jZWxsLS1zZWxlY3Rpb24nO1xuZnVuY3Rpb24gbWFrZVNwYWNlclRyYW5zZm9ybSgpIHtcbiAgICByZXR1cm4gKGNvbHVtbnMpID0+IFtcbiAgICAgICAgeyBrZXk6ICdfX3NwYWNlcl9zdGFydF9fJywgd2lkdGg6IDE2LCB0aXRsZTogJycsIGNsYXNzTmFtZTogU1BBQ0VSX0NPTFVNTl9DTFMsIHJlbmRlcjogKCkgPT4gbnVsbCB9LFxuICAgICAgICAuLi5jb2x1bW5zLFxuICAgICAgICB7IGtleTogJ19fc3BhY2VyX2VuZF9fJywgd2lkdGg6IDE2LCB0aXRsZTogJycsIGNsYXNzTmFtZTogU1BBQ0VSX0NPTFVNTl9DTFMsIHJlbmRlcjogKCkgPT4gbnVsbCB9LFxuICAgIF07XG59XG5mdW5jdGlvbiBtYWtlUmVuZGVyVHJhbnNmb3JtKHNpemUpIHtcbiAgICByZXR1cm4gKGNvbHVtbnMpID0+IGNvbHVtbnMubWFwKChjb2x1bW4pID0+IHtcbiAgICAgICAgaWYgKGlzQ29sdW1uR3JvdXAoY29sdW1uKSkge1xuICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgY29sdW1uKSwgeyBjaGlsZHJlbjogbWFrZVJlbmRlclRyYW5zZm9ybShzaXplKShjb2x1bW4uY2hpbGRyZW4pIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGNvbHVtbiksIHsgZWxsaXBzaXM6IGZhbHNlLCBcbiAgICAgICAgICAgIC8vIEJvZHlDZWxsIGlzIGludGVudGlvbmFsbHkgQ0FMTEVEIGFzIGEgZnVuY3Rpb24sIG5vdCByZW5kZXJlZCBhc1xuICAgICAgICAgICAgLy8gYDxCb2R5Q2VsbCAvPmAuIFRoZSBrZXJuZWwncyBgcmVuZGVyYCBjb250cmFjdCBhbGxvd3MgcmV0dXJuaW5nIGVpdGhlclxuICAgICAgICAgICAgLy8gYSBSZWFjdE5vZGUgb3IgYSBgeyBjaGlsZHJlbiwgcHJvcHMgfWAgY2VsbC1zcGFubmluZyBkZXNjcmlwdG9yLCBhbmRcbiAgICAgICAgICAgIC8vIEJvZHlDZWxsIGZvcndhcmRzIHRoYXQgZGVzY3JpcHRvciB0aHJvdWdoIGZvciBjb2xTcGFuIC8gcm93U3BhbiBzdXBwb3J0LlxuICAgICAgICAgICAgLy8gV3JhcHBpbmcgaXQgaW4gSlNYIHdvdWxkIGNvbGxhcHNlIHRoZSBkZXNjcmlwdG9yIGludG8gYW4gZWxlbWVudCBhbmRcbiAgICAgICAgICAgIC8vIGJyZWFrIGNlbGwgbWVyZ2luZyDigJQgZG8gbm90IFwiZml4XCIgdGhpcyBpbnRvIGFuIGVsZW1lbnQuXG4gICAgICAgICAgICByZW5kZXI6ICh2YWx1ZSwgcmVjb3JkLCBpbmRleCkgPT4gQm9keUNlbGwoe1xuICAgICAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICAgICAgY29sdW1uLFxuICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICAgIHJlY29yZCxcbiAgICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgIH0pIH0pO1xuICAgIH0pO1xufVxuLyoqXG4gKiBSZXR1cm5zIGNvbHVtbnMgcmVhZHkgdG8gYmUgcGFzc2VkIHRvIHRoZSB0YWJsZSBrZXJuZWwuXG4gKlxuICogVGhlIHJldHVybmVkIHNoYXBlIElTIHN0cnVjdHVyYWxseSB0aGUga2VybmVsJ3MgYENvbHVtbnNUeXBlPFQ+YDpcbiAqICAgLSBFdmVyeSBsZWFmIGNvbHVtbidzIGByZW5kZXJgIGlzIHJlcGxhY2VkIGJ5IGBtYWtlUmVuZGVyVHJhbnNmb3JtYCwgd2hpY2hcbiAqICAgICBhbHdheXMgcmV0dXJucyBhIGBSZWFjdE5vZGVgIChCb2R5Q2VsbCBoYW5kbGVzIGBUYWJsZUNlbGxDb250ZW50VmFsdWVgIC9cbiAqICAgICBgVGFibGVSZW5kZXJlZENlbGxgIGV4dHJhcyBhbmQgZW1pdHMgUmVhY3ROb2RlL1JlbmRlcmVkQ2VsbCkuXG4gKiAgIC0gRXZlcnkgbGVhZiBjb2x1bW4ncyBgdGl0bGVgIGlzIGVpdGhlciBhIFJlYWN0Tm9kZSBvciByZXBsYWNlZCBieVxuICogICAgIGA8SGVhZGVyQ2VsbCAvPmAuXG4gKiBCZWNhdXNlIFRTIGNhbid0IHRyYWNrIHRoYXQgdGhvc2UgcmVwbGFjZW1lbnRzIGhhdmUgaGFwcGVuZWQgYWNyb3NzIHRoZVxuICogYHRyYW5zZm9ybXMucmVkdWNlYCBjaGFpbiwgYSBzaW5nbGUgaW50ZXJuYWwgY2FzdCBpcyByZXF1aXJlZCDigJQgY2FsbCBzaXRlcyBub1xuICogbG9uZ2VyIG5lZWQgdGhlaXIgb3duIGBhcyB1bmtub3duIGFzIEludGVybmFsQ29sdW1uc1R5cGU8VD5gIGNhc3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VUYWJsZUNvbHVtbnMoY29uZmlnKSB7XG4gICAgY29uc3QgeyBjb2x1bW5zLCB2YXJpYW50LCBzaXplLCBleHBhbmRhYmxlLCByb3dTZWxlY3Rpb24sIG1lcmdlZEV4cGFuZGVkUm93S2V5cywgbWVyZ2VkU2VsZWN0ZWRSb3dLZXlzLCBjaGVja2JveFByb3BzTWFwLCBpc0FsbFNlbGVjdGVkLCBpc0luZGV0ZXJtaW5hdGUsIHRyaWdnZXJFeHBhbmQsIHRyaWdnZXJTZWxlY3Rpb24sIHRyaWdnZXJTZWxlY3RBbGwsIHNvcnRlciwgc2V0U29ydGVyLCBmaWx0ZXJzLCBzZXRGaWx0ZXJzLCBnZXRSb3dLZXksIH0gPSBjb25maWc7XG4gICAgLy8gVGhlIHVzZXIncyBkYXRhIGNvbHVtbnMgb25seSBkZXBlbmQgb24gdGhlIGhlYWRlciAvIHJlbmRlciBpbnB1dHNcbiAgICAvLyAoc29ydCwgZmlsdGVyKSDigJQgTk9UIG9uIHNlbGVjdGlvbiBvciBleHBhbnNpb24gc3RhdGUuIE1lbW9pc2luZyB0aGVtXG4gICAgLy8gb24gdGhlaXIgb3duIG1lYW5zIHRvZ2dsaW5nIGEgY2hlY2tib3ggb3IgY2hldnJvbiBubyBsb25nZXIgcmVidWlsZHMgYW5kXG4gICAgLy8gcmUtd3JhcHMgdGhlIHJlbmRlciBjbG9zdXJlIG9mICpldmVyeSogZGF0YSBjb2x1bW47IG9ubHkgdGhlIHNtYWxsXG4gICAgLy8gc2VsZWN0aW9uL2V4cGFuZCBwcmVmaXggYmVsb3cgaXMgcmVidWlsdC4gYG1ha2VIZWFkZXJUcmFuc2Zvcm1gIGFuZFxuICAgIC8vIGBtYWtlUmVuZGVyVHJhbnNmb3JtYCBhcmUgcGVyLWNvbHVtbiBpbmRlcGVuZGVudCBtYXBzLCBzbyBhcHBseWluZyB0aGVtIHRvXG4gICAgLy8gdGhlIHVzZXIgY29sdW1ucyBhbmQgdGhlIHByZWZpeCBzZXBhcmF0ZWx5IGFuZCBjb25jYXRlbmF0aW5nIGlzIGVxdWl2YWxlbnRcbiAgICAvLyB0byB0aGUgb3JpZ2luYWwgc2luZ2xlIHJlZHVjZS1jaGFpbi5cbiAgICAvL1xuICAgIC8vIERlcC1saXN0IG5vdGU6IHRoZSB0cmFuc2Zvcm0gZmFjdG9yaWVzIGNhcHR1cmUgdGhlIHdob2xlIGBjb25maWdgLCBidXRcbiAgICAvLyBldmVyeSBjYWxsYmFjayBpbiBpdCAoYHNldFNvcnRlcmAsIGB0cmlnZ2VyRXhwYW5kYCwgYGdldFJvd0tleWAsIOKApikgaXMgYVxuICAgIC8vIHN0YWJsZSBgdXNlTWVtb2l6ZWRGbmAsIHNvIGxpc3RpbmcgdGhlIGdlbnVpbmUgdmFsdWUgaW5wdXRzIGlzIHN1ZmZpY2llbnRcbiAgICAvLyBhbmQgaW50ZW50aW9uYWwuIEtlZXAgdGhlIGxpc3RzIGluIHN5bmMgd2hlbiBhZGRpbmcgaW5wdXRzLlxuICAgIGNvbnN0IGJhc2VVc2VyQ29sdW1ucyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBsZXQgY29scyA9IG1ha2VIZWFkZXJUcmFuc2Zvcm0oY29uZmlnKShjb2x1bW5zKTtcbiAgICAgICAgY29scyA9IG1ha2VSZW5kZXJUcmFuc2Zvcm0oc2l6ZSkoY29scyk7XG4gICAgICAgIHJldHVybiBjb2xzO1xuICAgIH0sIFtjb2x1bW5zLCBzaXplLCBzb3J0ZXIsIGZpbHRlcnMsIHNldFNvcnRlciwgc2V0RmlsdGVyc10pO1xuICAgIC8vIFRoZSBzZWxlY3Rpb24gLyBleHBhbmQgcHJlZml4IGNhcnJpZXMgbGl2ZSBzZWxlY3RlZC9leHBhbmRlZCBzdGF0ZSBpbiBpdHNcbiAgICAvLyByZW5kZXIgb3V0cHV0LCB3aGljaCBpcyB0aGUgc2lnbmFsIHRoYXQgcmUtcmVuZGVycyB0aGUgYWZmZWN0ZWQgcm93cyDigJQgc28gaXRcbiAgICAvLyBtdXN0IHJlYnVpbGQgb24gZXZlcnkgdG9nZ2xlLiBJdCBpcyBhdCBtb3N0IHR3byBjb2x1bW5zLCBzbyB0aGlzIGlzIGNoZWFwLlxuICAgIGNvbnN0IHByZWZpeENvbHVtbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgbGV0IGNvbHMgPSBbXTtcbiAgICAgICAgaWYgKGV4cGFuZGFibGUgJiYgZXhwYW5kYWJsZS5zaG93RXhwYW5kQ29sdW1uICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgY29scyA9IG1ha2VFeHBhbmRUcmFuc2Zvcm0oY29uZmlnKShjb2xzKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzZWxlY3Rpb25UcmFuc2Zvcm0gPSByb3dTZWxlY3Rpb24gPyBtYWtlU2VsZWN0aW9uVHJhbnNmb3JtKGNvbmZpZykgOiBudWxsO1xuICAgICAgICBpZiAoc2VsZWN0aW9uVHJhbnNmb3JtKSB7XG4gICAgICAgICAgICBjb2xzID0gc2VsZWN0aW9uVHJhbnNmb3JtKGNvbHMpO1xuICAgICAgICB9XG4gICAgICAgIC8vIFJ1biB0aGUgcHJlZml4IHRocm91Z2ggdGhlIHNhbWUgaGVhZGVyL3JlbmRlciBtYXBzIHRoZSB1c2VyIGNvbHVtbnMgZ2V0IHNvXG4gICAgICAgIC8vIHRoZSBmaW5hbCBhcnJheSBpcyBieXRlLWZvci1ieXRlIHRoZSBvcmlnaW5hbCBzaW5nbGUtcGlwZWxpbmUgb3V0cHV0LlxuICAgICAgICBjb2xzID0gbWFrZUhlYWRlclRyYW5zZm9ybShjb25maWcpKGNvbHMpO1xuICAgICAgICBjb2xzID0gbWFrZVJlbmRlclRyYW5zZm9ybShzaXplKShjb2xzKTtcbiAgICAgICAgcmV0dXJuIGNvbHM7XG4gICAgfSwgW1xuICAgICAgICBzaXplLFxuICAgICAgICBleHBhbmRhYmxlLFxuICAgICAgICByb3dTZWxlY3Rpb24sXG4gICAgICAgIG1lcmdlZEV4cGFuZGVkUm93S2V5cyxcbiAgICAgICAgbWVyZ2VkU2VsZWN0ZWRSb3dLZXlzLFxuICAgICAgICBjaGVja2JveFByb3BzTWFwLFxuICAgICAgICBpc0FsbFNlbGVjdGVkLFxuICAgICAgICBpc0luZGV0ZXJtaW5hdGUsXG4gICAgICAgIHRyaWdnZXJFeHBhbmQsXG4gICAgICAgIHRyaWdnZXJTZWxlY3Rpb24sXG4gICAgICAgIHRyaWdnZXJTZWxlY3RBbGwsXG4gICAgICAgIHNvcnRlcixcbiAgICAgICAgc2V0U29ydGVyLFxuICAgICAgICBmaWx0ZXJzLFxuICAgICAgICBzZXRGaWx0ZXJzLFxuICAgICAgICBnZXRSb3dLZXksXG4gICAgXSk7XG4gICAgcmV0dXJuIHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBsZXQgY29scyA9IFsuLi5wcmVmaXhDb2x1bW5zLCAuLi5iYXNlVXNlckNvbHVtbnNdO1xuICAgICAgICBpZiAodmFyaWFudCA9PT0gJ3N0cm9rZScpIHtcbiAgICAgICAgICAgIGNvbHMgPSBtYWtlU3BhY2VyVHJhbnNmb3JtKCkoY29scyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbHM7XG4gICAgfSwgW3ByZWZpeENvbHVtbnMsIGJhc2VVc2VyQ29sdW1ucywgdmFyaWFudF0pO1xufSIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -212,17 +212,6 @@
212
212
  max-width: var(--om-spacing-400, 16px);
213
213
  min-width: var(--om-spacing-400, 16px);
214
214
  }
215
- .om-component-ui-table-stroke .om-component-ui-table-thead > tr > th.om-component-ui-table-cell--spacer:first-child,
216
- .om-component-ui-table-stroke .om-component-ui-table-thead > tr > td.om-component-ui-table-cell--spacer:first-child,
217
- .om-component-ui-table-stroke .om-component-ui-table-tbody > tr > td.om-component-ui-table-cell--spacer:first-child,
218
- .om-component-ui-table-stroke .om-component-ui-table-tbody-virtual .om-component-ui-table-cell.om-component-ui-table-cell--spacer:first-child {
219
- width: var(--om-spacing-600, 24px);
220
- max-width: var(--om-spacing-600, 24px);
221
- min-width: var(--om-spacing-600, 24px);
222
- }
223
- .om-component-ui-table-stroke .om-component-ui-table-footer {
224
- padding-inline-start: var(--om-spacing-800, 32px);
225
- }
226
215
  .om-component-ui-table .om-component-ui-table-header-cell {
227
216
  display: inline-flex;
228
217
  max-width: 100%;