@react-magma/charts 15.0.0-rc.1 → 15.0.0-rc.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.
@@ -17260,9 +17260,11 @@
17260
17260
  var BadgeColor;
17261
17261
  (function (BadgeColor) {
17262
17262
  BadgeColor["danger"] = "danger";
17263
+ BadgeColor["info"] = "info";
17263
17264
  BadgeColor["primary"] = "primary";
17264
17265
  BadgeColor["secondary"] = "secondary";
17265
17266
  BadgeColor["success"] = "success";
17267
+ BadgeColor["warning"] = "warning";
17266
17268
  BadgeColor["light"] = "light";
17267
17269
  })(BadgeColor || (BadgeColor = {}));
17268
17270
  var BadgeVariant;
@@ -17270,11 +17272,62 @@
17270
17272
  BadgeVariant["counter"] = "counter";
17271
17273
  BadgeVariant["label"] = "label";
17272
17274
  })(BadgeVariant || (BadgeVariant = {}));
17275
+ var BadgeWeight;
17276
+ (function (BadgeWeight) {
17277
+ BadgeWeight["default"] = "default";
17278
+ BadgeWeight["light"] = "light";
17279
+ })(BadgeWeight || (BadgeWeight = {}));
17280
+ function buildInverseLightWeightBadgeBackground(props) {
17281
+ switch (props.color) {
17282
+ case BadgeColor.danger:
17283
+ return curriedTransparentize(0.5, props.theme.colors.danger700);
17284
+ case BadgeColor.info:
17285
+ return curriedTransparentize(0.5, props.theme.colors.info700);
17286
+ case BadgeColor.light:
17287
+ return 'transparent';
17288
+ case BadgeColor.secondary:
17289
+ return curriedTransparentize(0.6, props.theme.colors.neutral900);
17290
+ case BadgeColor.success:
17291
+ return curriedTransparentize(0.5, props.theme.colors.success700);
17292
+ case BadgeColor.warning:
17293
+ return curriedTransparentize(0.5, props.theme.colors.warning700);
17294
+ case BadgeColor.primary:
17295
+ default:
17296
+ return curriedTransparentize(0.5, props.theme.colors.primary700);
17297
+ }
17298
+ }
17299
+ function buildLightWeightBadgeBackground(props) {
17300
+ if (props.isInverse) {
17301
+ return buildInverseLightWeightBadgeBackground(props);
17302
+ }
17303
+ switch (props.color) {
17304
+ case BadgeColor.danger:
17305
+ return props.theme.colors.danger100;
17306
+ case BadgeColor.info:
17307
+ return props.theme.colors.info100;
17308
+ case BadgeColor.light:
17309
+ return props.theme.colors.neutral100;
17310
+ case BadgeColor.secondary:
17311
+ return props.theme.colors.neutral200;
17312
+ case BadgeColor.success:
17313
+ return props.theme.colors.success100;
17314
+ case BadgeColor.warning:
17315
+ return props.theme.colors.warning100;
17316
+ case BadgeColor.primary:
17317
+ default:
17318
+ return props.theme.colors.primary100;
17319
+ }
17320
+ }
17273
17321
  function buildBadgeBackground(props) {
17322
+ if (props.weight === BadgeWeight.light) {
17323
+ return buildLightWeightBadgeBackground(props);
17324
+ }
17274
17325
  if (props.isInverse) {
17275
17326
  switch (props.color) {
17276
17327
  case BadgeColor.danger:
17277
17328
  return props.theme.colors.danger200;
17329
+ case BadgeColor.info:
17330
+ return props.theme.colors.info200;
17278
17331
  case BadgeColor.light:
17279
17332
  return 'transparent';
17280
17333
  case BadgeColor.primary:
@@ -17283,6 +17336,8 @@
17283
17336
  return props.theme.colors.neutral100;
17284
17337
  case BadgeColor.success:
17285
17338
  return props.theme.colors.success200;
17339
+ case BadgeColor.warning:
17340
+ return props.theme.colors.warning200;
17286
17341
  default:
17287
17342
  return props.theme.colors.tertiary;
17288
17343
  }
@@ -17290,6 +17345,8 @@
17290
17345
  switch (props.color) {
17291
17346
  case BadgeColor.danger:
17292
17347
  return props.theme.colors.danger;
17348
+ case BadgeColor.info:
17349
+ return props.theme.colors.info500;
17293
17350
  case BadgeColor.light:
17294
17351
  return props.theme.colors.neutral100;
17295
17352
  case BadgeColor.primary:
@@ -17298,15 +17355,61 @@
17298
17355
  return props.theme.colors.neutral700;
17299
17356
  case BadgeColor.success:
17300
17357
  return props.theme.colors.success;
17358
+ case BadgeColor.warning:
17359
+ return props.theme.colors.warning500;
17301
17360
  default:
17302
17361
  return props.theme.colors.primary;
17303
17362
  }
17304
17363
  }
17364
+ function buildInverseLightWeightBadgeTextColor(props) {
17365
+ switch (props.color) {
17366
+ case BadgeColor.danger:
17367
+ return props.theme.colors.danger200;
17368
+ case BadgeColor.info:
17369
+ return props.theme.colors.info200;
17370
+ case BadgeColor.light:
17371
+ case BadgeColor.secondary:
17372
+ return props.theme.colors.neutral100;
17373
+ case BadgeColor.success:
17374
+ return props.theme.colors.success200;
17375
+ case BadgeColor.warning:
17376
+ return props.theme.colors.warning200;
17377
+ case BadgeColor.primary:
17378
+ default:
17379
+ return props.theme.colors.primary200;
17380
+ }
17381
+ }
17382
+ function buildLightWeightBadgeTextColor(props) {
17383
+ if (props.isInverse) {
17384
+ return buildInverseLightWeightBadgeTextColor(props);
17385
+ }
17386
+ switch (props.color) {
17387
+ case BadgeColor.danger:
17388
+ return props.theme.colors.danger500;
17389
+ case BadgeColor.info:
17390
+ return props.theme.colors.info500;
17391
+ case BadgeColor.light:
17392
+ case BadgeColor.secondary:
17393
+ return props.theme.colors.neutral700;
17394
+ case BadgeColor.success:
17395
+ return props.theme.colors.success500;
17396
+ case BadgeColor.warning:
17397
+ return props.theme.colors.warning500;
17398
+ case BadgeColor.primary:
17399
+ default:
17400
+ return props.theme.colors.primary500;
17401
+ }
17402
+ }
17305
17403
  function buildBadgeTextColor(props) {
17404
+ if (props.weight === BadgeWeight.light) {
17405
+ return buildLightWeightBadgeTextColor(props);
17406
+ }
17306
17407
  if (props.isInverse) {
17307
17408
  switch (props.color) {
17308
17409
  case BadgeColor.danger:
17309
17410
  return props.theme.colors.danger700;
17411
+ case BadgeColor.info:
17412
+ return props.theme.colors.info700;
17310
17413
  case BadgeColor.light:
17311
17414
  return props.theme.colors.neutral100;
17312
17415
  case BadgeColor.primary:
@@ -17315,6 +17418,8 @@
17315
17418
  return props.theme.colors.neutral700;
17316
17419
  case BadgeColor.success:
17317
17420
  return props.theme.colors.success700;
17421
+ case BadgeColor.warning:
17422
+ return props.theme.colors.warning600;
17318
17423
  default:
17319
17424
  return props.theme.colors.primary600;
17320
17425
  }
@@ -17324,7 +17429,51 @@
17324
17429
  }
17325
17430
  return props.theme.colors.neutral100;
17326
17431
  }
17432
+ function buildInverseLightWeightBadgeBorderColor(props) {
17433
+ switch (props.color) {
17434
+ case BadgeColor.danger:
17435
+ return props.theme.colors.danger600;
17436
+ case BadgeColor.info:
17437
+ return props.theme.colors.info600;
17438
+ case BadgeColor.light:
17439
+ return curriedTransparentize(0.7, props.theme.colors.neutral100);
17440
+ case BadgeColor.success:
17441
+ return props.theme.colors.success600;
17442
+ case BadgeColor.warning:
17443
+ return props.theme.colors.warning600;
17444
+ case BadgeColor.secondary:
17445
+ return 'transparent';
17446
+ case BadgeColor.primary:
17447
+ default:
17448
+ return props.theme.colors.primary400;
17449
+ }
17450
+ }
17451
+ function buildLightWeightBadgeBorderColor(props) {
17452
+ if (props.isInverse) {
17453
+ return buildInverseLightWeightBadgeBorderColor(props);
17454
+ }
17455
+ switch (props.color) {
17456
+ case BadgeColor.danger:
17457
+ return curriedTransparentize(0.85, props.theme.colors.danger500);
17458
+ case BadgeColor.info:
17459
+ return curriedTransparentize(0.85, props.theme.colors.info500);
17460
+ case BadgeColor.light:
17461
+ return props.theme.colors.neutral300;
17462
+ case BadgeColor.success:
17463
+ return curriedTransparentize(0.85, props.theme.colors.success500);
17464
+ case BadgeColor.warning:
17465
+ return curriedTransparentize(0.85, props.theme.colors.warning500);
17466
+ case BadgeColor.secondary:
17467
+ return 'transparent';
17468
+ case BadgeColor.primary:
17469
+ default:
17470
+ return curriedTransparentize(0.85, props.theme.colors.primary500);
17471
+ }
17472
+ }
17327
17473
  function buildBadgeBorderColor(props) {
17474
+ if (props.weight === BadgeWeight.light) {
17475
+ return buildLightWeightBadgeBorderColor(props);
17476
+ }
17328
17477
  if (props.color === BadgeColor.light) {
17329
17478
  if (props.isInverse) {
17330
17479
  return curriedTransparentize(0.3, props.theme.colors.neutral100);
@@ -17334,12 +17483,20 @@
17334
17483
  return 'transparent';
17335
17484
  }
17336
17485
  var baseBadgeStyles = function baseBadgeStyles(props) {
17337
- return /*#__PURE__*/react.css("background:", buildBadgeBackground(props), ";border:1px solid;border-color:", buildBadgeBorderColor(props), ";border-radius:", props.variant === BadgeVariant.counter ? props.theme.spaceScale.spacing06 : props.theme.borderRadiusSmall, ";color:", buildBadgeTextColor(props), ";display:inline-block;font-weight:500;font-size:", props.variant === BadgeVariant.counter ? props.theme.typeScale.size02.fontSize : props.theme.typeScale.size01.fontSize, ";font-family:", props.theme.bodyFont, ";letter-spacing:", props.variant === BadgeVariant.counter ? props.theme.typeScale.size02.letterSpacing : props.theme.typeScale.size01.letterSpacing, ";line-height:", props.variant === BadgeVariant.counter ? props.theme.typeScale.size02.lineHeight : props.theme.typeScale.size01.lineHeight, ";margin:", props.variant === BadgeVariant.counter ? "0 0 0 " + props.theme.spaceScale.spacing03 : "0 " + props.theme.spaceScale.spacing03 + " 0 0", ";max-height:", props.variant === BadgeVariant.counter ? props.theme.spaceScale.spacing06 : 'auto', ";min-width:", props.theme.spaceScale.spacing06, ";padding:", props.variant === BadgeVariant.counter ? "1px " + props.theme.spaceScale.spacing02 : "3px " + props.theme.spaceScale.spacing02, ";text-align:", props.variant == BadgeVariant.counter ? 'center' : 'inherit', ";;label:baseBadgeStyles;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpRjRDIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHRyYW5zcGFyZW50aXplIH0gZnJvbSAncG9saXNoZWQnO1xyXG5pbXBvcnQgeyBUaGVtZUNvbnRleHQgfSBmcm9tICcuLi8uLi90aGVtZS9UaGVtZUNvbnRleHQnO1xyXG5leHBvcnQgdmFyIEJhZGdlQ29sb3I7XHJcbihmdW5jdGlvbiAoQmFkZ2VDb2xvcikge1xyXG4gICAgQmFkZ2VDb2xvcltcImRhbmdlclwiXSA9IFwiZGFuZ2VyXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wicHJpbWFyeVwiXSA9IFwicHJpbWFyeVwiO1xyXG4gICAgQmFkZ2VDb2xvcltcInNlY29uZGFyeVwiXSA9IFwic2Vjb25kYXJ5XCI7XHJcbiAgICBCYWRnZUNvbG9yW1wic3VjY2Vzc1wiXSA9IFwic3VjY2Vzc1wiO1xyXG4gICAgQmFkZ2VDb2xvcltcImxpZ2h0XCJdID0gXCJsaWdodFwiO1xyXG59KShCYWRnZUNvbG9yIHx8IChCYWRnZUNvbG9yID0ge30pKTtcclxuZXhwb3J0IHZhciBCYWRnZVZhcmlhbnQ7XHJcbihmdW5jdGlvbiAoQmFkZ2VWYXJpYW50KSB7XHJcbiAgICBCYWRnZVZhcmlhbnRbXCJjb3VudGVyXCJdID0gXCJjb3VudGVyXCI7XHJcbiAgICBCYWRnZVZhcmlhbnRbXCJsYWJlbFwiXSA9IFwibGFiZWxcIjtcclxufSkoQmFkZ2VWYXJpYW50IHx8IChCYWRnZVZhcmlhbnQgPSB7fSkpO1xyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRCYWRnZUJhY2tncm91bmQocHJvcHMpIHtcclxuICAgIGlmIChwcm9wcy5pc0ludmVyc2UpIHtcclxuICAgICAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjIwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICd0cmFuc3BhcmVudCc7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy50ZXJ0aWFyeTtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3MyMDA7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5O1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTtcclxuICAgIH1cclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRCYWRnZVRleHRDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NjAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczcwMDtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTYwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuY29sb3IgPT09IEJhZGdlQ29sb3IubGlnaHQpIHtcclxuICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWw3MDA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkQmFkZ2VCb3JkZXJDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmNvbG9yID09PSBCYWRnZUNvbG9yLmxpZ2h0KSB7XHJcbiAgICAgICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC4zLCBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwcm9wcy5jb2xvcjtcclxuICAgIH1cclxuICAgIHJldHVybiAndHJhbnNwYXJlbnQnO1xyXG59XHJcbmV4cG9ydCBjb25zdCBiYXNlQmFkZ2VTdHlsZXMgPSBwcm9wcyA9PiBjc3MgYFxuICBiYWNrZ3JvdW5kOiAke2J1aWxkQmFkZ2VCYWNrZ3JvdW5kKHByb3BzKX07XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICR7YnVpbGRCYWRnZUJvcmRlckNvbG9yKHByb3BzKX07XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZcclxuICAgIDogcHJvcHMudGhlbWUuYm9yZGVyUmFkaXVzU21hbGx9O1xuICBjb2xvcjogJHtidWlsZEJhZGdlVGV4dENvbG9yKHByb3BzKX07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIuZm9udFNpemVcclxuICAgIDogcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMS5mb250U2l6ZX07XG4gIGZvbnQtZmFtaWx5OiAke3Byb3BzLnRoZW1lLmJvZHlGb250fTtcbiAgbGV0dGVyLXNwYWNpbmc6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMi5sZXR0ZXJTcGFjaW5nXHJcbiAgICA6IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDEubGV0dGVyU3BhY2luZ307XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIubGluZUhlaWdodFxyXG4gICAgOiBwcm9wcy50aGVtZS50eXBlU2NhbGUuc2l6ZTAxLmxpbmVIZWlnaHR9O1xuICBtYXJnaW46ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gYDAgMCAwICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDN9YFxyXG4gICAgOiBgMCAke3Byb3BzLnRoZW1lLnNwYWNlU2NhbGUuc3BhY2luZzAzfSAwIDBgfTtcbiAgbWF4LWhlaWdodDogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiAnYXV0byd9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZ9O1xuICBwYWRkaW5nOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IGAxcHggJHtwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMn1gXHJcbiAgICA6IGAzcHggICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDJ9YH07XG4gIHRleHQtYWxpZ246ICR7cHJvcHMudmFyaWFudCA9PSBCYWRnZVZhcmlhbnQuY291bnRlciA/ICdjZW50ZXInIDogJ2luaGVyaXQnfTtcbmA7XHJcbmNvbnN0IFN0eWxlZFNwYW4gPSBzdHlsZWQuc3BhbiBgXG4gICR7YmFzZUJhZGdlU3R5bGVzfTtcbmA7XHJcbmNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZC5idXR0b24gYFxuICAke2Jhc2VCYWRnZVN0eWxlc307XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAycHggc29saWRcbiAgICAgICR7cHJvcHMgPT4gcHJvcHMuaXNJbnZlcnNlXHJcbiAgICA/IHByb3BzLnRoZW1lLmNvbG9ycy5mb2N1c0ludmVyc2VcclxuICAgIDogcHJvcHMudGhlbWUuY29sb3JzLmZvY3VzfTtcbiAgICBvdXRsaW5lLW9mZnNldDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMX07XG4gIH1cbmA7XHJcbmZ1bmN0aW9uIGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KGlzQ2xpY2thYmxlKSB7XHJcbiAgICByZXR1cm4gaXNDbGlja2FibGUgPyBTdHlsZWRCdXR0b24gOiBTdHlsZWRTcGFuO1xyXG59XHJcbmV4cG9ydCBjb25zdCBCYWRnZSA9IFJlYWN0LmZvcndhcmRSZWYoKHByb3BzLCByZWYpID0+IHtcclxuICAgIGNvbnN0IHsgY2hpbGRyZW4sIGlzSW52ZXJzZSwgb25DbGljaywgdGVzdElkLCB2YXJpYW50LCAuLi5vdGhlciB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBCYWRnZUNvbXBvbmVudCA9IGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KEJvb2xlYW4ob25DbGljaykpO1xyXG4gICAgY29uc3QgdGhlbWUgPSBSZWFjdC51c2VDb250ZXh0KFRoZW1lQ29udGV4dCk7XHJcbiAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoQmFkZ2VDb21wb25lbnQsIE9iamVjdC5hc3NpZ24oe30sIG90aGVyLCB7IFwiZGF0YS10ZXN0aWRcIjogdGVzdElkLCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgdmFyaWFudDogdmFyaWFudCA/IHZhcmlhbnQgOiBCYWRnZVZhcmlhbnQubGFiZWwsIG9uQ2xpY2s6IG9uQ2xpY2ssIHJlZjogcmVmLCB0aGVtZTogdGhlbWUgfSksIGNoaWxkcmVuKSk7XHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXX0= */"));
17486
+ return /*#__PURE__*/react.css(props.hasIcon && "align-items: center;", " background:", buildBadgeBackground(props), ";border:1px solid;border-color:", buildBadgeBorderColor(props), ";border-radius:", props.variant === BadgeVariant.counter ? props.theme.spaceScale.spacing06 : props.theme.borderRadiusSmall, ";color:", buildBadgeTextColor(props), ";display:", props.hasIcon ? 'inline-flex' : 'inline-block', ";font-weight:500;font-size:", props.variant === BadgeVariant.counter ? props.theme.typeScale.size02.fontSize : props.theme.typeScale.size01.fontSize, ";font-family:", props.theme.bodyFont, ";letter-spacing:", props.variant === BadgeVariant.counter ? props.theme.typeScale.size02.letterSpacing : props.theme.typeScale.size01.letterSpacing, ";line-height:", props.variant === BadgeVariant.counter ? props.theme.typeScale.size02.lineHeight : props.theme.typeScale.size01.lineHeight, ";margin:", props.variant === BadgeVariant.counter ? "0 0 0 " + props.theme.spaceScale.spacing03 : "0 " + props.theme.spaceScale.spacing03 + " 0 0", ";max-height:", props.variant === BadgeVariant.counter ? props.theme.spaceScale.spacing06 : 'auto', ";min-width:", props.theme.spaceScale.spacing06, ";padding:", props.variant === BadgeVariant.counter ? "1px " + props.theme.spaceScale.spacing02 : "3px " + props.theme.spaceScale.spacing02, ";text-align:", props.variant === BadgeVariant.counter ? 'center' : 'inherit', ";", props.hasIcon && "vertical-align: middle;", ";;label:baseBadgeStyles;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzTzRDIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHRyYW5zcGFyZW50aXplIH0gZnJvbSAncG9saXNoZWQnO1xyXG5pbXBvcnQgeyBUaGVtZUNvbnRleHQgfSBmcm9tICcuLi8uLi90aGVtZS9UaGVtZUNvbnRleHQnO1xyXG5leHBvcnQgdmFyIEJhZGdlQ29sb3I7XHJcbihmdW5jdGlvbiAoQmFkZ2VDb2xvcikge1xyXG4gICAgQmFkZ2VDb2xvcltcImRhbmdlclwiXSA9IFwiZGFuZ2VyXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wiaW5mb1wiXSA9IFwiaW5mb1wiO1xyXG4gICAgQmFkZ2VDb2xvcltcInByaW1hcnlcIl0gPSBcInByaW1hcnlcIjtcclxuICAgIEJhZGdlQ29sb3JbXCJzZWNvbmRhcnlcIl0gPSBcInNlY29uZGFyeVwiO1xyXG4gICAgQmFkZ2VDb2xvcltcInN1Y2Nlc3NcIl0gPSBcInN1Y2Nlc3NcIjtcclxuICAgIEJhZGdlQ29sb3JbXCJ3YXJuaW5nXCJdID0gXCJ3YXJuaW5nXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wibGlnaHRcIl0gPSBcImxpZ2h0XCI7XHJcbn0pKEJhZGdlQ29sb3IgfHwgKEJhZGdlQ29sb3IgPSB7fSkpO1xyXG5leHBvcnQgdmFyIEJhZGdlVmFyaWFudDtcclxuKGZ1bmN0aW9uIChCYWRnZVZhcmlhbnQpIHtcclxuICAgIEJhZGdlVmFyaWFudFtcImNvdW50ZXJcIl0gPSBcImNvdW50ZXJcIjtcclxuICAgIEJhZGdlVmFyaWFudFtcImxhYmVsXCJdID0gXCJsYWJlbFwiO1xyXG59KShCYWRnZVZhcmlhbnQgfHwgKEJhZGdlVmFyaWFudCA9IHt9KSk7XHJcbmV4cG9ydCB2YXIgQmFkZ2VXZWlnaHQ7XHJcbihmdW5jdGlvbiAoQmFkZ2VXZWlnaHQpIHtcclxuICAgIEJhZGdlV2VpZ2h0W1wiZGVmYXVsdFwiXSA9IFwiZGVmYXVsdFwiO1xyXG4gICAgQmFkZ2VXZWlnaHRbXCJsaWdodFwiXSA9IFwibGlnaHRcIjtcclxufSkoQmFkZ2VXZWlnaHQgfHwgKEJhZGdlV2VpZ2h0ID0ge30pKTtcclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKSB7XHJcbiAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjcwMCk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmluZm86XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjUsIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNzAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiAndHJhbnNwYXJlbnQnO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjYsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsOTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M3MDApO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC41LCBwcm9wcy50aGVtZS5jb2xvcnMud2FybmluZzcwMCk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk3MDApO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKTtcclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjEwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmcxMDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5MTAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlQmFja2dyb3VuZChwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLndlaWdodCA9PT0gQmFkZ2VXZWlnaHQubGlnaHQpIHtcclxuICAgICAgICByZXR1cm4gYnVpbGRMaWdodFdlaWdodEJhZGdlQmFja2dyb3VuZChwcm9wcyk7XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5kYW5nZXIyMDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5pbmZvOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMjAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczIwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLndhcm5pbmc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmcyMDA7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zdWNjZXNzOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLndhcm5pbmc6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMud2FybmluZzUwMDtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk7XHJcbiAgICB9XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpIHtcclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iud2FybmluZzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nMjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTIwMDtcclxuICAgIH1cclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRMaWdodFdlaWdodEJhZGdlVGV4dENvbG9yKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5pbmZvOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmluZm81MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmc1MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NTAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlVGV4dENvbG9yKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMud2VpZ2h0ID09PSBCYWRnZVdlaWdodC5saWdodCkge1xyXG4gICAgICAgIHJldHVybiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuaW5mbzcwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTYwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M3MDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nNjAwO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NjAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5jb2xvciA9PT0gQmFkZ2VDb2xvci5saWdodCkge1xyXG4gICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgIH1cclxuICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRJbnZlcnNlTGlnaHRXZWlnaHRCYWRnZUJvcmRlckNvbG9yKHByb3BzKSB7XHJcbiAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5kYW5nZXI2MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmluZm86XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuaW5mbzYwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjcsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmc2MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgcmV0dXJuICd0cmFuc3BhcmVudCc7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NDAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VCb3JkZXJDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHJldHVybiBidWlsZEludmVyc2VMaWdodFdlaWdodEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjg1LCBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDMwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iud2FybmluZzpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC44NSwgcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk1MDApO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpIHtcclxuICAgIGlmIChwcm9wcy53ZWlnaHQgPT09IEJhZGdlV2VpZ2h0LmxpZ2h0KSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkTGlnaHRXZWlnaHRCYWRnZUJvcmRlckNvbG9yKHByb3BzKTtcclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5jb2xvciA9PT0gQmFkZ2VDb2xvci5saWdodCkge1xyXG4gICAgICAgIGlmIChwcm9wcy5pc0ludmVyc2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuMywgcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJvcHMuY29sb3I7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxufVxyXG5leHBvcnQgY29uc3QgYmFzZUJhZGdlU3R5bGVzID0gcHJvcHMgPT4gY3NzIGBcbiAgJHtwcm9wcy5oYXNJY29uICYmIGBhbGlnbi1pdGVtczogY2VudGVyO2B9XG4gIGJhY2tncm91bmQ6ICR7YnVpbGRCYWRnZUJhY2tncm91bmQocHJvcHMpfTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJHtidWlsZEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpfTtcbiAgYm9yZGVyLXJhZGl1czogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiBwcm9wcy50aGVtZS5ib3JkZXJSYWRpdXNTbWFsbH07XG4gIGNvbG9yOiAke2J1aWxkQmFkZ2VUZXh0Q29sb3IocHJvcHMpfTtcbiAgZGlzcGxheTogJHtwcm9wcy5oYXNJY29uID8gJ2lubGluZS1mbGV4JyA6ICdpbmxpbmUtYmxvY2snfTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIuZm9udFNpemVcclxuICAgIDogcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMS5mb250U2l6ZX07XG4gIGZvbnQtZmFtaWx5OiAke3Byb3BzLnRoZW1lLmJvZHlGb250fTtcbiAgbGV0dGVyLXNwYWNpbmc6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMi5sZXR0ZXJTcGFjaW5nXHJcbiAgICA6IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDEubGV0dGVyU3BhY2luZ307XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIubGluZUhlaWdodFxyXG4gICAgOiBwcm9wcy50aGVtZS50eXBlU2NhbGUuc2l6ZTAxLmxpbmVIZWlnaHR9O1xuICBtYXJnaW46ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gYDAgMCAwICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDN9YFxyXG4gICAgOiBgMCAke3Byb3BzLnRoZW1lLnNwYWNlU2NhbGUuc3BhY2luZzAzfSAwIDBgfTtcbiAgbWF4LWhlaWdodDogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiAnYXV0byd9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZ9O1xuICBwYWRkaW5nOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IGAxcHggJHtwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMn1gXHJcbiAgICA6IGAzcHggICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDJ9YH07XG4gIHRleHQtYWxpZ246ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXIgPyAnY2VudGVyJyA6ICdpbmhlcml0J307XG4gICR7cHJvcHMuaGFzSWNvbiAmJiBgdmVydGljYWwtYWxpZ246IG1pZGRsZTtgfVxuYDtcclxuY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZC5zcGFuIGBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMuaWNvblBvc2l0aW9uID09PSAncmlnaHQnID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDIgOiAwfTtcbiAgbWFyZ2luLXJpZ2h0OiAke3Byb3BzID0+IHByb3BzLmljb25Qb3NpdGlvbiA9PT0gJ2xlZnQnID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDIgOiAwfTtcblxuICBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5gO1xyXG5jb25zdCBTdHlsZWRTcGFuID0gc3R5bGVkLnNwYW4gYFxuICAke2Jhc2VCYWRnZVN0eWxlc307XG5gO1xyXG5jb25zdCBTdHlsZWRCdXR0b24gPSBzdHlsZWQuYnV0dG9uIGBcbiAgJHtiYXNlQmFkZ2VTdHlsZXN9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkXG4gICAgICAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyBwcm9wcy50aGVtZS5jb2xvcnMuZm9jdXNJbnZlcnNlXHJcbiAgICA6IHByb3BzLnRoZW1lLmNvbG9ycy5mb2N1c307XG4gICAgb3V0bGluZS1vZmZzZXQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDF9O1xuICB9XG5gO1xyXG5mdW5jdGlvbiBnZXRTdHlsZWRCYWRnZUNvbXBvbmVudChpc0NsaWNrYWJsZSkge1xyXG4gICAgcmV0dXJuIGlzQ2xpY2thYmxlID8gU3R5bGVkQnV0dG9uIDogU3R5bGVkU3BhbjtcclxufVxyXG5leHBvcnQgY29uc3QgQmFkZ2UgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgcmVmKSA9PiB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBpc0ludmVyc2UsIGxlZnRJY29uLCBvbkNsaWNrLCByaWdodEljb24sIHRlc3RJZCwgdmFyaWFudCwgd2VpZ2h0LCAuLi5vdGhlciB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBCYWRnZUNvbXBvbmVudCA9IGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KEJvb2xlYW4ob25DbGljaykpO1xyXG4gICAgY29uc3QgdGhlbWUgPSBSZWFjdC51c2VDb250ZXh0KFRoZW1lQ29udGV4dCk7XHJcbiAgICBmdW5jdGlvbiByZW5kZXJCYWRnZUljb24oYmFkZ2VJY29uKSB7XHJcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNsb25lRWxlbWVudChiYWRnZUljb24sIHtcclxuICAgICAgICAgICAgc2l6ZTogYmFkZ2VJY29uLnByb3BzLnNpemUgfHwgdGhlbWUuaWNvblNpemVzLnhTbWFsbCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIGNvbnN0IHJlbmRlcmVkTGVmdEljb24gPSBsZWZ0SWNvbiA/IHJlbmRlckJhZGdlSWNvbihsZWZ0SWNvbikgOiBudWxsO1xyXG4gICAgY29uc3QgcmVuZGVyZWRSaWdodEljb24gPSByaWdodEljb24gPyByZW5kZXJCYWRnZUljb24ocmlnaHRJY29uKSA6IG51bGw7XHJcbiAgICBjb25zdCBoYXNJY29uID0gQm9vbGVhbihyZW5kZXJlZExlZnRJY29uIHx8IHJlbmRlcmVkUmlnaHRJY29uKTtcclxuICAgIGZ1bmN0aW9uIHJlbmRlclN0eWxlZEljb24oYmFkZ2VJY29uLCBpY29uUG9zaXRpb24pIHtcclxuICAgICAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoU3R5bGVkSWNvbiwgeyBpY29uUG9zaXRpb246IGljb25Qb3NpdGlvbiwgdGhlbWU6IHRoZW1lIH0sIGJhZGdlSWNvbikpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KEJhZGdlQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCwgaGFzSWNvbjogaGFzSWNvbiwgaXNJbnZlcnNlOiBpc0ludmVyc2UsIHZhcmlhbnQ6IHZhcmlhbnQgPyB2YXJpYW50IDogQmFkZ2VWYXJpYW50LmxhYmVsLCB3ZWlnaHQ6IHdlaWdodCA/IHdlaWdodCA6IEJhZGdlV2VpZ2h0LmRlZmF1bHQsIG9uQ2xpY2s6IG9uQ2xpY2ssIHJlZjogcmVmLCB0aGVtZTogdGhlbWUgfSksXHJcbiAgICAgICAgcmVuZGVyZWRMZWZ0SWNvbiAmJiByZW5kZXJTdHlsZWRJY29uKHJlbmRlcmVkTGVmdEljb24sICdsZWZ0JyksXHJcbiAgICAgICAgY2hpbGRyZW4sXHJcbiAgICAgICAgcmVuZGVyZWRSaWdodEljb24gJiYgcmVuZGVyU3R5bGVkSWNvbihyZW5kZXJlZFJpZ2h0SWNvbiwgJ3JpZ2h0JykpKTtcclxufSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdfQ== */"));
17338
17487
  };
17488
+ /*#__PURE__*/createStyled("span", {
17489
+ target: "e6vy9oh2",
17490
+ label: "StyledIcon"
17491
+ })("display:inline-flex;flex-shrink:0;line-height:0;margin-left:", function (props) {
17492
+ return props.iconPosition === 'right' ? props.theme.spaceScale.spacing02 : 0;
17493
+ }, ";margin-right:", function (props) {
17494
+ return props.iconPosition === 'left' ? props.theme.spaceScale.spacing02 : 0;
17495
+ }, ";svg{display:block;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3UStCIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHRyYW5zcGFyZW50aXplIH0gZnJvbSAncG9saXNoZWQnO1xyXG5pbXBvcnQgeyBUaGVtZUNvbnRleHQgfSBmcm9tICcuLi8uLi90aGVtZS9UaGVtZUNvbnRleHQnO1xyXG5leHBvcnQgdmFyIEJhZGdlQ29sb3I7XHJcbihmdW5jdGlvbiAoQmFkZ2VDb2xvcikge1xyXG4gICAgQmFkZ2VDb2xvcltcImRhbmdlclwiXSA9IFwiZGFuZ2VyXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wiaW5mb1wiXSA9IFwiaW5mb1wiO1xyXG4gICAgQmFkZ2VDb2xvcltcInByaW1hcnlcIl0gPSBcInByaW1hcnlcIjtcclxuICAgIEJhZGdlQ29sb3JbXCJzZWNvbmRhcnlcIl0gPSBcInNlY29uZGFyeVwiO1xyXG4gICAgQmFkZ2VDb2xvcltcInN1Y2Nlc3NcIl0gPSBcInN1Y2Nlc3NcIjtcclxuICAgIEJhZGdlQ29sb3JbXCJ3YXJuaW5nXCJdID0gXCJ3YXJuaW5nXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wibGlnaHRcIl0gPSBcImxpZ2h0XCI7XHJcbn0pKEJhZGdlQ29sb3IgfHwgKEJhZGdlQ29sb3IgPSB7fSkpO1xyXG5leHBvcnQgdmFyIEJhZGdlVmFyaWFudDtcclxuKGZ1bmN0aW9uIChCYWRnZVZhcmlhbnQpIHtcclxuICAgIEJhZGdlVmFyaWFudFtcImNvdW50ZXJcIl0gPSBcImNvdW50ZXJcIjtcclxuICAgIEJhZGdlVmFyaWFudFtcImxhYmVsXCJdID0gXCJsYWJlbFwiO1xyXG59KShCYWRnZVZhcmlhbnQgfHwgKEJhZGdlVmFyaWFudCA9IHt9KSk7XHJcbmV4cG9ydCB2YXIgQmFkZ2VXZWlnaHQ7XHJcbihmdW5jdGlvbiAoQmFkZ2VXZWlnaHQpIHtcclxuICAgIEJhZGdlV2VpZ2h0W1wiZGVmYXVsdFwiXSA9IFwiZGVmYXVsdFwiO1xyXG4gICAgQmFkZ2VXZWlnaHRbXCJsaWdodFwiXSA9IFwibGlnaHRcIjtcclxufSkoQmFkZ2VXZWlnaHQgfHwgKEJhZGdlV2VpZ2h0ID0ge30pKTtcclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKSB7XHJcbiAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjcwMCk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmluZm86XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjUsIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNzAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiAndHJhbnNwYXJlbnQnO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjYsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsOTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M3MDApO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC41LCBwcm9wcy50aGVtZS5jb2xvcnMud2FybmluZzcwMCk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk3MDApO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKTtcclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjEwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmcxMDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5MTAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlQmFja2dyb3VuZChwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLndlaWdodCA9PT0gQmFkZ2VXZWlnaHQubGlnaHQpIHtcclxuICAgICAgICByZXR1cm4gYnVpbGRMaWdodFdlaWdodEJhZGdlQmFja2dyb3VuZChwcm9wcyk7XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5kYW5nZXIyMDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5pbmZvOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMjAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczIwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLndhcm5pbmc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmcyMDA7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zdWNjZXNzOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLndhcm5pbmc6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMud2FybmluZzUwMDtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk7XHJcbiAgICB9XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpIHtcclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iud2FybmluZzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nMjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTIwMDtcclxuICAgIH1cclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRMaWdodFdlaWdodEJhZGdlVGV4dENvbG9yKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5pbmZvOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmluZm81MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmc1MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NTAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlVGV4dENvbG9yKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMud2VpZ2h0ID09PSBCYWRnZVdlaWdodC5saWdodCkge1xyXG4gICAgICAgIHJldHVybiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuaW5mbzcwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTYwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M3MDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nNjAwO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NjAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5jb2xvciA9PT0gQmFkZ2VDb2xvci5saWdodCkge1xyXG4gICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgIH1cclxuICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRJbnZlcnNlTGlnaHRXZWlnaHRCYWRnZUJvcmRlckNvbG9yKHByb3BzKSB7XHJcbiAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5kYW5nZXI2MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmluZm86XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuaW5mbzYwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjcsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmc2MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgcmV0dXJuICd0cmFuc3BhcmVudCc7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NDAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VCb3JkZXJDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHJldHVybiBidWlsZEludmVyc2VMaWdodFdlaWdodEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjg1LCBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDMwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iud2FybmluZzpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC44NSwgcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk1MDApO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpIHtcclxuICAgIGlmIChwcm9wcy53ZWlnaHQgPT09IEJhZGdlV2VpZ2h0LmxpZ2h0KSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkTGlnaHRXZWlnaHRCYWRnZUJvcmRlckNvbG9yKHByb3BzKTtcclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5jb2xvciA9PT0gQmFkZ2VDb2xvci5saWdodCkge1xyXG4gICAgICAgIGlmIChwcm9wcy5pc0ludmVyc2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuMywgcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJvcHMuY29sb3I7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxufVxyXG5leHBvcnQgY29uc3QgYmFzZUJhZGdlU3R5bGVzID0gcHJvcHMgPT4gY3NzIGBcbiAgJHtwcm9wcy5oYXNJY29uICYmIGBhbGlnbi1pdGVtczogY2VudGVyO2B9XG4gIGJhY2tncm91bmQ6ICR7YnVpbGRCYWRnZUJhY2tncm91bmQocHJvcHMpfTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJHtidWlsZEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpfTtcbiAgYm9yZGVyLXJhZGl1czogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiBwcm9wcy50aGVtZS5ib3JkZXJSYWRpdXNTbWFsbH07XG4gIGNvbG9yOiAke2J1aWxkQmFkZ2VUZXh0Q29sb3IocHJvcHMpfTtcbiAgZGlzcGxheTogJHtwcm9wcy5oYXNJY29uID8gJ2lubGluZS1mbGV4JyA6ICdpbmxpbmUtYmxvY2snfTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIuZm9udFNpemVcclxuICAgIDogcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMS5mb250U2l6ZX07XG4gIGZvbnQtZmFtaWx5OiAke3Byb3BzLnRoZW1lLmJvZHlGb250fTtcbiAgbGV0dGVyLXNwYWNpbmc6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMi5sZXR0ZXJTcGFjaW5nXHJcbiAgICA6IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDEubGV0dGVyU3BhY2luZ307XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIubGluZUhlaWdodFxyXG4gICAgOiBwcm9wcy50aGVtZS50eXBlU2NhbGUuc2l6ZTAxLmxpbmVIZWlnaHR9O1xuICBtYXJnaW46ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gYDAgMCAwICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDN9YFxyXG4gICAgOiBgMCAke3Byb3BzLnRoZW1lLnNwYWNlU2NhbGUuc3BhY2luZzAzfSAwIDBgfTtcbiAgbWF4LWhlaWdodDogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiAnYXV0byd9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZ9O1xuICBwYWRkaW5nOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IGAxcHggJHtwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMn1gXHJcbiAgICA6IGAzcHggICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDJ9YH07XG4gIHRleHQtYWxpZ246ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXIgPyAnY2VudGVyJyA6ICdpbmhlcml0J307XG4gICR7cHJvcHMuaGFzSWNvbiAmJiBgdmVydGljYWwtYWxpZ246IG1pZGRsZTtgfVxuYDtcclxuY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZC5zcGFuIGBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMuaWNvblBvc2l0aW9uID09PSAncmlnaHQnID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDIgOiAwfTtcbiAgbWFyZ2luLXJpZ2h0OiAke3Byb3BzID0+IHByb3BzLmljb25Qb3NpdGlvbiA9PT0gJ2xlZnQnID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDIgOiAwfTtcblxuICBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5gO1xyXG5jb25zdCBTdHlsZWRTcGFuID0gc3R5bGVkLnNwYW4gYFxuICAke2Jhc2VCYWRnZVN0eWxlc307XG5gO1xyXG5jb25zdCBTdHlsZWRCdXR0b24gPSBzdHlsZWQuYnV0dG9uIGBcbiAgJHtiYXNlQmFkZ2VTdHlsZXN9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkXG4gICAgICAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyBwcm9wcy50aGVtZS5jb2xvcnMuZm9jdXNJbnZlcnNlXHJcbiAgICA6IHByb3BzLnRoZW1lLmNvbG9ycy5mb2N1c307XG4gICAgb3V0bGluZS1vZmZzZXQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDF9O1xuICB9XG5gO1xyXG5mdW5jdGlvbiBnZXRTdHlsZWRCYWRnZUNvbXBvbmVudChpc0NsaWNrYWJsZSkge1xyXG4gICAgcmV0dXJuIGlzQ2xpY2thYmxlID8gU3R5bGVkQnV0dG9uIDogU3R5bGVkU3BhbjtcclxufVxyXG5leHBvcnQgY29uc3QgQmFkZ2UgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgcmVmKSA9PiB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBpc0ludmVyc2UsIGxlZnRJY29uLCBvbkNsaWNrLCByaWdodEljb24sIHRlc3RJZCwgdmFyaWFudCwgd2VpZ2h0LCAuLi5vdGhlciB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBCYWRnZUNvbXBvbmVudCA9IGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KEJvb2xlYW4ob25DbGljaykpO1xyXG4gICAgY29uc3QgdGhlbWUgPSBSZWFjdC51c2VDb250ZXh0KFRoZW1lQ29udGV4dCk7XHJcbiAgICBmdW5jdGlvbiByZW5kZXJCYWRnZUljb24oYmFkZ2VJY29uKSB7XHJcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNsb25lRWxlbWVudChiYWRnZUljb24sIHtcclxuICAgICAgICAgICAgc2l6ZTogYmFkZ2VJY29uLnByb3BzLnNpemUgfHwgdGhlbWUuaWNvblNpemVzLnhTbWFsbCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIGNvbnN0IHJlbmRlcmVkTGVmdEljb24gPSBsZWZ0SWNvbiA/IHJlbmRlckJhZGdlSWNvbihsZWZ0SWNvbikgOiBudWxsO1xyXG4gICAgY29uc3QgcmVuZGVyZWRSaWdodEljb24gPSByaWdodEljb24gPyByZW5kZXJCYWRnZUljb24ocmlnaHRJY29uKSA6IG51bGw7XHJcbiAgICBjb25zdCBoYXNJY29uID0gQm9vbGVhbihyZW5kZXJlZExlZnRJY29uIHx8IHJlbmRlcmVkUmlnaHRJY29uKTtcclxuICAgIGZ1bmN0aW9uIHJlbmRlclN0eWxlZEljb24oYmFkZ2VJY29uLCBpY29uUG9zaXRpb24pIHtcclxuICAgICAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoU3R5bGVkSWNvbiwgeyBpY29uUG9zaXRpb246IGljb25Qb3NpdGlvbiwgdGhlbWU6IHRoZW1lIH0sIGJhZGdlSWNvbikpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KEJhZGdlQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCwgaGFzSWNvbjogaGFzSWNvbiwgaXNJbnZlcnNlOiBpc0ludmVyc2UsIHZhcmlhbnQ6IHZhcmlhbnQgPyB2YXJpYW50IDogQmFkZ2VWYXJpYW50LmxhYmVsLCB3ZWlnaHQ6IHdlaWdodCA/IHdlaWdodCA6IEJhZGdlV2VpZ2h0LmRlZmF1bHQsIG9uQ2xpY2s6IG9uQ2xpY2ssIHJlZjogcmVmLCB0aGVtZTogdGhlbWUgfSksXHJcbiAgICAgICAgcmVuZGVyZWRMZWZ0SWNvbiAmJiByZW5kZXJTdHlsZWRJY29uKHJlbmRlcmVkTGVmdEljb24sICdsZWZ0JyksXHJcbiAgICAgICAgY2hpbGRyZW4sXHJcbiAgICAgICAgcmVuZGVyZWRSaWdodEljb24gJiYgcmVuZGVyU3R5bGVkSWNvbihyZW5kZXJlZFJpZ2h0SWNvbiwgJ3JpZ2h0JykpKTtcclxufSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdfQ== */"));
17339
17496
  /*#__PURE__*/createStyled("span", {
17340
17497
  target: "e6vy9oh1",
17341
17498
  label: "StyledSpan"
17342
- })(baseBadgeStyles, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpSCtCIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHRyYW5zcGFyZW50aXplIH0gZnJvbSAncG9saXNoZWQnO1xyXG5pbXBvcnQgeyBUaGVtZUNvbnRleHQgfSBmcm9tICcuLi8uLi90aGVtZS9UaGVtZUNvbnRleHQnO1xyXG5leHBvcnQgdmFyIEJhZGdlQ29sb3I7XHJcbihmdW5jdGlvbiAoQmFkZ2VDb2xvcikge1xyXG4gICAgQmFkZ2VDb2xvcltcImRhbmdlclwiXSA9IFwiZGFuZ2VyXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wicHJpbWFyeVwiXSA9IFwicHJpbWFyeVwiO1xyXG4gICAgQmFkZ2VDb2xvcltcInNlY29uZGFyeVwiXSA9IFwic2Vjb25kYXJ5XCI7XHJcbiAgICBCYWRnZUNvbG9yW1wic3VjY2Vzc1wiXSA9IFwic3VjY2Vzc1wiO1xyXG4gICAgQmFkZ2VDb2xvcltcImxpZ2h0XCJdID0gXCJsaWdodFwiO1xyXG59KShCYWRnZUNvbG9yIHx8IChCYWRnZUNvbG9yID0ge30pKTtcclxuZXhwb3J0IHZhciBCYWRnZVZhcmlhbnQ7XHJcbihmdW5jdGlvbiAoQmFkZ2VWYXJpYW50KSB7XHJcbiAgICBCYWRnZVZhcmlhbnRbXCJjb3VudGVyXCJdID0gXCJjb3VudGVyXCI7XHJcbiAgICBCYWRnZVZhcmlhbnRbXCJsYWJlbFwiXSA9IFwibGFiZWxcIjtcclxufSkoQmFkZ2VWYXJpYW50IHx8IChCYWRnZVZhcmlhbnQgPSB7fSkpO1xyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRCYWRnZUJhY2tncm91bmQocHJvcHMpIHtcclxuICAgIGlmIChwcm9wcy5pc0ludmVyc2UpIHtcclxuICAgICAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjIwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICd0cmFuc3BhcmVudCc7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy50ZXJ0aWFyeTtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3MyMDA7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5O1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTtcclxuICAgIH1cclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRCYWRnZVRleHRDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NjAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczcwMDtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTYwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuY29sb3IgPT09IEJhZGdlQ29sb3IubGlnaHQpIHtcclxuICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWw3MDA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkQmFkZ2VCb3JkZXJDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmNvbG9yID09PSBCYWRnZUNvbG9yLmxpZ2h0KSB7XHJcbiAgICAgICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC4zLCBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwcm9wcy5jb2xvcjtcclxuICAgIH1cclxuICAgIHJldHVybiAndHJhbnNwYXJlbnQnO1xyXG59XHJcbmV4cG9ydCBjb25zdCBiYXNlQmFkZ2VTdHlsZXMgPSBwcm9wcyA9PiBjc3MgYFxuICBiYWNrZ3JvdW5kOiAke2J1aWxkQmFkZ2VCYWNrZ3JvdW5kKHByb3BzKX07XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICR7YnVpbGRCYWRnZUJvcmRlckNvbG9yKHByb3BzKX07XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZcclxuICAgIDogcHJvcHMudGhlbWUuYm9yZGVyUmFkaXVzU21hbGx9O1xuICBjb2xvcjogJHtidWlsZEJhZGdlVGV4dENvbG9yKHByb3BzKX07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIuZm9udFNpemVcclxuICAgIDogcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMS5mb250U2l6ZX07XG4gIGZvbnQtZmFtaWx5OiAke3Byb3BzLnRoZW1lLmJvZHlGb250fTtcbiAgbGV0dGVyLXNwYWNpbmc6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMi5sZXR0ZXJTcGFjaW5nXHJcbiAgICA6IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDEubGV0dGVyU3BhY2luZ307XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIubGluZUhlaWdodFxyXG4gICAgOiBwcm9wcy50aGVtZS50eXBlU2NhbGUuc2l6ZTAxLmxpbmVIZWlnaHR9O1xuICBtYXJnaW46ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gYDAgMCAwICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDN9YFxyXG4gICAgOiBgMCAke3Byb3BzLnRoZW1lLnNwYWNlU2NhbGUuc3BhY2luZzAzfSAwIDBgfTtcbiAgbWF4LWhlaWdodDogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiAnYXV0byd9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZ9O1xuICBwYWRkaW5nOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IGAxcHggJHtwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMn1gXHJcbiAgICA6IGAzcHggICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDJ9YH07XG4gIHRleHQtYWxpZ246ICR7cHJvcHMudmFyaWFudCA9PSBCYWRnZVZhcmlhbnQuY291bnRlciA/ICdjZW50ZXInIDogJ2luaGVyaXQnfTtcbmA7XHJcbmNvbnN0IFN0eWxlZFNwYW4gPSBzdHlsZWQuc3BhbiBgXG4gICR7YmFzZUJhZGdlU3R5bGVzfTtcbmA7XHJcbmNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZC5idXR0b24gYFxuICAke2Jhc2VCYWRnZVN0eWxlc307XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAycHggc29saWRcbiAgICAgICR7cHJvcHMgPT4gcHJvcHMuaXNJbnZlcnNlXHJcbiAgICA/IHByb3BzLnRoZW1lLmNvbG9ycy5mb2N1c0ludmVyc2VcclxuICAgIDogcHJvcHMudGhlbWUuY29sb3JzLmZvY3VzfTtcbiAgICBvdXRsaW5lLW9mZnNldDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMX07XG4gIH1cbmA7XHJcbmZ1bmN0aW9uIGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KGlzQ2xpY2thYmxlKSB7XHJcbiAgICByZXR1cm4gaXNDbGlja2FibGUgPyBTdHlsZWRCdXR0b24gOiBTdHlsZWRTcGFuO1xyXG59XHJcbmV4cG9ydCBjb25zdCBCYWRnZSA9IFJlYWN0LmZvcndhcmRSZWYoKHByb3BzLCByZWYpID0+IHtcclxuICAgIGNvbnN0IHsgY2hpbGRyZW4sIGlzSW52ZXJzZSwgb25DbGljaywgdGVzdElkLCB2YXJpYW50LCAuLi5vdGhlciB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBCYWRnZUNvbXBvbmVudCA9IGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KEJvb2xlYW4ob25DbGljaykpO1xyXG4gICAgY29uc3QgdGhlbWUgPSBSZWFjdC51c2VDb250ZXh0KFRoZW1lQ29udGV4dCk7XHJcbiAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoQmFkZ2VDb21wb25lbnQsIE9iamVjdC5hc3NpZ24oe30sIG90aGVyLCB7IFwiZGF0YS10ZXN0aWRcIjogdGVzdElkLCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgdmFyaWFudDogdmFyaWFudCA/IHZhcmlhbnQgOiBCYWRnZVZhcmlhbnQubGFiZWwsIG9uQ2xpY2s6IG9uQ2xpY2ssIHJlZjogcmVmLCB0aGVtZTogdGhlbWUgfSksIGNoaWxkcmVuKSk7XHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXX0= */"));
17499
+ })(baseBadgeStyles, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtUitCIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHRyYW5zcGFyZW50aXplIH0gZnJvbSAncG9saXNoZWQnO1xyXG5pbXBvcnQgeyBUaGVtZUNvbnRleHQgfSBmcm9tICcuLi8uLi90aGVtZS9UaGVtZUNvbnRleHQnO1xyXG5leHBvcnQgdmFyIEJhZGdlQ29sb3I7XHJcbihmdW5jdGlvbiAoQmFkZ2VDb2xvcikge1xyXG4gICAgQmFkZ2VDb2xvcltcImRhbmdlclwiXSA9IFwiZGFuZ2VyXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wiaW5mb1wiXSA9IFwiaW5mb1wiO1xyXG4gICAgQmFkZ2VDb2xvcltcInByaW1hcnlcIl0gPSBcInByaW1hcnlcIjtcclxuICAgIEJhZGdlQ29sb3JbXCJzZWNvbmRhcnlcIl0gPSBcInNlY29uZGFyeVwiO1xyXG4gICAgQmFkZ2VDb2xvcltcInN1Y2Nlc3NcIl0gPSBcInN1Y2Nlc3NcIjtcclxuICAgIEJhZGdlQ29sb3JbXCJ3YXJuaW5nXCJdID0gXCJ3YXJuaW5nXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wibGlnaHRcIl0gPSBcImxpZ2h0XCI7XHJcbn0pKEJhZGdlQ29sb3IgfHwgKEJhZGdlQ29sb3IgPSB7fSkpO1xyXG5leHBvcnQgdmFyIEJhZGdlVmFyaWFudDtcclxuKGZ1bmN0aW9uIChCYWRnZVZhcmlhbnQpIHtcclxuICAgIEJhZGdlVmFyaWFudFtcImNvdW50ZXJcIl0gPSBcImNvdW50ZXJcIjtcclxuICAgIEJhZGdlVmFyaWFudFtcImxhYmVsXCJdID0gXCJsYWJlbFwiO1xyXG59KShCYWRnZVZhcmlhbnQgfHwgKEJhZGdlVmFyaWFudCA9IHt9KSk7XHJcbmV4cG9ydCB2YXIgQmFkZ2VXZWlnaHQ7XHJcbihmdW5jdGlvbiAoQmFkZ2VXZWlnaHQpIHtcclxuICAgIEJhZGdlV2VpZ2h0W1wiZGVmYXVsdFwiXSA9IFwiZGVmYXVsdFwiO1xyXG4gICAgQmFkZ2VXZWlnaHRbXCJsaWdodFwiXSA9IFwibGlnaHRcIjtcclxufSkoQmFkZ2VXZWlnaHQgfHwgKEJhZGdlV2VpZ2h0ID0ge30pKTtcclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKSB7XHJcbiAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjcwMCk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmluZm86XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjUsIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNzAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiAndHJhbnNwYXJlbnQnO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjYsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsOTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M3MDApO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC41LCBwcm9wcy50aGVtZS5jb2xvcnMud2FybmluZzcwMCk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk3MDApO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKTtcclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjEwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmcxMDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5MTAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlQmFja2dyb3VuZChwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLndlaWdodCA9PT0gQmFkZ2VXZWlnaHQubGlnaHQpIHtcclxuICAgICAgICByZXR1cm4gYnVpbGRMaWdodFdlaWdodEJhZGdlQmFja2dyb3VuZChwcm9wcyk7XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5kYW5nZXIyMDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5pbmZvOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMjAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczIwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLndhcm5pbmc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmcyMDA7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zdWNjZXNzOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLndhcm5pbmc6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMud2FybmluZzUwMDtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk7XHJcbiAgICB9XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpIHtcclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iud2FybmluZzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nMjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTIwMDtcclxuICAgIH1cclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRMaWdodFdlaWdodEJhZGdlVGV4dENvbG9yKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5pbmZvOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmluZm81MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmc1MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NTAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlVGV4dENvbG9yKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMud2VpZ2h0ID09PSBCYWRnZVdlaWdodC5saWdodCkge1xyXG4gICAgICAgIHJldHVybiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuaW5mbzcwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTYwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M3MDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nNjAwO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NjAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5jb2xvciA9PT0gQmFkZ2VDb2xvci5saWdodCkge1xyXG4gICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgIH1cclxuICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRJbnZlcnNlTGlnaHRXZWlnaHRCYWRnZUJvcmRlckNvbG9yKHByb3BzKSB7XHJcbiAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5kYW5nZXI2MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmluZm86XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuaW5mbzYwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjcsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmc2MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgcmV0dXJuICd0cmFuc3BhcmVudCc7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NDAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VCb3JkZXJDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHJldHVybiBidWlsZEludmVyc2VMaWdodFdlaWdodEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjg1LCBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDMwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iud2FybmluZzpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC44NSwgcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk1MDApO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpIHtcclxuICAgIGlmIChwcm9wcy53ZWlnaHQgPT09IEJhZGdlV2VpZ2h0LmxpZ2h0KSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkTGlnaHRXZWlnaHRCYWRnZUJvcmRlckNvbG9yKHByb3BzKTtcclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5jb2xvciA9PT0gQmFkZ2VDb2xvci5saWdodCkge1xyXG4gICAgICAgIGlmIChwcm9wcy5pc0ludmVyc2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuMywgcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJvcHMuY29sb3I7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxufVxyXG5leHBvcnQgY29uc3QgYmFzZUJhZGdlU3R5bGVzID0gcHJvcHMgPT4gY3NzIGBcbiAgJHtwcm9wcy5oYXNJY29uICYmIGBhbGlnbi1pdGVtczogY2VudGVyO2B9XG4gIGJhY2tncm91bmQ6ICR7YnVpbGRCYWRnZUJhY2tncm91bmQocHJvcHMpfTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJHtidWlsZEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpfTtcbiAgYm9yZGVyLXJhZGl1czogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiBwcm9wcy50aGVtZS5ib3JkZXJSYWRpdXNTbWFsbH07XG4gIGNvbG9yOiAke2J1aWxkQmFkZ2VUZXh0Q29sb3IocHJvcHMpfTtcbiAgZGlzcGxheTogJHtwcm9wcy5oYXNJY29uID8gJ2lubGluZS1mbGV4JyA6ICdpbmxpbmUtYmxvY2snfTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIuZm9udFNpemVcclxuICAgIDogcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMS5mb250U2l6ZX07XG4gIGZvbnQtZmFtaWx5OiAke3Byb3BzLnRoZW1lLmJvZHlGb250fTtcbiAgbGV0dGVyLXNwYWNpbmc6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMi5sZXR0ZXJTcGFjaW5nXHJcbiAgICA6IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDEubGV0dGVyU3BhY2luZ307XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIubGluZUhlaWdodFxyXG4gICAgOiBwcm9wcy50aGVtZS50eXBlU2NhbGUuc2l6ZTAxLmxpbmVIZWlnaHR9O1xuICBtYXJnaW46ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gYDAgMCAwICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDN9YFxyXG4gICAgOiBgMCAke3Byb3BzLnRoZW1lLnNwYWNlU2NhbGUuc3BhY2luZzAzfSAwIDBgfTtcbiAgbWF4LWhlaWdodDogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiAnYXV0byd9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZ9O1xuICBwYWRkaW5nOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IGAxcHggJHtwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMn1gXHJcbiAgICA6IGAzcHggICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDJ9YH07XG4gIHRleHQtYWxpZ246ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXIgPyAnY2VudGVyJyA6ICdpbmhlcml0J307XG4gICR7cHJvcHMuaGFzSWNvbiAmJiBgdmVydGljYWwtYWxpZ246IG1pZGRsZTtgfVxuYDtcclxuY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZC5zcGFuIGBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMuaWNvblBvc2l0aW9uID09PSAncmlnaHQnID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDIgOiAwfTtcbiAgbWFyZ2luLXJpZ2h0OiAke3Byb3BzID0+IHByb3BzLmljb25Qb3NpdGlvbiA9PT0gJ2xlZnQnID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDIgOiAwfTtcblxuICBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5gO1xyXG5jb25zdCBTdHlsZWRTcGFuID0gc3R5bGVkLnNwYW4gYFxuICAke2Jhc2VCYWRnZVN0eWxlc307XG5gO1xyXG5jb25zdCBTdHlsZWRCdXR0b24gPSBzdHlsZWQuYnV0dG9uIGBcbiAgJHtiYXNlQmFkZ2VTdHlsZXN9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkXG4gICAgICAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyBwcm9wcy50aGVtZS5jb2xvcnMuZm9jdXNJbnZlcnNlXHJcbiAgICA6IHByb3BzLnRoZW1lLmNvbG9ycy5mb2N1c307XG4gICAgb3V0bGluZS1vZmZzZXQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDF9O1xuICB9XG5gO1xyXG5mdW5jdGlvbiBnZXRTdHlsZWRCYWRnZUNvbXBvbmVudChpc0NsaWNrYWJsZSkge1xyXG4gICAgcmV0dXJuIGlzQ2xpY2thYmxlID8gU3R5bGVkQnV0dG9uIDogU3R5bGVkU3BhbjtcclxufVxyXG5leHBvcnQgY29uc3QgQmFkZ2UgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgcmVmKSA9PiB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBpc0ludmVyc2UsIGxlZnRJY29uLCBvbkNsaWNrLCByaWdodEljb24sIHRlc3RJZCwgdmFyaWFudCwgd2VpZ2h0LCAuLi5vdGhlciB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBCYWRnZUNvbXBvbmVudCA9IGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KEJvb2xlYW4ob25DbGljaykpO1xyXG4gICAgY29uc3QgdGhlbWUgPSBSZWFjdC51c2VDb250ZXh0KFRoZW1lQ29udGV4dCk7XHJcbiAgICBmdW5jdGlvbiByZW5kZXJCYWRnZUljb24oYmFkZ2VJY29uKSB7XHJcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNsb25lRWxlbWVudChiYWRnZUljb24sIHtcclxuICAgICAgICAgICAgc2l6ZTogYmFkZ2VJY29uLnByb3BzLnNpemUgfHwgdGhlbWUuaWNvblNpemVzLnhTbWFsbCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIGNvbnN0IHJlbmRlcmVkTGVmdEljb24gPSBsZWZ0SWNvbiA/IHJlbmRlckJhZGdlSWNvbihsZWZ0SWNvbikgOiBudWxsO1xyXG4gICAgY29uc3QgcmVuZGVyZWRSaWdodEljb24gPSByaWdodEljb24gPyByZW5kZXJCYWRnZUljb24ocmlnaHRJY29uKSA6IG51bGw7XHJcbiAgICBjb25zdCBoYXNJY29uID0gQm9vbGVhbihyZW5kZXJlZExlZnRJY29uIHx8IHJlbmRlcmVkUmlnaHRJY29uKTtcclxuICAgIGZ1bmN0aW9uIHJlbmRlclN0eWxlZEljb24oYmFkZ2VJY29uLCBpY29uUG9zaXRpb24pIHtcclxuICAgICAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoU3R5bGVkSWNvbiwgeyBpY29uUG9zaXRpb246IGljb25Qb3NpdGlvbiwgdGhlbWU6IHRoZW1lIH0sIGJhZGdlSWNvbikpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KEJhZGdlQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCwgaGFzSWNvbjogaGFzSWNvbiwgaXNJbnZlcnNlOiBpc0ludmVyc2UsIHZhcmlhbnQ6IHZhcmlhbnQgPyB2YXJpYW50IDogQmFkZ2VWYXJpYW50LmxhYmVsLCB3ZWlnaHQ6IHdlaWdodCA/IHdlaWdodCA6IEJhZGdlV2VpZ2h0LmRlZmF1bHQsIG9uQ2xpY2s6IG9uQ2xpY2ssIHJlZjogcmVmLCB0aGVtZTogdGhlbWUgfSksXHJcbiAgICAgICAgcmVuZGVyZWRMZWZ0SWNvbiAmJiByZW5kZXJTdHlsZWRJY29uKHJlbmRlcmVkTGVmdEljb24sICdsZWZ0JyksXHJcbiAgICAgICAgY2hpbGRyZW4sXHJcbiAgICAgICAgcmVuZGVyZWRSaWdodEljb24gJiYgcmVuZGVyU3R5bGVkSWNvbihyZW5kZXJlZFJpZ2h0SWNvbiwgJ3JpZ2h0JykpKTtcclxufSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdfQ== */"));
17343
17500
  /*#__PURE__*/createStyled("button", {
17344
17501
  target: "e6vy9oh0",
17345
17502
  label: "StyledButton"
@@ -17347,7 +17504,7 @@
17347
17504
  return props.isInverse ? props.theme.colors.focusInverse : props.theme.colors.focus;
17348
17505
  }, ";outline-offset:", function (props) {
17349
17506
  return props.theme.spaceScale.spacing01;
17350
- }, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvSG1DIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHRyYW5zcGFyZW50aXplIH0gZnJvbSAncG9saXNoZWQnO1xyXG5pbXBvcnQgeyBUaGVtZUNvbnRleHQgfSBmcm9tICcuLi8uLi90aGVtZS9UaGVtZUNvbnRleHQnO1xyXG5leHBvcnQgdmFyIEJhZGdlQ29sb3I7XHJcbihmdW5jdGlvbiAoQmFkZ2VDb2xvcikge1xyXG4gICAgQmFkZ2VDb2xvcltcImRhbmdlclwiXSA9IFwiZGFuZ2VyXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wicHJpbWFyeVwiXSA9IFwicHJpbWFyeVwiO1xyXG4gICAgQmFkZ2VDb2xvcltcInNlY29uZGFyeVwiXSA9IFwic2Vjb25kYXJ5XCI7XHJcbiAgICBCYWRnZUNvbG9yW1wic3VjY2Vzc1wiXSA9IFwic3VjY2Vzc1wiO1xyXG4gICAgQmFkZ2VDb2xvcltcImxpZ2h0XCJdID0gXCJsaWdodFwiO1xyXG59KShCYWRnZUNvbG9yIHx8IChCYWRnZUNvbG9yID0ge30pKTtcclxuZXhwb3J0IHZhciBCYWRnZVZhcmlhbnQ7XHJcbihmdW5jdGlvbiAoQmFkZ2VWYXJpYW50KSB7XHJcbiAgICBCYWRnZVZhcmlhbnRbXCJjb3VudGVyXCJdID0gXCJjb3VudGVyXCI7XHJcbiAgICBCYWRnZVZhcmlhbnRbXCJsYWJlbFwiXSA9IFwibGFiZWxcIjtcclxufSkoQmFkZ2VWYXJpYW50IHx8IChCYWRnZVZhcmlhbnQgPSB7fSkpO1xyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRCYWRnZUJhY2tncm91bmQocHJvcHMpIHtcclxuICAgIGlmIChwcm9wcy5pc0ludmVyc2UpIHtcclxuICAgICAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjIwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICd0cmFuc3BhcmVudCc7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy50ZXJ0aWFyeTtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3MyMDA7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5O1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTtcclxuICAgIH1cclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRCYWRnZVRleHRDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NjAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczcwMDtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTYwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuY29sb3IgPT09IEJhZGdlQ29sb3IubGlnaHQpIHtcclxuICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWw3MDA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkQmFkZ2VCb3JkZXJDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmNvbG9yID09PSBCYWRnZUNvbG9yLmxpZ2h0KSB7XHJcbiAgICAgICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC4zLCBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwcm9wcy5jb2xvcjtcclxuICAgIH1cclxuICAgIHJldHVybiAndHJhbnNwYXJlbnQnO1xyXG59XHJcbmV4cG9ydCBjb25zdCBiYXNlQmFkZ2VTdHlsZXMgPSBwcm9wcyA9PiBjc3MgYFxuICBiYWNrZ3JvdW5kOiAke2J1aWxkQmFkZ2VCYWNrZ3JvdW5kKHByb3BzKX07XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICR7YnVpbGRCYWRnZUJvcmRlckNvbG9yKHByb3BzKX07XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZcclxuICAgIDogcHJvcHMudGhlbWUuYm9yZGVyUmFkaXVzU21hbGx9O1xuICBjb2xvcjogJHtidWlsZEJhZGdlVGV4dENvbG9yKHByb3BzKX07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIuZm9udFNpemVcclxuICAgIDogcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMS5mb250U2l6ZX07XG4gIGZvbnQtZmFtaWx5OiAke3Byb3BzLnRoZW1lLmJvZHlGb250fTtcbiAgbGV0dGVyLXNwYWNpbmc6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMi5sZXR0ZXJTcGFjaW5nXHJcbiAgICA6IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDEubGV0dGVyU3BhY2luZ307XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIubGluZUhlaWdodFxyXG4gICAgOiBwcm9wcy50aGVtZS50eXBlU2NhbGUuc2l6ZTAxLmxpbmVIZWlnaHR9O1xuICBtYXJnaW46ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gYDAgMCAwICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDN9YFxyXG4gICAgOiBgMCAke3Byb3BzLnRoZW1lLnNwYWNlU2NhbGUuc3BhY2luZzAzfSAwIDBgfTtcbiAgbWF4LWhlaWdodDogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiAnYXV0byd9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZ9O1xuICBwYWRkaW5nOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IGAxcHggJHtwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMn1gXHJcbiAgICA6IGAzcHggICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDJ9YH07XG4gIHRleHQtYWxpZ246ICR7cHJvcHMudmFyaWFudCA9PSBCYWRnZVZhcmlhbnQuY291bnRlciA/ICdjZW50ZXInIDogJ2luaGVyaXQnfTtcbmA7XHJcbmNvbnN0IFN0eWxlZFNwYW4gPSBzdHlsZWQuc3BhbiBgXG4gICR7YmFzZUJhZGdlU3R5bGVzfTtcbmA7XHJcbmNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZC5idXR0b24gYFxuICAke2Jhc2VCYWRnZVN0eWxlc307XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAycHggc29saWRcbiAgICAgICR7cHJvcHMgPT4gcHJvcHMuaXNJbnZlcnNlXHJcbiAgICA/IHByb3BzLnRoZW1lLmNvbG9ycy5mb2N1c0ludmVyc2VcclxuICAgIDogcHJvcHMudGhlbWUuY29sb3JzLmZvY3VzfTtcbiAgICBvdXRsaW5lLW9mZnNldDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMX07XG4gIH1cbmA7XHJcbmZ1bmN0aW9uIGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KGlzQ2xpY2thYmxlKSB7XHJcbiAgICByZXR1cm4gaXNDbGlja2FibGUgPyBTdHlsZWRCdXR0b24gOiBTdHlsZWRTcGFuO1xyXG59XHJcbmV4cG9ydCBjb25zdCBCYWRnZSA9IFJlYWN0LmZvcndhcmRSZWYoKHByb3BzLCByZWYpID0+IHtcclxuICAgIGNvbnN0IHsgY2hpbGRyZW4sIGlzSW52ZXJzZSwgb25DbGljaywgdGVzdElkLCB2YXJpYW50LCAuLi5vdGhlciB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBCYWRnZUNvbXBvbmVudCA9IGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KEJvb2xlYW4ob25DbGljaykpO1xyXG4gICAgY29uc3QgdGhlbWUgPSBSZWFjdC51c2VDb250ZXh0KFRoZW1lQ29udGV4dCk7XHJcbiAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoQmFkZ2VDb21wb25lbnQsIE9iamVjdC5hc3NpZ24oe30sIG90aGVyLCB7IFwiZGF0YS10ZXN0aWRcIjogdGVzdElkLCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgdmFyaWFudDogdmFyaWFudCA/IHZhcmlhbnQgOiBCYWRnZVZhcmlhbnQubGFiZWwsIG9uQ2xpY2s6IG9uQ2xpY2ssIHJlZjogcmVmLCB0aGVtZTogdGhlbWUgfSksIGNoaWxkcmVuKSk7XHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXX0= */"));
17507
+ }, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzUm1DIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHRyYW5zcGFyZW50aXplIH0gZnJvbSAncG9saXNoZWQnO1xyXG5pbXBvcnQgeyBUaGVtZUNvbnRleHQgfSBmcm9tICcuLi8uLi90aGVtZS9UaGVtZUNvbnRleHQnO1xyXG5leHBvcnQgdmFyIEJhZGdlQ29sb3I7XHJcbihmdW5jdGlvbiAoQmFkZ2VDb2xvcikge1xyXG4gICAgQmFkZ2VDb2xvcltcImRhbmdlclwiXSA9IFwiZGFuZ2VyXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wiaW5mb1wiXSA9IFwiaW5mb1wiO1xyXG4gICAgQmFkZ2VDb2xvcltcInByaW1hcnlcIl0gPSBcInByaW1hcnlcIjtcclxuICAgIEJhZGdlQ29sb3JbXCJzZWNvbmRhcnlcIl0gPSBcInNlY29uZGFyeVwiO1xyXG4gICAgQmFkZ2VDb2xvcltcInN1Y2Nlc3NcIl0gPSBcInN1Y2Nlc3NcIjtcclxuICAgIEJhZGdlQ29sb3JbXCJ3YXJuaW5nXCJdID0gXCJ3YXJuaW5nXCI7XHJcbiAgICBCYWRnZUNvbG9yW1wibGlnaHRcIl0gPSBcImxpZ2h0XCI7XHJcbn0pKEJhZGdlQ29sb3IgfHwgKEJhZGdlQ29sb3IgPSB7fSkpO1xyXG5leHBvcnQgdmFyIEJhZGdlVmFyaWFudDtcclxuKGZ1bmN0aW9uIChCYWRnZVZhcmlhbnQpIHtcclxuICAgIEJhZGdlVmFyaWFudFtcImNvdW50ZXJcIl0gPSBcImNvdW50ZXJcIjtcclxuICAgIEJhZGdlVmFyaWFudFtcImxhYmVsXCJdID0gXCJsYWJlbFwiO1xyXG59KShCYWRnZVZhcmlhbnQgfHwgKEJhZGdlVmFyaWFudCA9IHt9KSk7XHJcbmV4cG9ydCB2YXIgQmFkZ2VXZWlnaHQ7XHJcbihmdW5jdGlvbiAoQmFkZ2VXZWlnaHQpIHtcclxuICAgIEJhZGdlV2VpZ2h0W1wiZGVmYXVsdFwiXSA9IFwiZGVmYXVsdFwiO1xyXG4gICAgQmFkZ2VXZWlnaHRbXCJsaWdodFwiXSA9IFwibGlnaHRcIjtcclxufSkoQmFkZ2VXZWlnaHQgfHwgKEJhZGdlV2VpZ2h0ID0ge30pKTtcclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKSB7XHJcbiAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjcwMCk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmluZm86XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjUsIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNzAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiAndHJhbnNwYXJlbnQnO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjYsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsOTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M3MDApO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC41LCBwcm9wcy50aGVtZS5jb2xvcnMud2FybmluZzcwMCk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuNSwgcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk3MDApO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VCYWNrZ3JvdW5kKHByb3BzKTtcclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjEwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmcxMDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5MTAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlQmFja2dyb3VuZChwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLndlaWdodCA9PT0gQmFkZ2VXZWlnaHQubGlnaHQpIHtcclxuICAgICAgICByZXR1cm4gYnVpbGRMaWdodFdlaWdodEJhZGdlQmFja2dyb3VuZChwcm9wcyk7XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5kYW5nZXIyMDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci5pbmZvOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMjAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczIwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLndhcm5pbmc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmcyMDA7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnRlcnRpYXJ5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zdWNjZXNzOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLndhcm5pbmc6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMud2FybmluZzUwMDtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk7XHJcbiAgICB9XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpIHtcclxuICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuZGFuZ2VyOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmRhbmdlcjIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvMjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5saWdodDpcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuc3VjY2VzczIwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iud2FybmluZzpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nMjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5wcmltYXJ5OlxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTIwMDtcclxuICAgIH1cclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRMaWdodFdlaWdodEJhZGdlVGV4dENvbG9yKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMuaXNJbnZlcnNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkSW52ZXJzZUxpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5pbmZvOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLmluZm81MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5zZWNvbmRhcnk6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNTAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmc1MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NTAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlVGV4dENvbG9yKHByb3BzKSB7XHJcbiAgICBpZiAocHJvcHMud2VpZ2h0ID09PSBCYWRnZVdlaWdodC5saWdodCkge1xyXG4gICAgICAgIHJldHVybiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VUZXh0Q29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHN3aXRjaCAocHJvcHMuY29sb3IpIHtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNzAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuaW5mbzcwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmxpZ2h0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwO1xyXG4gICAgICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMucHJpbWFyeTYwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgICAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLnN1Y2Nlc3M3MDA7XHJcbiAgICAgICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nNjAwO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NjAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5jb2xvciA9PT0gQmFkZ2VDb2xvci5saWdodCkge1xyXG4gICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDcwMDtcclxuICAgIH1cclxuICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDEwMDtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRJbnZlcnNlTGlnaHRXZWlnaHRCYWRnZUJvcmRlckNvbG9yKHByb3BzKSB7XHJcbiAgICBzd2l0Y2ggKHByb3BzLmNvbG9yKSB7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmRhbmdlcjpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5kYW5nZXI2MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLmluZm86XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMuaW5mbzYwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjcsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNjAwO1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci53YXJuaW5nOlxyXG4gICAgICAgICAgICByZXR1cm4gcHJvcHMudGhlbWUuY29sb3JzLndhcm5pbmc2MDA7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnNlY29uZGFyeTpcclxuICAgICAgICAgICAgcmV0dXJuICd0cmFuc3BhcmVudCc7XHJcbiAgICAgICAgY2FzZSBCYWRnZUNvbG9yLnByaW1hcnk6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIHByb3BzLnRoZW1lLmNvbG9ycy5wcmltYXJ5NDAwO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZExpZ2h0V2VpZ2h0QmFkZ2VCb3JkZXJDb2xvcihwcm9wcykge1xyXG4gICAgaWYgKHByb3BzLmlzSW52ZXJzZSkge1xyXG4gICAgICAgIHJldHVybiBidWlsZEludmVyc2VMaWdodFdlaWdodEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChwcm9wcy5jb2xvcikge1xyXG4gICAgICAgIGNhc2UgQmFkZ2VDb2xvci5kYW5nZXI6XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc3BhcmVudGl6ZSgwLjg1LCBwcm9wcy50aGVtZS5jb2xvcnMuZGFuZ2VyNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IuaW5mbzpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy5pbmZvNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IubGlnaHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDMwMDtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc3VjY2VzczpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy5zdWNjZXNzNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iud2FybmluZzpcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuODUsIHByb3BzLnRoZW1lLmNvbG9ycy53YXJuaW5nNTAwKTtcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3Iuc2Vjb25kYXJ5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICBjYXNlIEJhZGdlQ29sb3IucHJpbWFyeTpcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNwYXJlbnRpemUoMC44NSwgcHJvcHMudGhlbWUuY29sb3JzLnByaW1hcnk1MDApO1xyXG4gICAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpIHtcclxuICAgIGlmIChwcm9wcy53ZWlnaHQgPT09IEJhZGdlV2VpZ2h0LmxpZ2h0KSB7XHJcbiAgICAgICAgcmV0dXJuIGJ1aWxkTGlnaHRXZWlnaHRCYWRnZUJvcmRlckNvbG9yKHByb3BzKTtcclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5jb2xvciA9PT0gQmFkZ2VDb2xvci5saWdodCkge1xyXG4gICAgICAgIGlmIChwcm9wcy5pc0ludmVyc2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zcGFyZW50aXplKDAuMywgcHJvcHMudGhlbWUuY29sb3JzLm5ldXRyYWwxMDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJvcHMuY29sb3I7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJ3RyYW5zcGFyZW50JztcclxufVxyXG5leHBvcnQgY29uc3QgYmFzZUJhZGdlU3R5bGVzID0gcHJvcHMgPT4gY3NzIGBcbiAgJHtwcm9wcy5oYXNJY29uICYmIGBhbGlnbi1pdGVtczogY2VudGVyO2B9XG4gIGJhY2tncm91bmQ6ICR7YnVpbGRCYWRnZUJhY2tncm91bmQocHJvcHMpfTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJHtidWlsZEJhZGdlQm9yZGVyQ29sb3IocHJvcHMpfTtcbiAgYm9yZGVyLXJhZGl1czogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiBwcm9wcy50aGVtZS5ib3JkZXJSYWRpdXNTbWFsbH07XG4gIGNvbG9yOiAke2J1aWxkQmFkZ2VUZXh0Q29sb3IocHJvcHMpfTtcbiAgZGlzcGxheTogJHtwcm9wcy5oYXNJY29uID8gJ2lubGluZS1mbGV4JyA6ICdpbmxpbmUtYmxvY2snfTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIuZm9udFNpemVcclxuICAgIDogcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMS5mb250U2l6ZX07XG4gIGZvbnQtZmFtaWx5OiAke3Byb3BzLnRoZW1lLmJvZHlGb250fTtcbiAgbGV0dGVyLXNwYWNpbmc6ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gcHJvcHMudGhlbWUudHlwZVNjYWxlLnNpemUwMi5sZXR0ZXJTcGFjaW5nXHJcbiAgICA6IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDEubGV0dGVyU3BhY2luZ307XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IHByb3BzLnRoZW1lLnR5cGVTY2FsZS5zaXplMDIubGluZUhlaWdodFxyXG4gICAgOiBwcm9wcy50aGVtZS50eXBlU2NhbGUuc2l6ZTAxLmxpbmVIZWlnaHR9O1xuICBtYXJnaW46ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXJcclxuICAgID8gYDAgMCAwICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDN9YFxyXG4gICAgOiBgMCAke3Byb3BzLnRoZW1lLnNwYWNlU2NhbGUuc3BhY2luZzAzfSAwIDBgfTtcbiAgbWF4LWhlaWdodDogJHtwcm9wcy52YXJpYW50ID09PSBCYWRnZVZhcmlhbnQuY291bnRlclxyXG4gICAgPyBwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwNlxyXG4gICAgOiAnYXV0byd9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDZ9O1xuICBwYWRkaW5nOiAke3Byb3BzLnZhcmlhbnQgPT09IEJhZGdlVmFyaWFudC5jb3VudGVyXHJcbiAgICA/IGAxcHggJHtwcm9wcy50aGVtZS5zcGFjZVNjYWxlLnNwYWNpbmcwMn1gXHJcbiAgICA6IGAzcHggICR7cHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDJ9YH07XG4gIHRleHQtYWxpZ246ICR7cHJvcHMudmFyaWFudCA9PT0gQmFkZ2VWYXJpYW50LmNvdW50ZXIgPyAnY2VudGVyJyA6ICdpbmhlcml0J307XG4gICR7cHJvcHMuaGFzSWNvbiAmJiBgdmVydGljYWwtYWxpZ246IG1pZGRsZTtgfVxuYDtcclxuY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZC5zcGFuIGBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMuaWNvblBvc2l0aW9uID09PSAncmlnaHQnID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDIgOiAwfTtcbiAgbWFyZ2luLXJpZ2h0OiAke3Byb3BzID0+IHByb3BzLmljb25Qb3NpdGlvbiA9PT0gJ2xlZnQnID8gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDIgOiAwfTtcblxuICBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5gO1xyXG5jb25zdCBTdHlsZWRTcGFuID0gc3R5bGVkLnNwYW4gYFxuICAke2Jhc2VCYWRnZVN0eWxlc307XG5gO1xyXG5jb25zdCBTdHlsZWRCdXR0b24gPSBzdHlsZWQuYnV0dG9uIGBcbiAgJHtiYXNlQmFkZ2VTdHlsZXN9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkXG4gICAgICAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyBwcm9wcy50aGVtZS5jb2xvcnMuZm9jdXNJbnZlcnNlXHJcbiAgICA6IHByb3BzLnRoZW1lLmNvbG9ycy5mb2N1c307XG4gICAgb3V0bGluZS1vZmZzZXQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDF9O1xuICB9XG5gO1xyXG5mdW5jdGlvbiBnZXRTdHlsZWRCYWRnZUNvbXBvbmVudChpc0NsaWNrYWJsZSkge1xyXG4gICAgcmV0dXJuIGlzQ2xpY2thYmxlID8gU3R5bGVkQnV0dG9uIDogU3R5bGVkU3BhbjtcclxufVxyXG5leHBvcnQgY29uc3QgQmFkZ2UgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgcmVmKSA9PiB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBpc0ludmVyc2UsIGxlZnRJY29uLCBvbkNsaWNrLCByaWdodEljb24sIHRlc3RJZCwgdmFyaWFudCwgd2VpZ2h0LCAuLi5vdGhlciB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBCYWRnZUNvbXBvbmVudCA9IGdldFN0eWxlZEJhZGdlQ29tcG9uZW50KEJvb2xlYW4ob25DbGljaykpO1xyXG4gICAgY29uc3QgdGhlbWUgPSBSZWFjdC51c2VDb250ZXh0KFRoZW1lQ29udGV4dCk7XHJcbiAgICBmdW5jdGlvbiByZW5kZXJCYWRnZUljb24oYmFkZ2VJY29uKSB7XHJcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNsb25lRWxlbWVudChiYWRnZUljb24sIHtcclxuICAgICAgICAgICAgc2l6ZTogYmFkZ2VJY29uLnByb3BzLnNpemUgfHwgdGhlbWUuaWNvblNpemVzLnhTbWFsbCxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIGNvbnN0IHJlbmRlcmVkTGVmdEljb24gPSBsZWZ0SWNvbiA/IHJlbmRlckJhZGdlSWNvbihsZWZ0SWNvbikgOiBudWxsO1xyXG4gICAgY29uc3QgcmVuZGVyZWRSaWdodEljb24gPSByaWdodEljb24gPyByZW5kZXJCYWRnZUljb24ocmlnaHRJY29uKSA6IG51bGw7XHJcbiAgICBjb25zdCBoYXNJY29uID0gQm9vbGVhbihyZW5kZXJlZExlZnRJY29uIHx8IHJlbmRlcmVkUmlnaHRJY29uKTtcclxuICAgIGZ1bmN0aW9uIHJlbmRlclN0eWxlZEljb24oYmFkZ2VJY29uLCBpY29uUG9zaXRpb24pIHtcclxuICAgICAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoU3R5bGVkSWNvbiwgeyBpY29uUG9zaXRpb246IGljb25Qb3NpdGlvbiwgdGhlbWU6IHRoZW1lIH0sIGJhZGdlSWNvbikpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KEJhZGdlQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCwgaGFzSWNvbjogaGFzSWNvbiwgaXNJbnZlcnNlOiBpc0ludmVyc2UsIHZhcmlhbnQ6IHZhcmlhbnQgPyB2YXJpYW50IDogQmFkZ2VWYXJpYW50LmxhYmVsLCB3ZWlnaHQ6IHdlaWdodCA/IHdlaWdodCA6IEJhZGdlV2VpZ2h0LmRlZmF1bHQsIG9uQ2xpY2s6IG9uQ2xpY2ssIHJlZjogcmVmLCB0aGVtZTogdGhlbWUgfSksXHJcbiAgICAgICAgcmVuZGVyZWRMZWZ0SWNvbiAmJiByZW5kZXJTdHlsZWRJY29uKHJlbmRlcmVkTGVmdEljb24sICdsZWZ0JyksXHJcbiAgICAgICAgY2hpbGRyZW4sXHJcbiAgICAgICAgcmVuZGVyZWRSaWdodEljb24gJiYgcmVuZGVyU3R5bGVkSWNvbihyZW5kZXJlZFJpZ2h0SWNvbiwgJ3JpZ2h0JykpKTtcclxufSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdfQ== */"));
17351
17508
  function _EMOTION_STRINGIFIED_CSS_ERROR__$6() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
17352
17509
  /*#__PURE__*/createStyled("div", {
17353
17510
  target: "e1b9nb1m4",
@@ -24819,7 +24976,7 @@
24819
24976
  styles: "position:relative"
24820
24977
  } : {
24821
24978
  name: "bjn8wh",
24822
- styles: "position:relative/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQnVDIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBhdXRvVXBkYXRlIH0gZnJvbSAnQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSc7XHJcbmltcG9ydCB7IGFkZERheXMsIGVuZE9mRGF5LCBpc0FmdGVyLCBpc0JlZm9yZSwgaXNNYXRjaCwgaXNWYWxpZCwgcGFyc2UsIHNldEhvdXJzLCBzdGFydE9mRGF5LCB9IGZyb20gJ2RhdGUtZm5zJztcclxuaW1wb3J0IHsgdHJhbnNwYXJlbnRpemUgfSBmcm9tICdwb2xpc2hlZCc7XHJcbmltcG9ydCB7IEV2ZW50SWNvbiB9IGZyb20gJ3JlYWN0LW1hZ21hLWljb25zJztcclxuaW1wb3J0IHsgQ2FsZW5kYXJDb250ZXh0IH0gZnJvbSAnLi9DYWxlbmRhckNvbnRleHQnO1xyXG5pbXBvcnQgeyBDYWxlbmRhck1vbnRoIH0gZnJvbSAnLi9DYWxlbmRhck1vbnRoJztcclxuaW1wb3J0IHsgdXNlTWFnbWFGbG9hdGluZyB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZU1hZ21hRmxvYXRpbmcnO1xyXG5pbXBvcnQgeyBJMThuQ29udGV4dCB9IGZyb20gJy4uLy4uL2kxOG4nO1xyXG5pbXBvcnQgeyBJbnZlcnNlQ29udGV4dCwgdXNlSXNJbnZlcnNlIH0gZnJvbSAnLi4vLi4vaW52ZXJzZSc7XHJcbmltcG9ydCB7IFRoZW1lQ29udGV4dCB9IGZyb20gJy4uLy4uL3RoZW1lL1RoZW1lQ29udGV4dCc7XHJcbmltcG9ydCB7IEFubm91bmNlIH0gZnJvbSAnLi4vQW5ub3VuY2UnO1xyXG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gJy4uL0lucHV0JztcclxuaW1wb3J0IHsgSW5wdXRUeXBlIH0gZnJvbSAnLi4vSW5wdXRCYXNlJztcclxuaW1wb3J0IHsgVmlzdWFsbHlIaWRkZW4gfSBmcm9tICcuLi9WaXN1YWxseUhpZGRlbic7XHJcbmltcG9ydCB7IERhdGVGaWVsZElucHV0IH0gZnJvbSAnLi9EYXRlRmllbGQvRGF0ZUZpZWxkSW5wdXQnO1xyXG5pbXBvcnQgeyBnZXRDYWxlbmRhck1vbnRoV2Vla3MsIGdldERhdGVGcm9tU3RyaW5nLCBnZXROZXh0TW9udGhGcm9tRGF0ZSwgZ2V0UHJldk1vbnRoRnJvbURhdGUsIGhhbmRsZUtleVByZXNzLCBzZXRNb250aEZvckRhdGUsIHNldFllYXJGb3JEYXRlLCBpMThuRm9ybWF0IGFzIGZvcm1hdCwgaW5EYXRlUmFuZ2UsIH0gZnJvbSAnLi91dGlscyc7XHJcbmltcG9ydCB7IG9taXQsIHVzZUZvcmtlZFJlZiwgdXNlR2VuZXJhdGVJZCB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuY29uc3QgRGF0ZVBpY2tlckNvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xyXG5jb25zdCBEYXRlUGlja2VyQ2FsZW5kYXIgPSBzdHlsZWQuZGl2IGBcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyB0cmFuc3BhcmVudGl6ZSgwLjUsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwKVxyXG4gICAgOiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDMwMH07XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYm9yZGVyUmFkaXVzfTtcbiAgYm94LXNoYWRvdzogMCAycHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMuaXNJbnZlcnNlXHJcbiAgICA/IHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwXHJcbiAgICA6IHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwfTtcbiAgZGlzcGxheTogJHtwcm9wcyA9PiAocHJvcHMub3BlbmVkID8gJ2Jsb2NrJyA6ICdub25lJyl9O1xuICBtYXJnaW46ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDF9IDBweDtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMub3BlbmVkID8gJzEnIDogJzAnKX07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgd2lkdGg6IDMyMHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IERhdGVQaWNrZXIgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKSA9PiB7XHJcbiAgICBjb25zdCB0aGVtZSA9IFJlYWN0LnVzZUNvbnRleHQoVGhlbWVDb250ZXh0KTtcclxuICAgIGNvbnN0IGkxOG4gPSBSZWFjdC51c2VDb250ZXh0KEkxOG5Db250ZXh0KTtcclxuICAgIGNvbnN0IGljb25SZWYgPSBSZWFjdC51c2VSZWYoKTtcclxuICAgIGNvbnN0IHByZXZpb3VzSWNvblJlZiA9IFJlYWN0LnVzZVJlZigpO1xyXG4gICAgY29uc3QgaW5wdXRSZWYgPSBSZWFjdC51c2VSZWYoKTtcclxuICAgIGNvbnN0IGxhc3RGb2N1cyA9IFJlYWN0LnVzZVJlZigpO1xyXG4gICAgY29uc3QgaWQgPSB1c2VHZW5lcmF0ZUlkKHByb3BzLmlkKTtcclxuICAgIGNvbnN0IGlzSW52ZXJzZSA9IHVzZUlzSW52ZXJzZShwcm9wcy5pc0ludmVyc2UpO1xyXG4gICAgY29uc3QgbWluRGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKHByb3BzLm1pbkRhdGUpO1xyXG4gICAgY29uc3QgbWF4RGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKHByb3BzLm1heERhdGUpO1xyXG4gICAgY29uc3QgZGF0ZUZvcm1hdCA9IGkxOG4uZGF0ZUZvcm1hdDtcclxuICAgIGNvbnN0IFtoZWxwZXJJbmZvcm1hdGlvblNob3duLCBzZXRIZWxwZXJJbmZvcm1hdGlvblNob3duXSA9IFJlYWN0LnVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IFtjYWxlbmRhck9wZW5lZCwgc2V0Q2FsZW5kYXJPcGVuZWRdID0gUmVhY3QudXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW2RhdGVGb2N1c2VkLCBzZXREYXRlRm9jdXNlZF0gPSBSZWFjdC51c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBbZm9jdXNlZERhdGUsIHNldEZvY3VzZWREYXRlXSA9IFJlYWN0LnVzZVN0YXRlKHNldERhdGVGcm9tQ29uc3VtZXIocHJvcHMudmFsdWUgfHwgcHJvcHMuZGVmYXVsdERhdGUpIHx8XHJcbiAgICAgICAgc2V0RGVmYXVsdEZvY3VzZWREYXRlKCkpO1xyXG4gICAgY29uc3QgW2Nob3NlbkRhdGUsIHNldENob3NlbkRhdGVdID0gUmVhY3QudXNlU3RhdGUoc2V0RGF0ZUZyb21Db25zdW1lcihwcm9wcy52YWx1ZSB8fCBwcm9wcy5kZWZhdWx0RGF0ZSkpO1xyXG4gICAgY29uc3QgcmVmID0gdXNlRm9ya2VkUmVmKGZvcndhcmRlZFJlZiwgaW5wdXRSZWYpO1xyXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBpZiAocHJvcHMuYXBpUmVmKSB7XHJcbiAgICAgICAgICAgIHByb3BzLmFwaVJlZi5jdXJyZW50ID0ge1xyXG4gICAgICAgICAgICAgICAgY2xvc2VEYXRlUGlja2VyTWFudWFsbHkoZXZlbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrKGV2ZW50KTtcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBvcGVuRGF0ZVBpY2tlck1hbnVhbGx5KGV2ZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9nZ2xlQ2FsZW5kYXJPcGVuZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGVUaW1lUGlja2VyQ29udGVudCAmJlxyXG4gICAgICAgICAgICBjaG9zZW5EYXRlICYmXHJcbiAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQgIT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgaWYgKCFwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50ICYmIHByb3BzLnNldEFkZGl0aW9uYWxJbnB1dENvbnRlbnQpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLnNldEFkZGl0aW9uYWxJbnB1dENvbnRlbnQoJzEyOjAwIEFNJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUoY2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2Nob3NlbkRhdGVdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFjYWxlbmRhck9wZW5lZCkge1xyXG4gICAgICAgICAgICBzZXREYXRlRm9jdXNlZChmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2NhbGVuZGFyT3BlbmVkXSk7XHJcbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGlmIChwcm9wcy52YWx1ZSkge1xyXG4gICAgICAgICAgICBzZXRGb2N1c2VkRGF0ZShzZXREYXRlRnJvbUNvbnN1bWVyKHByb3BzLnZhbHVlKSB8fCBzZXREZWZhdWx0Rm9jdXNlZERhdGUoKSk7XHJcbiAgICAgICAgICAgIHNldENob3NlbkRhdGUoc2V0RGF0ZUZyb21Db25zdW1lcihwcm9wcy52YWx1ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocHJvcHMudmFsdWUgPT09IG51bGwpXHJcbiAgICAgICAgICAgIHNldENob3NlbkRhdGUodW5kZWZpbmVkKTtcclxuICAgIH0sIFtwcm9wcy52YWx1ZV0pO1xyXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBwcmV2aW91c0ljb25SZWYuY3VycmVudCA9IGljb25SZWYuY3VycmVudDtcclxuICAgIH0sIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFmb2N1c2VkRGF0ZSB8fCAhbWluRGF0ZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGlmIChpc0JlZm9yZShmb2N1c2VkRGF0ZSwgbWluRGF0ZSkgJiYgIWNob3NlbkRhdGUpIHtcclxuICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobWluRGF0ZSk7XHJcbiAgICAgICAgICAgIHNldERhdGVGb2N1c2VkKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmb2N1c2VkRGF0ZSwgbWluRGF0ZSwgY2hvc2VuRGF0ZV0pO1xyXG4gICAgZnVuY3Rpb24gc2hvd0hlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIGxhc3RGb2N1cy5jdXJyZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcclxuICAgICAgICBzZXRIZWxwZXJJbmZvcm1hdGlvblNob3duKHRydWUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gaGlkZUhlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIGxhc3RGb2N1cy5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgc2V0SGVscGVySW5mb3JtYXRpb25TaG93bihmYWxzZSk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBjbG9zZUhlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIHNldEhlbHBlckluZm9ybWF0aW9uU2hvd24oZmFsc2UpO1xyXG4gICAgICAgIGljb25SZWYuY3VycmVudC5mb2N1cygpO1xyXG4gICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHNldEZvY3VzZWRUb2RheURhdGUgPSAoZXZlbnQpID0+IHtcclxuICAgICAgICBjb25zdCBpc0tleWJvYXJkRXZlbnQgPSBldmVudC50eXBlID09PSAna2V5ZG93bic7XHJcbiAgICAgICAgaWYgKChpc0tleWJvYXJkRXZlbnQgJiZcclxuICAgICAgICAgICAgKGV2ZW50LmtleSA9PT0gJyAnIHx8XHJcbiAgICAgICAgICAgICAgICBldmVudC5rZXkgPT09ICdFbnRlcicpKSB8fFxyXG4gICAgICAgICAgICBldmVudC50eXBlID09PSAnY2xpY2snKSB7XHJcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKHNldERlZmF1bHRGb2N1c2VkRGF0ZSgpKTtcclxuICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuICAgIGZ1bmN0aW9uIHNldERhdGVGcm9tQ29uc3VtZXIoZGF0ZSkge1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZERhdGUgPSBnZXREYXRlRnJvbVN0cmluZyhkYXRlKTtcclxuICAgICAgICBjb25zdCBjb252ZXJ0ZWRNaW5EYXRlID0gZ2V0RGF0ZUZyb21TdHJpbmcobWluRGF0ZSk7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkTWF4RGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKG1heERhdGUpO1xyXG4gICAgICAgIHJldHVybiBkYXRlICYmXHJcbiAgICAgICAgICAgIGluRGF0ZVJhbmdlKGNvbnZlcnRlZERhdGUsIGNvbnZlcnRlZE1pbkRhdGUsIGNvbnZlcnRlZE1heERhdGUpXHJcbiAgICAgICAgICAgID8gY29udmVydGVkRGF0ZVxyXG4gICAgICAgICAgICA6IG51bGw7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBzZXREZWZhdWx0Rm9jdXNlZERhdGUoKSB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkTWluRGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKG1pbkRhdGUpO1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZE1heERhdGUgPSBnZXREYXRlRnJvbVN0cmluZyhtYXhEYXRlKTtcclxuICAgICAgICBpZiAoaW5EYXRlUmFuZ2UobmV3RGF0ZSwgY29udmVydGVkTWluRGF0ZSwgY29udmVydGVkTWF4RGF0ZSkpIHtcclxuICAgICAgICAgICAgaWYgKGlzQmVmb3JlKHN0YXJ0T2ZEYXkobmV3RGF0ZSksIGNvbnZlcnRlZE1pbkRhdGUpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWRkRGF5cyhuZXdEYXRlLCAxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gbmV3RGF0ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY29udmVydGVkTWF4RGF0ZSB8fCBjb252ZXJ0ZWRNaW5EYXRlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZWRNaW5EYXRlID8gY29udmVydGVkTWluRGF0ZSA6IGNvbnZlcnRlZE1heERhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gYnVpbGRDYWxlbmRhck1vbnRoKGRhdGUsIGVuYWJsZU91dHNpZGVEYXRlcykge1xyXG4gICAgICAgIGNvbnN0IGRheXMgPSBbXHJcbiAgICAgICAgICAgICdzdW5kYXknLFxyXG4gICAgICAgICAgICAnbW9uZGF5JyxcclxuICAgICAgICAgICAgJ3R1ZXNkYXknLFxyXG4gICAgICAgICAgICAnd2VkbmVzZGF5JyxcclxuICAgICAgICAgICAgJ3RodXJzZGF5JyxcclxuICAgICAgICAgICAgJ2ZyaWRheScsXHJcbiAgICAgICAgICAgICdzYXR1cmRheScsXHJcbiAgICAgICAgXTtcclxuICAgICAgICBjb25zdCB7IHN0YXJ0T2ZXZWVrIH0gPSBpMThuLmRhdGVQaWNrZXI7XHJcbiAgICAgICAgcmV0dXJuIGdldENhbGVuZGFyTW9udGhXZWVrcyhkYXRlLCBlbmFibGVPdXRzaWRlRGF0ZXMsIGRheXMuaW5kZXhPZihzdGFydE9mV2VlaykpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gb25QcmV2TW9udGhDbGljaygpIHtcclxuICAgICAgICBjb25zdCBuZXdEYXRlID0gZ2V0UHJldk1vbnRoRnJvbURhdGUoZm9jdXNlZERhdGUpO1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gb25OZXh0TW9udGhDbGljaygpIHtcclxuICAgICAgICBjb25zdCBuZXdEYXRlID0gZ2V0TmV4dE1vbnRoRnJvbURhdGUoZm9jdXNlZERhdGUpO1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gc2V0TW9udGhGb2N1c2VkRGF0ZShtb250aE51bWJlcikge1xyXG4gICAgICAgIGNvbnN0IG5ld0RhdGUgPSBzZXRNb250aEZvckRhdGUoZm9jdXNlZERhdGUsIG1vbnRoTnVtYmVyKTtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIHNldFllYXJGb2N1c2VkRGF0ZSh5ZWFyTnVtYmVyKSB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0ZSA9IHNldFllYXJGb3JEYXRlKGZvY3VzZWREYXRlLCB5ZWFyTnVtYmVyKTtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIG9uRGF0ZUNoYW5nZShkYXkpIHtcclxuICAgICAgICBzZXRDaG9zZW5EYXRlKGRheSk7XHJcbiAgICAgICAgaWYgKGRhdGVUaW1lUGlja2VyQ29udGVudClcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIHJlc2V0KCkge1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKHNldERlZmF1bHRGb2N1c2VkRGF0ZSgpKTtcclxuICAgICAgICBzZXRDaG9zZW5EYXRlKG51bGwpO1xyXG4gICAgICAgIHNldERhdGVGb2N1c2VkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGlzVmFsaWREYXRlRnJvbVN0cmluZyh2YWx1ZSkge1xyXG4gICAgICAgIGNvbnN0IGlzVmFsaWREYXRlRm9ybWF0ID0gaXNNYXRjaCh2YWx1ZSwgaTE4bi5kYXRlRm9ybWF0KTtcclxuICAgICAgICBjb25zdCBwYXJzZWREYXRlID0gcGFyc2UodmFsdWUsIGkxOG4uZGF0ZUZvcm1hdCwgbmV3IERhdGUoKSk7XHJcbiAgICAgICAgY29uc3QgaXNWYWxpZERhdGUgPSBpc1ZhbGlkKHBhcnNlZERhdGUpO1xyXG4gICAgICAgIHJldHVybiBpc1ZhbGlkRGF0ZUZvcm1hdCAmJiBpc1ZhbGlkRGF0ZTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUlucHV0Q2hhbmdlKGV2ZW50KSB7XHJcbiAgICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gZXZlbnQudGFyZ2V0O1xyXG4gICAgICAgIGNvbnN0IGRheSA9IG5ldyBEYXRlKHZhbHVlKTtcclxuICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgcHJvcHMub25JbnB1dENoYW5nZSAmJlxyXG4gICAgICAgICAgICB0eXBlb2YgcHJvcHMub25JbnB1dENoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbklucHV0Q2hhbmdlKGV2ZW50KTtcclxuICAgICAgICBsZXQgaXNWYWxpZERheTtcclxuICAgICAgICBpZiAoZGF0ZVRpbWVQaWNrZXJDb250ZW50KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNwbGl0VmFsdWUgPSB2YWx1ZS5zcGxpdCgnICcpWzBdO1xyXG4gICAgICAgICAgICBpc1ZhbGlkRGF5ID0gaXNWYWxpZERhdGVGcm9tU3RyaW5nKHNwbGl0VmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCB2YWxpZERheSA9IG5ldyBEYXRlKHNwbGl0VmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gL15cXGR7Mn1cXC9cXGR7Mn1cXC9cXGR7NH0kLztcclxuICAgICAgICAgICAgaWYgKHBhdHRlcm4udGVzdChzcGxpdFZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgc2V0Q2hvc2VuRGF0ZSh2YWxpZERheSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UoaXNWYWxpZERheSA/IHZhbGlkRGF5LnRvSVNPU3RyaW5nKCkgOiBzcGxpdFZhbHVlLCBldmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBpc1ZhbGlkRGF5ID0gaXNWYWxpZERhdGVGcm9tU3RyaW5nKHZhbHVlKTtcclxuICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UoaXNWYWxpZERheSA/IGRheS50b0lTT1N0cmluZygpIDogdmFsdWUsIGV2ZW50KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVJbnB1dEZvY3VzKGV2ZW50KSB7XHJcbiAgICAgICAgcHJvcHMub25JbnB1dEZvY3VzICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbklucHV0Rm9jdXMgPT09ICdmdW5jdGlvbicgJiZcclxuICAgICAgICAgICAgcHJvcHMub25JbnB1dEZvY3VzKGV2ZW50KTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUlucHV0Qmx1cihldmVudCkge1xyXG4gICAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IGlucHV0UmVmLmN1cnJlbnQ7XHJcbiAgICAgICAgY29uc3QgZGF5ID0gcGFyc2UoZGF0ZVRpbWVQaWNrZXJDb250ZW50ID8gdmFsdWUuc3BsaXQoJyAnKVswXSA6IHZhbHVlLCBpMThuLmRhdGVGb3JtYXQsIG5ldyBEYXRlKCkpO1xyXG4gICAgICAgIGxldCBpc1ZhbGlkRGF5O1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3BsaXRWYWx1ZSA9IHZhbHVlLnNwbGl0KCcgJylbMF07XHJcbiAgICAgICAgICAgIGlzVmFsaWREYXkgPSBpc1ZhbGlkRGF0ZUZyb21TdHJpbmcoc3BsaXRWYWx1ZSk7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbGlkRGF5ID0gbmV3IERhdGUoc3BsaXRWYWx1ZSk7XHJcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkRGF5KSB7XHJcbiAgICAgICAgICAgICAgICBoYW5kbGVEYXRlQ2hhbmdlKHZhbGlkRGF5LCBldmVudCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGlzVmFsaWREYXkgPSBpc1ZhbGlkRGF0ZUZyb21TdHJpbmcodmFsdWUpO1xyXG4gICAgICAgICAgICBpZiAoaXNWYWxpZERheSkge1xyXG4gICAgICAgICAgICAgICAgaGFuZGxlRGF0ZUNoYW5nZShkYXksIGV2ZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJlc2V0ICYmIHR5cGVvZiByZXNldCA9PT0gJ2Z1bmN0aW9uJyAmJiByZXNldCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByb3BzLm9uSW5wdXRCbHVyICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbklucHV0Qmx1ciA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbklucHV0Qmx1cihldmVudCk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVJbnB1dEtleURvd24oZXZlbnQpIHtcclxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xyXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVLZXlEb3duKGV2ZW50KSB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcclxuICAgICAgICAgICAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgICAgICAgICAgaWNvblJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChkYXRlRm9jdXNlZCAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50LmNsb3Nlc3QoJ3RhYmxlJykpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3Q2hvc2VuRGF0ZSA9IGhhbmRsZUtleVByZXNzKGV2ZW50LCBmb2N1c2VkRGF0ZSwgc2V0Q2FsZW5kYXJPcGVuZWQsIHNob3dIZWxwZXJJbmZvcm1hdGlvbiwgb25EYXRlQ2hhbmdlLCBpY29uUmVmKTtcclxuICAgICAgICAgICAgaWYgKG5ld0Nob3NlbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgIGlmIChtaW5EYXRlICYmIG1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZnRlcihzZXRIb3VycyhuZXdDaG9zZW5EYXRlLCAxMiksIHN0YXJ0T2ZEYXkobWluRGF0ZSkpICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzQmVmb3JlKHNldEhvdXJzKG5ld0Nob3NlbkRhdGUsIDEyKSwgZW5kT2ZEYXkobWF4RGF0ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0Nob3NlbkRhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1pbkRhdGUgJiYgIW1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZnRlcihzZXRIb3VycyhuZXdDaG9zZW5EYXRlLCAxMiksIHN0YXJ0T2ZEYXkobWluRGF0ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0Nob3NlbkRhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1heERhdGUgJiYgIW1pbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNCZWZvcmUoc2V0SG91cnMobmV3Q2hvc2VuRGF0ZSwgMTIpLCBlbmRPZkRheShtYXhEYXRlKSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobmV3Q2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobmV3Q2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVEYXRlQ2hhbmdlKGRheSwgZXZlbnQpIHtcclxuICAgICAgICBwcm9wcy5vbkRhdGVDaGFuZ2UgJiZcclxuICAgICAgICAgICAgdHlwZW9mIHByb3BzLm9uRGF0ZUNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbkRhdGVDaGFuZ2UoZGF5LCBldmVudCk7XHJcbiAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nICYmXHJcbiAgICAgICAgICAgIHByb3BzLm9uQ2hhbmdlKGRheT8udG9JU09TdHJpbmcoKSwgZXZlbnQpO1xyXG4gICAgICAgIG9uRGF0ZUNoYW5nZShkYXkpO1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShkYXkpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gaGFuZGxlRGF5U2VsZWN0aW9uKGRheSwgZXZlbnQpIHtcclxuICAgICAgICBoYW5kbGVEYXRlQ2hhbmdlKGRheSwgZXZlbnQpO1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVDYWxlbmRhckJsdXIoZXZlbnQpIHtcclxuICAgICAgICBjb25zdCB7IGN1cnJlbnRUYXJnZXQgfSA9IGV2ZW50O1xyXG4gICAgICAgIC8vIHRpbWVvdXQgbmVlZGVkIGZvciBhY3RpdmUgZWxlbWVudCB0byB1cGRhdGUuIEJyb3dzZXIgYmVoYXZpb3IuXHJcbiAgICAgICAgLy8gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMzA3XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzSW5DYWxlbmRhciA9IGN1cnJlbnRUYXJnZXQuY29udGFpbnMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XHJcbiAgICAgICAgICAgIGlmICghaXNJbkNhbGVuZGFyICYmICFoZWxwZXJJbmZvcm1hdGlvblNob3duKSB7XHJcbiAgICAgICAgICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCAwKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUNsb3NlQnV0dG9uQ2xpY2soZXZlbnQpIHtcclxuICAgICAgICBpZiAoIWljb25SZWYuY3VycmVudCAmJiBwcmV2aW91c0ljb25SZWYuY3VycmVudCkge1xyXG4gICAgICAgICAgICBpY29uUmVmLmN1cnJlbnQgPSBwcmV2aW91c0ljb25SZWYuY3VycmVudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWNvblJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgc2V0Q2FsZW5kYXJPcGVuZWQoZmFsc2UpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gdG9nZ2xlQ2FsZW5kYXJPcGVuZWQoKSB7XHJcbiAgICAgICAgc2V0Q2FsZW5kYXJPcGVuZWQob3BlbmVkID0+IHtcclxuICAgICAgICAgICAgLy8gRm9jdXMgb24gdG9kYXkgd2hlbiBvcGVuaW5nIGNhbGVuZGFyIHdpdGhvdXQgYSBjaG9zZW4gZGF0ZVxyXG4gICAgICAgICAgICBpZiAoIW9wZW5lZCAmJiAhY2hvc2VuRGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUoc2V0RGVmYXVsdEZvY3VzZWREYXRlKCkpO1xyXG4gICAgICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQodHJ1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuICFvcGVuZWQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB7IHBsYWNlaG9sZGVyLCB0ZXN0SWQsIGRhdGVUaW1lUGlja2VyQ29udGVudCwgLi4ucmVzdCB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBvdGhlciA9IG9taXQoWydvbkRhdGVDaGFuZ2UnLCAnb25JbnB1dENoYW5nZScsICdvbklucHV0Qmx1cicsICdvbklucHV0Rm9jdXMnXSwgcmVzdCk7XHJcbiAgICBjb25zdCBkYXRlRmllbGRWYWx1ZSA9IGRhdGVGb3JtYXQgPT09ICdNTU1NIGQsIHl5eXknICYmIGNob3NlbkRhdGVcclxuICAgICAgICA/IGZvcm1hdChjaG9zZW5EYXRlLCBkYXRlRm9ybWF0KVxyXG4gICAgICAgIDogY2hvc2VuRGF0ZTtcclxuICAgIGNvbnN0IGlucHV0RGF0ZVZhbHVlID0gY2hvc2VuRGF0ZSA/IGZvcm1hdChjaG9zZW5EYXRlLCBkYXRlRm9ybWF0KSA6ICcnO1xyXG4gICAgbGV0IGlucHV0VmFsdWUgPSBwcm9wcy5pc0RhdGVGaWVsZElucHV0ID8gZGF0ZUZpZWxkVmFsdWUgOiBpbnB1dERhdGVWYWx1ZTtcclxuICAgIGlmIChpbnB1dFZhbHVlICYmIHByb3BzLmFkZGl0aW9uYWxJbnB1dENvbnRlbnQpIHtcclxuICAgICAgICBpbnB1dFZhbHVlID0gYCR7aW5wdXRWYWx1ZX0gJHtwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50fWA7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50KSB7XHJcbiAgICAgICAgc2V0Q2hvc2VuRGF0ZShuZXcgRGF0ZSgpKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgZmxvYXRpbmdTdHlsZXMsIHJlZnMsIGVsZW1lbnRzLCB1cGRhdGUgfSA9IHVzZU1hZ21hRmxvYXRpbmcoKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgcmVmZXJlbmNlRGF0ZUlucHV0ID0gZWxlbWVudHMucmVmZXJlbmNlO1xyXG4gICAgICAgIGNvbnN0IGZsb2F0aW5nQ2FsZW5kYXIgPSBlbGVtZW50cy5mbG9hdGluZztcclxuICAgICAgICBpZiAoY2FsZW5kYXJPcGVuZWQgJiYgcmVmZXJlbmNlRGF0ZUlucHV0ICYmIGZsb2F0aW5nQ2FsZW5kYXIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGF1dG9VcGRhdGUocmVmZXJlbmNlRGF0ZUlucHV0LCBmbG9hdGluZ0NhbGVuZGFyLCB1cGRhdGUpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtjYWxlbmRhck9wZW5lZCwgZWxlbWVudHMsIHVwZGF0ZV0pO1xyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KENhbGVuZGFyQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZToge1xyXG4gICAgICAgICAgICBjaG9zZW5EYXRlLFxyXG4gICAgICAgICAgICBmb2N1c2VkRGF0ZSxcclxuICAgICAgICAgICAgZGF0ZUZvY3VzZWQsXHJcbiAgICAgICAgICAgIG1heERhdGUsXHJcbiAgICAgICAgICAgIG1pbkRhdGUsXHJcbiAgICAgICAgICAgIGhlbHBlckluZm9ybWF0aW9uU2hvd24sXHJcbiAgICAgICAgICAgIGlzSW52ZXJzZSxcclxuICAgICAgICAgICAgYnVpbGRDYWxlbmRhck1vbnRoLFxyXG4gICAgICAgICAgICBzaG93SGVscGVySW5mb3JtYXRpb24sXHJcbiAgICAgICAgICAgIGhpZGVIZWxwZXJJbmZvcm1hdGlvbixcclxuICAgICAgICAgICAgb25LZXlEb3duOiBoYW5kbGVLZXlEb3duLFxyXG4gICAgICAgICAgICBvblByZXZNb250aENsaWNrLFxyXG4gICAgICAgICAgICBvbk5leHRNb250aENsaWNrLFxyXG4gICAgICAgICAgICBvbkRhdGVDaGFuZ2U6IGhhbmRsZURheVNlbGVjdGlvbixcclxuICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQsXHJcbiAgICAgICAgICAgIHNldEZvY3VzZWRUb2RheURhdGUsXHJcbiAgICAgICAgICAgIHNldEZvY3VzZWREYXRlLFxyXG4gICAgICAgICAgICBzZXRNb250aEZvY3VzZWREYXRlLFxyXG4gICAgICAgICAgICBzZXRZZWFyRm9jdXNlZERhdGUsXHJcbiAgICAgICAgICAgIG9uQ2xvc2U6IGNsb3NlSGVscGVySW5mb3JtYXRpb24sXHJcbiAgICAgICAgfSB9LFxyXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRGF0ZVBpY2tlckNvbnRhaW5lciwgeyBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCwgb25CbHVyOiBoYW5kbGVDYWxlbmRhckJsdXIgfSxcclxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChBbm5vdW5jZSwgbnVsbCwgY2FsZW5kYXJPcGVuZWQgJiYgKFJlYWN0LmNyZWF0ZUVsZW1lbnQoVmlzdWFsbHlIaWRkZW4sIG51bGwsIGkxOG4uZGF0ZVBpY2tlci5jYWxlbmRhck9wZW5Bbm5vdW5jZSkpKSxcclxuICAgICAgICAgICAgcHJvcHMuaXNEYXRlRmllbGRJbnB1dCA/IChSZWFjdC5jcmVhdGVFbGVtZW50KERhdGVGaWVsZElucHV0LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBpZDogaWQsIGRhdGVGb3JtYXQ6IGRhdGVGb3JtYXQsIGlucHV0VmFsdWU6IGlucHV0VmFsdWUsIG9uSWNvbkNsaWNrOiB0b2dnbGVDYWxlbmRhck9wZW5lZCwgc2V0UmVmZXJlbmNlOiByZWZzLnNldFJlZmVyZW5jZSwgaWNvblJlZjogaWNvblJlZiwgaW5wdXRSZWY6IGlucHV0UmVmLCBoYW5kbGVEYXRlQ2hhbmdlOiBoYW5kbGVEYXRlQ2hhbmdlLCBvbkNsZWFyRGF0ZTogcmVzZXQsIG9uSW5wdXRCbHVyOiBwcm9wcy5vbklucHV0Qmx1ciwgb25JbnB1dEZvY3VzOiBoYW5kbGVJbnB1dEZvY3VzLCBvbkljb25LZXlEb3duOiBoYW5kbGVJbnB1dEtleURvd24gfSkpKSA6IChSZWFjdC5jcmVhdGVFbGVtZW50KElucHV0LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBpY29uOiBSZWFjdC5jcmVhdGVFbGVtZW50KEV2ZW50SWNvbiwgbnVsbCksIGljb25BcmlhTGFiZWw6IGkxOG4uZGF0ZVBpY2tlci5jYWxlbmRhckljb25BcmlhTGFiZWwsIGljb25SZWY6IGljb25SZWYsIG9uSWNvbkNsaWNrOiB0b2dnbGVDYWxlbmRhck9wZW5lZCwgb25JY29uS2V5RG93bjogaGFuZGxlSW5wdXRLZXlEb3duLCBpZDogaWQsIGlzSW52ZXJzZTogaXNJbnZlcnNlLCByZWY6IHJlZiwgb25DaGFuZ2U6IGhhbmRsZUlucHV0Q2hhbmdlLCBvbkJsdXI6IGhhbmRsZUlucHV0Qmx1ciwgb25Gb2N1czogaGFuZGxlSW5wdXRGb2N1cywgb25LZXlEb3duOiBoYW5kbGVJbnB1dEtleURvd24sIG9uRGF0ZUNoYW5nZTogaGFuZGxlRGF0ZUNoYW5nZSwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyID8gcGxhY2Vob2xkZXIgOiBkYXRlRm9ybWF0LnRvTG93ZXJDYXNlKCksIHR5cGU6IElucHV0VHlwZS50ZXh0LCB2YWx1ZTogaW5wdXRWYWx1ZSwgc2V0UmVmZXJlbmNlOiByZWZzLnNldFJlZmVyZW5jZSB9KSkpLFxyXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEludmVyc2VDb250ZXh0LlByb3ZpZGVyLCB7IHZhbHVlOiB7IGlzSW52ZXJzZSB9IH0sXHJcbiAgICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHsgcmVmOiBlbCA9PiBjYWxlbmRhck9wZW5lZCAmJiByZWZzLnNldEZsb2F0aW5nKGVsKSwgc3R5bGU6IHsgLi4uZmxvYXRpbmdTdHlsZXMsIHpJbmRleDogJzk5OCcgfSB9LFxyXG4gICAgICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRGF0ZVBpY2tlckNhbGVuZGFyLCB7IFwiZGF0YS10ZXN0aWRcIjogXCJjYWxlbmRhckNvbnRhaW5lclwiLCBvcGVuZWQ6IGNhbGVuZGFyT3BlbmVkLCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgdGhlbWU6IHRoZW1lIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoQ2FsZW5kYXJNb250aCwgeyBmb2N1c09uT3BlbjogY2FsZW5kYXJPcGVuZWQgJiYgQm9vbGVhbihmb2N1c2VkRGF0ZSksIGlzSW52ZXJzZTogaXNJbnZlcnNlLCBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrOiBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrLCBjYWxlbmRhck9wZW5lZDogY2FsZW5kYXJPcGVuZWQsIHNldERhdGVGb2N1c2VkOiBzZXREYXRlRm9jdXNlZCwgZGF0ZVRpbWVQaWNrZXJDb250ZW50OiBkYXRlVGltZVBpY2tlckNvbnRlbnQgfSkpKSkpKSk7XHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXX0= */",
24979
+ styles: "position:relative/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQnVDIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBhdXRvVXBkYXRlIH0gZnJvbSAnQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSc7XHJcbmltcG9ydCB7IGFkZERheXMsIGVuZE9mRGF5LCBpc0FmdGVyLCBpc0JlZm9yZSwgaXNNYXRjaCwgaXNWYWxpZCwgcGFyc2UsIHNldEhvdXJzLCBzdGFydE9mRGF5LCB9IGZyb20gJ2RhdGUtZm5zJztcclxuaW1wb3J0IHsgdHJhbnNwYXJlbnRpemUgfSBmcm9tICdwb2xpc2hlZCc7XHJcbmltcG9ydCB7IEV2ZW50SWNvbiB9IGZyb20gJ3JlYWN0LW1hZ21hLWljb25zJztcclxuaW1wb3J0IHsgQ2FsZW5kYXJDb250ZXh0IH0gZnJvbSAnLi9DYWxlbmRhckNvbnRleHQnO1xyXG5pbXBvcnQgeyBDYWxlbmRhck1vbnRoIH0gZnJvbSAnLi9DYWxlbmRhck1vbnRoJztcclxuaW1wb3J0IHsgdXNlTWFnbWFGbG9hdGluZyB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZU1hZ21hRmxvYXRpbmcnO1xyXG5pbXBvcnQgeyBJMThuQ29udGV4dCB9IGZyb20gJy4uLy4uL2kxOG4nO1xyXG5pbXBvcnQgeyBJbnZlcnNlQ29udGV4dCwgdXNlSXNJbnZlcnNlIH0gZnJvbSAnLi4vLi4vaW52ZXJzZSc7XHJcbmltcG9ydCB7IFRoZW1lQ29udGV4dCB9IGZyb20gJy4uLy4uL3RoZW1lL1RoZW1lQ29udGV4dCc7XHJcbmltcG9ydCB7IEFubm91bmNlIH0gZnJvbSAnLi4vQW5ub3VuY2UnO1xyXG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gJy4uL0lucHV0JztcclxuaW1wb3J0IHsgSW5wdXRUeXBlIH0gZnJvbSAnLi4vSW5wdXRCYXNlJztcclxuaW1wb3J0IHsgVmlzdWFsbHlIaWRkZW4gfSBmcm9tICcuLi9WaXN1YWxseUhpZGRlbic7XHJcbmltcG9ydCB7IERhdGVGaWVsZElucHV0IH0gZnJvbSAnLi9EYXRlRmllbGQvRGF0ZUZpZWxkSW5wdXQnO1xyXG5pbXBvcnQgeyBnZXRDYWxlbmRhck1vbnRoV2Vla3MsIGdldERhdGVGcm9tU3RyaW5nLCBnZXROZXh0TW9udGhGcm9tRGF0ZSwgZ2V0UHJldk1vbnRoRnJvbURhdGUsIGhhbmRsZUtleVByZXNzLCBzZXRNb250aEZvckRhdGUsIHNldFllYXJGb3JEYXRlLCBpMThuRm9ybWF0IGFzIGZvcm1hdCwgaW5EYXRlUmFuZ2UsIH0gZnJvbSAnLi91dGlscyc7XHJcbmltcG9ydCB7IG9taXQsIHVzZUZvcmtlZFJlZiwgdXNlR2VuZXJhdGVJZCB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuY29uc3QgRGF0ZVBpY2tlckNvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xyXG5jb25zdCBEYXRlUGlja2VyQ2FsZW5kYXIgPSBzdHlsZWQuZGl2IGBcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyB0cmFuc3BhcmVudGl6ZSgwLjUsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwKVxyXG4gICAgOiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDMwMH07XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYm9yZGVyUmFkaXVzfTtcbiAgYm94LXNoYWRvdzogMCAycHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMuaXNJbnZlcnNlXHJcbiAgICA/IHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwXHJcbiAgICA6IHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwfTtcbiAgZGlzcGxheTogJHtwcm9wcyA9PiAocHJvcHMub3BlbmVkID8gJ2Jsb2NrJyA6ICdub25lJyl9O1xuICBtYXJnaW46ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDF9IDBweDtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMub3BlbmVkID8gJzEnIDogJzAnKX07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgd2lkdGg6IDMyMHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IERhdGVQaWNrZXIgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKSA9PiB7XHJcbiAgICBjb25zdCB0aGVtZSA9IFJlYWN0LnVzZUNvbnRleHQoVGhlbWVDb250ZXh0KTtcclxuICAgIGNvbnN0IGkxOG4gPSBSZWFjdC51c2VDb250ZXh0KEkxOG5Db250ZXh0KTtcclxuICAgIGNvbnN0IGljb25SZWYgPSBSZWFjdC51c2VSZWYoKTtcclxuICAgIGNvbnN0IHByZXZpb3VzSWNvblJlZiA9IFJlYWN0LnVzZVJlZigpO1xyXG4gICAgY29uc3QgaW5wdXRSZWYgPSBSZWFjdC51c2VSZWYoKTtcclxuICAgIGNvbnN0IGxhc3RGb2N1cyA9IFJlYWN0LnVzZVJlZigpO1xyXG4gICAgY29uc3QgaWQgPSB1c2VHZW5lcmF0ZUlkKHByb3BzLmlkKTtcclxuICAgIGNvbnN0IGlzSW52ZXJzZSA9IHVzZUlzSW52ZXJzZShwcm9wcy5pc0ludmVyc2UpO1xyXG4gICAgY29uc3QgbWluRGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKHByb3BzLm1pbkRhdGUpO1xyXG4gICAgY29uc3QgbWF4RGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKHByb3BzLm1heERhdGUpO1xyXG4gICAgY29uc3QgZGF0ZUZvcm1hdCA9IGkxOG4uZGF0ZUZvcm1hdDtcclxuICAgIGNvbnN0IFtoZWxwZXJJbmZvcm1hdGlvblNob3duLCBzZXRIZWxwZXJJbmZvcm1hdGlvblNob3duXSA9IFJlYWN0LnVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IFtjYWxlbmRhck9wZW5lZCwgc2V0Q2FsZW5kYXJPcGVuZWRdID0gUmVhY3QudXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW2RhdGVGb2N1c2VkLCBzZXREYXRlRm9jdXNlZF0gPSBSZWFjdC51c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBbZm9jdXNlZERhdGUsIHNldEZvY3VzZWREYXRlXSA9IFJlYWN0LnVzZVN0YXRlKHNldERhdGVGcm9tQ29uc3VtZXIocHJvcHMudmFsdWUgfHwgcHJvcHMuZGVmYXVsdERhdGUpIHx8XHJcbiAgICAgICAgc2V0RGVmYXVsdEZvY3VzZWREYXRlKCkpO1xyXG4gICAgY29uc3QgW2Nob3NlbkRhdGUsIHNldENob3NlbkRhdGVdID0gUmVhY3QudXNlU3RhdGUoc2V0RGF0ZUZyb21Db25zdW1lcihwcm9wcy52YWx1ZSB8fCBwcm9wcy5kZWZhdWx0RGF0ZSkpO1xyXG4gICAgY29uc3QgcmVmID0gdXNlRm9ya2VkUmVmKGZvcndhcmRlZFJlZiwgaW5wdXRSZWYpO1xyXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBpZiAocHJvcHMuYXBpUmVmKSB7XHJcbiAgICAgICAgICAgIHByb3BzLmFwaVJlZi5jdXJyZW50ID0ge1xyXG4gICAgICAgICAgICAgICAgY2xvc2VEYXRlUGlja2VyTWFudWFsbHkoZXZlbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrKGV2ZW50KTtcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBvcGVuRGF0ZVBpY2tlck1hbnVhbGx5KGV2ZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9nZ2xlQ2FsZW5kYXJPcGVuZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGVUaW1lUGlja2VyQ29udGVudCAmJlxyXG4gICAgICAgICAgICBjaG9zZW5EYXRlICYmXHJcbiAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQgIT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgaWYgKCFwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50ICYmIHByb3BzLnNldEFkZGl0aW9uYWxJbnB1dENvbnRlbnQpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLnNldEFkZGl0aW9uYWxJbnB1dENvbnRlbnQoJzEyOjAwIEFNJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUoY2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2Nob3NlbkRhdGVdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFjYWxlbmRhck9wZW5lZCkge1xyXG4gICAgICAgICAgICBzZXREYXRlRm9jdXNlZChmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2NhbGVuZGFyT3BlbmVkXSk7XHJcbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGlmIChwcm9wcy52YWx1ZSkge1xyXG4gICAgICAgICAgICBzZXRGb2N1c2VkRGF0ZShzZXREYXRlRnJvbUNvbnN1bWVyKHByb3BzLnZhbHVlKSB8fCBzZXREZWZhdWx0Rm9jdXNlZERhdGUoKSk7XHJcbiAgICAgICAgICAgIHNldENob3NlbkRhdGUoc2V0RGF0ZUZyb21Db25zdW1lcihwcm9wcy52YWx1ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocHJvcHMudmFsdWUgPT09IG51bGwpXHJcbiAgICAgICAgICAgIHNldENob3NlbkRhdGUodW5kZWZpbmVkKTtcclxuICAgIH0sIFtwcm9wcy52YWx1ZV0pO1xyXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBwcmV2aW91c0ljb25SZWYuY3VycmVudCA9IGljb25SZWYuY3VycmVudDtcclxuICAgIH0sIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFmb2N1c2VkRGF0ZSB8fCAhbWluRGF0ZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGlmIChpc0JlZm9yZShmb2N1c2VkRGF0ZSwgbWluRGF0ZSkgJiYgIWNob3NlbkRhdGUpIHtcclxuICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobWluRGF0ZSk7XHJcbiAgICAgICAgICAgIHNldERhdGVGb2N1c2VkKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmb2N1c2VkRGF0ZSwgbWluRGF0ZSwgY2hvc2VuRGF0ZV0pO1xyXG4gICAgZnVuY3Rpb24gc2hvd0hlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIGxhc3RGb2N1cy5jdXJyZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcclxuICAgICAgICBzZXRIZWxwZXJJbmZvcm1hdGlvblNob3duKHRydWUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gaGlkZUhlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIGxhc3RGb2N1cy5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgc2V0SGVscGVySW5mb3JtYXRpb25TaG93bihmYWxzZSk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBjbG9zZUhlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIHNldEhlbHBlckluZm9ybWF0aW9uU2hvd24oZmFsc2UpO1xyXG4gICAgICAgIGljb25SZWYuY3VycmVudC5mb2N1cygpO1xyXG4gICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHNldEZvY3VzZWRUb2RheURhdGUgPSAoZXZlbnQpID0+IHtcclxuICAgICAgICBjb25zdCBpc0tleWJvYXJkRXZlbnQgPSBldmVudC50eXBlID09PSAna2V5ZG93bic7XHJcbiAgICAgICAgaWYgKChpc0tleWJvYXJkRXZlbnQgJiZcclxuICAgICAgICAgICAgKGV2ZW50LmtleSA9PT0gJyAnIHx8XHJcbiAgICAgICAgICAgICAgICBldmVudC5rZXkgPT09ICdFbnRlcicpKSB8fFxyXG4gICAgICAgICAgICBldmVudC50eXBlID09PSAnY2xpY2snKSB7XHJcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKHNldERlZmF1bHRGb2N1c2VkRGF0ZSgpKTtcclxuICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuICAgIGZ1bmN0aW9uIHNldERhdGVGcm9tQ29uc3VtZXIoZGF0ZSkge1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZERhdGUgPSBnZXREYXRlRnJvbVN0cmluZyhkYXRlKTtcclxuICAgICAgICBjb25zdCBjb252ZXJ0ZWRNaW5EYXRlID0gZ2V0RGF0ZUZyb21TdHJpbmcobWluRGF0ZSk7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkTWF4RGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKG1heERhdGUpO1xyXG4gICAgICAgIHJldHVybiBkYXRlICYmXHJcbiAgICAgICAgICAgIGluRGF0ZVJhbmdlKGNvbnZlcnRlZERhdGUsIGNvbnZlcnRlZE1pbkRhdGUsIGNvbnZlcnRlZE1heERhdGUpXHJcbiAgICAgICAgICAgID8gY29udmVydGVkRGF0ZVxyXG4gICAgICAgICAgICA6IG51bGw7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBzZXREZWZhdWx0Rm9jdXNlZERhdGUoKSB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkTWluRGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKG1pbkRhdGUpO1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZE1heERhdGUgPSBnZXREYXRlRnJvbVN0cmluZyhtYXhEYXRlKTtcclxuICAgICAgICBpZiAoaW5EYXRlUmFuZ2UobmV3RGF0ZSwgY29udmVydGVkTWluRGF0ZSwgY29udmVydGVkTWF4RGF0ZSkpIHtcclxuICAgICAgICAgICAgaWYgKGlzQmVmb3JlKHN0YXJ0T2ZEYXkobmV3RGF0ZSksIGNvbnZlcnRlZE1pbkRhdGUpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWRkRGF5cyhuZXdEYXRlLCAxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gbmV3RGF0ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY29udmVydGVkTWF4RGF0ZSB8fCBjb252ZXJ0ZWRNaW5EYXRlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZWRNaW5EYXRlID8gY29udmVydGVkTWluRGF0ZSA6IGNvbnZlcnRlZE1heERhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gYnVpbGRDYWxlbmRhck1vbnRoKGRhdGUsIGVuYWJsZU91dHNpZGVEYXRlcykge1xyXG4gICAgICAgIGNvbnN0IGRheXMgPSBbXHJcbiAgICAgICAgICAgICdzdW5kYXknLFxyXG4gICAgICAgICAgICAnbW9uZGF5JyxcclxuICAgICAgICAgICAgJ3R1ZXNkYXknLFxyXG4gICAgICAgICAgICAnd2VkbmVzZGF5JyxcclxuICAgICAgICAgICAgJ3RodXJzZGF5JyxcclxuICAgICAgICAgICAgJ2ZyaWRheScsXHJcbiAgICAgICAgICAgICdzYXR1cmRheScsXHJcbiAgICAgICAgXTtcclxuICAgICAgICBjb25zdCB7IHN0YXJ0T2ZXZWVrIH0gPSBpMThuLmRhdGVQaWNrZXI7XHJcbiAgICAgICAgcmV0dXJuIGdldENhbGVuZGFyTW9udGhXZWVrcyhkYXRlLCBlbmFibGVPdXRzaWRlRGF0ZXMsIGRheXMuaW5kZXhPZihzdGFydE9mV2VlaykpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gb25QcmV2TW9udGhDbGljaygpIHtcclxuICAgICAgICBjb25zdCBuZXdEYXRlID0gZ2V0UHJldk1vbnRoRnJvbURhdGUoZm9jdXNlZERhdGUpO1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gb25OZXh0TW9udGhDbGljaygpIHtcclxuICAgICAgICBjb25zdCBuZXdEYXRlID0gZ2V0TmV4dE1vbnRoRnJvbURhdGUoZm9jdXNlZERhdGUpO1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gc2V0TW9udGhGb2N1c2VkRGF0ZShtb250aE51bWJlcikge1xyXG4gICAgICAgIGNvbnN0IG5ld0RhdGUgPSBzZXRNb250aEZvckRhdGUoZm9jdXNlZERhdGUsIG1vbnRoTnVtYmVyKTtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIHNldFllYXJGb2N1c2VkRGF0ZSh5ZWFyTnVtYmVyKSB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0ZSA9IHNldFllYXJGb3JEYXRlKGZvY3VzZWREYXRlLCB5ZWFyTnVtYmVyKTtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIG9uRGF0ZUNoYW5nZShkYXkpIHtcclxuICAgICAgICBzZXRDaG9zZW5EYXRlKGRheSk7XHJcbiAgICAgICAgaWYgKGRhdGVUaW1lUGlja2VyQ29udGVudClcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIHJlc2V0KCkge1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKHNldERlZmF1bHRGb2N1c2VkRGF0ZSgpKTtcclxuICAgICAgICBzZXRDaG9zZW5EYXRlKG51bGwpO1xyXG4gICAgICAgIHNldERhdGVGb2N1c2VkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGlzVmFsaWREYXRlRnJvbVN0cmluZyh2YWx1ZSkge1xyXG4gICAgICAgIGNvbnN0IGlzVmFsaWREYXRlRm9ybWF0ID0gaXNNYXRjaCh2YWx1ZSwgaTE4bi5kYXRlRm9ybWF0KTtcclxuICAgICAgICBjb25zdCBwYXJzZWREYXRlID0gcGFyc2UodmFsdWUsIGkxOG4uZGF0ZUZvcm1hdCwgbmV3IERhdGUoKSk7XHJcbiAgICAgICAgY29uc3QgaXNWYWxpZERhdGUgPSBpc1ZhbGlkKHBhcnNlZERhdGUpO1xyXG4gICAgICAgIHJldHVybiBpc1ZhbGlkRGF0ZUZvcm1hdCAmJiBpc1ZhbGlkRGF0ZTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUlucHV0Q2hhbmdlKGV2ZW50KSB7XHJcbiAgICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gZXZlbnQudGFyZ2V0O1xyXG4gICAgICAgIGNvbnN0IGRheSA9IG5ldyBEYXRlKHZhbHVlKTtcclxuICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgcHJvcHMub25JbnB1dENoYW5nZSAmJlxyXG4gICAgICAgICAgICB0eXBlb2YgcHJvcHMub25JbnB1dENoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbklucHV0Q2hhbmdlKGV2ZW50KTtcclxuICAgICAgICBsZXQgaXNWYWxpZERheTtcclxuICAgICAgICBpZiAoZGF0ZVRpbWVQaWNrZXJDb250ZW50KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNwbGl0VmFsdWUgPSB2YWx1ZS5zcGxpdCgnICcpWzBdO1xyXG4gICAgICAgICAgICBpc1ZhbGlkRGF5ID0gaXNWYWxpZERhdGVGcm9tU3RyaW5nKHNwbGl0VmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCB2YWxpZERheSA9IG5ldyBEYXRlKHNwbGl0VmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gL15cXGR7Mn1cXC9cXGR7Mn1cXC9cXGR7NH0kLztcclxuICAgICAgICAgICAgaWYgKHBhdHRlcm4udGVzdChzcGxpdFZhbHVlKSAmJiBpc1ZhbGlkKHZhbGlkRGF5KSkge1xyXG4gICAgICAgICAgICAgICAgc2V0Q2hvc2VuRGF0ZSh2YWxpZERheSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UoaXNWYWxpZERheSA/IHZhbGlkRGF5LnRvSVNPU3RyaW5nKCkgOiBzcGxpdFZhbHVlLCBldmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBpc1ZhbGlkRGF5ID0gaXNWYWxpZERhdGVGcm9tU3RyaW5nKHZhbHVlKTtcclxuICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UoaXNWYWxpZERheSA/IGRheS50b0lTT1N0cmluZygpIDogdmFsdWUsIGV2ZW50KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVJbnB1dEZvY3VzKGV2ZW50KSB7XHJcbiAgICAgICAgcHJvcHMub25JbnB1dEZvY3VzICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbklucHV0Rm9jdXMgPT09ICdmdW5jdGlvbicgJiZcclxuICAgICAgICAgICAgcHJvcHMub25JbnB1dEZvY3VzKGV2ZW50KTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUlucHV0Qmx1cihldmVudCkge1xyXG4gICAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IGlucHV0UmVmLmN1cnJlbnQ7XHJcbiAgICAgICAgY29uc3QgZGF5ID0gcGFyc2UoZGF0ZVRpbWVQaWNrZXJDb250ZW50ID8gdmFsdWUuc3BsaXQoJyAnKVswXSA6IHZhbHVlLCBpMThuLmRhdGVGb3JtYXQsIG5ldyBEYXRlKCkpO1xyXG4gICAgICAgIGxldCBpc1ZhbGlkRGF5O1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3BsaXRWYWx1ZSA9IHZhbHVlLnNwbGl0KCcgJylbMF07XHJcbiAgICAgICAgICAgIGlzVmFsaWREYXkgPSBpc1ZhbGlkRGF0ZUZyb21TdHJpbmcoc3BsaXRWYWx1ZSk7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbGlkRGF5ID0gbmV3IERhdGUoc3BsaXRWYWx1ZSk7XHJcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkRGF5KSB7XHJcbiAgICAgICAgICAgICAgICBoYW5kbGVEYXRlQ2hhbmdlKHZhbGlkRGF5LCBldmVudCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGlzVmFsaWREYXkgPSBpc1ZhbGlkRGF0ZUZyb21TdHJpbmcodmFsdWUpO1xyXG4gICAgICAgICAgICBpZiAoaXNWYWxpZERheSkge1xyXG4gICAgICAgICAgICAgICAgaGFuZGxlRGF0ZUNoYW5nZShkYXksIGV2ZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJlc2V0ICYmIHR5cGVvZiByZXNldCA9PT0gJ2Z1bmN0aW9uJyAmJiByZXNldCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByb3BzLm9uSW5wdXRCbHVyICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbklucHV0Qmx1ciA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbklucHV0Qmx1cihldmVudCk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVJbnB1dEtleURvd24oZXZlbnQpIHtcclxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xyXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVLZXlEb3duKGV2ZW50KSB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcclxuICAgICAgICAgICAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgICAgICAgICAgaWNvblJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChkYXRlRm9jdXNlZCAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50LmNsb3Nlc3QoJ3RhYmxlJykpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3Q2hvc2VuRGF0ZSA9IGhhbmRsZUtleVByZXNzKGV2ZW50LCBmb2N1c2VkRGF0ZSwgc2V0Q2FsZW5kYXJPcGVuZWQsIHNob3dIZWxwZXJJbmZvcm1hdGlvbiwgb25EYXRlQ2hhbmdlLCBpY29uUmVmKTtcclxuICAgICAgICAgICAgaWYgKG5ld0Nob3NlbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgIGlmIChtaW5EYXRlICYmIG1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZnRlcihzZXRIb3VycyhuZXdDaG9zZW5EYXRlLCAxMiksIHN0YXJ0T2ZEYXkobWluRGF0ZSkpICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzQmVmb3JlKHNldEhvdXJzKG5ld0Nob3NlbkRhdGUsIDEyKSwgZW5kT2ZEYXkobWF4RGF0ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0Nob3NlbkRhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1pbkRhdGUgJiYgIW1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZnRlcihzZXRIb3VycyhuZXdDaG9zZW5EYXRlLCAxMiksIHN0YXJ0T2ZEYXkobWluRGF0ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0Nob3NlbkRhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1heERhdGUgJiYgIW1pbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNCZWZvcmUoc2V0SG91cnMobmV3Q2hvc2VuRGF0ZSwgMTIpLCBlbmRPZkRheShtYXhEYXRlKSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobmV3Q2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobmV3Q2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVEYXRlQ2hhbmdlKGRheSwgZXZlbnQpIHtcclxuICAgICAgICBwcm9wcy5vbkRhdGVDaGFuZ2UgJiZcclxuICAgICAgICAgICAgdHlwZW9mIHByb3BzLm9uRGF0ZUNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbkRhdGVDaGFuZ2UoZGF5LCBldmVudCk7XHJcbiAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nICYmXHJcbiAgICAgICAgICAgIHByb3BzLm9uQ2hhbmdlKGRheT8udG9JU09TdHJpbmcoKSwgZXZlbnQpO1xyXG4gICAgICAgIG9uRGF0ZUNoYW5nZShkYXkpO1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShkYXkpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gaGFuZGxlRGF5U2VsZWN0aW9uKGRheSwgZXZlbnQpIHtcclxuICAgICAgICBoYW5kbGVEYXRlQ2hhbmdlKGRheSwgZXZlbnQpO1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVDYWxlbmRhckJsdXIoZXZlbnQpIHtcclxuICAgICAgICBjb25zdCB7IGN1cnJlbnRUYXJnZXQgfSA9IGV2ZW50O1xyXG4gICAgICAgIC8vIHRpbWVvdXQgbmVlZGVkIGZvciBhY3RpdmUgZWxlbWVudCB0byB1cGRhdGUuIEJyb3dzZXIgYmVoYXZpb3IuXHJcbiAgICAgICAgLy8gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMzA3XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzSW5DYWxlbmRhciA9IGN1cnJlbnRUYXJnZXQuY29udGFpbnMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XHJcbiAgICAgICAgICAgIGlmICghaXNJbkNhbGVuZGFyICYmICFoZWxwZXJJbmZvcm1hdGlvblNob3duKSB7XHJcbiAgICAgICAgICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCAwKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUNsb3NlQnV0dG9uQ2xpY2soZXZlbnQpIHtcclxuICAgICAgICBpZiAoIWljb25SZWYuY3VycmVudCAmJiBwcmV2aW91c0ljb25SZWYuY3VycmVudCkge1xyXG4gICAgICAgICAgICBpY29uUmVmLmN1cnJlbnQgPSBwcmV2aW91c0ljb25SZWYuY3VycmVudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWNvblJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgc2V0Q2FsZW5kYXJPcGVuZWQoZmFsc2UpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gdG9nZ2xlQ2FsZW5kYXJPcGVuZWQoKSB7XHJcbiAgICAgICAgc2V0Q2FsZW5kYXJPcGVuZWQob3BlbmVkID0+IHtcclxuICAgICAgICAgICAgLy8gRm9jdXMgb24gdG9kYXkgd2hlbiBvcGVuaW5nIGNhbGVuZGFyIHdpdGhvdXQgYSBjaG9zZW4gZGF0ZVxyXG4gICAgICAgICAgICBpZiAoIW9wZW5lZCAmJiAhY2hvc2VuRGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUoc2V0RGVmYXVsdEZvY3VzZWREYXRlKCkpO1xyXG4gICAgICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQodHJ1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuICFvcGVuZWQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB7IHBsYWNlaG9sZGVyLCB0ZXN0SWQsIGRhdGVUaW1lUGlja2VyQ29udGVudCwgLi4ucmVzdCB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBvdGhlciA9IG9taXQoWydvbkRhdGVDaGFuZ2UnLCAnb25JbnB1dENoYW5nZScsICdvbklucHV0Qmx1cicsICdvbklucHV0Rm9jdXMnXSwgcmVzdCk7XHJcbiAgICBjb25zdCBkYXRlRmllbGRWYWx1ZSA9IGRhdGVGb3JtYXQgPT09ICdNTU1NIGQsIHl5eXknICYmIGNob3NlbkRhdGVcclxuICAgICAgICA/IGZvcm1hdChjaG9zZW5EYXRlLCBkYXRlRm9ybWF0KVxyXG4gICAgICAgIDogY2hvc2VuRGF0ZTtcclxuICAgIGNvbnN0IGlucHV0RGF0ZVZhbHVlID0gY2hvc2VuRGF0ZSA/IGZvcm1hdChjaG9zZW5EYXRlLCBkYXRlRm9ybWF0KSA6ICcnO1xyXG4gICAgbGV0IGlucHV0VmFsdWUgPSBwcm9wcy5pc0RhdGVGaWVsZElucHV0ID8gZGF0ZUZpZWxkVmFsdWUgOiBpbnB1dERhdGVWYWx1ZTtcclxuICAgIGlmIChpbnB1dFZhbHVlICYmIHByb3BzLmFkZGl0aW9uYWxJbnB1dENvbnRlbnQpIHtcclxuICAgICAgICBpbnB1dFZhbHVlID0gYCR7aW5wdXRWYWx1ZX0gJHtwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50fWA7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50KSB7XHJcbiAgICAgICAgc2V0Q2hvc2VuRGF0ZShuZXcgRGF0ZSgpKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgZmxvYXRpbmdTdHlsZXMsIHJlZnMsIGVsZW1lbnRzLCB1cGRhdGUgfSA9IHVzZU1hZ21hRmxvYXRpbmcoKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgcmVmZXJlbmNlRGF0ZUlucHV0ID0gZWxlbWVudHMucmVmZXJlbmNlO1xyXG4gICAgICAgIGNvbnN0IGZsb2F0aW5nQ2FsZW5kYXIgPSBlbGVtZW50cy5mbG9hdGluZztcclxuICAgICAgICBpZiAoY2FsZW5kYXJPcGVuZWQgJiYgcmVmZXJlbmNlRGF0ZUlucHV0ICYmIGZsb2F0aW5nQ2FsZW5kYXIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGF1dG9VcGRhdGUocmVmZXJlbmNlRGF0ZUlucHV0LCBmbG9hdGluZ0NhbGVuZGFyLCB1cGRhdGUpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtjYWxlbmRhck9wZW5lZCwgZWxlbWVudHMsIHVwZGF0ZV0pO1xyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KENhbGVuZGFyQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZToge1xyXG4gICAgICAgICAgICBjaG9zZW5EYXRlLFxyXG4gICAgICAgICAgICBmb2N1c2VkRGF0ZSxcclxuICAgICAgICAgICAgZGF0ZUZvY3VzZWQsXHJcbiAgICAgICAgICAgIG1heERhdGUsXHJcbiAgICAgICAgICAgIG1pbkRhdGUsXHJcbiAgICAgICAgICAgIGhlbHBlckluZm9ybWF0aW9uU2hvd24sXHJcbiAgICAgICAgICAgIGlzSW52ZXJzZSxcclxuICAgICAgICAgICAgYnVpbGRDYWxlbmRhck1vbnRoLFxyXG4gICAgICAgICAgICBzaG93SGVscGVySW5mb3JtYXRpb24sXHJcbiAgICAgICAgICAgIGhpZGVIZWxwZXJJbmZvcm1hdGlvbixcclxuICAgICAgICAgICAgb25LZXlEb3duOiBoYW5kbGVLZXlEb3duLFxyXG4gICAgICAgICAgICBvblByZXZNb250aENsaWNrLFxyXG4gICAgICAgICAgICBvbk5leHRNb250aENsaWNrLFxyXG4gICAgICAgICAgICBvbkRhdGVDaGFuZ2U6IGhhbmRsZURheVNlbGVjdGlvbixcclxuICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQsXHJcbiAgICAgICAgICAgIHNldEZvY3VzZWRUb2RheURhdGUsXHJcbiAgICAgICAgICAgIHNldEZvY3VzZWREYXRlLFxyXG4gICAgICAgICAgICBzZXRNb250aEZvY3VzZWREYXRlLFxyXG4gICAgICAgICAgICBzZXRZZWFyRm9jdXNlZERhdGUsXHJcbiAgICAgICAgICAgIG9uQ2xvc2U6IGNsb3NlSGVscGVySW5mb3JtYXRpb24sXHJcbiAgICAgICAgfSB9LFxyXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRGF0ZVBpY2tlckNvbnRhaW5lciwgeyBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCwgb25CbHVyOiBoYW5kbGVDYWxlbmRhckJsdXIgfSxcclxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChBbm5vdW5jZSwgbnVsbCwgY2FsZW5kYXJPcGVuZWQgJiYgKFJlYWN0LmNyZWF0ZUVsZW1lbnQoVmlzdWFsbHlIaWRkZW4sIG51bGwsIGkxOG4uZGF0ZVBpY2tlci5jYWxlbmRhck9wZW5Bbm5vdW5jZSkpKSxcclxuICAgICAgICAgICAgcHJvcHMuaXNEYXRlRmllbGRJbnB1dCA/IChSZWFjdC5jcmVhdGVFbGVtZW50KERhdGVGaWVsZElucHV0LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBpZDogaWQsIGRhdGVGb3JtYXQ6IGRhdGVGb3JtYXQsIGlucHV0VmFsdWU6IGlucHV0VmFsdWUsIG9uSWNvbkNsaWNrOiB0b2dnbGVDYWxlbmRhck9wZW5lZCwgc2V0UmVmZXJlbmNlOiByZWZzLnNldFJlZmVyZW5jZSwgaWNvblJlZjogaWNvblJlZiwgaW5wdXRSZWY6IGlucHV0UmVmLCBoYW5kbGVEYXRlQ2hhbmdlOiBoYW5kbGVEYXRlQ2hhbmdlLCBvbkNsZWFyRGF0ZTogcmVzZXQsIG9uSW5wdXRCbHVyOiBwcm9wcy5vbklucHV0Qmx1ciwgb25JbnB1dEZvY3VzOiBoYW5kbGVJbnB1dEZvY3VzLCBvbkljb25LZXlEb3duOiBoYW5kbGVJbnB1dEtleURvd24gfSkpKSA6IChSZWFjdC5jcmVhdGVFbGVtZW50KElucHV0LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBpY29uOiBSZWFjdC5jcmVhdGVFbGVtZW50KEV2ZW50SWNvbiwgbnVsbCksIGljb25BcmlhTGFiZWw6IGkxOG4uZGF0ZVBpY2tlci5jYWxlbmRhckljb25BcmlhTGFiZWwsIGljb25SZWY6IGljb25SZWYsIG9uSWNvbkNsaWNrOiB0b2dnbGVDYWxlbmRhck9wZW5lZCwgb25JY29uS2V5RG93bjogaGFuZGxlSW5wdXRLZXlEb3duLCBpZDogaWQsIGlzSW52ZXJzZTogaXNJbnZlcnNlLCByZWY6IHJlZiwgb25DaGFuZ2U6IGhhbmRsZUlucHV0Q2hhbmdlLCBvbkJsdXI6IGhhbmRsZUlucHV0Qmx1ciwgb25Gb2N1czogaGFuZGxlSW5wdXRGb2N1cywgb25LZXlEb3duOiBoYW5kbGVJbnB1dEtleURvd24sIG9uRGF0ZUNoYW5nZTogaGFuZGxlRGF0ZUNoYW5nZSwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyID8gcGxhY2Vob2xkZXIgOiBkYXRlRm9ybWF0LnRvTG93ZXJDYXNlKCksIHR5cGU6IElucHV0VHlwZS50ZXh0LCB2YWx1ZTogaW5wdXRWYWx1ZSwgc2V0UmVmZXJlbmNlOiByZWZzLnNldFJlZmVyZW5jZSB9KSkpLFxyXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEludmVyc2VDb250ZXh0LlByb3ZpZGVyLCB7IHZhbHVlOiB7IGlzSW52ZXJzZSB9IH0sXHJcbiAgICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHsgcmVmOiBlbCA9PiBjYWxlbmRhck9wZW5lZCAmJiByZWZzLnNldEZsb2F0aW5nKGVsKSwgc3R5bGU6IHsgLi4uZmxvYXRpbmdTdHlsZXMsIHpJbmRleDogJzk5OCcgfSB9LFxyXG4gICAgICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRGF0ZVBpY2tlckNhbGVuZGFyLCB7IFwiZGF0YS10ZXN0aWRcIjogXCJjYWxlbmRhckNvbnRhaW5lclwiLCBvcGVuZWQ6IGNhbGVuZGFyT3BlbmVkLCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgdGhlbWU6IHRoZW1lIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoQ2FsZW5kYXJNb250aCwgeyBmb2N1c09uT3BlbjogY2FsZW5kYXJPcGVuZWQgJiYgQm9vbGVhbihmb2N1c2VkRGF0ZSksIGlzSW52ZXJzZTogaXNJbnZlcnNlLCBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrOiBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrLCBjYWxlbmRhck9wZW5lZDogY2FsZW5kYXJPcGVuZWQsIHNldERhdGVGb2N1c2VkOiBzZXREYXRlRm9jdXNlZCwgZGF0ZVRpbWVQaWNrZXJDb250ZW50OiBkYXRlVGltZVBpY2tlckNvbnRlbnQgfSkpKSkpKSk7XHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXX0= */",
24823
24980
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$l
24824
24981
  });
24825
24982
  /*#__PURE__*/createStyled("div", {
@@ -24837,7 +24994,7 @@
24837
24994
  return props.theme.spaceScale.spacing01;
24838
24995
  }, " 0px;opacity:", function (props) {
24839
24996
  return props.opened ? '1' : '0';
24840
- }, ";overflow:hidden;transition:opacity 0.2s ease-in-out 0s;width:320px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzQnNDIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBhdXRvVXBkYXRlIH0gZnJvbSAnQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSc7XHJcbmltcG9ydCB7IGFkZERheXMsIGVuZE9mRGF5LCBpc0FmdGVyLCBpc0JlZm9yZSwgaXNNYXRjaCwgaXNWYWxpZCwgcGFyc2UsIHNldEhvdXJzLCBzdGFydE9mRGF5LCB9IGZyb20gJ2RhdGUtZm5zJztcclxuaW1wb3J0IHsgdHJhbnNwYXJlbnRpemUgfSBmcm9tICdwb2xpc2hlZCc7XHJcbmltcG9ydCB7IEV2ZW50SWNvbiB9IGZyb20gJ3JlYWN0LW1hZ21hLWljb25zJztcclxuaW1wb3J0IHsgQ2FsZW5kYXJDb250ZXh0IH0gZnJvbSAnLi9DYWxlbmRhckNvbnRleHQnO1xyXG5pbXBvcnQgeyBDYWxlbmRhck1vbnRoIH0gZnJvbSAnLi9DYWxlbmRhck1vbnRoJztcclxuaW1wb3J0IHsgdXNlTWFnbWFGbG9hdGluZyB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZU1hZ21hRmxvYXRpbmcnO1xyXG5pbXBvcnQgeyBJMThuQ29udGV4dCB9IGZyb20gJy4uLy4uL2kxOG4nO1xyXG5pbXBvcnQgeyBJbnZlcnNlQ29udGV4dCwgdXNlSXNJbnZlcnNlIH0gZnJvbSAnLi4vLi4vaW52ZXJzZSc7XHJcbmltcG9ydCB7IFRoZW1lQ29udGV4dCB9IGZyb20gJy4uLy4uL3RoZW1lL1RoZW1lQ29udGV4dCc7XHJcbmltcG9ydCB7IEFubm91bmNlIH0gZnJvbSAnLi4vQW5ub3VuY2UnO1xyXG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gJy4uL0lucHV0JztcclxuaW1wb3J0IHsgSW5wdXRUeXBlIH0gZnJvbSAnLi4vSW5wdXRCYXNlJztcclxuaW1wb3J0IHsgVmlzdWFsbHlIaWRkZW4gfSBmcm9tICcuLi9WaXN1YWxseUhpZGRlbic7XHJcbmltcG9ydCB7IERhdGVGaWVsZElucHV0IH0gZnJvbSAnLi9EYXRlRmllbGQvRGF0ZUZpZWxkSW5wdXQnO1xyXG5pbXBvcnQgeyBnZXRDYWxlbmRhck1vbnRoV2Vla3MsIGdldERhdGVGcm9tU3RyaW5nLCBnZXROZXh0TW9udGhGcm9tRGF0ZSwgZ2V0UHJldk1vbnRoRnJvbURhdGUsIGhhbmRsZUtleVByZXNzLCBzZXRNb250aEZvckRhdGUsIHNldFllYXJGb3JEYXRlLCBpMThuRm9ybWF0IGFzIGZvcm1hdCwgaW5EYXRlUmFuZ2UsIH0gZnJvbSAnLi91dGlscyc7XHJcbmltcG9ydCB7IG9taXQsIHVzZUZvcmtlZFJlZiwgdXNlR2VuZXJhdGVJZCB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuY29uc3QgRGF0ZVBpY2tlckNvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xyXG5jb25zdCBEYXRlUGlja2VyQ2FsZW5kYXIgPSBzdHlsZWQuZGl2IGBcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyB0cmFuc3BhcmVudGl6ZSgwLjUsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwKVxyXG4gICAgOiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDMwMH07XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYm9yZGVyUmFkaXVzfTtcbiAgYm94LXNoYWRvdzogMCAycHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMuaXNJbnZlcnNlXHJcbiAgICA/IHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwXHJcbiAgICA6IHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwfTtcbiAgZGlzcGxheTogJHtwcm9wcyA9PiAocHJvcHMub3BlbmVkID8gJ2Jsb2NrJyA6ICdub25lJyl9O1xuICBtYXJnaW46ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDF9IDBweDtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMub3BlbmVkID8gJzEnIDogJzAnKX07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgd2lkdGg6IDMyMHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IERhdGVQaWNrZXIgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKSA9PiB7XHJcbiAgICBjb25zdCB0aGVtZSA9IFJlYWN0LnVzZUNvbnRleHQoVGhlbWVDb250ZXh0KTtcclxuICAgIGNvbnN0IGkxOG4gPSBSZWFjdC51c2VDb250ZXh0KEkxOG5Db250ZXh0KTtcclxuICAgIGNvbnN0IGljb25SZWYgPSBSZWFjdC51c2VSZWYoKTtcclxuICAgIGNvbnN0IHByZXZpb3VzSWNvblJlZiA9IFJlYWN0LnVzZVJlZigpO1xyXG4gICAgY29uc3QgaW5wdXRSZWYgPSBSZWFjdC51c2VSZWYoKTtcclxuICAgIGNvbnN0IGxhc3RGb2N1cyA9IFJlYWN0LnVzZVJlZigpO1xyXG4gICAgY29uc3QgaWQgPSB1c2VHZW5lcmF0ZUlkKHByb3BzLmlkKTtcclxuICAgIGNvbnN0IGlzSW52ZXJzZSA9IHVzZUlzSW52ZXJzZShwcm9wcy5pc0ludmVyc2UpO1xyXG4gICAgY29uc3QgbWluRGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKHByb3BzLm1pbkRhdGUpO1xyXG4gICAgY29uc3QgbWF4RGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKHByb3BzLm1heERhdGUpO1xyXG4gICAgY29uc3QgZGF0ZUZvcm1hdCA9IGkxOG4uZGF0ZUZvcm1hdDtcclxuICAgIGNvbnN0IFtoZWxwZXJJbmZvcm1hdGlvblNob3duLCBzZXRIZWxwZXJJbmZvcm1hdGlvblNob3duXSA9IFJlYWN0LnVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IFtjYWxlbmRhck9wZW5lZCwgc2V0Q2FsZW5kYXJPcGVuZWRdID0gUmVhY3QudXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW2RhdGVGb2N1c2VkLCBzZXREYXRlRm9jdXNlZF0gPSBSZWFjdC51c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBbZm9jdXNlZERhdGUsIHNldEZvY3VzZWREYXRlXSA9IFJlYWN0LnVzZVN0YXRlKHNldERhdGVGcm9tQ29uc3VtZXIocHJvcHMudmFsdWUgfHwgcHJvcHMuZGVmYXVsdERhdGUpIHx8XHJcbiAgICAgICAgc2V0RGVmYXVsdEZvY3VzZWREYXRlKCkpO1xyXG4gICAgY29uc3QgW2Nob3NlbkRhdGUsIHNldENob3NlbkRhdGVdID0gUmVhY3QudXNlU3RhdGUoc2V0RGF0ZUZyb21Db25zdW1lcihwcm9wcy52YWx1ZSB8fCBwcm9wcy5kZWZhdWx0RGF0ZSkpO1xyXG4gICAgY29uc3QgcmVmID0gdXNlRm9ya2VkUmVmKGZvcndhcmRlZFJlZiwgaW5wdXRSZWYpO1xyXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBpZiAocHJvcHMuYXBpUmVmKSB7XHJcbiAgICAgICAgICAgIHByb3BzLmFwaVJlZi5jdXJyZW50ID0ge1xyXG4gICAgICAgICAgICAgICAgY2xvc2VEYXRlUGlja2VyTWFudWFsbHkoZXZlbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrKGV2ZW50KTtcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBvcGVuRGF0ZVBpY2tlck1hbnVhbGx5KGV2ZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9nZ2xlQ2FsZW5kYXJPcGVuZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGVUaW1lUGlja2VyQ29udGVudCAmJlxyXG4gICAgICAgICAgICBjaG9zZW5EYXRlICYmXHJcbiAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQgIT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgaWYgKCFwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50ICYmIHByb3BzLnNldEFkZGl0aW9uYWxJbnB1dENvbnRlbnQpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLnNldEFkZGl0aW9uYWxJbnB1dENvbnRlbnQoJzEyOjAwIEFNJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUoY2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2Nob3NlbkRhdGVdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFjYWxlbmRhck9wZW5lZCkge1xyXG4gICAgICAgICAgICBzZXREYXRlRm9jdXNlZChmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2NhbGVuZGFyT3BlbmVkXSk7XHJcbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGlmIChwcm9wcy52YWx1ZSkge1xyXG4gICAgICAgICAgICBzZXRGb2N1c2VkRGF0ZShzZXREYXRlRnJvbUNvbnN1bWVyKHByb3BzLnZhbHVlKSB8fCBzZXREZWZhdWx0Rm9jdXNlZERhdGUoKSk7XHJcbiAgICAgICAgICAgIHNldENob3NlbkRhdGUoc2V0RGF0ZUZyb21Db25zdW1lcihwcm9wcy52YWx1ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocHJvcHMudmFsdWUgPT09IG51bGwpXHJcbiAgICAgICAgICAgIHNldENob3NlbkRhdGUodW5kZWZpbmVkKTtcclxuICAgIH0sIFtwcm9wcy52YWx1ZV0pO1xyXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBwcmV2aW91c0ljb25SZWYuY3VycmVudCA9IGljb25SZWYuY3VycmVudDtcclxuICAgIH0sIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFmb2N1c2VkRGF0ZSB8fCAhbWluRGF0ZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGlmIChpc0JlZm9yZShmb2N1c2VkRGF0ZSwgbWluRGF0ZSkgJiYgIWNob3NlbkRhdGUpIHtcclxuICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobWluRGF0ZSk7XHJcbiAgICAgICAgICAgIHNldERhdGVGb2N1c2VkKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmb2N1c2VkRGF0ZSwgbWluRGF0ZSwgY2hvc2VuRGF0ZV0pO1xyXG4gICAgZnVuY3Rpb24gc2hvd0hlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIGxhc3RGb2N1cy5jdXJyZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcclxuICAgICAgICBzZXRIZWxwZXJJbmZvcm1hdGlvblNob3duKHRydWUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gaGlkZUhlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIGxhc3RGb2N1cy5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgc2V0SGVscGVySW5mb3JtYXRpb25TaG93bihmYWxzZSk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBjbG9zZUhlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIHNldEhlbHBlckluZm9ybWF0aW9uU2hvd24oZmFsc2UpO1xyXG4gICAgICAgIGljb25SZWYuY3VycmVudC5mb2N1cygpO1xyXG4gICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHNldEZvY3VzZWRUb2RheURhdGUgPSAoZXZlbnQpID0+IHtcclxuICAgICAgICBjb25zdCBpc0tleWJvYXJkRXZlbnQgPSBldmVudC50eXBlID09PSAna2V5ZG93bic7XHJcbiAgICAgICAgaWYgKChpc0tleWJvYXJkRXZlbnQgJiZcclxuICAgICAgICAgICAgKGV2ZW50LmtleSA9PT0gJyAnIHx8XHJcbiAgICAgICAgICAgICAgICBldmVudC5rZXkgPT09ICdFbnRlcicpKSB8fFxyXG4gICAgICAgICAgICBldmVudC50eXBlID09PSAnY2xpY2snKSB7XHJcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKHNldERlZmF1bHRGb2N1c2VkRGF0ZSgpKTtcclxuICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuICAgIGZ1bmN0aW9uIHNldERhdGVGcm9tQ29uc3VtZXIoZGF0ZSkge1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZERhdGUgPSBnZXREYXRlRnJvbVN0cmluZyhkYXRlKTtcclxuICAgICAgICBjb25zdCBjb252ZXJ0ZWRNaW5EYXRlID0gZ2V0RGF0ZUZyb21TdHJpbmcobWluRGF0ZSk7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkTWF4RGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKG1heERhdGUpO1xyXG4gICAgICAgIHJldHVybiBkYXRlICYmXHJcbiAgICAgICAgICAgIGluRGF0ZVJhbmdlKGNvbnZlcnRlZERhdGUsIGNvbnZlcnRlZE1pbkRhdGUsIGNvbnZlcnRlZE1heERhdGUpXHJcbiAgICAgICAgICAgID8gY29udmVydGVkRGF0ZVxyXG4gICAgICAgICAgICA6IG51bGw7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBzZXREZWZhdWx0Rm9jdXNlZERhdGUoKSB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkTWluRGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKG1pbkRhdGUpO1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZE1heERhdGUgPSBnZXREYXRlRnJvbVN0cmluZyhtYXhEYXRlKTtcclxuICAgICAgICBpZiAoaW5EYXRlUmFuZ2UobmV3RGF0ZSwgY29udmVydGVkTWluRGF0ZSwgY29udmVydGVkTWF4RGF0ZSkpIHtcclxuICAgICAgICAgICAgaWYgKGlzQmVmb3JlKHN0YXJ0T2ZEYXkobmV3RGF0ZSksIGNvbnZlcnRlZE1pbkRhdGUpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWRkRGF5cyhuZXdEYXRlLCAxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gbmV3RGF0ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY29udmVydGVkTWF4RGF0ZSB8fCBjb252ZXJ0ZWRNaW5EYXRlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZWRNaW5EYXRlID8gY29udmVydGVkTWluRGF0ZSA6IGNvbnZlcnRlZE1heERhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gYnVpbGRDYWxlbmRhck1vbnRoKGRhdGUsIGVuYWJsZU91dHNpZGVEYXRlcykge1xyXG4gICAgICAgIGNvbnN0IGRheXMgPSBbXHJcbiAgICAgICAgICAgICdzdW5kYXknLFxyXG4gICAgICAgICAgICAnbW9uZGF5JyxcclxuICAgICAgICAgICAgJ3R1ZXNkYXknLFxyXG4gICAgICAgICAgICAnd2VkbmVzZGF5JyxcclxuICAgICAgICAgICAgJ3RodXJzZGF5JyxcclxuICAgICAgICAgICAgJ2ZyaWRheScsXHJcbiAgICAgICAgICAgICdzYXR1cmRheScsXHJcbiAgICAgICAgXTtcclxuICAgICAgICBjb25zdCB7IHN0YXJ0T2ZXZWVrIH0gPSBpMThuLmRhdGVQaWNrZXI7XHJcbiAgICAgICAgcmV0dXJuIGdldENhbGVuZGFyTW9udGhXZWVrcyhkYXRlLCBlbmFibGVPdXRzaWRlRGF0ZXMsIGRheXMuaW5kZXhPZihzdGFydE9mV2VlaykpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gb25QcmV2TW9udGhDbGljaygpIHtcclxuICAgICAgICBjb25zdCBuZXdEYXRlID0gZ2V0UHJldk1vbnRoRnJvbURhdGUoZm9jdXNlZERhdGUpO1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gb25OZXh0TW9udGhDbGljaygpIHtcclxuICAgICAgICBjb25zdCBuZXdEYXRlID0gZ2V0TmV4dE1vbnRoRnJvbURhdGUoZm9jdXNlZERhdGUpO1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gc2V0TW9udGhGb2N1c2VkRGF0ZShtb250aE51bWJlcikge1xyXG4gICAgICAgIGNvbnN0IG5ld0RhdGUgPSBzZXRNb250aEZvckRhdGUoZm9jdXNlZERhdGUsIG1vbnRoTnVtYmVyKTtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIHNldFllYXJGb2N1c2VkRGF0ZSh5ZWFyTnVtYmVyKSB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0ZSA9IHNldFllYXJGb3JEYXRlKGZvY3VzZWREYXRlLCB5ZWFyTnVtYmVyKTtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIG9uRGF0ZUNoYW5nZShkYXkpIHtcclxuICAgICAgICBzZXRDaG9zZW5EYXRlKGRheSk7XHJcbiAgICAgICAgaWYgKGRhdGVUaW1lUGlja2VyQ29udGVudClcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIHJlc2V0KCkge1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKHNldERlZmF1bHRGb2N1c2VkRGF0ZSgpKTtcclxuICAgICAgICBzZXRDaG9zZW5EYXRlKG51bGwpO1xyXG4gICAgICAgIHNldERhdGVGb2N1c2VkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGlzVmFsaWREYXRlRnJvbVN0cmluZyh2YWx1ZSkge1xyXG4gICAgICAgIGNvbnN0IGlzVmFsaWREYXRlRm9ybWF0ID0gaXNNYXRjaCh2YWx1ZSwgaTE4bi5kYXRlRm9ybWF0KTtcclxuICAgICAgICBjb25zdCBwYXJzZWREYXRlID0gcGFyc2UodmFsdWUsIGkxOG4uZGF0ZUZvcm1hdCwgbmV3IERhdGUoKSk7XHJcbiAgICAgICAgY29uc3QgaXNWYWxpZERhdGUgPSBpc1ZhbGlkKHBhcnNlZERhdGUpO1xyXG4gICAgICAgIHJldHVybiBpc1ZhbGlkRGF0ZUZvcm1hdCAmJiBpc1ZhbGlkRGF0ZTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUlucHV0Q2hhbmdlKGV2ZW50KSB7XHJcbiAgICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gZXZlbnQudGFyZ2V0O1xyXG4gICAgICAgIGNvbnN0IGRheSA9IG5ldyBEYXRlKHZhbHVlKTtcclxuICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgcHJvcHMub25JbnB1dENoYW5nZSAmJlxyXG4gICAgICAgICAgICB0eXBlb2YgcHJvcHMub25JbnB1dENoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbklucHV0Q2hhbmdlKGV2ZW50KTtcclxuICAgICAgICBsZXQgaXNWYWxpZERheTtcclxuICAgICAgICBpZiAoZGF0ZVRpbWVQaWNrZXJDb250ZW50KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNwbGl0VmFsdWUgPSB2YWx1ZS5zcGxpdCgnICcpWzBdO1xyXG4gICAgICAgICAgICBpc1ZhbGlkRGF5ID0gaXNWYWxpZERhdGVGcm9tU3RyaW5nKHNwbGl0VmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCB2YWxpZERheSA9IG5ldyBEYXRlKHNwbGl0VmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gL15cXGR7Mn1cXC9cXGR7Mn1cXC9cXGR7NH0kLztcclxuICAgICAgICAgICAgaWYgKHBhdHRlcm4udGVzdChzcGxpdFZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgc2V0Q2hvc2VuRGF0ZSh2YWxpZERheSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UoaXNWYWxpZERheSA/IHZhbGlkRGF5LnRvSVNPU3RyaW5nKCkgOiBzcGxpdFZhbHVlLCBldmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBpc1ZhbGlkRGF5ID0gaXNWYWxpZERhdGVGcm9tU3RyaW5nKHZhbHVlKTtcclxuICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UoaXNWYWxpZERheSA/IGRheS50b0lTT1N0cmluZygpIDogdmFsdWUsIGV2ZW50KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVJbnB1dEZvY3VzKGV2ZW50KSB7XHJcbiAgICAgICAgcHJvcHMub25JbnB1dEZvY3VzICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbklucHV0Rm9jdXMgPT09ICdmdW5jdGlvbicgJiZcclxuICAgICAgICAgICAgcHJvcHMub25JbnB1dEZvY3VzKGV2ZW50KTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUlucHV0Qmx1cihldmVudCkge1xyXG4gICAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IGlucHV0UmVmLmN1cnJlbnQ7XHJcbiAgICAgICAgY29uc3QgZGF5ID0gcGFyc2UoZGF0ZVRpbWVQaWNrZXJDb250ZW50ID8gdmFsdWUuc3BsaXQoJyAnKVswXSA6IHZhbHVlLCBpMThuLmRhdGVGb3JtYXQsIG5ldyBEYXRlKCkpO1xyXG4gICAgICAgIGxldCBpc1ZhbGlkRGF5O1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3BsaXRWYWx1ZSA9IHZhbHVlLnNwbGl0KCcgJylbMF07XHJcbiAgICAgICAgICAgIGlzVmFsaWREYXkgPSBpc1ZhbGlkRGF0ZUZyb21TdHJpbmcoc3BsaXRWYWx1ZSk7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbGlkRGF5ID0gbmV3IERhdGUoc3BsaXRWYWx1ZSk7XHJcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkRGF5KSB7XHJcbiAgICAgICAgICAgICAgICBoYW5kbGVEYXRlQ2hhbmdlKHZhbGlkRGF5LCBldmVudCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGlzVmFsaWREYXkgPSBpc1ZhbGlkRGF0ZUZyb21TdHJpbmcodmFsdWUpO1xyXG4gICAgICAgICAgICBpZiAoaXNWYWxpZERheSkge1xyXG4gICAgICAgICAgICAgICAgaGFuZGxlRGF0ZUNoYW5nZShkYXksIGV2ZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJlc2V0ICYmIHR5cGVvZiByZXNldCA9PT0gJ2Z1bmN0aW9uJyAmJiByZXNldCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByb3BzLm9uSW5wdXRCbHVyICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbklucHV0Qmx1ciA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbklucHV0Qmx1cihldmVudCk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVJbnB1dEtleURvd24oZXZlbnQpIHtcclxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xyXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVLZXlEb3duKGV2ZW50KSB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcclxuICAgICAgICAgICAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgICAgICAgICAgaWNvblJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChkYXRlRm9jdXNlZCAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50LmNsb3Nlc3QoJ3RhYmxlJykpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3Q2hvc2VuRGF0ZSA9IGhhbmRsZUtleVByZXNzKGV2ZW50LCBmb2N1c2VkRGF0ZSwgc2V0Q2FsZW5kYXJPcGVuZWQsIHNob3dIZWxwZXJJbmZvcm1hdGlvbiwgb25EYXRlQ2hhbmdlLCBpY29uUmVmKTtcclxuICAgICAgICAgICAgaWYgKG5ld0Nob3NlbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgIGlmIChtaW5EYXRlICYmIG1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZnRlcihzZXRIb3VycyhuZXdDaG9zZW5EYXRlLCAxMiksIHN0YXJ0T2ZEYXkobWluRGF0ZSkpICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzQmVmb3JlKHNldEhvdXJzKG5ld0Nob3NlbkRhdGUsIDEyKSwgZW5kT2ZEYXkobWF4RGF0ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0Nob3NlbkRhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1pbkRhdGUgJiYgIW1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZnRlcihzZXRIb3VycyhuZXdDaG9zZW5EYXRlLCAxMiksIHN0YXJ0T2ZEYXkobWluRGF0ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0Nob3NlbkRhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1heERhdGUgJiYgIW1pbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNCZWZvcmUoc2V0SG91cnMobmV3Q2hvc2VuRGF0ZSwgMTIpLCBlbmRPZkRheShtYXhEYXRlKSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobmV3Q2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobmV3Q2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVEYXRlQ2hhbmdlKGRheSwgZXZlbnQpIHtcclxuICAgICAgICBwcm9wcy5vbkRhdGVDaGFuZ2UgJiZcclxuICAgICAgICAgICAgdHlwZW9mIHByb3BzLm9uRGF0ZUNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbkRhdGVDaGFuZ2UoZGF5LCBldmVudCk7XHJcbiAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nICYmXHJcbiAgICAgICAgICAgIHByb3BzLm9uQ2hhbmdlKGRheT8udG9JU09TdHJpbmcoKSwgZXZlbnQpO1xyXG4gICAgICAgIG9uRGF0ZUNoYW5nZShkYXkpO1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShkYXkpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gaGFuZGxlRGF5U2VsZWN0aW9uKGRheSwgZXZlbnQpIHtcclxuICAgICAgICBoYW5kbGVEYXRlQ2hhbmdlKGRheSwgZXZlbnQpO1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVDYWxlbmRhckJsdXIoZXZlbnQpIHtcclxuICAgICAgICBjb25zdCB7IGN1cnJlbnRUYXJnZXQgfSA9IGV2ZW50O1xyXG4gICAgICAgIC8vIHRpbWVvdXQgbmVlZGVkIGZvciBhY3RpdmUgZWxlbWVudCB0byB1cGRhdGUuIEJyb3dzZXIgYmVoYXZpb3IuXHJcbiAgICAgICAgLy8gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMzA3XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzSW5DYWxlbmRhciA9IGN1cnJlbnRUYXJnZXQuY29udGFpbnMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XHJcbiAgICAgICAgICAgIGlmICghaXNJbkNhbGVuZGFyICYmICFoZWxwZXJJbmZvcm1hdGlvblNob3duKSB7XHJcbiAgICAgICAgICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCAwKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUNsb3NlQnV0dG9uQ2xpY2soZXZlbnQpIHtcclxuICAgICAgICBpZiAoIWljb25SZWYuY3VycmVudCAmJiBwcmV2aW91c0ljb25SZWYuY3VycmVudCkge1xyXG4gICAgICAgICAgICBpY29uUmVmLmN1cnJlbnQgPSBwcmV2aW91c0ljb25SZWYuY3VycmVudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWNvblJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgc2V0Q2FsZW5kYXJPcGVuZWQoZmFsc2UpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gdG9nZ2xlQ2FsZW5kYXJPcGVuZWQoKSB7XHJcbiAgICAgICAgc2V0Q2FsZW5kYXJPcGVuZWQob3BlbmVkID0+IHtcclxuICAgICAgICAgICAgLy8gRm9jdXMgb24gdG9kYXkgd2hlbiBvcGVuaW5nIGNhbGVuZGFyIHdpdGhvdXQgYSBjaG9zZW4gZGF0ZVxyXG4gICAgICAgICAgICBpZiAoIW9wZW5lZCAmJiAhY2hvc2VuRGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUoc2V0RGVmYXVsdEZvY3VzZWREYXRlKCkpO1xyXG4gICAgICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQodHJ1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuICFvcGVuZWQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB7IHBsYWNlaG9sZGVyLCB0ZXN0SWQsIGRhdGVUaW1lUGlja2VyQ29udGVudCwgLi4ucmVzdCB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBvdGhlciA9IG9taXQoWydvbkRhdGVDaGFuZ2UnLCAnb25JbnB1dENoYW5nZScsICdvbklucHV0Qmx1cicsICdvbklucHV0Rm9jdXMnXSwgcmVzdCk7XHJcbiAgICBjb25zdCBkYXRlRmllbGRWYWx1ZSA9IGRhdGVGb3JtYXQgPT09ICdNTU1NIGQsIHl5eXknICYmIGNob3NlbkRhdGVcclxuICAgICAgICA/IGZvcm1hdChjaG9zZW5EYXRlLCBkYXRlRm9ybWF0KVxyXG4gICAgICAgIDogY2hvc2VuRGF0ZTtcclxuICAgIGNvbnN0IGlucHV0RGF0ZVZhbHVlID0gY2hvc2VuRGF0ZSA/IGZvcm1hdChjaG9zZW5EYXRlLCBkYXRlRm9ybWF0KSA6ICcnO1xyXG4gICAgbGV0IGlucHV0VmFsdWUgPSBwcm9wcy5pc0RhdGVGaWVsZElucHV0ID8gZGF0ZUZpZWxkVmFsdWUgOiBpbnB1dERhdGVWYWx1ZTtcclxuICAgIGlmIChpbnB1dFZhbHVlICYmIHByb3BzLmFkZGl0aW9uYWxJbnB1dENvbnRlbnQpIHtcclxuICAgICAgICBpbnB1dFZhbHVlID0gYCR7aW5wdXRWYWx1ZX0gJHtwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50fWA7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50KSB7XHJcbiAgICAgICAgc2V0Q2hvc2VuRGF0ZShuZXcgRGF0ZSgpKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgZmxvYXRpbmdTdHlsZXMsIHJlZnMsIGVsZW1lbnRzLCB1cGRhdGUgfSA9IHVzZU1hZ21hRmxvYXRpbmcoKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgcmVmZXJlbmNlRGF0ZUlucHV0ID0gZWxlbWVudHMucmVmZXJlbmNlO1xyXG4gICAgICAgIGNvbnN0IGZsb2F0aW5nQ2FsZW5kYXIgPSBlbGVtZW50cy5mbG9hdGluZztcclxuICAgICAgICBpZiAoY2FsZW5kYXJPcGVuZWQgJiYgcmVmZXJlbmNlRGF0ZUlucHV0ICYmIGZsb2F0aW5nQ2FsZW5kYXIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGF1dG9VcGRhdGUocmVmZXJlbmNlRGF0ZUlucHV0LCBmbG9hdGluZ0NhbGVuZGFyLCB1cGRhdGUpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtjYWxlbmRhck9wZW5lZCwgZWxlbWVudHMsIHVwZGF0ZV0pO1xyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KENhbGVuZGFyQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZToge1xyXG4gICAgICAgICAgICBjaG9zZW5EYXRlLFxyXG4gICAgICAgICAgICBmb2N1c2VkRGF0ZSxcclxuICAgICAgICAgICAgZGF0ZUZvY3VzZWQsXHJcbiAgICAgICAgICAgIG1heERhdGUsXHJcbiAgICAgICAgICAgIG1pbkRhdGUsXHJcbiAgICAgICAgICAgIGhlbHBlckluZm9ybWF0aW9uU2hvd24sXHJcbiAgICAgICAgICAgIGlzSW52ZXJzZSxcclxuICAgICAgICAgICAgYnVpbGRDYWxlbmRhck1vbnRoLFxyXG4gICAgICAgICAgICBzaG93SGVscGVySW5mb3JtYXRpb24sXHJcbiAgICAgICAgICAgIGhpZGVIZWxwZXJJbmZvcm1hdGlvbixcclxuICAgICAgICAgICAgb25LZXlEb3duOiBoYW5kbGVLZXlEb3duLFxyXG4gICAgICAgICAgICBvblByZXZNb250aENsaWNrLFxyXG4gICAgICAgICAgICBvbk5leHRNb250aENsaWNrLFxyXG4gICAgICAgICAgICBvbkRhdGVDaGFuZ2U6IGhhbmRsZURheVNlbGVjdGlvbixcclxuICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQsXHJcbiAgICAgICAgICAgIHNldEZvY3VzZWRUb2RheURhdGUsXHJcbiAgICAgICAgICAgIHNldEZvY3VzZWREYXRlLFxyXG4gICAgICAgICAgICBzZXRNb250aEZvY3VzZWREYXRlLFxyXG4gICAgICAgICAgICBzZXRZZWFyRm9jdXNlZERhdGUsXHJcbiAgICAgICAgICAgIG9uQ2xvc2U6IGNsb3NlSGVscGVySW5mb3JtYXRpb24sXHJcbiAgICAgICAgfSB9LFxyXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRGF0ZVBpY2tlckNvbnRhaW5lciwgeyBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCwgb25CbHVyOiBoYW5kbGVDYWxlbmRhckJsdXIgfSxcclxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChBbm5vdW5jZSwgbnVsbCwgY2FsZW5kYXJPcGVuZWQgJiYgKFJlYWN0LmNyZWF0ZUVsZW1lbnQoVmlzdWFsbHlIaWRkZW4sIG51bGwsIGkxOG4uZGF0ZVBpY2tlci5jYWxlbmRhck9wZW5Bbm5vdW5jZSkpKSxcclxuICAgICAgICAgICAgcHJvcHMuaXNEYXRlRmllbGRJbnB1dCA/IChSZWFjdC5jcmVhdGVFbGVtZW50KERhdGVGaWVsZElucHV0LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBpZDogaWQsIGRhdGVGb3JtYXQ6IGRhdGVGb3JtYXQsIGlucHV0VmFsdWU6IGlucHV0VmFsdWUsIG9uSWNvbkNsaWNrOiB0b2dnbGVDYWxlbmRhck9wZW5lZCwgc2V0UmVmZXJlbmNlOiByZWZzLnNldFJlZmVyZW5jZSwgaWNvblJlZjogaWNvblJlZiwgaW5wdXRSZWY6IGlucHV0UmVmLCBoYW5kbGVEYXRlQ2hhbmdlOiBoYW5kbGVEYXRlQ2hhbmdlLCBvbkNsZWFyRGF0ZTogcmVzZXQsIG9uSW5wdXRCbHVyOiBwcm9wcy5vbklucHV0Qmx1ciwgb25JbnB1dEZvY3VzOiBoYW5kbGVJbnB1dEZvY3VzLCBvbkljb25LZXlEb3duOiBoYW5kbGVJbnB1dEtleURvd24gfSkpKSA6IChSZWFjdC5jcmVhdGVFbGVtZW50KElucHV0LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBpY29uOiBSZWFjdC5jcmVhdGVFbGVtZW50KEV2ZW50SWNvbiwgbnVsbCksIGljb25BcmlhTGFiZWw6IGkxOG4uZGF0ZVBpY2tlci5jYWxlbmRhckljb25BcmlhTGFiZWwsIGljb25SZWY6IGljb25SZWYsIG9uSWNvbkNsaWNrOiB0b2dnbGVDYWxlbmRhck9wZW5lZCwgb25JY29uS2V5RG93bjogaGFuZGxlSW5wdXRLZXlEb3duLCBpZDogaWQsIGlzSW52ZXJzZTogaXNJbnZlcnNlLCByZWY6IHJlZiwgb25DaGFuZ2U6IGhhbmRsZUlucHV0Q2hhbmdlLCBvbkJsdXI6IGhhbmRsZUlucHV0Qmx1ciwgb25Gb2N1czogaGFuZGxlSW5wdXRGb2N1cywgb25LZXlEb3duOiBoYW5kbGVJbnB1dEtleURvd24sIG9uRGF0ZUNoYW5nZTogaGFuZGxlRGF0ZUNoYW5nZSwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyID8gcGxhY2Vob2xkZXIgOiBkYXRlRm9ybWF0LnRvTG93ZXJDYXNlKCksIHR5cGU6IElucHV0VHlwZS50ZXh0LCB2YWx1ZTogaW5wdXRWYWx1ZSwgc2V0UmVmZXJlbmNlOiByZWZzLnNldFJlZmVyZW5jZSB9KSkpLFxyXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEludmVyc2VDb250ZXh0LlByb3ZpZGVyLCB7IHZhbHVlOiB7IGlzSW52ZXJzZSB9IH0sXHJcbiAgICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHsgcmVmOiBlbCA9PiBjYWxlbmRhck9wZW5lZCAmJiByZWZzLnNldEZsb2F0aW5nKGVsKSwgc3R5bGU6IHsgLi4uZmxvYXRpbmdTdHlsZXMsIHpJbmRleDogJzk5OCcgfSB9LFxyXG4gICAgICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRGF0ZVBpY2tlckNhbGVuZGFyLCB7IFwiZGF0YS10ZXN0aWRcIjogXCJjYWxlbmRhckNvbnRhaW5lclwiLCBvcGVuZWQ6IGNhbGVuZGFyT3BlbmVkLCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgdGhlbWU6IHRoZW1lIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoQ2FsZW5kYXJNb250aCwgeyBmb2N1c09uT3BlbjogY2FsZW5kYXJPcGVuZWQgJiYgQm9vbGVhbihmb2N1c2VkRGF0ZSksIGlzSW52ZXJzZTogaXNJbnZlcnNlLCBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrOiBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrLCBjYWxlbmRhck9wZW5lZDogY2FsZW5kYXJPcGVuZWQsIHNldERhdGVGb2N1c2VkOiBzZXREYXRlRm9jdXNlZCwgZGF0ZVRpbWVQaWNrZXJDb250ZW50OiBkYXRlVGltZVBpY2tlckNvbnRlbnQgfSkpKSkpKSk7XHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXX0= */"));
24997
+ }, ";overflow:hidden;transition:opacity 0.2s ease-in-out 0s;width:320px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzQnNDIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBhdXRvVXBkYXRlIH0gZnJvbSAnQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSc7XHJcbmltcG9ydCB7IGFkZERheXMsIGVuZE9mRGF5LCBpc0FmdGVyLCBpc0JlZm9yZSwgaXNNYXRjaCwgaXNWYWxpZCwgcGFyc2UsIHNldEhvdXJzLCBzdGFydE9mRGF5LCB9IGZyb20gJ2RhdGUtZm5zJztcclxuaW1wb3J0IHsgdHJhbnNwYXJlbnRpemUgfSBmcm9tICdwb2xpc2hlZCc7XHJcbmltcG9ydCB7IEV2ZW50SWNvbiB9IGZyb20gJ3JlYWN0LW1hZ21hLWljb25zJztcclxuaW1wb3J0IHsgQ2FsZW5kYXJDb250ZXh0IH0gZnJvbSAnLi9DYWxlbmRhckNvbnRleHQnO1xyXG5pbXBvcnQgeyBDYWxlbmRhck1vbnRoIH0gZnJvbSAnLi9DYWxlbmRhck1vbnRoJztcclxuaW1wb3J0IHsgdXNlTWFnbWFGbG9hdGluZyB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZU1hZ21hRmxvYXRpbmcnO1xyXG5pbXBvcnQgeyBJMThuQ29udGV4dCB9IGZyb20gJy4uLy4uL2kxOG4nO1xyXG5pbXBvcnQgeyBJbnZlcnNlQ29udGV4dCwgdXNlSXNJbnZlcnNlIH0gZnJvbSAnLi4vLi4vaW52ZXJzZSc7XHJcbmltcG9ydCB7IFRoZW1lQ29udGV4dCB9IGZyb20gJy4uLy4uL3RoZW1lL1RoZW1lQ29udGV4dCc7XHJcbmltcG9ydCB7IEFubm91bmNlIH0gZnJvbSAnLi4vQW5ub3VuY2UnO1xyXG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gJy4uL0lucHV0JztcclxuaW1wb3J0IHsgSW5wdXRUeXBlIH0gZnJvbSAnLi4vSW5wdXRCYXNlJztcclxuaW1wb3J0IHsgVmlzdWFsbHlIaWRkZW4gfSBmcm9tICcuLi9WaXN1YWxseUhpZGRlbic7XHJcbmltcG9ydCB7IERhdGVGaWVsZElucHV0IH0gZnJvbSAnLi9EYXRlRmllbGQvRGF0ZUZpZWxkSW5wdXQnO1xyXG5pbXBvcnQgeyBnZXRDYWxlbmRhck1vbnRoV2Vla3MsIGdldERhdGVGcm9tU3RyaW5nLCBnZXROZXh0TW9udGhGcm9tRGF0ZSwgZ2V0UHJldk1vbnRoRnJvbURhdGUsIGhhbmRsZUtleVByZXNzLCBzZXRNb250aEZvckRhdGUsIHNldFllYXJGb3JEYXRlLCBpMThuRm9ybWF0IGFzIGZvcm1hdCwgaW5EYXRlUmFuZ2UsIH0gZnJvbSAnLi91dGlscyc7XHJcbmltcG9ydCB7IG9taXQsIHVzZUZvcmtlZFJlZiwgdXNlR2VuZXJhdGVJZCB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuY29uc3QgRGF0ZVBpY2tlckNvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xyXG5jb25zdCBEYXRlUGlja2VyQ2FsZW5kYXIgPSBzdHlsZWQuZGl2IGBcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+IHByb3BzLmlzSW52ZXJzZVxyXG4gICAgPyB0cmFuc3BhcmVudGl6ZSgwLjUsIHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwKVxyXG4gICAgOiBwcm9wcy50aGVtZS5jb2xvcnMubmV1dHJhbDMwMH07XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYm9yZGVyUmFkaXVzfTtcbiAgYm94LXNoYWRvdzogMCAycHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMuaXNJbnZlcnNlXHJcbiAgICA/IHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsMTAwXHJcbiAgICA6IHByb3BzLnRoZW1lLmNvbG9ycy5uZXV0cmFsNzAwfTtcbiAgZGlzcGxheTogJHtwcm9wcyA9PiAocHJvcHMub3BlbmVkID8gJ2Jsb2NrJyA6ICdub25lJyl9O1xuICBtYXJnaW46ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3BhY2VTY2FsZS5zcGFjaW5nMDF9IDBweDtcbiAgb3BhY2l0eTogJHtwcm9wcyA9PiAocHJvcHMub3BlbmVkID8gJzEnIDogJzAnKX07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgd2lkdGg6IDMyMHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IERhdGVQaWNrZXIgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKSA9PiB7XHJcbiAgICBjb25zdCB0aGVtZSA9IFJlYWN0LnVzZUNvbnRleHQoVGhlbWVDb250ZXh0KTtcclxuICAgIGNvbnN0IGkxOG4gPSBSZWFjdC51c2VDb250ZXh0KEkxOG5Db250ZXh0KTtcclxuICAgIGNvbnN0IGljb25SZWYgPSBSZWFjdC51c2VSZWYoKTtcclxuICAgIGNvbnN0IHByZXZpb3VzSWNvblJlZiA9IFJlYWN0LnVzZVJlZigpO1xyXG4gICAgY29uc3QgaW5wdXRSZWYgPSBSZWFjdC51c2VSZWYoKTtcclxuICAgIGNvbnN0IGxhc3RGb2N1cyA9IFJlYWN0LnVzZVJlZigpO1xyXG4gICAgY29uc3QgaWQgPSB1c2VHZW5lcmF0ZUlkKHByb3BzLmlkKTtcclxuICAgIGNvbnN0IGlzSW52ZXJzZSA9IHVzZUlzSW52ZXJzZShwcm9wcy5pc0ludmVyc2UpO1xyXG4gICAgY29uc3QgbWluRGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKHByb3BzLm1pbkRhdGUpO1xyXG4gICAgY29uc3QgbWF4RGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKHByb3BzLm1heERhdGUpO1xyXG4gICAgY29uc3QgZGF0ZUZvcm1hdCA9IGkxOG4uZGF0ZUZvcm1hdDtcclxuICAgIGNvbnN0IFtoZWxwZXJJbmZvcm1hdGlvblNob3duLCBzZXRIZWxwZXJJbmZvcm1hdGlvblNob3duXSA9IFJlYWN0LnVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IFtjYWxlbmRhck9wZW5lZCwgc2V0Q2FsZW5kYXJPcGVuZWRdID0gUmVhY3QudXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW2RhdGVGb2N1c2VkLCBzZXREYXRlRm9jdXNlZF0gPSBSZWFjdC51c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBbZm9jdXNlZERhdGUsIHNldEZvY3VzZWREYXRlXSA9IFJlYWN0LnVzZVN0YXRlKHNldERhdGVGcm9tQ29uc3VtZXIocHJvcHMudmFsdWUgfHwgcHJvcHMuZGVmYXVsdERhdGUpIHx8XHJcbiAgICAgICAgc2V0RGVmYXVsdEZvY3VzZWREYXRlKCkpO1xyXG4gICAgY29uc3QgW2Nob3NlbkRhdGUsIHNldENob3NlbkRhdGVdID0gUmVhY3QudXNlU3RhdGUoc2V0RGF0ZUZyb21Db25zdW1lcihwcm9wcy52YWx1ZSB8fCBwcm9wcy5kZWZhdWx0RGF0ZSkpO1xyXG4gICAgY29uc3QgcmVmID0gdXNlRm9ya2VkUmVmKGZvcndhcmRlZFJlZiwgaW5wdXRSZWYpO1xyXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBpZiAocHJvcHMuYXBpUmVmKSB7XHJcbiAgICAgICAgICAgIHByb3BzLmFwaVJlZi5jdXJyZW50ID0ge1xyXG4gICAgICAgICAgICAgICAgY2xvc2VEYXRlUGlja2VyTWFudWFsbHkoZXZlbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrKGV2ZW50KTtcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBvcGVuRGF0ZVBpY2tlck1hbnVhbGx5KGV2ZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9nZ2xlQ2FsZW5kYXJPcGVuZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGVUaW1lUGlja2VyQ29udGVudCAmJlxyXG4gICAgICAgICAgICBjaG9zZW5EYXRlICYmXHJcbiAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQgIT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgaWYgKCFwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50ICYmIHByb3BzLnNldEFkZGl0aW9uYWxJbnB1dENvbnRlbnQpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLnNldEFkZGl0aW9uYWxJbnB1dENvbnRlbnQoJzEyOjAwIEFNJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUoY2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2Nob3NlbkRhdGVdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFjYWxlbmRhck9wZW5lZCkge1xyXG4gICAgICAgICAgICBzZXREYXRlRm9jdXNlZChmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2NhbGVuZGFyT3BlbmVkXSk7XHJcbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGlmIChwcm9wcy52YWx1ZSkge1xyXG4gICAgICAgICAgICBzZXRGb2N1c2VkRGF0ZShzZXREYXRlRnJvbUNvbnN1bWVyKHByb3BzLnZhbHVlKSB8fCBzZXREZWZhdWx0Rm9jdXNlZERhdGUoKSk7XHJcbiAgICAgICAgICAgIHNldENob3NlbkRhdGUoc2V0RGF0ZUZyb21Db25zdW1lcihwcm9wcy52YWx1ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocHJvcHMudmFsdWUgPT09IG51bGwpXHJcbiAgICAgICAgICAgIHNldENob3NlbkRhdGUodW5kZWZpbmVkKTtcclxuICAgIH0sIFtwcm9wcy52YWx1ZV0pO1xyXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBwcmV2aW91c0ljb25SZWYuY3VycmVudCA9IGljb25SZWYuY3VycmVudDtcclxuICAgIH0sIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFmb2N1c2VkRGF0ZSB8fCAhbWluRGF0ZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGlmIChpc0JlZm9yZShmb2N1c2VkRGF0ZSwgbWluRGF0ZSkgJiYgIWNob3NlbkRhdGUpIHtcclxuICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobWluRGF0ZSk7XHJcbiAgICAgICAgICAgIHNldERhdGVGb2N1c2VkKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmb2N1c2VkRGF0ZSwgbWluRGF0ZSwgY2hvc2VuRGF0ZV0pO1xyXG4gICAgZnVuY3Rpb24gc2hvd0hlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIGxhc3RGb2N1cy5jdXJyZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcclxuICAgICAgICBzZXRIZWxwZXJJbmZvcm1hdGlvblNob3duKHRydWUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gaGlkZUhlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIGxhc3RGb2N1cy5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgc2V0SGVscGVySW5mb3JtYXRpb25TaG93bihmYWxzZSk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBjbG9zZUhlbHBlckluZm9ybWF0aW9uKCkge1xyXG4gICAgICAgIHNldEhlbHBlckluZm9ybWF0aW9uU2hvd24oZmFsc2UpO1xyXG4gICAgICAgIGljb25SZWYuY3VycmVudC5mb2N1cygpO1xyXG4gICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHNldEZvY3VzZWRUb2RheURhdGUgPSAoZXZlbnQpID0+IHtcclxuICAgICAgICBjb25zdCBpc0tleWJvYXJkRXZlbnQgPSBldmVudC50eXBlID09PSAna2V5ZG93bic7XHJcbiAgICAgICAgaWYgKChpc0tleWJvYXJkRXZlbnQgJiZcclxuICAgICAgICAgICAgKGV2ZW50LmtleSA9PT0gJyAnIHx8XHJcbiAgICAgICAgICAgICAgICBldmVudC5rZXkgPT09ICdFbnRlcicpKSB8fFxyXG4gICAgICAgICAgICBldmVudC50eXBlID09PSAnY2xpY2snKSB7XHJcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKHNldERlZmF1bHRGb2N1c2VkRGF0ZSgpKTtcclxuICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuICAgIGZ1bmN0aW9uIHNldERhdGVGcm9tQ29uc3VtZXIoZGF0ZSkge1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZERhdGUgPSBnZXREYXRlRnJvbVN0cmluZyhkYXRlKTtcclxuICAgICAgICBjb25zdCBjb252ZXJ0ZWRNaW5EYXRlID0gZ2V0RGF0ZUZyb21TdHJpbmcobWluRGF0ZSk7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkTWF4RGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKG1heERhdGUpO1xyXG4gICAgICAgIHJldHVybiBkYXRlICYmXHJcbiAgICAgICAgICAgIGluRGF0ZVJhbmdlKGNvbnZlcnRlZERhdGUsIGNvbnZlcnRlZE1pbkRhdGUsIGNvbnZlcnRlZE1heERhdGUpXHJcbiAgICAgICAgICAgID8gY29udmVydGVkRGF0ZVxyXG4gICAgICAgICAgICA6IG51bGw7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBzZXREZWZhdWx0Rm9jdXNlZERhdGUoKSB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgY29uc3QgY29udmVydGVkTWluRGF0ZSA9IGdldERhdGVGcm9tU3RyaW5nKG1pbkRhdGUpO1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZE1heERhdGUgPSBnZXREYXRlRnJvbVN0cmluZyhtYXhEYXRlKTtcclxuICAgICAgICBpZiAoaW5EYXRlUmFuZ2UobmV3RGF0ZSwgY29udmVydGVkTWluRGF0ZSwgY29udmVydGVkTWF4RGF0ZSkpIHtcclxuICAgICAgICAgICAgaWYgKGlzQmVmb3JlKHN0YXJ0T2ZEYXkobmV3RGF0ZSksIGNvbnZlcnRlZE1pbkRhdGUpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWRkRGF5cyhuZXdEYXRlLCAxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gbmV3RGF0ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY29udmVydGVkTWF4RGF0ZSB8fCBjb252ZXJ0ZWRNaW5EYXRlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZWRNaW5EYXRlID8gY29udmVydGVkTWluRGF0ZSA6IGNvbnZlcnRlZE1heERhdGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gYnVpbGRDYWxlbmRhck1vbnRoKGRhdGUsIGVuYWJsZU91dHNpZGVEYXRlcykge1xyXG4gICAgICAgIGNvbnN0IGRheXMgPSBbXHJcbiAgICAgICAgICAgICdzdW5kYXknLFxyXG4gICAgICAgICAgICAnbW9uZGF5JyxcclxuICAgICAgICAgICAgJ3R1ZXNkYXknLFxyXG4gICAgICAgICAgICAnd2VkbmVzZGF5JyxcclxuICAgICAgICAgICAgJ3RodXJzZGF5JyxcclxuICAgICAgICAgICAgJ2ZyaWRheScsXHJcbiAgICAgICAgICAgICdzYXR1cmRheScsXHJcbiAgICAgICAgXTtcclxuICAgICAgICBjb25zdCB7IHN0YXJ0T2ZXZWVrIH0gPSBpMThuLmRhdGVQaWNrZXI7XHJcbiAgICAgICAgcmV0dXJuIGdldENhbGVuZGFyTW9udGhXZWVrcyhkYXRlLCBlbmFibGVPdXRzaWRlRGF0ZXMsIGRheXMuaW5kZXhPZihzdGFydE9mV2VlaykpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gb25QcmV2TW9udGhDbGljaygpIHtcclxuICAgICAgICBjb25zdCBuZXdEYXRlID0gZ2V0UHJldk1vbnRoRnJvbURhdGUoZm9jdXNlZERhdGUpO1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gb25OZXh0TW9udGhDbGljaygpIHtcclxuICAgICAgICBjb25zdCBuZXdEYXRlID0gZ2V0TmV4dE1vbnRoRnJvbURhdGUoZm9jdXNlZERhdGUpO1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0RhdGUpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gc2V0TW9udGhGb2N1c2VkRGF0ZShtb250aE51bWJlcikge1xyXG4gICAgICAgIGNvbnN0IG5ld0RhdGUgPSBzZXRNb250aEZvckRhdGUoZm9jdXNlZERhdGUsIG1vbnRoTnVtYmVyKTtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIHNldFllYXJGb2N1c2VkRGF0ZSh5ZWFyTnVtYmVyKSB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0ZSA9IHNldFllYXJGb3JEYXRlKGZvY3VzZWREYXRlLCB5ZWFyTnVtYmVyKTtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShuZXdEYXRlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIG9uRGF0ZUNoYW5nZShkYXkpIHtcclxuICAgICAgICBzZXRDaG9zZW5EYXRlKGRheSk7XHJcbiAgICAgICAgaWYgKGRhdGVUaW1lUGlja2VyQ29udGVudClcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIHJlc2V0KCkge1xyXG4gICAgICAgIHNldEZvY3VzZWREYXRlKHNldERlZmF1bHRGb2N1c2VkRGF0ZSgpKTtcclxuICAgICAgICBzZXRDaG9zZW5EYXRlKG51bGwpO1xyXG4gICAgICAgIHNldERhdGVGb2N1c2VkKGZhbHNlKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGlzVmFsaWREYXRlRnJvbVN0cmluZyh2YWx1ZSkge1xyXG4gICAgICAgIGNvbnN0IGlzVmFsaWREYXRlRm9ybWF0ID0gaXNNYXRjaCh2YWx1ZSwgaTE4bi5kYXRlRm9ybWF0KTtcclxuICAgICAgICBjb25zdCBwYXJzZWREYXRlID0gcGFyc2UodmFsdWUsIGkxOG4uZGF0ZUZvcm1hdCwgbmV3IERhdGUoKSk7XHJcbiAgICAgICAgY29uc3QgaXNWYWxpZERhdGUgPSBpc1ZhbGlkKHBhcnNlZERhdGUpO1xyXG4gICAgICAgIHJldHVybiBpc1ZhbGlkRGF0ZUZvcm1hdCAmJiBpc1ZhbGlkRGF0ZTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUlucHV0Q2hhbmdlKGV2ZW50KSB7XHJcbiAgICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gZXZlbnQudGFyZ2V0O1xyXG4gICAgICAgIGNvbnN0IGRheSA9IG5ldyBEYXRlKHZhbHVlKTtcclxuICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgcHJvcHMub25JbnB1dENoYW5nZSAmJlxyXG4gICAgICAgICAgICB0eXBlb2YgcHJvcHMub25JbnB1dENoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbklucHV0Q2hhbmdlKGV2ZW50KTtcclxuICAgICAgICBsZXQgaXNWYWxpZERheTtcclxuICAgICAgICBpZiAoZGF0ZVRpbWVQaWNrZXJDb250ZW50KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNwbGl0VmFsdWUgPSB2YWx1ZS5zcGxpdCgnICcpWzBdO1xyXG4gICAgICAgICAgICBpc1ZhbGlkRGF5ID0gaXNWYWxpZERhdGVGcm9tU3RyaW5nKHNwbGl0VmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCB2YWxpZERheSA9IG5ldyBEYXRlKHNwbGl0VmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gL15cXGR7Mn1cXC9cXGR7Mn1cXC9cXGR7NH0kLztcclxuICAgICAgICAgICAgaWYgKHBhdHRlcm4udGVzdChzcGxpdFZhbHVlKSAmJiBpc1ZhbGlkKHZhbGlkRGF5KSkge1xyXG4gICAgICAgICAgICAgICAgc2V0Q2hvc2VuRGF0ZSh2YWxpZERheSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UoaXNWYWxpZERheSA/IHZhbGlkRGF5LnRvSVNPU3RyaW5nKCkgOiBzcGxpdFZhbHVlLCBldmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBpc1ZhbGlkRGF5ID0gaXNWYWxpZERhdGVGcm9tU3RyaW5nKHZhbHVlKTtcclxuICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICAgICAgcHJvcHMub25DaGFuZ2UoaXNWYWxpZERheSA/IGRheS50b0lTT1N0cmluZygpIDogdmFsdWUsIGV2ZW50KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVJbnB1dEZvY3VzKGV2ZW50KSB7XHJcbiAgICAgICAgcHJvcHMub25JbnB1dEZvY3VzICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbklucHV0Rm9jdXMgPT09ICdmdW5jdGlvbicgJiZcclxuICAgICAgICAgICAgcHJvcHMub25JbnB1dEZvY3VzKGV2ZW50KTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUlucHV0Qmx1cihldmVudCkge1xyXG4gICAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IGlucHV0UmVmLmN1cnJlbnQ7XHJcbiAgICAgICAgY29uc3QgZGF5ID0gcGFyc2UoZGF0ZVRpbWVQaWNrZXJDb250ZW50ID8gdmFsdWUuc3BsaXQoJyAnKVswXSA6IHZhbHVlLCBpMThuLmRhdGVGb3JtYXQsIG5ldyBEYXRlKCkpO1xyXG4gICAgICAgIGxldCBpc1ZhbGlkRGF5O1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3BsaXRWYWx1ZSA9IHZhbHVlLnNwbGl0KCcgJylbMF07XHJcbiAgICAgICAgICAgIGlzVmFsaWREYXkgPSBpc1ZhbGlkRGF0ZUZyb21TdHJpbmcoc3BsaXRWYWx1ZSk7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbGlkRGF5ID0gbmV3IERhdGUoc3BsaXRWYWx1ZSk7XHJcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkRGF5KSB7XHJcbiAgICAgICAgICAgICAgICBoYW5kbGVEYXRlQ2hhbmdlKHZhbGlkRGF5LCBldmVudCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGlzVmFsaWREYXkgPSBpc1ZhbGlkRGF0ZUZyb21TdHJpbmcodmFsdWUpO1xyXG4gICAgICAgICAgICBpZiAoaXNWYWxpZERheSkge1xyXG4gICAgICAgICAgICAgICAgaGFuZGxlRGF0ZUNoYW5nZShkYXksIGV2ZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJlc2V0ICYmIHR5cGVvZiByZXNldCA9PT0gJ2Z1bmN0aW9uJyAmJiByZXNldCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByb3BzLm9uSW5wdXRCbHVyICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBwcm9wcy5vbklucHV0Qmx1ciA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbklucHV0Qmx1cihldmVudCk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVJbnB1dEtleURvd24oZXZlbnQpIHtcclxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xyXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVLZXlEb3duKGV2ZW50KSB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcclxuICAgICAgICAgICAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgICAgIHNldENhbGVuZGFyT3BlbmVkKGZhbHNlKTtcclxuICAgICAgICAgICAgaWNvblJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChkYXRlRm9jdXNlZCAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50LmNsb3Nlc3QoJ3RhYmxlJykpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3Q2hvc2VuRGF0ZSA9IGhhbmRsZUtleVByZXNzKGV2ZW50LCBmb2N1c2VkRGF0ZSwgc2V0Q2FsZW5kYXJPcGVuZWQsIHNob3dIZWxwZXJJbmZvcm1hdGlvbiwgb25EYXRlQ2hhbmdlLCBpY29uUmVmKTtcclxuICAgICAgICAgICAgaWYgKG5ld0Nob3NlbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgIGlmIChtaW5EYXRlICYmIG1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZnRlcihzZXRIb3VycyhuZXdDaG9zZW5EYXRlLCAxMiksIHN0YXJ0T2ZEYXkobWluRGF0ZSkpICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzQmVmb3JlKHNldEhvdXJzKG5ld0Nob3NlbkRhdGUsIDEyKSwgZW5kT2ZEYXkobWF4RGF0ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0Nob3NlbkRhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1pbkRhdGUgJiYgIW1heERhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNBZnRlcihzZXRIb3VycyhuZXdDaG9zZW5EYXRlLCAxMiksIHN0YXJ0T2ZEYXkobWluRGF0ZSkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEZvY3VzZWREYXRlKG5ld0Nob3NlbkRhdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1heERhdGUgJiYgIW1pbkRhdGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNCZWZvcmUoc2V0SG91cnMobmV3Q2hvc2VuRGF0ZSwgMTIpLCBlbmRPZkRheShtYXhEYXRlKSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobmV3Q2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUobmV3Q2hvc2VuRGF0ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVEYXRlQ2hhbmdlKGRheSwgZXZlbnQpIHtcclxuICAgICAgICBwcm9wcy5vbkRhdGVDaGFuZ2UgJiZcclxuICAgICAgICAgICAgdHlwZW9mIHByb3BzLm9uRGF0ZUNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyAmJlxyXG4gICAgICAgICAgICBwcm9wcy5vbkRhdGVDaGFuZ2UoZGF5LCBldmVudCk7XHJcbiAgICAgICAgcHJvcHMub25DaGFuZ2UgJiZcclxuICAgICAgICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nICYmXHJcbiAgICAgICAgICAgIHByb3BzLm9uQ2hhbmdlKGRheT8udG9JU09TdHJpbmcoKSwgZXZlbnQpO1xyXG4gICAgICAgIG9uRGF0ZUNoYW5nZShkYXkpO1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBzZXRGb2N1c2VkRGF0ZShkYXkpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gaGFuZGxlRGF5U2VsZWN0aW9uKGRheSwgZXZlbnQpIHtcclxuICAgICAgICBoYW5kbGVEYXRlQ2hhbmdlKGRheSwgZXZlbnQpO1xyXG4gICAgICAgIGlmIChkYXRlVGltZVBpY2tlckNvbnRlbnQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBoYW5kbGVDYWxlbmRhckJsdXIoZXZlbnQpIHtcclxuICAgICAgICBjb25zdCB7IGN1cnJlbnRUYXJnZXQgfSA9IGV2ZW50O1xyXG4gICAgICAgIC8vIHRpbWVvdXQgbmVlZGVkIGZvciBhY3RpdmUgZWxlbWVudCB0byB1cGRhdGUuIEJyb3dzZXIgYmVoYXZpb3IuXHJcbiAgICAgICAgLy8gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMzA3XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzSW5DYWxlbmRhciA9IGN1cnJlbnRUYXJnZXQuY29udGFpbnMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XHJcbiAgICAgICAgICAgIGlmICghaXNJbkNhbGVuZGFyICYmICFoZWxwZXJJbmZvcm1hdGlvblNob3duKSB7XHJcbiAgICAgICAgICAgICAgICBzZXRDYWxlbmRhck9wZW5lZChmYWxzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCAwKTtcclxuICAgIH1cclxuICAgIGZ1bmN0aW9uIGhhbmRsZUNsb3NlQnV0dG9uQ2xpY2soZXZlbnQpIHtcclxuICAgICAgICBpZiAoIWljb25SZWYuY3VycmVudCAmJiBwcmV2aW91c0ljb25SZWYuY3VycmVudCkge1xyXG4gICAgICAgICAgICBpY29uUmVmLmN1cnJlbnQgPSBwcmV2aW91c0ljb25SZWYuY3VycmVudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWNvblJlZi5jdXJyZW50LmZvY3VzKCk7XHJcbiAgICAgICAgc2V0Q2FsZW5kYXJPcGVuZWQoZmFsc2UpO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gdG9nZ2xlQ2FsZW5kYXJPcGVuZWQoKSB7XHJcbiAgICAgICAgc2V0Q2FsZW5kYXJPcGVuZWQob3BlbmVkID0+IHtcclxuICAgICAgICAgICAgLy8gRm9jdXMgb24gdG9kYXkgd2hlbiBvcGVuaW5nIGNhbGVuZGFyIHdpdGhvdXQgYSBjaG9zZW4gZGF0ZVxyXG4gICAgICAgICAgICBpZiAoIW9wZW5lZCAmJiAhY2hvc2VuRGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgc2V0Rm9jdXNlZERhdGUoc2V0RGVmYXVsdEZvY3VzZWREYXRlKCkpO1xyXG4gICAgICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQodHJ1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuICFvcGVuZWQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB7IHBsYWNlaG9sZGVyLCB0ZXN0SWQsIGRhdGVUaW1lUGlja2VyQ29udGVudCwgLi4ucmVzdCB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCBvdGhlciA9IG9taXQoWydvbkRhdGVDaGFuZ2UnLCAnb25JbnB1dENoYW5nZScsICdvbklucHV0Qmx1cicsICdvbklucHV0Rm9jdXMnXSwgcmVzdCk7XHJcbiAgICBjb25zdCBkYXRlRmllbGRWYWx1ZSA9IGRhdGVGb3JtYXQgPT09ICdNTU1NIGQsIHl5eXknICYmIGNob3NlbkRhdGVcclxuICAgICAgICA/IGZvcm1hdChjaG9zZW5EYXRlLCBkYXRlRm9ybWF0KVxyXG4gICAgICAgIDogY2hvc2VuRGF0ZTtcclxuICAgIGNvbnN0IGlucHV0RGF0ZVZhbHVlID0gY2hvc2VuRGF0ZSA/IGZvcm1hdChjaG9zZW5EYXRlLCBkYXRlRm9ybWF0KSA6ICcnO1xyXG4gICAgbGV0IGlucHV0VmFsdWUgPSBwcm9wcy5pc0RhdGVGaWVsZElucHV0ID8gZGF0ZUZpZWxkVmFsdWUgOiBpbnB1dERhdGVWYWx1ZTtcclxuICAgIGlmIChpbnB1dFZhbHVlICYmIHByb3BzLmFkZGl0aW9uYWxJbnB1dENvbnRlbnQpIHtcclxuICAgICAgICBpbnB1dFZhbHVlID0gYCR7aW5wdXRWYWx1ZX0gJHtwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50fWA7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChwcm9wcy5hZGRpdGlvbmFsSW5wdXRDb250ZW50KSB7XHJcbiAgICAgICAgc2V0Q2hvc2VuRGF0ZShuZXcgRGF0ZSgpKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgZmxvYXRpbmdTdHlsZXMsIHJlZnMsIGVsZW1lbnRzLCB1cGRhdGUgfSA9IHVzZU1hZ21hRmxvYXRpbmcoKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgcmVmZXJlbmNlRGF0ZUlucHV0ID0gZWxlbWVudHMucmVmZXJlbmNlO1xyXG4gICAgICAgIGNvbnN0IGZsb2F0aW5nQ2FsZW5kYXIgPSBlbGVtZW50cy5mbG9hdGluZztcclxuICAgICAgICBpZiAoY2FsZW5kYXJPcGVuZWQgJiYgcmVmZXJlbmNlRGF0ZUlucHV0ICYmIGZsb2F0aW5nQ2FsZW5kYXIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGF1dG9VcGRhdGUocmVmZXJlbmNlRGF0ZUlucHV0LCBmbG9hdGluZ0NhbGVuZGFyLCB1cGRhdGUpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtjYWxlbmRhck9wZW5lZCwgZWxlbWVudHMsIHVwZGF0ZV0pO1xyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KENhbGVuZGFyQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZToge1xyXG4gICAgICAgICAgICBjaG9zZW5EYXRlLFxyXG4gICAgICAgICAgICBmb2N1c2VkRGF0ZSxcclxuICAgICAgICAgICAgZGF0ZUZvY3VzZWQsXHJcbiAgICAgICAgICAgIG1heERhdGUsXHJcbiAgICAgICAgICAgIG1pbkRhdGUsXHJcbiAgICAgICAgICAgIGhlbHBlckluZm9ybWF0aW9uU2hvd24sXHJcbiAgICAgICAgICAgIGlzSW52ZXJzZSxcclxuICAgICAgICAgICAgYnVpbGRDYWxlbmRhck1vbnRoLFxyXG4gICAgICAgICAgICBzaG93SGVscGVySW5mb3JtYXRpb24sXHJcbiAgICAgICAgICAgIGhpZGVIZWxwZXJJbmZvcm1hdGlvbixcclxuICAgICAgICAgICAgb25LZXlEb3duOiBoYW5kbGVLZXlEb3duLFxyXG4gICAgICAgICAgICBvblByZXZNb250aENsaWNrLFxyXG4gICAgICAgICAgICBvbk5leHRNb250aENsaWNrLFxyXG4gICAgICAgICAgICBvbkRhdGVDaGFuZ2U6IGhhbmRsZURheVNlbGVjdGlvbixcclxuICAgICAgICAgICAgc2V0RGF0ZUZvY3VzZWQsXHJcbiAgICAgICAgICAgIHNldEZvY3VzZWRUb2RheURhdGUsXHJcbiAgICAgICAgICAgIHNldEZvY3VzZWREYXRlLFxyXG4gICAgICAgICAgICBzZXRNb250aEZvY3VzZWREYXRlLFxyXG4gICAgICAgICAgICBzZXRZZWFyRm9jdXNlZERhdGUsXHJcbiAgICAgICAgICAgIG9uQ2xvc2U6IGNsb3NlSGVscGVySW5mb3JtYXRpb24sXHJcbiAgICAgICAgfSB9LFxyXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRGF0ZVBpY2tlckNvbnRhaW5lciwgeyBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCwgb25CbHVyOiBoYW5kbGVDYWxlbmRhckJsdXIgfSxcclxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChBbm5vdW5jZSwgbnVsbCwgY2FsZW5kYXJPcGVuZWQgJiYgKFJlYWN0LmNyZWF0ZUVsZW1lbnQoVmlzdWFsbHlIaWRkZW4sIG51bGwsIGkxOG4uZGF0ZVBpY2tlci5jYWxlbmRhck9wZW5Bbm5vdW5jZSkpKSxcclxuICAgICAgICAgICAgcHJvcHMuaXNEYXRlRmllbGRJbnB1dCA/IChSZWFjdC5jcmVhdGVFbGVtZW50KERhdGVGaWVsZElucHV0LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBpZDogaWQsIGRhdGVGb3JtYXQ6IGRhdGVGb3JtYXQsIGlucHV0VmFsdWU6IGlucHV0VmFsdWUsIG9uSWNvbkNsaWNrOiB0b2dnbGVDYWxlbmRhck9wZW5lZCwgc2V0UmVmZXJlbmNlOiByZWZzLnNldFJlZmVyZW5jZSwgaWNvblJlZjogaWNvblJlZiwgaW5wdXRSZWY6IGlucHV0UmVmLCBoYW5kbGVEYXRlQ2hhbmdlOiBoYW5kbGVEYXRlQ2hhbmdlLCBvbkNsZWFyRGF0ZTogcmVzZXQsIG9uSW5wdXRCbHVyOiBwcm9wcy5vbklucHV0Qmx1ciwgb25JbnB1dEZvY3VzOiBoYW5kbGVJbnB1dEZvY3VzLCBvbkljb25LZXlEb3duOiBoYW5kbGVJbnB1dEtleURvd24gfSkpKSA6IChSZWFjdC5jcmVhdGVFbGVtZW50KElucHV0LCBPYmplY3QuYXNzaWduKHt9LCBvdGhlciwgeyBpY29uOiBSZWFjdC5jcmVhdGVFbGVtZW50KEV2ZW50SWNvbiwgbnVsbCksIGljb25BcmlhTGFiZWw6IGkxOG4uZGF0ZVBpY2tlci5jYWxlbmRhckljb25BcmlhTGFiZWwsIGljb25SZWY6IGljb25SZWYsIG9uSWNvbkNsaWNrOiB0b2dnbGVDYWxlbmRhck9wZW5lZCwgb25JY29uS2V5RG93bjogaGFuZGxlSW5wdXRLZXlEb3duLCBpZDogaWQsIGlzSW52ZXJzZTogaXNJbnZlcnNlLCByZWY6IHJlZiwgb25DaGFuZ2U6IGhhbmRsZUlucHV0Q2hhbmdlLCBvbkJsdXI6IGhhbmRsZUlucHV0Qmx1ciwgb25Gb2N1czogaGFuZGxlSW5wdXRGb2N1cywgb25LZXlEb3duOiBoYW5kbGVJbnB1dEtleURvd24sIG9uRGF0ZUNoYW5nZTogaGFuZGxlRGF0ZUNoYW5nZSwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyID8gcGxhY2Vob2xkZXIgOiBkYXRlRm9ybWF0LnRvTG93ZXJDYXNlKCksIHR5cGU6IElucHV0VHlwZS50ZXh0LCB2YWx1ZTogaW5wdXRWYWx1ZSwgc2V0UmVmZXJlbmNlOiByZWZzLnNldFJlZmVyZW5jZSB9KSkpLFxyXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEludmVyc2VDb250ZXh0LlByb3ZpZGVyLCB7IHZhbHVlOiB7IGlzSW52ZXJzZSB9IH0sXHJcbiAgICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHsgcmVmOiBlbCA9PiBjYWxlbmRhck9wZW5lZCAmJiByZWZzLnNldEZsb2F0aW5nKGVsKSwgc3R5bGU6IHsgLi4uZmxvYXRpbmdTdHlsZXMsIHpJbmRleDogJzk5OCcgfSB9LFxyXG4gICAgICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRGF0ZVBpY2tlckNhbGVuZGFyLCB7IFwiZGF0YS10ZXN0aWRcIjogXCJjYWxlbmRhckNvbnRhaW5lclwiLCBvcGVuZWQ6IGNhbGVuZGFyT3BlbmVkLCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgdGhlbWU6IHRoZW1lIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoQ2FsZW5kYXJNb250aCwgeyBmb2N1c09uT3BlbjogY2FsZW5kYXJPcGVuZWQgJiYgQm9vbGVhbihmb2N1c2VkRGF0ZSksIGlzSW52ZXJzZTogaXNJbnZlcnNlLCBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrOiBoYW5kbGVDbG9zZUJ1dHRvbkNsaWNrLCBjYWxlbmRhck9wZW5lZDogY2FsZW5kYXJPcGVuZWQsIHNldERhdGVGb2N1c2VkOiBzZXREYXRlRm9jdXNlZCwgZGF0ZVRpbWVQaWNrZXJDb250ZW50OiBkYXRlVGltZVBpY2tlckNvbnRlbnQgfSkpKSkpKSk7XHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXX0= */"));
24841
24998
  /*#__PURE__*/createStyled("div", {
24842
24999
  target: "e19df3bi0",
24843
25000
  label: "DoneButtonWrapper"
@@ -27576,7 +27733,7 @@
27576
27733
  return "0 0 " + props.theme.spaceScale.spacing02;
27577
27734
  }
27578
27735
  }
