@ultraviolet/ui 1.87.3 → 1.88.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/components/Alert/index.cjs +6 -6
  2. package/dist/components/Alert/index.js +1 -1
  3. package/dist/components/AvatarV2/index.cjs +18 -11
  4. package/dist/components/AvatarV2/index.d.ts +1 -1
  5. package/dist/components/AvatarV2/index.js +19 -12
  6. package/dist/components/AvatarV2/types.d.ts +10 -2
  7. package/dist/components/Badge/index.cjs +4 -5
  8. package/dist/components/Badge/index.js +0 -1
  9. package/dist/components/Bullet/index.cjs +7 -4
  10. package/dist/components/Bullet/index.d.ts +16 -13
  11. package/dist/components/Bullet/index.js +8 -5
  12. package/dist/components/Card/index.cjs +8 -8
  13. package/dist/components/Carousel/index.cjs +5 -5
  14. package/dist/components/Carousel/index.js +5 -5
  15. package/dist/components/Checkbox/index.cjs +11 -11
  16. package/dist/components/CheckboxGroup/index.cjs +17 -17
  17. package/dist/components/CheckboxGroup/index.d.ts +1 -1
  18. package/dist/components/CheckboxGroup/index.js +8 -8
  19. package/dist/components/Chip/index.cjs +4 -4
  20. package/dist/components/DateInput/components/CalendarContent.cjs +8 -8
  21. package/dist/components/DateInput/components/CalendarDaily.cjs +4 -4
  22. package/dist/components/DateInput/components/CalendarDaily.js +1 -1
  23. package/dist/components/DateInput/components/CalendarMonthly.cjs +4 -4
  24. package/dist/components/DateInput/index.cjs +9 -9
  25. package/dist/components/DateInput/index.js +1 -1
  26. package/dist/components/Dialog/index.cjs +6 -6
  27. package/dist/components/Drawer/index.cjs +9 -9
  28. package/dist/components/EmptyState/index.cjs +11 -11
  29. package/dist/components/GlobalAlert/index.cjs +8 -8
  30. package/dist/components/LineChart/CustomLegend.cjs +5 -5
  31. package/dist/components/LineChart/index.js +1 -1
  32. package/dist/components/Link/index.js +1 -1
  33. package/dist/components/List/HeaderCell.js +1 -1
  34. package/dist/components/List/ListContext.cjs +9 -9
  35. package/dist/components/List/ListContext.d.ts +2 -2
  36. package/dist/components/List/ListContext.js +10 -10
  37. package/dist/components/List/Row.cjs +6 -6
  38. package/dist/components/List/SelectBar.cjs +5 -5
  39. package/dist/components/List/SelectBar.d.ts +1 -1
  40. package/dist/components/List/SelectBar.js +5 -5
  41. package/dist/components/List/index.d.ts +9 -2
  42. package/dist/components/List/index.js +1 -1
  43. package/dist/components/Menu/index.js +1 -1
  44. package/dist/components/MenuV2/MenuContent.cjs +4 -4
  45. package/dist/components/MenuV2/MenuProvider.js +1 -1
  46. package/dist/components/MenuV2/components/Item.cjs +0 -2
  47. package/dist/components/MenuV2/components/Item.js +0 -2
  48. package/dist/components/Notification/index.cjs +6 -10
  49. package/dist/components/Notification/index.js +8 -12
  50. package/dist/components/NumberInput/index.cjs +11 -11
  51. package/dist/components/NumberInputV2/index.cjs +17 -17
  52. package/dist/components/NumberInputV2/index.js +5 -5
  53. package/dist/components/Pagination/PerPage.cjs +7 -7
  54. package/dist/components/PieChart/Legends.js +1 -1
  55. package/dist/components/Popup/index.cjs +5 -5
  56. package/dist/components/Popup/index.js +6 -6
  57. package/dist/components/ProgressBar/index.cjs +6 -6
  58. package/dist/components/Radio/index.cjs +7 -7
  59. package/dist/components/RadioGroup/index.cjs +6 -6
  60. package/dist/components/RadioGroup/index.d.ts +1 -1
  61. package/dist/components/RadioGroup/index.js +7 -7
  62. package/dist/components/SelectInput/index.cjs +20 -20
  63. package/dist/components/SelectInput/index.js +14 -14
  64. package/dist/components/SelectInputV2/Dropdown.cjs +24 -24
  65. package/dist/components/SelectInputV2/DropdownOption.cjs +11 -11
  66. package/dist/components/SelectInputV2/SelectBar.cjs +14 -14
  67. package/dist/components/SelectInputV2/SelectBar.js +1 -1
  68. package/dist/components/SelectInputV2/SelectInputProvider.js +1 -1
  69. package/dist/components/SelectInputV2/index.cjs +6 -6
  70. package/dist/components/SelectableCard/index.cjs +8 -8
  71. package/dist/components/SelectableCardGroup/index.js +1 -1
  72. package/dist/components/Slider/components/DoubleSlider.cjs +9 -9
  73. package/dist/components/Slider/components/DoubleSlider.js +1 -1
  74. package/dist/components/Slider/components/SingleSlider.cjs +8 -8
  75. package/dist/components/Slider/components/SingleSlider.js +1 -1
  76. package/dist/components/Snippet/index.cjs +9 -9
  77. package/dist/components/Stepper/Step.cjs +6 -6
  78. package/dist/components/Stepper/StepperProvider.js +1 -1
  79. package/dist/components/Stepper/index.js +1 -1
  80. package/dist/components/SwitchButton/index.cjs +4 -4
  81. package/dist/components/Table/HeaderCell.cjs +4 -4
  82. package/dist/components/Table/HeaderCell.js +1 -1
  83. package/dist/components/Table/Row.cjs +6 -6
  84. package/dist/components/Table/SelectBar.cjs +5 -5
  85. package/dist/components/Table/SelectBar.d.ts +1 -1
  86. package/dist/components/Table/SelectBar.js +5 -5
  87. package/dist/components/Table/TableContext.js +1 -1
  88. package/dist/components/Table/index.d.ts +9 -2
  89. package/dist/components/Table/index.js +1 -1
  90. package/dist/components/Tabs/Tab.cjs +4 -4
  91. package/dist/components/Tabs/TabMenu.cjs +6 -6
  92. package/dist/components/Tabs/TabMenu.js +6 -6
  93. package/dist/components/Tag/index.cjs +13 -12
  94. package/dist/components/Tag/index.d.ts +1 -1
  95. package/dist/components/Tag/index.js +5 -4
  96. package/dist/components/TextInput/index.cjs +30 -30
  97. package/dist/components/TextInput/index.js +17 -17
  98. package/dist/components/TimeInputV2/index.cjs +7 -7
  99. package/dist/components/TimeInputV2/index.js +2 -2
  100. package/dist/components/Toaster/index.cjs +10 -14
  101. package/dist/components/Toaster/index.js +7 -11
  102. package/dist/components/ToggleGroup/index.cjs +6 -6
  103. package/dist/components/ToggleGroup/index.d.ts +1 -1
  104. package/dist/components/ToggleGroup/index.js +7 -7
  105. package/dist/components/UnitInput/index.cjs +48 -25
  106. package/dist/components/UnitInput/index.js +42 -19
  107. package/dist/utils/orderBy.d.ts +1 -1
  108. package/package.json +7 -7
  109. package/dist/components/Notification/react-toastify.css.cjs +0 -3
  110. package/dist/components/Notification/react-toastify.css.js +0 -4
  111. package/dist/components/Toaster/react-toastify.css.cjs +0 -3
  112. package/dist/components/Toaster/react-toastify.css.js +0 -4
@@ -5,14 +5,14 @@ import { forwardRef, useRef, useImperativeHandle, useMemo, useState, useId, useC
5
5
  import { createPortal } from "react-dom";
6
6
  import { isClientSide } from "../../helpers/isClientSide.js";
7
7
  import { animation, exitAnimation } from "./animations.js";
8
- import { DEFAULT_ARROW_WIDTH, DEFAULT_POSITIONS, computePositions } from "./helpers.js";
8
+ import { DEFAULT_POSITIONS, computePositions, DEFAULT_ARROW_WIDTH } from "./helpers.js";
9
9
  function _EMOTION_STRINGIFIED_CSS_ERROR__() {
10
10
  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).";
11
11
  }
12
12
  const DEFAULT_ANIMATION_DURATION = 230;
13
13
  const DEFAULT_DEBOUNCE_DURATION = 200;
14
- function noop() {
15
- }
14
+ const noop = () => {
15
+ };
16
16
  const stopClickPropagation = (event) => {
17
17
  event.nativeEvent.stopImmediatePropagation();
18
18
  };
@@ -43,7 +43,7 @@ const StyledPopup = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "pro
43
43
  positions,
44
44
  reverseAnimation,
45
45
  animationDuration
