@amboss/design-system 2.3.9 → 2.3.11

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 (181) hide show
  1. package/build/cjs/components/BulkActionsToolbar/BulkActionsToolbar.js +1 -1
  2. package/build/cjs/components/BulkActionsToolbar/getCheckboxProps.d.ts +12 -0
  3. package/build/cjs/components/BulkActionsToolbar/getCheckboxProps.js +1 -0
  4. package/build/cjs/components/Button/Button.js +1 -1
  5. package/build/cjs/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  6. package/build/cjs/components/DropdownMenu/DropdownMenu.js +1 -1
  7. package/build/cjs/components/DropdownMenu/Menu.d.ts +1 -3
  8. package/build/cjs/components/DropdownMenu/Menu.js +1 -1
  9. package/build/cjs/components/DropdownMenu/MenuItem.js +1 -1
  10. package/build/cjs/components/EntityList/BaseEntityList.d.ts +3 -0
  11. package/build/cjs/components/EntityList/BaseEntityList.js +1 -0
  12. package/build/cjs/components/EntityList/EntityList.d.ts +3 -0
  13. package/build/cjs/components/EntityList/EntityList.js +1 -0
  14. package/build/cjs/components/EntityList/EntityListItem.d.ts +3 -0
  15. package/build/cjs/components/EntityList/EntityListItem.js +1 -0
  16. package/build/cjs/components/EntityList/EntityListItemExpandButton.d.ts +5 -0
  17. package/build/cjs/components/EntityList/EntityListItemExpandButton.js +1 -0
  18. package/build/cjs/components/EntityList/EntityListItemText.d.ts +3 -0
  19. package/build/cjs/components/EntityList/EntityListItemText.js +1 -0
  20. package/build/cjs/components/EntityList/index.d.ts +3 -0
  21. package/build/cjs/components/EntityList/index.js +1 -0
  22. package/build/cjs/components/EntityList/styled-components.d.ts +29 -0
  23. package/build/cjs/components/EntityList/styled-components.js +1 -0
  24. package/build/cjs/components/EntityList/types.d.ts +77 -0
  25. package/build/cjs/components/EntityTree/BaseEntityTree.d.ts +4 -11
  26. package/build/cjs/components/EntityTree/BaseEntityTree.js +1 -1
  27. package/build/cjs/components/EntityTree/EntityTree.js +1 -1
  28. package/build/cjs/components/EntityTree/tree.d.ts +1 -2
  29. package/build/cjs/components/EntityTree/tree.js +1 -1
  30. package/build/cjs/components/EntityTree/treeListData.mock.d.ts +2 -0
  31. package/build/cjs/components/EntityTree/treeListData.mock.js +1 -0
  32. package/build/cjs/components/EntityTree/types.d.ts +12 -1
  33. package/build/cjs/components/EntityTree/types.js +1 -1
  34. package/build/cjs/components/Form/Checkbox/Checkbox.js +1 -1
  35. package/build/cjs/components/Form/FormField/FormField.js +1 -3
  36. package/build/cjs/components/Form/FormFieldGroup/FormFieldGroup.js +1 -1
  37. package/build/cjs/components/Form/Input/Input.js +1 -1
  38. package/build/cjs/components/Form/PasswordInput/PasswordInput.js +1 -1
  39. package/build/cjs/components/Form/RangeInput/RangeInput.js +1 -1
  40. package/build/cjs/components/Form/Select/BaseSelect.d.ts +1 -1
  41. package/build/cjs/components/Form/Select/BaseSelect.js +1 -1
  42. package/build/cjs/components/Form/Select/MultiSelect.d.ts +1 -1
  43. package/build/cjs/components/Form/Select/MultiSelect.js +1 -1
  44. package/build/cjs/components/Form/Select/OptionsList.d.ts +16 -0
  45. package/build/cjs/components/Form/Select/OptionsList.js +1 -0
  46. package/build/cjs/components/Form/Select/Select.d.ts +5 -2
  47. package/build/cjs/components/Form/Select/Select.js +1 -1
  48. package/build/cjs/components/Form/Select/StyledSelectComponents.d.ts +0 -3
  49. package/build/cjs/components/Form/Select/StyledSelectComponents.js +1 -1
  50. package/build/cjs/components/Form/Textarea/Textarea.js +1 -1
  51. package/build/cjs/components/Form/Toggle/Toggle.js +1 -1
  52. package/build/cjs/components/Form/ToggleButton/ToggleButton.js +1 -1
  53. package/build/cjs/components/Patterns/Modal/Modal.js +3 -3
  54. package/build/cjs/components/Patterns/Modal/ModalContext.d.ts +2 -0
  55. package/build/cjs/components/Patterns/Modal/ModalContext.js +1 -0
  56. package/build/cjs/components/PictogramButton/PictogramButton.js +1 -1
  57. package/build/cjs/components/Portal/Portal.d.ts +4 -3
  58. package/build/cjs/components/Portal/Portal.js +1 -1
  59. package/build/cjs/components/RoundButton/RoundButton.js +1 -1
  60. package/build/cjs/components/Toolbar/Toolbar.js +1 -1
  61. package/build/cjs/components/Tooltip/TooltipContent.d.ts +2 -2
  62. package/build/cjs/components/Tooltip/TooltipContent.js +1 -1
  63. package/build/cjs/components/VirtualScrollList/VirtualScrollList.d.ts +2 -1
  64. package/build/cjs/components/VirtualScrollList/VirtualScrollList.js +1 -1
  65. package/build/cjs/index.d.ts +1 -0
  66. package/build/cjs/index.js +1 -1
  67. package/build/cjs/shared/popupMenu/usePopupMenu.d.ts +12 -0
  68. package/build/cjs/shared/popupMenu/usePopupMenu.js +1 -0
  69. package/build/cjs/types/index.d.ts +2 -0
  70. package/build/cjs/types/index.js +1 -1
  71. package/build/cjs/web-tokens/_colors.json +30 -22
  72. package/build/cjs/web-tokens/visualConfig.d.ts +1 -0
  73. package/build/cjs/web-tokens/visualConfig.js +1 -1
  74. package/build/esm/components/BulkActionsToolbar/BulkActionsToolbar.js +1 -1
  75. package/build/esm/components/BulkActionsToolbar/getCheckboxProps.d.ts +12 -0
  76. package/build/esm/components/BulkActionsToolbar/getCheckboxProps.js +1 -0
  77. package/build/esm/components/Button/Button.js +1 -1
  78. package/build/esm/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  79. package/build/esm/components/DropdownMenu/DropdownMenu.js +1 -1
  80. package/build/esm/components/DropdownMenu/Menu.d.ts +1 -3
  81. package/build/esm/components/DropdownMenu/Menu.js +1 -1
  82. package/build/esm/components/DropdownMenu/MenuItem.js +1 -1
  83. package/build/esm/components/EntityList/BaseEntityList.d.ts +3 -0
  84. package/build/esm/components/EntityList/BaseEntityList.js +1 -0
  85. package/build/esm/components/EntityList/EntityList.d.ts +3 -0
  86. package/build/esm/components/EntityList/EntityList.js +1 -0
  87. package/build/esm/components/EntityList/EntityListItem.d.ts +3 -0
  88. package/build/esm/components/EntityList/EntityListItem.js +1 -0
  89. package/build/esm/components/EntityList/EntityListItemExpandButton.d.ts +5 -0
  90. package/build/esm/components/EntityList/EntityListItemExpandButton.js +1 -0
  91. package/build/esm/components/EntityList/EntityListItemText.d.ts +3 -0
  92. package/build/esm/components/EntityList/EntityListItemText.js +1 -0
  93. package/build/esm/components/EntityList/index.d.ts +3 -0
  94. package/build/esm/components/EntityList/index.js +1 -0
  95. package/build/esm/components/EntityList/styled-components.d.ts +29 -0
  96. package/build/esm/components/EntityList/styled-components.js +1 -0
  97. package/build/esm/components/EntityList/types.d.ts +77 -0
  98. package/build/esm/components/EntityTree/BaseEntityTree.d.ts +4 -11
  99. package/build/esm/components/EntityTree/BaseEntityTree.js +1 -1
  100. package/build/esm/components/EntityTree/EntityTree.js +1 -1
  101. package/build/esm/components/EntityTree/tree.d.ts +1 -2
  102. package/build/esm/components/EntityTree/tree.js +1 -1
  103. package/build/esm/components/EntityTree/treeListData.mock.d.ts +2 -0
  104. package/build/esm/components/EntityTree/treeListData.mock.js +1 -0
  105. package/build/esm/components/EntityTree/types.d.ts +12 -1
  106. package/build/esm/components/EntityTree/types.js +1 -1
  107. package/build/esm/components/Form/Checkbox/Checkbox.js +1 -1
  108. package/build/esm/components/Form/FormField/FormField.js +1 -3
  109. package/build/esm/components/Form/FormFieldGroup/FormFieldGroup.js +1 -1
  110. package/build/esm/components/Form/Input/Input.js +1 -1
  111. package/build/esm/components/Form/PasswordInput/PasswordInput.js +1 -1
  112. package/build/esm/components/Form/RangeInput/RangeInput.js +1 -1
  113. package/build/esm/components/Form/Select/BaseSelect.d.ts +1 -1
  114. package/build/esm/components/Form/Select/BaseSelect.js +1 -1
  115. package/build/esm/components/Form/Select/MultiSelect.d.ts +1 -1
  116. package/build/esm/components/Form/Select/MultiSelect.js +1 -1
  117. package/build/esm/components/Form/Select/OptionsList.d.ts +16 -0
  118. package/build/esm/components/Form/Select/OptionsList.js +1 -0
  119. package/build/esm/components/Form/Select/Select.d.ts +5 -2
  120. package/build/esm/components/Form/Select/Select.js +1 -1
  121. package/build/esm/components/Form/Select/StyledSelectComponents.d.ts +0 -3
  122. package/build/esm/components/Form/Select/StyledSelectComponents.js +1 -1
  123. package/build/esm/components/Form/Textarea/Textarea.js +1 -1
  124. package/build/esm/components/Form/Toggle/Toggle.js +1 -1
  125. package/build/esm/components/Form/ToggleButton/ToggleButton.js +1 -1
  126. package/build/esm/components/Patterns/Modal/Modal.js +3 -3
  127. package/build/esm/components/Patterns/Modal/ModalContext.d.ts +2 -0
  128. package/build/esm/components/Patterns/Modal/ModalContext.js +1 -0
  129. package/build/esm/components/PictogramButton/PictogramButton.js +1 -1
  130. package/build/esm/components/Portal/Portal.d.ts +4 -3
  131. package/build/esm/components/Portal/Portal.js +1 -1
  132. package/build/esm/components/RoundButton/RoundButton.js +1 -1
  133. package/build/esm/components/Toolbar/Toolbar.js +1 -1
  134. package/build/esm/components/Tooltip/TooltipContent.d.ts +2 -2
  135. package/build/esm/components/Tooltip/TooltipContent.js +1 -1
  136. package/build/esm/components/VirtualScrollList/VirtualScrollList.d.ts +2 -1
  137. package/build/esm/components/VirtualScrollList/VirtualScrollList.js +1 -1
  138. package/build/esm/index.d.ts +1 -0
  139. package/build/esm/index.js +1 -1
  140. package/build/esm/shared/popupMenu/usePopupMenu.d.ts +12 -0
  141. package/build/esm/shared/popupMenu/usePopupMenu.js +1 -0
  142. package/build/esm/types/index.d.ts +2 -0
  143. package/build/esm/types/index.js +1 -1
  144. package/build/esm/web-tokens/_colors.json +30 -22
  145. package/build/esm/web-tokens/visualConfig.d.ts +1 -0
  146. package/build/esm/web-tokens/visualConfig.js +1 -1
  147. package/build/scss/_theming.scss +14 -12
  148. package/build/scss/_variables.scss +1 -0
  149. package/package.json +2 -2
  150. package/build/cjs/components/List/List.d.ts +0 -3
  151. package/build/cjs/components/List/List.js +0 -1
  152. package/build/cjs/components/List/ListItem.d.ts +0 -3
  153. package/build/cjs/components/List/ListItem.js +0 -1
  154. package/build/cjs/components/List/ListItemExpandButton.d.ts +0 -5
  155. package/build/cjs/components/List/ListItemExpandButton.js +0 -1
  156. package/build/cjs/components/List/ListItemLabel.d.ts +0 -3
  157. package/build/cjs/components/List/ListItemLabel.js +0 -1
  158. package/build/cjs/components/List/ListItemText.d.ts +0 -3
  159. package/build/cjs/components/List/ListItemText.js +0 -1
  160. package/build/cjs/components/List/styled-components.d.ts +0 -18
  161. package/build/cjs/components/List/styled-components.js +0 -1
  162. package/build/cjs/components/List/types.d.ts +0 -56
  163. package/build/esm/components/List/List.d.ts +0 -3
  164. package/build/esm/components/List/List.js +0 -1
  165. package/build/esm/components/List/ListItem.d.ts +0 -3
  166. package/build/esm/components/List/ListItem.js +0 -1
  167. package/build/esm/components/List/ListItemExpandButton.d.ts +0 -5
  168. package/build/esm/components/List/ListItemExpandButton.js +0 -1
  169. package/build/esm/components/List/ListItemLabel.d.ts +0 -3
  170. package/build/esm/components/List/ListItemLabel.js +0 -1
  171. package/build/esm/components/List/ListItemText.d.ts +0 -3
  172. package/build/esm/components/List/ListItemText.js +0 -1
  173. package/build/esm/components/List/styled-components.d.ts +0 -18
  174. package/build/esm/components/List/styled-components.js +0 -1
  175. package/build/esm/components/List/types.d.ts +0 -56
  176. /package/build/cjs/components/{List → EntityList}/types.js +0 -0
  177. /package/build/cjs/{components/DropdownMenu/utils.d.ts → shared/popupMenu/getMenuStyle.d.ts} +0 -0
  178. /package/build/cjs/{components/DropdownMenu/utils.js → shared/popupMenu/getMenuStyle.js} +0 -0
  179. /package/build/esm/components/{List → EntityList}/types.js +0 -0
  180. /package/build/esm/{components/DropdownMenu/utils.d.ts → shared/popupMenu/getMenuStyle.d.ts} +0 -0
  181. /package/build/esm/{components/DropdownMenu/utils.js → shared/popupMenu/getMenuStyle.js} +0 -0