27579
- var StyledIcon = /*#__PURE__*/createStyled("span", {
27736
+ var StyledIcon$1 = /*#__PURE__*/createStyled("span", {
27580
27737
  target: "e1ym35js0",
27581
27738
  label: "StyledIcon"
27582
27739
  })("display:flex;margin:", function (props) {
@@ -27689,7 +27846,7 @@
27689
27846
  tabIndex: isActive ? 0 : -1,
27690
27847
  theme: theme,
27691
27848
  textTransform: textTransform
27692
- }), icon && (/*#__PURE__*/React__default.createElement(StyledIcon, {
27849
+ }), icon && (/*#__PURE__*/React__default.createElement(StyledIcon$1, {
27693
27850
  theme: theme,
27694
27851
  iconPosition: tabIconPosition,
27695
27852
  isIconOnly: isIconOnly
@@ -29764,6 +29921,7 @@
29764
29921
  downloadAsJpg: 'Download as JPG',
29765
29922
  downloadAsPng: 'Download as PNG',
29766
29923
  exitFullScreen: 'Exit full screen',
29924
+ legendInstructions: 'Checking these checkboxes will update the chart.',
29767
29925
  makeFullScreen: 'Make full screen',
29768
29926
  moreOptionsAriaLabel: 'More options',
29769
29927
  showAsTableTooltip: 'Show as table',
@@ -29774,7 +29932,7 @@
29774
29932
  * falling back to English defaults.
29775
29933
  */
29776
29934
  function useChartToolbarI18n() {
29777
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
29935
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
29778
29936
  var i18n = React__default__namespace.useContext(I18nContext);
29779
29937
  var toolbar = (_a = i18n.charts) === null || _a === void 0 ? void 0 : _a.toolbar;
29780
29938
  if (!toolbar)
@@ -29785,10 +29943,11 @@
29785
29943
  downloadAsJpg: (_d = toolbar.downloadAsJpg) !== null && _d !== void 0 ? _d : defaults.downloadAsJpg,
29786
29944
  downloadAsPng: (_e = toolbar.downloadAsPng) !== null && _e !== void 0 ? _e : defaults.downloadAsPng,
29787
29945
  exitFullScreen: (_f = toolbar.exitFullScreen) !== null && _f !== void 0 ? _f : defaults.exitFullScreen,
29788
- makeFullScreen: (_g = toolbar.makeFullScreen) !== null && _g !== void 0 ? _g : defaults.makeFullScreen,
29789
- moreOptionsAriaLabel: (_h = toolbar.moreOptionsAriaLabel) !== null && _h !== void 0 ? _h : defaults.moreOptionsAriaLabel,
29790
- showAsTableTooltip: (_j = toolbar.showAsTableTooltip) !== null && _j !== void 0 ? _j : defaults.showAsTableTooltip,
29791
- tabularRepresentationLabel: (_k = toolbar.tabularRepresentationLabel) !== null && _k !== void 0 ? _k : defaults.tabularRepresentationLabel,
29946
+ legendInstructions: (_g = toolbar.legendInstructions) !== null && _g !== void 0 ? _g : defaults.legendInstructions,
29947
+ makeFullScreen: (_h = toolbar.makeFullScreen) !== null && _h !== void 0 ? _h : defaults.makeFullScreen,
29948
+ moreOptionsAriaLabel: (_j = toolbar.moreOptionsAriaLabel) !== null && _j !== void 0 ? _j : defaults.moreOptionsAriaLabel,
29949
+ showAsTableTooltip: (_k = toolbar.showAsTableTooltip) !== null && _k !== void 0 ? _k : defaults.showAsTableTooltip,
29950
+ tabularRepresentationLabel: (_l = toolbar.tabularRepresentationLabel) !== null && _l !== void 0 ? _l : defaults.tabularRepresentationLabel,
29792
29951
  };
29793
29952
  }
29794
29953
 
@@ -29887,7 +30046,7 @@
29887
30046
  ? props.theme.colors.primary700
29888
30047
  : props.theme.colors.neutral100;
29889
30048
  });
29890
- var CarbonChartWrapper = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n &:fullscreen,\n &:-webkit-full-screen {\n background: ", ";\n\n .cds--chart-holder {\n height: 100vh !important;\n }\n }\n\n .cds--data-table thead tr th {\n background: ", " !important;\n }\n .cds--data-table td,\n .cds--data-table tbody th {\n color: ", ";\n }\n .cds--data-table tbody tr,\n .cds--data-table tbody tr td,\n .cds--data-table tbody tr th {\n color: ", ";\n }\n .cds--data-table tr {\n block-size: 2.5rem;\n }\n\n .cds--cc--tooltip .content-box .datapoint-tooltip p {\n font-size: ", ";\n padding: ", ";\n color: ", ";\n max-width: 142px;\n white-space: normal;\n }\n\n .cds--modal-container {\n clip-path: inset(0% 0% 0% 0% round ", ");\n background: ", ";\n .cds--data-table th {\n background: ", ";\n }\n .cds--data-table td {\n border-top: 1px solid\n ", ";\n border-bottom: 1px solid\n ", ";\n background: ", ";\n }\n .cds--data-table tr:hover td {\n background: ", ";\n }\n }\n\n .chart-holder p,\n .chart-holder div,\n .chart-holder text,\n .cds--cc--axes g.axis .axis-title,\n .cds--cc--title p.title,\n .cds--cc--axes g.axis g.tick text {\n font-family: ", " !important;\n color: ", ";\n }\n\n .cds--cc--axes {\n overflow: visible;\n }\n\n div.cds--cc--legend {\n div.legend-item {\n div.checkbox {\n background: ", ";\n border: none;\n width: ", ";\n height: ", ";\n svg {\n left: 2px;\n position: relative;\n }\n }\n p {\n font-size: ", ";\n margin: 0 ", " 0 0;\n }\n }\n }\n div.cds--cc--legend.has-deactivated-items {\n div.legend-item {\n div.checkbox {\n border: 1px solid\n ", ";\n }\n div.checkbox.active {\n border: 1px solid transparent;\n }\n }\n }\n .chart-holder {\n .cds--cc--axes g.axis g.tick text {\n fill: ", ";\n }\n .cds--cc--axes g.axis path.domain {\n stroke: ", ";\n }\n .cds--cc--grid g.x.grid g.tick line,\n .cds--cc--grid g.y.grid g.tick line {\n stroke: ", ";\n }\n .cds--cc--grid rect.chart-grid-backdrop.stroked {\n stroke: ", ";\n }\n .cds--cc--skeleton .shimmer-effect-lines {\n filter: ", ";\n }\n /* .chart-holder.cds--chart-holder.filled,\n .cds--cc--skeleton rect.chart-skeleton-backdrop,\n .cds--cc--grid rect.chart-grid-backdrop {\n } */\n\n .cds--cc--grid rect.chart-grid-backdrop {\n fill: transparent;\n }\n .cds--cc--scatter circle.dot,\n .cds--cc--scatter circle.dot.hovered {\n padding: 10px;\n }\n .cds--cc--scatter-stacked circle.dot.hovered,\n .cds--cc--scatter-stacked circle.dot.unfilled,\n .cds--cc--scatter circle.dot.unfilled {\n stroke-width: 6px;\n transition: 0.1s all linear;\n }\n .cds--cc--scatter circle.dot {\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--scatter circle.dot.hovered {\n stroke-width: 0.5em;\n transition: 0.1s all linear;\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--lollipop circle.dot,\n .cds--cc--lollipop circle.dot.filled,\n .cds--cc--lollipop circle.dot.hovered {\n stroke-width: 15px;\n }\n .cds--cc--scatter-stacked circle.dot,\n .cds--cc--scatter-stacked circle.dot.hovered,\n .cds--cc--scatter-stacked circle.dot.unfilled,\n .cds--cc--scatter circle.dot.unfilled,\n .cds--cc--lollipop circle.dot.filled,\n .cds--cc--lollipop circle.dot,\n .cds--cc--lollipop circle.dot.hovered {\n transition: 0.1s all linear;\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--lollipop .cds--cc--scatter circle.dot.hovered {\n transition: 0.1s all linear;\n stroke-width: 1.1em;\n }\n\n .cds--cc--tooltip {\n ", "\n }\n\n .cds--overflow-menu-options__btn:focus {\n outline-color: ", ";\n }\n\n .cds--btn {\n min-height: auto;\n display: flex;\n flex: 0 auto;\n align-items: center;\n text-align: center;\n padding: 20px;\n margin: 0;\n line-height: ", ";\n margin: 0;\n min-width: ", ";\n overflow: hidden;\n position: relative;\n right: ", ";\n text-align: center;\n height: 40px;\n font-family: ", ";\n font-size: ", ";\n border-radius: ", ";\n font-weight: 500;\n }\n\n .cds--btn--primary {\n background: ", ";\n color: ", ";\n }\n\n *:focus {\n outline: 2px solid\n ", " !important;\n outline-offset: 0;\n }\n .cds--overflow-menu-options__btn:focus,\n .cds--overflow-menu:focus,\n .cds--overflow-menu__trigger:focus,\n .toolbar-control:focus {\n outline: 2px solid\n ", " !important;\n }\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):focus\n div.checkbox,\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):hover\n div.checkbox {\n border: ", ";\n }\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):hover\n div.checkbox {\n box-shadow: 0 0 0 2px\n ", " !important;\n }\n\n .cds--btn--primary {\n &:focus {\n outline: 2px solid\n ", ";\n }\n outline-offset: 2px;\n border: none;\n box-shadow: none;\n }\n .cds--modal-header {\n background: ", ";\n margin-bottom: 0;\n border-bottom: 1px solid\n ", ";\n }\n .cds--modal-header__heading {\n font-weight: 600;\n }\n\n .cds--modal-close {\n position: absolute;\n top: 0;\n right: 0;\n &:focus {\n outline: 2px solid\n ", ";\n border-color: none;\n }\n outline-offset: 0;\n border: none;\n }\n }\n\n .cds--modal-footer.cds--modal-footer {\n display: flex;\n align-items: center;\n border-top: 1px solid\n ", ";\n background: ", " !important;\n }\n .layout-child.header {\n height: auto !important;\n p {\n text-overflow: inherit;\n overflow: auto;\n white-space: normal;\n }\n }\n\n &.has-magma-toolbar .cds--cc--title p.title {\n visibility: hidden;\n }\n\n svg:not(:root) {\n overflow: visible;\n }\n\n .cds--cc--chart-wrapper text {\n font-size: ", ";\n }\n\n g.center text,\n .pie-label {\n fill: ", ";\n }\n\n // Zoom responsive tweaks\n\n @media screen and (max-width: 760px) {\n .cds--modal-container {\n overflow-y: auto;\n }\n .cds--chart-holder .cds--modal .cds--modal-container .cds--modal-content {\n overflow: visible;\n }\n .cds--chart-holder\n .cds--modal\n .cds--modal-container\n .cds--modal-content\n table\n th {\n position: relative;\n }\n }\n"], ["\n &:fullscreen,\n &:-webkit-full-screen {\n background: ", ";\n\n .cds--chart-holder {\n height: 100vh !important;\n }\n }\n\n .cds--data-table thead tr th {\n background: ", " !important;\n }\n .cds--data-table td,\n .cds--data-table tbody th {\n color: ", ";\n }\n .cds--data-table tbody tr,\n .cds--data-table tbody tr td,\n .cds--data-table tbody tr th {\n color: ", ";\n }\n .cds--data-table tr {\n block-size: 2.5rem;\n }\n\n .cds--cc--tooltip .content-box .datapoint-tooltip p {\n font-size: ", ";\n padding: ", ";\n color: ", ";\n max-width: 142px;\n white-space: normal;\n }\n\n .cds--modal-container {\n clip-path: inset(0% 0% 0% 0% round ", ");\n background: ", ";\n .cds--data-table th {\n background: ", ";\n }\n .cds--data-table td {\n border-top: 1px solid\n ", ";\n border-bottom: 1px solid\n ", ";\n background: ", ";\n }\n .cds--data-table tr:hover td {\n background: ", ";\n }\n }\n\n .chart-holder p,\n .chart-holder div,\n .chart-holder text,\n .cds--cc--axes g.axis .axis-title,\n .cds--cc--title p.title,\n .cds--cc--axes g.axis g.tick text {\n font-family: ", " !important;\n color: ", ";\n }\n\n .cds--cc--axes {\n overflow: visible;\n }\n\n div.cds--cc--legend {\n div.legend-item {\n div.checkbox {\n background: ", ";\n border: none;\n width: ", ";\n height: ", ";\n svg {\n left: 2px;\n position: relative;\n }\n }\n p {\n font-size: ", ";\n margin: 0 ", " 0 0;\n }\n }\n }\n div.cds--cc--legend.has-deactivated-items {\n div.legend-item {\n div.checkbox {\n border: 1px solid\n ", ";\n }\n div.checkbox.active {\n border: 1px solid transparent;\n }\n }\n }\n .chart-holder {\n .cds--cc--axes g.axis g.tick text {\n fill: ", ";\n }\n .cds--cc--axes g.axis path.domain {\n stroke: ", ";\n }\n .cds--cc--grid g.x.grid g.tick line,\n .cds--cc--grid g.y.grid g.tick line {\n stroke: ", ";\n }\n .cds--cc--grid rect.chart-grid-backdrop.stroked {\n stroke: ", ";\n }\n .cds--cc--skeleton .shimmer-effect-lines {\n filter: ", ";\n }\n /* .chart-holder.cds--chart-holder.filled,\n .cds--cc--skeleton rect.chart-skeleton-backdrop,\n .cds--cc--grid rect.chart-grid-backdrop {\n } */\n\n .cds--cc--grid rect.chart-grid-backdrop {\n fill: transparent;\n }\n .cds--cc--scatter circle.dot,\n .cds--cc--scatter circle.dot.hovered {\n padding: 10px;\n }\n .cds--cc--scatter-stacked circle.dot.hovered,\n .cds--cc--scatter-stacked circle.dot.unfilled,\n .cds--cc--scatter circle.dot.unfilled {\n stroke-width: 6px;\n transition: 0.1s all linear;\n }\n .cds--cc--scatter circle.dot {\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--scatter circle.dot.hovered {\n stroke-width: 0.5em;\n transition: 0.1s all linear;\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--lollipop circle.dot,\n .cds--cc--lollipop circle.dot.filled,\n .cds--cc--lollipop circle.dot.hovered {\n stroke-width: 15px;\n }\n .cds--cc--scatter-stacked circle.dot,\n .cds--cc--scatter-stacked circle.dot.hovered,\n .cds--cc--scatter-stacked circle.dot.unfilled,\n .cds--cc--scatter circle.dot.unfilled,\n .cds--cc--lollipop circle.dot.filled,\n .cds--cc--lollipop circle.dot,\n .cds--cc--lollipop circle.dot.hovered {\n transition: 0.1s all linear;\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--lollipop .cds--cc--scatter circle.dot.hovered {\n transition: 0.1s all linear;\n stroke-width: 1.1em;\n }\n\n .cds--cc--tooltip {\n ", "\n }\n\n .cds--overflow-menu-options__btn:focus {\n outline-color: ", ";\n }\n\n .cds--btn {\n min-height: auto;\n display: flex;\n flex: 0 auto;\n align-items: center;\n text-align: center;\n padding: 20px;\n margin: 0;\n line-height: ", ";\n margin: 0;\n min-width: ", ";\n overflow: hidden;\n position: relative;\n right: ", ";\n text-align: center;\n height: 40px;\n font-family: ", ";\n font-size: ", ";\n border-radius: ", ";\n font-weight: 500;\n }\n\n .cds--btn--primary {\n background: ", ";\n color: ", ";\n }\n\n *:focus {\n outline: 2px solid\n ", " !important;\n outline-offset: 0;\n }\n .cds--overflow-menu-options__btn:focus,\n .cds--overflow-menu:focus,\n .cds--overflow-menu__trigger:focus,\n .toolbar-control:focus {\n outline: 2px solid\n ", " !important;\n }\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):focus\n div.checkbox,\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):hover\n div.checkbox {\n border: ", ";\n }\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):hover\n div.checkbox {\n box-shadow: 0 0 0 2px\n ", " !important;\n }\n\n .cds--btn--primary {\n &:focus {\n outline: 2px solid\n ", ";\n }\n outline-offset: 2px;\n border: none;\n box-shadow: none;\n }\n .cds--modal-header {\n background: ", ";\n margin-bottom: 0;\n border-bottom: 1px solid\n ", ";\n }\n .cds--modal-header__heading {\n font-weight: 600;\n }\n\n .cds--modal-close {\n position: absolute;\n top: 0;\n right: 0;\n &:focus {\n outline: 2px solid\n ", ";\n border-color: none;\n }\n outline-offset: 0;\n border: none;\n }\n }\n\n .cds--modal-footer.cds--modal-footer {\n display: flex;\n align-items: center;\n border-top: 1px solid\n ", ";\n background: ", " !important;\n }\n .layout-child.header {\n height: auto !important;\n p {\n text-overflow: inherit;\n overflow: auto;\n white-space: normal;\n }\n }\n\n &.has-magma-toolbar .cds--cc--title p.title {\n visibility: hidden;\n }\n\n svg:not(:root) {\n overflow: visible;\n }\n\n .cds--cc--chart-wrapper text {\n font-size: ", ";\n }\n\n g.center text,\n .pie-label {\n fill: ", ";\n }\n\n // Zoom responsive tweaks\n\n @media screen and (max-width: 760px) {\n .cds--modal-container {\n overflow-y: auto;\n }\n .cds--chart-holder .cds--modal .cds--modal-container .cds--modal-content {\n overflow: visible;\n }\n .cds--chart-holder\n .cds--modal\n .cds--modal-container\n .cds--modal-content\n table\n th {\n position: relative;\n }\n }\n"])), function (props) {
30049
+ var CarbonChartWrapper = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n .cds--cc--legend-fieldset {\n border: 0;\n margin: 0;\n min-inline-size: 0;\n padding: 0;\n }\n\n .cds--cc--legend-fieldset > legend {\n clip: rect(1px, 1px, 1px, 1px);\n height: 1px;\n overflow: hidden;\n position: absolute;\n top: auto;\n white-space: nowrap;\n width: 1px;\n }\n\n &:fullscreen,\n &:-webkit-full-screen {\n background: ", ";\n\n .cds--chart-holder {\n height: 100vh !important;\n }\n }\n\n .cds--data-table thead tr th {\n background: ", " !important;\n }\n .cds--data-table td,\n .cds--data-table tbody th {\n color: ", ";\n }\n .cds--data-table tbody tr,\n .cds--data-table tbody tr td,\n .cds--data-table tbody tr th {\n color: ", ";\n }\n .cds--data-table tr {\n block-size: 2.5rem;\n }\n\n .cds--cc--tooltip .content-box .datapoint-tooltip p {\n font-size: ", ";\n padding: ", ";\n color: ", ";\n max-width: 142px;\n white-space: normal;\n }\n\n .cds--modal-container {\n clip-path: inset(0% 0% 0% 0% round ", ");\n background: ", ";\n .cds--data-table th {\n background: ", ";\n }\n .cds--data-table td {\n border-top: 1px solid\n ", ";\n border-bottom: 1px solid\n ", ";\n background: ", ";\n }\n .cds--data-table tr:hover td {\n background: ", ";\n }\n }\n\n .chart-holder p,\n .chart-holder div,\n .chart-holder text,\n .cds--cc--axes g.axis .axis-title,\n .cds--cc--title p.title,\n .cds--cc--axes g.axis g.tick text {\n font-family: ", " !important;\n color: ", ";\n }\n\n .cds--cc--axes {\n overflow: visible;\n }\n\n div.cds--cc--legend {\n div.legend-item {\n div.checkbox {\n background: ", ";\n border: none;\n width: ", ";\n height: ", ";\n svg {\n left: 2px;\n position: relative;\n }\n }\n p {\n font-size: ", ";\n margin: 0 ", " 0 0;\n }\n }\n }\n div.cds--cc--legend.has-deactivated-items {\n div.legend-item {\n div.checkbox {\n border: 1px solid\n ", ";\n }\n div.checkbox.active {\n border: 1px solid transparent;\n }\n }\n }\n .chart-holder {\n .cds--cc--axes g.axis g.tick text {\n fill: ", ";\n }\n .cds--cc--axes g.axis path.domain {\n stroke: ", ";\n }\n .cds--cc--grid g.x.grid g.tick line,\n .cds--cc--grid g.y.grid g.tick line {\n stroke: ", ";\n }\n .cds--cc--grid rect.chart-grid-backdrop.stroked {\n stroke: ", ";\n }\n .cds--cc--skeleton .shimmer-effect-lines {\n filter: ", ";\n }\n /* .chart-holder.cds--chart-holder.filled,\n .cds--cc--skeleton rect.chart-skeleton-backdrop,\n .cds--cc--grid rect.chart-grid-backdrop {\n } */\n\n .cds--cc--grid rect.chart-grid-backdrop {\n fill: transparent;\n }\n .cds--cc--scatter circle.dot,\n .cds--cc--scatter circle.dot.hovered {\n padding: 10px;\n }\n .cds--cc--scatter-stacked circle.dot.hovered,\n .cds--cc--scatter-stacked circle.dot.unfilled,\n .cds--cc--scatter circle.dot.unfilled {\n stroke-width: 6px;\n transition: 0.1s all linear;\n }\n .cds--cc--scatter circle.dot {\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--scatter circle.dot.hovered {\n stroke-width: 0.5em;\n transition: 0.1s all linear;\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--lollipop circle.dot,\n .cds--cc--lollipop circle.dot.filled,\n .cds--cc--lollipop circle.dot.hovered {\n stroke-width: 15px;\n }\n .cds--cc--scatter-stacked circle.dot,\n .cds--cc--scatter-stacked circle.dot.hovered,\n .cds--cc--scatter-stacked circle.dot.unfilled,\n .cds--cc--scatter circle.dot.unfilled,\n .cds--cc--lollipop circle.dot.filled,\n .cds--cc--lollipop circle.dot,\n .cds--cc--lollipop circle.dot.hovered {\n transition: 0.1s all linear;\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--lollipop .cds--cc--scatter circle.dot.hovered {\n transition: 0.1s all linear;\n stroke-width: 1.1em;\n }\n\n .cds--cc--tooltip {\n ", "\n }\n\n .cds--overflow-menu-options__btn:focus {\n outline-color: ", ";\n }\n\n .cds--btn {\n min-height: auto;\n display: flex;\n flex: 0 auto;\n align-items: center;\n text-align: center;\n padding: 20px;\n margin: 0;\n line-height: ", ";\n margin: 0;\n min-width: ", ";\n overflow: hidden;\n position: relative;\n right: ", ";\n text-align: center;\n height: 40px;\n font-family: ", ";\n font-size: ", ";\n border-radius: ", ";\n font-weight: 500;\n }\n\n .cds--btn--primary {\n background: ", ";\n color: ", ";\n }\n\n *:focus {\n outline: 2px solid\n ", " !important;\n outline-offset: 0;\n }\n .cds--overflow-menu-options__btn:focus,\n .cds--overflow-menu:focus,\n .cds--overflow-menu__trigger:focus,\n .toolbar-control:focus {\n outline: 2px solid\n ", " !important;\n }\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):focus\n div.checkbox,\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):hover\n div.checkbox {\n border: ", ";\n }\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):hover\n div.checkbox {\n box-shadow: 0 0 0 2px\n ", " !important;\n }\n\n .cds--btn--primary {\n &:focus {\n outline: 2px solid\n ", ";\n }\n outline-offset: 2px;\n border: none;\n box-shadow: none;\n }\n .cds--modal-header {\n background: ", ";\n margin-bottom: 0;\n border-bottom: 1px solid\n ", ";\n }\n .cds--modal-header__heading {\n font-weight: 600;\n }\n\n .cds--modal-close {\n position: absolute;\n top: 0;\n right: 0;\n &:focus {\n outline: 2px solid\n ", ";\n border-color: none;\n }\n outline-offset: 0;\n border: none;\n }\n }\n\n .cds--modal-footer.cds--modal-footer {\n display: flex;\n align-items: center;\n border-top: 1px solid\n ", ";\n background: ", " !important;\n }\n .layout-child.header {\n height: auto !important;\n p {\n text-overflow: inherit;\n overflow: auto;\n white-space: normal;\n }\n }\n\n &.has-magma-toolbar .cds--cc--title p.title {\n visibility: hidden;\n }\n\n svg:not(:root) {\n overflow: visible;\n }\n\n .cds--cc--chart-wrapper text {\n font-size: ", ";\n }\n\n g.center text,\n .pie-label {\n fill: ", ";\n }\n\n // Zoom responsive tweaks\n\n @media screen and (max-width: 760px) {\n .cds--modal-container {\n overflow-y: auto;\n }\n .cds--chart-holder .cds--modal .cds--modal-container .cds--modal-content {\n overflow: visible;\n }\n .cds--chart-holder\n .cds--modal\n .cds--modal-container\n .cds--modal-content\n table\n th {\n position: relative;\n }\n }\n"], ["\n .cds--cc--legend-fieldset {\n border: 0;\n margin: 0;\n min-inline-size: 0;\n padding: 0;\n }\n\n .cds--cc--legend-fieldset > legend {\n clip: rect(1px, 1px, 1px, 1px);\n height: 1px;\n overflow: hidden;\n position: absolute;\n top: auto;\n white-space: nowrap;\n width: 1px;\n }\n\n &:fullscreen,\n &:-webkit-full-screen {\n background: ", ";\n\n .cds--chart-holder {\n height: 100vh !important;\n }\n }\n\n .cds--data-table thead tr th {\n background: ", " !important;\n }\n .cds--data-table td,\n .cds--data-table tbody th {\n color: ", ";\n }\n .cds--data-table tbody tr,\n .cds--data-table tbody tr td,\n .cds--data-table tbody tr th {\n color: ", ";\n }\n .cds--data-table tr {\n block-size: 2.5rem;\n }\n\n .cds--cc--tooltip .content-box .datapoint-tooltip p {\n font-size: ", ";\n padding: ", ";\n color: ", ";\n max-width: 142px;\n white-space: normal;\n }\n\n .cds--modal-container {\n clip-path: inset(0% 0% 0% 0% round ", ");\n background: ", ";\n .cds--data-table th {\n background: ", ";\n }\n .cds--data-table td {\n border-top: 1px solid\n ", ";\n border-bottom: 1px solid\n ", ";\n background: ", ";\n }\n .cds--data-table tr:hover td {\n background: ", ";\n }\n }\n\n .chart-holder p,\n .chart-holder div,\n .chart-holder text,\n .cds--cc--axes g.axis .axis-title,\n .cds--cc--title p.title,\n .cds--cc--axes g.axis g.tick text {\n font-family: ", " !important;\n color: ", ";\n }\n\n .cds--cc--axes {\n overflow: visible;\n }\n\n div.cds--cc--legend {\n div.legend-item {\n div.checkbox {\n background: ", ";\n border: none;\n width: ", ";\n height: ", ";\n svg {\n left: 2px;\n position: relative;\n }\n }\n p {\n font-size: ", ";\n margin: 0 ", " 0 0;\n }\n }\n }\n div.cds--cc--legend.has-deactivated-items {\n div.legend-item {\n div.checkbox {\n border: 1px solid\n ", ";\n }\n div.checkbox.active {\n border: 1px solid transparent;\n }\n }\n }\n .chart-holder {\n .cds--cc--axes g.axis g.tick text {\n fill: ", ";\n }\n .cds--cc--axes g.axis path.domain {\n stroke: ", ";\n }\n .cds--cc--grid g.x.grid g.tick line,\n .cds--cc--grid g.y.grid g.tick line {\n stroke: ", ";\n }\n .cds--cc--grid rect.chart-grid-backdrop.stroked {\n stroke: ", ";\n }\n .cds--cc--skeleton .shimmer-effect-lines {\n filter: ", ";\n }\n /* .chart-holder.cds--chart-holder.filled,\n .cds--cc--skeleton rect.chart-skeleton-backdrop,\n .cds--cc--grid rect.chart-grid-backdrop {\n } */\n\n .cds--cc--grid rect.chart-grid-backdrop {\n fill: transparent;\n }\n .cds--cc--scatter circle.dot,\n .cds--cc--scatter circle.dot.hovered {\n padding: 10px;\n }\n .cds--cc--scatter-stacked circle.dot.hovered,\n .cds--cc--scatter-stacked circle.dot.unfilled,\n .cds--cc--scatter circle.dot.unfilled {\n stroke-width: 6px;\n transition: 0.1s all linear;\n }\n .cds--cc--scatter circle.dot {\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--scatter circle.dot.hovered {\n stroke-width: 0.5em;\n transition: 0.1s all linear;\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--lollipop circle.dot,\n .cds--cc--lollipop circle.dot.filled,\n .cds--cc--lollipop circle.dot.hovered {\n stroke-width: 15px;\n }\n .cds--cc--scatter-stacked circle.dot,\n .cds--cc--scatter-stacked circle.dot.hovered,\n .cds--cc--scatter-stacked circle.dot.unfilled,\n .cds--cc--scatter circle.dot.unfilled,\n .cds--cc--lollipop circle.dot.filled,\n .cds--cc--lollipop circle.dot,\n .cds--cc--lollipop circle.dot.hovered {\n transition: 0.1s all linear;\n filter: drop-shadow(\n 1px 0px 0px\n ", "\n )\n drop-shadow(\n -1px 0px 0px\n ", "\n )\n drop-shadow(\n 0px 1px 0px\n ", "\n )\n drop-shadow(\n 0px -1px 0px\n ", "\n );\n }\n .cds--cc--lollipop .cds--cc--scatter circle.dot.hovered {\n transition: 0.1s all linear;\n stroke-width: 1.1em;\n }\n\n .cds--cc--tooltip {\n ", "\n }\n\n .cds--overflow-menu-options__btn:focus {\n outline-color: ", ";\n }\n\n .cds--btn {\n min-height: auto;\n display: flex;\n flex: 0 auto;\n align-items: center;\n text-align: center;\n padding: 20px;\n margin: 0;\n line-height: ", ";\n margin: 0;\n min-width: ", ";\n overflow: hidden;\n position: relative;\n right: ", ";\n text-align: center;\n height: 40px;\n font-family: ", ";\n font-size: ", ";\n border-radius: ", ";\n font-weight: 500;\n }\n\n .cds--btn--primary {\n background: ", ";\n color: ", ";\n }\n\n *:focus {\n outline: 2px solid\n ", " !important;\n outline-offset: 0;\n }\n .cds--overflow-menu-options__btn:focus,\n .cds--overflow-menu:focus,\n .cds--overflow-menu__trigger:focus,\n .toolbar-control:focus {\n outline: 2px solid\n ", " !important;\n }\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):focus\n div.checkbox,\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):hover\n div.checkbox {\n border: ", ";\n }\n div.cds--cc--legend.clickable\n div.legend-item:not(.additional):hover\n div.checkbox {\n box-shadow: 0 0 0 2px\n ", " !important;\n }\n\n .cds--btn--primary {\n &:focus {\n outline: 2px solid\n ", ";\n }\n outline-offset: 2px;\n border: none;\n box-shadow: none;\n }\n .cds--modal-header {\n background: ", ";\n margin-bottom: 0;\n border-bottom: 1px solid\n ", ";\n }\n .cds--modal-header__heading {\n font-weight: 600;\n }\n\n .cds--modal-close {\n position: absolute;\n top: 0;\n right: 0;\n &:focus {\n outline: 2px solid\n ", ";\n border-color: none;\n }\n outline-offset: 0;\n border: none;\n }\n }\n\n .cds--modal-footer.cds--modal-footer {\n display: flex;\n align-items: center;\n border-top: 1px solid\n ", ";\n background: ", " !important;\n }\n .layout-child.header {\n height: auto !important;\n p {\n text-overflow: inherit;\n overflow: auto;\n white-space: normal;\n }\n }\n\n &.has-magma-toolbar .cds--cc--title p.title {\n visibility: hidden;\n }\n\n svg:not(:root) {\n overflow: visible;\n }\n\n .cds--cc--chart-wrapper text {\n font-size: ", ";\n }\n\n g.center text,\n .pie-label {\n fill: ", ";\n }\n\n // Zoom responsive tweaks\n\n @media screen and (max-width: 760px) {\n .cds--modal-container {\n overflow-y: auto;\n }\n .cds--chart-holder .cds--modal .cds--modal-container .cds--modal-content {\n overflow: visible;\n }\n .cds--chart-holder\n .cds--modal\n .cds--modal-container\n .cds--modal-content\n table\n th {\n position: relative;\n }\n }\n"])), function (props) {
29891
30050
  return props.isInverse
29892
30051
  ? props.theme.colors.primary700
29893
30052
  : props.theme.colors.neutral100;
@@ -30261,7 +30420,9 @@
30261
30420
  var internalRef = React__default__namespace.useRef(null);
30262
30421
  var _a = React__default__namespace.useState(false), isTableOpen = _a[0], setIsTableOpen = _a[1];
30263
30422
  var _b = React__default__namespace.useState(false), isFullscreen = _b[0], setIsFullscreen = _b[1];
30423
+ var _c = React__default__namespace.useState(''), legendAnnouncement = _c[0], setLegendAnnouncement = _c[1];
30264
30424
  var lastTableTriggerRef = React__default__namespace.useRef(null);
30425
+ var legendAnnouncedRef = React__default__namespace.useRef(false);
30265
30426
  var mergedRef = React__default__namespace.useCallback(function (node) {
30266
30427
  internalRef.current = node;
30267
30428
  if (typeof ref === 'function') {
@@ -30322,6 +30483,43 @@
30322
30483
  }
30323
30484
  }, []);
30324
30485
  var chartTitle = options.title || toolbarI18n.defaultTitle;
30486
+ var legendLabel = "".concat(ariaLabel || chartTitle, ". ").concat(toolbarI18n.legendInstructions);
30487
+ React__default__namespace.useEffect(function () {
30488
+ var container = internalRef.current;
30489
+ if (!container)
30490
+ return;
30491
+ var applyListSemantics = function (legend) {
30492
+ legend.removeAttribute('aria-label');
30493
+ legend.setAttribute('role', 'list');
30494
+ legend
30495
+ .querySelectorAll('.legend-item')
30496
+ .forEach(function (item) { return item.setAttribute('role', 'listitem'); });
30497
+ };
30498
+ var wrapLegend = function () {
30499
+ var legend = container.querySelector('.cds--cc--legend');
30500
+ if (!legend)
30501
+ return;
30502
+ applyListSemantics(legend);
30503
+ var parent = legend.parentElement;
30504
+ if ((parent === null || parent === void 0 ? void 0 : parent.tagName) === 'FIELDSET') {
30505
+ var existingCaption = parent.querySelector('legend');
30506
+ if (existingCaption && existingCaption.textContent !== legendLabel) {
30507
+ existingCaption.textContent = legendLabel;
30508
+ }
30509
+ return;
30510
+ }
30511
+ var fieldset = document.createElement('fieldset');
30512
+ var caption = document.createElement('legend');
30513
+ fieldset.className = 'cds--cc--legend-fieldset';
30514
+ caption.textContent = legendLabel;
30515
+ legend.before(fieldset);
30516
+ fieldset.append(caption, legend);
30517
+ };
30518
+ wrapLegend();
30519
+ var observer = new MutationObserver(wrapLegend);
30520
+ observer.observe(container, { childList: true, subtree: true });
30521
+ return function () { return observer.disconnect(); };
30522
+ }, [legendLabel]);
30325
30523
  var handleModalDownloadCsv = React__default__namespace.useCallback(function () {
30326
30524
  downloadCsv(dataSet, chartTitle);
30327
30525
  }, [dataSet, chartTitle]);
@@ -30371,9 +30569,68 @@
30371
30569
  type: 'none',
30372
30570
  } }) }), (chartToolbar ? { toolbar: { enabled: false } } : {}));