46
- }) => /* @__PURE__ */ css(animationDuration, "ms ", !reverseAnimation ? animation(positions) : exitAnimation(positions), " forwards;" + (process.env.NODE_ENV === "production" ? "" : ";label:StyledPopup;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxRjRFIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7XG4gIEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTW91c2VFdmVudEhhbmRsZXIsXG4gIFJlYWN0Tm9kZSxcbiAgUmVmLFxuICBSZWZPYmplY3QsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgc3RhcnRUcmFuc2l0aW9uLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJZCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nXG5pbXBvcnQgeyBpc0NsaWVudFNpZGUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2lzQ2xpZW50U2lkZSdcbmltcG9ydCB0eXBlIHsgUG9zaXRpb25zVHlwZSB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB7IGFuaW1hdGlvbiwgZXhpdEFuaW1hdGlvbiB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB0eXBlIHsgUG9wdXBBbGlnbiwgUG9wdXBQbGFjZW1lbnQgfSBmcm9tICcuL2hlbHBlcnMnXG5pbXBvcnQge1xuICBERUZBVUxUX0FSUk9XX1dJRFRILFxuICBERUZBVUxUX1BPU0lUSU9OUyxcbiAgY29tcHV0ZVBvc2l0aW9ucyxcbn0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5jb25zdCBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTiA9IDIzMCAvLyBpbiBtc1xuY29uc3QgREVGQVVMVF9ERUJPVU5DRV9EVVJBVElPTiA9IDIwMCAvLyBpbiBtc1xuXG5mdW5jdGlvbiBub29wKCkge31cblxudHlwZSBTdHlsZWRQb3B1cFByb3BzID0ge1xuICBtYXhXaWR0aDogbnVtYmVyIHwgc3RyaW5nXG4gIHBvc2l0aW9uczogUG9zaXRpb25zVHlwZVxuICByZXZlcnNlQW5pbWF0aW9uOiBib29sZWFuXG4gIG1heEhlaWdodD86IG51bWJlciB8IHN0cmluZ1xuICBhbmltYXRpb25EdXJhdGlvbj86IG51bWJlclxuICBpc0RpYWxvZzogYm9vbGVhblxufVxuXG4vKipcbiAqIFRoaXMgZXZlbnQgaGFuZGxlIGFsbG93IHVzIHRvIG5vdCBidWJibGUgdGhlIGV2ZW50IHRvIGRvY3VtZW50LmJvZHkgbGlrZSB0aGlzIHJlYWN0LXNlbGVjdCB3b3JrcyBmaW5lXG4gKi9cbmNvbnN0IHN0b3BDbGlja1Byb3BhZ2F0aW9uOiBNb3VzZUV2ZW50SGFuZGxlciA9IGV2ZW50ID0+IHtcbiAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKClcbn1cblxuY29uc3QgU3R5bGVkUG9wdXAgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ21heFdpZHRoJyxcbiAgICAgICdwb3NpdGlvbnMnLFxuICAgICAgJ3JldmVyc2VBbmltYXRpb24nLFxuICAgICAgJ21heEhlaWdodCcsXG4gICAgICAnYW5pbWF0aW9uRHVyYXRpb24nLFxuICAgICAgJ2lzRGlhbG9nJyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkUG9wdXBQcm9wcz5gXG4gIGJhY2tncm91bmQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZFN0cm9uZ2VyfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwudGV4dFN0cm9uZ2VyfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zcGFjZVsnMC41J119ICR7dGhlbWUuc3BhY2VbJzEnXX1gfTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1heC13aWR0aDogJHsoeyBtYXhXaWR0aCB9KSA9PlxuICAgIHR5cGVvZiBtYXhXaWR0aCA9PT0gJ251bWJlcicgPyBgJHttYXhXaWR0aH1weGAgOiBtYXhXaWR0aH07XG4gIG1heC1oZWlnaHQ6ICR7KHsgbWF4SGVpZ2h0IH0pID0+XG4gICAgdHlwZW9mIG1heEhlaWdodCA9PT0gJ251bWJlcicgPyBgJHttYXhIZWlnaHR9cHhgIDogbWF4SGVpZ2h0fTtcbiAgb3ZlcmZsb3c6ICR7KHsgbWF4SGVpZ2h0IH0pID0+IChtYXhIZWlnaHQgPyAnYXV0bycgOiB1bmRlZmluZWQpfTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGluc2V0OiAwIGF1dG8gYXV0byAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zZm9ybTogJHsoeyBwb3NpdGlvbnMgfSkgPT4gcG9zaXRpb25zLnBvcHVwUG9zaXRpb259O1xuXG4gICZbZGF0YS1hbmltYXRlZD1cInRydWVcIl0ge1xuICAgIGFuaW1hdGlvbjogJHsoeyBwb3NpdGlvbnMsIHJldmVyc2VBbmltYXRpb24sIGFuaW1hdGlvbkR1cmF0aW9uIH0pID0+IGNzc2BcbiAgICAgICR7YW5pbWF0aW9uRHVyYXRpb259bXMgJHtcbiAgICAgICAgIXJldmVyc2VBbmltYXRpb24gPyBhbmltYXRpb24ocG9zaXRpb25zKSA6IGV4aXRBbmltYXRpb24ocG9zaXRpb25zKVxuICAgICAgfSBmb3J3YXJkc1xuICAgIGB9O1xuICB9XG5cbiAgJltkYXRhLWhhcy1hcnJvdz1cInRydWVcIl0ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUb3B9cHg7XG4gICAgICBsZWZ0OiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dMZWZ0fXB4O1xuICAgICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUcmFuc2Zvcm19XG4gICAgICAgIHJvdGF0ZSgkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMucm90YXRlfWRlZyk7XG4gICAgICBtYXJnaW4tbGVmdDogLSR7REVGQVVMVF9BUlJPV19XSURUSH1weDtcbiAgICAgIGJvcmRlci13aWR0aDogJHtERUZBVUxUX0FSUk9XX1dJRFRIfXB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nZXJ9XG4gICAgICAgIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXZpc2libGUtaW4tZG9tPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbmBcblxuY29uc3QgU3R5bGVkQ2hpbGRyZW5Db250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBpbmhlcml0O1xuXG4gICZbZGF0YS1jb250YWluZXItZnVsbC13aWR0aD1cInRydWVcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5gXG5cbnR5cGUgUG9wdXBQcm9wcyA9IHtcbiAgLyoqXG4gICAqIElkIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGlmIG5vdCBzZXQuIEl0IGlzIHVzZWQgZm9yIGFzc29jaWF0aW5nIHBvcHVwIHdyYXBwZXIgd2l0aCBwb3B1cCBwb3J0YWwuXG4gICAqL1xuICBpZD86IHN0cmluZ1xuICBjaGlsZHJlbjpcbiAgICB8IFJlYWN0Tm9kZVxuICAgIHwgKChyZW5kZXJQcm9wczoge1xuICAgICAgICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgICAgICAgb25CbHVyOiAoKSA9PiB2b2lkXG4gICAgICAgIG9uRm9jdXM6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyRW50ZXI6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyTGVhdmU6ICgpID0+IHZvaWRcbiAgICAgICAgcmVmOiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPlxuICAgICAgfSkgPT4gUmVhY3ROb2RlKVxuICBtYXhXaWR0aD86IG51bWJlciB8IHN0cmluZ1xuICAvKipcbiAgICogYGF1dG9gIHBsYWNlbWVudCB3aWxsIGNoYW5nZSB0aGUgcG9zaXRpb24gb2YgdGhlIHBvcHVwIGlmIGl0IGRvZXNuJ3QgZml0IGluIHRoZSB2aWV3cG9ydC5cbiAgICovXG4gIHBsYWNlbWVudD86IFBvcHVwUGxhY2VtZW50XG4gIC8qKlxuICAgKiBBbGlnbiB0aGUgcG9wdXAgdG8gdGhlIHN0YXJ0IG9yIGNlbnRlciBvZiB0aGUgY2hpbGRyZW4uXG4gICAqL1xuICBhbGlnbj86IFBvcHVwQWxpZ25cbiAgLyoqXG4gICAqIENvbnRlbnQgb2YgdGhlIHBvcHVwLCBwcmVmZXJhYmx5IHRleHQgaW5zaWRlLlxuICAgKi9cbiAgdGV4dD86IFJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIEl0IHdpbGwgYWRkIGB3aWR0aDogMTAwJWAgdG8gdGhlIHBvcHVwIGNvbnRhaW5lci5cbiAgICovXG4gIGNvbnRhaW5lckZ1bGxXaWR0aD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIEl0IHdpbGwgZm9yY2UgZGlzcGxheSBwb3B1cC4gVGhpcyBjYW4gYmUgdXNlZnVsIGlmIHlvdSBuZWVkIHRvIGFsd2F5cyBkaXNwbGF5IHRoZSBwb3B1cCB3aXRob3V0IGhvdmVyIG5lZWRlZC5cbiAgICovXG4gIHZpc2libGU/OiBib29sZWFuXG4gIGlubmVyUmVmPzogUmVmPEhUTUxEaXZFbGVtZW50IHwgbnVsbD5cbiAgcm9sZT86IHN0cmluZ1xuICAnZGF0YS10ZXN0aWQnPzogc3RyaW5nXG4gIGhhc0Fycm93PzogYm9vbGVhblxuICBvbkNsb3NlPzogKCkgPT4gdm9pZFxuICB0YWJJbmRleD86IG51bWJlclxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlclxuICAnYXJpYS1oYXNwb3B1cCc/OiBIVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5bJ2FyaWEtaGFzcG9wdXAnXVxuICBoaWRlT25DbGlja091dHNpZGU/OiBib29sZWFuXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGRlYm91bmNlVGltZSB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgbm90IGRlYm91bmNlIHRoZSBob3ZlciBldmVudCBhbmQgd2lsbCBiZSBkaXNwbGF5ZWQgaW5zdGFudGx5LlxuICAgKiBJZiBzZXQgdG8gMCBpdCB3aWxsIGRpc2FibGUgZGVib3VuY2UuXG4gICAqL1xuICBkZWJvdW5jZURlbGF5PzogbnVtYmVyXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGEgbWF4IGhlaWdodCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgYW5pbWF0aW9uIGlzIGRpc2FibGVkLCBvciBpdCB3aWxsIG5vdCB3b3JrIHByb3Blcmx5IG9uIHNvbWUgYnJvd3NlcnMuXG4gICAqL1xuICBtYXhIZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgLyoqXG4gICAqIFdpbGwgcmVtb3ZlIHRoZSBhbmltYXRpb24gb24gdGhlIHBvcHVwIGlmIHNldCB0byBmYWxzZS5cbiAgICovXG4gIGRpc2FibGVBbmltYXRpb24/OiBib29sZWFuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgcG9ydGFsIHRhcmdldCBpcyBjaGlsZHJlbiBjb250YWluZXIgb3IgZG9jdW1lbnQuYm9keSBpZiBjaGlsZHJlbiBpcyBhIGZ1bmN0aW9uLiBZb3UgY2FuIG92ZXJyaWRlIHRoaXNcbiAgICogYmVoYXZpb3IgYnkgc2V0dGluZyBhIHBvcnRhbFRhcmdldCBwcm9wLlxuICAgKi9cbiAgcG9ydGFsVGFyZ2V0PzogSFRNTEVsZW1lbnRcbiAgLyoqXG4gICAqIElmIHlvdSBzZXQgdGhpcyB0byB0cnVlLCB0aGUgcG9wdXAgd2lsbCBiZSByZW5kZXJlZCBpbiB0aGUgRE9NIG9ubHkgd2hlbiBpdCBpcyB2aXNpYmxlLlxuICAgKiBXaGVuIHNldCB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgYWx3YXlzIGJlIHJlbmRlcmVkIGluIHRoZSBET00uIEJ5IGRlZmF1bHQgdGhpcyB2YWx1ZSBpcyBzZXQgdG8gYHRydWVgLCBpZiBmb3Igc29tZVxuICAgKiByZWFzb24geW91IG5lZWQgdG8gZGlzYWJsZSBpdCwgeW91IGNhbiBzZXQgaXQgdG8gYGZhbHNlYC5cbiAgICovXG4gIGR5bmFtaWNEb21SZW5kZXJpbmc/OiBib29sZWFuXG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbCBUaGlzIGNvbXBvbmVudCBpcyBleHBlcmltZW50YWwgYW5kIG1heSBiZSBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgaW4gdGhlIGZ1dHVyZS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBvcHVwID0gZm9yd2FyZFJlZihcbiAgKFxuICAgIHtcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgdGV4dCA9ICcnLFxuICAgICAgcGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgYWxpZ24gPSAnY2VudGVyJyxcbiAgICAgIGlkLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgbWF4V2lkdGggPSAnMTQuNXJlbScsXG4gICAgICBtYXhIZWlnaHQsXG4gICAgICB2aXNpYmxlLFxuICAgICAgaW5uZXJSZWYsXG4gICAgICByb2xlID0gJ3BvcHVwJyxcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBoYXNBcnJvdyA9IHRydWUsXG4gICAgICBvbkNsb3NlLFxuICAgICAgdGFiSW5kZXggPSAwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgJ2FyaWEtaGFzcG9wdXAnOiBhcmlhSGFzUG9wdXAsXG4gICAgICBoaWRlT25DbGlja091dHNpZGUgPSBmYWxzZSxcbiAgICAgIGRlYm91bmNlRGVsYXkgPSBERUZBVUxUX0RFQk9VTkNFX0RVUkFUSU9OLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbiA9IGZhbHNlLFxuICAgICAgcG9ydGFsVGFyZ2V0LFxuICAgICAgZHluYW1pY0RvbVJlbmRlcmluZyA9IHRydWUsXG4gICAgfTogUG9wdXBQcm9wcyxcbiAgICByZWY6IFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICkgPT4ge1xuICAgIGNvbnN0IGNoaWxkcmVuUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUoaW5uZXJSZWYsICgpID0+IGNoaWxkcmVuUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCBpbm5lclBvcHVwUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCB0aW1lciA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4odW5kZWZpbmVkKVxuICAgIGNvbnN0IHBvcHVwUG9ydGFsVGFyZ2V0ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAocG9ydGFsVGFyZ2V0KSByZXR1cm4gcG9ydGFsVGFyZ2V0XG5cbiAgICAgIGlmIChyb2xlID09PSAnZGlhbG9nJykge1xuICAgICAgICBpZiAoY2hpbGRyZW5SZWYuY3VycmVudCkgcmV0dXJuIGNoaWxkcmVuUmVmLmN1cnJlbnRcbiAgICAgICAgaWYgKGlzQ2xpZW50U2lkZSkgcmV0dXJuIGRvY3VtZW50LmJvZHlcblxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuXG4gICAgICAvLyBXZSBjaGVjayBpZiB3aW5kb3cgZXhpc3RzIGZvciBTU1JcbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnQuYm9keVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVsbFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIH0sIFtwb3J0YWxUYXJnZXQsIHJvbGUsIGNoaWxkcmVuUmVmLmN1cnJlbnRdKVxuXG4gICAgLy8gVGhlcmUgYXJlIHNvbWUgaXNzdWUgd2hlbiBtaXhpbmcgYW5pbWF0aW9uIGFuZCBtYXhIZWlnaHQgb24gc29tZSBicm93c2Vycywgc28gd2UgZGlzYWJsZSBhbmltYXRpb24gaWYgbWF4SGVpZ2h0IGlzIHNldC5cbiAgICBjb25zdCBhbmltYXRpb25EdXJhdGlvbiA9XG4gICAgICBkaXNhYmxlQW5pbWF0aW9uIHx8IG1heEhlaWdodCA/IDAgOiBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTlxuXG4gICAgLy8gRGVib3VuY2UgdGltZXIgd2lsbCBiZSB1c2VkIHRvIHByZXZlbnQgdGhlIHBvcHVwIGZyb20gZmxpY2tlcmluZyB3aGVuIHRoZSB1c2VyIG1vdmVzIHRoZSBtb3VzZSBvdXQgYW5kIGluIHRoZSBjaGlsZHJlbiBlbGVtZW50LlxuICAgIGNvbnN0IGRlYm91bmNlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KHVuZGVmaW5lZClcbiAgICBjb25zdCBbdmlzaWJsZUluRG9tLCBzZXRWaXNpYmxlSW5Eb21dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3JldmVyc2VBbmltYXRpb24sIHNldFJldmVyc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bvc2l0aW9ucywgc2V0UG9zaXRpb25zXSA9IHVzZVN0YXRlPFBvc2l0aW9uc1R5cGU+KHtcbiAgICAgIC4uLkRFRkFVTFRfUE9TSVRJT05TLFxuICAgIH0pXG4gICAgY29uc3QgdW5pcXVlSWQgPSB1c2VJZCgpXG4gICAgY29uc3QgZ2VuZXJhdGVkSWQgPSBpZCA/PyB1bmlxdWVJZFxuICAgIGNvbnN0IGlzQ29udHJvbGxlZCA9IHZpc2libGUgIT09IHVuZGVmaW5lZFxuXG4gICAgY29uc3QgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgIGlmIChjaGlsZHJlblJlZi5jdXJyZW50ICYmIGlubmVyUG9wdXBSZWYuY3VycmVudCkge1xuICAgICAgICBzZXRQb3NpdGlvbnMoXG4gICAgICAgICAgY29tcHV0ZVBvc2l0aW9ucyh7XG4gICAgICAgICAgICBjaGlsZHJlblJlZixcbiAgICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICAgIHBvcHVwUmVmOiBpbm5lclBvcHVwUmVmLFxuICAgICAgICAgICAgcG9wdXBQb3J0YWxUYXJnZXQ6IHBvcHVwUG9ydGFsVGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgaGFzQXJyb3csXG4gICAgICAgICAgICBhbGlnbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0sIFtoYXNBcnJvdywgcGxhY2VtZW50LCBwb3B1cFBvcnRhbFRhcmdldCwgYWxpZ25dKVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB3ZSBuZWVkIHRvIHJlY29tcHV0ZSBwb3NpdGlvbnMgb2YgcG9wdXAgZHVlIHRvIHdpbmRvdyBzY3JvbGwgb3IgcmVzaXplLlxuICAgICAqL1xuICAgIGNvbnN0IG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAvLyBXZSByZW1vdmUgYW5pbWF0aW9uIG9uIHNjcm9sbCBvciB0aGUgYW5pbWF0aW9uIHdpbGwgcmVzdGFydCBvbiBldmVyeSBzY3JvbGxcbiAgICAgIGlmIChpbm5lclBvcHVwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9ICdub25lJ1xuICAgICAgfVxuXG4gICAgICBnZW5lcmF0ZVBvcHVwUG9zaXRpb25zKClcbiAgICB9LCBbZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucywgaW5uZXJQb3B1cFJlZl0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gcmVtb3ZlIHBvcHVwIHBvcnRhbCBmcm9tIERPTSBhbmQgcmVtb3ZlIGV2ZW50IGxpc3RlbmVyIHRvIGl0LlxuICAgICAqL1xuICAgIGNvbnN0IHVubW91bnRQb3B1cEZyb21Eb20gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBzZXRWaXNpYmxlSW5Eb20oZmFsc2UpXG4gICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuXG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICB9LCBbb25XaW5kb3dDaGFuZ2VEZXRlY3RlZF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gaGlkZSBwb3B1cC4gQSB0aW1lb3V0IGlzIHNldCB0byBhbGxvdyBhbmltYXRpb24gZW5kLCB0aGVuIHJlbW92ZVxuICAgICAqIHBvcHVwIGZyb20gZG9tLlxuICAgICAqL1xuICAgIGNvbnN0IGNsb3NlUG9wdXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgc2V0UmV2ZXJzZUFuaW1hdGlvbih0cnVlKVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHVubW91bnRQb3B1cEZyb21Eb20oKVxuICAgICAgICAgICAgb25DbG9zZT8uKClcbiAgICAgICAgICB9LCBhbmltYXRpb25EdXJhdGlvbilcbiAgICAgICAgfSxcbiAgICAgICAgZGVib3VuY2VEZWxheSAmJiAhZGlzYWJsZUFuaW1hdGlvbiA/IGRlYm91bmNlRGVsYXkgOiAwLFxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFuaW1hdGlvbkR1cmF0aW9uLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbixcbiAgICAgIGRlYm91bmNlRGVsYXksXG4gICAgICBvbkNsb3NlLFxuICAgICAgdW5tb3VudFBvcHVwRnJvbURvbSxcbiAgICBdKVxuXG4gICAgLyoqXG4gICAgICogV2hlbiBtb3VzZSBob3ZlciBvciBzdG9wIGhvdmVyaW5nIGNoaWxkcmVuIHRoaXMgZnVuY3Rpb24gZGlzcGxheSBvciBoaWRlIHBvcHVwLiBBIHRpbWVvdXQgaXMgc2V0IHRvIGFsbG93IGFuaW1hdGlvblxuICAgICAqIGVuZCwgdGhlbiByZW1vdmUgcG9wdXAgZnJvbSBkb20uXG4gICAgICovXG4gICAgY29uc3Qgb25Qb2ludGVyRXZlbnQgPSB1c2VDYWxsYmFjayhcbiAgICAgIChpc1Zpc2libGU6IGJvb2xlYW4pID0+ICgpID0+IHtcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgYSBkZWJvdW5jZURlbGF5IGFuZCB0aGUgcG9wdXAgaXMgbm90IHZpc2libGUsIHdlIGNsZWFyIHRoZSBkZWJvdW5jZSB0aW1lclxuICAgICAgICBpZiAoIXZpc2libGUgJiYgZGVib3VuY2VEZWxheSA+IDAgJiYgZGVib3VuY2VUaW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXIuY3VycmVudClcbiAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gdW5tb3VudCB0aGUgcG9wdXBcbiAgICAgICAgLy8gVGhlcmUgaXMgZGVib3VuY2UgaW4gb3JkZXIgdG8gYXZvaWQgcG9wdXAgdG8gZmxpY2tlciB3aGVuIHdlIG1vdmUgdGhlIG1vdXNlIGZyb20gY2hpbGRyZW4gdG8gcG9wdXBcbiAgICAgICAgLy8gVGltZXIgaXMgdXNlZCB0byBmb2xsb3cgdGhlIGFuaW1hdGlvbiBkdXJhdGlvblxuICAgICAgICBpZiAoIWlzVmlzaWJsZSAmJiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgJiYgIWRlYm91bmNlVGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICB9IGVsc2UgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gbW91bnQgdGhlIHBvcHVwXG4gICAgICAgICAgLy8gSWYgdGhlIHRpbWVyIGV4aXN0cyBpdCBtZWFucyB0aGUgcG9wdXAgd2FzIGFib3V0IHRvIHVtb3VudCwgYnV0IHdlIGhvdmVyZWQgdGhlIGNoaWxkcmVuIGFnYWluLFxuICAgICAgICAgIC8vIHNvIHdlIGNsZWFyIHRoZSB0aW1lciBhbmQgdGhlIHBvcHVwIHdpbGwgbm90IGJlIHVubW91bnRlZFxuICAgICAgICAgIGlmICh0aW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICB0aW1lci5jdXJyZW50ID0gdW5kZWZpbmVkXG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIEFuZCBoZXJlIGlzIHdoZW4gd2UgY3VycmVudGx5IGFyZSBpbiBhIGRlYm91bmNlIHRpbWVyLCBpdCBtZWFucyBwb3B1cCB3YXMgaG92ZXJlZCBkdXJpbmdcbiAgICAgICAgICAvLyB0aGF0IHBlcmlvZCwgYW5kIHNvIHdlIGNhbiBjbGVhciBkZWJvdW5jZSB0aW1lclxuICAgICAgICAgIGlmIChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGRlYm91bmNlRGVsYXkgPiAwKSB7XG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgc2V0VmlzaWJsZUluRG9tKHRydWUpXG4gICAgICAgICAgICB9LCBkZWJvdW5jZURlbGF5KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGFydFRyYW5zaXRpb24oKCkgPT4ge1xuICAgICAgICAgICAgICBzZXRWaXNpYmxlSW5Eb20odHJ1ZSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW2Nsb3NlUG9wdXAsIGRlYm91bmNlRGVsYXksIHZpc2libGVdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIE9uY2UgcG9wdXAgaXMgdmlzaWJsZSBpbiB0aGUgZG9tIHdlIGNhbiBjb21wdXRlIHBvc2l0aW9ucywgdGhlbiBzZXQgaXQgdmlzaWJsZSBvbiBzY3JlZW4gYW5kIGFkZCBldmVudCB0b1xuICAgICAqIHJlY29tcHV0ZSBwb3NpdGlvbnMgb24gc2Nyb2xsIG9yIHNjcmVlbiByZXNpemUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICh2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucygpXG5cbiAgICAgICAgaWYgKHBvcHVwUG9ydGFsVGFyZ2V0ID09PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICAgICAgLy8gV2Ugd2FudCB0byBkZXRlY3Qgc2Nyb2xsIGFuZCByZXNpemUgaW4gb3JkZXIgdG8gcmVjb21wdXRlIHBvc2l0aW9ucyBvZiBwb3B1cFxuICAgICAgICAgIC8vIEFkZGluZyB0cnVlIGFzIHRoaXJkIHBhcmFtZXRlciB0byBldmVudCBsaXN0ZW5lciB3aWxsIGRldGVjdCBuZXN0ZWQgc2Nyb2xscy5cbiAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgICAgfVxuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQsIHRydWUpXG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCBvbldpbmRvd0NoYW5nZURldGVjdGVkLCB0cnVlKVxuICAgICAgICBpZiAodGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lci5jdXJyZW50KVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIFtcbiAgICAgIGdlbmVyYXRlUG9wdXBQb3NpdGlvbnMsXG4gICAgICBvbldpbmRvd0NoYW5nZURldGVjdGVkLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgbWF4V2lkdGgsXG4gICAgICBwb3B1cFBvcnRhbFRhcmdldCxcbiAgICBdKVxuXG4gICAgLy8gVGhpcyB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIHBvc2l0aW9ucyBhcmUgY29tcHV0ZWQgYW5kIHBvcHVwIGlzIHZpc2libGUgaW4gdGhlIGRvbS5cbiAgICB1c2VFZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh2aXNpYmxlSW5Eb20gJiYgaW5uZXJQb3B1cFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLm9wYWNpdHkgPSAnMSdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgIFtwb3NpdGlvbnNdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIElmIHBvcHVwIGhhcyBgdmlzaWJsZWAgcHJvcCBpdCBtZWFucyB0aGUgcG9wdXAgaXMgbWFudWFsbHkgY29udHJvbGxlZCB0aHJvdWdoIHRoaXMgcHJvcC5cbiAgICAgKiBJbiB0aGlzIGNhcyB3ZSBkb24ndCB3YW50IHRvIGRpc3BsYXkgcG9wdXAgb24gaG92ZXIsIGJ1dCBvbmx5IHdoZW4gYHZpc2libGVgIGlzIHRydWUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgb25Qb2ludGVyRXZlbnQodmlzaWJsZSkoKVxuICAgICAgfVxuICAgIH0sIFtpc0NvbnRyb2xsZWQsIG9uUG9pbnRlckV2ZW50LCB2aXNpYmxlXSlcblxuICAgIC8vIEhhbmRsZSBoaWRlIG9uIGVzYyBwcmVzcyBhbmQgaGlkZSBvbiBjbGljayBvdXRzaWRlXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGhhbmRsZUVzY1ByZXNzID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgY2xvc2VQb3B1cCgpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBvcHVwQ3VycmVudCA9IGlubmVyUG9wdXBSZWYuY3VycmVudFxuICAgICAgICBjb25zdCBjaGlsZHJlbkN1cnJlbnQgPSBjaGlsZHJlblJlZi5jdXJyZW50XG5cbiAgICAgICAgaWYgKHBvcHVwQ3VycmVudCAmJiBoaWRlT25DbGlja091dHNpZGUgJiYgIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBldmVudC50YXJnZXQgJiZcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldCAhPT0gcG9wdXBDdXJyZW50ICYmXG4gICAgICAgICAgICBldmVudC50YXJnZXQgIT09IGNoaWxkcmVuQ3VycmVudCAmJlxuICAgICAgICAgICAgIWNoaWxkcmVuQ3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmXG4gICAgICAgICAgICAhcG9wdXBDdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHZpc2libGVJbkRvbSkge1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgaGFuZGxlRXNjUHJlc3MpXG4gICAgICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBoYW5kbGVFc2NQcmVzcylcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBjbG9zZVBvcHVwLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgaW5uZXJQb3B1cFJlZixcbiAgICAgIGNoaWxkcmVuUmVmLFxuICAgICAgaGlkZU9uQ2xpY2tPdXRzaWRlLFxuICAgIF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGV2ZW50IHdpbGwgb2NjdXIgb25seSBmb3IgZGlhbG9nIGFuZCB3aWxsIHRyYXAgZm9jdXMgaW5zaWRlIHRoZSBkaWFsb2cuXG4gICAgICovXG4gICAgY29uc3QgaGFuZGxlRm9jdXNUcmFwOiBLZXlib2FyZEV2ZW50SGFuZGxlciA9IHVzZUNhbGxiYWNrKGV2ZW50ID0+IHtcbiAgICAgIGNvbnN0IGlzVGFiUHJlc3NlZCA9IGV2ZW50LmtleSA9PT0gJ1RhYidcbiAgICAgIGlmICghaXNUYWJQcmVzc2VkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcblxuICAgICAgY29uc3QgZm9jdXNhYmxlRWxzID1cbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50Py5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICAgICdhW2hyZWZdOm5vdChbZGlzYWJsZWRdKSwgYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSknLFxuICAgICAgICApID8/IFtdXG5cbiAgICAgIC8vIEhhbmRsZSBjYXNlIHdoZW4gbm8gaW50ZXJhY3RpdmUgZWxlbWVudCBhcmUgd2l0aGluIHRoZSBtb2RhbCAoaW5jbHVkaW5nIGNsb3NlIGljb24pXG4gICAgICBpZiAoZm9jdXNhYmxlRWxzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWwgPSBmb2N1c2FibGVFbHNbMF0gYXMgSFRNTEVsZW1lbnRcbiAgICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbCA9IGZvY3VzYWJsZUVsc1tcbiAgICAgICAgZm9jdXNhYmxlRWxzLmxlbmd0aCAtIDFcbiAgICAgIF0gYXMgSFRNTEVsZW1lbnRcblxuICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEZvY3VzYWJsZUVsIHx8XG4gICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICAgICkge1xuICAgICAgICAgIGxhc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0Rm9jdXNhYmxlRWwgfHxcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgZmlyc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9LCBbXSlcblxuICAgIC8qKlxuICAgICAqIFdpbGwgcmVuZGVyIGNoaWxkcmVuIGNvbmRpdGlvbmFsbHkgaWYgY2hpbGRyZW4gaXMgYSBmdW5jdGlvbiBvciBub3QuXG4gICAgICovXG4gICAgY29uc3QgcmVuZGVyQ2hpbGRyZW4gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBjaGlsZHJlbih7XG4gICAgICAgICAgb25CbHVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICBvbkZvY3VzOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckVudGVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckxlYXZlOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICByZWY6IGNoaWxkcmVuUmVmLFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkQ2hpbGRyZW5Db250YWluZXJcbiAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBvbkJsdXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIG9uRm9jdXM9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIHJlZj17Y2hpbGRyZW5SZWZ9XG4gICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgIG9uS2V5RG93bj17ZXZlbnQgPT4ge1xuICAgICAgICAgICAgb25LZXlEb3duPy4oZXZlbnQpXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkYXRhLWNvbnRhaW5lci1mdWxsLXdpZHRoPXtjb250YWluZXJGdWxsV2lkdGh9XG4gICAgICAgICAgYXJpYS1oYXNwb3B1cD17YXJpYUhhc1BvcHVwfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L1N0eWxlZENoaWxkcmVuQ29udGFpbmVyPlxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFyaWFIYXNQb3B1cCxcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgZ2VuZXJhdGVkSWQsXG4gICAgICBpc0NvbnRyb2xsZWQsXG4gICAgICBvbktleURvd24sXG4gICAgICBvblBvaW50ZXJFdmVudCxcbiAgICAgIHRhYkluZGV4LFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG91bGRSZW5kZXIgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghZHluYW1pY0RvbVJlbmRlcmluZykge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuXG4gICAgICBpZiAoZHluYW1pY0RvbVJlbmRlcmluZyAmJiB2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfSwgW2R5bmFtaWNEb21SZW5kZXJpbmcsIHZpc2libGVJbkRvbV0pXG5cbiAgICBpZiAoIXRleHQpIHtcbiAgICAgIGlmICh0eXBlb2YgY2hpbGRyZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNoaWxkcmVuXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIHtyZW5kZXJDaGlsZHJlbigpfVxuICAgICAgICB7c2hvdWxkUmVuZGVyXG4gICAgICAgICAgPyBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICAgIDxTdHlsZWRQb3B1cFxuICAgICAgICAgICAgICAgIHJlZj17aW5uZXJQb3B1cFJlZn1cbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM9e3Bvc2l0aW9uc31cbiAgICAgICAgICAgICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0PXttYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICAgICAgICBpZD17Z2VuZXJhdGVkSWR9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICAgICAgcmV2ZXJzZUFuaW1hdGlvbj17cmV2ZXJzZUFuaW1hdGlvbn1cbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgICAgICAgICBkYXRhLWhhcy1hcnJvdz17aGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgb25DbGljaz17c3RvcENsaWNrUHJvcGFnYXRpb259XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbkR1cmF0aW9uPXthbmltYXRpb25EdXJhdGlvbn1cbiAgICAgICAgICAgICAgICBvbktleURvd249e3JvbGUgPT09ICdkaWFsb2cnID8gaGFuZGxlRm9jdXNUcmFwIDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAgIGlzRGlhbG9nPXtyb2xlID09PSAnZGlhbG9nJ31cbiAgICAgICAgICAgICAgICBkYXRhLXZpc2libGUtaW4tZG9tPXtcbiAgICAgICAgICAgICAgICAgICFkeW5hbWljRG9tUmVuZGVyaW5nID8gdmlzaWJsZUluRG9tIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEtYW5pbWF0ZWQ9e2FuaW1hdGlvbkR1cmF0aW9uID4gMCAmJiAhbWF4SGVpZ2h0fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3RleHR9XG4gICAgICAgICAgICAgIDwvU3R5bGVkUG9wdXA+LFxuICAgICAgICAgICAgICBwb3B1cFBvcnRhbFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IG51bGx9XG4gICAgICA8Lz5cbiAgICApXG4gIH0sXG4pXG4iXX0= */"), ';}&[data-has-arrow="true"]{&::after{content:" ";position:absolute;top:', ({
46
+ }) => /* @__PURE__ */ css(animationDuration, "ms ", !reverseAnimation ? animation(positions) : exitAnimation(positions), " forwards;" + (process.env.NODE_ENV === "production" ? "" : ";label:StyledPopup;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxRjRFIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7XG4gIEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTW91c2VFdmVudEhhbmRsZXIsXG4gIFJlYWN0Tm9kZSxcbiAgUmVmLFxuICBSZWZPYmplY3QsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgc3RhcnRUcmFuc2l0aW9uLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJZCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nXG5pbXBvcnQgeyBpc0NsaWVudFNpZGUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2lzQ2xpZW50U2lkZSdcbmltcG9ydCB0eXBlIHsgUG9zaXRpb25zVHlwZSB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB7IGFuaW1hdGlvbiwgZXhpdEFuaW1hdGlvbiB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB0eXBlIHsgUG9wdXBBbGlnbiwgUG9wdXBQbGFjZW1lbnQgfSBmcm9tICcuL2hlbHBlcnMnXG5pbXBvcnQge1xuICBERUZBVUxUX0FSUk9XX1dJRFRILFxuICBERUZBVUxUX1BPU0lUSU9OUyxcbiAgY29tcHV0ZVBvc2l0aW9ucyxcbn0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5jb25zdCBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTiA9IDIzMCAvLyBpbiBtc1xuY29uc3QgREVGQVVMVF9ERUJPVU5DRV9EVVJBVElPTiA9IDIwMCAvLyBpbiBtc1xuXG5jb25zdCBub29wID0gKCkgPT4ge31cblxudHlwZSBTdHlsZWRQb3B1cFByb3BzID0ge1xuICBtYXhXaWR0aDogbnVtYmVyIHwgc3RyaW5nXG4gIHBvc2l0aW9uczogUG9zaXRpb25zVHlwZVxuICByZXZlcnNlQW5pbWF0aW9uOiBib29sZWFuXG4gIG1heEhlaWdodD86IG51bWJlciB8IHN0cmluZ1xuICBhbmltYXRpb25EdXJhdGlvbj86IG51bWJlclxuICBpc0RpYWxvZzogYm9vbGVhblxufVxuXG4vKipcbiAqIFRoaXMgZXZlbnQgaGFuZGxlIGFsbG93IHVzIHRvIG5vdCBidWJibGUgdGhlIGV2ZW50IHRvIGRvY3VtZW50LmJvZHkgbGlrZSB0aGlzIHJlYWN0LXNlbGVjdCB3b3JrcyBmaW5lXG4gKi9cbmNvbnN0IHN0b3BDbGlja1Byb3BhZ2F0aW9uOiBNb3VzZUV2ZW50SGFuZGxlciA9IGV2ZW50ID0+IHtcbiAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKClcbn1cblxuY29uc3QgU3R5bGVkUG9wdXAgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ21heFdpZHRoJyxcbiAgICAgICdwb3NpdGlvbnMnLFxuICAgICAgJ3JldmVyc2VBbmltYXRpb24nLFxuICAgICAgJ21heEhlaWdodCcsXG4gICAgICAnYW5pbWF0aW9uRHVyYXRpb24nLFxuICAgICAgJ2lzRGlhbG9nJyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkUG9wdXBQcm9wcz5gXG4gIGJhY2tncm91bmQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZFN0cm9uZ2VyfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwudGV4dFN0cm9uZ2VyfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zcGFjZVsnMC41J119ICR7dGhlbWUuc3BhY2VbJzEnXX1gfTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1heC13aWR0aDogJHsoeyBtYXhXaWR0aCB9KSA9PlxuICAgIHR5cGVvZiBtYXhXaWR0aCA9PT0gJ251bWJlcicgPyBgJHttYXhXaWR0aH1weGAgOiBtYXhXaWR0aH07XG4gIG1heC1oZWlnaHQ6ICR7KHsgbWF4SGVpZ2h0IH0pID0+XG4gICAgdHlwZW9mIG1heEhlaWdodCA9PT0gJ251bWJlcicgPyBgJHttYXhIZWlnaHR9cHhgIDogbWF4SGVpZ2h0fTtcbiAgb3ZlcmZsb3c6ICR7KHsgbWF4SGVpZ2h0IH0pID0+IChtYXhIZWlnaHQgPyAnYXV0bycgOiB1bmRlZmluZWQpfTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGluc2V0OiAwIGF1dG8gYXV0byAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zZm9ybTogJHsoeyBwb3NpdGlvbnMgfSkgPT4gcG9zaXRpb25zLnBvcHVwUG9zaXRpb259O1xuXG4gICZbZGF0YS1hbmltYXRlZD1cInRydWVcIl0ge1xuICAgIGFuaW1hdGlvbjogJHsoeyBwb3NpdGlvbnMsIHJldmVyc2VBbmltYXRpb24sIGFuaW1hdGlvbkR1cmF0aW9uIH0pID0+IGNzc2BcbiAgICAgICR7YW5pbWF0aW9uRHVyYXRpb259bXMgJHtcbiAgICAgICAgIXJldmVyc2VBbmltYXRpb24gPyBhbmltYXRpb24ocG9zaXRpb25zKSA6IGV4aXRBbmltYXRpb24ocG9zaXRpb25zKVxuICAgICAgfSBmb3J3YXJkc1xuICAgIGB9O1xuICB9XG5cbiAgJltkYXRhLWhhcy1hcnJvdz1cInRydWVcIl0ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUb3B9cHg7XG4gICAgICBsZWZ0OiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dMZWZ0fXB4O1xuICAgICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUcmFuc2Zvcm19XG4gICAgICAgIHJvdGF0ZSgkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMucm90YXRlfWRlZyk7XG4gICAgICBtYXJnaW4tbGVmdDogLSR7REVGQVVMVF9BUlJPV19XSURUSH1weDtcbiAgICAgIGJvcmRlci13aWR0aDogJHtERUZBVUxUX0FSUk9XX1dJRFRIfXB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nZXJ9XG4gICAgICAgIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXZpc2libGUtaW4tZG9tPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbmBcblxuY29uc3QgU3R5bGVkQ2hpbGRyZW5Db250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBpbmhlcml0O1xuXG4gICZbZGF0YS1jb250YWluZXItZnVsbC13aWR0aD1cInRydWVcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5gXG5cbnR5cGUgUG9wdXBQcm9wcyA9IHtcbiAgLyoqXG4gICAqIElkIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGlmIG5vdCBzZXQuIEl0IGlzIHVzZWQgZm9yIGFzc29jaWF0aW5nIHBvcHVwIHdyYXBwZXIgd2l0aCBwb3B1cCBwb3J0YWwuXG4gICAqL1xuICBpZD86IHN0cmluZ1xuICBjaGlsZHJlbjpcbiAgICB8IFJlYWN0Tm9kZVxuICAgIHwgKChyZW5kZXJQcm9wczoge1xuICAgICAgICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgICAgICAgb25CbHVyOiAoKSA9PiB2b2lkXG4gICAgICAgIG9uRm9jdXM6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyRW50ZXI6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyTGVhdmU6ICgpID0+IHZvaWRcbiAgICAgICAgcmVmOiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPlxuICAgICAgfSkgPT4gUmVhY3ROb2RlKVxuICBtYXhXaWR0aD86IG51bWJlciB8IHN0cmluZ1xuICAvKipcbiAgICogYGF1dG9gIHBsYWNlbWVudCB3aWxsIGNoYW5nZSB0aGUgcG9zaXRpb24gb2YgdGhlIHBvcHVwIGlmIGl0IGRvZXNuJ3QgZml0IGluIHRoZSB2aWV3cG9ydC5cbiAgICovXG4gIHBsYWNlbWVudD86IFBvcHVwUGxhY2VtZW50XG4gIC8qKlxuICAgKiBBbGlnbiB0aGUgcG9wdXAgdG8gdGhlIHN0YXJ0IG9yIGNlbnRlciBvZiB0aGUgY2hpbGRyZW4uXG4gICAqL1xuICBhbGlnbj86IFBvcHVwQWxpZ25cbiAgLyoqXG4gICAqIENvbnRlbnQgb2YgdGhlIHBvcHVwLCBwcmVmZXJhYmx5IHRleHQgaW5zaWRlLlxuICAgKi9cbiAgdGV4dD86IFJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIEl0IHdpbGwgYWRkIGB3aWR0aDogMTAwJWAgdG8gdGhlIHBvcHVwIGNvbnRhaW5lci5cbiAgICovXG4gIGNvbnRhaW5lckZ1bGxXaWR0aD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIEl0IHdpbGwgZm9yY2UgZGlzcGxheSBwb3B1cC4gVGhpcyBjYW4gYmUgdXNlZnVsIGlmIHlvdSBuZWVkIHRvIGFsd2F5cyBkaXNwbGF5IHRoZSBwb3B1cCB3aXRob3V0IGhvdmVyIG5lZWRlZC5cbiAgICovXG4gIHZpc2libGU/OiBib29sZWFuXG4gIGlubmVyUmVmPzogUmVmPEhUTUxEaXZFbGVtZW50IHwgbnVsbD5cbiAgcm9sZT86IHN0cmluZ1xuICAnZGF0YS10ZXN0aWQnPzogc3RyaW5nXG4gIGhhc0Fycm93PzogYm9vbGVhblxuICBvbkNsb3NlPzogKCkgPT4gdm9pZFxuICB0YWJJbmRleD86IG51bWJlclxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlclxuICAnYXJpYS1oYXNwb3B1cCc/OiBIVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5bJ2FyaWEtaGFzcG9wdXAnXVxuICBoaWRlT25DbGlja091dHNpZGU/OiBib29sZWFuXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGRlYm91bmNlVGltZSB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgbm90IGRlYm91bmNlIHRoZSBob3ZlciBldmVudCBhbmQgd2lsbCBiZSBkaXNwbGF5ZWQgaW5zdGFudGx5LlxuICAgKiBJZiBzZXQgdG8gMCBpdCB3aWxsIGRpc2FibGUgZGVib3VuY2UuXG4gICAqL1xuICBkZWJvdW5jZURlbGF5PzogbnVtYmVyXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGEgbWF4IGhlaWdodCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgYW5pbWF0aW9uIGlzIGRpc2FibGVkLCBvciBpdCB3aWxsIG5vdCB3b3JrIHByb3Blcmx5IG9uIHNvbWUgYnJvd3NlcnMuXG4gICAqL1xuICBtYXhIZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgLyoqXG4gICAqIFdpbGwgcmVtb3ZlIHRoZSBhbmltYXRpb24gb24gdGhlIHBvcHVwIGlmIHNldCB0byBmYWxzZS5cbiAgICovXG4gIGRpc2FibGVBbmltYXRpb24/OiBib29sZWFuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgcG9ydGFsIHRhcmdldCBpcyBjaGlsZHJlbiBjb250YWluZXIgb3IgZG9jdW1lbnQuYm9keSBpZiBjaGlsZHJlbiBpcyBhIGZ1bmN0aW9uLiBZb3UgY2FuIG92ZXJyaWRlIHRoaXNcbiAgICogYmVoYXZpb3IgYnkgc2V0dGluZyBhIHBvcnRhbFRhcmdldCBwcm9wLlxuICAgKi9cbiAgcG9ydGFsVGFyZ2V0PzogSFRNTEVsZW1lbnRcbiAgLyoqXG4gICAqIElmIHlvdSBzZXQgdGhpcyB0byB0cnVlLCB0aGUgcG9wdXAgd2lsbCBiZSByZW5kZXJlZCBpbiB0aGUgRE9NIG9ubHkgd2hlbiBpdCBpcyB2aXNpYmxlLlxuICAgKiBXaGVuIHNldCB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgYWx3YXlzIGJlIHJlbmRlcmVkIGluIHRoZSBET00uIEJ5IGRlZmF1bHQgdGhpcyB2YWx1ZSBpcyBzZXQgdG8gYHRydWVgLCBpZiBmb3Igc29tZVxuICAgKiByZWFzb24geW91IG5lZWQgdG8gZGlzYWJsZSBpdCwgeW91IGNhbiBzZXQgaXQgdG8gYGZhbHNlYC5cbiAgICovXG4gIGR5bmFtaWNEb21SZW5kZXJpbmc/OiBib29sZWFuXG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbCBUaGlzIGNvbXBvbmVudCBpcyBleHBlcmltZW50YWwgYW5kIG1heSBiZSBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgaW4gdGhlIGZ1dHVyZS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBvcHVwID0gZm9yd2FyZFJlZihcbiAgKFxuICAgIHtcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgdGV4dCA9ICcnLFxuICAgICAgcGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgYWxpZ24gPSAnY2VudGVyJyxcbiAgICAgIGlkLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgbWF4V2lkdGggPSAnMTQuNXJlbScsXG4gICAgICBtYXhIZWlnaHQsXG4gICAgICB2aXNpYmxlLFxuICAgICAgaW5uZXJSZWYsXG4gICAgICByb2xlID0gJ3BvcHVwJyxcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBoYXNBcnJvdyA9IHRydWUsXG4gICAgICBvbkNsb3NlLFxuICAgICAgdGFiSW5kZXggPSAwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgJ2FyaWEtaGFzcG9wdXAnOiBhcmlhSGFzUG9wdXAsXG4gICAgICBoaWRlT25DbGlja091dHNpZGUgPSBmYWxzZSxcbiAgICAgIGRlYm91bmNlRGVsYXkgPSBERUZBVUxUX0RFQk9VTkNFX0RVUkFUSU9OLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbiA9IGZhbHNlLFxuICAgICAgcG9ydGFsVGFyZ2V0LFxuICAgICAgZHluYW1pY0RvbVJlbmRlcmluZyA9IHRydWUsXG4gICAgfTogUG9wdXBQcm9wcyxcbiAgICByZWY6IFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICkgPT4ge1xuICAgIGNvbnN0IGNoaWxkcmVuUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUoaW5uZXJSZWYsICgpID0+IGNoaWxkcmVuUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCBpbm5lclBvcHVwUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCB0aW1lciA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4odW5kZWZpbmVkKVxuICAgIGNvbnN0IHBvcHVwUG9ydGFsVGFyZ2V0ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAocG9ydGFsVGFyZ2V0KSByZXR1cm4gcG9ydGFsVGFyZ2V0XG5cbiAgICAgIGlmIChyb2xlID09PSAnZGlhbG9nJykge1xuICAgICAgICBpZiAoY2hpbGRyZW5SZWYuY3VycmVudCkgcmV0dXJuIGNoaWxkcmVuUmVmLmN1cnJlbnRcbiAgICAgICAgaWYgKGlzQ2xpZW50U2lkZSkgcmV0dXJuIGRvY3VtZW50LmJvZHlcblxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuXG4gICAgICAvLyBXZSBjaGVjayBpZiB3aW5kb3cgZXhpc3RzIGZvciBTU1JcbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnQuYm9keVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVsbFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIH0sIFtwb3J0YWxUYXJnZXQsIHJvbGUsIGNoaWxkcmVuUmVmLmN1cnJlbnRdKVxuXG4gICAgLy8gVGhlcmUgYXJlIHNvbWUgaXNzdWUgd2hlbiBtaXhpbmcgYW5pbWF0aW9uIGFuZCBtYXhIZWlnaHQgb24gc29tZSBicm93c2Vycywgc28gd2UgZGlzYWJsZSBhbmltYXRpb24gaWYgbWF4SGVpZ2h0IGlzIHNldC5cbiAgICBjb25zdCBhbmltYXRpb25EdXJhdGlvbiA9XG4gICAgICBkaXNhYmxlQW5pbWF0aW9uIHx8IG1heEhlaWdodCA/IDAgOiBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTlxuXG4gICAgLy8gRGVib3VuY2UgdGltZXIgd2lsbCBiZSB1c2VkIHRvIHByZXZlbnQgdGhlIHBvcHVwIGZyb20gZmxpY2tlcmluZyB3aGVuIHRoZSB1c2VyIG1vdmVzIHRoZSBtb3VzZSBvdXQgYW5kIGluIHRoZSBjaGlsZHJlbiBlbGVtZW50LlxuICAgIGNvbnN0IGRlYm91bmNlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KHVuZGVmaW5lZClcbiAgICBjb25zdCBbdmlzaWJsZUluRG9tLCBzZXRWaXNpYmxlSW5Eb21dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3JldmVyc2VBbmltYXRpb24sIHNldFJldmVyc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bvc2l0aW9ucywgc2V0UG9zaXRpb25zXSA9IHVzZVN0YXRlPFBvc2l0aW9uc1R5cGU+KHtcbiAgICAgIC4uLkRFRkFVTFRfUE9TSVRJT05TLFxuICAgIH0pXG4gICAgY29uc3QgdW5pcXVlSWQgPSB1c2VJZCgpXG4gICAgY29uc3QgZ2VuZXJhdGVkSWQgPSBpZCA/PyB1bmlxdWVJZFxuICAgIGNvbnN0IGlzQ29udHJvbGxlZCA9IHZpc2libGUgIT09IHVuZGVmaW5lZFxuXG4gICAgY29uc3QgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgIGlmIChjaGlsZHJlblJlZi5jdXJyZW50ICYmIGlubmVyUG9wdXBSZWYuY3VycmVudCkge1xuICAgICAgICBzZXRQb3NpdGlvbnMoXG4gICAgICAgICAgY29tcHV0ZVBvc2l0aW9ucyh7XG4gICAgICAgICAgICBjaGlsZHJlblJlZixcbiAgICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICAgIHBvcHVwUmVmOiBpbm5lclBvcHVwUmVmLFxuICAgICAgICAgICAgcG9wdXBQb3J0YWxUYXJnZXQ6IHBvcHVwUG9ydGFsVGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgaGFzQXJyb3csXG4gICAgICAgICAgICBhbGlnbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0sIFtoYXNBcnJvdywgcGxhY2VtZW50LCBwb3B1cFBvcnRhbFRhcmdldCwgYWxpZ25dKVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB3ZSBuZWVkIHRvIHJlY29tcHV0ZSBwb3NpdGlvbnMgb2YgcG9wdXAgZHVlIHRvIHdpbmRvdyBzY3JvbGwgb3IgcmVzaXplLlxuICAgICAqL1xuICAgIGNvbnN0IG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAvLyBXZSByZW1vdmUgYW5pbWF0aW9uIG9uIHNjcm9sbCBvciB0aGUgYW5pbWF0aW9uIHdpbGwgcmVzdGFydCBvbiBldmVyeSBzY3JvbGxcbiAgICAgIGlmIChpbm5lclBvcHVwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9ICdub25lJ1xuICAgICAgfVxuXG4gICAgICBnZW5lcmF0ZVBvcHVwUG9zaXRpb25zKClcbiAgICB9LCBbZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucywgaW5uZXJQb3B1cFJlZl0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gcmVtb3ZlIHBvcHVwIHBvcnRhbCBmcm9tIERPTSBhbmQgcmVtb3ZlIGV2ZW50IGxpc3RlbmVyIHRvIGl0LlxuICAgICAqL1xuICAgIGNvbnN0IHVubW91bnRQb3B1cEZyb21Eb20gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBzZXRWaXNpYmxlSW5Eb20oZmFsc2UpXG4gICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuXG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICB9LCBbb25XaW5kb3dDaGFuZ2VEZXRlY3RlZF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gaGlkZSBwb3B1cC4gQSB0aW1lb3V0IGlzIHNldCB0byBhbGxvdyBhbmltYXRpb24gZW5kLCB0aGVuIHJlbW92ZVxuICAgICAqIHBvcHVwIGZyb20gZG9tLlxuICAgICAqL1xuICAgIGNvbnN0IGNsb3NlUG9wdXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgc2V0UmV2ZXJzZUFuaW1hdGlvbih0cnVlKVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHVubW91bnRQb3B1cEZyb21Eb20oKVxuICAgICAgICAgICAgb25DbG9zZT8uKClcbiAgICAgICAgICB9LCBhbmltYXRpb25EdXJhdGlvbilcbiAgICAgICAgfSxcbiAgICAgICAgZGVib3VuY2VEZWxheSAmJiAhZGlzYWJsZUFuaW1hdGlvbiA/IGRlYm91bmNlRGVsYXkgOiAwLFxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFuaW1hdGlvbkR1cmF0aW9uLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbixcbiAgICAgIGRlYm91bmNlRGVsYXksXG4gICAgICBvbkNsb3NlLFxuICAgICAgdW5tb3VudFBvcHVwRnJvbURvbSxcbiAgICBdKVxuXG4gICAgLyoqXG4gICAgICogV2hlbiBtb3VzZSBob3ZlciBvciBzdG9wIGhvdmVyaW5nIGNoaWxkcmVuIHRoaXMgZnVuY3Rpb24gZGlzcGxheSBvciBoaWRlIHBvcHVwLiBBIHRpbWVvdXQgaXMgc2V0IHRvIGFsbG93IGFuaW1hdGlvblxuICAgICAqIGVuZCwgdGhlbiByZW1vdmUgcG9wdXAgZnJvbSBkb20uXG4gICAgICovXG4gICAgY29uc3Qgb25Qb2ludGVyRXZlbnQgPSB1c2VDYWxsYmFjayhcbiAgICAgIChpc1Zpc2libGU6IGJvb2xlYW4pID0+ICgpID0+IHtcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgYSBkZWJvdW5jZURlbGF5IGFuZCB0aGUgcG9wdXAgaXMgbm90IHZpc2libGUsIHdlIGNsZWFyIHRoZSBkZWJvdW5jZSB0aW1lclxuICAgICAgICBpZiAoIXZpc2libGUgJiYgZGVib3VuY2VEZWxheSA+IDAgJiYgZGVib3VuY2VUaW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXIuY3VycmVudClcbiAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gdW5tb3VudCB0aGUgcG9wdXBcbiAgICAgICAgLy8gVGhlcmUgaXMgZGVib3VuY2UgaW4gb3JkZXIgdG8gYXZvaWQgcG9wdXAgdG8gZmxpY2tlciB3aGVuIHdlIG1vdmUgdGhlIG1vdXNlIGZyb20gY2hpbGRyZW4gdG8gcG9wdXBcbiAgICAgICAgLy8gVGltZXIgaXMgdXNlZCB0byBmb2xsb3cgdGhlIGFuaW1hdGlvbiBkdXJhdGlvblxuICAgICAgICBpZiAoIWlzVmlzaWJsZSAmJiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgJiYgIWRlYm91bmNlVGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICB9IGVsc2UgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gbW91bnQgdGhlIHBvcHVwXG4gICAgICAgICAgLy8gSWYgdGhlIHRpbWVyIGV4aXN0cyBpdCBtZWFucyB0aGUgcG9wdXAgd2FzIGFib3V0IHRvIHVtb3VudCwgYnV0IHdlIGhvdmVyZWQgdGhlIGNoaWxkcmVuIGFnYWluLFxuICAgICAgICAgIC8vIHNvIHdlIGNsZWFyIHRoZSB0aW1lciBhbmQgdGhlIHBvcHVwIHdpbGwgbm90IGJlIHVubW91bnRlZFxuICAgICAgICAgIGlmICh0aW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICB0aW1lci5jdXJyZW50ID0gdW5kZWZpbmVkXG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIEFuZCBoZXJlIGlzIHdoZW4gd2UgY3VycmVudGx5IGFyZSBpbiBhIGRlYm91bmNlIHRpbWVyLCBpdCBtZWFucyBwb3B1cCB3YXMgaG92ZXJlZCBkdXJpbmdcbiAgICAgICAgICAvLyB0aGF0IHBlcmlvZCwgYW5kIHNvIHdlIGNhbiBjbGVhciBkZWJvdW5jZSB0aW1lclxuICAgICAgICAgIGlmIChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGRlYm91bmNlRGVsYXkgPiAwKSB7XG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgc2V0VmlzaWJsZUluRG9tKHRydWUpXG4gICAgICAgICAgICB9LCBkZWJvdW5jZURlbGF5KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGFydFRyYW5zaXRpb24oKCkgPT4ge1xuICAgICAgICAgICAgICBzZXRWaXNpYmxlSW5Eb20odHJ1ZSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW2Nsb3NlUG9wdXAsIGRlYm91bmNlRGVsYXksIHZpc2libGVdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIE9uY2UgcG9wdXAgaXMgdmlzaWJsZSBpbiB0aGUgZG9tIHdlIGNhbiBjb21wdXRlIHBvc2l0aW9ucywgdGhlbiBzZXQgaXQgdmlzaWJsZSBvbiBzY3JlZW4gYW5kIGFkZCBldmVudCB0b1xuICAgICAqIHJlY29tcHV0ZSBwb3NpdGlvbnMgb24gc2Nyb2xsIG9yIHNjcmVlbiByZXNpemUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICh2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucygpXG5cbiAgICAgICAgaWYgKHBvcHVwUG9ydGFsVGFyZ2V0ID09PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICAgICAgLy8gV2Ugd2FudCB0byBkZXRlY3Qgc2Nyb2xsIGFuZCByZXNpemUgaW4gb3JkZXIgdG8gcmVjb21wdXRlIHBvc2l0aW9ucyBvZiBwb3B1cFxuICAgICAgICAgIC8vIEFkZGluZyB0cnVlIGFzIHRoaXJkIHBhcmFtZXRlciB0byBldmVudCBsaXN0ZW5lciB3aWxsIGRldGVjdCBuZXN0ZWQgc2Nyb2xscy5cbiAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgICAgfVxuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQsIHRydWUpXG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCBvbldpbmRvd0NoYW5nZURldGVjdGVkLCB0cnVlKVxuICAgICAgICBpZiAodGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lci5jdXJyZW50KVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIFtcbiAgICAgIGdlbmVyYXRlUG9wdXBQb3NpdGlvbnMsXG4gICAgICBvbldpbmRvd0NoYW5nZURldGVjdGVkLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgbWF4V2lkdGgsXG4gICAgICBwb3B1cFBvcnRhbFRhcmdldCxcbiAgICBdKVxuXG4gICAgLy8gVGhpcyB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIHBvc2l0aW9ucyBhcmUgY29tcHV0ZWQgYW5kIHBvcHVwIGlzIHZpc2libGUgaW4gdGhlIGRvbS5cbiAgICB1c2VFZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh2aXNpYmxlSW5Eb20gJiYgaW5uZXJQb3B1cFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLm9wYWNpdHkgPSAnMSdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgIFtwb3NpdGlvbnNdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIElmIHBvcHVwIGhhcyBgdmlzaWJsZWAgcHJvcCBpdCBtZWFucyB0aGUgcG9wdXAgaXMgbWFudWFsbHkgY29udHJvbGxlZCB0aHJvdWdoIHRoaXMgcHJvcC5cbiAgICAgKiBJbiB0aGlzIGNhcyB3ZSBkb24ndCB3YW50IHRvIGRpc3BsYXkgcG9wdXAgb24gaG92ZXIsIGJ1dCBvbmx5IHdoZW4gYHZpc2libGVgIGlzIHRydWUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgb25Qb2ludGVyRXZlbnQodmlzaWJsZSkoKVxuICAgICAgfVxuICAgIH0sIFtpc0NvbnRyb2xsZWQsIG9uUG9pbnRlckV2ZW50LCB2aXNpYmxlXSlcblxuICAgIC8vIEhhbmRsZSBoaWRlIG9uIGVzYyBwcmVzcyBhbmQgaGlkZSBvbiBjbGljayBvdXRzaWRlXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGhhbmRsZUVzY1ByZXNzID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgY2xvc2VQb3B1cCgpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBvcHVwQ3VycmVudCA9IGlubmVyUG9wdXBSZWYuY3VycmVudFxuICAgICAgICBjb25zdCBjaGlsZHJlbkN1cnJlbnQgPSBjaGlsZHJlblJlZi5jdXJyZW50XG5cbiAgICAgICAgaWYgKHBvcHVwQ3VycmVudCAmJiBoaWRlT25DbGlja091dHNpZGUgJiYgIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBldmVudC50YXJnZXQgJiZcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldCAhPT0gcG9wdXBDdXJyZW50ICYmXG4gICAgICAgICAgICBldmVudC50YXJnZXQgIT09IGNoaWxkcmVuQ3VycmVudCAmJlxuICAgICAgICAgICAgIWNoaWxkcmVuQ3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmXG4gICAgICAgICAgICAhcG9wdXBDdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHZpc2libGVJbkRvbSkge1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgaGFuZGxlRXNjUHJlc3MpXG4gICAgICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBoYW5kbGVFc2NQcmVzcylcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBjbG9zZVBvcHVwLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgaW5uZXJQb3B1cFJlZixcbiAgICAgIGNoaWxkcmVuUmVmLFxuICAgICAgaGlkZU9uQ2xpY2tPdXRzaWRlLFxuICAgIF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGV2ZW50IHdpbGwgb2NjdXIgb25seSBmb3IgZGlhbG9nIGFuZCB3aWxsIHRyYXAgZm9jdXMgaW5zaWRlIHRoZSBkaWFsb2cuXG4gICAgICovXG4gICAgY29uc3QgaGFuZGxlRm9jdXNUcmFwOiBLZXlib2FyZEV2ZW50SGFuZGxlciA9IHVzZUNhbGxiYWNrKGV2ZW50ID0+IHtcbiAgICAgIGNvbnN0IGlzVGFiUHJlc3NlZCA9IGV2ZW50LmtleSA9PT0gJ1RhYidcbiAgICAgIGlmICghaXNUYWJQcmVzc2VkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcblxuICAgICAgY29uc3QgZm9jdXNhYmxlRWxzID1cbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50Py5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICAgICdhW2hyZWZdOm5vdChbZGlzYWJsZWRdKSwgYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSknLFxuICAgICAgICApID8/IFtdXG5cbiAgICAgIC8vIEhhbmRsZSBjYXNlIHdoZW4gbm8gaW50ZXJhY3RpdmUgZWxlbWVudCBhcmUgd2l0aGluIHRoZSBtb2RhbCAoaW5jbHVkaW5nIGNsb3NlIGljb24pXG4gICAgICBpZiAoZm9jdXNhYmxlRWxzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWwgPSBmb2N1c2FibGVFbHNbMF0gYXMgSFRNTEVsZW1lbnRcbiAgICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbCA9IGZvY3VzYWJsZUVsc1tcbiAgICAgICAgZm9jdXNhYmxlRWxzLmxlbmd0aCAtIDFcbiAgICAgIF0gYXMgSFRNTEVsZW1lbnRcblxuICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEZvY3VzYWJsZUVsIHx8XG4gICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICAgICkge1xuICAgICAgICAgIGxhc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0Rm9jdXNhYmxlRWwgfHxcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgZmlyc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9LCBbXSlcblxuICAgIC8qKlxuICAgICAqIFdpbGwgcmVuZGVyIGNoaWxkcmVuIGNvbmRpdGlvbmFsbHkgaWYgY2hpbGRyZW4gaXMgYSBmdW5jdGlvbiBvciBub3QuXG4gICAgICovXG4gICAgY29uc3QgcmVuZGVyQ2hpbGRyZW4gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBjaGlsZHJlbih7XG4gICAgICAgICAgb25CbHVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICBvbkZvY3VzOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckVudGVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckxlYXZlOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICByZWY6IGNoaWxkcmVuUmVmLFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkQ2hpbGRyZW5Db250YWluZXJcbiAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBvbkJsdXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIG9uRm9jdXM9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIHJlZj17Y2hpbGRyZW5SZWZ9XG4gICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgIG9uS2V5RG93bj17ZXZlbnQgPT4ge1xuICAgICAgICAgICAgb25LZXlEb3duPy4oZXZlbnQpXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkYXRhLWNvbnRhaW5lci1mdWxsLXdpZHRoPXtjb250YWluZXJGdWxsV2lkdGh9XG4gICAgICAgICAgYXJpYS1oYXNwb3B1cD17YXJpYUhhc1BvcHVwfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L1N0eWxlZENoaWxkcmVuQ29udGFpbmVyPlxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFyaWFIYXNQb3B1cCxcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgZ2VuZXJhdGVkSWQsXG4gICAgICBpc0NvbnRyb2xsZWQsXG4gICAgICBvbktleURvd24sXG4gICAgICBvblBvaW50ZXJFdmVudCxcbiAgICAgIHRhYkluZGV4LFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG91bGRSZW5kZXIgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghZHluYW1pY0RvbVJlbmRlcmluZykge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuXG4gICAgICBpZiAoZHluYW1pY0RvbVJlbmRlcmluZyAmJiB2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfSwgW2R5bmFtaWNEb21SZW5kZXJpbmcsIHZpc2libGVJbkRvbV0pXG5cbiAgICBpZiAoIXRleHQpIHtcbiAgICAgIGlmICh0eXBlb2YgY2hpbGRyZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNoaWxkcmVuXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIHtyZW5kZXJDaGlsZHJlbigpfVxuICAgICAgICB7c2hvdWxkUmVuZGVyXG4gICAgICAgICAgPyBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICAgIDxTdHlsZWRQb3B1cFxuICAgICAgICAgICAgICAgIHJlZj17aW5uZXJQb3B1cFJlZn1cbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM9e3Bvc2l0aW9uc31cbiAgICAgICAgICAgICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0PXttYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICAgICAgICBpZD17Z2VuZXJhdGVkSWR9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICAgICAgcmV2ZXJzZUFuaW1hdGlvbj17cmV2ZXJzZUFuaW1hdGlvbn1cbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgICAgICAgICBkYXRhLWhhcy1hcnJvdz17aGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgb25DbGljaz17c3RvcENsaWNrUHJvcGFnYXRpb259XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbkR1cmF0aW9uPXthbmltYXRpb25EdXJhdGlvbn1cbiAgICAgICAgICAgICAgICBvbktleURvd249e3JvbGUgPT09ICdkaWFsb2cnID8gaGFuZGxlRm9jdXNUcmFwIDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAgIGlzRGlhbG9nPXtyb2xlID09PSAnZGlhbG9nJ31cbiAgICAgICAgICAgICAgICBkYXRhLXZpc2libGUtaW4tZG9tPXtcbiAgICAgICAgICAgICAgICAgICFkeW5hbWljRG9tUmVuZGVyaW5nID8gdmlzaWJsZUluRG9tIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEtYW5pbWF0ZWQ9e2FuaW1hdGlvbkR1cmF0aW9uID4gMCAmJiAhbWF4SGVpZ2h0fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3RleHR9XG4gICAgICAgICAgICAgIDwvU3R5bGVkUG9wdXA+LFxuICAgICAgICAgICAgICBwb3B1cFBvcnRhbFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IG51bGx9XG4gICAgICA8Lz5cbiAgICApXG4gIH0sXG4pXG4iXX0= */"), ';}&[data-has-arrow="true"]{&::after{content:" ";position:absolute;top:', ({
47
47
  positions
48
48
  }) => positions.arrowTop, "px;left:", ({
49
49
  positions
@@ -53,7 +53,7 @@ const StyledPopup = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "pro
53
53
  positions
54
54
  }) => positions.rotate, "deg);margin-left:-", DEFAULT_ARROW_WIDTH, "px;border-width:", DEFAULT_ARROW_WIDTH, "px;border-style:solid;border-color:", ({
55
55
  theme
56
- }) => theme.colors.neutral.backgroundStronger, ' transparent transparent transparent;pointer-events:none;}}&[data-visible-in-dom="false"]{display:none;}' + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErRG9CIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7XG4gIEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTW91c2VFdmVudEhhbmRsZXIsXG4gIFJlYWN0Tm9kZSxcbiAgUmVmLFxuICBSZWZPYmplY3QsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgc3RhcnRUcmFuc2l0aW9uLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJZCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nXG5pbXBvcnQgeyBpc0NsaWVudFNpZGUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2lzQ2xpZW50U2lkZSdcbmltcG9ydCB0eXBlIHsgUG9zaXRpb25zVHlwZSB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB7IGFuaW1hdGlvbiwgZXhpdEFuaW1hdGlvbiB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB0eXBlIHsgUG9wdXBBbGlnbiwgUG9wdXBQbGFjZW1lbnQgfSBmcm9tICcuL2hlbHBlcnMnXG5pbXBvcnQge1xuICBERUZBVUxUX0FSUk9XX1dJRFRILFxuICBERUZBVUxUX1BPU0lUSU9OUyxcbiAgY29tcHV0ZVBvc2l0aW9ucyxcbn0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5jb25zdCBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTiA9IDIzMCAvLyBpbiBtc1xuY29uc3QgREVGQVVMVF9ERUJPVU5DRV9EVVJBVElPTiA9IDIwMCAvLyBpbiBtc1xuXG5mdW5jdGlvbiBub29wKCkge31cblxudHlwZSBTdHlsZWRQb3B1cFByb3BzID0ge1xuICBtYXhXaWR0aDogbnVtYmVyIHwgc3RyaW5nXG4gIHBvc2l0aW9uczogUG9zaXRpb25zVHlwZVxuICByZXZlcnNlQW5pbWF0aW9uOiBib29sZWFuXG4gIG1heEhlaWdodD86IG51bWJlciB8IHN0cmluZ1xuICBhbmltYXRpb25EdXJhdGlvbj86IG51bWJlclxuICBpc0RpYWxvZzogYm9vbGVhblxufVxuXG4vKipcbiAqIFRoaXMgZXZlbnQgaGFuZGxlIGFsbG93IHVzIHRvIG5vdCBidWJibGUgdGhlIGV2ZW50IHRvIGRvY3VtZW50LmJvZHkgbGlrZSB0aGlzIHJlYWN0LXNlbGVjdCB3b3JrcyBmaW5lXG4gKi9cbmNvbnN0IHN0b3BDbGlja1Byb3BhZ2F0aW9uOiBNb3VzZUV2ZW50SGFuZGxlciA9IGV2ZW50ID0+IHtcbiAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKClcbn1cblxuY29uc3QgU3R5bGVkUG9wdXAgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ21heFdpZHRoJyxcbiAgICAgICdwb3NpdGlvbnMnLFxuICAgICAgJ3JldmVyc2VBbmltYXRpb24nLFxuICAgICAgJ21heEhlaWdodCcsXG4gICAgICAnYW5pbWF0aW9uRHVyYXRpb24nLFxuICAgICAgJ2lzRGlhbG9nJyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkUG9wdXBQcm9wcz5gXG4gIGJhY2tncm91bmQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZFN0cm9uZ2VyfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwudGV4dFN0cm9uZ2VyfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zcGFjZVsnMC41J119ICR7dGhlbWUuc3BhY2VbJzEnXX1gfTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1heC13aWR0aDogJHsoeyBtYXhXaWR0aCB9KSA9PlxuICAgIHR5cGVvZiBtYXhXaWR0aCA9PT0gJ251bWJlcicgPyBgJHttYXhXaWR0aH1weGAgOiBtYXhXaWR0aH07XG4gIG1heC1oZWlnaHQ6ICR7KHsgbWF4SGVpZ2h0IH0pID0+XG4gICAgdHlwZW9mIG1heEhlaWdodCA9PT0gJ251bWJlcicgPyBgJHttYXhIZWlnaHR9cHhgIDogbWF4SGVpZ2h0fTtcbiAgb3ZlcmZsb3c6ICR7KHsgbWF4SGVpZ2h0IH0pID0+IChtYXhIZWlnaHQgPyAnYXV0bycgOiB1bmRlZmluZWQpfTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGluc2V0OiAwIGF1dG8gYXV0byAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zZm9ybTogJHsoeyBwb3NpdGlvbnMgfSkgPT4gcG9zaXRpb25zLnBvcHVwUG9zaXRpb259O1xuXG4gICZbZGF0YS1hbmltYXRlZD1cInRydWVcIl0ge1xuICAgIGFuaW1hdGlvbjogJHsoeyBwb3NpdGlvbnMsIHJldmVyc2VBbmltYXRpb24sIGFuaW1hdGlvbkR1cmF0aW9uIH0pID0+IGNzc2BcbiAgICAgICR7YW5pbWF0aW9uRHVyYXRpb259bXMgJHtcbiAgICAgICAgIXJldmVyc2VBbmltYXRpb24gPyBhbmltYXRpb24ocG9zaXRpb25zKSA6IGV4aXRBbmltYXRpb24ocG9zaXRpb25zKVxuICAgICAgfSBmb3J3YXJkc1xuICAgIGB9O1xuICB9XG5cbiAgJltkYXRhLWhhcy1hcnJvdz1cInRydWVcIl0ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUb3B9cHg7XG4gICAgICBsZWZ0OiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dMZWZ0fXB4O1xuICAgICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUcmFuc2Zvcm19XG4gICAgICAgIHJvdGF0ZSgkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMucm90YXRlfWRlZyk7XG4gICAgICBtYXJnaW4tbGVmdDogLSR7REVGQVVMVF9BUlJPV19XSURUSH1weDtcbiAgICAgIGJvcmRlci13aWR0aDogJHtERUZBVUxUX0FSUk9XX1dJRFRIfXB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nZXJ9XG4gICAgICAgIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXZpc2libGUtaW4tZG9tPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbmBcblxuY29uc3QgU3R5bGVkQ2hpbGRyZW5Db250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBpbmhlcml0O1xuXG4gICZbZGF0YS1jb250YWluZXItZnVsbC13aWR0aD1cInRydWVcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5gXG5cbnR5cGUgUG9wdXBQcm9wcyA9IHtcbiAgLyoqXG4gICAqIElkIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGlmIG5vdCBzZXQuIEl0IGlzIHVzZWQgZm9yIGFzc29jaWF0aW5nIHBvcHVwIHdyYXBwZXIgd2l0aCBwb3B1cCBwb3J0YWwuXG4gICAqL1xuICBpZD86IHN0cmluZ1xuICBjaGlsZHJlbjpcbiAgICB8IFJlYWN0Tm9kZVxuICAgIHwgKChyZW5kZXJQcm9wczoge1xuICAgICAgICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgICAgICAgb25CbHVyOiAoKSA9PiB2b2lkXG4gICAgICAgIG9uRm9jdXM6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyRW50ZXI6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyTGVhdmU6ICgpID0+IHZvaWRcbiAgICAgICAgcmVmOiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPlxuICAgICAgfSkgPT4gUmVhY3ROb2RlKVxuICBtYXhXaWR0aD86IG51bWJlciB8IHN0cmluZ1xuICAvKipcbiAgICogYGF1dG9gIHBsYWNlbWVudCB3aWxsIGNoYW5nZSB0aGUgcG9zaXRpb24gb2YgdGhlIHBvcHVwIGlmIGl0IGRvZXNuJ3QgZml0IGluIHRoZSB2aWV3cG9ydC5cbiAgICovXG4gIHBsYWNlbWVudD86IFBvcHVwUGxhY2VtZW50XG4gIC8qKlxuICAgKiBBbGlnbiB0aGUgcG9wdXAgdG8gdGhlIHN0YXJ0IG9yIGNlbnRlciBvZiB0aGUgY2hpbGRyZW4uXG4gICAqL1xuICBhbGlnbj86IFBvcHVwQWxpZ25cbiAgLyoqXG4gICAqIENvbnRlbnQgb2YgdGhlIHBvcHVwLCBwcmVmZXJhYmx5IHRleHQgaW5zaWRlLlxuICAgKi9cbiAgdGV4dD86IFJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIEl0IHdpbGwgYWRkIGB3aWR0aDogMTAwJWAgdG8gdGhlIHBvcHVwIGNvbnRhaW5lci5cbiAgICovXG4gIGNvbnRhaW5lckZ1bGxXaWR0aD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIEl0IHdpbGwgZm9yY2UgZGlzcGxheSBwb3B1cC4gVGhpcyBjYW4gYmUgdXNlZnVsIGlmIHlvdSBuZWVkIHRvIGFsd2F5cyBkaXNwbGF5IHRoZSBwb3B1cCB3aXRob3V0IGhvdmVyIG5lZWRlZC5cbiAgICovXG4gIHZpc2libGU/OiBib29sZWFuXG4gIGlubmVyUmVmPzogUmVmPEhUTUxEaXZFbGVtZW50IHwgbnVsbD5cbiAgcm9sZT86IHN0cmluZ1xuICAnZGF0YS10ZXN0aWQnPzogc3RyaW5nXG4gIGhhc0Fycm93PzogYm9vbGVhblxuICBvbkNsb3NlPzogKCkgPT4gdm9pZFxuICB0YWJJbmRleD86IG51bWJlclxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlclxuICAnYXJpYS1oYXNwb3B1cCc/OiBIVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5bJ2FyaWEtaGFzcG9wdXAnXVxuICBoaWRlT25DbGlja091dHNpZGU/OiBib29sZWFuXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGRlYm91bmNlVGltZSB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgbm90IGRlYm91bmNlIHRoZSBob3ZlciBldmVudCBhbmQgd2lsbCBiZSBkaXNwbGF5ZWQgaW5zdGFudGx5LlxuICAgKiBJZiBzZXQgdG8gMCBpdCB3aWxsIGRpc2FibGUgZGVib3VuY2UuXG4gICAqL1xuICBkZWJvdW5jZURlbGF5PzogbnVtYmVyXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGEgbWF4IGhlaWdodCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgYW5pbWF0aW9uIGlzIGRpc2FibGVkLCBvciBpdCB3aWxsIG5vdCB3b3JrIHByb3Blcmx5IG9uIHNvbWUgYnJvd3NlcnMuXG4gICAqL1xuICBtYXhIZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgLyoqXG4gICAqIFdpbGwgcmVtb3ZlIHRoZSBhbmltYXRpb24gb24gdGhlIHBvcHVwIGlmIHNldCB0byBmYWxzZS5cbiAgICovXG4gIGRpc2FibGVBbmltYXRpb24/OiBib29sZWFuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgcG9ydGFsIHRhcmdldCBpcyBjaGlsZHJlbiBjb250YWluZXIgb3IgZG9jdW1lbnQuYm9keSBpZiBjaGlsZHJlbiBpcyBhIGZ1bmN0aW9uLiBZb3UgY2FuIG92ZXJyaWRlIHRoaXNcbiAgICogYmVoYXZpb3IgYnkgc2V0dGluZyBhIHBvcnRhbFRhcmdldCBwcm9wLlxuICAgKi9cbiAgcG9ydGFsVGFyZ2V0PzogSFRNTEVsZW1lbnRcbiAgLyoqXG4gICAqIElmIHlvdSBzZXQgdGhpcyB0byB0cnVlLCB0aGUgcG9wdXAgd2lsbCBiZSByZW5kZXJlZCBpbiB0aGUgRE9NIG9ubHkgd2hlbiBpdCBpcyB2aXNpYmxlLlxuICAgKiBXaGVuIHNldCB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgYWx3YXlzIGJlIHJlbmRlcmVkIGluIHRoZSBET00uIEJ5IGRlZmF1bHQgdGhpcyB2YWx1ZSBpcyBzZXQgdG8gYHRydWVgLCBpZiBmb3Igc29tZVxuICAgKiByZWFzb24geW91IG5lZWQgdG8gZGlzYWJsZSBpdCwgeW91IGNhbiBzZXQgaXQgdG8gYGZhbHNlYC5cbiAgICovXG4gIGR5bmFtaWNEb21SZW5kZXJpbmc/OiBib29sZWFuXG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbCBUaGlzIGNvbXBvbmVudCBpcyBleHBlcmltZW50YWwgYW5kIG1heSBiZSBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgaW4gdGhlIGZ1dHVyZS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBvcHVwID0gZm9yd2FyZFJlZihcbiAgKFxuICAgIHtcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgdGV4dCA9ICcnLFxuICAgICAgcGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgYWxpZ24gPSAnY2VudGVyJyxcbiAgICAgIGlkLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgbWF4V2lkdGggPSAnMTQuNXJlbScsXG4gICAgICBtYXhIZWlnaHQsXG4gICAgICB2aXNpYmxlLFxuICAgICAgaW5uZXJSZWYsXG4gICAgICByb2xlID0gJ3BvcHVwJyxcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBoYXNBcnJvdyA9IHRydWUsXG4gICAgICBvbkNsb3NlLFxuICAgICAgdGFiSW5kZXggPSAwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgJ2FyaWEtaGFzcG9wdXAnOiBhcmlhSGFzUG9wdXAsXG4gICAgICBoaWRlT25DbGlja091dHNpZGUgPSBmYWxzZSxcbiAgICAgIGRlYm91bmNlRGVsYXkgPSBERUZBVUxUX0RFQk9VTkNFX0RVUkFUSU9OLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbiA9IGZhbHNlLFxuICAgICAgcG9ydGFsVGFyZ2V0LFxuICAgICAgZHluYW1pY0RvbVJlbmRlcmluZyA9IHRydWUsXG4gICAgfTogUG9wdXBQcm9wcyxcbiAgICByZWY6IFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICkgPT4ge1xuICAgIGNvbnN0IGNoaWxkcmVuUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUoaW5uZXJSZWYsICgpID0+IGNoaWxkcmVuUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCBpbm5lclBvcHVwUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCB0aW1lciA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4odW5kZWZpbmVkKVxuICAgIGNvbnN0IHBvcHVwUG9ydGFsVGFyZ2V0ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAocG9ydGFsVGFyZ2V0KSByZXR1cm4gcG9ydGFsVGFyZ2V0XG5cbiAgICAgIGlmIChyb2xlID09PSAnZGlhbG9nJykge1xuICAgICAgICBpZiAoY2hpbGRyZW5SZWYuY3VycmVudCkgcmV0dXJuIGNoaWxkcmVuUmVmLmN1cnJlbnRcbiAgICAgICAgaWYgKGlzQ2xpZW50U2lkZSkgcmV0dXJuIGRvY3VtZW50LmJvZHlcblxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuXG4gICAgICAvLyBXZSBjaGVjayBpZiB3aW5kb3cgZXhpc3RzIGZvciBTU1JcbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnQuYm9keVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVsbFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIH0sIFtwb3J0YWxUYXJnZXQsIHJvbGUsIGNoaWxkcmVuUmVmLmN1cnJlbnRdKVxuXG4gICAgLy8gVGhlcmUgYXJlIHNvbWUgaXNzdWUgd2hlbiBtaXhpbmcgYW5pbWF0aW9uIGFuZCBtYXhIZWlnaHQgb24gc29tZSBicm93c2Vycywgc28gd2UgZGlzYWJsZSBhbmltYXRpb24gaWYgbWF4SGVpZ2h0IGlzIHNldC5cbiAgICBjb25zdCBhbmltYXRpb25EdXJhdGlvbiA9XG4gICAgICBkaXNhYmxlQW5pbWF0aW9uIHx8IG1heEhlaWdodCA/IDAgOiBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTlxuXG4gICAgLy8gRGVib3VuY2UgdGltZXIgd2lsbCBiZSB1c2VkIHRvIHByZXZlbnQgdGhlIHBvcHVwIGZyb20gZmxpY2tlcmluZyB3aGVuIHRoZSB1c2VyIG1vdmVzIHRoZSBtb3VzZSBvdXQgYW5kIGluIHRoZSBjaGlsZHJlbiBlbGVtZW50LlxuICAgIGNvbnN0IGRlYm91bmNlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KHVuZGVmaW5lZClcbiAgICBjb25zdCBbdmlzaWJsZUluRG9tLCBzZXRWaXNpYmxlSW5Eb21dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3JldmVyc2VBbmltYXRpb24sIHNldFJldmVyc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bvc2l0aW9ucywgc2V0UG9zaXRpb25zXSA9IHVzZVN0YXRlPFBvc2l0aW9uc1R5cGU+KHtcbiAgICAgIC4uLkRFRkFVTFRfUE9TSVRJT05TLFxuICAgIH0pXG4gICAgY29uc3QgdW5pcXVlSWQgPSB1c2VJZCgpXG4gICAgY29uc3QgZ2VuZXJhdGVkSWQgPSBpZCA/PyB1bmlxdWVJZFxuICAgIGNvbnN0IGlzQ29udHJvbGxlZCA9IHZpc2libGUgIT09IHVuZGVmaW5lZFxuXG4gICAgY29uc3QgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgIGlmIChjaGlsZHJlblJlZi5jdXJyZW50ICYmIGlubmVyUG9wdXBSZWYuY3VycmVudCkge1xuICAgICAgICBzZXRQb3NpdGlvbnMoXG4gICAgICAgICAgY29tcHV0ZVBvc2l0aW9ucyh7XG4gICAgICAgICAgICBjaGlsZHJlblJlZixcbiAgICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICAgIHBvcHVwUmVmOiBpbm5lclBvcHVwUmVmLFxuICAgICAgICAgICAgcG9wdXBQb3J0YWxUYXJnZXQ6IHBvcHVwUG9ydGFsVGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgaGFzQXJyb3csXG4gICAgICAgICAgICBhbGlnbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0sIFtoYXNBcnJvdywgcGxhY2VtZW50LCBwb3B1cFBvcnRhbFRhcmdldCwgYWxpZ25dKVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB3ZSBuZWVkIHRvIHJlY29tcHV0ZSBwb3NpdGlvbnMgb2YgcG9wdXAgZHVlIHRvIHdpbmRvdyBzY3JvbGwgb3IgcmVzaXplLlxuICAgICAqL1xuICAgIGNvbnN0IG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAvLyBXZSByZW1vdmUgYW5pbWF0aW9uIG9uIHNjcm9sbCBvciB0aGUgYW5pbWF0aW9uIHdpbGwgcmVzdGFydCBvbiBldmVyeSBzY3JvbGxcbiAgICAgIGlmIChpbm5lclBvcHVwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9ICdub25lJ1xuICAgICAgfVxuXG4gICAgICBnZW5lcmF0ZVBvcHVwUG9zaXRpb25zKClcbiAgICB9LCBbZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucywgaW5uZXJQb3B1cFJlZl0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gcmVtb3ZlIHBvcHVwIHBvcnRhbCBmcm9tIERPTSBhbmQgcmVtb3ZlIGV2ZW50IGxpc3RlbmVyIHRvIGl0LlxuICAgICAqL1xuICAgIGNvbnN0IHVubW91bnRQb3B1cEZyb21Eb20gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBzZXRWaXNpYmxlSW5Eb20oZmFsc2UpXG4gICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuXG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICB9LCBbb25XaW5kb3dDaGFuZ2VEZXRlY3RlZF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gaGlkZSBwb3B1cC4gQSB0aW1lb3V0IGlzIHNldCB0byBhbGxvdyBhbmltYXRpb24gZW5kLCB0aGVuIHJlbW92ZVxuICAgICAqIHBvcHVwIGZyb20gZG9tLlxuICAgICAqL1xuICAgIGNvbnN0IGNsb3NlUG9wdXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgc2V0UmV2ZXJzZUFuaW1hdGlvbih0cnVlKVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHVubW91bnRQb3B1cEZyb21Eb20oKVxuICAgICAgICAgICAgb25DbG9zZT8uKClcbiAgICAgICAgICB9LCBhbmltYXRpb25EdXJhdGlvbilcbiAgICAgICAgfSxcbiAgICAgICAgZGVib3VuY2VEZWxheSAmJiAhZGlzYWJsZUFuaW1hdGlvbiA/IGRlYm91bmNlRGVsYXkgOiAwLFxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFuaW1hdGlvbkR1cmF0aW9uLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbixcbiAgICAgIGRlYm91bmNlRGVsYXksXG4gICAgICBvbkNsb3NlLFxuICAgICAgdW5tb3VudFBvcHVwRnJvbURvbSxcbiAgICBdKVxuXG4gICAgLyoqXG4gICAgICogV2hlbiBtb3VzZSBob3ZlciBvciBzdG9wIGhvdmVyaW5nIGNoaWxkcmVuIHRoaXMgZnVuY3Rpb24gZGlzcGxheSBvciBoaWRlIHBvcHVwLiBBIHRpbWVvdXQgaXMgc2V0IHRvIGFsbG93IGFuaW1hdGlvblxuICAgICAqIGVuZCwgdGhlbiByZW1vdmUgcG9wdXAgZnJvbSBkb20uXG4gICAgICovXG4gICAgY29uc3Qgb25Qb2ludGVyRXZlbnQgPSB1c2VDYWxsYmFjayhcbiAgICAgIChpc1Zpc2libGU6IGJvb2xlYW4pID0+ICgpID0+IHtcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgYSBkZWJvdW5jZURlbGF5IGFuZCB0aGUgcG9wdXAgaXMgbm90IHZpc2libGUsIHdlIGNsZWFyIHRoZSBkZWJvdW5jZSB0aW1lclxuICAgICAgICBpZiAoIXZpc2libGUgJiYgZGVib3VuY2VEZWxheSA+IDAgJiYgZGVib3VuY2VUaW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXIuY3VycmVudClcbiAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gdW5tb3VudCB0aGUgcG9wdXBcbiAgICAgICAgLy8gVGhlcmUgaXMgZGVib3VuY2UgaW4gb3JkZXIgdG8gYXZvaWQgcG9wdXAgdG8gZmxpY2tlciB3aGVuIHdlIG1vdmUgdGhlIG1vdXNlIGZyb20gY2hpbGRyZW4gdG8gcG9wdXBcbiAgICAgICAgLy8gVGltZXIgaXMgdXNlZCB0byBmb2xsb3cgdGhlIGFuaW1hdGlvbiBkdXJhdGlvblxuICAgICAgICBpZiAoIWlzVmlzaWJsZSAmJiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgJiYgIWRlYm91bmNlVGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICB9IGVsc2UgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gbW91bnQgdGhlIHBvcHVwXG4gICAgICAgICAgLy8gSWYgdGhlIHRpbWVyIGV4aXN0cyBpdCBtZWFucyB0aGUgcG9wdXAgd2FzIGFib3V0IHRvIHVtb3VudCwgYnV0IHdlIGhvdmVyZWQgdGhlIGNoaWxkcmVuIGFnYWluLFxuICAgICAgICAgIC8vIHNvIHdlIGNsZWFyIHRoZSB0aW1lciBhbmQgdGhlIHBvcHVwIHdpbGwgbm90IGJlIHVubW91bnRlZFxuICAgICAgICAgIGlmICh0aW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICB0aW1lci5jdXJyZW50ID0gdW5kZWZpbmVkXG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIEFuZCBoZXJlIGlzIHdoZW4gd2UgY3VycmVudGx5IGFyZSBpbiBhIGRlYm91bmNlIHRpbWVyLCBpdCBtZWFucyBwb3B1cCB3YXMgaG92ZXJlZCBkdXJpbmdcbiAgICAgICAgICAvLyB0aGF0IHBlcmlvZCwgYW5kIHNvIHdlIGNhbiBjbGVhciBkZWJvdW5jZSB0aW1lclxuICAgICAgICAgIGlmIChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGRlYm91bmNlRGVsYXkgPiAwKSB7XG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgc2V0VmlzaWJsZUluRG9tKHRydWUpXG4gICAgICAgICAgICB9LCBkZWJvdW5jZURlbGF5KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGFydFRyYW5zaXRpb24oKCkgPT4ge1xuICAgICAgICAgICAgICBzZXRWaXNpYmxlSW5Eb20odHJ1ZSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW2Nsb3NlUG9wdXAsIGRlYm91bmNlRGVsYXksIHZpc2libGVdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIE9uY2UgcG9wdXAgaXMgdmlzaWJsZSBpbiB0aGUgZG9tIHdlIGNhbiBjb21wdXRlIHBvc2l0aW9ucywgdGhlbiBzZXQgaXQgdmlzaWJsZSBvbiBzY3JlZW4gYW5kIGFkZCBldmVudCB0b1xuICAgICAqIHJlY29tcHV0ZSBwb3NpdGlvbnMgb24gc2Nyb2xsIG9yIHNjcmVlbiByZXNpemUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICh2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucygpXG5cbiAgICAgICAgaWYgKHBvcHVwUG9ydGFsVGFyZ2V0ID09PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICAgICAgLy8gV2Ugd2FudCB0byBkZXRlY3Qgc2Nyb2xsIGFuZCByZXNpemUgaW4gb3JkZXIgdG8gcmVjb21wdXRlIHBvc2l0aW9ucyBvZiBwb3B1cFxuICAgICAgICAgIC8vIEFkZGluZyB0cnVlIGFzIHRoaXJkIHBhcmFtZXRlciB0byBldmVudCBsaXN0ZW5lciB3aWxsIGRldGVjdCBuZXN0ZWQgc2Nyb2xscy5cbiAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgICAgfVxuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQsIHRydWUpXG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCBvbldpbmRvd0NoYW5nZURldGVjdGVkLCB0cnVlKVxuICAgICAgICBpZiAodGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lci5jdXJyZW50KVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIFtcbiAgICAgIGdlbmVyYXRlUG9wdXBQb3NpdGlvbnMsXG4gICAgICBvbldpbmRvd0NoYW5nZURldGVjdGVkLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgbWF4V2lkdGgsXG4gICAgICBwb3B1cFBvcnRhbFRhcmdldCxcbiAgICBdKVxuXG4gICAgLy8gVGhpcyB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIHBvc2l0aW9ucyBhcmUgY29tcHV0ZWQgYW5kIHBvcHVwIGlzIHZpc2libGUgaW4gdGhlIGRvbS5cbiAgICB1c2VFZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh2aXNpYmxlSW5Eb20gJiYgaW5uZXJQb3B1cFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLm9wYWNpdHkgPSAnMSdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgIFtwb3NpdGlvbnNdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIElmIHBvcHVwIGhhcyBgdmlzaWJsZWAgcHJvcCBpdCBtZWFucyB0aGUgcG9wdXAgaXMgbWFudWFsbHkgY29udHJvbGxlZCB0aHJvdWdoIHRoaXMgcHJvcC5cbiAgICAgKiBJbiB0aGlzIGNhcyB3ZSBkb24ndCB3YW50IHRvIGRpc3BsYXkgcG9wdXAgb24gaG92ZXIsIGJ1dCBvbmx5IHdoZW4gYHZpc2libGVgIGlzIHRydWUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgb25Qb2ludGVyRXZlbnQodmlzaWJsZSkoKVxuICAgICAgfVxuICAgIH0sIFtpc0NvbnRyb2xsZWQsIG9uUG9pbnRlckV2ZW50LCB2aXNpYmxlXSlcblxuICAgIC8vIEhhbmRsZSBoaWRlIG9uIGVzYyBwcmVzcyBhbmQgaGlkZSBvbiBjbGljayBvdXRzaWRlXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGhhbmRsZUVzY1ByZXNzID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgY2xvc2VQb3B1cCgpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBvcHVwQ3VycmVudCA9IGlubmVyUG9wdXBSZWYuY3VycmVudFxuICAgICAgICBjb25zdCBjaGlsZHJlbkN1cnJlbnQgPSBjaGlsZHJlblJlZi5jdXJyZW50XG5cbiAgICAgICAgaWYgKHBvcHVwQ3VycmVudCAmJiBoaWRlT25DbGlja091dHNpZGUgJiYgIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBldmVudC50YXJnZXQgJiZcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldCAhPT0gcG9wdXBDdXJyZW50ICYmXG4gICAgICAgICAgICBldmVudC50YXJnZXQgIT09IGNoaWxkcmVuQ3VycmVudCAmJlxuICAgICAgICAgICAgIWNoaWxkcmVuQ3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmXG4gICAgICAgICAgICAhcG9wdXBDdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHZpc2libGVJbkRvbSkge1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgaGFuZGxlRXNjUHJlc3MpXG4gICAgICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBoYW5kbGVFc2NQcmVzcylcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBjbG9zZVBvcHVwLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgaW5uZXJQb3B1cFJlZixcbiAgICAgIGNoaWxkcmVuUmVmLFxuICAgICAgaGlkZU9uQ2xpY2tPdXRzaWRlLFxuICAgIF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGV2ZW50IHdpbGwgb2NjdXIgb25seSBmb3IgZGlhbG9nIGFuZCB3aWxsIHRyYXAgZm9jdXMgaW5zaWRlIHRoZSBkaWFsb2cuXG4gICAgICovXG4gICAgY29uc3QgaGFuZGxlRm9jdXNUcmFwOiBLZXlib2FyZEV2ZW50SGFuZGxlciA9IHVzZUNhbGxiYWNrKGV2ZW50ID0+IHtcbiAgICAgIGNvbnN0IGlzVGFiUHJlc3NlZCA9IGV2ZW50LmtleSA9PT0gJ1RhYidcbiAgICAgIGlmICghaXNUYWJQcmVzc2VkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcblxuICAgICAgY29uc3QgZm9jdXNhYmxlRWxzID1cbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50Py5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICAgICdhW2hyZWZdOm5vdChbZGlzYWJsZWRdKSwgYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSknLFxuICAgICAgICApID8/IFtdXG5cbiAgICAgIC8vIEhhbmRsZSBjYXNlIHdoZW4gbm8gaW50ZXJhY3RpdmUgZWxlbWVudCBhcmUgd2l0aGluIHRoZSBtb2RhbCAoaW5jbHVkaW5nIGNsb3NlIGljb24pXG4gICAgICBpZiAoZm9jdXNhYmxlRWxzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWwgPSBmb2N1c2FibGVFbHNbMF0gYXMgSFRNTEVsZW1lbnRcbiAgICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbCA9IGZvY3VzYWJsZUVsc1tcbiAgICAgICAgZm9jdXNhYmxlRWxzLmxlbmd0aCAtIDFcbiAgICAgIF0gYXMgSFRNTEVsZW1lbnRcblxuICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEZvY3VzYWJsZUVsIHx8XG4gICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICAgICkge1xuICAgICAgICAgIGxhc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0Rm9jdXNhYmxlRWwgfHxcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgZmlyc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9LCBbXSlcblxuICAgIC8qKlxuICAgICAqIFdpbGwgcmVuZGVyIGNoaWxkcmVuIGNvbmRpdGlvbmFsbHkgaWYgY2hpbGRyZW4gaXMgYSBmdW5jdGlvbiBvciBub3QuXG4gICAgICovXG4gICAgY29uc3QgcmVuZGVyQ2hpbGRyZW4gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBjaGlsZHJlbih7XG4gICAgICAgICAgb25CbHVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICBvbkZvY3VzOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckVudGVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckxlYXZlOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICByZWY6IGNoaWxkcmVuUmVmLFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkQ2hpbGRyZW5Db250YWluZXJcbiAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBvbkJsdXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIG9uRm9jdXM9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIHJlZj17Y2hpbGRyZW5SZWZ9XG4gICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgIG9uS2V5RG93bj17ZXZlbnQgPT4ge1xuICAgICAgICAgICAgb25LZXlEb3duPy4oZXZlbnQpXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkYXRhLWNvbnRhaW5lci1mdWxsLXdpZHRoPXtjb250YWluZXJGdWxsV2lkdGh9XG4gICAgICAgICAgYXJpYS1oYXNwb3B1cD17YXJpYUhhc1BvcHVwfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L1N0eWxlZENoaWxkcmVuQ29udGFpbmVyPlxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFyaWFIYXNQb3B1cCxcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgZ2VuZXJhdGVkSWQsXG4gICAgICBpc0NvbnRyb2xsZWQsXG4gICAgICBvbktleURvd24sXG4gICAgICBvblBvaW50ZXJFdmVudCxcbiAgICAgIHRhYkluZGV4LFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG91bGRSZW5kZXIgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghZHluYW1pY0RvbVJlbmRlcmluZykge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuXG4gICAgICBpZiAoZHluYW1pY0RvbVJlbmRlcmluZyAmJiB2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfSwgW2R5bmFtaWNEb21SZW5kZXJpbmcsIHZpc2libGVJbkRvbV0pXG5cbiAgICBpZiAoIXRleHQpIHtcbiAgICAgIGlmICh0eXBlb2YgY2hpbGRyZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNoaWxkcmVuXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIHtyZW5kZXJDaGlsZHJlbigpfVxuICAgICAgICB7c2hvdWxkUmVuZGVyXG4gICAgICAgICAgPyBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICAgIDxTdHlsZWRQb3B1cFxuICAgICAgICAgICAgICAgIHJlZj17aW5uZXJQb3B1cFJlZn1cbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM9e3Bvc2l0aW9uc31cbiAgICAgICAgICAgICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0PXttYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICAgICAgICBpZD17Z2VuZXJhdGVkSWR9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICAgICAgcmV2ZXJzZUFuaW1hdGlvbj17cmV2ZXJzZUFuaW1hdGlvbn1cbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgICAgICAgICBkYXRhLWhhcy1hcnJvdz17aGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgb25DbGljaz17c3RvcENsaWNrUHJvcGFnYXRpb259XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbkR1cmF0aW9uPXthbmltYXRpb25EdXJhdGlvbn1cbiAgICAgICAgICAgICAgICBvbktleURvd249e3JvbGUgPT09ICdkaWFsb2cnID8gaGFuZGxlRm9jdXNUcmFwIDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAgIGlzRGlhbG9nPXtyb2xlID09PSAnZGlhbG9nJ31cbiAgICAgICAgICAgICAgICBkYXRhLXZpc2libGUtaW4tZG9tPXtcbiAgICAgICAgICAgICAgICAgICFkeW5hbWljRG9tUmVuZGVyaW5nID8gdmlzaWJsZUluRG9tIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEtYW5pbWF0ZWQ9e2FuaW1hdGlvbkR1cmF0aW9uID4gMCAmJiAhbWF4SGVpZ2h0fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3RleHR9XG4gICAgICAgICAgICAgIDwvU3R5bGVkUG9wdXA+LFxuICAgICAgICAgICAgICBwb3B1cFBvcnRhbFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IG51bGx9XG4gICAgICA8Lz5cbiAgICApXG4gIH0sXG4pXG4iXX0= */"));
56
+ }) => theme.colors.neutral.backgroundStronger, ' transparent transparent transparent;pointer-events:none;}}&[data-visible-in-dom="false"]{display:none;}' + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErRG9CIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7XG4gIEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTW91c2VFdmVudEhhbmRsZXIsXG4gIFJlYWN0Tm9kZSxcbiAgUmVmLFxuICBSZWZPYmplY3QsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgc3RhcnRUcmFuc2l0aW9uLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJZCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nXG5pbXBvcnQgeyBpc0NsaWVudFNpZGUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2lzQ2xpZW50U2lkZSdcbmltcG9ydCB0eXBlIHsgUG9zaXRpb25zVHlwZSB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB7IGFuaW1hdGlvbiwgZXhpdEFuaW1hdGlvbiB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB0eXBlIHsgUG9wdXBBbGlnbiwgUG9wdXBQbGFjZW1lbnQgfSBmcm9tICcuL2hlbHBlcnMnXG5pbXBvcnQge1xuICBERUZBVUxUX0FSUk9XX1dJRFRILFxuICBERUZBVUxUX1BPU0lUSU9OUyxcbiAgY29tcHV0ZVBvc2l0aW9ucyxcbn0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5jb25zdCBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTiA9IDIzMCAvLyBpbiBtc1xuY29uc3QgREVGQVVMVF9ERUJPVU5DRV9EVVJBVElPTiA9IDIwMCAvLyBpbiBtc1xuXG5jb25zdCBub29wID0gKCkgPT4ge31cblxudHlwZSBTdHlsZWRQb3B1cFByb3BzID0ge1xuICBtYXhXaWR0aDogbnVtYmVyIHwgc3RyaW5nXG4gIHBvc2l0aW9uczogUG9zaXRpb25zVHlwZVxuICByZXZlcnNlQW5pbWF0aW9uOiBib29sZWFuXG4gIG1heEhlaWdodD86IG51bWJlciB8IHN0cmluZ1xuICBhbmltYXRpb25EdXJhdGlvbj86IG51bWJlclxuICBpc0RpYWxvZzogYm9vbGVhblxufVxuXG4vKipcbiAqIFRoaXMgZXZlbnQgaGFuZGxlIGFsbG93IHVzIHRvIG5vdCBidWJibGUgdGhlIGV2ZW50IHRvIGRvY3VtZW50LmJvZHkgbGlrZSB0aGlzIHJlYWN0LXNlbGVjdCB3b3JrcyBmaW5lXG4gKi9cbmNvbnN0IHN0b3BDbGlja1Byb3BhZ2F0aW9uOiBNb3VzZUV2ZW50SGFuZGxlciA9IGV2ZW50ID0+IHtcbiAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKClcbn1cblxuY29uc3QgU3R5bGVkUG9wdXAgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ21heFdpZHRoJyxcbiAgICAgICdwb3NpdGlvbnMnLFxuICAgICAgJ3JldmVyc2VBbmltYXRpb24nLFxuICAgICAgJ21heEhlaWdodCcsXG4gICAgICAnYW5pbWF0aW9uRHVyYXRpb24nLFxuICAgICAgJ2lzRGlhbG9nJyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkUG9wdXBQcm9wcz5gXG4gIGJhY2tncm91bmQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZFN0cm9uZ2VyfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwudGV4dFN0cm9uZ2VyfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zcGFjZVsnMC41J119ICR7dGhlbWUuc3BhY2VbJzEnXX1gfTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1heC13aWR0aDogJHsoeyBtYXhXaWR0aCB9KSA9PlxuICAgIHR5cGVvZiBtYXhXaWR0aCA9PT0gJ251bWJlcicgPyBgJHttYXhXaWR0aH1weGAgOiBtYXhXaWR0aH07XG4gIG1heC1oZWlnaHQ6ICR7KHsgbWF4SGVpZ2h0IH0pID0+XG4gICAgdHlwZW9mIG1heEhlaWdodCA9PT0gJ251bWJlcicgPyBgJHttYXhIZWlnaHR9cHhgIDogbWF4SGVpZ2h0fTtcbiAgb3ZlcmZsb3c6ICR7KHsgbWF4SGVpZ2h0IH0pID0+IChtYXhIZWlnaHQgPyAnYXV0bycgOiB1bmRlZmluZWQpfTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGluc2V0OiAwIGF1dG8gYXV0byAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zZm9ybTogJHsoeyBwb3NpdGlvbnMgfSkgPT4gcG9zaXRpb25zLnBvcHVwUG9zaXRpb259O1xuXG4gICZbZGF0YS1hbmltYXRlZD1cInRydWVcIl0ge1xuICAgIGFuaW1hdGlvbjogJHsoeyBwb3NpdGlvbnMsIHJldmVyc2VBbmltYXRpb24sIGFuaW1hdGlvbkR1cmF0aW9uIH0pID0+IGNzc2BcbiAgICAgICR7YW5pbWF0aW9uRHVyYXRpb259bXMgJHtcbiAgICAgICAgIXJldmVyc2VBbmltYXRpb24gPyBhbmltYXRpb24ocG9zaXRpb25zKSA6IGV4aXRBbmltYXRpb24ocG9zaXRpb25zKVxuICAgICAgfSBmb3J3YXJkc1xuICAgIGB9O1xuICB9XG5cbiAgJltkYXRhLWhhcy1hcnJvdz1cInRydWVcIl0ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUb3B9cHg7XG4gICAgICBsZWZ0OiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dMZWZ0fXB4O1xuICAgICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUcmFuc2Zvcm19XG4gICAgICAgIHJvdGF0ZSgkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMucm90YXRlfWRlZyk7XG4gICAgICBtYXJnaW4tbGVmdDogLSR7REVGQVVMVF9BUlJPV19XSURUSH1weDtcbiAgICAgIGJvcmRlci13aWR0aDogJHtERUZBVUxUX0FSUk9XX1dJRFRIfXB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nZXJ9XG4gICAgICAgIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXZpc2libGUtaW4tZG9tPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbmBcblxuY29uc3QgU3R5bGVkQ2hpbGRyZW5Db250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBpbmhlcml0O1xuXG4gICZbZGF0YS1jb250YWluZXItZnVsbC13aWR0aD1cInRydWVcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5gXG5cbnR5cGUgUG9wdXBQcm9wcyA9IHtcbiAgLyoqXG4gICAqIElkIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGlmIG5vdCBzZXQuIEl0IGlzIHVzZWQgZm9yIGFzc29jaWF0aW5nIHBvcHVwIHdyYXBwZXIgd2l0aCBwb3B1cCBwb3J0YWwuXG4gICAqL1xuICBpZD86IHN0cmluZ1xuICBjaGlsZHJlbjpcbiAgICB8IFJlYWN0Tm9kZVxuICAgIHwgKChyZW5kZXJQcm9wczoge1xuICAgICAgICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgICAgICAgb25CbHVyOiAoKSA9PiB2b2lkXG4gICAgICAgIG9uRm9jdXM6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyRW50ZXI6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyTGVhdmU6ICgpID0+IHZvaWRcbiAgICAgICAgcmVmOiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPlxuICAgICAgfSkgPT4gUmVhY3ROb2RlKVxuICBtYXhXaWR0aD86IG51bWJlciB8IHN0cmluZ1xuICAvKipcbiAgICogYGF1dG9gIHBsYWNlbWVudCB3aWxsIGNoYW5nZSB0aGUgcG9zaXRpb24gb2YgdGhlIHBvcHVwIGlmIGl0IGRvZXNuJ3QgZml0IGluIHRoZSB2aWV3cG9ydC5cbiAgICovXG4gIHBsYWNlbWVudD86IFBvcHVwUGxhY2VtZW50XG4gIC8qKlxuICAgKiBBbGlnbiB0aGUgcG9wdXAgdG8gdGhlIHN0YXJ0IG9yIGNlbnRlciBvZiB0aGUgY2hpbGRyZW4uXG4gICAqL1xuICBhbGlnbj86IFBvcHVwQWxpZ25cbiAgLyoqXG4gICAqIENvbnRlbnQgb2YgdGhlIHBvcHVwLCBwcmVmZXJhYmx5IHRleHQgaW5zaWRlLlxuICAgKi9cbiAgdGV4dD86IFJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIEl0IHdpbGwgYWRkIGB3aWR0aDogMTAwJWAgdG8gdGhlIHBvcHVwIGNvbnRhaW5lci5cbiAgICovXG4gIGNvbnRhaW5lckZ1bGxXaWR0aD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIEl0IHdpbGwgZm9yY2UgZGlzcGxheSBwb3B1cC4gVGhpcyBjYW4gYmUgdXNlZnVsIGlmIHlvdSBuZWVkIHRvIGFsd2F5cyBkaXNwbGF5IHRoZSBwb3B1cCB3aXRob3V0IGhvdmVyIG5lZWRlZC5cbiAgICovXG4gIHZpc2libGU/OiBib29sZWFuXG4gIGlubmVyUmVmPzogUmVmPEhUTUxEaXZFbGVtZW50IHwgbnVsbD5cbiAgcm9sZT86IHN0cmluZ1xuICAnZGF0YS10ZXN0aWQnPzogc3RyaW5nXG4gIGhhc0Fycm93PzogYm9vbGVhblxuICBvbkNsb3NlPzogKCkgPT4gdm9pZFxuICB0YWJJbmRleD86IG51bWJlclxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlclxuICAnYXJpYS1oYXNwb3B1cCc/OiBIVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5bJ2FyaWEtaGFzcG9wdXAnXVxuICBoaWRlT25DbGlja091dHNpZGU/OiBib29sZWFuXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGRlYm91bmNlVGltZSB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgbm90IGRlYm91bmNlIHRoZSBob3ZlciBldmVudCBhbmQgd2lsbCBiZSBkaXNwbGF5ZWQgaW5zdGFudGx5LlxuICAgKiBJZiBzZXQgdG8gMCBpdCB3aWxsIGRpc2FibGUgZGVib3VuY2UuXG4gICAqL1xuICBkZWJvdW5jZURlbGF5PzogbnVtYmVyXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGEgbWF4IGhlaWdodCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgYW5pbWF0aW9uIGlzIGRpc2FibGVkLCBvciBpdCB3aWxsIG5vdCB3b3JrIHByb3Blcmx5IG9uIHNvbWUgYnJvd3NlcnMuXG4gICAqL1xuICBtYXhIZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgLyoqXG4gICAqIFdpbGwgcmVtb3ZlIHRoZSBhbmltYXRpb24gb24gdGhlIHBvcHVwIGlmIHNldCB0byBmYWxzZS5cbiAgICovXG4gIGRpc2FibGVBbmltYXRpb24/OiBib29sZWFuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgcG9ydGFsIHRhcmdldCBpcyBjaGlsZHJlbiBjb250YWluZXIgb3IgZG9jdW1lbnQuYm9keSBpZiBjaGlsZHJlbiBpcyBhIGZ1bmN0aW9uLiBZb3UgY2FuIG92ZXJyaWRlIHRoaXNcbiAgICogYmVoYXZpb3IgYnkgc2V0dGluZyBhIHBvcnRhbFRhcmdldCBwcm9wLlxuICAgKi9cbiAgcG9ydGFsVGFyZ2V0PzogSFRNTEVsZW1lbnRcbiAgLyoqXG4gICAqIElmIHlvdSBzZXQgdGhpcyB0byB0cnVlLCB0aGUgcG9wdXAgd2lsbCBiZSByZW5kZXJlZCBpbiB0aGUgRE9NIG9ubHkgd2hlbiBpdCBpcyB2aXNpYmxlLlxuICAgKiBXaGVuIHNldCB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgYWx3YXlzIGJlIHJlbmRlcmVkIGluIHRoZSBET00uIEJ5IGRlZmF1bHQgdGhpcyB2YWx1ZSBpcyBzZXQgdG8gYHRydWVgLCBpZiBmb3Igc29tZVxuICAgKiByZWFzb24geW91IG5lZWQgdG8gZGlzYWJsZSBpdCwgeW91IGNhbiBzZXQgaXQgdG8gYGZhbHNlYC5cbiAgICovXG4gIGR5bmFtaWNEb21SZW5kZXJpbmc/OiBib29sZWFuXG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbCBUaGlzIGNvbXBvbmVudCBpcyBleHBlcmltZW50YWwgYW5kIG1heSBiZSBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgaW4gdGhlIGZ1dHVyZS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBvcHVwID0gZm9yd2FyZFJlZihcbiAgKFxuICAgIHtcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgdGV4dCA9ICcnLFxuICAgICAgcGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgYWxpZ24gPSAnY2VudGVyJyxcbiAgICAgIGlkLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgbWF4V2lkdGggPSAnMTQuNXJlbScsXG4gICAgICBtYXhIZWlnaHQsXG4gICAgICB2aXNpYmxlLFxuICAgICAgaW5uZXJSZWYsXG4gICAgICByb2xlID0gJ3BvcHVwJyxcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBoYXNBcnJvdyA9IHRydWUsXG4gICAgICBvbkNsb3NlLFxuICAgICAgdGFiSW5kZXggPSAwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgJ2FyaWEtaGFzcG9wdXAnOiBhcmlhSGFzUG9wdXAsXG4gICAgICBoaWRlT25DbGlja091dHNpZGUgPSBmYWxzZSxcbiAgICAgIGRlYm91bmNlRGVsYXkgPSBERUZBVUxUX0RFQk9VTkNFX0RVUkFUSU9OLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbiA9IGZhbHNlLFxuICAgICAgcG9ydGFsVGFyZ2V0LFxuICAgICAgZHluYW1pY0RvbVJlbmRlcmluZyA9IHRydWUsXG4gICAgfTogUG9wdXBQcm9wcyxcbiAgICByZWY6IFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICkgPT4ge1xuICAgIGNvbnN0IGNoaWxkcmVuUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUoaW5uZXJSZWYsICgpID0+IGNoaWxkcmVuUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCBpbm5lclBvcHVwUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCB0aW1lciA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4odW5kZWZpbmVkKVxuICAgIGNvbnN0IHBvcHVwUG9ydGFsVGFyZ2V0ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAocG9ydGFsVGFyZ2V0KSByZXR1cm4gcG9ydGFsVGFyZ2V0XG5cbiAgICAgIGlmIChyb2xlID09PSAnZGlhbG9nJykge1xuICAgICAgICBpZiAoY2hpbGRyZW5SZWYuY3VycmVudCkgcmV0dXJuIGNoaWxkcmVuUmVmLmN1cnJlbnRcbiAgICAgICAgaWYgKGlzQ2xpZW50U2lkZSkgcmV0dXJuIGRvY3VtZW50LmJvZHlcblxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuXG4gICAgICAvLyBXZSBjaGVjayBpZiB3aW5kb3cgZXhpc3RzIGZvciBTU1JcbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnQuYm9keVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVsbFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIH0sIFtwb3J0YWxUYXJnZXQsIHJvbGUsIGNoaWxkcmVuUmVmLmN1cnJlbnRdKVxuXG4gICAgLy8gVGhlcmUgYXJlIHNvbWUgaXNzdWUgd2hlbiBtaXhpbmcgYW5pbWF0aW9uIGFuZCBtYXhIZWlnaHQgb24gc29tZSBicm93c2Vycywgc28gd2UgZGlzYWJsZSBhbmltYXRpb24gaWYgbWF4SGVpZ2h0IGlzIHNldC5cbiAgICBjb25zdCBhbmltYXRpb25EdXJhdGlvbiA9XG4gICAgICBkaXNhYmxlQW5pbWF0aW9uIHx8IG1heEhlaWdodCA/IDAgOiBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTlxuXG4gICAgLy8gRGVib3VuY2UgdGltZXIgd2lsbCBiZSB1c2VkIHRvIHByZXZlbnQgdGhlIHBvcHVwIGZyb20gZmxpY2tlcmluZyB3aGVuIHRoZSB1c2VyIG1vdmVzIHRoZSBtb3VzZSBvdXQgYW5kIGluIHRoZSBjaGlsZHJlbiBlbGVtZW50LlxuICAgIGNvbnN0IGRlYm91bmNlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KHVuZGVmaW5lZClcbiAgICBjb25zdCBbdmlzaWJsZUluRG9tLCBzZXRWaXNpYmxlSW5Eb21dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3JldmVyc2VBbmltYXRpb24sIHNldFJldmVyc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bvc2l0aW9ucywgc2V0UG9zaXRpb25zXSA9IHVzZVN0YXRlPFBvc2l0aW9uc1R5cGU+KHtcbiAgICAgIC4uLkRFRkFVTFRfUE9TSVRJT05TLFxuICAgIH0pXG4gICAgY29uc3QgdW5pcXVlSWQgPSB1c2VJZCgpXG4gICAgY29uc3QgZ2VuZXJhdGVkSWQgPSBpZCA/PyB1bmlxdWVJZFxuICAgIGNvbnN0IGlzQ29udHJvbGxlZCA9IHZpc2libGUgIT09IHVuZGVmaW5lZFxuXG4gICAgY29uc3QgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgIGlmIChjaGlsZHJlblJlZi5jdXJyZW50ICYmIGlubmVyUG9wdXBSZWYuY3VycmVudCkge1xuICAgICAgICBzZXRQb3NpdGlvbnMoXG4gICAgICAgICAgY29tcHV0ZVBvc2l0aW9ucyh7XG4gICAgICAgICAgICBjaGlsZHJlblJlZixcbiAgICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICAgIHBvcHVwUmVmOiBpbm5lclBvcHVwUmVmLFxuICAgICAgICAgICAgcG9wdXBQb3J0YWxUYXJnZXQ6IHBvcHVwUG9ydGFsVGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgaGFzQXJyb3csXG4gICAgICAgICAgICBhbGlnbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0sIFtoYXNBcnJvdywgcGxhY2VtZW50LCBwb3B1cFBvcnRhbFRhcmdldCwgYWxpZ25dKVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB3ZSBuZWVkIHRvIHJlY29tcHV0ZSBwb3NpdGlvbnMgb2YgcG9wdXAgZHVlIHRvIHdpbmRvdyBzY3JvbGwgb3IgcmVzaXplLlxuICAgICAqL1xuICAgIGNvbnN0IG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAvLyBXZSByZW1vdmUgYW5pbWF0aW9uIG9uIHNjcm9sbCBvciB0aGUgYW5pbWF0aW9uIHdpbGwgcmVzdGFydCBvbiBldmVyeSBzY3JvbGxcbiAgICAgIGlmIChpbm5lclBvcHVwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9ICdub25lJ1xuICAgICAgfVxuXG4gICAgICBnZW5lcmF0ZVBvcHVwUG9zaXRpb25zKClcbiAgICB9LCBbZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucywgaW5uZXJQb3B1cFJlZl0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gcmVtb3ZlIHBvcHVwIHBvcnRhbCBmcm9tIERPTSBhbmQgcmVtb3ZlIGV2ZW50IGxpc3RlbmVyIHRvIGl0LlxuICAgICAqL1xuICAgIGNvbnN0IHVubW91bnRQb3B1cEZyb21Eb20gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBzZXRWaXNpYmxlSW5Eb20oZmFsc2UpXG4gICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuXG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICB9LCBbb25XaW5kb3dDaGFuZ2VEZXRlY3RlZF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gaGlkZSBwb3B1cC4gQSB0aW1lb3V0IGlzIHNldCB0byBhbGxvdyBhbmltYXRpb24gZW5kLCB0aGVuIHJlbW92ZVxuICAgICAqIHBvcHVwIGZyb20gZG9tLlxuICAgICAqL1xuICAgIGNvbnN0IGNsb3NlUG9wdXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgc2V0UmV2ZXJzZUFuaW1hdGlvbih0cnVlKVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHVubW91bnRQb3B1cEZyb21Eb20oKVxuICAgICAgICAgICAgb25DbG9zZT8uKClcbiAgICAgICAgICB9LCBhbmltYXRpb25EdXJhdGlvbilcbiAgICAgICAgfSxcbiAgICAgICAgZGVib3VuY2VEZWxheSAmJiAhZGlzYWJsZUFuaW1hdGlvbiA/IGRlYm91bmNlRGVsYXkgOiAwLFxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFuaW1hdGlvbkR1cmF0aW9uLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbixcbiAgICAgIGRlYm91bmNlRGVsYXksXG4gICAgICBvbkNsb3NlLFxuICAgICAgdW5tb3VudFBvcHVwRnJvbURvbSxcbiAgICBdKVxuXG4gICAgLyoqXG4gICAgICogV2hlbiBtb3VzZSBob3ZlciBvciBzdG9wIGhvdmVyaW5nIGNoaWxkcmVuIHRoaXMgZnVuY3Rpb24gZGlzcGxheSBvciBoaWRlIHBvcHVwLiBBIHRpbWVvdXQgaXMgc2V0IHRvIGFsbG93IGFuaW1hdGlvblxuICAgICAqIGVuZCwgdGhlbiByZW1vdmUgcG9wdXAgZnJvbSBkb20uXG4gICAgICovXG4gICAgY29uc3Qgb25Qb2ludGVyRXZlbnQgPSB1c2VDYWxsYmFjayhcbiAgICAgIChpc1Zpc2libGU6IGJvb2xlYW4pID0+ICgpID0+IHtcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgYSBkZWJvdW5jZURlbGF5IGFuZCB0aGUgcG9wdXAgaXMgbm90IHZpc2libGUsIHdlIGNsZWFyIHRoZSBkZWJvdW5jZSB0aW1lclxuICAgICAgICBpZiAoIXZpc2libGUgJiYgZGVib3VuY2VEZWxheSA+IDAgJiYgZGVib3VuY2VUaW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXIuY3VycmVudClcbiAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gdW5tb3VudCB0aGUgcG9wdXBcbiAgICAgICAgLy8gVGhlcmUgaXMgZGVib3VuY2UgaW4gb3JkZXIgdG8gYXZvaWQgcG9wdXAgdG8gZmxpY2tlciB3aGVuIHdlIG1vdmUgdGhlIG1vdXNlIGZyb20gY2hpbGRyZW4gdG8gcG9wdXBcbiAgICAgICAgLy8gVGltZXIgaXMgdXNlZCB0byBmb2xsb3cgdGhlIGFuaW1hdGlvbiBkdXJhdGlvblxuICAgICAgICBpZiAoIWlzVmlzaWJsZSAmJiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgJiYgIWRlYm91bmNlVGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICB9IGVsc2UgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gbW91bnQgdGhlIHBvcHVwXG4gICAgICAgICAgLy8gSWYgdGhlIHRpbWVyIGV4aXN0cyBpdCBtZWFucyB0aGUgcG9wdXAgd2FzIGFib3V0IHRvIHVtb3VudCwgYnV0IHdlIGhvdmVyZWQgdGhlIGNoaWxkcmVuIGFnYWluLFxuICAgICAgICAgIC8vIHNvIHdlIGNsZWFyIHRoZSB0aW1lciBhbmQgdGhlIHBvcHVwIHdpbGwgbm90IGJlIHVubW91bnRlZFxuICAgICAgICAgIGlmICh0aW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICB0aW1lci5jdXJyZW50ID0gdW5kZWZpbmVkXG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIEFuZCBoZXJlIGlzIHdoZW4gd2UgY3VycmVudGx5IGFyZSBpbiBhIGRlYm91bmNlIHRpbWVyLCBpdCBtZWFucyBwb3B1cCB3YXMgaG92ZXJlZCBkdXJpbmdcbiAgICAgICAgICAvLyB0aGF0IHBlcmlvZCwgYW5kIHNvIHdlIGNhbiBjbGVhciBkZWJvdW5jZSB0aW1lclxuICAgICAgICAgIGlmIChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGRlYm91bmNlRGVsYXkgPiAwKSB7XG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgc2V0VmlzaWJsZUluRG9tKHRydWUpXG4gICAgICAgICAgICB9LCBkZWJvdW5jZURlbGF5KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGFydFRyYW5zaXRpb24oKCkgPT4ge1xuICAgICAgICAgICAgICBzZXRWaXNpYmxlSW5Eb20odHJ1ZSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW2Nsb3NlUG9wdXAsIGRlYm91bmNlRGVsYXksIHZpc2libGVdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIE9uY2UgcG9wdXAgaXMgdmlzaWJsZSBpbiB0aGUgZG9tIHdlIGNhbiBjb21wdXRlIHBvc2l0aW9ucywgdGhlbiBzZXQgaXQgdmlzaWJsZSBvbiBzY3JlZW4gYW5kIGFkZCBldmVudCB0b1xuICAgICAqIHJlY29tcHV0ZSBwb3NpdGlvbnMgb24gc2Nyb2xsIG9yIHNjcmVlbiByZXNpemUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICh2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucygpXG5cbiAgICAgICAgaWYgKHBvcHVwUG9ydGFsVGFyZ2V0ID09PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICAgICAgLy8gV2Ugd2FudCB0byBkZXRlY3Qgc2Nyb2xsIGFuZCByZXNpemUgaW4gb3JkZXIgdG8gcmVjb21wdXRlIHBvc2l0aW9ucyBvZiBwb3B1cFxuICAgICAgICAgIC8vIEFkZGluZyB0cnVlIGFzIHRoaXJkIHBhcmFtZXRlciB0byBldmVudCBsaXN0ZW5lciB3aWxsIGRldGVjdCBuZXN0ZWQgc2Nyb2xscy5cbiAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgICAgfVxuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQsIHRydWUpXG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCBvbldpbmRvd0NoYW5nZURldGVjdGVkLCB0cnVlKVxuICAgICAgICBpZiAodGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lci5jdXJyZW50KVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIFtcbiAgICAgIGdlbmVyYXRlUG9wdXBQb3NpdGlvbnMsXG4gICAgICBvbldpbmRvd0NoYW5nZURldGVjdGVkLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgbWF4V2lkdGgsXG4gICAgICBwb3B1cFBvcnRhbFRhcmdldCxcbiAgICBdKVxuXG4gICAgLy8gVGhpcyB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIHBvc2l0aW9ucyBhcmUgY29tcHV0ZWQgYW5kIHBvcHVwIGlzIHZpc2libGUgaW4gdGhlIGRvbS5cbiAgICB1c2VFZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh2aXNpYmxlSW5Eb20gJiYgaW5uZXJQb3B1cFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLm9wYWNpdHkgPSAnMSdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgIFtwb3NpdGlvbnNdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIElmIHBvcHVwIGhhcyBgdmlzaWJsZWAgcHJvcCBpdCBtZWFucyB0aGUgcG9wdXAgaXMgbWFudWFsbHkgY29udHJvbGxlZCB0aHJvdWdoIHRoaXMgcHJvcC5cbiAgICAgKiBJbiB0aGlzIGNhcyB3ZSBkb24ndCB3YW50IHRvIGRpc3BsYXkgcG9wdXAgb24gaG92ZXIsIGJ1dCBvbmx5IHdoZW4gYHZpc2libGVgIGlzIHRydWUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgb25Qb2ludGVyRXZlbnQodmlzaWJsZSkoKVxuICAgICAgfVxuICAgIH0sIFtpc0NvbnRyb2xsZWQsIG9uUG9pbnRlckV2ZW50LCB2aXNpYmxlXSlcblxuICAgIC8vIEhhbmRsZSBoaWRlIG9uIGVzYyBwcmVzcyBhbmQgaGlkZSBvbiBjbGljayBvdXRzaWRlXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGhhbmRsZUVzY1ByZXNzID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgY2xvc2VQb3B1cCgpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBvcHVwQ3VycmVudCA9IGlubmVyUG9wdXBSZWYuY3VycmVudFxuICAgICAgICBjb25zdCBjaGlsZHJlbkN1cnJlbnQgPSBjaGlsZHJlblJlZi5jdXJyZW50XG5cbiAgICAgICAgaWYgKHBvcHVwQ3VycmVudCAmJiBoaWRlT25DbGlja091dHNpZGUgJiYgIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBldmVudC50YXJnZXQgJiZcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldCAhPT0gcG9wdXBDdXJyZW50ICYmXG4gICAgICAgICAgICBldmVudC50YXJnZXQgIT09IGNoaWxkcmVuQ3VycmVudCAmJlxuICAgICAgICAgICAgIWNoaWxkcmVuQ3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmXG4gICAgICAgICAgICAhcG9wdXBDdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHZpc2libGVJbkRvbSkge1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgaGFuZGxlRXNjUHJlc3MpXG4gICAgICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBoYW5kbGVFc2NQcmVzcylcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBjbG9zZVBvcHVwLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgaW5uZXJQb3B1cFJlZixcbiAgICAgIGNoaWxkcmVuUmVmLFxuICAgICAgaGlkZU9uQ2xpY2tPdXRzaWRlLFxuICAgIF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGV2ZW50IHdpbGwgb2NjdXIgb25seSBmb3IgZGlhbG9nIGFuZCB3aWxsIHRyYXAgZm9jdXMgaW5zaWRlIHRoZSBkaWFsb2cuXG4gICAgICovXG4gICAgY29uc3QgaGFuZGxlRm9jdXNUcmFwOiBLZXlib2FyZEV2ZW50SGFuZGxlciA9IHVzZUNhbGxiYWNrKGV2ZW50ID0+IHtcbiAgICAgIGNvbnN0IGlzVGFiUHJlc3NlZCA9IGV2ZW50LmtleSA9PT0gJ1RhYidcbiAgICAgIGlmICghaXNUYWJQcmVzc2VkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcblxuICAgICAgY29uc3QgZm9jdXNhYmxlRWxzID1cbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50Py5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICAgICdhW2hyZWZdOm5vdChbZGlzYWJsZWRdKSwgYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSknLFxuICAgICAgICApID8/IFtdXG5cbiAgICAgIC8vIEhhbmRsZSBjYXNlIHdoZW4gbm8gaW50ZXJhY3RpdmUgZWxlbWVudCBhcmUgd2l0aGluIHRoZSBtb2RhbCAoaW5jbHVkaW5nIGNsb3NlIGljb24pXG4gICAgICBpZiAoZm9jdXNhYmxlRWxzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWwgPSBmb2N1c2FibGVFbHNbMF0gYXMgSFRNTEVsZW1lbnRcbiAgICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbCA9IGZvY3VzYWJsZUVsc1tcbiAgICAgICAgZm9jdXNhYmxlRWxzLmxlbmd0aCAtIDFcbiAgICAgIF0gYXMgSFRNTEVsZW1lbnRcblxuICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEZvY3VzYWJsZUVsIHx8XG4gICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICAgICkge1xuICAgICAgICAgIGxhc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0Rm9jdXNhYmxlRWwgfHxcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgZmlyc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9LCBbXSlcblxuICAgIC8qKlxuICAgICAqIFdpbGwgcmVuZGVyIGNoaWxkcmVuIGNvbmRpdGlvbmFsbHkgaWYgY2hpbGRyZW4gaXMgYSBmdW5jdGlvbiBvciBub3QuXG4gICAgICovXG4gICAgY29uc3QgcmVuZGVyQ2hpbGRyZW4gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBjaGlsZHJlbih7XG4gICAgICAgICAgb25CbHVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICBvbkZvY3VzOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckVudGVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckxlYXZlOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICByZWY6IGNoaWxkcmVuUmVmLFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkQ2hpbGRyZW5Db250YWluZXJcbiAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBvbkJsdXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIG9uRm9jdXM9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIHJlZj17Y2hpbGRyZW5SZWZ9XG4gICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgIG9uS2V5RG93bj17ZXZlbnQgPT4ge1xuICAgICAgICAgICAgb25LZXlEb3duPy4oZXZlbnQpXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkYXRhLWNvbnRhaW5lci1mdWxsLXdpZHRoPXtjb250YWluZXJGdWxsV2lkdGh9XG4gICAgICAgICAgYXJpYS1oYXNwb3B1cD17YXJpYUhhc1BvcHVwfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L1N0eWxlZENoaWxkcmVuQ29udGFpbmVyPlxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFyaWFIYXNQb3B1cCxcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgZ2VuZXJhdGVkSWQsXG4gICAgICBpc0NvbnRyb2xsZWQsXG4gICAgICBvbktleURvd24sXG4gICAgICBvblBvaW50ZXJFdmVudCxcbiAgICAgIHRhYkluZGV4LFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG91bGRSZW5kZXIgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghZHluYW1pY0RvbVJlbmRlcmluZykge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuXG4gICAgICBpZiAoZHluYW1pY0RvbVJlbmRlcmluZyAmJiB2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfSwgW2R5bmFtaWNEb21SZW5kZXJpbmcsIHZpc2libGVJbkRvbV0pXG5cbiAgICBpZiAoIXRleHQpIHtcbiAgICAgIGlmICh0eXBlb2YgY2hpbGRyZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNoaWxkcmVuXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIHtyZW5kZXJDaGlsZHJlbigpfVxuICAgICAgICB7c2hvdWxkUmVuZGVyXG4gICAgICAgICAgPyBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICAgIDxTdHlsZWRQb3B1cFxuICAgICAgICAgICAgICAgIHJlZj17aW5uZXJQb3B1cFJlZn1cbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM9e3Bvc2l0aW9uc31cbiAgICAgICAgICAgICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0PXttYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICAgICAgICBpZD17Z2VuZXJhdGVkSWR9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICAgICAgcmV2ZXJzZUFuaW1hdGlvbj17cmV2ZXJzZUFuaW1hdGlvbn1cbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgICAgICAgICBkYXRhLWhhcy1hcnJvdz17aGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgb25DbGljaz17c3RvcENsaWNrUHJvcGFnYXRpb259XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbkR1cmF0aW9uPXthbmltYXRpb25EdXJhdGlvbn1cbiAgICAgICAgICAgICAgICBvbktleURvd249e3JvbGUgPT09ICdkaWFsb2cnID8gaGFuZGxlRm9jdXNUcmFwIDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAgIGlzRGlhbG9nPXtyb2xlID09PSAnZGlhbG9nJ31cbiAgICAgICAgICAgICAgICBkYXRhLXZpc2libGUtaW4tZG9tPXtcbiAgICAgICAgICAgICAgICAgICFkeW5hbWljRG9tUmVuZGVyaW5nID8gdmlzaWJsZUluRG9tIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEtYW5pbWF0ZWQ9e2FuaW1hdGlvbkR1cmF0aW9uID4gMCAmJiAhbWF4SGVpZ2h0fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3RleHR9XG4gICAgICAgICAgICAgIDwvU3R5bGVkUG9wdXA+LFxuICAgICAgICAgICAgICBwb3B1cFBvcnRhbFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IG51bGx9XG4gICAgICA8Lz5cbiAgICApXG4gIH0sXG4pXG4iXX0= */"));
57
57
  const StyledChildrenContainer = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "production" ? {
58
58
  target: "e4h1g860"
59
59
  } : {
@@ -64,7 +64,7 @@ const StyledChildrenContainer = /* @__PURE__ */ _styled("div", process.env.NODE_
64
64
  styles: 'display:inherit;&[data-container-full-width="true"]{width:100%;}'
65
65
  } : {
66
66
  name: "1y7vhm4",
67
- styles: 'display:inherit;&[data-container-full-width="true"]{width:100%;}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrSDBDIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7XG4gIEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTW91c2VFdmVudEhhbmRsZXIsXG4gIFJlYWN0Tm9kZSxcbiAgUmVmLFxuICBSZWZPYmplY3QsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgc3RhcnRUcmFuc2l0aW9uLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJZCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nXG5pbXBvcnQgeyBpc0NsaWVudFNpZGUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2lzQ2xpZW50U2lkZSdcbmltcG9ydCB0eXBlIHsgUG9zaXRpb25zVHlwZSB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB7IGFuaW1hdGlvbiwgZXhpdEFuaW1hdGlvbiB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB0eXBlIHsgUG9wdXBBbGlnbiwgUG9wdXBQbGFjZW1lbnQgfSBmcm9tICcuL2hlbHBlcnMnXG5pbXBvcnQge1xuICBERUZBVUxUX0FSUk9XX1dJRFRILFxuICBERUZBVUxUX1BPU0lUSU9OUyxcbiAgY29tcHV0ZVBvc2l0aW9ucyxcbn0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5jb25zdCBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTiA9IDIzMCAvLyBpbiBtc1xuY29uc3QgREVGQVVMVF9ERUJPVU5DRV9EVVJBVElPTiA9IDIwMCAvLyBpbiBtc1xuXG5mdW5jdGlvbiBub29wKCkge31cblxudHlwZSBTdHlsZWRQb3B1cFByb3BzID0ge1xuICBtYXhXaWR0aDogbnVtYmVyIHwgc3RyaW5nXG4gIHBvc2l0aW9uczogUG9zaXRpb25zVHlwZVxuICByZXZlcnNlQW5pbWF0aW9uOiBib29sZWFuXG4gIG1heEhlaWdodD86IG51bWJlciB8IHN0cmluZ1xuICBhbmltYXRpb25EdXJhdGlvbj86IG51bWJlclxuICBpc0RpYWxvZzogYm9vbGVhblxufVxuXG4vKipcbiAqIFRoaXMgZXZlbnQgaGFuZGxlIGFsbG93IHVzIHRvIG5vdCBidWJibGUgdGhlIGV2ZW50IHRvIGRvY3VtZW50LmJvZHkgbGlrZSB0aGlzIHJlYWN0LXNlbGVjdCB3b3JrcyBmaW5lXG4gKi9cbmNvbnN0IHN0b3BDbGlja1Byb3BhZ2F0aW9uOiBNb3VzZUV2ZW50SGFuZGxlciA9IGV2ZW50ID0+IHtcbiAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKClcbn1cblxuY29uc3QgU3R5bGVkUG9wdXAgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ21heFdpZHRoJyxcbiAgICAgICdwb3NpdGlvbnMnLFxuICAgICAgJ3JldmVyc2VBbmltYXRpb24nLFxuICAgICAgJ21heEhlaWdodCcsXG4gICAgICAnYW5pbWF0aW9uRHVyYXRpb24nLFxuICAgICAgJ2lzRGlhbG9nJyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkUG9wdXBQcm9wcz5gXG4gIGJhY2tncm91bmQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZFN0cm9uZ2VyfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwudGV4dFN0cm9uZ2VyfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zcGFjZVsnMC41J119ICR7dGhlbWUuc3BhY2VbJzEnXX1gfTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1heC13aWR0aDogJHsoeyBtYXhXaWR0aCB9KSA9PlxuICAgIHR5cGVvZiBtYXhXaWR0aCA9PT0gJ251bWJlcicgPyBgJHttYXhXaWR0aH1weGAgOiBtYXhXaWR0aH07XG4gIG1heC1oZWlnaHQ6ICR7KHsgbWF4SGVpZ2h0IH0pID0+XG4gICAgdHlwZW9mIG1heEhlaWdodCA9PT0gJ251bWJlcicgPyBgJHttYXhIZWlnaHR9cHhgIDogbWF4SGVpZ2h0fTtcbiAgb3ZlcmZsb3c6ICR7KHsgbWF4SGVpZ2h0IH0pID0+IChtYXhIZWlnaHQgPyAnYXV0bycgOiB1bmRlZmluZWQpfTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGluc2V0OiAwIGF1dG8gYXV0byAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zZm9ybTogJHsoeyBwb3NpdGlvbnMgfSkgPT4gcG9zaXRpb25zLnBvcHVwUG9zaXRpb259O1xuXG4gICZbZGF0YS1hbmltYXRlZD1cInRydWVcIl0ge1xuICAgIGFuaW1hdGlvbjogJHsoeyBwb3NpdGlvbnMsIHJldmVyc2VBbmltYXRpb24sIGFuaW1hdGlvbkR1cmF0aW9uIH0pID0+IGNzc2BcbiAgICAgICR7YW5pbWF0aW9uRHVyYXRpb259bXMgJHtcbiAgICAgICAgIXJldmVyc2VBbmltYXRpb24gPyBhbmltYXRpb24ocG9zaXRpb25zKSA6IGV4aXRBbmltYXRpb24ocG9zaXRpb25zKVxuICAgICAgfSBmb3J3YXJkc1xuICAgIGB9O1xuICB9XG5cbiAgJltkYXRhLWhhcy1hcnJvdz1cInRydWVcIl0ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUb3B9cHg7XG4gICAgICBsZWZ0OiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dMZWZ0fXB4O1xuICAgICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUcmFuc2Zvcm19XG4gICAgICAgIHJvdGF0ZSgkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMucm90YXRlfWRlZyk7XG4gICAgICBtYXJnaW4tbGVmdDogLSR7REVGQVVMVF9BUlJPV19XSURUSH1weDtcbiAgICAgIGJvcmRlci13aWR0aDogJHtERUZBVUxUX0FSUk9XX1dJRFRIfXB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nZXJ9XG4gICAgICAgIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXZpc2libGUtaW4tZG9tPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbmBcblxuY29uc3QgU3R5bGVkQ2hpbGRyZW5Db250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBpbmhlcml0O1xuXG4gICZbZGF0YS1jb250YWluZXItZnVsbC13aWR0aD1cInRydWVcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5gXG5cbnR5cGUgUG9wdXBQcm9wcyA9IHtcbiAgLyoqXG4gICAqIElkIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGlmIG5vdCBzZXQuIEl0IGlzIHVzZWQgZm9yIGFzc29jaWF0aW5nIHBvcHVwIHdyYXBwZXIgd2l0aCBwb3B1cCBwb3J0YWwuXG4gICAqL1xuICBpZD86IHN0cmluZ1xuICBjaGlsZHJlbjpcbiAgICB8IFJlYWN0Tm9kZVxuICAgIHwgKChyZW5kZXJQcm9wczoge1xuICAgICAgICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgICAgICAgb25CbHVyOiAoKSA9PiB2b2lkXG4gICAgICAgIG9uRm9jdXM6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyRW50ZXI6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyTGVhdmU6ICgpID0+IHZvaWRcbiAgICAgICAgcmVmOiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPlxuICAgICAgfSkgPT4gUmVhY3ROb2RlKVxuICBtYXhXaWR0aD86IG51bWJlciB8IHN0cmluZ1xuICAvKipcbiAgICogYGF1dG9gIHBsYWNlbWVudCB3aWxsIGNoYW5nZSB0aGUgcG9zaXRpb24gb2YgdGhlIHBvcHVwIGlmIGl0IGRvZXNuJ3QgZml0IGluIHRoZSB2aWV3cG9ydC5cbiAgICovXG4gIHBsYWNlbWVudD86IFBvcHVwUGxhY2VtZW50XG4gIC8qKlxuICAgKiBBbGlnbiB0aGUgcG9wdXAgdG8gdGhlIHN0YXJ0IG9yIGNlbnRlciBvZiB0aGUgY2hpbGRyZW4uXG4gICAqL1xuICBhbGlnbj86IFBvcHVwQWxpZ25cbiAgLyoqXG4gICAqIENvbnRlbnQgb2YgdGhlIHBvcHVwLCBwcmVmZXJhYmx5IHRleHQgaW5zaWRlLlxuICAgKi9cbiAgdGV4dD86IFJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIEl0IHdpbGwgYWRkIGB3aWR0aDogMTAwJWAgdG8gdGhlIHBvcHVwIGNvbnRhaW5lci5cbiAgICovXG4gIGNvbnRhaW5lckZ1bGxXaWR0aD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIEl0IHdpbGwgZm9yY2UgZGlzcGxheSBwb3B1cC4gVGhpcyBjYW4gYmUgdXNlZnVsIGlmIHlvdSBuZWVkIHRvIGFsd2F5cyBkaXNwbGF5IHRoZSBwb3B1cCB3aXRob3V0IGhvdmVyIG5lZWRlZC5cbiAgICovXG4gIHZpc2libGU/OiBib29sZWFuXG4gIGlubmVyUmVmPzogUmVmPEhUTUxEaXZFbGVtZW50IHwgbnVsbD5cbiAgcm9sZT86IHN0cmluZ1xuICAnZGF0YS10ZXN0aWQnPzogc3RyaW5nXG4gIGhhc0Fycm93PzogYm9vbGVhblxuICBvbkNsb3NlPzogKCkgPT4gdm9pZFxuICB0YWJJbmRleD86IG51bWJlclxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlclxuICAnYXJpYS1oYXNwb3B1cCc/OiBIVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5bJ2FyaWEtaGFzcG9wdXAnXVxuICBoaWRlT25DbGlja091dHNpZGU/OiBib29sZWFuXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGRlYm91bmNlVGltZSB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgbm90IGRlYm91bmNlIHRoZSBob3ZlciBldmVudCBhbmQgd2lsbCBiZSBkaXNwbGF5ZWQgaW5zdGFudGx5LlxuICAgKiBJZiBzZXQgdG8gMCBpdCB3aWxsIGRpc2FibGUgZGVib3VuY2UuXG4gICAqL1xuICBkZWJvdW5jZURlbGF5PzogbnVtYmVyXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGEgbWF4IGhlaWdodCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgYW5pbWF0aW9uIGlzIGRpc2FibGVkLCBvciBpdCB3aWxsIG5vdCB3b3JrIHByb3Blcmx5IG9uIHNvbWUgYnJvd3NlcnMuXG4gICAqL1xuICBtYXhIZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgLyoqXG4gICAqIFdpbGwgcmVtb3ZlIHRoZSBhbmltYXRpb24gb24gdGhlIHBvcHVwIGlmIHNldCB0byBmYWxzZS5cbiAgICovXG4gIGRpc2FibGVBbmltYXRpb24/OiBib29sZWFuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgcG9ydGFsIHRhcmdldCBpcyBjaGlsZHJlbiBjb250YWluZXIgb3IgZG9jdW1lbnQuYm9keSBpZiBjaGlsZHJlbiBpcyBhIGZ1bmN0aW9uLiBZb3UgY2FuIG92ZXJyaWRlIHRoaXNcbiAgICogYmVoYXZpb3IgYnkgc2V0dGluZyBhIHBvcnRhbFRhcmdldCBwcm9wLlxuICAgKi9cbiAgcG9ydGFsVGFyZ2V0PzogSFRNTEVsZW1lbnRcbiAgLyoqXG4gICAqIElmIHlvdSBzZXQgdGhpcyB0byB0cnVlLCB0aGUgcG9wdXAgd2lsbCBiZSByZW5kZXJlZCBpbiB0aGUgRE9NIG9ubHkgd2hlbiBpdCBpcyB2aXNpYmxlLlxuICAgKiBXaGVuIHNldCB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgYWx3YXlzIGJlIHJlbmRlcmVkIGluIHRoZSBET00uIEJ5IGRlZmF1bHQgdGhpcyB2YWx1ZSBpcyBzZXQgdG8gYHRydWVgLCBpZiBmb3Igc29tZVxuICAgKiByZWFzb24geW91IG5lZWQgdG8gZGlzYWJsZSBpdCwgeW91IGNhbiBzZXQgaXQgdG8gYGZhbHNlYC5cbiAgICovXG4gIGR5bmFtaWNEb21SZW5kZXJpbmc/OiBib29sZWFuXG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbCBUaGlzIGNvbXBvbmVudCBpcyBleHBlcmltZW50YWwgYW5kIG1heSBiZSBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgaW4gdGhlIGZ1dHVyZS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBvcHVwID0gZm9yd2FyZFJlZihcbiAgKFxuICAgIHtcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgdGV4dCA9ICcnLFxuICAgICAgcGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgYWxpZ24gPSAnY2VudGVyJyxcbiAgICAgIGlkLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgbWF4V2lkdGggPSAnMTQuNXJlbScsXG4gICAgICBtYXhIZWlnaHQsXG4gICAgICB2aXNpYmxlLFxuICAgICAgaW5uZXJSZWYsXG4gICAgICByb2xlID0gJ3BvcHVwJyxcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBoYXNBcnJvdyA9IHRydWUsXG4gICAgICBvbkNsb3NlLFxuICAgICAgdGFiSW5kZXggPSAwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgJ2FyaWEtaGFzcG9wdXAnOiBhcmlhSGFzUG9wdXAsXG4gICAgICBoaWRlT25DbGlja091dHNpZGUgPSBmYWxzZSxcbiAgICAgIGRlYm91bmNlRGVsYXkgPSBERUZBVUxUX0RFQk9VTkNFX0RVUkFUSU9OLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbiA9IGZhbHNlLFxuICAgICAgcG9ydGFsVGFyZ2V0LFxuICAgICAgZHluYW1pY0RvbVJlbmRlcmluZyA9IHRydWUsXG4gICAgfTogUG9wdXBQcm9wcyxcbiAgICByZWY6IFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICkgPT4ge1xuICAgIGNvbnN0IGNoaWxkcmVuUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUoaW5uZXJSZWYsICgpID0+IGNoaWxkcmVuUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCBpbm5lclBvcHVwUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCB0aW1lciA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4odW5kZWZpbmVkKVxuICAgIGNvbnN0IHBvcHVwUG9ydGFsVGFyZ2V0ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAocG9ydGFsVGFyZ2V0KSByZXR1cm4gcG9ydGFsVGFyZ2V0XG5cbiAgICAgIGlmIChyb2xlID09PSAnZGlhbG9nJykge1xuICAgICAgICBpZiAoY2hpbGRyZW5SZWYuY3VycmVudCkgcmV0dXJuIGNoaWxkcmVuUmVmLmN1cnJlbnRcbiAgICAgICAgaWYgKGlzQ2xpZW50U2lkZSkgcmV0dXJuIGRvY3VtZW50LmJvZHlcblxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuXG4gICAgICAvLyBXZSBjaGVjayBpZiB3aW5kb3cgZXhpc3RzIGZvciBTU1JcbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnQuYm9keVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVsbFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIH0sIFtwb3J0YWxUYXJnZXQsIHJvbGUsIGNoaWxkcmVuUmVmLmN1cnJlbnRdKVxuXG4gICAgLy8gVGhlcmUgYXJlIHNvbWUgaXNzdWUgd2hlbiBtaXhpbmcgYW5pbWF0aW9uIGFuZCBtYXhIZWlnaHQgb24gc29tZSBicm93c2Vycywgc28gd2UgZGlzYWJsZSBhbmltYXRpb24gaWYgbWF4SGVpZ2h0IGlzIHNldC5cbiAgICBjb25zdCBhbmltYXRpb25EdXJhdGlvbiA9XG4gICAgICBkaXNhYmxlQW5pbWF0aW9uIHx8IG1heEhlaWdodCA/IDAgOiBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTlxuXG4gICAgLy8gRGVib3VuY2UgdGltZXIgd2lsbCBiZSB1c2VkIHRvIHByZXZlbnQgdGhlIHBvcHVwIGZyb20gZmxpY2tlcmluZyB3aGVuIHRoZSB1c2VyIG1vdmVzIHRoZSBtb3VzZSBvdXQgYW5kIGluIHRoZSBjaGlsZHJlbiBlbGVtZW50LlxuICAgIGNvbnN0IGRlYm91bmNlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KHVuZGVmaW5lZClcbiAgICBjb25zdCBbdmlzaWJsZUluRG9tLCBzZXRWaXNpYmxlSW5Eb21dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3JldmVyc2VBbmltYXRpb24sIHNldFJldmVyc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bvc2l0aW9ucywgc2V0UG9zaXRpb25zXSA9IHVzZVN0YXRlPFBvc2l0aW9uc1R5cGU+KHtcbiAgICAgIC4uLkRFRkFVTFRfUE9TSVRJT05TLFxuICAgIH0pXG4gICAgY29uc3QgdW5pcXVlSWQgPSB1c2VJZCgpXG4gICAgY29uc3QgZ2VuZXJhdGVkSWQgPSBpZCA/PyB1bmlxdWVJZFxuICAgIGNvbnN0IGlzQ29udHJvbGxlZCA9IHZpc2libGUgIT09IHVuZGVmaW5lZFxuXG4gICAgY29uc3QgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgIGlmIChjaGlsZHJlblJlZi5jdXJyZW50ICYmIGlubmVyUG9wdXBSZWYuY3VycmVudCkge1xuICAgICAgICBzZXRQb3NpdGlvbnMoXG4gICAgICAgICAgY29tcHV0ZVBvc2l0aW9ucyh7XG4gICAgICAgICAgICBjaGlsZHJlblJlZixcbiAgICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICAgIHBvcHVwUmVmOiBpbm5lclBvcHVwUmVmLFxuICAgICAgICAgICAgcG9wdXBQb3J0YWxUYXJnZXQ6IHBvcHVwUG9ydGFsVGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgaGFzQXJyb3csXG4gICAgICAgICAgICBhbGlnbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0sIFtoYXNBcnJvdywgcGxhY2VtZW50LCBwb3B1cFBvcnRhbFRhcmdldCwgYWxpZ25dKVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB3ZSBuZWVkIHRvIHJlY29tcHV0ZSBwb3NpdGlvbnMgb2YgcG9wdXAgZHVlIHRvIHdpbmRvdyBzY3JvbGwgb3IgcmVzaXplLlxuICAgICAqL1xuICAgIGNvbnN0IG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAvLyBXZSByZW1vdmUgYW5pbWF0aW9uIG9uIHNjcm9sbCBvciB0aGUgYW5pbWF0aW9uIHdpbGwgcmVzdGFydCBvbiBldmVyeSBzY3JvbGxcbiAgICAgIGlmIChpbm5lclBvcHVwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9ICdub25lJ1xuICAgICAgfVxuXG4gICAgICBnZW5lcmF0ZVBvcHVwUG9zaXRpb25zKClcbiAgICB9LCBbZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucywgaW5uZXJQb3B1cFJlZl0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gcmVtb3ZlIHBvcHVwIHBvcnRhbCBmcm9tIERPTSBhbmQgcmVtb3ZlIGV2ZW50IGxpc3RlbmVyIHRvIGl0LlxuICAgICAqL1xuICAgIGNvbnN0IHVubW91bnRQb3B1cEZyb21Eb20gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBzZXRWaXNpYmxlSW5Eb20oZmFsc2UpXG4gICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuXG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICB9LCBbb25XaW5kb3dDaGFuZ2VEZXRlY3RlZF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gaGlkZSBwb3B1cC4gQSB0aW1lb3V0IGlzIHNldCB0byBhbGxvdyBhbmltYXRpb24gZW5kLCB0aGVuIHJlbW92ZVxuICAgICAqIHBvcHVwIGZyb20gZG9tLlxuICAgICAqL1xuICAgIGNvbnN0IGNsb3NlUG9wdXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgc2V0UmV2ZXJzZUFuaW1hdGlvbih0cnVlKVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHVubW91bnRQb3B1cEZyb21Eb20oKVxuICAgICAgICAgICAgb25DbG9zZT8uKClcbiAgICAgICAgICB9LCBhbmltYXRpb25EdXJhdGlvbilcbiAgICAgICAgfSxcbiAgICAgICAgZGVib3VuY2VEZWxheSAmJiAhZGlzYWJsZUFuaW1hdGlvbiA/IGRlYm91bmNlRGVsYXkgOiAwLFxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFuaW1hdGlvbkR1cmF0aW9uLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbixcbiAgICAgIGRlYm91bmNlRGVsYXksXG4gICAgICBvbkNsb3NlLFxuICAgICAgdW5tb3VudFBvcHVwRnJvbURvbSxcbiAgICBdKVxuXG4gICAgLyoqXG4gICAgICogV2hlbiBtb3VzZSBob3ZlciBvciBzdG9wIGhvdmVyaW5nIGNoaWxkcmVuIHRoaXMgZnVuY3Rpb24gZGlzcGxheSBvciBoaWRlIHBvcHVwLiBBIHRpbWVvdXQgaXMgc2V0IHRvIGFsbG93IGFuaW1hdGlvblxuICAgICAqIGVuZCwgdGhlbiByZW1vdmUgcG9wdXAgZnJvbSBkb20uXG4gICAgICovXG4gICAgY29uc3Qgb25Qb2ludGVyRXZlbnQgPSB1c2VDYWxsYmFjayhcbiAgICAgIChpc1Zpc2libGU6IGJvb2xlYW4pID0+ICgpID0+IHtcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgYSBkZWJvdW5jZURlbGF5IGFuZCB0aGUgcG9wdXAgaXMgbm90IHZpc2libGUsIHdlIGNsZWFyIHRoZSBkZWJvdW5jZSB0aW1lclxuICAgICAgICBpZiAoIXZpc2libGUgJiYgZGVib3VuY2VEZWxheSA+IDAgJiYgZGVib3VuY2VUaW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXIuY3VycmVudClcbiAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gdW5tb3VudCB0aGUgcG9wdXBcbiAgICAgICAgLy8gVGhlcmUgaXMgZGVib3VuY2UgaW4gb3JkZXIgdG8gYXZvaWQgcG9wdXAgdG8gZmxpY2tlciB3aGVuIHdlIG1vdmUgdGhlIG1vdXNlIGZyb20gY2hpbGRyZW4gdG8gcG9wdXBcbiAgICAgICAgLy8gVGltZXIgaXMgdXNlZCB0byBmb2xsb3cgdGhlIGFuaW1hdGlvbiBkdXJhdGlvblxuICAgICAgICBpZiAoIWlzVmlzaWJsZSAmJiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgJiYgIWRlYm91bmNlVGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICB9IGVsc2UgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gbW91bnQgdGhlIHBvcHVwXG4gICAgICAgICAgLy8gSWYgdGhlIHRpbWVyIGV4aXN0cyBpdCBtZWFucyB0aGUgcG9wdXAgd2FzIGFib3V0IHRvIHVtb3VudCwgYnV0IHdlIGhvdmVyZWQgdGhlIGNoaWxkcmVuIGFnYWluLFxuICAgICAgICAgIC8vIHNvIHdlIGNsZWFyIHRoZSB0aW1lciBhbmQgdGhlIHBvcHVwIHdpbGwgbm90IGJlIHVubW91bnRlZFxuICAgICAgICAgIGlmICh0aW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICB0aW1lci5jdXJyZW50ID0gdW5kZWZpbmVkXG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIEFuZCBoZXJlIGlzIHdoZW4gd2UgY3VycmVudGx5IGFyZSBpbiBhIGRlYm91bmNlIHRpbWVyLCBpdCBtZWFucyBwb3B1cCB3YXMgaG92ZXJlZCBkdXJpbmdcbiAgICAgICAgICAvLyB0aGF0IHBlcmlvZCwgYW5kIHNvIHdlIGNhbiBjbGVhciBkZWJvdW5jZSB0aW1lclxuICAgICAgICAgIGlmIChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGRlYm91bmNlRGVsYXkgPiAwKSB7XG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgc2V0VmlzaWJsZUluRG9tKHRydWUpXG4gICAgICAgICAgICB9LCBkZWJvdW5jZURlbGF5KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGFydFRyYW5zaXRpb24oKCkgPT4ge1xuICAgICAgICAgICAgICBzZXRWaXNpYmxlSW5Eb20odHJ1ZSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW2Nsb3NlUG9wdXAsIGRlYm91bmNlRGVsYXksIHZpc2libGVdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIE9uY2UgcG9wdXAgaXMgdmlzaWJsZSBpbiB0aGUgZG9tIHdlIGNhbiBjb21wdXRlIHBvc2l0aW9ucywgdGhlbiBzZXQgaXQgdmlzaWJsZSBvbiBzY3JlZW4gYW5kIGFkZCBldmVudCB0b1xuICAgICAqIHJlY29tcHV0ZSBwb3NpdGlvbnMgb24gc2Nyb2xsIG9yIHNjcmVlbiByZXNpemUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICh2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucygpXG5cbiAgICAgICAgaWYgKHBvcHVwUG9ydGFsVGFyZ2V0ID09PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICAgICAgLy8gV2Ugd2FudCB0byBkZXRlY3Qgc2Nyb2xsIGFuZCByZXNpemUgaW4gb3JkZXIgdG8gcmVjb21wdXRlIHBvc2l0aW9ucyBvZiBwb3B1cFxuICAgICAgICAgIC8vIEFkZGluZyB0cnVlIGFzIHRoaXJkIHBhcmFtZXRlciB0byBldmVudCBsaXN0ZW5lciB3aWxsIGRldGVjdCBuZXN0ZWQgc2Nyb2xscy5cbiAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgICAgfVxuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQsIHRydWUpXG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCBvbldpbmRvd0NoYW5nZURldGVjdGVkLCB0cnVlKVxuICAgICAgICBpZiAodGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lci5jdXJyZW50KVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIFtcbiAgICAgIGdlbmVyYXRlUG9wdXBQb3NpdGlvbnMsXG4gICAgICBvbldpbmRvd0NoYW5nZURldGVjdGVkLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgbWF4V2lkdGgsXG4gICAgICBwb3B1cFBvcnRhbFRhcmdldCxcbiAgICBdKVxuXG4gICAgLy8gVGhpcyB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIHBvc2l0aW9ucyBhcmUgY29tcHV0ZWQgYW5kIHBvcHVwIGlzIHZpc2libGUgaW4gdGhlIGRvbS5cbiAgICB1c2VFZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh2aXNpYmxlSW5Eb20gJiYgaW5uZXJQb3B1cFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLm9wYWNpdHkgPSAnMSdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgIFtwb3NpdGlvbnNdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIElmIHBvcHVwIGhhcyBgdmlzaWJsZWAgcHJvcCBpdCBtZWFucyB0aGUgcG9wdXAgaXMgbWFudWFsbHkgY29udHJvbGxlZCB0aHJvdWdoIHRoaXMgcHJvcC5cbiAgICAgKiBJbiB0aGlzIGNhcyB3ZSBkb24ndCB3YW50IHRvIGRpc3BsYXkgcG9wdXAgb24gaG92ZXIsIGJ1dCBvbmx5IHdoZW4gYHZpc2libGVgIGlzIHRydWUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgb25Qb2ludGVyRXZlbnQodmlzaWJsZSkoKVxuICAgICAgfVxuICAgIH0sIFtpc0NvbnRyb2xsZWQsIG9uUG9pbnRlckV2ZW50LCB2aXNpYmxlXSlcblxuICAgIC8vIEhhbmRsZSBoaWRlIG9uIGVzYyBwcmVzcyBhbmQgaGlkZSBvbiBjbGljayBvdXRzaWRlXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGhhbmRsZUVzY1ByZXNzID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgY2xvc2VQb3B1cCgpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBvcHVwQ3VycmVudCA9IGlubmVyUG9wdXBSZWYuY3VycmVudFxuICAgICAgICBjb25zdCBjaGlsZHJlbkN1cnJlbnQgPSBjaGlsZHJlblJlZi5jdXJyZW50XG5cbiAgICAgICAgaWYgKHBvcHVwQ3VycmVudCAmJiBoaWRlT25DbGlja091dHNpZGUgJiYgIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBldmVudC50YXJnZXQgJiZcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldCAhPT0gcG9wdXBDdXJyZW50ICYmXG4gICAgICAgICAgICBldmVudC50YXJnZXQgIT09IGNoaWxkcmVuQ3VycmVudCAmJlxuICAgICAgICAgICAgIWNoaWxkcmVuQ3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmXG4gICAgICAgICAgICAhcG9wdXBDdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHZpc2libGVJbkRvbSkge1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgaGFuZGxlRXNjUHJlc3MpXG4gICAgICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBoYW5kbGVFc2NQcmVzcylcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBjbG9zZVBvcHVwLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgaW5uZXJQb3B1cFJlZixcbiAgICAgIGNoaWxkcmVuUmVmLFxuICAgICAgaGlkZU9uQ2xpY2tPdXRzaWRlLFxuICAgIF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGV2ZW50IHdpbGwgb2NjdXIgb25seSBmb3IgZGlhbG9nIGFuZCB3aWxsIHRyYXAgZm9jdXMgaW5zaWRlIHRoZSBkaWFsb2cuXG4gICAgICovXG4gICAgY29uc3QgaGFuZGxlRm9jdXNUcmFwOiBLZXlib2FyZEV2ZW50SGFuZGxlciA9IHVzZUNhbGxiYWNrKGV2ZW50ID0+IHtcbiAgICAgIGNvbnN0IGlzVGFiUHJlc3NlZCA9IGV2ZW50LmtleSA9PT0gJ1RhYidcbiAgICAgIGlmICghaXNUYWJQcmVzc2VkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcblxuICAgICAgY29uc3QgZm9jdXNhYmxlRWxzID1cbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50Py5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICAgICdhW2hyZWZdOm5vdChbZGlzYWJsZWRdKSwgYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSknLFxuICAgICAgICApID8/IFtdXG5cbiAgICAgIC8vIEhhbmRsZSBjYXNlIHdoZW4gbm8gaW50ZXJhY3RpdmUgZWxlbWVudCBhcmUgd2l0aGluIHRoZSBtb2RhbCAoaW5jbHVkaW5nIGNsb3NlIGljb24pXG4gICAgICBpZiAoZm9jdXNhYmxlRWxzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWwgPSBmb2N1c2FibGVFbHNbMF0gYXMgSFRNTEVsZW1lbnRcbiAgICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbCA9IGZvY3VzYWJsZUVsc1tcbiAgICAgICAgZm9jdXNhYmxlRWxzLmxlbmd0aCAtIDFcbiAgICAgIF0gYXMgSFRNTEVsZW1lbnRcblxuICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEZvY3VzYWJsZUVsIHx8XG4gICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICAgICkge1xuICAgICAgICAgIGxhc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0Rm9jdXNhYmxlRWwgfHxcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgZmlyc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9LCBbXSlcblxuICAgIC8qKlxuICAgICAqIFdpbGwgcmVuZGVyIGNoaWxkcmVuIGNvbmRpdGlvbmFsbHkgaWYgY2hpbGRyZW4gaXMgYSBmdW5jdGlvbiBvciBub3QuXG4gICAgICovXG4gICAgY29uc3QgcmVuZGVyQ2hpbGRyZW4gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBjaGlsZHJlbih7XG4gICAgICAgICAgb25CbHVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICBvbkZvY3VzOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckVudGVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckxlYXZlOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICByZWY6IGNoaWxkcmVuUmVmLFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkQ2hpbGRyZW5Db250YWluZXJcbiAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBvbkJsdXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIG9uRm9jdXM9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIHJlZj17Y2hpbGRyZW5SZWZ9XG4gICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgIG9uS2V5RG93bj17ZXZlbnQgPT4ge1xuICAgICAgICAgICAgb25LZXlEb3duPy4oZXZlbnQpXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkYXRhLWNvbnRhaW5lci1mdWxsLXdpZHRoPXtjb250YWluZXJGdWxsV2lkdGh9XG4gICAgICAgICAgYXJpYS1oYXNwb3B1cD17YXJpYUhhc1BvcHVwfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L1N0eWxlZENoaWxkcmVuQ29udGFpbmVyPlxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFyaWFIYXNQb3B1cCxcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgZ2VuZXJhdGVkSWQsXG4gICAgICBpc0NvbnRyb2xsZWQsXG4gICAgICBvbktleURvd24sXG4gICAgICBvblBvaW50ZXJFdmVudCxcbiAgICAgIHRhYkluZGV4LFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG91bGRSZW5kZXIgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghZHluYW1pY0RvbVJlbmRlcmluZykge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuXG4gICAgICBpZiAoZHluYW1pY0RvbVJlbmRlcmluZyAmJiB2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfSwgW2R5bmFtaWNEb21SZW5kZXJpbmcsIHZpc2libGVJbkRvbV0pXG5cbiAgICBpZiAoIXRleHQpIHtcbiAgICAgIGlmICh0eXBlb2YgY2hpbGRyZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNoaWxkcmVuXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIHtyZW5kZXJDaGlsZHJlbigpfVxuICAgICAgICB7c2hvdWxkUmVuZGVyXG4gICAgICAgICAgPyBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICAgIDxTdHlsZWRQb3B1cFxuICAgICAgICAgICAgICAgIHJlZj17aW5uZXJQb3B1cFJlZn1cbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM9e3Bvc2l0aW9uc31cbiAgICAgICAgICAgICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0PXttYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICAgICAgICBpZD17Z2VuZXJhdGVkSWR9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICAgICAgcmV2ZXJzZUFuaW1hdGlvbj17cmV2ZXJzZUFuaW1hdGlvbn1cbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgICAgICAgICBkYXRhLWhhcy1hcnJvdz17aGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgb25DbGljaz17c3RvcENsaWNrUHJvcGFnYXRpb259XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbkR1cmF0aW9uPXthbmltYXRpb25EdXJhdGlvbn1cbiAgICAgICAgICAgICAgICBvbktleURvd249e3JvbGUgPT09ICdkaWFsb2cnID8gaGFuZGxlRm9jdXNUcmFwIDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAgIGlzRGlhbG9nPXtyb2xlID09PSAnZGlhbG9nJ31cbiAgICAgICAgICAgICAgICBkYXRhLXZpc2libGUtaW4tZG9tPXtcbiAgICAgICAgICAgICAgICAgICFkeW5hbWljRG9tUmVuZGVyaW5nID8gdmlzaWJsZUluRG9tIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEtYW5pbWF0ZWQ9e2FuaW1hdGlvbkR1cmF0aW9uID4gMCAmJiAhbWF4SGVpZ2h0fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3RleHR9XG4gICAgICAgICAgICAgIDwvU3R5bGVkUG9wdXA+LFxuICAgICAgICAgICAgICBwb3B1cFBvcnRhbFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IG51bGx9XG4gICAgICA8Lz5cbiAgICApXG4gIH0sXG4pXG4iXX0= */',
67
+ styles: 'display:inherit;&[data-container-full-width="true"]{width:100%;}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrSDBDIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1BvcHVwL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7XG4gIEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTW91c2VFdmVudEhhbmRsZXIsXG4gIFJlYWN0Tm9kZSxcbiAgUmVmLFxuICBSZWZPYmplY3QsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgc3RhcnRUcmFuc2l0aW9uLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJZCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nXG5pbXBvcnQgeyBpc0NsaWVudFNpZGUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2lzQ2xpZW50U2lkZSdcbmltcG9ydCB0eXBlIHsgUG9zaXRpb25zVHlwZSB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB7IGFuaW1hdGlvbiwgZXhpdEFuaW1hdGlvbiB9IGZyb20gJy4vYW5pbWF0aW9ucydcbmltcG9ydCB0eXBlIHsgUG9wdXBBbGlnbiwgUG9wdXBQbGFjZW1lbnQgfSBmcm9tICcuL2hlbHBlcnMnXG5pbXBvcnQge1xuICBERUZBVUxUX0FSUk9XX1dJRFRILFxuICBERUZBVUxUX1BPU0lUSU9OUyxcbiAgY29tcHV0ZVBvc2l0aW9ucyxcbn0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5jb25zdCBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTiA9IDIzMCAvLyBpbiBtc1xuY29uc3QgREVGQVVMVF9ERUJPVU5DRV9EVVJBVElPTiA9IDIwMCAvLyBpbiBtc1xuXG5jb25zdCBub29wID0gKCkgPT4ge31cblxudHlwZSBTdHlsZWRQb3B1cFByb3BzID0ge1xuICBtYXhXaWR0aDogbnVtYmVyIHwgc3RyaW5nXG4gIHBvc2l0aW9uczogUG9zaXRpb25zVHlwZVxuICByZXZlcnNlQW5pbWF0aW9uOiBib29sZWFuXG4gIG1heEhlaWdodD86IG51bWJlciB8IHN0cmluZ1xuICBhbmltYXRpb25EdXJhdGlvbj86IG51bWJlclxuICBpc0RpYWxvZzogYm9vbGVhblxufVxuXG4vKipcbiAqIFRoaXMgZXZlbnQgaGFuZGxlIGFsbG93IHVzIHRvIG5vdCBidWJibGUgdGhlIGV2ZW50IHRvIGRvY3VtZW50LmJvZHkgbGlrZSB0aGlzIHJlYWN0LXNlbGVjdCB3b3JrcyBmaW5lXG4gKi9cbmNvbnN0IHN0b3BDbGlja1Byb3BhZ2F0aW9uOiBNb3VzZUV2ZW50SGFuZGxlciA9IGV2ZW50ID0+IHtcbiAgZXZlbnQubmF0aXZlRXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKClcbn1cblxuY29uc3QgU3R5bGVkUG9wdXAgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ21heFdpZHRoJyxcbiAgICAgICdwb3NpdGlvbnMnLFxuICAgICAgJ3JldmVyc2VBbmltYXRpb24nLFxuICAgICAgJ21heEhlaWdodCcsXG4gICAgICAnYW5pbWF0aW9uRHVyYXRpb24nLFxuICAgICAgJ2lzRGlhbG9nJyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkUG9wdXBQcm9wcz5gXG4gIGJhY2tncm91bmQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZFN0cm9uZ2VyfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwudGV4dFN0cm9uZ2VyfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zcGFjZVsnMC41J119ICR7dGhlbWUuc3BhY2VbJzEnXX1gfTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1heC13aWR0aDogJHsoeyBtYXhXaWR0aCB9KSA9PlxuICAgIHR5cGVvZiBtYXhXaWR0aCA9PT0gJ251bWJlcicgPyBgJHttYXhXaWR0aH1weGAgOiBtYXhXaWR0aH07XG4gIG1heC1oZWlnaHQ6ICR7KHsgbWF4SGVpZ2h0IH0pID0+XG4gICAgdHlwZW9mIG1heEhlaWdodCA9PT0gJ251bWJlcicgPyBgJHttYXhIZWlnaHR9cHhgIDogbWF4SGVpZ2h0fTtcbiAgb3ZlcmZsb3c6ICR7KHsgbWF4SGVpZ2h0IH0pID0+IChtYXhIZWlnaHQgPyAnYXV0bycgOiB1bmRlZmluZWQpfTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGluc2V0OiAwIGF1dG8gYXV0byAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zZm9ybTogJHsoeyBwb3NpdGlvbnMgfSkgPT4gcG9zaXRpb25zLnBvcHVwUG9zaXRpb259O1xuXG4gICZbZGF0YS1hbmltYXRlZD1cInRydWVcIl0ge1xuICAgIGFuaW1hdGlvbjogJHsoeyBwb3NpdGlvbnMsIHJldmVyc2VBbmltYXRpb24sIGFuaW1hdGlvbkR1cmF0aW9uIH0pID0+IGNzc2BcbiAgICAgICR7YW5pbWF0aW9uRHVyYXRpb259bXMgJHtcbiAgICAgICAgIXJldmVyc2VBbmltYXRpb24gPyBhbmltYXRpb24ocG9zaXRpb25zKSA6IGV4aXRBbmltYXRpb24ocG9zaXRpb25zKVxuICAgICAgfSBmb3J3YXJkc1xuICAgIGB9O1xuICB9XG5cbiAgJltkYXRhLWhhcy1hcnJvdz1cInRydWVcIl0ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUb3B9cHg7XG4gICAgICBsZWZ0OiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dMZWZ0fXB4O1xuICAgICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMuYXJyb3dUcmFuc2Zvcm19XG4gICAgICAgIHJvdGF0ZSgkeyh7IHBvc2l0aW9ucyB9KSA9PiBwb3NpdGlvbnMucm90YXRlfWRlZyk7XG4gICAgICBtYXJnaW4tbGVmdDogLSR7REVGQVVMVF9BUlJPV19XSURUSH1weDtcbiAgICAgIGJvcmRlci13aWR0aDogJHtERUZBVUxUX0FSUk9XX1dJRFRIfXB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nZXJ9XG4gICAgICAgIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXZpc2libGUtaW4tZG9tPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbmBcblxuY29uc3QgU3R5bGVkQ2hpbGRyZW5Db250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBpbmhlcml0O1xuXG4gICZbZGF0YS1jb250YWluZXItZnVsbC13aWR0aD1cInRydWVcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5gXG5cbnR5cGUgUG9wdXBQcm9wcyA9IHtcbiAgLyoqXG4gICAqIElkIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGlmIG5vdCBzZXQuIEl0IGlzIHVzZWQgZm9yIGFzc29jaWF0aW5nIHBvcHVwIHdyYXBwZXIgd2l0aCBwb3B1cCBwb3J0YWwuXG4gICAqL1xuICBpZD86IHN0cmluZ1xuICBjaGlsZHJlbjpcbiAgICB8IFJlYWN0Tm9kZVxuICAgIHwgKChyZW5kZXJQcm9wczoge1xuICAgICAgICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgICAgICAgb25CbHVyOiAoKSA9PiB2b2lkXG4gICAgICAgIG9uRm9jdXM6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyRW50ZXI6ICgpID0+IHZvaWRcbiAgICAgICAgb25Qb2ludGVyTGVhdmU6ICgpID0+IHZvaWRcbiAgICAgICAgcmVmOiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPlxuICAgICAgfSkgPT4gUmVhY3ROb2RlKVxuICBtYXhXaWR0aD86IG51bWJlciB8IHN0cmluZ1xuICAvKipcbiAgICogYGF1dG9gIHBsYWNlbWVudCB3aWxsIGNoYW5nZSB0aGUgcG9zaXRpb24gb2YgdGhlIHBvcHVwIGlmIGl0IGRvZXNuJ3QgZml0IGluIHRoZSB2aWV3cG9ydC5cbiAgICovXG4gIHBsYWNlbWVudD86IFBvcHVwUGxhY2VtZW50XG4gIC8qKlxuICAgKiBBbGlnbiB0aGUgcG9wdXAgdG8gdGhlIHN0YXJ0IG9yIGNlbnRlciBvZiB0aGUgY2hpbGRyZW4uXG4gICAqL1xuICBhbGlnbj86IFBvcHVwQWxpZ25cbiAgLyoqXG4gICAqIENvbnRlbnQgb2YgdGhlIHBvcHVwLCBwcmVmZXJhYmx5IHRleHQgaW5zaWRlLlxuICAgKi9cbiAgdGV4dD86IFJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIEl0IHdpbGwgYWRkIGB3aWR0aDogMTAwJWAgdG8gdGhlIHBvcHVwIGNvbnRhaW5lci5cbiAgICovXG4gIGNvbnRhaW5lckZ1bGxXaWR0aD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIEl0IHdpbGwgZm9yY2UgZGlzcGxheSBwb3B1cC4gVGhpcyBjYW4gYmUgdXNlZnVsIGlmIHlvdSBuZWVkIHRvIGFsd2F5cyBkaXNwbGF5IHRoZSBwb3B1cCB3aXRob3V0IGhvdmVyIG5lZWRlZC5cbiAgICovXG4gIHZpc2libGU/OiBib29sZWFuXG4gIGlubmVyUmVmPzogUmVmPEhUTUxEaXZFbGVtZW50IHwgbnVsbD5cbiAgcm9sZT86IHN0cmluZ1xuICAnZGF0YS10ZXN0aWQnPzogc3RyaW5nXG4gIGhhc0Fycm93PzogYm9vbGVhblxuICBvbkNsb3NlPzogKCkgPT4gdm9pZFxuICB0YWJJbmRleD86IG51bWJlclxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlclxuICAnYXJpYS1oYXNwb3B1cCc/OiBIVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5bJ2FyaWEtaGFzcG9wdXAnXVxuICBoaWRlT25DbGlja091dHNpZGU/OiBib29sZWFuXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGRlYm91bmNlVGltZSB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgbm90IGRlYm91bmNlIHRoZSBob3ZlciBldmVudCBhbmQgd2lsbCBiZSBkaXNwbGF5ZWQgaW5zdGFudGx5LlxuICAgKiBJZiBzZXQgdG8gMCBpdCB3aWxsIGRpc2FibGUgZGVib3VuY2UuXG4gICAqL1xuICBkZWJvdW5jZURlbGF5PzogbnVtYmVyXG4gIC8qKlxuICAgKiBJZiB5b3Ugc2V0IGEgbWF4IGhlaWdodCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgYW5pbWF0aW9uIGlzIGRpc2FibGVkLCBvciBpdCB3aWxsIG5vdCB3b3JrIHByb3Blcmx5IG9uIHNvbWUgYnJvd3NlcnMuXG4gICAqL1xuICBtYXhIZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgLyoqXG4gICAqIFdpbGwgcmVtb3ZlIHRoZSBhbmltYXRpb24gb24gdGhlIHBvcHVwIGlmIHNldCB0byBmYWxzZS5cbiAgICovXG4gIGRpc2FibGVBbmltYXRpb24/OiBib29sZWFuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgcG9ydGFsIHRhcmdldCBpcyBjaGlsZHJlbiBjb250YWluZXIgb3IgZG9jdW1lbnQuYm9keSBpZiBjaGlsZHJlbiBpcyBhIGZ1bmN0aW9uLiBZb3UgY2FuIG92ZXJyaWRlIHRoaXNcbiAgICogYmVoYXZpb3IgYnkgc2V0dGluZyBhIHBvcnRhbFRhcmdldCBwcm9wLlxuICAgKi9cbiAgcG9ydGFsVGFyZ2V0PzogSFRNTEVsZW1lbnRcbiAgLyoqXG4gICAqIElmIHlvdSBzZXQgdGhpcyB0byB0cnVlLCB0aGUgcG9wdXAgd2lsbCBiZSByZW5kZXJlZCBpbiB0aGUgRE9NIG9ubHkgd2hlbiBpdCBpcyB2aXNpYmxlLlxuICAgKiBXaGVuIHNldCB0byBmYWxzZSwgdGhlIHBvcHVwIHdpbGwgYWx3YXlzIGJlIHJlbmRlcmVkIGluIHRoZSBET00uIEJ5IGRlZmF1bHQgdGhpcyB2YWx1ZSBpcyBzZXQgdG8gYHRydWVgLCBpZiBmb3Igc29tZVxuICAgKiByZWFzb24geW91IG5lZWQgdG8gZGlzYWJsZSBpdCwgeW91IGNhbiBzZXQgaXQgdG8gYGZhbHNlYC5cbiAgICovXG4gIGR5bmFtaWNEb21SZW5kZXJpbmc/OiBib29sZWFuXG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbCBUaGlzIGNvbXBvbmVudCBpcyBleHBlcmltZW50YWwgYW5kIG1heSBiZSBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgaW4gdGhlIGZ1dHVyZS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBvcHVwID0gZm9yd2FyZFJlZihcbiAgKFxuICAgIHtcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgdGV4dCA9ICcnLFxuICAgICAgcGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgYWxpZ24gPSAnY2VudGVyJyxcbiAgICAgIGlkLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgbWF4V2lkdGggPSAnMTQuNXJlbScsXG4gICAgICBtYXhIZWlnaHQsXG4gICAgICB2aXNpYmxlLFxuICAgICAgaW5uZXJSZWYsXG4gICAgICByb2xlID0gJ3BvcHVwJyxcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBoYXNBcnJvdyA9IHRydWUsXG4gICAgICBvbkNsb3NlLFxuICAgICAgdGFiSW5kZXggPSAwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgJ2FyaWEtaGFzcG9wdXAnOiBhcmlhSGFzUG9wdXAsXG4gICAgICBoaWRlT25DbGlja091dHNpZGUgPSBmYWxzZSxcbiAgICAgIGRlYm91bmNlRGVsYXkgPSBERUZBVUxUX0RFQk9VTkNFX0RVUkFUSU9OLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbiA9IGZhbHNlLFxuICAgICAgcG9ydGFsVGFyZ2V0LFxuICAgICAgZHluYW1pY0RvbVJlbmRlcmluZyA9IHRydWUsXG4gICAgfTogUG9wdXBQcm9wcyxcbiAgICByZWY6IFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICkgPT4ge1xuICAgIGNvbnN0IGNoaWxkcmVuUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUoaW5uZXJSZWYsICgpID0+IGNoaWxkcmVuUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCBpbm5lclBvcHVwUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnQpXG5cbiAgICBjb25zdCB0aW1lciA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4odW5kZWZpbmVkKVxuICAgIGNvbnN0IHBvcHVwUG9ydGFsVGFyZ2V0ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAocG9ydGFsVGFyZ2V0KSByZXR1cm4gcG9ydGFsVGFyZ2V0XG5cbiAgICAgIGlmIChyb2xlID09PSAnZGlhbG9nJykge1xuICAgICAgICBpZiAoY2hpbGRyZW5SZWYuY3VycmVudCkgcmV0dXJuIGNoaWxkcmVuUmVmLmN1cnJlbnRcbiAgICAgICAgaWYgKGlzQ2xpZW50U2lkZSkgcmV0dXJuIGRvY3VtZW50LmJvZHlcblxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuXG4gICAgICAvLyBXZSBjaGVjayBpZiB3aW5kb3cgZXhpc3RzIGZvciBTU1JcbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnQuYm9keVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVsbFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIH0sIFtwb3J0YWxUYXJnZXQsIHJvbGUsIGNoaWxkcmVuUmVmLmN1cnJlbnRdKVxuXG4gICAgLy8gVGhlcmUgYXJlIHNvbWUgaXNzdWUgd2hlbiBtaXhpbmcgYW5pbWF0aW9uIGFuZCBtYXhIZWlnaHQgb24gc29tZSBicm93c2Vycywgc28gd2UgZGlzYWJsZSBhbmltYXRpb24gaWYgbWF4SGVpZ2h0IGlzIHNldC5cbiAgICBjb25zdCBhbmltYXRpb25EdXJhdGlvbiA9XG4gICAgICBkaXNhYmxlQW5pbWF0aW9uIHx8IG1heEhlaWdodCA/IDAgOiBERUZBVUxUX0FOSU1BVElPTl9EVVJBVElPTlxuXG4gICAgLy8gRGVib3VuY2UgdGltZXIgd2lsbCBiZSB1c2VkIHRvIHByZXZlbnQgdGhlIHBvcHVwIGZyb20gZmxpY2tlcmluZyB3aGVuIHRoZSB1c2VyIG1vdmVzIHRoZSBtb3VzZSBvdXQgYW5kIGluIHRoZSBjaGlsZHJlbiBlbGVtZW50LlxuICAgIGNvbnN0IGRlYm91bmNlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KHVuZGVmaW5lZClcbiAgICBjb25zdCBbdmlzaWJsZUluRG9tLCBzZXRWaXNpYmxlSW5Eb21dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3JldmVyc2VBbmltYXRpb24sIHNldFJldmVyc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bvc2l0aW9ucywgc2V0UG9zaXRpb25zXSA9IHVzZVN0YXRlPFBvc2l0aW9uc1R5cGU+KHtcbiAgICAgIC4uLkRFRkFVTFRfUE9TSVRJT05TLFxuICAgIH0pXG4gICAgY29uc3QgdW5pcXVlSWQgPSB1c2VJZCgpXG4gICAgY29uc3QgZ2VuZXJhdGVkSWQgPSBpZCA/PyB1bmlxdWVJZFxuICAgIGNvbnN0IGlzQ29udHJvbGxlZCA9IHZpc2libGUgIT09IHVuZGVmaW5lZFxuXG4gICAgY29uc3QgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgIGlmIChjaGlsZHJlblJlZi5jdXJyZW50ICYmIGlubmVyUG9wdXBSZWYuY3VycmVudCkge1xuICAgICAgICBzZXRQb3NpdGlvbnMoXG4gICAgICAgICAgY29tcHV0ZVBvc2l0aW9ucyh7XG4gICAgICAgICAgICBjaGlsZHJlblJlZixcbiAgICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICAgIHBvcHVwUmVmOiBpbm5lclBvcHVwUmVmLFxuICAgICAgICAgICAgcG9wdXBQb3J0YWxUYXJnZXQ6IHBvcHVwUG9ydGFsVGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgaGFzQXJyb3csXG4gICAgICAgICAgICBhbGlnbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0sIFtoYXNBcnJvdywgcGxhY2VtZW50LCBwb3B1cFBvcnRhbFRhcmdldCwgYWxpZ25dKVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB3ZSBuZWVkIHRvIHJlY29tcHV0ZSBwb3NpdGlvbnMgb2YgcG9wdXAgZHVlIHRvIHdpbmRvdyBzY3JvbGwgb3IgcmVzaXplLlxuICAgICAqL1xuICAgIGNvbnN0IG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAvLyBXZSByZW1vdmUgYW5pbWF0aW9uIG9uIHNjcm9sbCBvciB0aGUgYW5pbWF0aW9uIHdpbGwgcmVzdGFydCBvbiBldmVyeSBzY3JvbGxcbiAgICAgIGlmIChpbm5lclBvcHVwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLmFuaW1hdGlvbiA9ICdub25lJ1xuICAgICAgfVxuXG4gICAgICBnZW5lcmF0ZVBvcHVwUG9zaXRpb25zKClcbiAgICB9LCBbZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucywgaW5uZXJQb3B1cFJlZl0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gcmVtb3ZlIHBvcHVwIHBvcnRhbCBmcm9tIERPTSBhbmQgcmVtb3ZlIGV2ZW50IGxpc3RlbmVyIHRvIGl0LlxuICAgICAqL1xuICAgIGNvbnN0IHVubW91bnRQb3B1cEZyb21Eb20gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBzZXRWaXNpYmxlSW5Eb20oZmFsc2UpXG4gICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuXG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICB9LCBbb25XaW5kb3dDaGFuZ2VEZXRlY3RlZF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHdlIG5lZWQgdG8gaGlkZSBwb3B1cC4gQSB0aW1lb3V0IGlzIHNldCB0byBhbGxvdyBhbmltYXRpb24gZW5kLCB0aGVuIHJlbW92ZVxuICAgICAqIHBvcHVwIGZyb20gZG9tLlxuICAgICAqL1xuICAgIGNvbnN0IGNsb3NlUG9wdXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgc2V0UmV2ZXJzZUFuaW1hdGlvbih0cnVlKVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHVubW91bnRQb3B1cEZyb21Eb20oKVxuICAgICAgICAgICAgb25DbG9zZT8uKClcbiAgICAgICAgICB9LCBhbmltYXRpb25EdXJhdGlvbilcbiAgICAgICAgfSxcbiAgICAgICAgZGVib3VuY2VEZWxheSAmJiAhZGlzYWJsZUFuaW1hdGlvbiA/IGRlYm91bmNlRGVsYXkgOiAwLFxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFuaW1hdGlvbkR1cmF0aW9uLFxuICAgICAgZGlzYWJsZUFuaW1hdGlvbixcbiAgICAgIGRlYm91bmNlRGVsYXksXG4gICAgICBvbkNsb3NlLFxuICAgICAgdW5tb3VudFBvcHVwRnJvbURvbSxcbiAgICBdKVxuXG4gICAgLyoqXG4gICAgICogV2hlbiBtb3VzZSBob3ZlciBvciBzdG9wIGhvdmVyaW5nIGNoaWxkcmVuIHRoaXMgZnVuY3Rpb24gZGlzcGxheSBvciBoaWRlIHBvcHVwLiBBIHRpbWVvdXQgaXMgc2V0IHRvIGFsbG93IGFuaW1hdGlvblxuICAgICAqIGVuZCwgdGhlbiByZW1vdmUgcG9wdXAgZnJvbSBkb20uXG4gICAgICovXG4gICAgY29uc3Qgb25Qb2ludGVyRXZlbnQgPSB1c2VDYWxsYmFjayhcbiAgICAgIChpc1Zpc2libGU6IGJvb2xlYW4pID0+ICgpID0+IHtcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgYSBkZWJvdW5jZURlbGF5IGFuZCB0aGUgcG9wdXAgaXMgbm90IHZpc2libGUsIHdlIGNsZWFyIHRoZSBkZWJvdW5jZSB0aW1lclxuICAgICAgICBpZiAoIXZpc2libGUgJiYgZGVib3VuY2VEZWxheSA+IDAgJiYgZGVib3VuY2VUaW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXIuY3VycmVudClcbiAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gdW5tb3VudCB0aGUgcG9wdXBcbiAgICAgICAgLy8gVGhlcmUgaXMgZGVib3VuY2UgaW4gb3JkZXIgdG8gYXZvaWQgcG9wdXAgdG8gZmxpY2tlciB3aGVuIHdlIG1vdmUgdGhlIG1vdXNlIGZyb20gY2hpbGRyZW4gdG8gcG9wdXBcbiAgICAgICAgLy8gVGltZXIgaXMgdXNlZCB0byBmb2xsb3cgdGhlIGFuaW1hdGlvbiBkdXJhdGlvblxuICAgICAgICBpZiAoIWlzVmlzaWJsZSAmJiBpbm5lclBvcHVwUmVmLmN1cnJlbnQgJiYgIWRlYm91bmNlVGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICB9IGVsc2UgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICAgIC8vIFRoaXMgY29uZGl0aW9uIGlzIGZvciB3aGVuIHdlIHdhbnQgdG8gbW91bnQgdGhlIHBvcHVwXG4gICAgICAgICAgLy8gSWYgdGhlIHRpbWVyIGV4aXN0cyBpdCBtZWFucyB0aGUgcG9wdXAgd2FzIGFib3V0IHRvIHVtb3VudCwgYnV0IHdlIGhvdmVyZWQgdGhlIGNoaWxkcmVuIGFnYWluLFxuICAgICAgICAgIC8vIHNvIHdlIGNsZWFyIHRoZSB0aW1lciBhbmQgdGhlIHBvcHVwIHdpbGwgbm90IGJlIHVubW91bnRlZFxuICAgICAgICAgIGlmICh0aW1lci5jdXJyZW50KSB7XG4gICAgICAgICAgICBzZXRSZXZlcnNlQW5pbWF0aW9uKGZhbHNlKVxuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICB0aW1lci5jdXJyZW50ID0gdW5kZWZpbmVkXG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIEFuZCBoZXJlIGlzIHdoZW4gd2UgY3VycmVudGx5IGFyZSBpbiBhIGRlYm91bmNlIHRpbWVyLCBpdCBtZWFucyBwb3B1cCB3YXMgaG92ZXJlZCBkdXJpbmdcbiAgICAgICAgICAvLyB0aGF0IHBlcmlvZCwgYW5kIHNvIHdlIGNhbiBjbGVhciBkZWJvdW5jZSB0aW1lclxuICAgICAgICAgIGlmIChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChkZWJvdW5jZVRpbWVyLmN1cnJlbnQpXG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGRlYm91bmNlRGVsYXkgPiAwKSB7XG4gICAgICAgICAgICBkZWJvdW5jZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgc2V0VmlzaWJsZUluRG9tKHRydWUpXG4gICAgICAgICAgICB9LCBkZWJvdW5jZURlbGF5KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGFydFRyYW5zaXRpb24oKCkgPT4ge1xuICAgICAgICAgICAgICBzZXRWaXNpYmxlSW5Eb20odHJ1ZSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW2Nsb3NlUG9wdXAsIGRlYm91bmNlRGVsYXksIHZpc2libGVdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIE9uY2UgcG9wdXAgaXMgdmlzaWJsZSBpbiB0aGUgZG9tIHdlIGNhbiBjb21wdXRlIHBvc2l0aW9ucywgdGhlbiBzZXQgaXQgdmlzaWJsZSBvbiBzY3JlZW4gYW5kIGFkZCBldmVudCB0b1xuICAgICAqIHJlY29tcHV0ZSBwb3NpdGlvbnMgb24gc2Nyb2xsIG9yIHNjcmVlbiByZXNpemUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICh2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgZ2VuZXJhdGVQb3B1cFBvc2l0aW9ucygpXG5cbiAgICAgICAgaWYgKHBvcHVwUG9ydGFsVGFyZ2V0ID09PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICAgICAgLy8gV2Ugd2FudCB0byBkZXRlY3Qgc2Nyb2xsIGFuZCByZXNpemUgaW4gb3JkZXIgdG8gcmVjb21wdXRlIHBvc2l0aW9ucyBvZiBwb3B1cFxuICAgICAgICAgIC8vIEFkZGluZyB0cnVlIGFzIHRoaXJkIHBhcmFtZXRlciB0byBldmVudCBsaXN0ZW5lciB3aWxsIGRldGVjdCBuZXN0ZWQgc2Nyb2xscy5cbiAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgICAgfVxuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgb25XaW5kb3dDaGFuZ2VEZXRlY3RlZCwgdHJ1ZSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uV2luZG93Q2hhbmdlRGV0ZWN0ZWQsIHRydWUpXG4gICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCBvbldpbmRvd0NoYW5nZURldGVjdGVkLCB0cnVlKVxuICAgICAgICBpZiAodGltZXIuY3VycmVudCkge1xuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lci5jdXJyZW50KVxuICAgICAgICAgIHRpbWVyLmN1cnJlbnQgPSB1bmRlZmluZWRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIFtcbiAgICAgIGdlbmVyYXRlUG9wdXBQb3NpdGlvbnMsXG4gICAgICBvbldpbmRvd0NoYW5nZURldGVjdGVkLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgbWF4V2lkdGgsXG4gICAgICBwb3B1cFBvcnRhbFRhcmdldCxcbiAgICBdKVxuXG4gICAgLy8gVGhpcyB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIHBvc2l0aW9ucyBhcmUgY29tcHV0ZWQgYW5kIHBvcHVwIGlzIHZpc2libGUgaW4gdGhlIGRvbS5cbiAgICB1c2VFZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh2aXNpYmxlSW5Eb20gJiYgaW5uZXJQb3B1cFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50LnN0eWxlLm9wYWNpdHkgPSAnMSdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgIFtwb3NpdGlvbnNdLFxuICAgIClcblxuICAgIC8qKlxuICAgICAqIElmIHBvcHVwIGhhcyBgdmlzaWJsZWAgcHJvcCBpdCBtZWFucyB0aGUgcG9wdXAgaXMgbWFudWFsbHkgY29udHJvbGxlZCB0aHJvdWdoIHRoaXMgcHJvcC5cbiAgICAgKiBJbiB0aGlzIGNhcyB3ZSBkb24ndCB3YW50IHRvIGRpc3BsYXkgcG9wdXAgb24gaG92ZXIsIGJ1dCBvbmx5IHdoZW4gYHZpc2libGVgIGlzIHRydWUuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgb25Qb2ludGVyRXZlbnQodmlzaWJsZSkoKVxuICAgICAgfVxuICAgIH0sIFtpc0NvbnRyb2xsZWQsIG9uUG9pbnRlckV2ZW50LCB2aXNpYmxlXSlcblxuICAgIC8vIEhhbmRsZSBoaWRlIG9uIGVzYyBwcmVzcyBhbmQgaGlkZSBvbiBjbGljayBvdXRzaWRlXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGhhbmRsZUVzY1ByZXNzID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgY2xvc2VQb3B1cCgpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBvcHVwQ3VycmVudCA9IGlubmVyUG9wdXBSZWYuY3VycmVudFxuICAgICAgICBjb25zdCBjaGlsZHJlbkN1cnJlbnQgPSBjaGlsZHJlblJlZi5jdXJyZW50XG5cbiAgICAgICAgaWYgKHBvcHVwQ3VycmVudCAmJiBoaWRlT25DbGlja091dHNpZGUgJiYgIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBldmVudC50YXJnZXQgJiZcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldCAhPT0gcG9wdXBDdXJyZW50ICYmXG4gICAgICAgICAgICBldmVudC50YXJnZXQgIT09IGNoaWxkcmVuQ3VycmVudCAmJlxuICAgICAgICAgICAgIWNoaWxkcmVuQ3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmXG4gICAgICAgICAgICAhcG9wdXBDdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgIGNsb3NlUG9wdXAoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHZpc2libGVJbkRvbSkge1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgaGFuZGxlRXNjUHJlc3MpXG4gICAgICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBoYW5kbGVFc2NQcmVzcylcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBjbG9zZVBvcHVwLFxuICAgICAgdmlzaWJsZUluRG9tLFxuICAgICAgaW5uZXJQb3B1cFJlZixcbiAgICAgIGNoaWxkcmVuUmVmLFxuICAgICAgaGlkZU9uQ2xpY2tPdXRzaWRlLFxuICAgIF0pXG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGV2ZW50IHdpbGwgb2NjdXIgb25seSBmb3IgZGlhbG9nIGFuZCB3aWxsIHRyYXAgZm9jdXMgaW5zaWRlIHRoZSBkaWFsb2cuXG4gICAgICovXG4gICAgY29uc3QgaGFuZGxlRm9jdXNUcmFwOiBLZXlib2FyZEV2ZW50SGFuZGxlciA9IHVzZUNhbGxiYWNrKGV2ZW50ID0+IHtcbiAgICAgIGNvbnN0IGlzVGFiUHJlc3NlZCA9IGV2ZW50LmtleSA9PT0gJ1RhYidcbiAgICAgIGlmICghaXNUYWJQcmVzc2VkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcblxuICAgICAgY29uc3QgZm9jdXNhYmxlRWxzID1cbiAgICAgICAgaW5uZXJQb3B1cFJlZi5jdXJyZW50Py5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICAgICdhW2hyZWZdOm5vdChbZGlzYWJsZWRdKSwgYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSknLFxuICAgICAgICApID8/IFtdXG5cbiAgICAgIC8vIEhhbmRsZSBjYXNlIHdoZW4gbm8gaW50ZXJhY3RpdmUgZWxlbWVudCBhcmUgd2l0aGluIHRoZSBtb2RhbCAoaW5jbHVkaW5nIGNsb3NlIGljb24pXG4gICAgICBpZiAoZm9jdXNhYmxlRWxzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWwgPSBmb2N1c2FibGVFbHNbMF0gYXMgSFRNTEVsZW1lbnRcbiAgICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbCA9IGZvY3VzYWJsZUVsc1tcbiAgICAgICAgZm9jdXNhYmxlRWxzLmxlbmd0aCAtIDFcbiAgICAgIF0gYXMgSFRNTEVsZW1lbnRcblxuICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEZvY3VzYWJsZUVsIHx8XG4gICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICAgICkge1xuICAgICAgICAgIGxhc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0Rm9jdXNhYmxlRWwgfHxcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gaW5uZXJQb3B1cFJlZi5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgZmlyc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9LCBbXSlcblxuICAgIC8qKlxuICAgICAqIFdpbGwgcmVuZGVyIGNoaWxkcmVuIGNvbmRpdGlvbmFsbHkgaWYgY2hpbGRyZW4gaXMgYSBmdW5jdGlvbiBvciBub3QuXG4gICAgICovXG4gICAgY29uc3QgcmVuZGVyQ2hpbGRyZW4gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBjaGlsZHJlbih7XG4gICAgICAgICAgb25CbHVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICBvbkZvY3VzOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckVudGVyOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQodHJ1ZSkgOiBub29wLFxuICAgICAgICAgIG9uUG9pbnRlckxlYXZlOiAhaXNDb250cm9sbGVkID8gb25Qb2ludGVyRXZlbnQoZmFsc2UpIDogbm9vcCxcbiAgICAgICAgICByZWY6IGNoaWxkcmVuUmVmLFxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkQ2hpbGRyZW5Db250YWluZXJcbiAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPXtnZW5lcmF0ZWRJZH1cbiAgICAgICAgICBvbkJsdXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIG9uRm9jdXM9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgIHJlZj17Y2hpbGRyZW5SZWZ9XG4gICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgIG9uS2V5RG93bj17ZXZlbnQgPT4ge1xuICAgICAgICAgICAgb25LZXlEb3duPy4oZXZlbnQpXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkYXRhLWNvbnRhaW5lci1mdWxsLXdpZHRoPXtjb250YWluZXJGdWxsV2lkdGh9XG4gICAgICAgICAgYXJpYS1oYXNwb3B1cD17YXJpYUhhc1BvcHVwfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L1N0eWxlZENoaWxkcmVuQ29udGFpbmVyPlxuICAgICAgKVxuICAgIH0sIFtcbiAgICAgIGFyaWFIYXNQb3B1cCxcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgY29udGFpbmVyRnVsbFdpZHRoLFxuICAgICAgZ2VuZXJhdGVkSWQsXG4gICAgICBpc0NvbnRyb2xsZWQsXG4gICAgICBvbktleURvd24sXG4gICAgICBvblBvaW50ZXJFdmVudCxcbiAgICAgIHRhYkluZGV4LFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG91bGRSZW5kZXIgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghZHluYW1pY0RvbVJlbmRlcmluZykge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuXG4gICAgICBpZiAoZHluYW1pY0RvbVJlbmRlcmluZyAmJiB2aXNpYmxlSW5Eb20pIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfSwgW2R5bmFtaWNEb21SZW5kZXJpbmcsIHZpc2libGVJbkRvbV0pXG5cbiAgICBpZiAoIXRleHQpIHtcbiAgICAgIGlmICh0eXBlb2YgY2hpbGRyZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNoaWxkcmVuXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIHtyZW5kZXJDaGlsZHJlbigpfVxuICAgICAgICB7c2hvdWxkUmVuZGVyXG4gICAgICAgICAgPyBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICAgIDxTdHlsZWRQb3B1cFxuICAgICAgICAgICAgICAgIHJlZj17aW5uZXJQb3B1cFJlZn1cbiAgICAgICAgICAgICAgICBwb3NpdGlvbnM9e3Bvc2l0aW9uc31cbiAgICAgICAgICAgICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0PXttYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICAgICAgICBpZD17Z2VuZXJhdGVkSWR9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICAgICAgcmV2ZXJzZUFuaW1hdGlvbj17cmV2ZXJzZUFuaW1hdGlvbn1cbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgICAgICAgICBkYXRhLWhhcy1hcnJvdz17aGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgb25DbGljaz17c3RvcENsaWNrUHJvcGFnYXRpb259XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyRW50ZXI9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudCh0cnVlKSA6IG5vb3B9XG4gICAgICAgICAgICAgICAgb25Qb2ludGVyTGVhdmU9eyFpc0NvbnRyb2xsZWQgPyBvblBvaW50ZXJFdmVudChmYWxzZSkgOiBub29wfVxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbkR1cmF0aW9uPXthbmltYXRpb25EdXJhdGlvbn1cbiAgICAgICAgICAgICAgICBvbktleURvd249e3JvbGUgPT09ICdkaWFsb2cnID8gaGFuZGxlRm9jdXNUcmFwIDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAgIGlzRGlhbG9nPXtyb2xlID09PSAnZGlhbG9nJ31cbiAgICAgICAgICAgICAgICBkYXRhLXZpc2libGUtaW4tZG9tPXtcbiAgICAgICAgICAgICAgICAgICFkeW5hbWljRG9tUmVuZGVyaW5nID8gdmlzaWJsZUluRG9tIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRhdGEtYW5pbWF0ZWQ9e2FuaW1hdGlvbkR1cmF0aW9uID4gMCAmJiAhbWF4SGVpZ2h0fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3RleHR9XG4gICAgICAgICAgICAgIDwvU3R5bGVkUG9wdXA+LFxuICAgICAgICAgICAgICBwb3B1cFBvcnRhbFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IG51bGx9XG4gICAgICA8Lz5cbiAgICApXG4gIH0sXG4pXG4iXX0= */',
68
68
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
69
69
  });