@@ -1,11 +1,11 @@
1
- import React,{useEffect,useMemo,useRef,useState}from"react";import styled from"@emotion/styled";import{keyframes}from"@emotion/react";import{Portal}from"../../Portal/Portal";import{H2,H4,H6}from"../../Typography/Header/Header";import{Stack}from"../../Stack/Stack";import{Container}from"../../Container/Container";import{Box}from"../../Box/Box";import{Inline}from"../../Inline/Inline";import{ButtonGroup}from"../ButtonGroup/ButtonGroup";import{PictogramButton}from"../../PictogramButton/PictogramButton";import{Text}from"../../Typography/Text/Text";import{mqValue}from"../../../shared/mediaQueries";import{useOnEscapePress}from"../../../shared/useOnEscapePress";import{useOutsideClick}from"../../../shared/useOutsideClick";import{useScrollDetection}from"../../../shared/useScrollDetection";export const StyledBackdrop=styled("div",{target:"e6v82qi0",label:"StyledBackdrop"})(({theme})=>{let fadeInBackdrop=useMemo(()=>keyframes`
1
+ import React,{useEffect,useMemo,useRef,useState}from"react";import styled from"@emotion/styled";import{keyframes}from"@emotion/react";import{Portal}from"../../Portal/Portal";import{H2,H4,H6}from"../../Typography/Header/Header";import{Stack}from"../../Stack/Stack";import{Container}from"../../Container/Container";import{Box}from"../../Box/Box";import{Inline}from"../../Inline/Inline";import{ButtonGroup}from"../ButtonGroup/ButtonGroup";import{PictogramButton}from"../../PictogramButton/PictogramButton";import{Text}from"../../Typography/Text/Text";import{mqValue}from"../../../shared/mediaQueries";import{useOnEscapePress}from"../../../shared/useOnEscapePress";import{useOutsideClick}from"../../../shared/useOutsideClick";import{useScrollDetection}from"../../../shared/useScrollDetection";import{ModalContext}from"./ModalContext";export const StyledBackdrop=styled("div",{target:"e123vch80",label:"StyledBackdrop"})(({theme})=>{let fadeInBackdrop=useMemo(()=>keyframes`
2
2
  from {
3
3
  opacity: ${theme.variables.opacity.hidden};
4
4
  }
5
5
  to {
6
6
  opacity: ${theme.variables.opacity.visible};
7
7
  }
8
- `,[theme.variables.opacity.hidden,theme.variables.opacity.visible]);return{position:"fixed",top:0,left:0,width:"100%",height:"100dvh",background:theme.values.color.background.backdrop.default,display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",flex:"1 0 auto",animation:`${fadeInBackdrop} ${theme.variables.animation.modalBackdrop.open.duration} ${theme.variables.animation.modalBackdrop.open.timingFunction} both`}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5cbnR5cGUgQmFzZVByb3BzID0ge1xuICBoZWFkZXI6IHN0cmluZztcbiAgb25BY3Rpb246IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBwcml2YXRlUHJvcHM/OiB7IHNraXBQb3J0YWw/OiBib29sZWFuIH07XG4gIC8qKiBJdCdzIGEgYmFkIHBhdHRlcm4gdG8gdXNlIG5vbi1kaXNtaXNzaWJsZSBNb2RhbCAqL1xuICBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBpc0Z1bGxTY3JlZW4/OiBib29sZWFuO1xuICBpc01heFdpZHRoTGltaXQ/OiBib29sZWFuO1xuICBzaXplPzogXCJtXCIgfCBcImxcIjtcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICYgQ29uZGl0aW9uYWxQcm9wcztcblxuY29uc3QgZGVmYXVsdE1vZGFsUHJvcHM6IFBhcnRpYWw8TW9kYWxQcm9wcz4gPSB7XG4gIHJvbGU6IFwiZGlhbG9nXCIsXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiB1bmRlZmluZWQsXG4gIHByaXZhdGVQcm9wczogeyBza2lwUG9ydGFsOiBmYWxzZSB9LFxufTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgd2lkdGg6IFtcbiAgICAgICAgICBgY2FsYygxMDAlIC0gJHtnZXRNb2JpbGVTcGFjZSh0aGVtZSl9ICogMilgLFxuICAgICAgICAgIGlzRnVsbFNjcmVlblxuICAgICAgICAgICAgPyBgY2FsYygxMDAlIC0gJHtnZXREZXNrdG9wU3BhY2UodGhlbWUpfSAqIDIpYFxuICAgICAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwud2lkdGhbc2l6ZV0sXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBTdHlsZWRJbm5lciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IG1vYmlsZVZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgbW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlSW5uZXJTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcFZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wSW5uZXJTcGFjZSh0aGVtZSk7XG5cbiAgICAvLyBmdWxsc2NyZWVuIGFuZCBMIHNpemUgZG9uJ3QgZGVwZW5kIG9uIGNvbnRlbnQgc2l6ZVxuICAgIC8vIEwgc2l6ZSBoZWlnaHQgaGFzIG1heEhpZWdodCByZXNpemUgdW50aWwgODAwcHhcbiAgICAvLyBmdWxsc2NyZWVuIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuICAgIC8vIE0gc2l6ZSBoZWlnaHQgaGFzIGNvbnRlbnQgc2l6ZSBhbmQgY2VudGVyZWQgYXQgdG9wIGFuZCBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcblxuICAgIGNvbnN0IGdldERlc2t0b3BIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMiAtICR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1hcmdpbi5sfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBcImF1dG9cIjtcbiAgICB9O1xuXG4gICAgY29uc3QgZ2V0RGVza3RvcE1heEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBhdXRvYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWF4SGVpZ2h0Lmx9IC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgIH07XG5cbiAgICBjb25zdCBmdWxsU2NyZWVuTW9iaWxlID0gYGNhbGMoMTAwZHZoIC0gJHttb2JpbGVWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke21vYmlsZUlubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4ubXFWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xufSAmIFBhcnRpYWw8TW9kYWxQcm9wcz4pOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT5cbiAgc2tpcFBvcnRhbCA/IChcbiAgICA8PntjaGlsZHJlbn08Lz5cbiAgKSA6IChcbiAgICA8UG9ydGFsPlxuICAgICAgPFN0eWxlZEJhY2tkcm9wPntjaGlsZHJlbn08L1N0eWxlZEJhY2tkcm9wPlxuICAgIDwvUG9ydGFsPlxuICApO1xuXG5jb25zdCBCdXR0b25DbG9zZSA9ICh7IG9uQ2xpY2sgfTogeyBvbkNsaWNrOiBSZWFjdC5SZWFjdEV2ZW50SGFuZGxlciB9KSA9PiAoXG4gIDxTdHlsZWRYQ29udGFpbmVyPlxuICAgIDxQaWN0b2dyYW1CdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgaWNvbj1cInhcIiBzaXplPVwic1wiIG9uQ2xpY2s9e29uQ2xpY2t9IC8+XG4gIDwvU3R5bGVkWENvbnRhaW5lcj5cbik7XG5cbmNvbnN0IEhvcml6b250YWxPZmZzZXQgPSAoe1xuICBjaGlsZHJlbixcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+KSA9PiAoXG4gIDxCb3ggc3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19IHZTcGFjZT1cInplcm9cIj5cbiAgICB7aXNGdWxsU2NyZWVuICYmIGlzTWF4V2lkdGhMaW1pdCA/IChcbiAgICAgIDxTdHlsZWRNYXhXaWR0aD57Y2hpbGRyZW59PC9TdHlsZWRNYXhXaWR0aD5cbiAgICApIDogKFxuICAgICAgY2hpbGRyZW5cbiAgICApfVxuICA8L0JveD5cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2RhbCh7XG4gIGhlYWRlcixcbiAgc3ViSGVhZGVyLFxuICBsYWJlbEhlYWRlcixcbiAgY2hpbGRyZW4sXG4gIGltYWdlVXJsLFxuICBJbWFnZUNvbXBvbmVudCxcbiAgc2Vjb25kYXJ5QnV0dG9uLFxuICBjYW5jZWxCdXR0b25MYWJlbCxcbiAgaXNEaXNtaXNzaWJsZSA9IHRydWUsXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0ID0gdHJ1ZSxcbiAgYWN0aW9uQnV0dG9uLFxuICByb2xlLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgW2lzT3BlbmluZywgc2V0T3BlbmluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgaWYgKGlzRGlzbWlzc2libGUpIHtcbiAgICAgIG9uQWN0aW9uKFwiY2FuY2VsXCIpO1xuICAgIH1cbiAgfTtcbiAgY29uc3QgaGFzQmFja2Ryb3BEaXNtaXNzID0gIXNraXBQb3J0YWw7XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRPcGVuaW5nKGZhbHNlKTtcbiAgfSwgW10pO1xuXG4gIHVzZU91dHNpZGVDbGljayhtb2RhbFJlZiwgaGFuZGxlQ2xvc2UsIGhhc0JhY2tkcm9wRGlzbWlzcyAmJiAhaXNPcGVuaW5nKTtcbiAgdXNlT25Fc2NhcGVQcmVzcyhoYW5kbGVDbG9zZSwgW2hhbmRsZUNsb3NlXSk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0+XG4gICAgICA8U3R5bGVkTW9kYWxXcmFwcGVyXG4gICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgPlxuICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19PlxuICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiBiU3BhY2U9XCJzXCI+XG4gICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEltZyBzcmM9e2ltYWdlVXJsfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNvbXBvbmVudCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xhYmVsSGVhZGVyICYmIDxINj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxIMj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXIgJiYgPEg0IGNvbG9yPVwidGVydGlhcnlcIj57c3ViSGVhZGVyfTwvSDQ+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgIDwvSW5saW5lPlxuICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgIGJvcmRlclRvcD17aGFzU2Nyb2xsICYmICFpc1Njcm9sbFRvcH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiPlxuICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgIHsoYWN0aW9uQnV0dG9uIHx8IGNhbmNlbEJ1dHRvbkxhYmVsIHx8IHNlY29uZGFyeUJ1dHRvbikgJiYgKFxuICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dD17Y2FuY2VsQnV0dG9uTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L0Zvb3Rlcj5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1N0eWxlZElubmVyPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvU3R5bGVkTW9kYWxXcmFwcGVyPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuZGVmYXVsdFByb3BzID0gZGVmYXVsdE1vZGFsUHJvcHM7XG5cbk1vZGFsLlN0YWNrID0gTW9kYWxTdGFjaztcbk1vZGFsLlRleHQgPSBNb2RhbFRleHQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBbUU4QiJ9 */");let getDesktopSpace=theme=>theme.variables.size.spacing.l,getDesktopInnerSpace=theme=>theme.variables.size.spacing.xl,getMobileSpace=theme=>theme.variables.size.spacing.m,getMobileInnerSpace=theme=>theme.variables.size.spacing.m,StyledModalWrapper=styled("div",{target:"e6v82qi1",label:"StyledModalWrapper"})(({theme,isFullScreen,size})=>{let fadeInModal=useMemo(()=>keyframes`
8
+ `,[theme.variables.opacity.hidden,theme.variables.opacity.visible]);return{position:"fixed",top:0,left:0,width:"100%",height:"100dvh",background:theme.values.color.background.backdrop.default,display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",flex:"1 0 auto",animation:`${fadeInBackdrop} ${theme.variables.animation.modalBackdrop.open.duration} ${theme.variables.animation.modalBackdrop.open.timingFunction} both`}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xufTtcblxudHlwZSBDb25kaXRpb25hbFByb3BzID1cbiAgfCB7XG4gICAgICAvKiogQXNwZWN0IHJhdGlvIDE2OjkgKi9cbiAgICAgIGltYWdlVXJsPzogc3RyaW5nO1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaW1hZ2VVcmw/OiBuZXZlcjtcbiAgICAgIC8qKiBBY2NlcHQgcmF0aW8gMTY6OSAqL1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBSZWFjdC5FbGVtZW50VHlwZTxhbnk+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIE1vZGFsUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5jb25zdCBkZWZhdWx0TW9kYWxQcm9wczogUGFydGlhbDxNb2RhbFByb3BzPiA9IHtcbiAgcm9sZTogXCJkaWFsb2dcIixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IHVuZGVmaW5lZCxcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWw6IGZhbHNlIH0sXG59O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICBoZWlnaHQ6IFtcbiAgICAgICAgICBzaXplID09PSBcImxcIiB8fCBpc0Z1bGxTY3JlZW4gPyBmdWxsU2NyZWVuTW9iaWxlIDogXCJhdXRvXCIsXG4gICAgICAgICAgZ2V0RGVza3RvcEhlaWdodCgpLFxuICAgICAgICBdLFxuICAgICAgICBtYXhIZWlnaHQ6IFtmdWxsU2NyZWVuTW9iaWxlLCBnZXREZXNrdG9wTWF4SGVpZ2h0KCldLFxuICAgICAgfSksXG5cbiAgICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICB9O1xuICB9XG4pO1xuXG50eXBlIFN0eWxlZEJvZHlQcm9wcyA9IHtcbiAgYm9yZGVyQm90dG9tOiBib29sZWFuO1xuICBib3JkZXJUb3A6IGJvb2xlYW47XG59O1xuXG5jb25zdCBTdHlsZWRCb2R5ID0gc3R5bGVkLmRpdjxTdHlsZWRCb2R5UHJvcHMgJiBQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGJvcmRlckJvdHRvbSwgYm9yZGVyVG9wLCBzaXplLCBpc0Z1bGxTY3JlZW4gfSkgPT4gKHtcbiAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgIG1heEhlaWdodDogXCIxMDAlXCIsXG5cbiAgICAuLi4oKGlzRnVsbFNjcmVlbiB8fCBzaXplID09PSBcImxcIikgJiYge1xuICAgICAgZmxleDogMSxcbiAgICB9KSxcblxuICAgIC4uLihib3JkZXJCb3R0b20gJiYge1xuICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICAgIC4uLihib3JkZXJUb3AgJiYge1xuICAgICAgYm9yZGVyVG9wOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSW1nID0gc3R5bGVkLmltZygoKSA9PiAoe1xuICB3aWR0aDogXCIxMDAlXCIsXG4gIGFzcGVjdFJhdGlvOiBcIjE2LzlcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkTWF4V2lkdGggPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KCh7IHRoZW1lIH0pID0+ICh7XG4gIG1heFdpZHRoOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwuZnVsbFNjcmVlbkNvbnRlbnRXaWR0aCxcbiAgbWFyZ2luOiBcIjAgYXV0b1wiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRYQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAuLi5tcVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIHNraXBQb3J0YWw6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdEVsZW1lbnQ7XG59ICYgUGFydGlhbDxNb2RhbFByb3BzPik6IFJlYWN0LlJlYWN0RWxlbWVudCA9PlxuICBza2lwUG9ydGFsID8gKFxuICAgIDw+e2NoaWxkcmVufTwvPlxuICApIDogKFxuICAgIDxNb2RhbENvbnRleHQuUHJvdmlkZXIgdmFsdWU+XG4gICAgICA8UG9ydGFsPlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxufTogUGFydGlhbDxNb2RhbFByb3BzPikgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCI+XG4gICAge2lzRnVsbFNjcmVlbiAmJiBpc01heFdpZHRoTGltaXQgPyAoXG4gICAgICA8U3R5bGVkTWF4V2lkdGg+e2NoaWxkcmVufTwvU3R5bGVkTWF4V2lkdGg+XG4gICAgKSA6IChcbiAgICAgIGNoaWxkcmVuXG4gICAgKX1cbiAgPC9Cb3g+XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gTW9kYWwoe1xuICBoZWFkZXIsXG4gIHN1YkhlYWRlcixcbiAgbGFiZWxIZWFkZXIsXG4gIGNoaWxkcmVuLFxuICBpbWFnZVVybCxcbiAgSW1hZ2VDb21wb25lbnQsXG4gIHNlY29uZGFyeUJ1dHRvbixcbiAgY2FuY2VsQnV0dG9uTGFiZWwsXG4gIGlzRGlzbWlzc2libGUgPSB0cnVlLFxuICBpc0Z1bGxTY3JlZW4sXG4gIGlzTWF4V2lkdGhMaW1pdCA9IHRydWUsXG4gIGFjdGlvbkJ1dHRvbixcbiAgcm9sZSxcbiAgb25BY3Rpb24sXG4gIHNpemUgPSBcIm1cIixcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWwgfSA9IHsgc2tpcFBvcnRhbDogZmFsc2UgfSxcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBNb2RhbFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgbW9kYWxSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IFtpc09wZW5pbmcsIHNldE9wZW5pbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChpc0Rpc21pc3NpYmxlKSB7XG4gICAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgICB9XG4gIH07XG4gIGNvbnN0IGhhc0JhY2tkcm9wRGlzbWlzcyA9ICFza2lwUG9ydGFsO1xuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0T3BlbmluZyhmYWxzZSk7XG4gIH0sIFtdKTtcblxuICB1c2VPdXRzaWRlQ2xpY2sobW9kYWxSZWYsIGhhbmRsZUNsb3NlLCBoYXNCYWNrZHJvcERpc21pc3MgJiYgIWlzT3BlbmluZyk7XG4gIHVzZU9uRXNjYXBlUHJlc3MoaGFuZGxlQ2xvc2UsIFtoYW5kbGVDbG9zZV0pO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyIHNraXBQb3J0YWw9e3NraXBQb3J0YWx9PlxuICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICByb2xlPXtyb2xlfVxuICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgID5cbiAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICB7aGFzSW1hZ2UgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPXtbXCJ4bFwiLCBcImxcIl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ4eHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDY+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwiemVyb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SDI+e2hlYWRlcn08L0gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIDxINCBjb2xvcj1cInRlcnRpYXJ5XCI+e3N1YkhlYWRlcn08L0g0Pn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICB7aXNEaXNtaXNzaWJsZSAmJiA8QnV0dG9uQ2xvc2Ugb25DbGljaz17aGFuZGxlQ2xvc2V9IC8+fVxuICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgIHJlZj17c2Nyb2xsYWJsZVJlZn1cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17aGFzU2Nyb2xsICYmICFpc1Njcm9sbEJvdHRvbX1cbiAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvU3R5bGVkQm9keT5cblxuICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxGb290ZXI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIHNlY29uZGFyeUJ1dHRvbj17c2Vjb25kYXJ5QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgPC9Db250YWluZXI+XG4gICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICA8L1dyYXBwZXI+XG4gICk7XG59XG5cbk1vZGFsLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRNb2RhbFByb3BzO1xuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9FOEIifQ== */");let getDesktopSpace=theme=>theme.variables.size.spacing.l,getDesktopInnerSpace=theme=>theme.variables.size.spacing.xl,getMobileSpace=theme=>theme.variables.size.spacing.m,getMobileInnerSpace=theme=>theme.variables.size.spacing.m,StyledModalWrapper=styled("div",{target:"e123vch81",label:"StyledModalWrapper"})(({theme,isFullScreen,size})=>{let fadeInModal=useMemo(()=>keyframes`
9
9
  from {
10
10
  opacity: ${theme.variables.opacity.hidden};
11
11
  transform: translateY(20px);
@@ -14,4 +14,4 @@ import React,{useEffect,useMemo,useRef,useState}from"react";import styled from"@
14
14
  opacity: ${theme.variables.opacity.visible};
15
15
  transform: translateY(0);
16
16
  }
17
- `,[theme.variables.opacity.hidden,theme.variables.opacity.visible]);return{animation:`${fadeInModal} ${theme.variables.animation.modal.open.duration} ${theme.variables.animation.modal.open.delay} ${theme.variables.animation.modal.open.timingFunction} both`,...mqValue({width:[`calc(100% - ${getMobileSpace(theme)} * 2)`,isFullScreen?`calc(100% - ${getDesktopSpace(theme)} * 2)`:theme.variables.size.dimension.modal.width[size]]})}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5cbnR5cGUgQmFzZVByb3BzID0ge1xuICBoZWFkZXI6IHN0cmluZztcbiAgb25BY3Rpb246IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBwcml2YXRlUHJvcHM/OiB7IHNraXBQb3J0YWw/OiBib29sZWFuIH07XG4gIC8qKiBJdCdzIGEgYmFkIHBhdHRlcm4gdG8gdXNlIG5vbi1kaXNtaXNzaWJsZSBNb2RhbCAqL1xuICBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBpc0Z1bGxTY3JlZW4/OiBib29sZWFuO1xuICBpc01heFdpZHRoTGltaXQ/OiBib29sZWFuO1xuICBzaXplPzogXCJtXCIgfCBcImxcIjtcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICYgQ29uZGl0aW9uYWxQcm9wcztcblxuY29uc3QgZGVmYXVsdE1vZGFsUHJvcHM6IFBhcnRpYWw8TW9kYWxQcm9wcz4gPSB7XG4gIHJvbGU6IFwiZGlhbG9nXCIsXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiB1bmRlZmluZWQsXG4gIHByaXZhdGVQcm9wczogeyBza2lwUG9ydGFsOiBmYWxzZSB9LFxufTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgd2lkdGg6IFtcbiAgICAgICAgICBgY2FsYygxMDAlIC0gJHtnZXRNb2JpbGVTcGFjZSh0aGVtZSl9ICogMilgLFxuICAgICAgICAgIGlzRnVsbFNjcmVlblxuICAgICAgICAgICAgPyBgY2FsYygxMDAlIC0gJHtnZXREZXNrdG9wU3BhY2UodGhlbWUpfSAqIDIpYFxuICAgICAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwud2lkdGhbc2l6ZV0sXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBTdHlsZWRJbm5lciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IG1vYmlsZVZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgbW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlSW5uZXJTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcFZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wSW5uZXJTcGFjZSh0aGVtZSk7XG5cbiAgICAvLyBmdWxsc2NyZWVuIGFuZCBMIHNpemUgZG9uJ3QgZGVwZW5kIG9uIGNvbnRlbnQgc2l6ZVxuICAgIC8vIEwgc2l6ZSBoZWlnaHQgaGFzIG1heEhpZWdodCByZXNpemUgdW50aWwgODAwcHhcbiAgICAvLyBmdWxsc2NyZWVuIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuICAgIC8vIE0gc2l6ZSBoZWlnaHQgaGFzIGNvbnRlbnQgc2l6ZSBhbmQgY2VudGVyZWQgYXQgdG9wIGFuZCBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcblxuICAgIGNvbnN0IGdldERlc2t0b3BIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMiAtICR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1hcmdpbi5sfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBcImF1dG9cIjtcbiAgICB9O1xuXG4gICAgY29uc3QgZ2V0RGVza3RvcE1heEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBhdXRvYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWF4SGVpZ2h0Lmx9IC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgIH07XG5cbiAgICBjb25zdCBmdWxsU2NyZWVuTW9iaWxlID0gYGNhbGMoMTAwZHZoIC0gJHttb2JpbGVWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke21vYmlsZUlubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4ubXFWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xufSAmIFBhcnRpYWw8TW9kYWxQcm9wcz4pOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT5cbiAgc2tpcFBvcnRhbCA/IChcbiAgICA8PntjaGlsZHJlbn08Lz5cbiAgKSA6IChcbiAgICA8UG9ydGFsPlxuICAgICAgPFN0eWxlZEJhY2tkcm9wPntjaGlsZHJlbn08L1N0eWxlZEJhY2tkcm9wPlxuICAgIDwvUG9ydGFsPlxuICApO1xuXG5jb25zdCBCdXR0b25DbG9zZSA9ICh7IG9uQ2xpY2sgfTogeyBvbkNsaWNrOiBSZWFjdC5SZWFjdEV2ZW50SGFuZGxlciB9KSA9PiAoXG4gIDxTdHlsZWRYQ29udGFpbmVyPlxuICAgIDxQaWN0b2dyYW1CdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgaWNvbj1cInhcIiBzaXplPVwic1wiIG9uQ2xpY2s9e29uQ2xpY2t9IC8+XG4gIDwvU3R5bGVkWENvbnRhaW5lcj5cbik7XG5cbmNvbnN0IEhvcml6b250YWxPZmZzZXQgPSAoe1xuICBjaGlsZHJlbixcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+KSA9PiAoXG4gIDxCb3ggc3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19IHZTcGFjZT1cInplcm9cIj5cbiAgICB7aXNGdWxsU2NyZWVuICYmIGlzTWF4V2lkdGhMaW1pdCA/IChcbiAgICAgIDxTdHlsZWRNYXhXaWR0aD57Y2hpbGRyZW59PC9TdHlsZWRNYXhXaWR0aD5cbiAgICApIDogKFxuICAgICAgY2hpbGRyZW5cbiAgICApfVxuICA8L0JveD5cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2RhbCh7XG4gIGhlYWRlcixcbiAgc3ViSGVhZGVyLFxuICBsYWJlbEhlYWRlcixcbiAgY2hpbGRyZW4sXG4gIGltYWdlVXJsLFxuICBJbWFnZUNvbXBvbmVudCxcbiAgc2Vjb25kYXJ5QnV0dG9uLFxuICBjYW5jZWxCdXR0b25MYWJlbCxcbiAgaXNEaXNtaXNzaWJsZSA9IHRydWUsXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0ID0gdHJ1ZSxcbiAgYWN0aW9uQnV0dG9uLFxuICByb2xlLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgW2lzT3BlbmluZywgc2V0T3BlbmluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgaWYgKGlzRGlzbWlzc2libGUpIHtcbiAgICAgIG9uQWN0aW9uKFwiY2FuY2VsXCIpO1xuICAgIH1cbiAgfTtcbiAgY29uc3QgaGFzQmFja2Ryb3BEaXNtaXNzID0gIXNraXBQb3J0YWw7XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRPcGVuaW5nKGZhbHNlKTtcbiAgfSwgW10pO1xuXG4gIHVzZU91dHNpZGVDbGljayhtb2RhbFJlZiwgaGFuZGxlQ2xvc2UsIGhhc0JhY2tkcm9wRGlzbWlzcyAmJiAhaXNPcGVuaW5nKTtcbiAgdXNlT25Fc2NhcGVQcmVzcyhoYW5kbGVDbG9zZSwgW2hhbmRsZUNsb3NlXSk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0+XG4gICAgICA8U3R5bGVkTW9kYWxXcmFwcGVyXG4gICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgPlxuICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19PlxuICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiBiU3BhY2U9XCJzXCI+XG4gICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEltZyBzcmM9e2ltYWdlVXJsfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNvbXBvbmVudCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xhYmVsSGVhZGVyICYmIDxINj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxIMj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXIgJiYgPEg0IGNvbG9yPVwidGVydGlhcnlcIj57c3ViSGVhZGVyfTwvSDQ+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgIDwvSW5saW5lPlxuICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgIGJvcmRlclRvcD17aGFzU2Nyb2xsICYmICFpc1Njcm9sbFRvcH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiPlxuICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgIHsoYWN0aW9uQnV0dG9uIHx8IGNhbmNlbEJ1dHRvbkxhYmVsIHx8IHNlY29uZGFyeUJ1dHRvbikgJiYgKFxuICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dD17Y2FuY2VsQnV0dG9uTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L0Zvb3Rlcj5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1N0eWxlZElubmVyPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvU3R5bGVkTW9kYWxXcmFwcGVyPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuZGVmYXVsdFByb3BzID0gZGVmYXVsdE1vZGFsUHJvcHM7XG5cbk1vZGFsLlN0YWNrID0gTW9kYWxTdGFjaztcbk1vZGFsLlRleHQgPSBNb2RhbFRleHQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUcyQiJ9 */"),StyledInner=styled("div",{target:"e6v82qi2",label:"StyledInner"})(({theme,isFullScreen,size})=>{let mobileVerticalSpace=getMobileSpace(theme),mobileInnerVerticalSpace=getMobileInnerSpace(theme),desktopVerticalSpace=getDesktopSpace(theme),desktopInnerVerticalSpace=getDesktopInnerSpace(theme),fullScreenMobile=`calc(100dvh - ${mobileVerticalSpace} * 2 - ${mobileInnerVerticalSpace} * 2)`;return{display:"flex",...mqValue({height:["l"===size||isFullScreen?fullScreenMobile:"auto",isFullScreen?`calc(100dvh - ${desktopVerticalSpace} * 2 - ${desktopInnerVerticalSpace} * 2)`:"l"===size?`calc(100dvh - ${desktopVerticalSpace} * 2 - ${desktopInnerVerticalSpace} * 2 - ${theme.variables.size.dimension.modal.margin.l} * 2)`:"auto"],maxHeight:[fullScreenMobile,isFullScreen?"auto":"l"===size?`calc(${theme.variables.size.dimension.modal.maxHeight.l} - ${desktopInnerVerticalSpace} * 2)`:`calc(100dvh - ${desktopVerticalSpace} * 2 - ${desktopInnerVerticalSpace} * 2)`]}),flexDirection:"column",overflow:"hidden"}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5cbnR5cGUgQmFzZVByb3BzID0ge1xuICBoZWFkZXI6IHN0cmluZztcbiAgb25BY3Rpb246IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBwcml2YXRlUHJvcHM/OiB7IHNraXBQb3J0YWw/OiBib29sZWFuIH07XG4gIC8qKiBJdCdzIGEgYmFkIHBhdHRlcm4gdG8gdXNlIG5vbi1kaXNtaXNzaWJsZSBNb2RhbCAqL1xuICBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBpc0Z1bGxTY3JlZW4/OiBib29sZWFuO1xuICBpc01heFdpZHRoTGltaXQ/OiBib29sZWFuO1xuICBzaXplPzogXCJtXCIgfCBcImxcIjtcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICYgQ29uZGl0aW9uYWxQcm9wcztcblxuY29uc3QgZGVmYXVsdE1vZGFsUHJvcHM6IFBhcnRpYWw8TW9kYWxQcm9wcz4gPSB7XG4gIHJvbGU6IFwiZGlhbG9nXCIsXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiB1bmRlZmluZWQsXG4gIHByaXZhdGVQcm9wczogeyBza2lwUG9ydGFsOiBmYWxzZSB9LFxufTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgd2lkdGg6IFtcbiAgICAgICAgICBgY2FsYygxMDAlIC0gJHtnZXRNb2JpbGVTcGFjZSh0aGVtZSl9ICogMilgLFxuICAgICAgICAgIGlzRnVsbFNjcmVlblxuICAgICAgICAgICAgPyBgY2FsYygxMDAlIC0gJHtnZXREZXNrdG9wU3BhY2UodGhlbWUpfSAqIDIpYFxuICAgICAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwud2lkdGhbc2l6ZV0sXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBTdHlsZWRJbm5lciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IG1vYmlsZVZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgbW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlSW5uZXJTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcFZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wSW5uZXJTcGFjZSh0aGVtZSk7XG5cbiAgICAvLyBmdWxsc2NyZWVuIGFuZCBMIHNpemUgZG9uJ3QgZGVwZW5kIG9uIGNvbnRlbnQgc2l6ZVxuICAgIC8vIEwgc2l6ZSBoZWlnaHQgaGFzIG1heEhpZWdodCByZXNpemUgdW50aWwgODAwcHhcbiAgICAvLyBmdWxsc2NyZWVuIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuICAgIC8vIE0gc2l6ZSBoZWlnaHQgaGFzIGNvbnRlbnQgc2l6ZSBhbmQgY2VudGVyZWQgYXQgdG9wIGFuZCBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcblxuICAgIGNvbnN0IGdldERlc2t0b3BIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMiAtICR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1hcmdpbi5sfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBcImF1dG9cIjtcbiAgICB9O1xuXG4gICAgY29uc3QgZ2V0RGVza3RvcE1heEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBhdXRvYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWF4SGVpZ2h0Lmx9IC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgIH07XG5cbiAgICBjb25zdCBmdWxsU2NyZWVuTW9iaWxlID0gYGNhbGMoMTAwZHZoIC0gJHttb2JpbGVWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke21vYmlsZUlubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4ubXFWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xufSAmIFBhcnRpYWw8TW9kYWxQcm9wcz4pOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT5cbiAgc2tpcFBvcnRhbCA/IChcbiAgICA8PntjaGlsZHJlbn08Lz5cbiAgKSA6IChcbiAgICA8UG9ydGFsPlxuICAgICAgPFN0eWxlZEJhY2tkcm9wPntjaGlsZHJlbn08L1N0eWxlZEJhY2tkcm9wPlxuICAgIDwvUG9ydGFsPlxuICApO1xuXG5jb25zdCBCdXR0b25DbG9zZSA9ICh7IG9uQ2xpY2sgfTogeyBvbkNsaWNrOiBSZWFjdC5SZWFjdEV2ZW50SGFuZGxlciB9KSA9PiAoXG4gIDxTdHlsZWRYQ29udGFpbmVyPlxuICAgIDxQaWN0b2dyYW1CdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgaWNvbj1cInhcIiBzaXplPVwic1wiIG9uQ2xpY2s9e29uQ2xpY2t9IC8+XG4gIDwvU3R5bGVkWENvbnRhaW5lcj5cbik7XG5cbmNvbnN0IEhvcml6b250YWxPZmZzZXQgPSAoe1xuICBjaGlsZHJlbixcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+KSA9PiAoXG4gIDxCb3ggc3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19IHZTcGFjZT1cInplcm9cIj5cbiAgICB7aXNGdWxsU2NyZWVuICYmIGlzTWF4V2lkdGhMaW1pdCA/IChcbiAgICAgIDxTdHlsZWRNYXhXaWR0aD57Y2hpbGRyZW59PC9TdHlsZWRNYXhXaWR0aD5cbiAgICApIDogKFxuICAgICAgY2hpbGRyZW5cbiAgICApfVxuICA8L0JveD5cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2RhbCh7XG4gIGhlYWRlcixcbiAgc3ViSGVhZGVyLFxuICBsYWJlbEhlYWRlcixcbiAgY2hpbGRyZW4sXG4gIGltYWdlVXJsLFxuICBJbWFnZUNvbXBvbmVudCxcbiAgc2Vjb25kYXJ5QnV0dG9uLFxuICBjYW5jZWxCdXR0b25MYWJlbCxcbiAgaXNEaXNtaXNzaWJsZSA9IHRydWUsXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0ID0gdHJ1ZSxcbiAgYWN0aW9uQnV0dG9uLFxuICByb2xlLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgW2lzT3BlbmluZywgc2V0T3BlbmluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgaWYgKGlzRGlzbWlzc2libGUpIHtcbiAgICAgIG9uQWN0aW9uKFwiY2FuY2VsXCIpO1xuICAgIH1cbiAgfTtcbiAgY29uc3QgaGFzQmFja2Ryb3BEaXNtaXNzID0gIXNraXBQb3J0YWw7XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRPcGVuaW5nKGZhbHNlKTtcbiAgfSwgW10pO1xuXG4gIHVzZU91dHNpZGVDbGljayhtb2RhbFJlZiwgaGFuZGxlQ2xvc2UsIGhhc0JhY2tkcm9wRGlzbWlzcyAmJiAhaXNPcGVuaW5nKTtcbiAgdXNlT25Fc2NhcGVQcmVzcyhoYW5kbGVDbG9zZSwgW2hhbmRsZUNsb3NlXSk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0+XG4gICAgICA8U3R5bGVkTW9kYWxXcmFwcGVyXG4gICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgPlxuICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19PlxuICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiBiU3BhY2U9XCJzXCI+XG4gICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEltZyBzcmM9e2ltYWdlVXJsfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNvbXBvbmVudCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xhYmVsSGVhZGVyICYmIDxINj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxIMj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXIgJiYgPEg0IGNvbG9yPVwidGVydGlhcnlcIj57c3ViSGVhZGVyfTwvSDQ+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgIDwvSW5saW5lPlxuICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgIGJvcmRlclRvcD17aGFzU2Nyb2xsICYmICFpc1Njcm9sbFRvcH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiPlxuICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgIHsoYWN0aW9uQnV0dG9uIHx8IGNhbmNlbEJ1dHRvbkxhYmVsIHx8IHNlY29uZGFyeUJ1dHRvbikgJiYgKFxuICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dD17Y2FuY2VsQnV0dG9uTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L0Zvb3Rlcj5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1N0eWxlZElubmVyPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvU3R5bGVkTW9kYWxXcmFwcGVyPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuZGVmYXVsdFByb3BzID0gZGVmYXVsdE1vZGFsUHJvcHM7XG5cbk1vZGFsLlN0YWNrID0gTW9kYWxTdGFjaztcbk1vZGFsLlRleHQgPSBNb2RhbFRleHQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUlvQiJ9 */"),StyledBody=styled("div",{target:"e6v82qi3",label:"StyledBody"})(({theme,borderBottom,borderTop,size,isFullScreen})=>({overflowY:"auto",maxHeight:"100%",...(isFullScreen||"l"===size)&&{flex:1},...borderBottom&&{borderBottom:`1px solid ${theme.values.color.divider.primary}`},...borderTop&&{borderTop:`1px solid ${theme.values.color.divider.primary}`}}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5cbnR5cGUgQmFzZVByb3BzID0ge1xuICBoZWFkZXI6IHN0cmluZztcbiAgb25BY3Rpb246IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBwcml2YXRlUHJvcHM/OiB7IHNraXBQb3J0YWw/OiBib29sZWFuIH07XG4gIC8qKiBJdCdzIGEgYmFkIHBhdHRlcm4gdG8gdXNlIG5vbi1kaXNtaXNzaWJsZSBNb2RhbCAqL1xuICBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBpc0Z1bGxTY3JlZW4/OiBib29sZWFuO1xuICBpc01heFdpZHRoTGltaXQ/OiBib29sZWFuO1xuICBzaXplPzogXCJtXCIgfCBcImxcIjtcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICYgQ29uZGl0aW9uYWxQcm9wcztcblxuY29uc3QgZGVmYXVsdE1vZGFsUHJvcHM6IFBhcnRpYWw8TW9kYWxQcm9wcz4gPSB7XG4gIHJvbGU6IFwiZGlhbG9nXCIsXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiB1bmRlZmluZWQsXG4gIHByaXZhdGVQcm9wczogeyBza2lwUG9ydGFsOiBmYWxzZSB9LFxufTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgd2lkdGg6IFtcbiAgICAgICAgICBgY2FsYygxMDAlIC0gJHtnZXRNb2JpbGVTcGFjZSh0aGVtZSl9ICogMilgLFxuICAgICAgICAgIGlzRnVsbFNjcmVlblxuICAgICAgICAgICAgPyBgY2FsYygxMDAlIC0gJHtnZXREZXNrdG9wU3BhY2UodGhlbWUpfSAqIDIpYFxuICAgICAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwud2lkdGhbc2l6ZV0sXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBTdHlsZWRJbm5lciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IG1vYmlsZVZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgbW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlSW5uZXJTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcFZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wSW5uZXJTcGFjZSh0aGVtZSk7XG5cbiAgICAvLyBmdWxsc2NyZWVuIGFuZCBMIHNpemUgZG9uJ3QgZGVwZW5kIG9uIGNvbnRlbnQgc2l6ZVxuICAgIC8vIEwgc2l6ZSBoZWlnaHQgaGFzIG1heEhpZWdodCByZXNpemUgdW50aWwgODAwcHhcbiAgICAvLyBmdWxsc2NyZWVuIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuICAgIC8vIE0gc2l6ZSBoZWlnaHQgaGFzIGNvbnRlbnQgc2l6ZSBhbmQgY2VudGVyZWQgYXQgdG9wIGFuZCBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcblxuICAgIGNvbnN0IGdldERlc2t0b3BIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMiAtICR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1hcmdpbi5sfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBcImF1dG9cIjtcbiAgICB9O1xuXG4gICAgY29uc3QgZ2V0RGVza3RvcE1heEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBhdXRvYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWF4SGVpZ2h0Lmx9IC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgIH07XG5cbiAgICBjb25zdCBmdWxsU2NyZWVuTW9iaWxlID0gYGNhbGMoMTAwZHZoIC0gJHttb2JpbGVWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke21vYmlsZUlubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4ubXFWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xufSAmIFBhcnRpYWw8TW9kYWxQcm9wcz4pOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT5cbiAgc2tpcFBvcnRhbCA/IChcbiAgICA8PntjaGlsZHJlbn08Lz5cbiAgKSA6IChcbiAgICA8UG9ydGFsPlxuICAgICAgPFN0eWxlZEJhY2tkcm9wPntjaGlsZHJlbn08L1N0eWxlZEJhY2tkcm9wPlxuICAgIDwvUG9ydGFsPlxuICApO1xuXG5jb25zdCBCdXR0b25DbG9zZSA9ICh7IG9uQ2xpY2sgfTogeyBvbkNsaWNrOiBSZWFjdC5SZWFjdEV2ZW50SGFuZGxlciB9KSA9PiAoXG4gIDxTdHlsZWRYQ29udGFpbmVyPlxuICAgIDxQaWN0b2dyYW1CdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgaWNvbj1cInhcIiBzaXplPVwic1wiIG9uQ2xpY2s9e29uQ2xpY2t9IC8+XG4gIDwvU3R5bGVkWENvbnRhaW5lcj5cbik7XG5cbmNvbnN0IEhvcml6b250YWxPZmZzZXQgPSAoe1xuICBjaGlsZHJlbixcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+KSA9PiAoXG4gIDxCb3ggc3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19IHZTcGFjZT1cInplcm9cIj5cbiAgICB7aXNGdWxsU2NyZWVuICYmIGlzTWF4V2lkdGhMaW1pdCA/IChcbiAgICAgIDxTdHlsZWRNYXhXaWR0aD57Y2hpbGRyZW59PC9TdHlsZWRNYXhXaWR0aD5cbiAgICApIDogKFxuICAgICAgY2hpbGRyZW5cbiAgICApfVxuICA8L0JveD5cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2RhbCh7XG4gIGhlYWRlcixcbiAgc3ViSGVhZGVyLFxuICBsYWJlbEhlYWRlcixcbiAgY2hpbGRyZW4sXG4gIGltYWdlVXJsLFxuICBJbWFnZUNvbXBvbmVudCxcbiAgc2Vjb25kYXJ5QnV0dG9uLFxuICBjYW5jZWxCdXR0b25MYWJlbCxcbiAgaXNEaXNtaXNzaWJsZSA9IHRydWUsXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0ID0gdHJ1ZSxcbiAgYWN0aW9uQnV0dG9uLFxuICByb2xlLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgW2lzT3BlbmluZywgc2V0T3BlbmluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgaWYgKGlzRGlzbWlzc2libGUpIHtcbiAgICAgIG9uQWN0aW9uKFwiY2FuY2VsXCIpO1xuICAgIH1cbiAgfTtcbiAgY29uc3QgaGFzQmFja2Ryb3BEaXNtaXNzID0gIXNraXBQb3J0YWw7XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRPcGVuaW5nKGZhbHNlKTtcbiAgfSwgW10pO1xuXG4gIHVzZU91dHNpZGVDbGljayhtb2RhbFJlZiwgaGFuZGxlQ2xvc2UsIGhhc0JhY2tkcm9wRGlzbWlzcyAmJiAhaXNPcGVuaW5nKTtcbiAgdXNlT25Fc2NhcGVQcmVzcyhoYW5kbGVDbG9zZSwgW2hhbmRsZUNsb3NlXSk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0+XG4gICAgICA8U3R5bGVkTW9kYWxXcmFwcGVyXG4gICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgPlxuICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19PlxuICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiBiU3BhY2U9XCJzXCI+XG4gICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEltZyBzcmM9e2ltYWdlVXJsfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNvbXBvbmVudCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xhYmVsSGVhZGVyICYmIDxINj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxIMj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXIgJiYgPEg0IGNvbG9yPVwidGVydGlhcnlcIj57c3ViSGVhZGVyfTwvSDQ+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgIDwvSW5saW5lPlxuICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgIGJvcmRlclRvcD17aGFzU2Nyb2xsICYmICFpc1Njcm9sbFRvcH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiPlxuICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgIHsoYWN0aW9uQnV0dG9uIHx8IGNhbmNlbEJ1dHRvbkxhYmVsIHx8IHNlY29uZGFyeUJ1dHRvbikgJiYgKFxuICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dD17Y2FuY2VsQnV0dG9uTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L0Zvb3Rlcj5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1N0eWxlZElubmVyPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvU3R5bGVkTW9kYWxXcmFwcGVyPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuZGVmYXVsdFByb3BzID0gZGVmYXVsdE1vZGFsUHJvcHM7XG5cbk1vZGFsLlN0YWNrID0gTW9kYWxTdGFjaztcbk1vZGFsLlRleHQgPSBNb2RhbFRleHQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOExtQiJ9 */"),StyledImg=styled("img",{target:"e6v82qi4",label:"StyledImg"})(()=>({width:"100%",aspectRatio:"16/9"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5cbnR5cGUgQmFzZVByb3BzID0ge1xuICBoZWFkZXI6IHN0cmluZztcbiAgb25BY3Rpb246IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBwcml2YXRlUHJvcHM/OiB7IHNraXBQb3J0YWw/OiBib29sZWFuIH07XG4gIC8qKiBJdCdzIGEgYmFkIHBhdHRlcm4gdG8gdXNlIG5vbi1kaXNtaXNzaWJsZSBNb2RhbCAqL1xuICBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBpc0Z1bGxTY3JlZW4/OiBib29sZWFuO1xuICBpc01heFdpZHRoTGltaXQ/OiBib29sZWFuO1xuICBzaXplPzogXCJtXCIgfCBcImxcIjtcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICYgQ29uZGl0aW9uYWxQcm9wcztcblxuY29uc3QgZGVmYXVsdE1vZGFsUHJvcHM6IFBhcnRpYWw8TW9kYWxQcm9wcz4gPSB7XG4gIHJvbGU6IFwiZGlhbG9nXCIsXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiB1bmRlZmluZWQsXG4gIHByaXZhdGVQcm9wczogeyBza2lwUG9ydGFsOiBmYWxzZSB9LFxufTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgd2lkdGg6IFtcbiAgICAgICAgICBgY2FsYygxMDAlIC0gJHtnZXRNb2JpbGVTcGFjZSh0aGVtZSl9ICogMilgLFxuICAgICAgICAgIGlzRnVsbFNjcmVlblxuICAgICAgICAgICAgPyBgY2FsYygxMDAlIC0gJHtnZXREZXNrdG9wU3BhY2UodGhlbWUpfSAqIDIpYFxuICAgICAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwud2lkdGhbc2l6ZV0sXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBTdHlsZWRJbm5lciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IG1vYmlsZVZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgbW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlSW5uZXJTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcFZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wSW5uZXJTcGFjZSh0aGVtZSk7XG5cbiAgICAvLyBmdWxsc2NyZWVuIGFuZCBMIHNpemUgZG9uJ3QgZGVwZW5kIG9uIGNvbnRlbnQgc2l6ZVxuICAgIC8vIEwgc2l6ZSBoZWlnaHQgaGFzIG1heEhpZWdodCByZXNpemUgdW50aWwgODAwcHhcbiAgICAvLyBmdWxsc2NyZWVuIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuICAgIC8vIE0gc2l6ZSBoZWlnaHQgaGFzIGNvbnRlbnQgc2l6ZSBhbmQgY2VudGVyZWQgYXQgdG9wIGFuZCBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcblxuICAgIGNvbnN0IGdldERlc2t0b3BIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMiAtICR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1hcmdpbi5sfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBcImF1dG9cIjtcbiAgICB9O1xuXG4gICAgY29uc3QgZ2V0RGVza3RvcE1heEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBhdXRvYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWF4SGVpZ2h0Lmx9IC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgIH07XG5cbiAgICBjb25zdCBmdWxsU2NyZWVuTW9iaWxlID0gYGNhbGMoMTAwZHZoIC0gJHttb2JpbGVWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke21vYmlsZUlubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4ubXFWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xufSAmIFBhcnRpYWw8TW9kYWxQcm9wcz4pOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT5cbiAgc2tpcFBvcnRhbCA/IChcbiAgICA8PntjaGlsZHJlbn08Lz5cbiAgKSA6IChcbiAgICA8UG9ydGFsPlxuICAgICAgPFN0eWxlZEJhY2tkcm9wPntjaGlsZHJlbn08L1N0eWxlZEJhY2tkcm9wPlxuICAgIDwvUG9ydGFsPlxuICApO1xuXG5jb25zdCBCdXR0b25DbG9zZSA9ICh7IG9uQ2xpY2sgfTogeyBvbkNsaWNrOiBSZWFjdC5SZWFjdEV2ZW50SGFuZGxlciB9KSA9PiAoXG4gIDxTdHlsZWRYQ29udGFpbmVyPlxuICAgIDxQaWN0b2dyYW1CdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgaWNvbj1cInhcIiBzaXplPVwic1wiIG9uQ2xpY2s9e29uQ2xpY2t9IC8+XG4gIDwvU3R5bGVkWENvbnRhaW5lcj5cbik7XG5cbmNvbnN0IEhvcml6b250YWxPZmZzZXQgPSAoe1xuICBjaGlsZHJlbixcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+KSA9PiAoXG4gIDxCb3ggc3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19IHZTcGFjZT1cInplcm9cIj5cbiAgICB7aXNGdWxsU2NyZWVuICYmIGlzTWF4V2lkdGhMaW1pdCA/IChcbiAgICAgIDxTdHlsZWRNYXhXaWR0aD57Y2hpbGRyZW59PC9TdHlsZWRNYXhXaWR0aD5cbiAgICApIDogKFxuICAgICAgY2hpbGRyZW5cbiAgICApfVxuICA8L0JveD5cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2RhbCh7XG4gIGhlYWRlcixcbiAgc3ViSGVhZGVyLFxuICBsYWJlbEhlYWRlcixcbiAgY2hpbGRyZW4sXG4gIGltYWdlVXJsLFxuICBJbWFnZUNvbXBvbmVudCxcbiAgc2Vjb25kYXJ5QnV0dG9uLFxuICBjYW5jZWxCdXR0b25MYWJlbCxcbiAgaXNEaXNtaXNzaWJsZSA9IHRydWUsXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0ID0gdHJ1ZSxcbiAgYWN0aW9uQnV0dG9uLFxuICByb2xlLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgW2lzT3BlbmluZywgc2V0T3BlbmluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgaWYgKGlzRGlzbWlzc2libGUpIHtcbiAgICAgIG9uQWN0aW9uKFwiY2FuY2VsXCIpO1xuICAgIH1cbiAgfTtcbiAgY29uc3QgaGFzQmFja2Ryb3BEaXNtaXNzID0gIXNraXBQb3J0YWw7XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRPcGVuaW5nKGZhbHNlKTtcbiAgfSwgW10pO1xuXG4gIHVzZU91dHNpZGVDbGljayhtb2RhbFJlZiwgaGFuZGxlQ2xvc2UsIGhhc0JhY2tkcm9wRGlzbWlzcyAmJiAhaXNPcGVuaW5nKTtcbiAgdXNlT25Fc2NhcGVQcmVzcyhoYW5kbGVDbG9zZSwgW2hhbmRsZUNsb3NlXSk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0+XG4gICAgICA8U3R5bGVkTW9kYWxXcmFwcGVyXG4gICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgPlxuICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19PlxuICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiBiU3BhY2U9XCJzXCI+XG4gICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEltZyBzcmM9e2ltYWdlVXJsfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNvbXBvbmVudCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xhYmVsSGVhZGVyICYmIDxINj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxIMj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXIgJiYgPEg0IGNvbG9yPVwidGVydGlhcnlcIj57c3ViSGVhZGVyfTwvSDQ+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgIDwvSW5saW5lPlxuICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgIGJvcmRlclRvcD17aGFzU2Nyb2xsICYmICFpc1Njcm9sbFRvcH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiPlxuICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgIHsoYWN0aW9uQnV0dG9uIHx8IGNhbmNlbEJ1dHRvbkxhYmVsIHx8IHNlY29uZGFyeUJ1dHRvbikgJiYgKFxuICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dD17Y2FuY2VsQnV0dG9uTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L0Zvb3Rlcj5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1N0eWxlZElubmVyPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvU3R5bGVkTW9kYWxXcmFwcGVyPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuZGVmYXVsdFByb3BzID0gZGVmYXVsdE1vZGFsUHJvcHM7XG5cbk1vZGFsLlN0YWNrID0gTW9kYWxTdGFjaztcbk1vZGFsLlRleHQgPSBNb2RhbFRleHQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ05rQiJ9 */"),StyledMaxWidth=styled("div",{target:"e6v82qi5",label:"StyledMaxWidth"})(({theme})=>({maxWidth:theme.variables.size.dimension.modal.fullScreenContentWidth,margin:"0 auto"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5cbnR5cGUgQmFzZVByb3BzID0ge1xuICBoZWFkZXI6IHN0cmluZztcbiAgb25BY3Rpb246IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBwcml2YXRlUHJvcHM/OiB7IHNraXBQb3J0YWw/OiBib29sZWFuIH07XG4gIC8qKiBJdCdzIGEgYmFkIHBhdHRlcm4gdG8gdXNlIG5vbi1kaXNtaXNzaWJsZSBNb2RhbCAqL1xuICBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBpc0Z1bGxTY3JlZW4/OiBib29sZWFuO1xuICBpc01heFdpZHRoTGltaXQ/OiBib29sZWFuO1xuICBzaXplPzogXCJtXCIgfCBcImxcIjtcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICYgQ29uZGl0aW9uYWxQcm9wcztcblxuY29uc3QgZGVmYXVsdE1vZGFsUHJvcHM6IFBhcnRpYWw8TW9kYWxQcm9wcz4gPSB7XG4gIHJvbGU6IFwiZGlhbG9nXCIsXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiB1bmRlZmluZWQsXG4gIHByaXZhdGVQcm9wczogeyBza2lwUG9ydGFsOiBmYWxzZSB9LFxufTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgd2lkdGg6IFtcbiAgICAgICAgICBgY2FsYygxMDAlIC0gJHtnZXRNb2JpbGVTcGFjZSh0aGVtZSl9ICogMilgLFxuICAgICAgICAgIGlzRnVsbFNjcmVlblxuICAgICAgICAgICAgPyBgY2FsYygxMDAlIC0gJHtnZXREZXNrdG9wU3BhY2UodGhlbWUpfSAqIDIpYFxuICAgICAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwud2lkdGhbc2l6ZV0sXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBTdHlsZWRJbm5lciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IG1vYmlsZVZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgbW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlSW5uZXJTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcFZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wSW5uZXJTcGFjZSh0aGVtZSk7XG5cbiAgICAvLyBmdWxsc2NyZWVuIGFuZCBMIHNpemUgZG9uJ3QgZGVwZW5kIG9uIGNvbnRlbnQgc2l6ZVxuICAgIC8vIEwgc2l6ZSBoZWlnaHQgaGFzIG1heEhpZWdodCByZXNpemUgdW50aWwgODAwcHhcbiAgICAvLyBmdWxsc2NyZWVuIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuICAgIC8vIE0gc2l6ZSBoZWlnaHQgaGFzIGNvbnRlbnQgc2l6ZSBhbmQgY2VudGVyZWQgYXQgdG9wIGFuZCBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcblxuICAgIGNvbnN0IGdldERlc2t0b3BIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMiAtICR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1hcmdpbi5sfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBcImF1dG9cIjtcbiAgICB9O1xuXG4gICAgY29uc3QgZ2V0RGVza3RvcE1heEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBhdXRvYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWF4SGVpZ2h0Lmx9IC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgIH07XG5cbiAgICBjb25zdCBmdWxsU2NyZWVuTW9iaWxlID0gYGNhbGMoMTAwZHZoIC0gJHttb2JpbGVWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke21vYmlsZUlubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4ubXFWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xufSAmIFBhcnRpYWw8TW9kYWxQcm9wcz4pOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT5cbiAgc2tpcFBvcnRhbCA/IChcbiAgICA8PntjaGlsZHJlbn08Lz5cbiAgKSA6IChcbiAgICA8UG9ydGFsPlxuICAgICAgPFN0eWxlZEJhY2tkcm9wPntjaGlsZHJlbn08L1N0eWxlZEJhY2tkcm9wPlxuICAgIDwvUG9ydGFsPlxuICApO1xuXG5jb25zdCBCdXR0b25DbG9zZSA9ICh7IG9uQ2xpY2sgfTogeyBvbkNsaWNrOiBSZWFjdC5SZWFjdEV2ZW50SGFuZGxlciB9KSA9PiAoXG4gIDxTdHlsZWRYQ29udGFpbmVyPlxuICAgIDxQaWN0b2dyYW1CdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgaWNvbj1cInhcIiBzaXplPVwic1wiIG9uQ2xpY2s9e29uQ2xpY2t9IC8+XG4gIDwvU3R5bGVkWENvbnRhaW5lcj5cbik7XG5cbmNvbnN0IEhvcml6b250YWxPZmZzZXQgPSAoe1xuICBjaGlsZHJlbixcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+KSA9PiAoXG4gIDxCb3ggc3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19IHZTcGFjZT1cInplcm9cIj5cbiAgICB7aXNGdWxsU2NyZWVuICYmIGlzTWF4V2lkdGhMaW1pdCA/IChcbiAgICAgIDxTdHlsZWRNYXhXaWR0aD57Y2hpbGRyZW59PC9TdHlsZWRNYXhXaWR0aD5cbiAgICApIDogKFxuICAgICAgY2hpbGRyZW5cbiAgICApfVxuICA8L0JveD5cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2RhbCh7XG4gIGhlYWRlcixcbiAgc3ViSGVhZGVyLFxuICBsYWJlbEhlYWRlcixcbiAgY2hpbGRyZW4sXG4gIGltYWdlVXJsLFxuICBJbWFnZUNvbXBvbmVudCxcbiAgc2Vjb25kYXJ5QnV0dG9uLFxuICBjYW5jZWxCdXR0b25MYWJlbCxcbiAgaXNEaXNtaXNzaWJsZSA9IHRydWUsXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0ID0gdHJ1ZSxcbiAgYWN0aW9uQnV0dG9uLFxuICByb2xlLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgW2lzT3BlbmluZywgc2V0T3BlbmluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgaWYgKGlzRGlzbWlzc2libGUpIHtcbiAgICAgIG9uQWN0aW9uKFwiY2FuY2VsXCIpO1xuICAgIH1cbiAgfTtcbiAgY29uc3QgaGFzQmFja2Ryb3BEaXNtaXNzID0gIXNraXBQb3J0YWw7XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRPcGVuaW5nKGZhbHNlKTtcbiAgfSwgW10pO1xuXG4gIHVzZU91dHNpZGVDbGljayhtb2RhbFJlZiwgaGFuZGxlQ2xvc2UsIGhhc0JhY2tkcm9wRGlzbWlzcyAmJiAhaXNPcGVuaW5nKTtcbiAgdXNlT25Fc2NhcGVQcmVzcyhoYW5kbGVDbG9zZSwgW2hhbmRsZUNsb3NlXSk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0+XG4gICAgICA8U3R5bGVkTW9kYWxXcmFwcGVyXG4gICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgPlxuICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19PlxuICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiBiU3BhY2U9XCJzXCI+XG4gICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEltZyBzcmM9e2ltYWdlVXJsfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNvbXBvbmVudCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xhYmVsSGVhZGVyICYmIDxINj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxIMj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXIgJiYgPEg0IGNvbG9yPVwidGVydGlhcnlcIj57c3ViSGVhZGVyfTwvSDQ+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgIDwvSW5saW5lPlxuICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgIGJvcmRlclRvcD17aGFzU2Nyb2xsICYmICFpc1Njcm9sbFRvcH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiPlxuICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgIHsoYWN0aW9uQnV0dG9uIHx8IGNhbmNlbEJ1dHRvbkxhYmVsIHx8IHNlY29uZGFyeUJ1dHRvbikgJiYgKFxuICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dD17Y2FuY2VsQnV0dG9uTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L0Zvb3Rlcj5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1N0eWxlZElubmVyPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvU3R5bGVkTW9kYWxXcmFwcGVyPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuZGVmYXVsdFByb3BzID0gZGVmYXVsdE1vZGFsUHJvcHM7XG5cbk1vZGFsLlN0YWNrID0gTW9kYWxTdGFjaztcbk1vZGFsLlRleHQgPSBNb2RhbFRleHQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcU51QiJ9 */"),StyledXContainer=styled("div",{target:"e6v82qi6",label:"StyledXContainer"})(({theme})=>({position:"absolute",...mqValue({top:[theme.variables.size.spacing.s,theme.variables.size.spacing.l],right:[theme.variables.size.spacing.s,theme.variables.size.spacing.l]})}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5cbnR5cGUgQmFzZVByb3BzID0ge1xuICBoZWFkZXI6IHN0cmluZztcbiAgb25BY3Rpb246IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICBwcml2YXRlUHJvcHM/OiB7IHNraXBQb3J0YWw/OiBib29sZWFuIH07XG4gIC8qKiBJdCdzIGEgYmFkIHBhdHRlcm4gdG8gdXNlIG5vbi1kaXNtaXNzaWJsZSBNb2RhbCAqL1xuICBpc0Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBpc0Z1bGxTY3JlZW4/OiBib29sZWFuO1xuICBpc01heFdpZHRoTGltaXQ/OiBib29sZWFuO1xuICBzaXplPzogXCJtXCIgfCBcImxcIjtcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICYgQ29uZGl0aW9uYWxQcm9wcztcblxuY29uc3QgZGVmYXVsdE1vZGFsUHJvcHM6IFBhcnRpYWw8TW9kYWxQcm9wcz4gPSB7XG4gIHJvbGU6IFwiZGlhbG9nXCIsXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiB1bmRlZmluZWQsXG4gIHByaXZhdGVQcm9wczogeyBza2lwUG9ydGFsOiBmYWxzZSB9LFxufTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgd2lkdGg6IFtcbiAgICAgICAgICBgY2FsYygxMDAlIC0gJHtnZXRNb2JpbGVTcGFjZSh0aGVtZSl9ICogMilgLFxuICAgICAgICAgIGlzRnVsbFNjcmVlblxuICAgICAgICAgICAgPyBgY2FsYygxMDAlIC0gJHtnZXREZXNrdG9wU3BhY2UodGhlbWUpfSAqIDIpYFxuICAgICAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwud2lkdGhbc2l6ZV0sXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBTdHlsZWRJbm5lciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IG1vYmlsZVZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgbW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlSW5uZXJTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcFZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXREZXNrdG9wSW5uZXJTcGFjZSh0aGVtZSk7XG5cbiAgICAvLyBmdWxsc2NyZWVuIGFuZCBMIHNpemUgZG9uJ3QgZGVwZW5kIG9uIGNvbnRlbnQgc2l6ZVxuICAgIC8vIEwgc2l6ZSBoZWlnaHQgaGFzIG1heEhpZWdodCByZXNpemUgdW50aWwgODAwcHhcbiAgICAvLyBmdWxsc2NyZWVuIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuICAgIC8vIE0gc2l6ZSBoZWlnaHQgaGFzIGNvbnRlbnQgc2l6ZSBhbmQgY2VudGVyZWQgYXQgdG9wIGFuZCBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcblxuICAgIGNvbnN0IGdldERlc2t0b3BIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMiAtICR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1hcmdpbi5sfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBcImF1dG9cIjtcbiAgICB9O1xuXG4gICAgY29uc3QgZ2V0RGVza3RvcE1heEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBhdXRvYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWF4SGVpZ2h0Lmx9IC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBgY2FsYygxMDBkdmggLSAke2Rlc2t0b3BWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgIH07XG5cbiAgICBjb25zdCBmdWxsU2NyZWVuTW9iaWxlID0gYGNhbGMoMTAwZHZoIC0gJHttb2JpbGVWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke21vYmlsZUlubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgICAuLi5tcVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4ubXFWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xufSAmIFBhcnRpYWw8TW9kYWxQcm9wcz4pOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT5cbiAgc2tpcFBvcnRhbCA/IChcbiAgICA8PntjaGlsZHJlbn08Lz5cbiAgKSA6IChcbiAgICA8UG9ydGFsPlxuICAgICAgPFN0eWxlZEJhY2tkcm9wPntjaGlsZHJlbn08L1N0eWxlZEJhY2tkcm9wPlxuICAgIDwvUG9ydGFsPlxuICApO1xuXG5jb25zdCBCdXR0b25DbG9zZSA9ICh7IG9uQ2xpY2sgfTogeyBvbkNsaWNrOiBSZWFjdC5SZWFjdEV2ZW50SGFuZGxlciB9KSA9PiAoXG4gIDxTdHlsZWRYQ29udGFpbmVyPlxuICAgIDxQaWN0b2dyYW1CdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgaWNvbj1cInhcIiBzaXplPVwic1wiIG9uQ2xpY2s9e29uQ2xpY2t9IC8+XG4gIDwvU3R5bGVkWENvbnRhaW5lcj5cbik7XG5cbmNvbnN0IEhvcml6b250YWxPZmZzZXQgPSAoe1xuICBjaGlsZHJlbixcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+KSA9PiAoXG4gIDxCb3ggc3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19IHZTcGFjZT1cInplcm9cIj5cbiAgICB7aXNGdWxsU2NyZWVuICYmIGlzTWF4V2lkdGhMaW1pdCA/IChcbiAgICAgIDxTdHlsZWRNYXhXaWR0aD57Y2hpbGRyZW59PC9TdHlsZWRNYXhXaWR0aD5cbiAgICApIDogKFxuICAgICAgY2hpbGRyZW5cbiAgICApfVxuICA8L0JveD5cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBNb2RhbCh7XG4gIGhlYWRlcixcbiAgc3ViSGVhZGVyLFxuICBsYWJlbEhlYWRlcixcbiAgY2hpbGRyZW4sXG4gIGltYWdlVXJsLFxuICBJbWFnZUNvbXBvbmVudCxcbiAgc2Vjb25kYXJ5QnV0dG9uLFxuICBjYW5jZWxCdXR0b25MYWJlbCxcbiAgaXNEaXNtaXNzaWJsZSA9IHRydWUsXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0ID0gdHJ1ZSxcbiAgYWN0aW9uQnV0dG9uLFxuICByb2xlLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgW2lzT3BlbmluZywgc2V0T3BlbmluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgaWYgKGlzRGlzbWlzc2libGUpIHtcbiAgICAgIG9uQWN0aW9uKFwiY2FuY2VsXCIpO1xuICAgIH1cbiAgfTtcbiAgY29uc3QgaGFzQmFja2Ryb3BEaXNtaXNzID0gIXNraXBQb3J0YWw7XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRPcGVuaW5nKGZhbHNlKTtcbiAgfSwgW10pO1xuXG4gIHVzZU91dHNpZGVDbGljayhtb2RhbFJlZiwgaGFuZGxlQ2xvc2UsIGhhc0JhY2tkcm9wRGlzbWlzcyAmJiAhaXNPcGVuaW5nKTtcbiAgdXNlT25Fc2NhcGVQcmVzcyhoYW5kbGVDbG9zZSwgW2hhbmRsZUNsb3NlXSk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0+XG4gICAgICA8U3R5bGVkTW9kYWxXcmFwcGVyXG4gICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgPlxuICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9e1ttb2JpbGVTaXplLCBkZXNrdG9wU2l6ZV19PlxuICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiBiU3BhY2U9XCJzXCI+XG4gICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEltZyBzcmM9e2ltYWdlVXJsfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNvbXBvbmVudCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xhYmVsSGVhZGVyICYmIDxINj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxIMj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXIgJiYgPEg0IGNvbG9yPVwidGVydGlhcnlcIj57c3ViSGVhZGVyfTwvSDQ+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgIDwvSW5saW5lPlxuICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgIGJvcmRlclRvcD17aGFzU2Nyb2xsICYmICFpc1Njcm9sbFRvcH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiPlxuICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cbiAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgIHsoYWN0aW9uQnV0dG9uIHx8IGNhbmNlbEJ1dHRvbkxhYmVsIHx8IHNlY29uZGFyeUJ1dHRvbikgJiYgKFxuICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dD17Y2FuY2VsQnV0dG9uTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L0Zvb3Rlcj5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1N0eWxlZElubmVyPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvU3R5bGVkTW9kYWxXcmFwcGVyPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuZGVmYXVsdFByb3BzID0gZGVmYXVsdE1vZGFsUHJvcHM7XG5cbk1vZGFsLlN0YWNrID0gTW9kYWxTdGFjaztcbk1vZGFsLlRleHQgPSBNb2RhbFRleHQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBME55QiJ9 */"),Footer=({children,alignItems=["stretch","right"]})=>React.createElement(Box,{space:"zero",tSpace:"l"},React.createElement(Stack,{alignItems:alignItems},children)),Wrapper=({skipPortal,children})=>skipPortal?React.createElement(React.Fragment,null,children):React.createElement(Portal,null,React.createElement(StyledBackdrop,null,children)),ButtonClose=({onClick})=>React.createElement(StyledXContainer,null,React.createElement(PictogramButton,{variant:"tertiary",icon:"x",size:"s",onClick:onClick})),HorizontalOffset=({children,isFullScreen,isMaxWidthLimit})=>React.createElement(Box,{space:["m","xl"],vSpace:"zero"},isFullScreen&&isMaxWidthLimit?React.createElement(StyledMaxWidth,null,children):children);export function Modal({header,subHeader,labelHeader,children,imageUrl,ImageComponent,secondaryButton,cancelButtonLabel,isDismissible=!0,isFullScreen,isMaxWidthLimit=!0,actionButton,role,onAction,size="m",privateProps:{skipPortal}={skipPortal:!1},"data-e2e-test-id":dataE2eTestId}){let modalRef=useRef(null),[isOpening,setOpening]=useState(!0),handleClose=()=>{isDismissible&&onAction("cancel")},{scrollableRef,isScrollBottom,isScrollTop,hasScroll}=useScrollDetection();useEffect(()=>{setOpening(!1)},[]),useOutsideClick(modalRef,handleClose,!skipPortal&&!isOpening),useOnEscapePress(handleClose,[handleClose]);let hasImage=imageUrl||ImageComponent,horizontalOffsetProps={isFullScreen,isMaxWidthLimit};return React.createElement(Wrapper,{skipPortal:skipPortal},React.createElement(StyledModalWrapper,{ref:modalRef,role:role,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"Modal",isFullScreen:isFullScreen,size:size},React.createElement(Container,{elevation:4},React.createElement(Box,{space:"zero",vSpace:["m","xl"]},React.createElement(StyledInner,{isFullScreen:isFullScreen,size:size},React.createElement(HorizontalOffset,horizontalOffsetProps,React.createElement(Box,{space:"zero",bSpace:"s"},React.createElement(Stack,{space:hasImage?["s","l"]:"zero"},hasImage&&React.createElement(React.Fragment,null,imageUrl?React.createElement(Box,{space:"zero",tSpace:["xl","l"]},React.createElement(StyledImg,{src:imageUrl})):React.createElement(ImageComponent,null)),React.createElement(Inline,{alignItems:"spaceBetween",noWrap:!0},React.createElement(Stack,{space:"xxs"},labelHeader&&React.createElement(H6,null,labelHeader),React.createElement(Stack,{space:"zero"},React.createElement(H2,null,header),subHeader&&React.createElement(H4,{color:"tertiary"},subHeader))),isDismissible&&React.createElement(ButtonClose,{onClick:handleClose}))))),React.createElement(StyledBody,{ref:scrollableRef,size:size,isFullScreen:isFullScreen,borderBottom:hasScroll&&!isScrollBottom,borderTop:hasScroll&&!isScrollTop},React.createElement(Box,{space:"zero",vSpace:"xxxs"},React.createElement(HorizontalOffset,horizontalOffsetProps,children))),(actionButton||cancelButtonLabel||secondaryButton)&&React.createElement(HorizontalOffset,horizontalOffsetProps,React.createElement(Footer,null,React.createElement(ButtonGroup,{actionButton:actionButton,secondaryButton:secondaryButton,cancelButtonText:cancelButtonLabel,onButtonClick:onAction}))))))))}Modal.defaultProps={role:"dialog","data-e2e-test-id":void 0,privateProps:{skipPortal:!1}},Modal.Stack=({children,...rest})=>React.createElement(Stack,{...rest,space:"m"},children),Modal.Text=({children,...rest})=>React.createElement(Text,{...rest,size:"m",color:"tertiary"},children);
17
+ `,[theme.variables.opacity.hidden,theme.variables.opacity.visible]);return{animation:`${fadeInModal} ${theme.variables.animation.modal.open.duration} ${theme.variables.animation.modal.open.delay} ${theme.variables.animation.modal.open.timingFunction} both`,...mqValue({width:[`calc(100% - ${getMobileSpace(theme)} * 2)`,isFullScreen?`calc(100% - ${getDesktopSpace(theme)} * 2)`:theme.variables.size.dimension.modal.width[size]]})}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xufTtcblxudHlwZSBDb25kaXRpb25hbFByb3BzID1cbiAgfCB7XG4gICAgICAvKiogQXNwZWN0IHJhdGlvIDE2OjkgKi9cbiAgICAgIGltYWdlVXJsPzogc3RyaW5nO1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaW1hZ2VVcmw/OiBuZXZlcjtcbiAgICAgIC8qKiBBY2NlcHQgcmF0aW8gMTY6OSAqL1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBSZWFjdC5FbGVtZW50VHlwZTxhbnk+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIE1vZGFsUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5jb25zdCBkZWZhdWx0TW9kYWxQcm9wczogUGFydGlhbDxNb2RhbFByb3BzPiA9IHtcbiAgcm9sZTogXCJkaWFsb2dcIixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IHVuZGVmaW5lZCxcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWw6IGZhbHNlIH0sXG59O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICBoZWlnaHQ6IFtcbiAgICAgICAgICBzaXplID09PSBcImxcIiB8fCBpc0Z1bGxTY3JlZW4gPyBmdWxsU2NyZWVuTW9iaWxlIDogXCJhdXRvXCIsXG4gICAgICAgICAgZ2V0RGVza3RvcEhlaWdodCgpLFxuICAgICAgICBdLFxuICAgICAgICBtYXhIZWlnaHQ6IFtmdWxsU2NyZWVuTW9iaWxlLCBnZXREZXNrdG9wTWF4SGVpZ2h0KCldLFxuICAgICAgfSksXG5cbiAgICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICB9O1xuICB9XG4pO1xuXG50eXBlIFN0eWxlZEJvZHlQcm9wcyA9IHtcbiAgYm9yZGVyQm90dG9tOiBib29sZWFuO1xuICBib3JkZXJUb3A6IGJvb2xlYW47XG59O1xuXG5jb25zdCBTdHlsZWRCb2R5ID0gc3R5bGVkLmRpdjxTdHlsZWRCb2R5UHJvcHMgJiBQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGJvcmRlckJvdHRvbSwgYm9yZGVyVG9wLCBzaXplLCBpc0Z1bGxTY3JlZW4gfSkgPT4gKHtcbiAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgIG1heEhlaWdodDogXCIxMDAlXCIsXG5cbiAgICAuLi4oKGlzRnVsbFNjcmVlbiB8fCBzaXplID09PSBcImxcIikgJiYge1xuICAgICAgZmxleDogMSxcbiAgICB9KSxcblxuICAgIC4uLihib3JkZXJCb3R0b20gJiYge1xuICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICAgIC4uLihib3JkZXJUb3AgJiYge1xuICAgICAgYm9yZGVyVG9wOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSW1nID0gc3R5bGVkLmltZygoKSA9PiAoe1xuICB3aWR0aDogXCIxMDAlXCIsXG4gIGFzcGVjdFJhdGlvOiBcIjE2LzlcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkTWF4V2lkdGggPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KCh7IHRoZW1lIH0pID0+ICh7XG4gIG1heFdpZHRoOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwuZnVsbFNjcmVlbkNvbnRlbnRXaWR0aCxcbiAgbWFyZ2luOiBcIjAgYXV0b1wiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRYQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAuLi5tcVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIHNraXBQb3J0YWw6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdEVsZW1lbnQ7XG59ICYgUGFydGlhbDxNb2RhbFByb3BzPik6IFJlYWN0LlJlYWN0RWxlbWVudCA9PlxuICBza2lwUG9ydGFsID8gKFxuICAgIDw+e2NoaWxkcmVufTwvPlxuICApIDogKFxuICAgIDxNb2RhbENvbnRleHQuUHJvdmlkZXIgdmFsdWU+XG4gICAgICA8UG9ydGFsPlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxufTogUGFydGlhbDxNb2RhbFByb3BzPikgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCI+XG4gICAge2lzRnVsbFNjcmVlbiAmJiBpc01heFdpZHRoTGltaXQgPyAoXG4gICAgICA8U3R5bGVkTWF4V2lkdGg+e2NoaWxkcmVufTwvU3R5bGVkTWF4V2lkdGg+XG4gICAgKSA6IChcbiAgICAgIGNoaWxkcmVuXG4gICAgKX1cbiAgPC9Cb3g+XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gTW9kYWwoe1xuICBoZWFkZXIsXG4gIHN1YkhlYWRlcixcbiAgbGFiZWxIZWFkZXIsXG4gIGNoaWxkcmVuLFxuICBpbWFnZVVybCxcbiAgSW1hZ2VDb21wb25lbnQsXG4gIHNlY29uZGFyeUJ1dHRvbixcbiAgY2FuY2VsQnV0dG9uTGFiZWwsXG4gIGlzRGlzbWlzc2libGUgPSB0cnVlLFxuICBpc0Z1bGxTY3JlZW4sXG4gIGlzTWF4V2lkdGhMaW1pdCA9IHRydWUsXG4gIGFjdGlvbkJ1dHRvbixcbiAgcm9sZSxcbiAgb25BY3Rpb24sXG4gIHNpemUgPSBcIm1cIixcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWwgfSA9IHsgc2tpcFBvcnRhbDogZmFsc2UgfSxcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBNb2RhbFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgbW9kYWxSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IFtpc09wZW5pbmcsIHNldE9wZW5pbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChpc0Rpc21pc3NpYmxlKSB7XG4gICAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgICB9XG4gIH07XG4gIGNvbnN0IGhhc0JhY2tkcm9wRGlzbWlzcyA9ICFza2lwUG9ydGFsO1xuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0T3BlbmluZyhmYWxzZSk7XG4gIH0sIFtdKTtcblxuICB1c2VPdXRzaWRlQ2xpY2sobW9kYWxSZWYsIGhhbmRsZUNsb3NlLCBoYXNCYWNrZHJvcERpc21pc3MgJiYgIWlzT3BlbmluZyk7XG4gIHVzZU9uRXNjYXBlUHJlc3MoaGFuZGxlQ2xvc2UsIFtoYW5kbGVDbG9zZV0pO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyIHNraXBQb3J0YWw9e3NraXBQb3J0YWx9PlxuICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICByb2xlPXtyb2xlfVxuICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgID5cbiAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICB7aGFzSW1hZ2UgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPXtbXCJ4bFwiLCBcImxcIl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ4eHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDY+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwiemVyb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SDI+e2hlYWRlcn08L0gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIDxINCBjb2xvcj1cInRlcnRpYXJ5XCI+e3N1YkhlYWRlcn08L0g0Pn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICB7aXNEaXNtaXNzaWJsZSAmJiA8QnV0dG9uQ2xvc2Ugb25DbGljaz17aGFuZGxlQ2xvc2V9IC8+fVxuICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgIHJlZj17c2Nyb2xsYWJsZVJlZn1cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17aGFzU2Nyb2xsICYmICFpc1Njcm9sbEJvdHRvbX1cbiAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvU3R5bGVkQm9keT5cblxuICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxGb290ZXI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIHNlY29uZGFyeUJ1dHRvbj17c2Vjb25kYXJ5QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgPC9Db250YWluZXI+XG4gICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICA8L1dyYXBwZXI+XG4gICk7XG59XG5cbk1vZGFsLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRNb2RhbFByb3BzO1xuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBHMkIifQ== */"),StyledInner=styled("div",{target:"e123vch82",label:"StyledInner"})(({theme,isFullScreen,size})=>{let mobileVerticalSpace=getMobileSpace(theme),mobileInnerVerticalSpace=getMobileInnerSpace(theme),desktopVerticalSpace=getDesktopSpace(theme),desktopInnerVerticalSpace=getDesktopInnerSpace(theme),fullScreenMobile=`calc(100dvh - ${mobileVerticalSpace} * 2 - ${mobileInnerVerticalSpace} * 2)`;return{display:"flex",...mqValue({height:["l"===size||isFullScreen?fullScreenMobile:"auto",isFullScreen?`calc(100dvh - ${desktopVerticalSpace} * 2 - ${desktopInnerVerticalSpace} * 2)`:"l"===size?`calc(100dvh - ${desktopVerticalSpace} * 2 - ${desktopInnerVerticalSpace} * 2 - ${theme.variables.size.dimension.modal.margin.l} * 2)`:"auto"],maxHeight:[fullScreenMobile,isFullScreen?"auto":"l"===size?`calc(${theme.variables.size.dimension.modal.maxHeight.l} - ${desktopInnerVerticalSpace} * 2)`:`calc(100dvh - ${desktopVerticalSpace} * 2 - ${desktopInnerVerticalSpace} * 2)`]}),flexDirection:"column",overflow:"hidden"}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xufTtcblxudHlwZSBDb25kaXRpb25hbFByb3BzID1cbiAgfCB7XG4gICAgICAvKiogQXNwZWN0IHJhdGlvIDE2OjkgKi9cbiAgICAgIGltYWdlVXJsPzogc3RyaW5nO1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaW1hZ2VVcmw/OiBuZXZlcjtcbiAgICAgIC8qKiBBY2NlcHQgcmF0aW8gMTY6OSAqL1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBSZWFjdC5FbGVtZW50VHlwZTxhbnk+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIE1vZGFsUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5jb25zdCBkZWZhdWx0TW9kYWxQcm9wczogUGFydGlhbDxNb2RhbFByb3BzPiA9IHtcbiAgcm9sZTogXCJkaWFsb2dcIixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IHVuZGVmaW5lZCxcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWw6IGZhbHNlIH0sXG59O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICBoZWlnaHQ6IFtcbiAgICAgICAgICBzaXplID09PSBcImxcIiB8fCBpc0Z1bGxTY3JlZW4gPyBmdWxsU2NyZWVuTW9iaWxlIDogXCJhdXRvXCIsXG4gICAgICAgICAgZ2V0RGVza3RvcEhlaWdodCgpLFxuICAgICAgICBdLFxuICAgICAgICBtYXhIZWlnaHQ6IFtmdWxsU2NyZWVuTW9iaWxlLCBnZXREZXNrdG9wTWF4SGVpZ2h0KCldLFxuICAgICAgfSksXG5cbiAgICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICB9O1xuICB9XG4pO1xuXG50eXBlIFN0eWxlZEJvZHlQcm9wcyA9IHtcbiAgYm9yZGVyQm90dG9tOiBib29sZWFuO1xuICBib3JkZXJUb3A6IGJvb2xlYW47XG59O1xuXG5jb25zdCBTdHlsZWRCb2R5ID0gc3R5bGVkLmRpdjxTdHlsZWRCb2R5UHJvcHMgJiBQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGJvcmRlckJvdHRvbSwgYm9yZGVyVG9wLCBzaXplLCBpc0Z1bGxTY3JlZW4gfSkgPT4gKHtcbiAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgIG1heEhlaWdodDogXCIxMDAlXCIsXG5cbiAgICAuLi4oKGlzRnVsbFNjcmVlbiB8fCBzaXplID09PSBcImxcIikgJiYge1xuICAgICAgZmxleDogMSxcbiAgICB9KSxcblxuICAgIC4uLihib3JkZXJCb3R0b20gJiYge1xuICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICAgIC4uLihib3JkZXJUb3AgJiYge1xuICAgICAgYm9yZGVyVG9wOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSW1nID0gc3R5bGVkLmltZygoKSA9PiAoe1xuICB3aWR0aDogXCIxMDAlXCIsXG4gIGFzcGVjdFJhdGlvOiBcIjE2LzlcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkTWF4V2lkdGggPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KCh7IHRoZW1lIH0pID0+ICh7XG4gIG1heFdpZHRoOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwuZnVsbFNjcmVlbkNvbnRlbnRXaWR0aCxcbiAgbWFyZ2luOiBcIjAgYXV0b1wiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRYQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAuLi5tcVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIHNraXBQb3J0YWw6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdEVsZW1lbnQ7XG59ICYgUGFydGlhbDxNb2RhbFByb3BzPik6IFJlYWN0LlJlYWN0RWxlbWVudCA9PlxuICBza2lwUG9ydGFsID8gKFxuICAgIDw+e2NoaWxkcmVufTwvPlxuICApIDogKFxuICAgIDxNb2RhbENvbnRleHQuUHJvdmlkZXIgdmFsdWU+XG4gICAgICA8UG9ydGFsPlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxufTogUGFydGlhbDxNb2RhbFByb3BzPikgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCI+XG4gICAge2lzRnVsbFNjcmVlbiAmJiBpc01heFdpZHRoTGltaXQgPyAoXG4gICAgICA8U3R5bGVkTWF4V2lkdGg+e2NoaWxkcmVufTwvU3R5bGVkTWF4V2lkdGg+XG4gICAgKSA6IChcbiAgICAgIGNoaWxkcmVuXG4gICAgKX1cbiAgPC9Cb3g+XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gTW9kYWwoe1xuICBoZWFkZXIsXG4gIHN1YkhlYWRlcixcbiAgbGFiZWxIZWFkZXIsXG4gIGNoaWxkcmVuLFxuICBpbWFnZVVybCxcbiAgSW1hZ2VDb21wb25lbnQsXG4gIHNlY29uZGFyeUJ1dHRvbixcbiAgY2FuY2VsQnV0dG9uTGFiZWwsXG4gIGlzRGlzbWlzc2libGUgPSB0cnVlLFxuICBpc0Z1bGxTY3JlZW4sXG4gIGlzTWF4V2lkdGhMaW1pdCA9IHRydWUsXG4gIGFjdGlvbkJ1dHRvbixcbiAgcm9sZSxcbiAgb25BY3Rpb24sXG4gIHNpemUgPSBcIm1cIixcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWwgfSA9IHsgc2tpcFBvcnRhbDogZmFsc2UgfSxcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBNb2RhbFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgbW9kYWxSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IFtpc09wZW5pbmcsIHNldE9wZW5pbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChpc0Rpc21pc3NpYmxlKSB7XG4gICAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgICB9XG4gIH07XG4gIGNvbnN0IGhhc0JhY2tkcm9wRGlzbWlzcyA9ICFza2lwUG9ydGFsO1xuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0T3BlbmluZyhmYWxzZSk7XG4gIH0sIFtdKTtcblxuICB1c2VPdXRzaWRlQ2xpY2sobW9kYWxSZWYsIGhhbmRsZUNsb3NlLCBoYXNCYWNrZHJvcERpc21pc3MgJiYgIWlzT3BlbmluZyk7XG4gIHVzZU9uRXNjYXBlUHJlc3MoaGFuZGxlQ2xvc2UsIFtoYW5kbGVDbG9zZV0pO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyIHNraXBQb3J0YWw9e3NraXBQb3J0YWx9PlxuICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICByb2xlPXtyb2xlfVxuICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgID5cbiAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICB7aGFzSW1hZ2UgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPXtbXCJ4bFwiLCBcImxcIl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ4eHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDY+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwiemVyb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SDI+e2hlYWRlcn08L0gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIDxINCBjb2xvcj1cInRlcnRpYXJ5XCI+e3N1YkhlYWRlcn08L0g0Pn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICB7aXNEaXNtaXNzaWJsZSAmJiA8QnV0dG9uQ2xvc2Ugb25DbGljaz17aGFuZGxlQ2xvc2V9IC8+fVxuICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgIHJlZj17c2Nyb2xsYWJsZVJlZn1cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17aGFzU2Nyb2xsICYmICFpc1Njcm9sbEJvdHRvbX1cbiAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvU3R5bGVkQm9keT5cblxuICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxGb290ZXI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIHNlY29uZGFyeUJ1dHRvbj17c2Vjb25kYXJ5QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgPC9Db250YWluZXI+XG4gICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICA8L1dyYXBwZXI+XG4gICk7XG59XG5cbk1vZGFsLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRNb2RhbFByb3BzO1xuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdJb0IifQ== */"),StyledBody=styled("div",{target:"e123vch83",label:"StyledBody"})(({theme,borderBottom,borderTop,size,isFullScreen})=>({overflowY:"auto",maxHeight:"100%",...(isFullScreen||"l"===size)&&{flex:1},...borderBottom&&{borderBottom:`1px solid ${theme.values.color.divider.primary}`},...borderTop&&{borderTop:`1px solid ${theme.values.color.divider.primary}`}}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xufTtcblxudHlwZSBDb25kaXRpb25hbFByb3BzID1cbiAgfCB7XG4gICAgICAvKiogQXNwZWN0IHJhdGlvIDE2OjkgKi9cbiAgICAgIGltYWdlVXJsPzogc3RyaW5nO1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaW1hZ2VVcmw/OiBuZXZlcjtcbiAgICAgIC8qKiBBY2NlcHQgcmF0aW8gMTY6OSAqL1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBSZWFjdC5FbGVtZW50VHlwZTxhbnk+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIE1vZGFsUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5jb25zdCBkZWZhdWx0TW9kYWxQcm9wczogUGFydGlhbDxNb2RhbFByb3BzPiA9IHtcbiAgcm9sZTogXCJkaWFsb2dcIixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IHVuZGVmaW5lZCxcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWw6IGZhbHNlIH0sXG59O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICBoZWlnaHQ6IFtcbiAgICAgICAgICBzaXplID09PSBcImxcIiB8fCBpc0Z1bGxTY3JlZW4gPyBmdWxsU2NyZWVuTW9iaWxlIDogXCJhdXRvXCIsXG4gICAgICAgICAgZ2V0RGVza3RvcEhlaWdodCgpLFxuICAgICAgICBdLFxuICAgICAgICBtYXhIZWlnaHQ6IFtmdWxsU2NyZWVuTW9iaWxlLCBnZXREZXNrdG9wTWF4SGVpZ2h0KCldLFxuICAgICAgfSksXG5cbiAgICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICB9O1xuICB9XG4pO1xuXG50eXBlIFN0eWxlZEJvZHlQcm9wcyA9IHtcbiAgYm9yZGVyQm90dG9tOiBib29sZWFuO1xuICBib3JkZXJUb3A6IGJvb2xlYW47XG59O1xuXG5jb25zdCBTdHlsZWRCb2R5ID0gc3R5bGVkLmRpdjxTdHlsZWRCb2R5UHJvcHMgJiBQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGJvcmRlckJvdHRvbSwgYm9yZGVyVG9wLCBzaXplLCBpc0Z1bGxTY3JlZW4gfSkgPT4gKHtcbiAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgIG1heEhlaWdodDogXCIxMDAlXCIsXG5cbiAgICAuLi4oKGlzRnVsbFNjcmVlbiB8fCBzaXplID09PSBcImxcIikgJiYge1xuICAgICAgZmxleDogMSxcbiAgICB9KSxcblxuICAgIC4uLihib3JkZXJCb3R0b20gJiYge1xuICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICAgIC4uLihib3JkZXJUb3AgJiYge1xuICAgICAgYm9yZGVyVG9wOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSW1nID0gc3R5bGVkLmltZygoKSA9PiAoe1xuICB3aWR0aDogXCIxMDAlXCIsXG4gIGFzcGVjdFJhdGlvOiBcIjE2LzlcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkTWF4V2lkdGggPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KCh7IHRoZW1lIH0pID0+ICh7XG4gIG1heFdpZHRoOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwuZnVsbFNjcmVlbkNvbnRlbnRXaWR0aCxcbiAgbWFyZ2luOiBcIjAgYXV0b1wiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRYQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAuLi5tcVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIHNraXBQb3J0YWw6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdEVsZW1lbnQ7XG59ICYgUGFydGlhbDxNb2RhbFByb3BzPik6IFJlYWN0LlJlYWN0RWxlbWVudCA9PlxuICBza2lwUG9ydGFsID8gKFxuICAgIDw+e2NoaWxkcmVufTwvPlxuICApIDogKFxuICAgIDxNb2RhbENvbnRleHQuUHJvdmlkZXIgdmFsdWU+XG4gICAgICA8UG9ydGFsPlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxufTogUGFydGlhbDxNb2RhbFByb3BzPikgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCI+XG4gICAge2lzRnVsbFNjcmVlbiAmJiBpc01heFdpZHRoTGltaXQgPyAoXG4gICAgICA8U3R5bGVkTWF4V2lkdGg+e2NoaWxkcmVufTwvU3R5bGVkTWF4V2lkdGg+XG4gICAgKSA6IChcbiAgICAgIGNoaWxkcmVuXG4gICAgKX1cbiAgPC9Cb3g+XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gTW9kYWwoe1xuICBoZWFkZXIsXG4gIHN1YkhlYWRlcixcbiAgbGFiZWxIZWFkZXIsXG4gIGNoaWxkcmVuLFxuICBpbWFnZVVybCxcbiAgSW1hZ2VDb21wb25lbnQsXG4gIHNlY29uZGFyeUJ1dHRvbixcbiAgY2FuY2VsQnV0dG9uTGFiZWwsXG4gIGlzRGlzbWlzc2libGUgPSB0cnVlLFxuICBpc0Z1bGxTY3JlZW4sXG4gIGlzTWF4V2lkdGhMaW1pdCA9IHRydWUsXG4gIGFjdGlvbkJ1dHRvbixcbiAgcm9sZSxcbiAgb25BY3Rpb24sXG4gIHNpemUgPSBcIm1cIixcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWwgfSA9IHsgc2tpcFBvcnRhbDogZmFsc2UgfSxcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBNb2RhbFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgbW9kYWxSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IFtpc09wZW5pbmcsIHNldE9wZW5pbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChpc0Rpc21pc3NpYmxlKSB7XG4gICAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgICB9XG4gIH07XG4gIGNvbnN0IGhhc0JhY2tkcm9wRGlzbWlzcyA9ICFza2lwUG9ydGFsO1xuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0T3BlbmluZyhmYWxzZSk7XG4gIH0sIFtdKTtcblxuICB1c2VPdXRzaWRlQ2xpY2sobW9kYWxSZWYsIGhhbmRsZUNsb3NlLCBoYXNCYWNrZHJvcERpc21pc3MgJiYgIWlzT3BlbmluZyk7XG4gIHVzZU9uRXNjYXBlUHJlc3MoaGFuZGxlQ2xvc2UsIFtoYW5kbGVDbG9zZV0pO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyIHNraXBQb3J0YWw9e3NraXBQb3J0YWx9PlxuICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICByb2xlPXtyb2xlfVxuICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgID5cbiAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICB7aGFzSW1hZ2UgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPXtbXCJ4bFwiLCBcImxcIl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ4eHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDY+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwiemVyb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SDI+e2hlYWRlcn08L0gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIDxINCBjb2xvcj1cInRlcnRpYXJ5XCI+e3N1YkhlYWRlcn08L0g0Pn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICB7aXNEaXNtaXNzaWJsZSAmJiA8QnV0dG9uQ2xvc2Ugb25DbGljaz17aGFuZGxlQ2xvc2V9IC8+fVxuICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgIHJlZj17c2Nyb2xsYWJsZVJlZn1cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17aGFzU2Nyb2xsICYmICFpc1Njcm9sbEJvdHRvbX1cbiAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvU3R5bGVkQm9keT5cblxuICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxGb290ZXI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIHNlY29uZGFyeUJ1dHRvbj17c2Vjb25kYXJ5QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgPC9Db250YWluZXI+XG4gICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICA8L1dyYXBwZXI+XG4gICk7XG59XG5cbk1vZGFsLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRNb2RhbFByb3BzO1xuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStMbUIifQ== */"),StyledImg=styled("img",{target:"e123vch84",label:"StyledImg"})(()=>({width:"100%",aspectRatio:"16/9"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xufTtcblxudHlwZSBDb25kaXRpb25hbFByb3BzID1cbiAgfCB7XG4gICAgICAvKiogQXNwZWN0IHJhdGlvIDE2OjkgKi9cbiAgICAgIGltYWdlVXJsPzogc3RyaW5nO1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaW1hZ2VVcmw/OiBuZXZlcjtcbiAgICAgIC8qKiBBY2NlcHQgcmF0aW8gMTY6OSAqL1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBSZWFjdC5FbGVtZW50VHlwZTxhbnk+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIE1vZGFsUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5jb25zdCBkZWZhdWx0TW9kYWxQcm9wczogUGFydGlhbDxNb2RhbFByb3BzPiA9IHtcbiAgcm9sZTogXCJkaWFsb2dcIixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IHVuZGVmaW5lZCxcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWw6IGZhbHNlIH0sXG59O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICBoZWlnaHQ6IFtcbiAgICAgICAgICBzaXplID09PSBcImxcIiB8fCBpc0Z1bGxTY3JlZW4gPyBmdWxsU2NyZWVuTW9iaWxlIDogXCJhdXRvXCIsXG4gICAgICAgICAgZ2V0RGVza3RvcEhlaWdodCgpLFxuICAgICAgICBdLFxuICAgICAgICBtYXhIZWlnaHQ6IFtmdWxsU2NyZWVuTW9iaWxlLCBnZXREZXNrdG9wTWF4SGVpZ2h0KCldLFxuICAgICAgfSksXG5cbiAgICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICB9O1xuICB9XG4pO1xuXG50eXBlIFN0eWxlZEJvZHlQcm9wcyA9IHtcbiAgYm9yZGVyQm90dG9tOiBib29sZWFuO1xuICBib3JkZXJUb3A6IGJvb2xlYW47XG59O1xuXG5jb25zdCBTdHlsZWRCb2R5ID0gc3R5bGVkLmRpdjxTdHlsZWRCb2R5UHJvcHMgJiBQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGJvcmRlckJvdHRvbSwgYm9yZGVyVG9wLCBzaXplLCBpc0Z1bGxTY3JlZW4gfSkgPT4gKHtcbiAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgIG1heEhlaWdodDogXCIxMDAlXCIsXG5cbiAgICAuLi4oKGlzRnVsbFNjcmVlbiB8fCBzaXplID09PSBcImxcIikgJiYge1xuICAgICAgZmxleDogMSxcbiAgICB9KSxcblxuICAgIC4uLihib3JkZXJCb3R0b20gJiYge1xuICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICAgIC4uLihib3JkZXJUb3AgJiYge1xuICAgICAgYm9yZGVyVG9wOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSW1nID0gc3R5bGVkLmltZygoKSA9PiAoe1xuICB3aWR0aDogXCIxMDAlXCIsXG4gIGFzcGVjdFJhdGlvOiBcIjE2LzlcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkTWF4V2lkdGggPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KCh7IHRoZW1lIH0pID0+ICh7XG4gIG1heFdpZHRoOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwuZnVsbFNjcmVlbkNvbnRlbnRXaWR0aCxcbiAgbWFyZ2luOiBcIjAgYXV0b1wiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRYQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAuLi5tcVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIHNraXBQb3J0YWw6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdEVsZW1lbnQ7XG59ICYgUGFydGlhbDxNb2RhbFByb3BzPik6IFJlYWN0LlJlYWN0RWxlbWVudCA9PlxuICBza2lwUG9ydGFsID8gKFxuICAgIDw+e2NoaWxkcmVufTwvPlxuICApIDogKFxuICAgIDxNb2RhbENvbnRleHQuUHJvdmlkZXIgdmFsdWU+XG4gICAgICA8UG9ydGFsPlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxufTogUGFydGlhbDxNb2RhbFByb3BzPikgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCI+XG4gICAge2lzRnVsbFNjcmVlbiAmJiBpc01heFdpZHRoTGltaXQgPyAoXG4gICAgICA8U3R5bGVkTWF4V2lkdGg+e2NoaWxkcmVufTwvU3R5bGVkTWF4V2lkdGg+XG4gICAgKSA6IChcbiAgICAgIGNoaWxkcmVuXG4gICAgKX1cbiAgPC9Cb3g+XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gTW9kYWwoe1xuICBoZWFkZXIsXG4gIHN1YkhlYWRlcixcbiAgbGFiZWxIZWFkZXIsXG4gIGNoaWxkcmVuLFxuICBpbWFnZVVybCxcbiAgSW1hZ2VDb21wb25lbnQsXG4gIHNlY29uZGFyeUJ1dHRvbixcbiAgY2FuY2VsQnV0dG9uTGFiZWwsXG4gIGlzRGlzbWlzc2libGUgPSB0cnVlLFxuICBpc0Z1bGxTY3JlZW4sXG4gIGlzTWF4V2lkdGhMaW1pdCA9IHRydWUsXG4gIGFjdGlvbkJ1dHRvbixcbiAgcm9sZSxcbiAgb25BY3Rpb24sXG4gIHNpemUgPSBcIm1cIixcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWwgfSA9IHsgc2tpcFBvcnRhbDogZmFsc2UgfSxcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBNb2RhbFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgbW9kYWxSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IFtpc09wZW5pbmcsIHNldE9wZW5pbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChpc0Rpc21pc3NpYmxlKSB7XG4gICAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgICB9XG4gIH07XG4gIGNvbnN0IGhhc0JhY2tkcm9wRGlzbWlzcyA9ICFza2lwUG9ydGFsO1xuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0T3BlbmluZyhmYWxzZSk7XG4gIH0sIFtdKTtcblxuICB1c2VPdXRzaWRlQ2xpY2sobW9kYWxSZWYsIGhhbmRsZUNsb3NlLCBoYXNCYWNrZHJvcERpc21pc3MgJiYgIWlzT3BlbmluZyk7XG4gIHVzZU9uRXNjYXBlUHJlc3MoaGFuZGxlQ2xvc2UsIFtoYW5kbGVDbG9zZV0pO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyIHNraXBQb3J0YWw9e3NraXBQb3J0YWx9PlxuICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICByb2xlPXtyb2xlfVxuICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgID5cbiAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICB7aGFzSW1hZ2UgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPXtbXCJ4bFwiLCBcImxcIl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ4eHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDY+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwiemVyb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SDI+e2hlYWRlcn08L0gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIDxINCBjb2xvcj1cInRlcnRpYXJ5XCI+e3N1YkhlYWRlcn08L0g0Pn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICB7aXNEaXNtaXNzaWJsZSAmJiA8QnV0dG9uQ2xvc2Ugb25DbGljaz17aGFuZGxlQ2xvc2V9IC8+fVxuICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgIHJlZj17c2Nyb2xsYWJsZVJlZn1cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17aGFzU2Nyb2xsICYmICFpc1Njcm9sbEJvdHRvbX1cbiAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvU3R5bGVkQm9keT5cblxuICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxGb290ZXI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIHNlY29uZGFyeUJ1dHRvbj17c2Vjb25kYXJ5QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgPC9Db250YWluZXI+XG4gICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICA8L1dyYXBwZXI+XG4gICk7XG59XG5cbk1vZGFsLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRNb2RhbFByb3BzO1xuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlOa0IifQ== */"),StyledMaxWidth=styled("div",{target:"e123vch85",label:"StyledMaxWidth"})(({theme})=>({maxWidth:theme.variables.size.dimension.modal.fullScreenContentWidth,margin:"0 auto"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xufTtcblxudHlwZSBDb25kaXRpb25hbFByb3BzID1cbiAgfCB7XG4gICAgICAvKiogQXNwZWN0IHJhdGlvIDE2OjkgKi9cbiAgICAgIGltYWdlVXJsPzogc3RyaW5nO1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaW1hZ2VVcmw/OiBuZXZlcjtcbiAgICAgIC8qKiBBY2NlcHQgcmF0aW8gMTY6OSAqL1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBSZWFjdC5FbGVtZW50VHlwZTxhbnk+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIE1vZGFsUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5jb25zdCBkZWZhdWx0TW9kYWxQcm9wczogUGFydGlhbDxNb2RhbFByb3BzPiA9IHtcbiAgcm9sZTogXCJkaWFsb2dcIixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IHVuZGVmaW5lZCxcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWw6IGZhbHNlIH0sXG59O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICBoZWlnaHQ6IFtcbiAgICAgICAgICBzaXplID09PSBcImxcIiB8fCBpc0Z1bGxTY3JlZW4gPyBmdWxsU2NyZWVuTW9iaWxlIDogXCJhdXRvXCIsXG4gICAgICAgICAgZ2V0RGVza3RvcEhlaWdodCgpLFxuICAgICAgICBdLFxuICAgICAgICBtYXhIZWlnaHQ6IFtmdWxsU2NyZWVuTW9iaWxlLCBnZXREZXNrdG9wTWF4SGVpZ2h0KCldLFxuICAgICAgfSksXG5cbiAgICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICB9O1xuICB9XG4pO1xuXG50eXBlIFN0eWxlZEJvZHlQcm9wcyA9IHtcbiAgYm9yZGVyQm90dG9tOiBib29sZWFuO1xuICBib3JkZXJUb3A6IGJvb2xlYW47XG59O1xuXG5jb25zdCBTdHlsZWRCb2R5ID0gc3R5bGVkLmRpdjxTdHlsZWRCb2R5UHJvcHMgJiBQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGJvcmRlckJvdHRvbSwgYm9yZGVyVG9wLCBzaXplLCBpc0Z1bGxTY3JlZW4gfSkgPT4gKHtcbiAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgIG1heEhlaWdodDogXCIxMDAlXCIsXG5cbiAgICAuLi4oKGlzRnVsbFNjcmVlbiB8fCBzaXplID09PSBcImxcIikgJiYge1xuICAgICAgZmxleDogMSxcbiAgICB9KSxcblxuICAgIC4uLihib3JkZXJCb3R0b20gJiYge1xuICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICAgIC4uLihib3JkZXJUb3AgJiYge1xuICAgICAgYm9yZGVyVG9wOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSW1nID0gc3R5bGVkLmltZygoKSA9PiAoe1xuICB3aWR0aDogXCIxMDAlXCIsXG4gIGFzcGVjdFJhdGlvOiBcIjE2LzlcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkTWF4V2lkdGggPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KCh7IHRoZW1lIH0pID0+ICh7XG4gIG1heFdpZHRoOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwuZnVsbFNjcmVlbkNvbnRlbnRXaWR0aCxcbiAgbWFyZ2luOiBcIjAgYXV0b1wiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRYQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAuLi5tcVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIHNraXBQb3J0YWw6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdEVsZW1lbnQ7XG59ICYgUGFydGlhbDxNb2RhbFByb3BzPik6IFJlYWN0LlJlYWN0RWxlbWVudCA9PlxuICBza2lwUG9ydGFsID8gKFxuICAgIDw+e2NoaWxkcmVufTwvPlxuICApIDogKFxuICAgIDxNb2RhbENvbnRleHQuUHJvdmlkZXIgdmFsdWU+XG4gICAgICA8UG9ydGFsPlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxufTogUGFydGlhbDxNb2RhbFByb3BzPikgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCI+XG4gICAge2lzRnVsbFNjcmVlbiAmJiBpc01heFdpZHRoTGltaXQgPyAoXG4gICAgICA8U3R5bGVkTWF4V2lkdGg+e2NoaWxkcmVufTwvU3R5bGVkTWF4V2lkdGg+XG4gICAgKSA6IChcbiAgICAgIGNoaWxkcmVuXG4gICAgKX1cbiAgPC9Cb3g+XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gTW9kYWwoe1xuICBoZWFkZXIsXG4gIHN1YkhlYWRlcixcbiAgbGFiZWxIZWFkZXIsXG4gIGNoaWxkcmVuLFxuICBpbWFnZVVybCxcbiAgSW1hZ2VDb21wb25lbnQsXG4gIHNlY29uZGFyeUJ1dHRvbixcbiAgY2FuY2VsQnV0dG9uTGFiZWwsXG4gIGlzRGlzbWlzc2libGUgPSB0cnVlLFxuICBpc0Z1bGxTY3JlZW4sXG4gIGlzTWF4V2lkdGhMaW1pdCA9IHRydWUsXG4gIGFjdGlvbkJ1dHRvbixcbiAgcm9sZSxcbiAgb25BY3Rpb24sXG4gIHNpemUgPSBcIm1cIixcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWwgfSA9IHsgc2tpcFBvcnRhbDogZmFsc2UgfSxcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBNb2RhbFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgbW9kYWxSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IFtpc09wZW5pbmcsIHNldE9wZW5pbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChpc0Rpc21pc3NpYmxlKSB7XG4gICAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgICB9XG4gIH07XG4gIGNvbnN0IGhhc0JhY2tkcm9wRGlzbWlzcyA9ICFza2lwUG9ydGFsO1xuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0T3BlbmluZyhmYWxzZSk7XG4gIH0sIFtdKTtcblxuICB1c2VPdXRzaWRlQ2xpY2sobW9kYWxSZWYsIGhhbmRsZUNsb3NlLCBoYXNCYWNrZHJvcERpc21pc3MgJiYgIWlzT3BlbmluZyk7XG4gIHVzZU9uRXNjYXBlUHJlc3MoaGFuZGxlQ2xvc2UsIFtoYW5kbGVDbG9zZV0pO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyIHNraXBQb3J0YWw9e3NraXBQb3J0YWx9PlxuICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICByb2xlPXtyb2xlfVxuICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgID5cbiAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICB7aGFzSW1hZ2UgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPXtbXCJ4bFwiLCBcImxcIl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ4eHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDY+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwiemVyb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SDI+e2hlYWRlcn08L0gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIDxINCBjb2xvcj1cInRlcnRpYXJ5XCI+e3N1YkhlYWRlcn08L0g0Pn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICB7aXNEaXNtaXNzaWJsZSAmJiA8QnV0dG9uQ2xvc2Ugb25DbGljaz17aGFuZGxlQ2xvc2V9IC8+fVxuICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgIHJlZj17c2Nyb2xsYWJsZVJlZn1cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17aGFzU2Nyb2xsICYmICFpc1Njcm9sbEJvdHRvbX1cbiAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvU3R5bGVkQm9keT5cblxuICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxGb290ZXI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIHNlY29uZGFyeUJ1dHRvbj17c2Vjb25kYXJ5QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgPC9Db250YWluZXI+XG4gICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICA8L1dyYXBwZXI+XG4gICk7XG59XG5cbk1vZGFsLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRNb2RhbFByb3BzO1xuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNOdUIifQ== */"),StyledXContainer=styled("div",{target:"e123vch86",label:"StyledXContainer"})(({theme})=>({position:"absolute",...mqValue({top:[theme.variables.size.spacing.s,theme.variables.size.spacing.l],right:[theme.variables.size.spacing.s,theme.variables.size.spacing.l]})}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IG1xVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL21lZGlhUXVlcmllc1wiO1xuaW1wb3J0IHsgdXNlT25Fc2NhcGVQcmVzcyB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlT25Fc2NhcGVQcmVzc1wiO1xuaW1wb3J0IHsgdXNlT3V0c2lkZUNsaWNrIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC91c2VPdXRzaWRlQ2xpY2tcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xufTtcblxudHlwZSBDb25kaXRpb25hbFByb3BzID1cbiAgfCB7XG4gICAgICAvKiogQXNwZWN0IHJhdGlvIDE2OjkgKi9cbiAgICAgIGltYWdlVXJsPzogc3RyaW5nO1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBuZXZlcjtcbiAgICB9XG4gIHwge1xuICAgICAgaW1hZ2VVcmw/OiBuZXZlcjtcbiAgICAgIC8qKiBBY2NlcHQgcmF0aW8gMTY6OSAqL1xuICAgICAgSW1hZ2VDb21wb25lbnQ/OiBSZWFjdC5FbGVtZW50VHlwZTxhbnk+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIE1vZGFsUHJvcHMgPSBCYXNlUHJvcHMgJiBDb25kaXRpb25hbFByb3BzO1xuXG5jb25zdCBkZWZhdWx0TW9kYWxQcm9wczogUGFydGlhbDxNb2RhbFByb3BzPiA9IHtcbiAgcm9sZTogXCJkaWFsb2dcIixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IHVuZGVmaW5lZCxcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWw6IGZhbHNlIH0sXG59O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLm1xVmFsdWUoe1xuICAgICAgICBoZWlnaHQ6IFtcbiAgICAgICAgICBzaXplID09PSBcImxcIiB8fCBpc0Z1bGxTY3JlZW4gPyBmdWxsU2NyZWVuTW9iaWxlIDogXCJhdXRvXCIsXG4gICAgICAgICAgZ2V0RGVza3RvcEhlaWdodCgpLFxuICAgICAgICBdLFxuICAgICAgICBtYXhIZWlnaHQ6IFtmdWxsU2NyZWVuTW9iaWxlLCBnZXREZXNrdG9wTWF4SGVpZ2h0KCldLFxuICAgICAgfSksXG5cbiAgICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICB9O1xuICB9XG4pO1xuXG50eXBlIFN0eWxlZEJvZHlQcm9wcyA9IHtcbiAgYm9yZGVyQm90dG9tOiBib29sZWFuO1xuICBib3JkZXJUb3A6IGJvb2xlYW47XG59O1xuXG5jb25zdCBTdHlsZWRCb2R5ID0gc3R5bGVkLmRpdjxTdHlsZWRCb2R5UHJvcHMgJiBQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGJvcmRlckJvdHRvbSwgYm9yZGVyVG9wLCBzaXplLCBpc0Z1bGxTY3JlZW4gfSkgPT4gKHtcbiAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgIG1heEhlaWdodDogXCIxMDAlXCIsXG5cbiAgICAuLi4oKGlzRnVsbFNjcmVlbiB8fCBzaXplID09PSBcImxcIikgJiYge1xuICAgICAgZmxleDogMSxcbiAgICB9KSxcblxuICAgIC4uLihib3JkZXJCb3R0b20gJiYge1xuICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICAgIC4uLihib3JkZXJUb3AgJiYge1xuICAgICAgYm9yZGVyVG9wOiBgMXB4IHNvbGlkICR7dGhlbWUudmFsdWVzLmNvbG9yLmRpdmlkZXIucHJpbWFyeX1gLFxuICAgIH0pLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkSW1nID0gc3R5bGVkLmltZygoKSA9PiAoe1xuICB3aWR0aDogXCIxMDAlXCIsXG4gIGFzcGVjdFJhdGlvOiBcIjE2LzlcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkTWF4V2lkdGggPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KCh7IHRoZW1lIH0pID0+ICh7XG4gIG1heFdpZHRoOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwuZnVsbFNjcmVlbkNvbnRlbnRXaWR0aCxcbiAgbWFyZ2luOiBcIjAgYXV0b1wiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRYQ29udGFpbmVyID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xuICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAuLi5tcVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIHNraXBQb3J0YWw6IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdEVsZW1lbnQ7XG59ICYgUGFydGlhbDxNb2RhbFByb3BzPik6IFJlYWN0LlJlYWN0RWxlbWVudCA9PlxuICBza2lwUG9ydGFsID8gKFxuICAgIDw+e2NoaWxkcmVufTwvPlxuICApIDogKFxuICAgIDxNb2RhbENvbnRleHQuUHJvdmlkZXIgdmFsdWU+XG4gICAgICA8UG9ydGFsPlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxufTogUGFydGlhbDxNb2RhbFByb3BzPikgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCI+XG4gICAge2lzRnVsbFNjcmVlbiAmJiBpc01heFdpZHRoTGltaXQgPyAoXG4gICAgICA8U3R5bGVkTWF4V2lkdGg+e2NoaWxkcmVufTwvU3R5bGVkTWF4V2lkdGg+XG4gICAgKSA6IChcbiAgICAgIGNoaWxkcmVuXG4gICAgKX1cbiAgPC9Cb3g+XG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gTW9kYWwoe1xuICBoZWFkZXIsXG4gIHN1YkhlYWRlcixcbiAgbGFiZWxIZWFkZXIsXG4gIGNoaWxkcmVuLFxuICBpbWFnZVVybCxcbiAgSW1hZ2VDb21wb25lbnQsXG4gIHNlY29uZGFyeUJ1dHRvbixcbiAgY2FuY2VsQnV0dG9uTGFiZWwsXG4gIGlzRGlzbWlzc2libGUgPSB0cnVlLFxuICBpc0Z1bGxTY3JlZW4sXG4gIGlzTWF4V2lkdGhMaW1pdCA9IHRydWUsXG4gIGFjdGlvbkJ1dHRvbixcbiAgcm9sZSxcbiAgb25BY3Rpb24sXG4gIHNpemUgPSBcIm1cIixcbiAgcHJpdmF0ZVByb3BzOiB7IHNraXBQb3J0YWwgfSA9IHsgc2tpcFBvcnRhbDogZmFsc2UgfSxcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG59OiBNb2RhbFByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgbW9kYWxSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IFtpc09wZW5pbmcsIHNldE9wZW5pbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChpc0Rpc21pc3NpYmxlKSB7XG4gICAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgICB9XG4gIH07XG4gIGNvbnN0IGhhc0JhY2tkcm9wRGlzbWlzcyA9ICFza2lwUG9ydGFsO1xuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0T3BlbmluZyhmYWxzZSk7XG4gIH0sIFtdKTtcblxuICB1c2VPdXRzaWRlQ2xpY2sobW9kYWxSZWYsIGhhbmRsZUNsb3NlLCBoYXNCYWNrZHJvcERpc21pc3MgJiYgIWlzT3BlbmluZyk7XG4gIHVzZU9uRXNjYXBlUHJlc3MoaGFuZGxlQ2xvc2UsIFtoYW5kbGVDbG9zZV0pO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyIHNraXBQb3J0YWw9e3NraXBQb3J0YWx9PlxuICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICByb2xlPXtyb2xlfVxuICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgID5cbiAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICB7aGFzSW1hZ2UgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPXtbXCJ4bFwiLCBcImxcIl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ4eHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDY+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwiemVyb1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8SDI+e2hlYWRlcn08L0gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIDxINCBjb2xvcj1cInRlcnRpYXJ5XCI+e3N1YkhlYWRlcn08L0g0Pn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICB7aXNEaXNtaXNzaWJsZSAmJiA8QnV0dG9uQ2xvc2Ugb25DbGljaz17aGFuZGxlQ2xvc2V9IC8+fVxuICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgIHJlZj17c2Nyb2xsYWJsZVJlZn1cbiAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgIGJvcmRlckJvdHRvbT17aGFzU2Nyb2xsICYmICFpc1Njcm9sbEJvdHRvbX1cbiAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgIDwvU3R5bGVkQm9keT5cblxuICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxGb290ZXI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIHNlY29uZGFyeUJ1dHRvbj17c2Vjb25kYXJ5QnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgPC9Db250YWluZXI+XG4gICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICA8L1dyYXBwZXI+XG4gICk7XG59XG5cbk1vZGFsLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRNb2RhbFByb3BzO1xuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJOeUIifQ== */"),Footer=({children,alignItems=["stretch","right"]})=>React.createElement(Box,{space:"zero",tSpace:"l"},React.createElement(Stack,{alignItems:alignItems},children)),Wrapper=({skipPortal,children})=>skipPortal?React.createElement(React.Fragment,null,children):React.createElement(ModalContext.Provider,{value:!0},React.createElement(Portal,null,React.createElement(StyledBackdrop,null,children))),ButtonClose=({onClick})=>React.createElement(StyledXContainer,null,React.createElement(PictogramButton,{variant:"tertiary",icon:"x",size:"s",onClick:onClick})),HorizontalOffset=({children,isFullScreen,isMaxWidthLimit})=>React.createElement(Box,{space:["m","xl"],vSpace:"zero"},isFullScreen&&isMaxWidthLimit?React.createElement(StyledMaxWidth,null,children):children);export function Modal({header,subHeader,labelHeader,children,imageUrl,ImageComponent,secondaryButton,cancelButtonLabel,isDismissible=!0,isFullScreen,isMaxWidthLimit=!0,actionButton,role,onAction,size="m",privateProps:{skipPortal}={skipPortal:!1},"data-e2e-test-id":dataE2eTestId}){let modalRef=useRef(null),[isOpening,setOpening]=useState(!0),handleClose=()=>{isDismissible&&onAction("cancel")},{scrollableRef,isScrollBottom,isScrollTop,hasScroll}=useScrollDetection();useEffect(()=>{setOpening(!1)},[]),useOutsideClick(modalRef,handleClose,!skipPortal&&!isOpening),useOnEscapePress(handleClose,[handleClose]);let hasImage=imageUrl||ImageComponent,horizontalOffsetProps={isFullScreen,isMaxWidthLimit};return React.createElement(Wrapper,{skipPortal:skipPortal},React.createElement(StyledModalWrapper,{ref:modalRef,role:role,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"Modal",isFullScreen:isFullScreen,size:size},React.createElement(Container,{elevation:4},React.createElement(Box,{space:"zero",vSpace:["m","xl"]},React.createElement(StyledInner,{isFullScreen:isFullScreen,size:size},React.createElement(HorizontalOffset,horizontalOffsetProps,React.createElement(Box,{space:"zero",bSpace:"s"},React.createElement(Stack,{space:hasImage?["s","l"]:"zero"},hasImage&&React.createElement(React.Fragment,null,imageUrl?React.createElement(Box,{space:"zero",tSpace:["xl","l"]},React.createElement(StyledImg,{src:imageUrl})):React.createElement(ImageComponent,null)),React.createElement(Inline,{alignItems:"spaceBetween",noWrap:!0},React.createElement(Stack,{space:"xxs"},labelHeader&&React.createElement(H6,null,labelHeader),React.createElement(Stack,{space:"zero"},React.createElement(H2,null,header),subHeader&&React.createElement(H4,{color:"tertiary"},subHeader))),isDismissible&&React.createElement(ButtonClose,{onClick:handleClose}))))),React.createElement(StyledBody,{ref:scrollableRef,size:size,isFullScreen:isFullScreen,borderBottom:hasScroll&&!isScrollBottom,borderTop:hasScroll&&!isScrollTop},React.createElement(Box,{space:"zero",vSpace:"xxxs"},React.createElement(HorizontalOffset,horizontalOffsetProps,children))),(actionButton||cancelButtonLabel||secondaryButton)&&React.createElement(HorizontalOffset,horizontalOffsetProps,React.createElement(Footer,null,React.createElement(ButtonGroup,{actionButton:actionButton,secondaryButton:secondaryButton,cancelButtonText:cancelButtonLabel,onButtonClick:onAction}))))))))}Modal.defaultProps={role:"dialog","data-e2e-test-id":void 0,privateProps:{skipPortal:!1}},Modal.Stack=({children,...rest})=>React.createElement(Stack,{...rest,space:"m"},children),Modal.Text=({children,...rest})=>React.createElement(Text,{...rest,size:"m",color:"tertiary"},children);