30373
30571
  var ChartType = allCharts[type];
30572
+ React__default__namespace.useEffect(function () {
30573
+ var timer = setTimeout(function () {
30574
+ if (internalRef.current) {
30575
+ internalRef.current
30576
+ .querySelectorAll('g[aria-label]')
30577
+ .forEach(function (g) {
30578
+ var role = g.getAttribute('role');
30579
+ if (!role) {
30580
+ g.setAttribute('role', 'img');
30581
+ }
30582
+ else if (role === 'graphics-object group') {
30583
+ g.setAttribute('role', 'graphics-object');
30584
+ }
30585
+ });
30586
+ }
30587
+ }, 0);
30588
+ return function () { return clearTimeout(timer); };
30589
+ }, [type, dataSet]);
30590
+ React__default__namespace.useEffect(function () {
30591
+ var wrapper = internalRef.current;
30592
+ if (!wrapper)
30593
+ return;
30594
+ var observer = new MutationObserver(function () {
30595
+ var allItems = wrapper.querySelectorAll('.legend-item:not(.additional)');
30596
+ if (allItems.length <= 1)
30597
+ return;
30598
+ var activeLabels = [];
30599
+ allItems.forEach(function (el) {
30600
+ var _a;
30601
+ var checkbox = el.querySelector('.checkbox');
30602
+ var label = el.querySelector('p');
30603
+ if ((checkbox === null || checkbox === void 0 ? void 0 : checkbox.getAttribute('aria-checked')) === 'true' && label) {
30604
+ activeLabels.push(((_a = label.textContent) === null || _a === void 0 ? void 0 : _a.trim()) || '');
30605
+ }
30606
+ });
30607
+ if (activeLabels.length === 1) {
30608
+ if (!legendAnnouncedRef.current) {
30609
+ legendAnnouncedRef.current = true;
30610
+ setLegendAnnouncement("Only ".concat(activeLabels[0], " is selected"));
30611
+ }
30612
+ }
30613
+ else if (activeLabels.length === allItems.length) {
30614
+ legendAnnouncedRef.current = false;
30615
+ setLegendAnnouncement('All items selected');
30616
+ }
30617
+ else {
30618
+ legendAnnouncedRef.current = false;
30619
+ setLegendAnnouncement('');
30620
+ }
30621
+ });
30622
+ observer.observe(wrapper, {
30623
+ subtree: true,
30624
+ attributes: true,
30625
+ attributeFilter: ['aria-checked'],
30626
+ });
30627
+ return function () { return observer.disconnect(); };
30628
+ }, [type, dataSet]);
30374
30629
  var groupsLength = Object.keys(buildColors()).length;