70
70
  const Popup = forwardRef(({
@@ -3,9 +3,9 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("@emotion/react/jsx-runtime");
4
4
  const _styled = require("@emotion/styled/base");
5
5
  const react = require("@emotion/react");
6
- const index$2 = require("../Label/index.cjs");
6
+ const index$1 = require("../Label/index.cjs");
7
7
  const index = require("../Stack/index.cjs");
8
- const index$1 = require("../Text/index.cjs");
8
+ const index$2 = require("../Text/index.cjs");
9
9
  const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
10
10
  const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
11
11
  function _EMOTION_STRINGIFIED_CSS_ERROR__() {
@@ -45,7 +45,7 @@ const StyledStack = /* @__PURE__ */ _styled__default.default(index.Stack, proces
45
45
  styles: "width:fit-content/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1Byb2dyZXNzQmFyL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQ2lDIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1Byb2dyZXNzQmFyL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGtleWZyYW1lcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7IFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHR5cGUgeyBDb2xvciB9IGZyb20gJy4uLy4uL3RoZW1lJ1xuaW1wb3J0IHsgTGFiZWwgfSBmcm9tICcuLi9MYWJlbCdcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3Qgc2hpbmVBbmltYXRpb24gPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIGxlZnQ6IC0yNSU7XG4gIH1cblxuICB0byB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgcHJvZ3Jlc3NCYXJTZW50aW1lbnRzID0gW1xuICAncHJpbWFyeScsXG4gICdzdWNjZXNzJyxcbiAgJ3dhcm5pbmcnLFxuICAnaW5mbycsXG4gICdkYW5nZXInLFxuXSBhcyBjb25zdFxuXG5jb25zdCBTdHlsZWRQcm9ncmVzc0NvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNpemluZ1snMDUwJ119O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnJhZGlpLmRlZmF1bHR9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmRTdHJvbmd9O1xuICB3aWR0aDogMTAwJTtcbmBcbmNvbnN0IFN0eWxlZFN0YWNrID0gc3R5bGVkKFN0YWNrKWBcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuYFxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuYFxuY29uc3QgU3R5bGVkUHJvZ3Jlc3MgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMjUlO1xuICBvcGFjaXR5OiAwLjg7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICA5MGRlZyxcbiAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLFxuICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSxcbiAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCksXG4gICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpLFxuICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMClcbiAgKTtcbiAgYW5pbWF0aW9uOiAke3NoaW5lQW5pbWF0aW9ufSAxcyBsaW5lYXIgaW5maW5pdGU7XG5gXG5cbmNvbnN0IFN0eWxlZEZpbGxlZCA9IHN0eWxlZCgnZGl2Jywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PiAhWydzZW50aW1lbnQnLCAncGVyY2VudGFnZVZhbHVlJ10uaW5jbHVkZXMocHJvcCksXG59KTx7IHNlbnRpbWVudDogc3RyaW5nOyBwZXJjZW50YWdlVmFsdWU6IG51bWJlciB9PmBcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZSwgc2VudGltZW50IH0pID0+XG4gICAgdGhlbWUuY29sb3JzW3NlbnRpbWVudCBhcyBDb2xvcl0uYmFja2dyb3VuZFN0cm9uZyA/PyAnaW5oZXJpdCd9O1xuICB0cmFuc2l0aW9uOiAwLjNzIHdpZHRoO1xuICB3aWR0aDogJHsoeyBwZXJjZW50YWdlVmFsdWUgfSkgPT4gcGVyY2VudGFnZVZhbHVlfSU7XG5gXG5cbnR5cGUgUHJvZ3Jlc3NCYXJQcm9wcyA9IHtcbiAgc2VudGltZW50PzogKHR5cGVvZiBwcm9ncmVzc0JhclNlbnRpbWVudHMpW251bWJlcl1cbiAgdmFsdWU/OiBudW1iZXJcbiAgc2hvd1Byb2dyZXNzPzogYm9vbGVhblxuICBwcmVmaXg/OiBSZWFjdE5vZGVcbiAgc3VmZml4PzogUmVhY3ROb2RlXG4gIG1heD86IG51bWJlclxuICBsYWJlbD86IHN0cmluZ1xuICBsYWJlbERlc2NyaXB0aW9uPzogUmVhY3ROb2RlXG4gIGRpcmVjdGlvbj86ICdjb2x1bW4nIHwgJ3JvdydcbiAgLyoqIFB1dCBQcm9ncmVzc0JhciBpbiBhIGxvYWRpbmcgc3RhdGUgKi9cbiAgcHJvZ3Jlc3M/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICAnZGF0YS10ZXN0aWQnPzogc3RyaW5nXG4gICdhcmlhLWxhYmVsbGVkYnknPzogc3RyaW5nXG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xufVxuXG4vKipcbiAqIFByb2dyZXNzIGJhciBjb21wb25lbnQgdG8gZGlzcGxheSBwcm9ncmVzcyBvZiBhIHRhc2suIENhbiBiZSB1c2VkIHRvIGRpc3BsYXkgcHJvZ3Jlc3Mgb2YgYSBmb3JtIG9yIGEgbG9hZGluZyBzdGF0ZS5cbiAqL1xuZXhwb3J0IGNvbnN0IFByb2dyZXNzQmFyID0gKHtcbiAgcHJvZ3Jlc3MgPSBmYWxzZSxcbiAgdmFsdWUgPSAwLFxuICBzZW50aW1lbnQgPSAncHJpbWFyeScsXG4gIGNsYXNzTmFtZSxcbiAgJ2RhdGEtdGVzdGlkJzogZGF0YVRlc3RJZCxcbiAgc2hvd1Byb2dyZXNzID0gZmFsc2UsXG4gIHByZWZpeCxcbiAgc3VmZml4ID0gJyUnLFxuICBtYXggPSAxMDAsXG4gIGxhYmVsLFxuICBsYWJlbERlc2NyaXB0aW9uLFxuICBkaXJlY3Rpb24gPSAnY29sdW1uJyxcbiAgJ2FyaWEtbGFiZWxsZWRieSc6IGFyaWFMYWJlbGxlZEJ5LFxuICAnYXJpYS1sYWJlbCc6IGFyaWFMYWJlbCxcbn06IFByb2dyZXNzQmFyUHJvcHMpID0+IChcbiAgPFN0YWNrXG4gICAgZ2FwPXtkaXJlY3Rpb24gPT09ICdjb2x1bW4nID8gMSA6IDJ9XG4gICAgZGlyZWN0aW9uPXtkaXJlY3Rpb259XG4gICAgYWxpZ25JdGVtcz1cImNlbnRlclwiXG4gID5cbiAgICB7ZGlyZWN0aW9uID09PSAnY29sdW1uJyAmJiAobGFiZWwgfHwgc2hvd1Byb2dyZXNzKSA/IChcbiAgICAgIDxTdGFja1xuICAgICAgICBkaXJlY3Rpb249XCJyb3dcIlxuICAgICAgICBqdXN0aWZ5Q29udGVudD17IWxhYmVsICYmIHNob3dQcm9ncmVzcyA/ICdyaWdodCcgOiAnc3BhY2UtYmV0d2Vlbid9XG4gICAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICA+XG4gICAgICAgIDxMYWJlbCBsYWJlbERlc2NyaXB0aW9uPXtsYWJlbERlc2NyaXB0aW9ufSBzaXplPVwibWVkaXVtXCI+XG4gICAgICAgICAge2xhYmVsfVxuICAgICAgICA8L0xhYmVsPlxuICAgICAgICB7c2hvd1Byb2dyZXNzID8gKFxuICAgICAgICAgIDxUZXh0XG4gICAgICAgICAgICBhcz1cImxhYmVsXCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJib2R5U21hbGxcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBwbGFjZW1lbnQ9XCJyaWdodFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3ByZWZpeH1cbiAgICAgICAgICAgIHtzdWZmaXggPT09ICclJ1xuICAgICAgICAgICAgICA/ICgxMDAgKiBNYXRoLm1heCgwLCBNYXRoLm1pbihtYXgsIHZhbHVlKSkpIC8gbWF4XG4gICAgICAgICAgICAgIDogTWF0aC5tYXgoMCwgTWF0aC5taW4obWF4LCB2YWx1ZSkpfVxuICAgICAgICAgICAge3N1ZmZpeH1cbiAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9TdGFjaz5cbiAgICApIDogbnVsbH1cblxuICAgIHtkaXJlY3Rpb24gPT09ICdyb3cnICYmIGxhYmVsID8gKFxuICAgICAgPExhYmVsIGxhYmVsRGVzY3JpcHRpb249e2xhYmVsRGVzY3JpcHRpb259IHNpemU9XCJtZWRpdW1cIj5cbiAgICAgICAge2xhYmVsfVxuICAgICAgPC9MYWJlbD5cbiAgICApIDogbnVsbH1cblxuICAgIDxTdHlsZWRQcm9ncmVzc0NvbnRhaW5lclxuICAgICAgcm9sZT1cInByb2dyZXNzYmFyXCJcbiAgICAgIGFyaWEtdmFsdWVub3c9e3ZhbHVlfVxuICAgICAgYXJpYS12YWx1ZW1pbj17MH1cbiAgICAgIGFyaWEtdmFsdWVtYXg9e21heH1cbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWR9XG4gICAgICBhcmlhLWxhYmVsbGVkYnk9e2FyaWFMYWJlbGxlZEJ5fVxuICAgICAgYXJpYS1sYWJlbD17YXJpYUxhYmVsfVxuICAgID5cbiAgICAgIHtwcm9ncmVzcyA/IChcbiAgICAgICAgPFN0eWxlZFByb2dyZXNzIC8+XG4gICAgICApIDogKFxuICAgICAgICA8U3R5bGVkRmlsbGVkXG4gICAgICAgICAgc2VudGltZW50PXtzZW50aW1lbnR9XG4gICAgICAgICAgcGVyY2VudGFnZVZhbHVlPXsoMTAwICogTWF0aC5tYXgoMCwgTWF0aC5taW4obWF4LCB2YWx1ZSkpKSAvIG1heH1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC9TdHlsZWRQcm9ncmVzc0NvbnRhaW5lcj5cbiAgICB7c2hvd1Byb2dyZXNzICYmIGRpcmVjdGlvbiA9PT0gJ3JvdycgPyAoXG4gICAgICA8U3R5bGVkU3RhY2sgZGlyZWN0aW9uPVwicm93XCIgZ2FwPXsxfT5cbiAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJsYWJlbFwiIHZhcmlhbnQ9XCJib2R5U21hbGxcIiBzZW50aW1lbnQ9XCJuZXV0cmFsXCI+XG4gICAgICAgICAge3ByZWZpeH1cbiAgICAgICAgICB7c3VmZml4ID09PSAnJSdcbiAgICAgICAgICAgID8gKDEwMCAqIE1hdGgubWF4KDAsIE1hdGgubWluKG1heCwgdmFsdWUpKSkgLyBtYXhcbiAgICAgICAgICAgIDogTWF0aC5tYXgoMCwgTWF0aC5taW4obWF4LCB2YWx1ZSkpfVxuICAgICAgICAgIHtzdWZmaXh9XG4gICAgICAgIDwvU3R5bGVkVGV4dD5cbiAgICAgIDwvU3R5bGVkU3RhY2s+XG4gICAgKSA6IG51bGx9XG4gIDwvU3RhY2s+XG4pXG4iXX0= */",
46
46
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
47
47
  });
48
- const StyledText = /* @__PURE__ */ _styled__default.default(index$1.Text, process.env.NODE_ENV === "production" ? {
48
+ const StyledText = /* @__PURE__ */ _styled__default.default(index$2.Text, process.env.NODE_ENV === "production" ? {
49
49
  target: "e1b95x8r2"
50
50
  } : {
51
51
  target: "e1b95x8r2",
@@ -96,14 +96,14 @@ const ProgressBar = ({
96
96
  "aria-label": ariaLabel
97
97
  }) => /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { gap: direction === "column" ? 1 : 2, direction, alignItems: "center", children: [
98
98
  direction === "column" && (label || showProgress) ? /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { direction: "row", justifyContent: !label && showProgress ? "right" : "space-between", width: "100%", children: [
99
- /* @__PURE__ */ jsxRuntime.jsx(index$2.Label, { labelDescription, size: "medium", children: label }),
100
- showProgress ? /* @__PURE__ */ jsxRuntime.jsxs(index$1.Text, { as: "label", variant: "bodySmall", sentiment: "neutral", placement: "right", children: [
99
+ /* @__PURE__ */ jsxRuntime.jsx(index$1.Label, { labelDescription, size: "medium", children: label }),
100
+ showProgress ? /* @__PURE__ */ jsxRuntime.jsxs(index$2.Text, { as: "label", variant: "bodySmall", sentiment: "neutral", placement: "right", children: [
101
101
  prefix,
102
102
  suffix === "%" ? 100 * Math.max(0, Math.min(max, value)) / max : Math.max(0, Math.min(max, value)),
103
103
  suffix
104
104
  ] }) : null
105
105
  ] }) : null,
106
- direction === "row" && label ? /* @__PURE__ */ jsxRuntime.jsx(index$2.Label, { labelDescription, size: "medium", children: label }) : null,
106
+ direction === "row" && label ? /* @__PURE__ */ jsxRuntime.jsx(index$1.Label, { labelDescription, size: "medium", children: label }) : null,
107
107
  /* @__PURE__ */ jsxRuntime.jsx(StyledProgressContainer, { role: "progressbar", "aria-valuenow": value, "aria-valuemin": 0, "aria-valuemax": max, className, "data-testid": dataTestId, "aria-labelledby": ariaLabelledBy, "aria-label": ariaLabel, children: progress ? /* @__PURE__ */ jsxRuntime.jsx(StyledProgress, {}) : /* @__PURE__ */ jsxRuntime.jsx(StyledFilled, { sentiment, percentageValue: 100 * Math.max(0, Math.min(max, value)) / max }) }),
108
108
  showProgress && direction === "row" ? /* @__PURE__ */ jsxRuntime.jsx(StyledStack, { direction: "row", gap: 1, children: /* @__PURE__ */ jsxRuntime.jsxs(StyledText, { as: "label", variant: "bodySmall", sentiment: "neutral", children: [
109
109
  prefix,
@@ -3,9 +3,9 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("@emotion/react/jsx-runtime");
4
4
  const _styled = require("@emotion/styled/base");
5
5
  const React = require("react");
6
- const index = require("../Stack/index.cjs");
7
- const index$1 = require("../Text/index.cjs");
8
- const index$2 = require("../Tooltip/index.cjs");
6
+ const index$1 = require("../Stack/index.cjs");
7
+ const index$2 = require("../Text/index.cjs");
8
+ const index = require("../Tooltip/index.cjs");
9
9
  const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
10
10
  const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
11
11
  function _EMOTION_STRINGIFIED_CSS_ERROR__() {
@@ -23,7 +23,7 @@ const RadioMark = /* @__PURE__ */ _styled__default.default("circle", process.env
23
23
  target: "ehkrmld7",
24
24
  label: "RadioMark"
25
25
  })(process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1JhZGlvL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTK0IiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvdWkvc3JjL2NvbXBvbmVudHMvUmFkaW8vaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7IElucHV0SFRNTEF0dHJpYnV0ZXMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgZm9yd2FyZFJlZiwgdXNlSWQgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB0eXBlIHsgTGFiZWxQcm9wIH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5pbXBvcnQgeyBTdGFjayB9IGZyb20gJy4uL1N0YWNrJ1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gJy4uL1RleHQnXG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnLi4vVG9vbHRpcCdcblxuY29uc3QgSW5uZXJDaXJjbGVSaW5nID0gc3R5bGVkLmNpcmNsZWBgXG5jb25zdCBSYWRpb01hcmsgPSBzdHlsZWQuY2lyY2xlYGBcblxuZXhwb3J0IGNvbnN0IFJhZGlvU3RhY2sgPSBzdHlsZWQoU3RhY2spYGBcblxuY29uc3QgUmFkaW9NYXJrZWRJY29uID0gKCkgPT4gKFxuICA8Zz5cbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCIgc3Ryb2tlV2lkdGg9XCIyXCIgLz5cbiAgICA8SW5uZXJDaXJjbGVSaW5nIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjhcIiAvPlxuICAgIDxSYWRpb01hcmsgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiNVwiIC8+XG4gIDwvZz5cbilcblxuY29uc3QgUmluZyA9IHN0eWxlZC5zdmdgXG4gIGhlaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zaXppbmdbJzMwMCddfTtcbiAgd2lkdGg6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIG1pbi13aWR0aDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zaXppbmdbJzMwMCddfTtcbiAgbWluLWhlaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zaXppbmdbJzMwMCddfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5jaXJjbGV9O1xuICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5uZXV0cmFsLmJvcmRlcn07XG4gICR7SW5uZXJDaXJjbGVSaW5nfSB7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgfVxuYFxuXG5jb25zdCBSYWRpb0lucHV0ID0gc3R5bGVkLmlucHV0YFxuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNpemluZ1snMzAwJ119O1xuICB3aWR0aDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zaXppbmdbJzMwMCddfTtcbiAgb3BhY2l0eTogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICAmICsgJHtSaW5nfSB7XG4gICAgJHtSYWRpb01hcmt9IHtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSBlYXNlLWluLW91dDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgfVxuICB9XG5cbiAgJjpjaGVja2VkICsgc3ZnIHtcbiAgICAke1JhZGlvTWFya30ge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gIH1cblxuICAmOmNoZWNrZWRbYXJpYS1kaXNhYmxlZD0nZmFsc2UnXVthcmlhLWludmFsaWQ9J2ZhbHNlJ10gKyAke1Jpbmd9IHtcbiAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmJhY2tncm91bmRTdHJvbmd9O1xuICB9XG5cbiAgJjpjaGVja2VkW2FyaWEtZGlzYWJsZWQ9J3RydWUnXVthcmlhLWludmFsaWQ9J2ZhbHNlJ10gKyAke1Jpbmd9IHtcbiAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmJvcmRlckRpc2FibGVkfTtcbiAgfVxuXG4gICZbYXJpYS1pbnZhbGlkPSd0cnVlJ106bm90KFthcmlhLWRpc2FibGVkPSd0cnVlJ10pICsgJHtSaW5nfSB7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLmJhY2tncm91bmRTdHJvbmd9O1xuICB9XG5cbiAgJlthcmlhLWRpc2FibGVkPSdmYWxzZSddOmFjdGl2ZSArICR7UmluZ30ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTEyN2U0MDtcbiAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmJhY2tncm91bmRTdHJvbmd9O1xuICAgICR7SW5uZXJDaXJjbGVSaW5nfSB7XG4gICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmJhY2tncm91bmR9O1xuICAgIH1cbiAgfVxuXG4gICZbYXJpYS1kaXNhYmxlZD0nZmFsc2UnXTpmb2N1cy12aXNpYmxlICsgJHtSaW5nfSB7XG4gICAgb3V0bGluZTogLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yIGF1dG8gMXB4O1xuICB9XG5cbiAgJlthcmlhLWludmFsaWQ9J3RydWUnXTpmb2N1cyArICR7UmluZ30ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOTFiNmM0MDtcbiAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIuYmFja2dyb3VuZFN0cm9uZ307XG4gICAgJHtJbm5lckNpcmNsZVJpbmd9IHtcbiAgICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLmRhbmdlci5iYWNrZ3JvdW5kfTtcbiAgICB9XG4gIH1cbmBcblxuY29uc3QgUmFkaW9Db250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDE7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5cbiAgJlthcmlhLWRpc2FibGVkPSdmYWxzZSddLFxuICAmW2FyaWEtZGlzYWJsZWQ9J2ZhbHNlJ10gPiBsYWJlbCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgOmhvdmVyW2FyaWEtZGlzYWJsZWQ9J2ZhbHNlJ10ge1xuICAgICR7UmFkaW9JbnB1dH0gKyAke1Jpbmd9IHtcbiAgICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLnByaW1hcnkuYm9yZGVyfTtcbiAgICAgICR7SW5uZXJDaXJjbGVSaW5nfSB7XG4gICAgICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLnByaW1hcnkuYmFja2dyb3VuZEhvdmVyfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAke1JhZGlvSW5wdXR9W2FyaWEtaW52YWxpZD0ndHJ1ZSddICsgJHtSaW5nfSB7XG4gICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIuYm9yZGVyfTtcbiAgICAgICR7SW5uZXJDaXJjbGVSaW5nfSB7XG4gICAgICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLmRhbmdlci5iYWNrZ3JvdW5kSG92ZXJ9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07XG5cbiAgICAmID4gbGFiZWwsXG4gICAgJHtSYWRpb0lucHV0fSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cblxuICAgICR7UmluZ30ge1xuICAgICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmREaXNhYmxlZH07XG4gICAgICB9XG4gICAgfVxuICB9XG5gXG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkLmxhYmVsYFxuICBmbGV4OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgZmxleDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuYFxuXG5jb25zdCBNYXJnZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICBtYXJnaW4tbGVmdDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnNCddfTtcbmBcblxudHlwZSBSYWRpb1Byb3BzID0ge1xuICBlcnJvcj86IFJlYWN0Tm9kZVxuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyXG4gIGhlbHBlcj86IFJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgJ2RhdGEtdGVzdGlkJz86IHN0cmluZ1xuICB0b29sdGlwPzogc3RyaW5nXG59ICYgUmVxdWlyZWQ8UGljazxJbnB1dEhUTUxBdHRyaWJ1dGVzPEhUTUxJbnB1dEVsZW1lbnQ+LCAnb25DaGFuZ2UnPj4gJlxuICBQaWNrPFxuICAgIElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD4sXG4gICAgfCAnb25Gb2N1cydcbiAgICB8ICdvbkJsdXInXG4gICAgfCAnZGlzYWJsZWQnXG4gICAgfCAnYXV0b0ZvY3VzJ1xuICAgIHwgJ29uS2V5RG93bidcbiAgICB8ICdpZCdcbiAgICB8ICduYW1lJ1xuICAgIHwgJ3JlcXVpcmVkJ1xuICAgIHwgJ3RhYkluZGV4J1xuICAgIHwgJ2NoZWNrZWQnXG4gID4gJlxuICBMYWJlbFByb3BcblxuLyoqXG4gKiBSYWRpbyBjb21wb25lbnQgaXMgdXNlZCB0byBzZWxlY3QgYSBzaW5nbGUgb3B0aW9uIGZyb20gYSBsaXN0IG9mIG9wdGlvbnMuIEl0IGlzIGEgdHlwZSBvZiBpbnB1dCBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBjb25zdCBSYWRpbyA9IGZvcndhcmRSZWY8SFRNTElucHV0RWxlbWVudCwgUmFkaW9Qcm9wcz4oXG4gIChcbiAgICB7XG4gICAgICBjaGVja2VkID0gZmFsc2UsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbkJsdXIsXG4gICAgICBkaXNhYmxlZCA9IGZhbHNlLFxuICAgICAgZXJyb3IsXG4gICAgICBuYW1lLFxuICAgICAgdmFsdWUsXG4gICAgICBsYWJlbCxcbiAgICAgIGhlbHBlcixcbiAgICAgIGNsYXNzTmFtZSxcbiAgICAgIGF1dG9Gb2N1cyxcbiAgICAgIG9uS2V5RG93bixcbiAgICAgIHRvb2x0aXAsXG4gICAgICAnYXJpYS1sYWJlbCc6IGFyaWFMYWJlbCxcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICB0YWJJbmRleCxcbiAgICB9LFxuICAgIGZvcndhZGVkUmVmLFxuICApID0+IHtcbiAgICBjb25zdCBpZCA9IHVzZUlkKClcbiAgICBjb25zdCBjb21wdXRlZE5hbWUgPSBuYW1lID8/IGlkXG5cbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXAgdGV4dD17dG9vbHRpcH0+XG4gICAgICAgIDxSYWRpb1N0YWNrIGdhcD17MC41fT5cbiAgICAgICAgICA8UmFkaW9Db250YWluZXJcbiAgICAgICAgICAgIGFyaWEtZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgICBkYXRhLWNoZWNrZWQ9e2NoZWNrZWR9XG4gICAgICAgICAgICBkYXRhLWVycm9yPXtlcnJvcn1cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxSYWRpb0lucHV0XG4gICAgICAgICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgICAgICAgIGFyaWEtaW52YWxpZD17ISFlcnJvcn1cbiAgICAgICAgICAgICAgYXJpYS1kaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9e2FyaWFMYWJlbH1cbiAgICAgICAgICAgICAgY2hlY2tlZD17Y2hlY2tlZH1cbiAgICAgICAgICAgICAgaWQ9e2Ake2NvbXB1dGVkTmFtZX0tJHt2YWx1ZX1gfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgICAgIG9uRm9jdXM9e29uRm9jdXN9XG4gICAgICAgICAgICAgIG9uS2V5RG93bj17b25LZXlEb3dufVxuICAgICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgIG5hbWU9e2NvbXB1dGVkTmFtZX1cbiAgICAgICAgICAgICAgYXV0b0ZvY3VzPXthdXRvRm9jdXN9XG4gICAgICAgICAgICAgIHJlZj17Zm9yd2FkZWRSZWZ9XG4gICAgICAgICAgICAgIHRhYkluZGV4PXt0YWJJbmRleH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8UmluZyB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgICAgICAgIDxSYWRpb01hcmtlZEljb24gLz5cbiAgICAgICAgICAgIDwvUmluZz5cbiAgICAgICAgICAgIHtsYWJlbCA/IChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICB7dHlwZW9mIGxhYmVsID09PSAnc3RyaW5nJyA/IChcbiAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0TGFiZWxcbiAgICAgICAgICAgICAgICAgICAgYXM9XCJsYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJib2R5XCJcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cImRlZmF1bHRcIlxuICAgICAgICAgICAgICAgICAgICBodG1sRm9yPXtgJHtjb21wdXRlZE5hbWV9LSR7dmFsdWV9YH1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0TGFiZWw+XG4gICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgIDxTdHlsZWRMYWJlbCBodG1sRm9yPXtgJHtjb21wdXRlZE5hbWV9LSR7dmFsdWV9YH0+XG4gICAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkTGFiZWw+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICA8L1JhZGlvQ29udGFpbmVyPlxuICAgICAgICAgIHtoZWxwZXIgPyAoXG4gICAgICAgICAgICA8TWFyZ2VkVGV4dFxuICAgICAgICAgICAgICBhcz1cInNwYW5cIlxuICAgICAgICAgICAgICB2YXJpYW50PVwiY2FwdGlvblwiXG4gICAgICAgICAgICAgIHByb21pbmVuY2U9XCJ3ZWFrXCJcbiAgICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtoZWxwZXJ9XG4gICAgICAgICAgICA8L01hcmdlZFRleHQ+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvUmFkaW9TdGFjaz5cbiAgICAgIDwvVG9vbHRpcD5cbiAgICApXG4gIH0sXG4pXG4iXX0= */");
26
- const RadioStack = /* @__PURE__ */ _styled__default.default(index.Stack, process.env.NODE_ENV === "production" ? {
26
+ const RadioStack = /* @__PURE__ */ _styled__default.default(index$1.Stack, process.env.NODE_ENV === "production" ? {
27
27
  target: "ehkrmld6"
28
28
  } : {
29
29
  target: "ehkrmld6",
@@ -113,7 +113,7 @@ const StyledLabel = /* @__PURE__ */ _styled__default.default("label", process.en
113
113
  styles: "flex:1;cursor:pointer/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1JhZGlvL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3SWdDIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1JhZGlvL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHR5cGUgeyBJbnB1dEhUTUxBdHRyaWJ1dGVzLCBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IGZvcndhcmRSZWYsIHVzZUlkIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdHlwZSB7IExhYmVsUHJvcCB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJy4uL1Rvb2x0aXAnXG5cbmNvbnN0IElubmVyQ2lyY2xlUmluZyA9IHN0eWxlZC5jaXJjbGVgYFxuY29uc3QgUmFkaW9NYXJrID0gc3R5bGVkLmNpcmNsZWBgXG5cbmV4cG9ydCBjb25zdCBSYWRpb1N0YWNrID0gc3R5bGVkKFN0YWNrKWBgXG5cbmNvbnN0IFJhZGlvTWFya2VkSWNvbiA9ICgpID0+IChcbiAgPGc+XG4gICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIxMFwiIHN0cm9rZVdpZHRoPVwiMlwiIC8+XG4gICAgPElubmVyQ2lyY2xlUmluZyBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCI4XCIgLz5cbiAgICA8UmFkaW9NYXJrIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjVcIiAvPlxuICA8L2c+XG4pXG5cbmNvbnN0IFJpbmcgPSBzdHlsZWQuc3ZnYFxuICBoZWlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIHdpZHRoOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNpemluZ1snMzAwJ119O1xuICBtaW4td2lkdGg6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIG1pbi1oZWlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUucmFkaWkuY2lyY2xlfTtcbiAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZH07XG4gIH1cbmBcblxuY29uc3QgUmFkaW9JbnB1dCA9IHN0eWxlZC5pbnB1dGBcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zaXppbmdbJzMwMCddfTtcbiAgd2lkdGg6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIG9wYWNpdHk6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgJiArICR7UmluZ30ge1xuICAgICR7UmFkaW9NYXJrfSB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIH1cbiAgfVxuXG4gICY6Y2hlY2tlZCArIHN2ZyB7XG4gICAgJHtSYWRpb01hcmt9IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICB9XG5cbiAgJjpjaGVja2VkW2FyaWEtZGlzYWJsZWQ9J2ZhbHNlJ11bYXJpYS1pbnZhbGlkPSdmYWxzZSddICsgJHtSaW5nfSB7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMucHJpbWFyeS5iYWNrZ3JvdW5kU3Ryb25nfTtcbiAgfVxuXG4gICY6Y2hlY2tlZFthcmlhLWRpc2FibGVkPSd0cnVlJ11bYXJpYS1pbnZhbGlkPSdmYWxzZSddICsgJHtSaW5nfSB7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMucHJpbWFyeS5ib3JkZXJEaXNhYmxlZH07XG4gIH1cblxuICAmW2FyaWEtaW52YWxpZD0ndHJ1ZSddOm5vdChbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddKSArICR7UmluZ30ge1xuICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLmRhbmdlci5iYWNrZ3JvdW5kU3Ryb25nfTtcbiAgfVxuXG4gICZbYXJpYS1kaXNhYmxlZD0nZmFsc2UnXTphY3RpdmUgKyAke1Jpbmd9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWUxMjdlNDA7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMucHJpbWFyeS5iYWNrZ3JvdW5kU3Ryb25nfTtcbiAgICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMucHJpbWFyeS5iYWNrZ3JvdW5kfTtcbiAgICB9XG4gIH1cblxuICAmW2FyaWEtZGlzYWJsZWQ9J2ZhbHNlJ106Zm9jdXMtdmlzaWJsZSArICR7UmluZ30ge1xuICAgIG91dGxpbmU6IC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciBhdXRvIDFweDtcbiAgfVxuXG4gICZbYXJpYS1pbnZhbGlkPSd0cnVlJ106Zm9jdXMgKyAke1Jpbmd9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjkxYjZjNDA7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLmJhY2tncm91bmRTdHJvbmd9O1xuICAgICR7SW5uZXJDaXJjbGVSaW5nfSB7XG4gICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIuYmFja2dyb3VuZH07XG4gICAgfVxuICB9XG5gXG5cbmNvbnN0IFJhZGlvQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuXG4gICZbYXJpYS1kaXNhYmxlZD0nZmFsc2UnXSxcbiAgJlthcmlhLWRpc2FibGVkPSdmYWxzZSddID4gbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIDpob3ZlclthcmlhLWRpc2FibGVkPSdmYWxzZSddIHtcbiAgICAke1JhZGlvSW5wdXR9ICsgJHtSaW5nfSB7XG4gICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmJvcmRlcn07XG4gICAgICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmJhY2tncm91bmRIb3Zlcn07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJHtSYWRpb0lucHV0fVthcmlhLWludmFsaWQ9J3RydWUnXSArICR7UmluZ30ge1xuICAgICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLmJvcmRlcn07XG4gICAgICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIuYmFja2dyb3VuZEhvdmVyfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW2FyaWEtZGlzYWJsZWQ9J3RydWUnXSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuXG4gICAgJiA+IGxhYmVsLFxuICAgICR7UmFkaW9JbnB1dH0ge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAke1Jpbmd9IHtcbiAgICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICAgJHtJbm5lckNpcmNsZVJpbmd9IHtcbiAgICAgICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuYFxuXG5jb25zdCBTdHlsZWRMYWJlbCA9IHN0eWxlZC5sYWJlbGBcbiAgZmxleDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuYFxuXG5jb25zdCBTdHlsZWRUZXh0TGFiZWwgPSBzdHlsZWQoVGV4dClgXG4gIGZsZXg6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbmBcblxuY29uc3QgTWFyZ2VkVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzQnXX07XG5gXG5cbnR5cGUgUmFkaW9Qcm9wcyA9IHtcbiAgZXJyb3I/OiBSZWFjdE5vZGVcbiAgdmFsdWU6IHN0cmluZyB8IG51bWJlclxuICBoZWxwZXI/OiBSZWFjdE5vZGVcbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgdG9vbHRpcD86IHN0cmluZ1xufSAmIFJlcXVpcmVkPFBpY2s8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz4+ICZcbiAgUGljazxcbiAgICBJbnB1dEhUTUxBdHRyaWJ1dGVzPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIHwgJ29uRm9jdXMnXG4gICAgfCAnb25CbHVyJ1xuICAgIHwgJ2Rpc2FibGVkJ1xuICAgIHwgJ2F1dG9Gb2N1cydcbiAgICB8ICdvbktleURvd24nXG4gICAgfCAnaWQnXG4gICAgfCAnbmFtZSdcbiAgICB8ICdyZXF1aXJlZCdcbiAgICB8ICd0YWJJbmRleCdcbiAgICB8ICdjaGVja2VkJ1xuICA+ICZcbiAgTGFiZWxQcm9wXG5cbi8qKlxuICogUmFkaW8gY29tcG9uZW50IGlzIHVzZWQgdG8gc2VsZWN0IGEgc2luZ2xlIG9wdGlvbiBmcm9tIGEgbGlzdCBvZiBvcHRpb25zLiBJdCBpcyBhIHR5cGUgb2YgaW5wdXQgY29tcG9uZW50LlxuICovXG5leHBvcnQgY29uc3QgUmFkaW8gPSBmb3J3YXJkUmVmPEhUTUxJbnB1dEVsZW1lbnQsIFJhZGlvUHJvcHM+KFxuICAoXG4gICAge1xuICAgICAgY2hlY2tlZCA9IGZhbHNlLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBvbkZvY3VzLFxuICAgICAgb25CbHVyLFxuICAgICAgZGlzYWJsZWQgPSBmYWxzZSxcbiAgICAgIGVycm9yLFxuICAgICAgbmFtZSxcbiAgICAgIHZhbHVlLFxuICAgICAgbGFiZWwsXG4gICAgICBoZWxwZXIsXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBhdXRvRm9jdXMsXG4gICAgICBvbktleURvd24sXG4gICAgICB0b29sdGlwLFxuICAgICAgJ2FyaWEtbGFiZWwnOiBhcmlhTGFiZWwsXG4gICAgICAnZGF0YS10ZXN0aWQnOiBkYXRhVGVzdElkLFxuICAgICAgdGFiSW5kZXgsXG4gICAgfSxcbiAgICBmb3J3YWRlZFJlZixcbiAgKSA9PiB7XG4gICAgY29uc3QgaWQgPSB1c2VJZCgpXG4gICAgY29uc3QgY29tcHV0ZWROYW1lID0gbmFtZSA/PyBpZFxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sdGlwIHRleHQ9e3Rvb2x0aXB9PlxuICAgICAgICA8UmFkaW9TdGFjayBnYXA9ezAuNX0+XG4gICAgICAgICAgPFJhZGlvQ29udGFpbmVyXG4gICAgICAgICAgICBhcmlhLWRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgICAgICAgZGF0YS1jaGVja2VkPXtjaGVja2VkfVxuICAgICAgICAgICAgZGF0YS1lcnJvcj17ZXJyb3J9XG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8UmFkaW9JbnB1dFxuICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgICBhcmlhLWludmFsaWQ9eyEhZXJyb3J9XG4gICAgICAgICAgICAgIGFyaWEtZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWx9XG4gICAgICAgICAgICAgIGNoZWNrZWQ9e2NoZWNrZWR9XG4gICAgICAgICAgICAgIGlkPXtgJHtjb21wdXRlZE5hbWV9LSR7dmFsdWV9YH1cbiAgICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgICAgICBvbkZvY3VzPXtvbkZvY3VzfVxuICAgICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgICAgb25CbHVyPXtvbkJsdXJ9XG4gICAgICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICBuYW1lPXtjb21wdXRlZE5hbWV9XG4gICAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgICByZWY9e2ZvcndhZGVkUmVmfVxuICAgICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFJpbmcgdmlld0JveD1cIjAgMCAyNCAyNFwiPlxuICAgICAgICAgICAgICA8UmFkaW9NYXJrZWRJY29uIC8+XG4gICAgICAgICAgICA8L1Jpbmc+XG4gICAgICAgICAgICB7bGFiZWwgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAge3R5cGVvZiBsYWJlbCA9PT0gJ3N0cmluZycgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dExhYmVsXG4gICAgICAgICAgICAgICAgICAgIGFzPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwiYm9keVwiXG4gICAgICAgICAgICAgICAgICAgIHByb21pbmVuY2U9XCJkZWZhdWx0XCJcbiAgICAgICAgICAgICAgICAgICAgaHRtbEZvcj17YCR7Y29tcHV0ZWROYW1lfS0ke3ZhbHVlfWB9XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVGV4dExhYmVsPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkTGFiZWwgaHRtbEZvcj17YCR7Y29tcHV0ZWROYW1lfS0ke3ZhbHVlfWB9PlxuICAgICAgICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZExhYmVsPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9SYWRpb0NvbnRhaW5lcj5cbiAgICAgICAgICB7aGVscGVyID8gKFxuICAgICAgICAgICAgPE1hcmdlZFRleHRcbiAgICAgICAgICAgICAgYXM9XCJzcGFuXCJcbiAgICAgICAgICAgICAgdmFyaWFudD1cImNhcHRpb25cIlxuICAgICAgICAgICAgICBwcm9taW5lbmNlPVwid2Vha1wiXG4gICAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aGVscGVyfVxuICAgICAgICAgICAgPC9NYXJnZWRUZXh0PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1JhZGlvU3RhY2s+XG4gICAgICA8L1Rvb2x0aXA+XG4gICAgKVxuICB9LFxuKVxuIl19 */",
114
114
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
115
115
  });
116
- const StyledTextLabel = /* @__PURE__ */ _styled__default.default(index$1.Text, process.env.NODE_ENV === "production" ? {
116
+ const StyledTextLabel = /* @__PURE__ */ _styled__default.default(index$2.Text, process.env.NODE_ENV === "production" ? {
117
117
  target: "ehkrmld1"
118
118
  } : {
119
119
  target: "ehkrmld1",
@@ -126,7 +126,7 @@ const StyledTextLabel = /* @__PURE__ */ _styled__default.default(index$1.Text, p
126
126
  styles: "flex:1;cursor:pointer/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1JhZGlvL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2SW9DIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1JhZGlvL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHR5cGUgeyBJbnB1dEhUTUxBdHRyaWJ1dGVzLCBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IGZvcndhcmRSZWYsIHVzZUlkIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdHlwZSB7IExhYmVsUHJvcCB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJy4uL1Rvb2x0aXAnXG5cbmNvbnN0IElubmVyQ2lyY2xlUmluZyA9IHN0eWxlZC5jaXJjbGVgYFxuY29uc3QgUmFkaW9NYXJrID0gc3R5bGVkLmNpcmNsZWBgXG5cbmV4cG9ydCBjb25zdCBSYWRpb1N0YWNrID0gc3R5bGVkKFN0YWNrKWBgXG5cbmNvbnN0IFJhZGlvTWFya2VkSWNvbiA9ICgpID0+IChcbiAgPGc+XG4gICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIxMFwiIHN0cm9rZVdpZHRoPVwiMlwiIC8+XG4gICAgPElubmVyQ2lyY2xlUmluZyBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCI4XCIgLz5cbiAgICA8UmFkaW9NYXJrIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjVcIiAvPlxuICA8L2c+XG4pXG5cbmNvbnN0IFJpbmcgPSBzdHlsZWQuc3ZnYFxuICBoZWlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIHdpZHRoOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNpemluZ1snMzAwJ119O1xuICBtaW4td2lkdGg6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIG1pbi1oZWlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUucmFkaWkuY2lyY2xlfTtcbiAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZH07XG4gIH1cbmBcblxuY29uc3QgUmFkaW9JbnB1dCA9IHN0eWxlZC5pbnB1dGBcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zaXppbmdbJzMwMCddfTtcbiAgd2lkdGg6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc2l6aW5nWyczMDAnXX07XG4gIG9wYWNpdHk6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgJiArICR7UmluZ30ge1xuICAgICR7UmFkaW9NYXJrfSB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIH1cbiAgfVxuXG4gICY6Y2hlY2tlZCArIHN2ZyB7XG4gICAgJHtSYWRpb01hcmt9IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICB9XG5cbiAgJjpjaGVja2VkW2FyaWEtZGlzYWJsZWQ9J2ZhbHNlJ11bYXJpYS1pbnZhbGlkPSdmYWxzZSddICsgJHtSaW5nfSB7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMucHJpbWFyeS5iYWNrZ3JvdW5kU3Ryb25nfTtcbiAgfVxuXG4gICY6Y2hlY2tlZFthcmlhLWRpc2FibGVkPSd0cnVlJ11bYXJpYS1pbnZhbGlkPSdmYWxzZSddICsgJHtSaW5nfSB7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMucHJpbWFyeS5ib3JkZXJEaXNhYmxlZH07XG4gIH1cblxuICAmW2FyaWEtaW52YWxpZD0ndHJ1ZSddOm5vdChbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddKSArICR7UmluZ30ge1xuICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLmRhbmdlci5iYWNrZ3JvdW5kU3Ryb25nfTtcbiAgfVxuXG4gICZbYXJpYS1kaXNhYmxlZD0nZmFsc2UnXTphY3RpdmUgKyAke1Jpbmd9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWUxMjdlNDA7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMucHJpbWFyeS5iYWNrZ3JvdW5kU3Ryb25nfTtcbiAgICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMucHJpbWFyeS5iYWNrZ3JvdW5kfTtcbiAgICB9XG4gIH1cblxuICAmW2FyaWEtZGlzYWJsZWQ9J2ZhbHNlJ106Zm9jdXMtdmlzaWJsZSArICR7UmluZ30ge1xuICAgIG91dGxpbmU6IC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciBhdXRvIDFweDtcbiAgfVxuXG4gICZbYXJpYS1pbnZhbGlkPSd0cnVlJ106Zm9jdXMgKyAke1Jpbmd9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjkxYjZjNDA7XG4gICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLmJhY2tncm91bmRTdHJvbmd9O1xuICAgICR7SW5uZXJDaXJjbGVSaW5nfSB7XG4gICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIuYmFja2dyb3VuZH07XG4gICAgfVxuICB9XG5gXG5cbmNvbnN0IFJhZGlvQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuXG4gICZbYXJpYS1kaXNhYmxlZD0nZmFsc2UnXSxcbiAgJlthcmlhLWRpc2FibGVkPSdmYWxzZSddID4gbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIDpob3ZlclthcmlhLWRpc2FibGVkPSdmYWxzZSddIHtcbiAgICAke1JhZGlvSW5wdXR9ICsgJHtSaW5nfSB7XG4gICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmJvcmRlcn07XG4gICAgICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmJhY2tncm91bmRIb3Zlcn07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJHtSYWRpb0lucHV0fVthcmlhLWludmFsaWQ9J3RydWUnXSArICR7UmluZ30ge1xuICAgICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLmJvcmRlcn07XG4gICAgICAke0lubmVyQ2lyY2xlUmluZ30ge1xuICAgICAgICBmaWxsOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIuYmFja2dyb3VuZEhvdmVyfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW2FyaWEtZGlzYWJsZWQ9J3RydWUnXSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuXG4gICAgJiA+IGxhYmVsLFxuICAgICR7UmFkaW9JbnB1dH0ge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAke1Jpbmd9IHtcbiAgICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICAgJHtJbm5lckNpcmNsZVJpbmd9IHtcbiAgICAgICAgZmlsbDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuYFxuXG5jb25zdCBTdHlsZWRMYWJlbCA9IHN0eWxlZC5sYWJlbGBcbiAgZmxleDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuYFxuXG5jb25zdCBTdHlsZWRUZXh0TGFiZWwgPSBzdHlsZWQoVGV4dClgXG4gIGZsZXg6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbmBcblxuY29uc3QgTWFyZ2VkVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzQnXX07XG5gXG5cbnR5cGUgUmFkaW9Qcm9wcyA9IHtcbiAgZXJyb3I/OiBSZWFjdE5vZGVcbiAgdmFsdWU6IHN0cmluZyB8IG51bWJlclxuICBoZWxwZXI/OiBSZWFjdE5vZGVcbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgdG9vbHRpcD86IHN0cmluZ1xufSAmIFJlcXVpcmVkPFBpY2s8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz4+ICZcbiAgUGljazxcbiAgICBJbnB1dEhUTUxBdHRyaWJ1dGVzPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIHwgJ29uRm9jdXMnXG4gICAgfCAnb25CbHVyJ1xuICAgIHwgJ2Rpc2FibGVkJ1xuICAgIHwgJ2F1dG9Gb2N1cydcbiAgICB8ICdvbktleURvd24nXG4gICAgfCAnaWQnXG4gICAgfCAnbmFtZSdcbiAgICB8ICdyZXF1aXJlZCdcbiAgICB8ICd0YWJJbmRleCdcbiAgICB8ICdjaGVja2VkJ1xuICA+ICZcbiAgTGFiZWxQcm9wXG5cbi8qKlxuICogUmFkaW8gY29tcG9uZW50IGlzIHVzZWQgdG8gc2VsZWN0IGEgc2luZ2xlIG9wdGlvbiBmcm9tIGEgbGlzdCBvZiBvcHRpb25zLiBJdCBpcyBhIHR5cGUgb2YgaW5wdXQgY29tcG9uZW50LlxuICovXG5leHBvcnQgY29uc3QgUmFkaW8gPSBmb3J3YXJkUmVmPEhUTUxJbnB1dEVsZW1lbnQsIFJhZGlvUHJvcHM+KFxuICAoXG4gICAge1xuICAgICAgY2hlY2tlZCA9IGZhbHNlLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBvbkZvY3VzLFxuICAgICAgb25CbHVyLFxuICAgICAgZGlzYWJsZWQgPSBmYWxzZSxcbiAgICAgIGVycm9yLFxuICAgICAgbmFtZSxcbiAgICAgIHZhbHVlLFxuICAgICAgbGFiZWwsXG4gICAgICBoZWxwZXIsXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBhdXRvRm9jdXMsXG4gICAgICBvbktleURvd24sXG4gICAgICB0b29sdGlwLFxuICAgICAgJ2FyaWEtbGFiZWwnOiBhcmlhTGFiZWwsXG4gICAgICAnZGF0YS10ZXN0aWQnOiBkYXRhVGVzdElkLFxuICAgICAgdGFiSW5kZXgsXG4gICAgfSxcbiAgICBmb3J3YWRlZFJlZixcbiAgKSA9PiB7XG4gICAgY29uc3QgaWQgPSB1c2VJZCgpXG4gICAgY29uc3QgY29tcHV0ZWROYW1lID0gbmFtZSA/PyBpZFxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sdGlwIHRleHQ9e3Rvb2x0aXB9PlxuICAgICAgICA8UmFkaW9TdGFjayBnYXA9ezAuNX0+XG4gICAgICAgICAgPFJhZGlvQ29udGFpbmVyXG4gICAgICAgICAgICBhcmlhLWRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgICAgICAgZGF0YS1jaGVja2VkPXtjaGVja2VkfVxuICAgICAgICAgICAgZGF0YS1lcnJvcj17ZXJyb3J9XG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8UmFkaW9JbnB1dFxuICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgICBhcmlhLWludmFsaWQ9eyEhZXJyb3J9XG4gICAgICAgICAgICAgIGFyaWEtZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWx9XG4gICAgICAgICAgICAgIGNoZWNrZWQ9e2NoZWNrZWR9XG4gICAgICAgICAgICAgIGlkPXtgJHtjb21wdXRlZE5hbWV9LSR7dmFsdWV9YH1cbiAgICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgICAgICBvbkZvY3VzPXtvbkZvY3VzfVxuICAgICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgICAgb25CbHVyPXtvbkJsdXJ9XG4gICAgICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICBuYW1lPXtjb21wdXRlZE5hbWV9XG4gICAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgICByZWY9e2ZvcndhZGVkUmVmfVxuICAgICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFJpbmcgdmlld0JveD1cIjAgMCAyNCAyNFwiPlxuICAgICAgICAgICAgICA8UmFkaW9NYXJrZWRJY29uIC8+XG4gICAgICAgICAgICA8L1Jpbmc+XG4gICAgICAgICAgICB7bGFiZWwgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAge3R5cGVvZiBsYWJlbCA9PT0gJ3N0cmluZycgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dExhYmVsXG4gICAgICAgICAgICAgICAgICAgIGFzPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwiYm9keVwiXG4gICAgICAgICAgICAgICAgICAgIHByb21pbmVuY2U9XCJkZWZhdWx0XCJcbiAgICAgICAgICAgICAgICAgICAgaHRtbEZvcj17YCR7Y29tcHV0ZWROYW1lfS0ke3ZhbHVlfWB9XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVGV4dExhYmVsPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkTGFiZWwgaHRtbEZvcj17YCR7Y29tcHV0ZWROYW1lfS0ke3ZhbHVlfWB9PlxuICAgICAgICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZExhYmVsPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9SYWRpb0NvbnRhaW5lcj5cbiAgICAgICAgICB7aGVscGVyID8gKFxuICAgICAgICAgICAgPE1hcmdlZFRleHRcbiAgICAgICAgICAgICAgYXM9XCJzcGFuXCJcbiAgICAgICAgICAgICAgdmFyaWFudD1cImNhcHRpb25cIlxuICAgICAgICAgICAgICBwcm9taW5lbmNlPVwid2Vha1wiXG4gICAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aGVscGVyfVxuICAgICAgICAgICAgPC9NYXJnZWRUZXh0PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1JhZGlvU3RhY2s+XG4gICAgICA8L1Rvb2x0aXA+XG4gICAgKVxuICB9LFxuKVxuIl19 */",
127
127
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
128
128
  });
129
- const MargedText = /* @__PURE__ */ _styled__default.default(index$1.Text, process.env.NODE_ENV === "production" ? {
129
+ const MargedText = /* @__PURE__ */ _styled__default.default(index$2.Text, process.env.NODE_ENV === "production" ? {
130
130
  target: "ehkrmld0"
131
131
  } : {
132
132
  target: "ehkrmld0",
@@ -155,7 +155,7 @@ const Radio = React.forwardRef(({
155
155
  }, forwadedRef) => {
156
156
  const id = React.useId();
157
157
  const computedName = name ?? id;
158
- return /* @__PURE__ */ jsxRuntime.jsx(index$2.Tooltip, { text: tooltip, children: /* @__PURE__ */ jsxRuntime.jsxs(RadioStack, { gap: 0.5, children: [
158
+ return /* @__PURE__ */ jsxRuntime.jsx(index.Tooltip, { text: tooltip, children: /* @__PURE__ */ jsxRuntime.jsxs(RadioStack, { gap: 0.5, children: [
159
159
  /* @__PURE__ */ jsxRuntime.jsxs(RadioContainer, { "aria-disabled": disabled, className, "data-checked": checked, "data-error": error, "data-testid": dataTestId, children: [
160
160
  /* @__PURE__ */ jsxRuntime.jsx(RadioInput, { type: "radio", "aria-invalid": !!error, "aria-disabled": disabled, "aria-label": ariaLabel, checked, id: `${computedName}-${value}`, onChange, onFocus, onKeyDown, onBlur, value, disabled, name: computedName, autoFocus, ref: forwadedRef, tabIndex }),
161
161
  /* @__PURE__ */ jsxRuntime.jsx(Ring, { viewBox: "0 0 24 24", children: /* @__PURE__ */ jsxRuntime.jsx(RadioMarkedIcon, {}) }),