30375
30630
  var showTable = (chartToolbar === null || chartToolbar === void 0 ? void 0 : chartToolbar.showAsTable) !== false;
30376
30631
  return (React__default__namespace.createElement(FullscreenRoot, { ref: mergedRef, isInverse: isInverse, theme: theme },
30632
+ React__default__namespace.createElement(VisuallyHidden, null,
30633
+ React__default__namespace.createElement(Announce, null, legendAnnouncement)),
30377
30634
  React__default__namespace.createElement(CarbonChartWrapper, __assign({ "data-testid": testId, isInverse: isInverse, theme: theme, className: "carbon-chart-wrapper".concat(chartToolbar ? ' has-magma-toolbar' : ''), groupsLength: groupsLength < 6 ? groupsLength : 14, role: "region", "aria-label": ariaLabel || chartTitle, "aria-roledescription": "chart" }, rest),
30378
30635
  React__default__namespace.createElement(ChartContentWrapper, null,
30379
30636
  chartToolbar && (React__default__namespace.createElement(CarbonChartToolbar, { config: chartToolbar, dataSet: dataSet, isInverse: isInverse, isTableOpen: isTableOpen, isFullscreen: isFullscreen, onOpenTable: openTableModal, onToggleFullscreen: toggleFullscreen, theme: theme, title: chartTitle, wrapperRef: internalRef })),