@amboss/design-system 3.7.6 → 3.7.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/components/Patterns/Modal/Modal.d.ts +7 -5
- package/build/cjs/components/Patterns/Modal/Modal.js +3 -3
- package/build/cjs/components/Portal/Portal.d.ts +1 -0
- package/build/cjs/components/Portal/Portal.js +1 -1
- package/build/esm/components/Patterns/Modal/Modal.d.ts +7 -5
- package/build/esm/components/Patterns/Modal/Modal.js +3 -3
- package/build/esm/components/Portal/Portal.d.ts +1 -0
- package/build/esm/components/Portal/Portal.js +1 -1
- package/package.json +1 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import React,{useMemo,useRef,useId}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{useResponsiveValue}from"../../../shared/mediaQueries";import{useScrollDetection}from"../../../shared/useScrollDetection";import{ModalContext}from"./ModalContext";import{FocusTrapWrapper}from"../../../shared/FocusTrapWrapper";import{appendId}from"../../../shared/appendId";export const StyledBackdrop=styled("div",{target:"
|
|
1
|
+
import React,{useMemo,useRef,useId}from"react";import styled from"@emotion/styled";import{keyframes}from"@emotion/react";import{Portal,usePortalContainerElement}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{useResponsiveValue}from"../../../shared/mediaQueries";import{useScrollDetection}from"../../../shared/useScrollDetection";import{ModalContext}from"./ModalContext";import{FocusTrapWrapper}from"../../../shared/FocusTrapWrapper";import{appendId}from"../../../shared/appendId";export const StyledBackdrop=styled("div",{target:"e15xousc0",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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8sIHVzZVJlZiwgdXNlSWQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyB1c2VTY3JvbGxEZXRlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVNjcm9sbERldGVjdGlvblwiO1xuaW1wb3J0IHsgTW9kYWxDb250ZXh0IH0gZnJvbSBcIi4vTW9kYWxDb250ZXh0XCI7XG5pbXBvcnQgeyBGb2N1c1RyYXBXcmFwcGVyIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Gb2N1c1RyYXBXcmFwcGVyXCI7XG5pbXBvcnQgeyBhcHBlbmRJZCB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvYXBwZW5kSWRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtZGVzY3JpYmVkYnlcIj86IHN0cmluZztcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICZcbiAgQ29uZGl0aW9uYWxQcm9wcyAmXG4gIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIHdpZHRoOiBbXG4gICAgICAgICAgYGNhbGMoMTAwJSAtICR7Z2V0TW9iaWxlU3BhY2UodGhlbWUpfSAqIDIpYCxcbiAgICAgICAgICBpc0Z1bGxTY3JlZW5cbiAgICAgICAgICAgID8gYGNhbGMoMTAwJSAtICR7Z2V0RGVza3RvcFNwYWNlKHRoZW1lKX0gKiAyKWBcbiAgICAgICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLndpZHRoW3NpemVdLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgU3R5bGVkSW5uZXIgPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgaXNGdWxsU2NyZWVuLCBzaXplIH0pID0+IHtcbiAgICBjb25zdCBtb2JpbGVWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IG1vYmlsZUlubmVyVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZUlubmVyU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcFNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcElubmVyU3BhY2UodGhlbWUpO1xuXG4gICAgLy8gZnVsbHNjcmVlbiBhbmQgTCBzaXplIGRvbid0IGRlcGVuZCBvbiBjb250ZW50IHNpemVcbiAgICAvLyBMIHNpemUgaGVpZ2h0IGhhcyBtYXhIaWVnaHQgcmVzaXplIHVudGlsIDgwMHB4XG4gICAgLy8gZnVsbHNjcmVlbiBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcbiAgICAvLyBNIHNpemUgaGVpZ2h0IGhhcyBjb250ZW50IHNpemUgYW5kIGNlbnRlcmVkIGF0IHRvcCBhbmQgbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG5cbiAgICBjb25zdCBnZXREZXNrdG9wSGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXJnaW4ubH0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gXCJhdXRvXCI7XG4gICAgfTtcblxuICAgIGNvbnN0IGdldERlc2t0b3BNYXhIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgYXV0b2A7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKCR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1heEhlaWdodC5sfSAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICB9O1xuXG4gICAgY29uc3QgZnVsbFNjcmVlbk1vYmlsZSA9IGBjYWxjKDEwMGR2aCAtICR7bW9iaWxlVmVydGljYWxTcGFjZX0gKiAyIC0gJHttb2JpbGVJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG4gIHBvcnRhbENvbnRhaW5lcixcbn06IHtcbiAgc2tpcFBvcnRhbDogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0RWxlbWVudDtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1kZXNjcmliZWRieVwiOiBhcmlhRGVzY3JpYmVkQnksXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiBkYXRhRTJlVGVzdElkLFxufTogTW9kYWxQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzdWJIZWFkZXJJZCA9IHVzZUlkKCk7XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgb25BY3Rpb24oXCJjYW5jZWxcIik7XG4gIH07XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0gcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgYWN0aXZlXG4gICAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgICBjbGlja091dHNpZGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSxcbiAgICAgICAgICBhbGxvd091dHNpZGVDbGljazogdHJ1ZSxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBmYWxsYmFja0ZvY3VzOiBgW2RhdGEtZHMtaWQ9XCJNb2RhbFwiXWAsXG4gICAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZTogaGFuZGxlQ2xvc2UsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRNb2RhbFdyYXBwZXJcbiAgICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgYXJpYS1sYWJlbD17aGVhZGVyfVxuICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e1xuICAgICAgICAgICAgc3ViSGVhZGVyID8gYXBwZW5kSWQoYXJpYURlc2NyaWJlZEJ5LCBzdWJIZWFkZXJJZCkgOiBhcmlhRGVzY3JpYmVkQnlcbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT17W21vYmlsZVNpemUsIGRlc2t0b3BTaXplXX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIGJTcGFjZT1cInNcIj5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW1nIHNyYz17aW1hZ2VVcmx9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEltYWdlQ29tcG9uZW50IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWxIZWFkZXIgJiYgPEg2IGFzPVwiZGl2XCI+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEgyIGFzPVwiaDFcIj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3N1YkhlYWRlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDQgYXM9XCJoMlwiIGNvbG9yPVwidGVydGlhcnlcIiBpZD17c3ViSGVhZGVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9IND5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgPC9JbmxpbmU+XG4gICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG5cbiAgICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsVG9wfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiIGhlaWdodD1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30gaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgICAgeyhhY3Rpb25CdXR0b24gfHwgY2FuY2VsQnV0dG9uTGFiZWwgfHwgc2Vjb25kYXJ5QnV0dG9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0PXtjYW5jZWxCdXR0b25MYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9vdGVyPlxuICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkSW5uZXI+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRNb2RhbFdyYXBwZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC9XcmFwcGVyPlxuICApO1xufVxuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtFOEIifQ== */");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:"e535hgu1",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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlTWVtbywgdXNlUmVmLCB1c2VJZCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHsgUG9ydGFsLCB1c2VQb3J0YWxDb250YWluZXJFbGVtZW50IH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IEgyLCBINCwgSDYgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9IZWFkZXIvSGVhZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN0YWNrUHJvcHMgfSBmcm9tIFwiLi4vLi4vU3RhY2svU3RhY2tcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vQ29udGFpbmVyL0NvbnRhaW5lclwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcblxuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uLy4uL0lubGluZS9JbmxpbmVcIjtcbmltcG9ydCB0eXBlIHsgQnV0dG9uR3JvdXBCdXR0b25Qcm9wcyB9IGZyb20gXCIuLi9CdXR0b25Hcm91cC9CdXR0b25Hcm91cFwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXAgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IFBpY3RvZ3JhbUJ1dHRvbiB9IGZyb20gXCIuLi8uLi9QaWN0b2dyYW1CdXR0b24vUGljdG9ncmFtQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IFRleHRQcm9wcyB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgdXNlUmVzcG9uc2l2ZVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9tZWRpYVF1ZXJpZXNcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCB7IGFwcGVuZElkIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9hcHBlbmRJZFwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IHtcbiAgaGVhZGVyPzogc3RyaW5nO1xuICBvbkFjdGlvbj86IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbiAgcHJpdmF0ZVByb3BzPzogeyBza2lwUG9ydGFsPzogYm9vbGVhbiB9O1xuICAvKiogSXQncyBhIGJhZCBwYXR0ZXJuIHRvIHVzZSBub24tZGlzbWlzc2libGUgTW9kYWwgKi9cbiAgaXNEaXNtaXNzaWJsZT86IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtbGFiZWxcIj86IHN0cmluZztcbiAgXCJhcmlhLWxhYmVsbGVkYnlcIj86IHN0cmluZztcbiAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI/OiBzdHJpbmc7XG59O1xuXG50eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIC8qKiBBc3BlY3QgcmF0aW8gMTY6OSAqL1xuICAgICAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gICAgICBJbWFnZUNvbXBvbmVudD86IG5ldmVyO1xuICAgIH1cbiAgfCB7XG4gICAgICBpbWFnZVVybD86IG5ldmVyO1xuICAgICAgLyoqIEFjY2VwdCByYXRpbyAxNjo5ICovXG4gICAgICBJbWFnZUNvbXBvbmVudD86IFJlYWN0LkVsZW1lbnRUeXBlPGFueT47XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgTW9kYWxQcm9wcyA9IEJhc2VQcm9wcyAmXG4gIENvbmRpdGlvbmFsUHJvcHMgJlxuICBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi51c2VSZXNwb25zaXZlVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIGhlaWdodDogW1xuICAgICAgICAgIHNpemUgPT09IFwibFwiIHx8IGlzRnVsbFNjcmVlbiA/IGZ1bGxTY3JlZW5Nb2JpbGUgOiBcImF1dG9cIixcbiAgICAgICAgICBnZXREZXNrdG9wSGVpZ2h0KCksXG4gICAgICAgIF0sXG4gICAgICAgIG1heEhlaWdodDogW2Z1bGxTY3JlZW5Nb2JpbGUsIGdldERlc2t0b3BNYXhIZWlnaHQoKV0sXG4gICAgICB9KSxcblxuICAgICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQm9keVByb3BzID0ge1xuICBib3JkZXJCb3R0b206IGJvb2xlYW47XG4gIGJvcmRlclRvcDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZEJvZHkgPSBzdHlsZWQuZGl2PFN0eWxlZEJvZHlQcm9wcyAmIFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgYm9yZGVyQm90dG9tLCBib3JkZXJUb3AsIHNpemUsIGlzRnVsbFNjcmVlbiB9KSA9PiAoe1xuICAgIG92ZXJmbG93WTogXCJhdXRvXCIsXG4gICAgbWF4SGVpZ2h0OiBcIjEwMCVcIixcblxuICAgIC4uLigoaXNGdWxsU2NyZWVuIHx8IHNpemUgPT09IFwibFwiKSAmJiB7XG4gICAgICBmbGV4OiAxLFxuICAgIH0pLFxuXG4gICAgLi4uKGJvcmRlckJvdHRvbSAmJiB7XG4gICAgICBib3JkZXJCb3R0b206IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gICAgLi4uKGJvcmRlclRvcCAmJiB7XG4gICAgICBib3JkZXJUb3A6IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRJbWcgPSBzdHlsZWQuaW1nKCgpID0+ICh7XG4gIHdpZHRoOiBcIjEwMCVcIixcbiAgYXNwZWN0UmF0aW86IFwiMTYvOVwiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRNYXhXaWR0aCA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oKHsgdGhlbWUgfSkgPT4gKHtcbiAgbWF4V2lkdGg6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5mdWxsU2NyZWVuQ29udGVudFdpZHRoLFxuICBtYXJnaW46IFwiMCBhdXRvXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFhDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGJhY2tkcm9wUmVmLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICBiYWNrZHJvcFJlZjogUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3AgcmVmPXtiYWNrZHJvcFJlZn0+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxudHlwZSBGb2N1c1RyYXBQcm9wcyA9IHtcbiAgb25Qb3N0RGVhY3RpdmF0ZTogKCkgPT4gdm9pZDtcbiAgYmFja2Ryb3BSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG59ICYgUGljazxNb2RhbFByb3BzLCBcImlzRGlzbWlzc2libGVcIiB8IFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5mdW5jdGlvbiBGb2N1c1RyYXAoe1xuICBvblBvc3REZWFjdGl2YXRlLFxuICBpc0Rpc21pc3NpYmxlLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGNoaWxkcmVuLFxuICBiYWNrZHJvcFJlZixcbn06IFByb3BzV2l0aENoaWxkcmVuPEZvY3VzVHJhcFByb3BzPikge1xuICBjb25zdCBwb3J0YWxDb250YWluZXJFbGVtZW50ID0gdXNlUG9ydGFsQ29udGFpbmVyRWxlbWVudChwb3J0YWxDb250YWluZXIpO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzID0gKGV2dDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHtcbiAgICAvLyBEbyBub3QgY2xvc2Ugb24gY2xpY2sgdGhhdCBvY2N1cnMgb24gZWxlbWVudHMgd2l0aGluIHRoZSBzYW1lIHBvcnRhbCwgZm9yIGVnLCBkcm9wZG93biBhbmQgc2VsZWN0IG1lbnVzXG4gICAgaWYgKFxuICAgICAgcG9ydGFsQ29udGFpbmVyRWxlbWVudC5jb250YWlucyhldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAmJlxuICAgICAgZXZ0LnRhcmdldCAhPT0gYmFja2Ryb3BSZWYuY3VycmVudFxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNEaXNtaXNzaWJsZTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxGb2N1c1RyYXBXcmFwcGVyXG4gICAgICBhY3RpdmVcbiAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzLFxuICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWUsXG4gICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIk1vZGFsXCJdYCxcbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1sYWJlbFwiOiBhcmlhTGFiZWwsXG4gIFwiYXJpYS1sYWJlbGxlZGJ5XCI6IGFyaWFMYWJlbGxlZEJ5LFxuICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHN1YkhlYWRlcklkID0gdXNlSWQoKTtcblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICgpID0+IHtcbiAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgfTtcblxuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyXG4gICAgICBza2lwUG9ydGFsPXtza2lwUG9ydGFsfVxuICAgICAgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9XG4gICAgICBiYWNrZHJvcFJlZj17YmFja2Ryb3BSZWZ9XG4gICAgPlxuICAgICAgPEZvY3VzVHJhcFxuICAgICAgICBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn1cbiAgICAgICAgaXNEaXNtaXNzaWJsZT17aXNEaXNtaXNzaWJsZX1cbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgIGJhY2tkcm9wUmVmPXtiYWNrZHJvcFJlZn1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWwgfHwgaGVhZGVyfVxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17YXJpYUxhYmVsbGVkQnl9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17XG4gICAgICAgICAgICBzdWJIZWFkZXIgPyBhcHBlbmRJZChhcmlhRGVzY3JpYmVkQnksIHN1YkhlYWRlcklkKSA6IGFyaWFEZXNjcmliZWRCeVxuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxDb250YWluZXIgZWxldmF0aW9uPXs0fT5cbiAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgICAge2hhc0ltYWdlICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT17W1wieGxcIiwgXCJsXCJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwieHhzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDYgYXM9XCJkaXZcIj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInplcm9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDIgYXM9XCJoMVwiPntoZWFkZXJ9PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCBhcz1cImgyXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiIGlkPXtzdWJIZWFkZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0g0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAge2lzRGlzbWlzc2libGUgJiYgPEJ1dHRvbkNsb3NlIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgICByZWY9e3Njcm9sbGFibGVSZWZ9XG4gICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b209e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxCb3R0b219XG4gICAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9XCJ4eHhzXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfSBoZWlnaHQ9XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L1N0eWxlZEJvZHk+XG5cbiAgICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICA8Rm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRhcnlCdXR0b249e3NlY29uZGFyeUJ1dHRvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICAgIDwvRm9jdXNUcmFwPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuU3RhY2sgPSBNb2RhbFN0YWNrO1xuTW9kYWwuVGV4dCA9IE1vZGFsVGV4dDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxRThCIn0= */");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:"e15xousc1",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,{useMemo,useRef,useId}from"react";import styled from"@emotion/style
|
|
|
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`,...useResponsiveValue({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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8sIHVzZVJlZiwgdXNlSWQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyB1c2VTY3JvbGxEZXRlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVNjcm9sbERldGVjdGlvblwiO1xuaW1wb3J0IHsgTW9kYWxDb250ZXh0IH0gZnJvbSBcIi4vTW9kYWxDb250ZXh0XCI7XG5pbXBvcnQgeyBGb2N1c1RyYXBXcmFwcGVyIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Gb2N1c1RyYXBXcmFwcGVyXCI7XG5pbXBvcnQgeyBhcHBlbmRJZCB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvYXBwZW5kSWRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtZGVzY3JpYmVkYnlcIj86IHN0cmluZztcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICZcbiAgQ29uZGl0aW9uYWxQcm9wcyAmXG4gIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIHdpZHRoOiBbXG4gICAgICAgICAgYGNhbGMoMTAwJSAtICR7Z2V0TW9iaWxlU3BhY2UodGhlbWUpfSAqIDIpYCxcbiAgICAgICAgICBpc0Z1bGxTY3JlZW5cbiAgICAgICAgICAgID8gYGNhbGMoMTAwJSAtICR7Z2V0RGVza3RvcFNwYWNlKHRoZW1lKX0gKiAyKWBcbiAgICAgICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLndpZHRoW3NpemVdLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgU3R5bGVkSW5uZXIgPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgaXNGdWxsU2NyZWVuLCBzaXplIH0pID0+IHtcbiAgICBjb25zdCBtb2JpbGVWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IG1vYmlsZUlubmVyVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZUlubmVyU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcFNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcElubmVyU3BhY2UodGhlbWUpO1xuXG4gICAgLy8gZnVsbHNjcmVlbiBhbmQgTCBzaXplIGRvbid0IGRlcGVuZCBvbiBjb250ZW50IHNpemVcbiAgICAvLyBMIHNpemUgaGVpZ2h0IGhhcyBtYXhIaWVnaHQgcmVzaXplIHVudGlsIDgwMHB4XG4gICAgLy8gZnVsbHNjcmVlbiBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcbiAgICAvLyBNIHNpemUgaGVpZ2h0IGhhcyBjb250ZW50IHNpemUgYW5kIGNlbnRlcmVkIGF0IHRvcCBhbmQgbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG5cbiAgICBjb25zdCBnZXREZXNrdG9wSGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXJnaW4ubH0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gXCJhdXRvXCI7XG4gICAgfTtcblxuICAgIGNvbnN0IGdldERlc2t0b3BNYXhIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgYXV0b2A7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKCR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1heEhlaWdodC5sfSAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICB9O1xuXG4gICAgY29uc3QgZnVsbFNjcmVlbk1vYmlsZSA9IGBjYWxjKDEwMGR2aCAtICR7bW9iaWxlVmVydGljYWxTcGFjZX0gKiAyIC0gJHttb2JpbGVJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG4gIHBvcnRhbENvbnRhaW5lcixcbn06IHtcbiAgc2tpcFBvcnRhbDogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0RWxlbWVudDtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1kZXNjcmliZWRieVwiOiBhcmlhRGVzY3JpYmVkQnksXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiBkYXRhRTJlVGVzdElkLFxufTogTW9kYWxQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzdWJIZWFkZXJJZCA9IHVzZUlkKCk7XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgb25BY3Rpb24oXCJjYW5jZWxcIik7XG4gIH07XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0gcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgYWN0aXZlXG4gICAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgICBjbGlja091dHNpZGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSxcbiAgICAgICAgICBhbGxvd091dHNpZGVDbGljazogdHJ1ZSxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBmYWxsYmFja0ZvY3VzOiBgW2RhdGEtZHMtaWQ9XCJNb2RhbFwiXWAsXG4gICAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZTogaGFuZGxlQ2xvc2UsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRNb2RhbFdyYXBwZXJcbiAgICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgYXJpYS1sYWJlbD17aGVhZGVyfVxuICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e1xuICAgICAgICAgICAgc3ViSGVhZGVyID8gYXBwZW5kSWQoYXJpYURlc2NyaWJlZEJ5LCBzdWJIZWFkZXJJZCkgOiBhcmlhRGVzY3JpYmVkQnlcbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT17W21vYmlsZVNpemUsIGRlc2t0b3BTaXplXX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIGJTcGFjZT1cInNcIj5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW1nIHNyYz17aW1hZ2VVcmx9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEltYWdlQ29tcG9uZW50IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWxIZWFkZXIgJiYgPEg2IGFzPVwiZGl2XCI+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEgyIGFzPVwiaDFcIj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3N1YkhlYWRlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDQgYXM9XCJoMlwiIGNvbG9yPVwidGVydGlhcnlcIiBpZD17c3ViSGVhZGVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9IND5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgPC9JbmxpbmU+XG4gICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG5cbiAgICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsVG9wfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiIGhlaWdodD1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30gaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgICAgeyhhY3Rpb25CdXR0b24gfHwgY2FuY2VsQnV0dG9uTGFiZWwgfHwgc2Vjb25kYXJ5QnV0dG9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0PXtjYW5jZWxCdXR0b25MYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9vdGVyPlxuICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkSW5uZXI+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRNb2RhbFdyYXBwZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC9XcmFwcGVyPlxuICApO1xufVxuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdHMkIifQ== */"),StyledInner=styled("div",{target:"e535hgu2",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",...useResponsiveValue({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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8sIHVzZVJlZiwgdXNlSWQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyB1c2VTY3JvbGxEZXRlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVNjcm9sbERldGVjdGlvblwiO1xuaW1wb3J0IHsgTW9kYWxDb250ZXh0IH0gZnJvbSBcIi4vTW9kYWxDb250ZXh0XCI7XG5pbXBvcnQgeyBGb2N1c1RyYXBXcmFwcGVyIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Gb2N1c1RyYXBXcmFwcGVyXCI7XG5pbXBvcnQgeyBhcHBlbmRJZCB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvYXBwZW5kSWRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtZGVzY3JpYmVkYnlcIj86IHN0cmluZztcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICZcbiAgQ29uZGl0aW9uYWxQcm9wcyAmXG4gIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIHdpZHRoOiBbXG4gICAgICAgICAgYGNhbGMoMTAwJSAtICR7Z2V0TW9iaWxlU3BhY2UodGhlbWUpfSAqIDIpYCxcbiAgICAgICAgICBpc0Z1bGxTY3JlZW5cbiAgICAgICAgICAgID8gYGNhbGMoMTAwJSAtICR7Z2V0RGVza3RvcFNwYWNlKHRoZW1lKX0gKiAyKWBcbiAgICAgICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLndpZHRoW3NpemVdLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgU3R5bGVkSW5uZXIgPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgaXNGdWxsU2NyZWVuLCBzaXplIH0pID0+IHtcbiAgICBjb25zdCBtb2JpbGVWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IG1vYmlsZUlubmVyVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZUlubmVyU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcFNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcElubmVyU3BhY2UodGhlbWUpO1xuXG4gICAgLy8gZnVsbHNjcmVlbiBhbmQgTCBzaXplIGRvbid0IGRlcGVuZCBvbiBjb250ZW50IHNpemVcbiAgICAvLyBMIHNpemUgaGVpZ2h0IGhhcyBtYXhIaWVnaHQgcmVzaXplIHVudGlsIDgwMHB4XG4gICAgLy8gZnVsbHNjcmVlbiBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcbiAgICAvLyBNIHNpemUgaGVpZ2h0IGhhcyBjb250ZW50IHNpemUgYW5kIGNlbnRlcmVkIGF0IHRvcCBhbmQgbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG5cbiAgICBjb25zdCBnZXREZXNrdG9wSGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXJnaW4ubH0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gXCJhdXRvXCI7XG4gICAgfTtcblxuICAgIGNvbnN0IGdldERlc2t0b3BNYXhIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgYXV0b2A7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKCR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1heEhlaWdodC5sfSAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICB9O1xuXG4gICAgY29uc3QgZnVsbFNjcmVlbk1vYmlsZSA9IGBjYWxjKDEwMGR2aCAtICR7bW9iaWxlVmVydGljYWxTcGFjZX0gKiAyIC0gJHttb2JpbGVJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG4gIHBvcnRhbENvbnRhaW5lcixcbn06IHtcbiAgc2tpcFBvcnRhbDogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0RWxlbWVudDtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1kZXNjcmliZWRieVwiOiBhcmlhRGVzY3JpYmVkQnksXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiBkYXRhRTJlVGVzdElkLFxufTogTW9kYWxQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzdWJIZWFkZXJJZCA9IHVzZUlkKCk7XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgb25BY3Rpb24oXCJjYW5jZWxcIik7XG4gIH07XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0gcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgYWN0aXZlXG4gICAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgICBjbGlja091dHNpZGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSxcbiAgICAgICAgICBhbGxvd091dHNpZGVDbGljazogdHJ1ZSxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBmYWxsYmFja0ZvY3VzOiBgW2RhdGEtZHMtaWQ9XCJNb2RhbFwiXWAsXG4gICAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZTogaGFuZGxlQ2xvc2UsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRNb2RhbFdyYXBwZXJcbiAgICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgYXJpYS1sYWJlbD17aGVhZGVyfVxuICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e1xuICAgICAgICAgICAgc3ViSGVhZGVyID8gYXBwZW5kSWQoYXJpYURlc2NyaWJlZEJ5LCBzdWJIZWFkZXJJZCkgOiBhcmlhRGVzY3JpYmVkQnlcbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT17W21vYmlsZVNpemUsIGRlc2t0b3BTaXplXX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIGJTcGFjZT1cInNcIj5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW1nIHNyYz17aW1hZ2VVcmx9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEltYWdlQ29tcG9uZW50IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWxIZWFkZXIgJiYgPEg2IGFzPVwiZGl2XCI+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEgyIGFzPVwiaDFcIj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3N1YkhlYWRlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDQgYXM9XCJoMlwiIGNvbG9yPVwidGVydGlhcnlcIiBpZD17c3ViSGVhZGVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9IND5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgPC9JbmxpbmU+XG4gICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG5cbiAgICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsVG9wfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiIGhlaWdodD1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30gaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgICAgeyhhY3Rpb25CdXR0b24gfHwgY2FuY2VsQnV0dG9uTGFiZWwgfHwgc2Vjb25kYXJ5QnV0dG9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0PXtjYW5jZWxCdXR0b25MYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9vdGVyPlxuICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkSW5uZXI+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRNb2RhbFdyYXBwZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC9XcmFwcGVyPlxuICApO1xufVxuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNJb0IifQ== */"),StyledBody=styled("div",{target:"e535hgu3",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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8sIHVzZVJlZiwgdXNlSWQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyB1c2VTY3JvbGxEZXRlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVNjcm9sbERldGVjdGlvblwiO1xuaW1wb3J0IHsgTW9kYWxDb250ZXh0IH0gZnJvbSBcIi4vTW9kYWxDb250ZXh0XCI7XG5pbXBvcnQgeyBGb2N1c1RyYXBXcmFwcGVyIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Gb2N1c1RyYXBXcmFwcGVyXCI7XG5pbXBvcnQgeyBhcHBlbmRJZCB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvYXBwZW5kSWRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtZGVzY3JpYmVkYnlcIj86IHN0cmluZztcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICZcbiAgQ29uZGl0aW9uYWxQcm9wcyAmXG4gIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIHdpZHRoOiBbXG4gICAgICAgICAgYGNhbGMoMTAwJSAtICR7Z2V0TW9iaWxlU3BhY2UodGhlbWUpfSAqIDIpYCxcbiAgICAgICAgICBpc0Z1bGxTY3JlZW5cbiAgICAgICAgICAgID8gYGNhbGMoMTAwJSAtICR7Z2V0RGVza3RvcFNwYWNlKHRoZW1lKX0gKiAyKWBcbiAgICAgICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLndpZHRoW3NpemVdLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgU3R5bGVkSW5uZXIgPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgaXNGdWxsU2NyZWVuLCBzaXplIH0pID0+IHtcbiAgICBjb25zdCBtb2JpbGVWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IG1vYmlsZUlubmVyVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZUlubmVyU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcFNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcElubmVyU3BhY2UodGhlbWUpO1xuXG4gICAgLy8gZnVsbHNjcmVlbiBhbmQgTCBzaXplIGRvbid0IGRlcGVuZCBvbiBjb250ZW50IHNpemVcbiAgICAvLyBMIHNpemUgaGVpZ2h0IGhhcyBtYXhIaWVnaHQgcmVzaXplIHVudGlsIDgwMHB4XG4gICAgLy8gZnVsbHNjcmVlbiBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcbiAgICAvLyBNIHNpemUgaGVpZ2h0IGhhcyBjb250ZW50IHNpemUgYW5kIGNlbnRlcmVkIGF0IHRvcCBhbmQgbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG5cbiAgICBjb25zdCBnZXREZXNrdG9wSGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXJnaW4ubH0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gXCJhdXRvXCI7XG4gICAgfTtcblxuICAgIGNvbnN0IGdldERlc2t0b3BNYXhIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgYXV0b2A7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKCR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1heEhlaWdodC5sfSAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICB9O1xuXG4gICAgY29uc3QgZnVsbFNjcmVlbk1vYmlsZSA9IGBjYWxjKDEwMGR2aCAtICR7bW9iaWxlVmVydGljYWxTcGFjZX0gKiAyIC0gJHttb2JpbGVJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG4gIHBvcnRhbENvbnRhaW5lcixcbn06IHtcbiAgc2tpcFBvcnRhbDogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0RWxlbWVudDtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1kZXNjcmliZWRieVwiOiBhcmlhRGVzY3JpYmVkQnksXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiBkYXRhRTJlVGVzdElkLFxufTogTW9kYWxQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzdWJIZWFkZXJJZCA9IHVzZUlkKCk7XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgb25BY3Rpb24oXCJjYW5jZWxcIik7XG4gIH07XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0gcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgYWN0aXZlXG4gICAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgICBjbGlja091dHNpZGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSxcbiAgICAgICAgICBhbGxvd091dHNpZGVDbGljazogdHJ1ZSxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBmYWxsYmFja0ZvY3VzOiBgW2RhdGEtZHMtaWQ9XCJNb2RhbFwiXWAsXG4gICAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZTogaGFuZGxlQ2xvc2UsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRNb2RhbFdyYXBwZXJcbiAgICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgYXJpYS1sYWJlbD17aGVhZGVyfVxuICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e1xuICAgICAgICAgICAgc3ViSGVhZGVyID8gYXBwZW5kSWQoYXJpYURlc2NyaWJlZEJ5LCBzdWJIZWFkZXJJZCkgOiBhcmlhRGVzY3JpYmVkQnlcbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT17W21vYmlsZVNpemUsIGRlc2t0b3BTaXplXX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIGJTcGFjZT1cInNcIj5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW1nIHNyYz17aW1hZ2VVcmx9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEltYWdlQ29tcG9uZW50IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWxIZWFkZXIgJiYgPEg2IGFzPVwiZGl2XCI+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEgyIGFzPVwiaDFcIj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3N1YkhlYWRlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDQgYXM9XCJoMlwiIGNvbG9yPVwidGVydGlhcnlcIiBpZD17c3ViSGVhZGVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9IND5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgPC9JbmxpbmU+XG4gICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG5cbiAgICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsVG9wfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiIGhlaWdodD1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30gaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgICAgeyhhY3Rpb25CdXR0b24gfHwgY2FuY2VsQnV0dG9uTGFiZWwgfHwgc2Vjb25kYXJ5QnV0dG9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0PXtjYW5jZWxCdXR0b25MYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9vdGVyPlxuICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkSW5uZXI+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRNb2RhbFdyYXBwZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC9XcmFwcGVyPlxuICApO1xufVxuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZMbUIifQ== */"),StyledImg=styled("img",{target:"e535hgu4",label:"StyledImg"})(()=>({width:"100%",aspectRatio:"16/9"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8sIHVzZVJlZiwgdXNlSWQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyB1c2VTY3JvbGxEZXRlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVNjcm9sbERldGVjdGlvblwiO1xuaW1wb3J0IHsgTW9kYWxDb250ZXh0IH0gZnJvbSBcIi4vTW9kYWxDb250ZXh0XCI7XG5pbXBvcnQgeyBGb2N1c1RyYXBXcmFwcGVyIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Gb2N1c1RyYXBXcmFwcGVyXCI7XG5pbXBvcnQgeyBhcHBlbmRJZCB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvYXBwZW5kSWRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtZGVzY3JpYmVkYnlcIj86IHN0cmluZztcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICZcbiAgQ29uZGl0aW9uYWxQcm9wcyAmXG4gIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIHdpZHRoOiBbXG4gICAgICAgICAgYGNhbGMoMTAwJSAtICR7Z2V0TW9iaWxlU3BhY2UodGhlbWUpfSAqIDIpYCxcbiAgICAgICAgICBpc0Z1bGxTY3JlZW5cbiAgICAgICAgICAgID8gYGNhbGMoMTAwJSAtICR7Z2V0RGVza3RvcFNwYWNlKHRoZW1lKX0gKiAyKWBcbiAgICAgICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLndpZHRoW3NpemVdLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgU3R5bGVkSW5uZXIgPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgaXNGdWxsU2NyZWVuLCBzaXplIH0pID0+IHtcbiAgICBjb25zdCBtb2JpbGVWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IG1vYmlsZUlubmVyVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZUlubmVyU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcFNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcElubmVyU3BhY2UodGhlbWUpO1xuXG4gICAgLy8gZnVsbHNjcmVlbiBhbmQgTCBzaXplIGRvbid0IGRlcGVuZCBvbiBjb250ZW50IHNpemVcbiAgICAvLyBMIHNpemUgaGVpZ2h0IGhhcyBtYXhIaWVnaHQgcmVzaXplIHVudGlsIDgwMHB4XG4gICAgLy8gZnVsbHNjcmVlbiBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcbiAgICAvLyBNIHNpemUgaGVpZ2h0IGhhcyBjb250ZW50IHNpemUgYW5kIGNlbnRlcmVkIGF0IHRvcCBhbmQgbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG5cbiAgICBjb25zdCBnZXREZXNrdG9wSGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXJnaW4ubH0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gXCJhdXRvXCI7XG4gICAgfTtcblxuICAgIGNvbnN0IGdldERlc2t0b3BNYXhIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgYXV0b2A7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKCR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1heEhlaWdodC5sfSAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICB9O1xuXG4gICAgY29uc3QgZnVsbFNjcmVlbk1vYmlsZSA9IGBjYWxjKDEwMGR2aCAtICR7bW9iaWxlVmVydGljYWxTcGFjZX0gKiAyIC0gJHttb2JpbGVJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG4gIHBvcnRhbENvbnRhaW5lcixcbn06IHtcbiAgc2tpcFBvcnRhbDogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0RWxlbWVudDtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1kZXNjcmliZWRieVwiOiBhcmlhRGVzY3JpYmVkQnksXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiBkYXRhRTJlVGVzdElkLFxufTogTW9kYWxQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzdWJIZWFkZXJJZCA9IHVzZUlkKCk7XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgb25BY3Rpb24oXCJjYW5jZWxcIik7XG4gIH07XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0gcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgYWN0aXZlXG4gICAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgICBjbGlja091dHNpZGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSxcbiAgICAgICAgICBhbGxvd091dHNpZGVDbGljazogdHJ1ZSxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBmYWxsYmFja0ZvY3VzOiBgW2RhdGEtZHMtaWQ9XCJNb2RhbFwiXWAsXG4gICAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZTogaGFuZGxlQ2xvc2UsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRNb2RhbFdyYXBwZXJcbiAgICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgYXJpYS1sYWJlbD17aGVhZGVyfVxuICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e1xuICAgICAgICAgICAgc3ViSGVhZGVyID8gYXBwZW5kSWQoYXJpYURlc2NyaWJlZEJ5LCBzdWJIZWFkZXJJZCkgOiBhcmlhRGVzY3JpYmVkQnlcbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT17W21vYmlsZVNpemUsIGRlc2t0b3BTaXplXX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIGJTcGFjZT1cInNcIj5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW1nIHNyYz17aW1hZ2VVcmx9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEltYWdlQ29tcG9uZW50IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWxIZWFkZXIgJiYgPEg2IGFzPVwiZGl2XCI+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEgyIGFzPVwiaDFcIj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3N1YkhlYWRlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDQgYXM9XCJoMlwiIGNvbG9yPVwidGVydGlhcnlcIiBpZD17c3ViSGVhZGVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9IND5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgPC9JbmxpbmU+XG4gICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG5cbiAgICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsVG9wfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiIGhlaWdodD1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30gaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgICAgeyhhY3Rpb25CdXR0b24gfHwgY2FuY2VsQnV0dG9uTGFiZWwgfHwgc2Vjb25kYXJ5QnV0dG9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0PXtjYW5jZWxCdXR0b25MYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9vdGVyPlxuICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkSW5uZXI+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRNb2RhbFdyYXBwZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC9XcmFwcGVyPlxuICApO1xufVxuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStNa0IifQ== */"),StyledMaxWidth=styled("div",{target:"e535hgu5",label:"StyledMaxWidth"})(({theme})=>({maxWidth:theme.variables.size.dimension.modal.fullScreenContentWidth,margin:"0 auto",height:"100%"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8sIHVzZVJlZiwgdXNlSWQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyB1c2VTY3JvbGxEZXRlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVNjcm9sbERldGVjdGlvblwiO1xuaW1wb3J0IHsgTW9kYWxDb250ZXh0IH0gZnJvbSBcIi4vTW9kYWxDb250ZXh0XCI7XG5pbXBvcnQgeyBGb2N1c1RyYXBXcmFwcGVyIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Gb2N1c1RyYXBXcmFwcGVyXCI7XG5pbXBvcnQgeyBhcHBlbmRJZCB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvYXBwZW5kSWRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtZGVzY3JpYmVkYnlcIj86IHN0cmluZztcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICZcbiAgQ29uZGl0aW9uYWxQcm9wcyAmXG4gIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIHdpZHRoOiBbXG4gICAgICAgICAgYGNhbGMoMTAwJSAtICR7Z2V0TW9iaWxlU3BhY2UodGhlbWUpfSAqIDIpYCxcbiAgICAgICAgICBpc0Z1bGxTY3JlZW5cbiAgICAgICAgICAgID8gYGNhbGMoMTAwJSAtICR7Z2V0RGVza3RvcFNwYWNlKHRoZW1lKX0gKiAyKWBcbiAgICAgICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLndpZHRoW3NpemVdLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgU3R5bGVkSW5uZXIgPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgaXNGdWxsU2NyZWVuLCBzaXplIH0pID0+IHtcbiAgICBjb25zdCBtb2JpbGVWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IG1vYmlsZUlubmVyVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZUlubmVyU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcFNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcElubmVyU3BhY2UodGhlbWUpO1xuXG4gICAgLy8gZnVsbHNjcmVlbiBhbmQgTCBzaXplIGRvbid0IGRlcGVuZCBvbiBjb250ZW50IHNpemVcbiAgICAvLyBMIHNpemUgaGVpZ2h0IGhhcyBtYXhIaWVnaHQgcmVzaXplIHVudGlsIDgwMHB4XG4gICAgLy8gZnVsbHNjcmVlbiBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcbiAgICAvLyBNIHNpemUgaGVpZ2h0IGhhcyBjb250ZW50IHNpemUgYW5kIGNlbnRlcmVkIGF0IHRvcCBhbmQgbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG5cbiAgICBjb25zdCBnZXREZXNrdG9wSGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXJnaW4ubH0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gXCJhdXRvXCI7XG4gICAgfTtcblxuICAgIGNvbnN0IGdldERlc2t0b3BNYXhIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgYXV0b2A7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKCR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1heEhlaWdodC5sfSAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICB9O1xuXG4gICAgY29uc3QgZnVsbFNjcmVlbk1vYmlsZSA9IGBjYWxjKDEwMGR2aCAtICR7bW9iaWxlVmVydGljYWxTcGFjZX0gKiAyIC0gJHttb2JpbGVJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG4gIHBvcnRhbENvbnRhaW5lcixcbn06IHtcbiAgc2tpcFBvcnRhbDogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0RWxlbWVudDtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1kZXNjcmliZWRieVwiOiBhcmlhRGVzY3JpYmVkQnksXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiBkYXRhRTJlVGVzdElkLFxufTogTW9kYWxQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzdWJIZWFkZXJJZCA9IHVzZUlkKCk7XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgb25BY3Rpb24oXCJjYW5jZWxcIik7XG4gIH07XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0gcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgYWN0aXZlXG4gICAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgICBjbGlja091dHNpZGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSxcbiAgICAgICAgICBhbGxvd091dHNpZGVDbGljazogdHJ1ZSxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBmYWxsYmFja0ZvY3VzOiBgW2RhdGEtZHMtaWQ9XCJNb2RhbFwiXWAsXG4gICAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZTogaGFuZGxlQ2xvc2UsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRNb2RhbFdyYXBwZXJcbiAgICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgYXJpYS1sYWJlbD17aGVhZGVyfVxuICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e1xuICAgICAgICAgICAgc3ViSGVhZGVyID8gYXBwZW5kSWQoYXJpYURlc2NyaWJlZEJ5LCBzdWJIZWFkZXJJZCkgOiBhcmlhRGVzY3JpYmVkQnlcbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT17W21vYmlsZVNpemUsIGRlc2t0b3BTaXplXX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIGJTcGFjZT1cInNcIj5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW1nIHNyYz17aW1hZ2VVcmx9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEltYWdlQ29tcG9uZW50IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWxIZWFkZXIgJiYgPEg2IGFzPVwiZGl2XCI+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEgyIGFzPVwiaDFcIj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3N1YkhlYWRlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDQgYXM9XCJoMlwiIGNvbG9yPVwidGVydGlhcnlcIiBpZD17c3ViSGVhZGVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9IND5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgPC9JbmxpbmU+XG4gICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG5cbiAgICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsVG9wfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiIGhlaWdodD1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30gaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgICAgeyhhY3Rpb25CdXR0b24gfHwgY2FuY2VsQnV0dG9uTGFiZWwgfHwgc2Vjb25kYXJ5QnV0dG9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0PXtjYW5jZWxCdXR0b25MYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9vdGVyPlxuICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkSW5uZXI+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRNb2RhbFdyYXBwZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC9XcmFwcGVyPlxuICApO1xufVxuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9OdUIifQ== */"),StyledXContainer=styled("div",{target:"e535hgu6",label:"StyledXContainer"})(({theme})=>({position:"absolute",...useResponsiveValue({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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8sIHVzZVJlZiwgdXNlSWQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBIMiwgSDQsIEg2IH0gZnJvbSBcIi4uLy4uL1R5cG9ncmFwaHkvSGVhZGVyL0hlYWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uLy4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5cbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgdHlwZSB7IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHMgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IEJ1dHRvbkdyb3VwIH0gZnJvbSBcIi4uL0J1dHRvbkdyb3VwL0J1dHRvbkdyb3VwXCI7XG5pbXBvcnQgeyBQaWN0b2dyYW1CdXR0b24gfSBmcm9tIFwiLi4vLi4vUGljdG9ncmFtQnV0dG9uL1BpY3RvZ3JhbUJ1dHRvblwiO1xuaW1wb3J0IHR5cGUgeyBUZXh0UHJvcHMgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyB1c2VTY3JvbGxEZXRlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVNjcm9sbERldGVjdGlvblwiO1xuaW1wb3J0IHsgTW9kYWxDb250ZXh0IH0gZnJvbSBcIi4vTW9kYWxDb250ZXh0XCI7XG5pbXBvcnQgeyBGb2N1c1RyYXBXcmFwcGVyIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Gb2N1c1RyYXBXcmFwcGVyXCI7XG5pbXBvcnQgeyBhcHBlbmRJZCB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvYXBwZW5kSWRcIjtcblxudHlwZSBCYXNlUHJvcHMgPSB7XG4gIGhlYWRlcjogc3RyaW5nO1xuICBvbkFjdGlvbjogKGFjdGlvbjogXCJjYW5jZWxcIiB8IFwiYWN0aW9uXCIpID0+IHZvaWQ7XG4gIHJvbGU/OiBcImRpYWxvZ1wiIHwgXCJhbGVydGRpYWxvZ1wiO1xuICBsYWJlbEhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRoZSBibGFjayBjb2xvciBpcyBnb2luZyB0byBiZSByZXBsYWNlZCB3aXRoIGdyYXkgb25lICovXG4gIHN1YkhlYWRlcj86IHN0cmluZztcbiAgLyoqIFRleHQgYW5kIG90aGVyIHByb3BzIGZvciBhY3Rpb24gQnV0dG9uICovXG4gIGFjdGlvbkJ1dHRvbj86IEJ1dHRvbkdyb3VwQnV0dG9uUHJvcHM7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBzZWNvbmRhcnlCdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHNlY29uZGFyeUJ1dHRvbiB0byBwYXNzIGluIHRleHQgYW5kIG90aGVyIHByb3BzIGZvciBzZWNvbmRhcnkgYnV0dG9uICovXG4gIGNhbmNlbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICAvKiogQWltIHRvIHVzZSA8TW9kYWwuVGV4dD4gYW5kIDxNb2RhbC5TdGFjaz4gKi9cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIHByaXZhdGVQcm9wcz86IHsgc2tpcFBvcnRhbD86IGJvb2xlYW4gfTtcbiAgLyoqIEl0J3MgYSBiYWQgcGF0dGVybiB0byB1c2Ugbm9uLWRpc21pc3NpYmxlIE1vZGFsICovXG4gIGlzRGlzbWlzc2libGU6IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtZGVzY3JpYmVkYnlcIj86IHN0cmluZztcbn07XG5cbnR5cGUgQ29uZGl0aW9uYWxQcm9wcyA9XG4gIHwge1xuICAgICAgLyoqIEFzcGVjdCByYXRpbyAxNjo5ICovXG4gICAgICBpbWFnZVVybD86IHN0cmluZztcbiAgICAgIEltYWdlQ29tcG9uZW50PzogbmV2ZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIGltYWdlVXJsPzogbmV2ZXI7XG4gICAgICAvKiogQWNjZXB0IHJhdGlvIDE2OjkgKi9cbiAgICAgIEltYWdlQ29tcG9uZW50PzogUmVhY3QuRWxlbWVudFR5cGU8YW55PjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBNb2RhbFByb3BzID0gQmFzZVByb3BzICZcbiAgQ29uZGl0aW9uYWxQcm9wcyAmXG4gIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQmFja2Ryb3AgPSBzdHlsZWQuZGl2PFBhcnRpYWw8QmFzZVByb3BzPj4oKHsgdGhlbWUgfSkgPT4ge1xuICBjb25zdCBmYWRlSW5CYWNrZHJvcCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICB9XG4gICAgYCxcbiAgICBbdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLCB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS52aXNpYmxlXVxuICApO1xuICByZXR1cm4ge1xuICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIGhlaWdodDogXCIxMDBkdmhcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5iYWNrZHJvcC5kZWZhdWx0LFxuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gICAganVzdGlmeUNvbnRlbnQ6IFwiY2VudGVyXCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4OiBcIjEgMCBhdXRvXCIsXG4gICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5CYWNrZHJvcH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsQmFja2Ryb3Aub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gIH07XG59KTtcblxuY29uc3QgbW9iaWxlU2l6ZSA9IFwibVwiO1xuY29uc3QgZGVza3RvcFNpemUgPSBcInhsXCI7XG5jb25zdCBnZXREZXNrdG9wU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmw7XG5jb25zdCBnZXREZXNrdG9wSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbZGVza3RvcFNpemVdO1xuY29uc3QgZ2V0TW9iaWxlU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm07XG5jb25zdCBnZXRNb2JpbGVJbm5lclNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT5cbiAgdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZ1ttb2JpbGVTaXplXTtcblxuY29uc3QgU3R5bGVkTW9kYWxXcmFwcGVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgZmFkZUluTW9kYWwgPSB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAga2V5ZnJhbWVzYFxuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVufTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIG9wYWNpdHk6ICR7dGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZX07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICBgLFxuICAgICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBhbmltYXRpb246IGAke2ZhZGVJbk1vZGFsfSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi5kdXJhdGlvbn0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZGVsYXl9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLnRpbWluZ0Z1bmN0aW9ufSBib3RoYCxcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIHdpZHRoOiBbXG4gICAgICAgICAgYGNhbGMoMTAwJSAtICR7Z2V0TW9iaWxlU3BhY2UodGhlbWUpfSAqIDIpYCxcbiAgICAgICAgICBpc0Z1bGxTY3JlZW5cbiAgICAgICAgICAgID8gYGNhbGMoMTAwJSAtICR7Z2V0RGVza3RvcFNwYWNlKHRoZW1lKX0gKiAyKWBcbiAgICAgICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLndpZHRoW3NpemVdLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgU3R5bGVkSW5uZXIgPSBzdHlsZWQuZGl2PFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgaXNGdWxsU2NyZWVuLCBzaXplIH0pID0+IHtcbiAgICBjb25zdCBtb2JpbGVWZXJ0aWNhbFNwYWNlID0gZ2V0TW9iaWxlU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IG1vYmlsZUlubmVyVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZUlubmVyU3BhY2UodGhlbWUpO1xuICAgIGNvbnN0IGRlc2t0b3BWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcFNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlID0gZ2V0RGVza3RvcElubmVyU3BhY2UodGhlbWUpO1xuXG4gICAgLy8gZnVsbHNjcmVlbiBhbmQgTCBzaXplIGRvbid0IGRlcGVuZCBvbiBjb250ZW50IHNpemVcbiAgICAvLyBMIHNpemUgaGVpZ2h0IGhhcyBtYXhIaWVnaHQgcmVzaXplIHVudGlsIDgwMHB4XG4gICAgLy8gZnVsbHNjcmVlbiBtYXhIZWlnaHQgaXMgbm90IGxpbWl0ZWRcbiAgICAvLyBNIHNpemUgaGVpZ2h0IGhhcyBjb250ZW50IHNpemUgYW5kIGNlbnRlcmVkIGF0IHRvcCBhbmQgbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG5cbiAgICBjb25zdCBnZXREZXNrdG9wSGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICAgIH1cbiAgICAgIGlmIChzaXplID09PSBcImxcIikge1xuICAgICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIgLSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXJnaW4ubH0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gXCJhdXRvXCI7XG4gICAgfTtcblxuICAgIGNvbnN0IGdldERlc2t0b3BNYXhIZWlnaHQgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7XG4gICAgICAgIHJldHVybiBgYXV0b2A7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKCR7dGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLm1heEhlaWdodC5sfSAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYGNhbGMoMTAwZHZoIC0gJHtkZXNrdG9wVmVydGljYWxTcGFjZX0gKiAyIC0gJHtkZXNrdG9wSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcbiAgICB9O1xuXG4gICAgY29uc3QgZnVsbFNjcmVlbk1vYmlsZSA9IGBjYWxjKDEwMGR2aCAtICR7bW9iaWxlVmVydGljYWxTcGFjZX0gKiAyIC0gJHttb2JpbGVJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICAgICAgaGVpZ2h0OiBbXG4gICAgICAgICAgc2l6ZSA9PT0gXCJsXCIgfHwgaXNGdWxsU2NyZWVuID8gZnVsbFNjcmVlbk1vYmlsZSA6IFwiYXV0b1wiLFxuICAgICAgICAgIGdldERlc2t0b3BIZWlnaHQoKSxcbiAgICAgICAgXSxcbiAgICAgICAgbWF4SGVpZ2h0OiBbZnVsbFNjcmVlbk1vYmlsZSwgZ2V0RGVza3RvcE1heEhlaWdodCgpXSxcbiAgICAgIH0pLFxuXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRCb2R5UHJvcHMgPSB7XG4gIGJvcmRlckJvdHRvbTogYm9vbGVhbjtcbiAgYm9yZGVyVG9wOiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQm9keSA9IHN0eWxlZC5kaXY8U3R5bGVkQm9keVByb3BzICYgUGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBib3JkZXJCb3R0b20sIGJvcmRlclRvcCwgc2l6ZSwgaXNGdWxsU2NyZWVuIH0pID0+ICh7XG4gICAgb3ZlcmZsb3dZOiBcImF1dG9cIixcbiAgICBtYXhIZWlnaHQ6IFwiMTAwJVwiLFxuXG4gICAgLi4uKChpc0Z1bGxTY3JlZW4gfHwgc2l6ZSA9PT0gXCJsXCIpICYmIHtcbiAgICAgIGZsZXg6IDEsXG4gICAgfSksXG5cbiAgICAuLi4oYm9yZGVyQm90dG9tICYmIHtcbiAgICAgIGJvcmRlckJvdHRvbTogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgICAuLi4oYm9yZGVyVG9wICYmIHtcbiAgICAgIGJvcmRlclRvcDogYDFweCBzb2xpZCAke3RoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnl9YCxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEltZyA9IHN0eWxlZC5pbWcoKCkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBhc3BlY3RSYXRpbzogXCIxNi85XCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZE1heFdpZHRoID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PigoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXhXaWR0aDogdGhlbWUudmFyaWFibGVzLnNpemUuZGltZW5zaW9uLm1vZGFsLmZ1bGxTY3JlZW5Db250ZW50V2lkdGgsXG4gIG1hcmdpbjogXCIwIGF1dG9cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbn0pKTtcblxuY29uc3QgU3R5bGVkWENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgLi4udXNlUmVzcG9uc2l2ZVZhbHVlKHtcbiAgICB0b3A6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gICAgcmlnaHQ6IFt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcubF0sXG4gIH0pLFxufSkpO1xuXG5jb25zdCBNb2RhbFN0YWNrID0gKHsgY2hpbGRyZW4sIC4uLnJlc3QgfTogT21pdDxTdGFja1Byb3BzLCBcInNwYWNlXCI+KSA9PiAoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nXG4gIDxTdGFjayB7Li4ucmVzdH0gc3BhY2U9XCJtXCI+XG4gICAge2NoaWxkcmVufVxuICA8L1N0YWNrPlxuKTtcblxuY29uc3QgTW9kYWxUZXh0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIC4uLnJlc3Rcbn06IE9taXQ8VGV4dFByb3BzLCBcInNpemVcIiB8IFwidmFyaWFudFwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8VGV4dCB7Li4ucmVzdH0gc2l6ZT1cIm1cIiBjb2xvcj1cInRlcnRpYXJ5XCI+XG4gICAge2NoaWxkcmVufVxuICA8L1RleHQ+XG4pO1xuXG5jb25zdCBGb290ZXIgPSAoe1xuICBjaGlsZHJlbixcbiAgYWxpZ25JdGVtcyA9IFtcInN0cmV0Y2hcIiwgXCJyaWdodFwiXSxcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVtdIHwgUmVhY3QuUmVhY3RFbGVtZW50O1xuICBhbGlnbkl0ZW1zPzogU3RhY2tQcm9wc1tcImFsaWduSXRlbXNcIl07XG59KSA9PiAoXG4gIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdFNwYWNlPVwibFwiPlxuICAgIDxTdGFjayBhbGlnbkl0ZW1zPXthbGlnbkl0ZW1zfT57Y2hpbGRyZW59PC9TdGFjaz5cbiAgPC9Cb3g+XG4pO1xuXG5jb25zdCBXcmFwcGVyID0gKHtcbiAgc2tpcFBvcnRhbCxcbiAgY2hpbGRyZW4sXG4gIHBvcnRhbENvbnRhaW5lcixcbn06IHtcbiAgc2tpcFBvcnRhbDogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0RWxlbWVudDtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3A+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1kZXNjcmliZWRieVwiOiBhcmlhRGVzY3JpYmVkQnksXG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiOiBkYXRhRTJlVGVzdElkLFxufTogTW9kYWxQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzdWJIZWFkZXJJZCA9IHVzZUlkKCk7XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgb25BY3Rpb24oXCJjYW5jZWxcIik7XG4gIH07XG4gIGNvbnN0IHsgc2Nyb2xsYWJsZVJlZiwgaXNTY3JvbGxCb3R0b20sIGlzU2Nyb2xsVG9wLCBoYXNTY3JvbGwgfSA9XG4gICAgdXNlU2Nyb2xsRGV0ZWN0aW9uKCk7XG5cbiAgY29uc3QgaGFzSW1hZ2UgPSBpbWFnZVVybCB8fCBJbWFnZUNvbXBvbmVudDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldFByb3BzID0geyBpc0Z1bGxTY3JlZW4sIGlzTWF4V2lkdGhMaW1pdCB9O1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXIgc2tpcFBvcnRhbD17c2tpcFBvcnRhbH0gcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgYWN0aXZlXG4gICAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgICBjbGlja091dHNpZGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSxcbiAgICAgICAgICBhbGxvd091dHNpZGVDbGljazogdHJ1ZSxcbiAgICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBmYWxsYmFja0ZvY3VzOiBgW2RhdGEtZHMtaWQ9XCJNb2RhbFwiXWAsXG4gICAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZTogaGFuZGxlQ2xvc2UsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRNb2RhbFdyYXBwZXJcbiAgICAgICAgICByZWY9e21vZGFsUmVmfVxuICAgICAgICAgIHJvbGU9e3JvbGV9XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgICBkYXRhLWRzLWlkPVwiTW9kYWxcIlxuICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgYXJpYS1sYWJlbD17aGVhZGVyfVxuICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e1xuICAgICAgICAgICAgc3ViSGVhZGVyID8gYXBwZW5kSWQoYXJpYURlc2NyaWJlZEJ5LCBzdWJIZWFkZXJJZCkgOiBhcmlhRGVzY3JpYmVkQnlcbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8Q29udGFpbmVyIGVsZXZhdGlvbj17NH0+XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHZTcGFjZT17W21vYmlsZVNpemUsIGRlc2t0b3BTaXplXX0+XG4gICAgICAgICAgICAgIDxTdHlsZWRJbm5lciBpc0Z1bGxTY3JlZW49e2lzRnVsbFNjcmVlbn0gc2l6ZT17c2l6ZX0+XG4gICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30+XG4gICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIGJTcGFjZT1cInNcIj5cbiAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPXtoYXNJbWFnZSA/IFtcInNcIiwgXCJsXCJdIDogXCJ6ZXJvXCJ9PlxuICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbWFnZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1hZ2VVcmwgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB0U3BhY2U9e1tcInhsXCIsIFwibFwiXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW1nIHNyYz17aW1hZ2VVcmx9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEltYWdlQ29tcG9uZW50IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDxJbmxpbmUgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiIG5vV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInh4c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bGFiZWxIZWFkZXIgJiYgPEg2IGFzPVwiZGl2XCI+e2xhYmVsSGVhZGVyfTwvSDY+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEgyIGFzPVwiaDFcIj57aGVhZGVyfTwvSDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3N1YkhlYWRlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDQgYXM9XCJoMlwiIGNvbG9yPVwidGVydGlhcnlcIiBpZD17c3ViSGVhZGVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9IND5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpc0Rpc21pc3NpYmxlICYmIDxCdXR0b25DbG9zZSBvbkNsaWNrPXtoYW5kbGVDbG9zZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgPC9JbmxpbmU+XG4gICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG5cbiAgICAgICAgICAgICAgICA8U3R5bGVkQm9keVxuICAgICAgICAgICAgICAgICAgcmVmPXtzY3JvbGxhYmxlUmVmfVxuICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufVxuICAgICAgICAgICAgICAgICAgYm9yZGVyQm90dG9tPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsQm90dG9tfVxuICAgICAgICAgICAgICAgICAgYm9yZGVyVG9wPXtoYXNTY3JvbGwgJiYgIWlzU2Nyb2xsVG9wfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPVwieHh4c1wiIGhlaWdodD1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPEhvcml6b250YWxPZmZzZXQgey4uLmhvcml6b250YWxPZmZzZXRQcm9wc30gaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRCb2R5PlxuXG4gICAgICAgICAgICAgICAgeyhhY3Rpb25CdXR0b24gfHwgY2FuY2VsQnV0dG9uTGFiZWwgfHwgc2Vjb25kYXJ5QnV0dG9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgICAgPEZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbj17YWN0aW9uQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kYXJ5QnV0dG9uPXtzZWNvbmRhcnlCdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0PXtjYW5jZWxCdXR0b25MYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQnV0dG9uQ2xpY2s9e29uQWN0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9vdGVyPlxuICAgICAgICAgICAgICAgICAgPC9Ib3Jpem9udGFsT2Zmc2V0PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkSW5uZXI+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRNb2RhbFdyYXBwZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC9XcmFwcGVyPlxuICApO1xufVxuXG5Nb2RhbC5TdGFjayA9IE1vZGFsU3RhY2s7XG5Nb2RhbC5UZXh0ID0gTW9kYWxUZXh0O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBOeUIifQ== */"),Footer=({children,alignItems=["stretch","right"]})=>React.createElement(Box,{space:"zero",tSpace:"l"},React.createElement(Stack,{alignItems:alignItems},children)),Wrapper=({skipPortal,children,portalContainer})=>skipPortal?React.createElement(React.Fragment,null,children):React.createElement(ModalContext.Provider,{value:!0},React.createElement(Portal,{portalContainer:portalContainer},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,height})=>React.createElement(Box,{space:["m","xl"],vSpace:"zero",height:height},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="dialog",onAction,size="m",privateProps:{skipPortal}={skipPortal:!1},portalContainer,"aria-describedby":ariaDescribedBy,"data-e2e-test-id":dataE2eTestId}){let modalRef=useRef(null),subHeaderId=useId(),handleClose=()=>{onAction("cancel")},{scrollableRef,isScrollBottom,isScrollTop,hasScroll}=useScrollDetection(),hasImage=imageUrl||ImageComponent,horizontalOffsetProps={isFullScreen,isMaxWidthLimit};return React.createElement(Wrapper,{skipPortal:skipPortal,portalContainer:portalContainer},React.createElement(FocusTrapWrapper,{active:!0,focusTrapOptions:{clickOutsideDeactivates:isDismissible,allowOutsideClick:!0,escapeDeactivates:isDismissible,preventScroll:!0,fallbackFocus:'[data-ds-id="Modal"]',onPostDeactivate:handleClose}},React.createElement(StyledModalWrapper,{ref:modalRef,role:role,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"Modal",isFullScreen:isFullScreen,size:size,"aria-label":header,"aria-describedby":subHeader?appendId(ariaDescribedBy,subHeaderId):ariaDescribedBy},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,{as:"div"},labelHeader),React.createElement(Stack,{space:"zero"},React.createElement(H2,{as:"h1"},header),subHeader&&React.createElement(H4,{as:"h2",color:"tertiary",id:subHeaderId},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",height:"100%"},React.createElement(HorizontalOffset,{...horizontalOffsetProps,height:"100%"},children))),(actionButton||cancelButtonLabel||secondaryButton)&&React.createElement(HorizontalOffset,horizontalOffsetProps,React.createElement(Footer,null,React.createElement(ButtonGroup,{actionButton:actionButton,secondaryButton:secondaryButton,cancelButtonText:cancelButtonLabel,onButtonClick:onAction})))))))))}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`,...useResponsiveValue({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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlTWVtbywgdXNlUmVmLCB1c2VJZCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHsgUG9ydGFsLCB1c2VQb3J0YWxDb250YWluZXJFbGVtZW50IH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IEgyLCBINCwgSDYgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9IZWFkZXIvSGVhZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN0YWNrUHJvcHMgfSBmcm9tIFwiLi4vLi4vU3RhY2svU3RhY2tcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vQ29udGFpbmVyL0NvbnRhaW5lclwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcblxuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uLy4uL0lubGluZS9JbmxpbmVcIjtcbmltcG9ydCB0eXBlIHsgQnV0dG9uR3JvdXBCdXR0b25Qcm9wcyB9IGZyb20gXCIuLi9CdXR0b25Hcm91cC9CdXR0b25Hcm91cFwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXAgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IFBpY3RvZ3JhbUJ1dHRvbiB9IGZyb20gXCIuLi8uLi9QaWN0b2dyYW1CdXR0b24vUGljdG9ncmFtQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IFRleHRQcm9wcyB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgdXNlUmVzcG9uc2l2ZVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9tZWRpYVF1ZXJpZXNcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCB7IGFwcGVuZElkIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9hcHBlbmRJZFwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IHtcbiAgaGVhZGVyPzogc3RyaW5nO1xuICBvbkFjdGlvbj86IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbiAgcHJpdmF0ZVByb3BzPzogeyBza2lwUG9ydGFsPzogYm9vbGVhbiB9O1xuICAvKiogSXQncyBhIGJhZCBwYXR0ZXJuIHRvIHVzZSBub24tZGlzbWlzc2libGUgTW9kYWwgKi9cbiAgaXNEaXNtaXNzaWJsZT86IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtbGFiZWxcIj86IHN0cmluZztcbiAgXCJhcmlhLWxhYmVsbGVkYnlcIj86IHN0cmluZztcbiAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI/OiBzdHJpbmc7XG59O1xuXG50eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIC8qKiBBc3BlY3QgcmF0aW8gMTY6OSAqL1xuICAgICAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gICAgICBJbWFnZUNvbXBvbmVudD86IG5ldmVyO1xuICAgIH1cbiAgfCB7XG4gICAgICBpbWFnZVVybD86IG5ldmVyO1xuICAgICAgLyoqIEFjY2VwdCByYXRpbyAxNjo5ICovXG4gICAgICBJbWFnZUNvbXBvbmVudD86IFJlYWN0LkVsZW1lbnRUeXBlPGFueT47XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgTW9kYWxQcm9wcyA9IEJhc2VQcm9wcyAmXG4gIENvbmRpdGlvbmFsUHJvcHMgJlxuICBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi51c2VSZXNwb25zaXZlVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIGhlaWdodDogW1xuICAgICAgICAgIHNpemUgPT09IFwibFwiIHx8IGlzRnVsbFNjcmVlbiA/IGZ1bGxTY3JlZW5Nb2JpbGUgOiBcImF1dG9cIixcbiAgICAgICAgICBnZXREZXNrdG9wSGVpZ2h0KCksXG4gICAgICAgIF0sXG4gICAgICAgIG1heEhlaWdodDogW2Z1bGxTY3JlZW5Nb2JpbGUsIGdldERlc2t0b3BNYXhIZWlnaHQoKV0sXG4gICAgICB9KSxcblxuICAgICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQm9keVByb3BzID0ge1xuICBib3JkZXJCb3R0b206IGJvb2xlYW47XG4gIGJvcmRlclRvcDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZEJvZHkgPSBzdHlsZWQuZGl2PFN0eWxlZEJvZHlQcm9wcyAmIFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgYm9yZGVyQm90dG9tLCBib3JkZXJUb3AsIHNpemUsIGlzRnVsbFNjcmVlbiB9KSA9PiAoe1xuICAgIG92ZXJmbG93WTogXCJhdXRvXCIsXG4gICAgbWF4SGVpZ2h0OiBcIjEwMCVcIixcblxuICAgIC4uLigoaXNGdWxsU2NyZWVuIHx8IHNpemUgPT09IFwibFwiKSAmJiB7XG4gICAgICBmbGV4OiAxLFxuICAgIH0pLFxuXG4gICAgLi4uKGJvcmRlckJvdHRvbSAmJiB7XG4gICAgICBib3JkZXJCb3R0b206IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gICAgLi4uKGJvcmRlclRvcCAmJiB7XG4gICAgICBib3JkZXJUb3A6IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRJbWcgPSBzdHlsZWQuaW1nKCgpID0+ICh7XG4gIHdpZHRoOiBcIjEwMCVcIixcbiAgYXNwZWN0UmF0aW86IFwiMTYvOVwiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRNYXhXaWR0aCA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oKHsgdGhlbWUgfSkgPT4gKHtcbiAgbWF4V2lkdGg6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5mdWxsU2NyZWVuQ29udGVudFdpZHRoLFxuICBtYXJnaW46IFwiMCBhdXRvXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFhDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGJhY2tkcm9wUmVmLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICBiYWNrZHJvcFJlZjogUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3AgcmVmPXtiYWNrZHJvcFJlZn0+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxudHlwZSBGb2N1c1RyYXBQcm9wcyA9IHtcbiAgb25Qb3N0RGVhY3RpdmF0ZTogKCkgPT4gdm9pZDtcbiAgYmFja2Ryb3BSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG59ICYgUGljazxNb2RhbFByb3BzLCBcImlzRGlzbWlzc2libGVcIiB8IFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5mdW5jdGlvbiBGb2N1c1RyYXAoe1xuICBvblBvc3REZWFjdGl2YXRlLFxuICBpc0Rpc21pc3NpYmxlLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGNoaWxkcmVuLFxuICBiYWNrZHJvcFJlZixcbn06IFByb3BzV2l0aENoaWxkcmVuPEZvY3VzVHJhcFByb3BzPikge1xuICBjb25zdCBwb3J0YWxDb250YWluZXJFbGVtZW50ID0gdXNlUG9ydGFsQ29udGFpbmVyRWxlbWVudChwb3J0YWxDb250YWluZXIpO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzID0gKGV2dDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHtcbiAgICAvLyBEbyBub3QgY2xvc2Ugb24gY2xpY2sgdGhhdCBvY2N1cnMgb24gZWxlbWVudHMgd2l0aGluIHRoZSBzYW1lIHBvcnRhbCwgZm9yIGVnLCBkcm9wZG93biBhbmQgc2VsZWN0IG1lbnVzXG4gICAgaWYgKFxuICAgICAgcG9ydGFsQ29udGFpbmVyRWxlbWVudC5jb250YWlucyhldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAmJlxuICAgICAgZXZ0LnRhcmdldCAhPT0gYmFja2Ryb3BSZWYuY3VycmVudFxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNEaXNtaXNzaWJsZTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxGb2N1c1RyYXBXcmFwcGVyXG4gICAgICBhY3RpdmVcbiAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzLFxuICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWUsXG4gICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIk1vZGFsXCJdYCxcbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1sYWJlbFwiOiBhcmlhTGFiZWwsXG4gIFwiYXJpYS1sYWJlbGxlZGJ5XCI6IGFyaWFMYWJlbGxlZEJ5LFxuICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHN1YkhlYWRlcklkID0gdXNlSWQoKTtcblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICgpID0+IHtcbiAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgfTtcblxuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyXG4gICAgICBza2lwUG9ydGFsPXtza2lwUG9ydGFsfVxuICAgICAgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9XG4gICAgICBiYWNrZHJvcFJlZj17YmFja2Ryb3BSZWZ9XG4gICAgPlxuICAgICAgPEZvY3VzVHJhcFxuICAgICAgICBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn1cbiAgICAgICAgaXNEaXNtaXNzaWJsZT17aXNEaXNtaXNzaWJsZX1cbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgIGJhY2tkcm9wUmVmPXtiYWNrZHJvcFJlZn1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWwgfHwgaGVhZGVyfVxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17YXJpYUxhYmVsbGVkQnl9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17XG4gICAgICAgICAgICBzdWJIZWFkZXIgPyBhcHBlbmRJZChhcmlhRGVzY3JpYmVkQnksIHN1YkhlYWRlcklkKSA6IGFyaWFEZXNjcmliZWRCeVxuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxDb250YWluZXIgZWxldmF0aW9uPXs0fT5cbiAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgICAge2hhc0ltYWdlICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT17W1wieGxcIiwgXCJsXCJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwieHhzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDYgYXM9XCJkaXZcIj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInplcm9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDIgYXM9XCJoMVwiPntoZWFkZXJ9PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCBhcz1cImgyXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiIGlkPXtzdWJIZWFkZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0g0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAge2lzRGlzbWlzc2libGUgJiYgPEJ1dHRvbkNsb3NlIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgICByZWY9e3Njcm9sbGFibGVSZWZ9XG4gICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b209e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxCb3R0b219XG4gICAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9XCJ4eHhzXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfSBoZWlnaHQ9XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L1N0eWxlZEJvZHk+XG5cbiAgICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICA8Rm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRhcnlCdXR0b249e3NlY29uZGFyeUJ1dHRvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICAgIDwvRm9jdXNUcmFwPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuU3RhY2sgPSBNb2RhbFN0YWNrO1xuTW9kYWwuVGV4dCA9IE1vZGFsVGV4dDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyRzJCIn0= */"),StyledInner=styled("div",{target:"e15xousc2",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",...useResponsiveValue({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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlTWVtbywgdXNlUmVmLCB1c2VJZCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHsgUG9ydGFsLCB1c2VQb3J0YWxDb250YWluZXJFbGVtZW50IH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IEgyLCBINCwgSDYgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9IZWFkZXIvSGVhZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN0YWNrUHJvcHMgfSBmcm9tIFwiLi4vLi4vU3RhY2svU3RhY2tcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vQ29udGFpbmVyL0NvbnRhaW5lclwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcblxuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uLy4uL0lubGluZS9JbmxpbmVcIjtcbmltcG9ydCB0eXBlIHsgQnV0dG9uR3JvdXBCdXR0b25Qcm9wcyB9IGZyb20gXCIuLi9CdXR0b25Hcm91cC9CdXR0b25Hcm91cFwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXAgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IFBpY3RvZ3JhbUJ1dHRvbiB9IGZyb20gXCIuLi8uLi9QaWN0b2dyYW1CdXR0b24vUGljdG9ncmFtQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IFRleHRQcm9wcyB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgdXNlUmVzcG9uc2l2ZVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9tZWRpYVF1ZXJpZXNcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCB7IGFwcGVuZElkIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9hcHBlbmRJZFwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IHtcbiAgaGVhZGVyPzogc3RyaW5nO1xuICBvbkFjdGlvbj86IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbiAgcHJpdmF0ZVByb3BzPzogeyBza2lwUG9ydGFsPzogYm9vbGVhbiB9O1xuICAvKiogSXQncyBhIGJhZCBwYXR0ZXJuIHRvIHVzZSBub24tZGlzbWlzc2libGUgTW9kYWwgKi9cbiAgaXNEaXNtaXNzaWJsZT86IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtbGFiZWxcIj86IHN0cmluZztcbiAgXCJhcmlhLWxhYmVsbGVkYnlcIj86IHN0cmluZztcbiAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI/OiBzdHJpbmc7XG59O1xuXG50eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIC8qKiBBc3BlY3QgcmF0aW8gMTY6OSAqL1xuICAgICAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gICAgICBJbWFnZUNvbXBvbmVudD86IG5ldmVyO1xuICAgIH1cbiAgfCB7XG4gICAgICBpbWFnZVVybD86IG5ldmVyO1xuICAgICAgLyoqIEFjY2VwdCByYXRpbyAxNjo5ICovXG4gICAgICBJbWFnZUNvbXBvbmVudD86IFJlYWN0LkVsZW1lbnRUeXBlPGFueT47XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgTW9kYWxQcm9wcyA9IEJhc2VQcm9wcyAmXG4gIENvbmRpdGlvbmFsUHJvcHMgJlxuICBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi51c2VSZXNwb25zaXZlVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIGhlaWdodDogW1xuICAgICAgICAgIHNpemUgPT09IFwibFwiIHx8IGlzRnVsbFNjcmVlbiA/IGZ1bGxTY3JlZW5Nb2JpbGUgOiBcImF1dG9cIixcbiAgICAgICAgICBnZXREZXNrdG9wSGVpZ2h0KCksXG4gICAgICAgIF0sXG4gICAgICAgIG1heEhlaWdodDogW2Z1bGxTY3JlZW5Nb2JpbGUsIGdldERlc2t0b3BNYXhIZWlnaHQoKV0sXG4gICAgICB9KSxcblxuICAgICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQm9keVByb3BzID0ge1xuICBib3JkZXJCb3R0b206IGJvb2xlYW47XG4gIGJvcmRlclRvcDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZEJvZHkgPSBzdHlsZWQuZGl2PFN0eWxlZEJvZHlQcm9wcyAmIFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgYm9yZGVyQm90dG9tLCBib3JkZXJUb3AsIHNpemUsIGlzRnVsbFNjcmVlbiB9KSA9PiAoe1xuICAgIG92ZXJmbG93WTogXCJhdXRvXCIsXG4gICAgbWF4SGVpZ2h0OiBcIjEwMCVcIixcblxuICAgIC4uLigoaXNGdWxsU2NyZWVuIHx8IHNpemUgPT09IFwibFwiKSAmJiB7XG4gICAgICBmbGV4OiAxLFxuICAgIH0pLFxuXG4gICAgLi4uKGJvcmRlckJvdHRvbSAmJiB7XG4gICAgICBib3JkZXJCb3R0b206IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gICAgLi4uKGJvcmRlclRvcCAmJiB7XG4gICAgICBib3JkZXJUb3A6IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRJbWcgPSBzdHlsZWQuaW1nKCgpID0+ICh7XG4gIHdpZHRoOiBcIjEwMCVcIixcbiAgYXNwZWN0UmF0aW86IFwiMTYvOVwiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRNYXhXaWR0aCA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oKHsgdGhlbWUgfSkgPT4gKHtcbiAgbWF4V2lkdGg6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5mdWxsU2NyZWVuQ29udGVudFdpZHRoLFxuICBtYXJnaW46IFwiMCBhdXRvXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFhDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGJhY2tkcm9wUmVmLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICBiYWNrZHJvcFJlZjogUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3AgcmVmPXtiYWNrZHJvcFJlZn0+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxudHlwZSBGb2N1c1RyYXBQcm9wcyA9IHtcbiAgb25Qb3N0RGVhY3RpdmF0ZTogKCkgPT4gdm9pZDtcbiAgYmFja2Ryb3BSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG59ICYgUGljazxNb2RhbFByb3BzLCBcImlzRGlzbWlzc2libGVcIiB8IFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5mdW5jdGlvbiBGb2N1c1RyYXAoe1xuICBvblBvc3REZWFjdGl2YXRlLFxuICBpc0Rpc21pc3NpYmxlLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGNoaWxkcmVuLFxuICBiYWNrZHJvcFJlZixcbn06IFByb3BzV2l0aENoaWxkcmVuPEZvY3VzVHJhcFByb3BzPikge1xuICBjb25zdCBwb3J0YWxDb250YWluZXJFbGVtZW50ID0gdXNlUG9ydGFsQ29udGFpbmVyRWxlbWVudChwb3J0YWxDb250YWluZXIpO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzID0gKGV2dDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHtcbiAgICAvLyBEbyBub3QgY2xvc2Ugb24gY2xpY2sgdGhhdCBvY2N1cnMgb24gZWxlbWVudHMgd2l0aGluIHRoZSBzYW1lIHBvcnRhbCwgZm9yIGVnLCBkcm9wZG93biBhbmQgc2VsZWN0IG1lbnVzXG4gICAgaWYgKFxuICAgICAgcG9ydGFsQ29udGFpbmVyRWxlbWVudC5jb250YWlucyhldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAmJlxuICAgICAgZXZ0LnRhcmdldCAhPT0gYmFja2Ryb3BSZWYuY3VycmVudFxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNEaXNtaXNzaWJsZTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxGb2N1c1RyYXBXcmFwcGVyXG4gICAgICBhY3RpdmVcbiAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzLFxuICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWUsXG4gICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIk1vZGFsXCJdYCxcbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1sYWJlbFwiOiBhcmlhTGFiZWwsXG4gIFwiYXJpYS1sYWJlbGxlZGJ5XCI6IGFyaWFMYWJlbGxlZEJ5LFxuICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHN1YkhlYWRlcklkID0gdXNlSWQoKTtcblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICgpID0+IHtcbiAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgfTtcblxuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyXG4gICAgICBza2lwUG9ydGFsPXtza2lwUG9ydGFsfVxuICAgICAgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9XG4gICAgICBiYWNrZHJvcFJlZj17YmFja2Ryb3BSZWZ9XG4gICAgPlxuICAgICAgPEZvY3VzVHJhcFxuICAgICAgICBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn1cbiAgICAgICAgaXNEaXNtaXNzaWJsZT17aXNEaXNtaXNzaWJsZX1cbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgIGJhY2tkcm9wUmVmPXtiYWNrZHJvcFJlZn1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWwgfHwgaGVhZGVyfVxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17YXJpYUxhYmVsbGVkQnl9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17XG4gICAgICAgICAgICBzdWJIZWFkZXIgPyBhcHBlbmRJZChhcmlhRGVzY3JpYmVkQnksIHN1YkhlYWRlcklkKSA6IGFyaWFEZXNjcmliZWRCeVxuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxDb250YWluZXIgZWxldmF0aW9uPXs0fT5cbiAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgICAge2hhc0ltYWdlICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT17W1wieGxcIiwgXCJsXCJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwieHhzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDYgYXM9XCJkaXZcIj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInplcm9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDIgYXM9XCJoMVwiPntoZWFkZXJ9PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCBhcz1cImgyXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiIGlkPXtzdWJIZWFkZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0g0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAge2lzRGlzbWlzc2libGUgJiYgPEJ1dHRvbkNsb3NlIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgICByZWY9e3Njcm9sbGFibGVSZWZ9XG4gICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b209e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxCb3R0b219XG4gICAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9XCJ4eHhzXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfSBoZWlnaHQ9XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L1N0eWxlZEJvZHk+XG5cbiAgICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICA8Rm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRhcnlCdXR0b249e3NlY29uZGFyeUJ1dHRvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICAgIDwvRm9jdXNUcmFwPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuU3RhY2sgPSBNb2RhbFN0YWNrO1xuTW9kYWwuVGV4dCA9IE1vZGFsVGV4dDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5SW9CIn0= */"),StyledBody=styled("div",{target:"e15xousc3",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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlTWVtbywgdXNlUmVmLCB1c2VJZCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHsgUG9ydGFsLCB1c2VQb3J0YWxDb250YWluZXJFbGVtZW50IH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IEgyLCBINCwgSDYgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9IZWFkZXIvSGVhZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN0YWNrUHJvcHMgfSBmcm9tIFwiLi4vLi4vU3RhY2svU3RhY2tcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vQ29udGFpbmVyL0NvbnRhaW5lclwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcblxuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uLy4uL0lubGluZS9JbmxpbmVcIjtcbmltcG9ydCB0eXBlIHsgQnV0dG9uR3JvdXBCdXR0b25Qcm9wcyB9IGZyb20gXCIuLi9CdXR0b25Hcm91cC9CdXR0b25Hcm91cFwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXAgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IFBpY3RvZ3JhbUJ1dHRvbiB9IGZyb20gXCIuLi8uLi9QaWN0b2dyYW1CdXR0b24vUGljdG9ncmFtQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IFRleHRQcm9wcyB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgdXNlUmVzcG9uc2l2ZVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9tZWRpYVF1ZXJpZXNcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCB7IGFwcGVuZElkIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9hcHBlbmRJZFwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IHtcbiAgaGVhZGVyPzogc3RyaW5nO1xuICBvbkFjdGlvbj86IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbiAgcHJpdmF0ZVByb3BzPzogeyBza2lwUG9ydGFsPzogYm9vbGVhbiB9O1xuICAvKiogSXQncyBhIGJhZCBwYXR0ZXJuIHRvIHVzZSBub24tZGlzbWlzc2libGUgTW9kYWwgKi9cbiAgaXNEaXNtaXNzaWJsZT86IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtbGFiZWxcIj86IHN0cmluZztcbiAgXCJhcmlhLWxhYmVsbGVkYnlcIj86IHN0cmluZztcbiAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI/OiBzdHJpbmc7XG59O1xuXG50eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIC8qKiBBc3BlY3QgcmF0aW8gMTY6OSAqL1xuICAgICAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gICAgICBJbWFnZUNvbXBvbmVudD86IG5ldmVyO1xuICAgIH1cbiAgfCB7XG4gICAgICBpbWFnZVVybD86IG5ldmVyO1xuICAgICAgLyoqIEFjY2VwdCByYXRpbyAxNjo5ICovXG4gICAgICBJbWFnZUNvbXBvbmVudD86IFJlYWN0LkVsZW1lbnRUeXBlPGFueT47XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgTW9kYWxQcm9wcyA9IEJhc2VQcm9wcyAmXG4gIENvbmRpdGlvbmFsUHJvcHMgJlxuICBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi51c2VSZXNwb25zaXZlVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIGhlaWdodDogW1xuICAgICAgICAgIHNpemUgPT09IFwibFwiIHx8IGlzRnVsbFNjcmVlbiA/IGZ1bGxTY3JlZW5Nb2JpbGUgOiBcImF1dG9cIixcbiAgICAgICAgICBnZXREZXNrdG9wSGVpZ2h0KCksXG4gICAgICAgIF0sXG4gICAgICAgIG1heEhlaWdodDogW2Z1bGxTY3JlZW5Nb2JpbGUsIGdldERlc2t0b3BNYXhIZWlnaHQoKV0sXG4gICAgICB9KSxcblxuICAgICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQm9keVByb3BzID0ge1xuICBib3JkZXJCb3R0b206IGJvb2xlYW47XG4gIGJvcmRlclRvcDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZEJvZHkgPSBzdHlsZWQuZGl2PFN0eWxlZEJvZHlQcm9wcyAmIFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgYm9yZGVyQm90dG9tLCBib3JkZXJUb3AsIHNpemUsIGlzRnVsbFNjcmVlbiB9KSA9PiAoe1xuICAgIG92ZXJmbG93WTogXCJhdXRvXCIsXG4gICAgbWF4SGVpZ2h0OiBcIjEwMCVcIixcblxuICAgIC4uLigoaXNGdWxsU2NyZWVuIHx8IHNpemUgPT09IFwibFwiKSAmJiB7XG4gICAgICBmbGV4OiAxLFxuICAgIH0pLFxuXG4gICAgLi4uKGJvcmRlckJvdHRvbSAmJiB7XG4gICAgICBib3JkZXJCb3R0b206IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gICAgLi4uKGJvcmRlclRvcCAmJiB7XG4gICAgICBib3JkZXJUb3A6IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRJbWcgPSBzdHlsZWQuaW1nKCgpID0+ICh7XG4gIHdpZHRoOiBcIjEwMCVcIixcbiAgYXNwZWN0UmF0aW86IFwiMTYvOVwiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRNYXhXaWR0aCA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oKHsgdGhlbWUgfSkgPT4gKHtcbiAgbWF4V2lkdGg6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5mdWxsU2NyZWVuQ29udGVudFdpZHRoLFxuICBtYXJnaW46IFwiMCBhdXRvXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFhDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGJhY2tkcm9wUmVmLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICBiYWNrZHJvcFJlZjogUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3AgcmVmPXtiYWNrZHJvcFJlZn0+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxudHlwZSBGb2N1c1RyYXBQcm9wcyA9IHtcbiAgb25Qb3N0RGVhY3RpdmF0ZTogKCkgPT4gdm9pZDtcbiAgYmFja2Ryb3BSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG59ICYgUGljazxNb2RhbFByb3BzLCBcImlzRGlzbWlzc2libGVcIiB8IFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5mdW5jdGlvbiBGb2N1c1RyYXAoe1xuICBvblBvc3REZWFjdGl2YXRlLFxuICBpc0Rpc21pc3NpYmxlLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGNoaWxkcmVuLFxuICBiYWNrZHJvcFJlZixcbn06IFByb3BzV2l0aENoaWxkcmVuPEZvY3VzVHJhcFByb3BzPikge1xuICBjb25zdCBwb3J0YWxDb250YWluZXJFbGVtZW50ID0gdXNlUG9ydGFsQ29udGFpbmVyRWxlbWVudChwb3J0YWxDb250YWluZXIpO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzID0gKGV2dDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHtcbiAgICAvLyBEbyBub3QgY2xvc2Ugb24gY2xpY2sgdGhhdCBvY2N1cnMgb24gZWxlbWVudHMgd2l0aGluIHRoZSBzYW1lIHBvcnRhbCwgZm9yIGVnLCBkcm9wZG93biBhbmQgc2VsZWN0IG1lbnVzXG4gICAgaWYgKFxuICAgICAgcG9ydGFsQ29udGFpbmVyRWxlbWVudC5jb250YWlucyhldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAmJlxuICAgICAgZXZ0LnRhcmdldCAhPT0gYmFja2Ryb3BSZWYuY3VycmVudFxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNEaXNtaXNzaWJsZTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxGb2N1c1RyYXBXcmFwcGVyXG4gICAgICBhY3RpdmVcbiAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzLFxuICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWUsXG4gICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIk1vZGFsXCJdYCxcbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1sYWJlbFwiOiBhcmlhTGFiZWwsXG4gIFwiYXJpYS1sYWJlbGxlZGJ5XCI6IGFyaWFMYWJlbGxlZEJ5LFxuICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHN1YkhlYWRlcklkID0gdXNlSWQoKTtcblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICgpID0+IHtcbiAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgfTtcblxuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyXG4gICAgICBza2lwUG9ydGFsPXtza2lwUG9ydGFsfVxuICAgICAgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9XG4gICAgICBiYWNrZHJvcFJlZj17YmFja2Ryb3BSZWZ9XG4gICAgPlxuICAgICAgPEZvY3VzVHJhcFxuICAgICAgICBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn1cbiAgICAgICAgaXNEaXNtaXNzaWJsZT17aXNEaXNtaXNzaWJsZX1cbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgIGJhY2tkcm9wUmVmPXtiYWNrZHJvcFJlZn1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWwgfHwgaGVhZGVyfVxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17YXJpYUxhYmVsbGVkQnl9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17XG4gICAgICAgICAgICBzdWJIZWFkZXIgPyBhcHBlbmRJZChhcmlhRGVzY3JpYmVkQnksIHN1YkhlYWRlcklkKSA6IGFyaWFEZXNjcmliZWRCeVxuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxDb250YWluZXIgZWxldmF0aW9uPXs0fT5cbiAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgICAge2hhc0ltYWdlICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT17W1wieGxcIiwgXCJsXCJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwieHhzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDYgYXM9XCJkaXZcIj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInplcm9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDIgYXM9XCJoMVwiPntoZWFkZXJ9PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCBhcz1cImgyXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiIGlkPXtzdWJIZWFkZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0g0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAge2lzRGlzbWlzc2libGUgJiYgPEJ1dHRvbkNsb3NlIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgICByZWY9e3Njcm9sbGFibGVSZWZ9XG4gICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b209e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxCb3R0b219XG4gICAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9XCJ4eHhzXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfSBoZWlnaHQ9XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L1N0eWxlZEJvZHk+XG5cbiAgICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICA8Rm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRhcnlCdXR0b249e3NlY29uZGFyeUJ1dHRvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICAgIDwvRm9jdXNUcmFwPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuU3RhY2sgPSBNb2RhbFN0YWNrO1xuTW9kYWwuVGV4dCA9IE1vZGFsVGV4dDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnTW1CIn0= */"),StyledImg=styled("img",{target:"e15xousc4",label:"StyledImg"})(()=>({width:"100%",aspectRatio:"16/9"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlTWVtbywgdXNlUmVmLCB1c2VJZCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHsgUG9ydGFsLCB1c2VQb3J0YWxDb250YWluZXJFbGVtZW50IH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IEgyLCBINCwgSDYgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9IZWFkZXIvSGVhZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN0YWNrUHJvcHMgfSBmcm9tIFwiLi4vLi4vU3RhY2svU3RhY2tcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vQ29udGFpbmVyL0NvbnRhaW5lclwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcblxuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uLy4uL0lubGluZS9JbmxpbmVcIjtcbmltcG9ydCB0eXBlIHsgQnV0dG9uR3JvdXBCdXR0b25Qcm9wcyB9IGZyb20gXCIuLi9CdXR0b25Hcm91cC9CdXR0b25Hcm91cFwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXAgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IFBpY3RvZ3JhbUJ1dHRvbiB9IGZyb20gXCIuLi8uLi9QaWN0b2dyYW1CdXR0b24vUGljdG9ncmFtQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IFRleHRQcm9wcyB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgdXNlUmVzcG9uc2l2ZVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9tZWRpYVF1ZXJpZXNcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCB7IGFwcGVuZElkIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9hcHBlbmRJZFwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IHtcbiAgaGVhZGVyPzogc3RyaW5nO1xuICBvbkFjdGlvbj86IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbiAgcHJpdmF0ZVByb3BzPzogeyBza2lwUG9ydGFsPzogYm9vbGVhbiB9O1xuICAvKiogSXQncyBhIGJhZCBwYXR0ZXJuIHRvIHVzZSBub24tZGlzbWlzc2libGUgTW9kYWwgKi9cbiAgaXNEaXNtaXNzaWJsZT86IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtbGFiZWxcIj86IHN0cmluZztcbiAgXCJhcmlhLWxhYmVsbGVkYnlcIj86IHN0cmluZztcbiAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI/OiBzdHJpbmc7XG59O1xuXG50eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIC8qKiBBc3BlY3QgcmF0aW8gMTY6OSAqL1xuICAgICAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gICAgICBJbWFnZUNvbXBvbmVudD86IG5ldmVyO1xuICAgIH1cbiAgfCB7XG4gICAgICBpbWFnZVVybD86IG5ldmVyO1xuICAgICAgLyoqIEFjY2VwdCByYXRpbyAxNjo5ICovXG4gICAgICBJbWFnZUNvbXBvbmVudD86IFJlYWN0LkVsZW1lbnRUeXBlPGFueT47XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgTW9kYWxQcm9wcyA9IEJhc2VQcm9wcyAmXG4gIENvbmRpdGlvbmFsUHJvcHMgJlxuICBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi51c2VSZXNwb25zaXZlVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIGhlaWdodDogW1xuICAgICAgICAgIHNpemUgPT09IFwibFwiIHx8IGlzRnVsbFNjcmVlbiA/IGZ1bGxTY3JlZW5Nb2JpbGUgOiBcImF1dG9cIixcbiAgICAgICAgICBnZXREZXNrdG9wSGVpZ2h0KCksXG4gICAgICAgIF0sXG4gICAgICAgIG1heEhlaWdodDogW2Z1bGxTY3JlZW5Nb2JpbGUsIGdldERlc2t0b3BNYXhIZWlnaHQoKV0sXG4gICAgICB9KSxcblxuICAgICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQm9keVByb3BzID0ge1xuICBib3JkZXJCb3R0b206IGJvb2xlYW47XG4gIGJvcmRlclRvcDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZEJvZHkgPSBzdHlsZWQuZGl2PFN0eWxlZEJvZHlQcm9wcyAmIFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgYm9yZGVyQm90dG9tLCBib3JkZXJUb3AsIHNpemUsIGlzRnVsbFNjcmVlbiB9KSA9PiAoe1xuICAgIG92ZXJmbG93WTogXCJhdXRvXCIsXG4gICAgbWF4SGVpZ2h0OiBcIjEwMCVcIixcblxuICAgIC4uLigoaXNGdWxsU2NyZWVuIHx8IHNpemUgPT09IFwibFwiKSAmJiB7XG4gICAgICBmbGV4OiAxLFxuICAgIH0pLFxuXG4gICAgLi4uKGJvcmRlckJvdHRvbSAmJiB7XG4gICAgICBib3JkZXJCb3R0b206IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gICAgLi4uKGJvcmRlclRvcCAmJiB7XG4gICAgICBib3JkZXJUb3A6IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRJbWcgPSBzdHlsZWQuaW1nKCgpID0+ICh7XG4gIHdpZHRoOiBcIjEwMCVcIixcbiAgYXNwZWN0UmF0aW86IFwiMTYvOVwiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRNYXhXaWR0aCA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oKHsgdGhlbWUgfSkgPT4gKHtcbiAgbWF4V2lkdGg6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5mdWxsU2NyZWVuQ29udGVudFdpZHRoLFxuICBtYXJnaW46IFwiMCBhdXRvXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFhDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGJhY2tkcm9wUmVmLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICBiYWNrZHJvcFJlZjogUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3AgcmVmPXtiYWNrZHJvcFJlZn0+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxudHlwZSBGb2N1c1RyYXBQcm9wcyA9IHtcbiAgb25Qb3N0RGVhY3RpdmF0ZTogKCkgPT4gdm9pZDtcbiAgYmFja2Ryb3BSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG59ICYgUGljazxNb2RhbFByb3BzLCBcImlzRGlzbWlzc2libGVcIiB8IFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5mdW5jdGlvbiBGb2N1c1RyYXAoe1xuICBvblBvc3REZWFjdGl2YXRlLFxuICBpc0Rpc21pc3NpYmxlLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGNoaWxkcmVuLFxuICBiYWNrZHJvcFJlZixcbn06IFByb3BzV2l0aENoaWxkcmVuPEZvY3VzVHJhcFByb3BzPikge1xuICBjb25zdCBwb3J0YWxDb250YWluZXJFbGVtZW50ID0gdXNlUG9ydGFsQ29udGFpbmVyRWxlbWVudChwb3J0YWxDb250YWluZXIpO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzID0gKGV2dDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHtcbiAgICAvLyBEbyBub3QgY2xvc2Ugb24gY2xpY2sgdGhhdCBvY2N1cnMgb24gZWxlbWVudHMgd2l0aGluIHRoZSBzYW1lIHBvcnRhbCwgZm9yIGVnLCBkcm9wZG93biBhbmQgc2VsZWN0IG1lbnVzXG4gICAgaWYgKFxuICAgICAgcG9ydGFsQ29udGFpbmVyRWxlbWVudC5jb250YWlucyhldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAmJlxuICAgICAgZXZ0LnRhcmdldCAhPT0gYmFja2Ryb3BSZWYuY3VycmVudFxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNEaXNtaXNzaWJsZTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxGb2N1c1RyYXBXcmFwcGVyXG4gICAgICBhY3RpdmVcbiAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzLFxuICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWUsXG4gICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIk1vZGFsXCJdYCxcbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1sYWJlbFwiOiBhcmlhTGFiZWwsXG4gIFwiYXJpYS1sYWJlbGxlZGJ5XCI6IGFyaWFMYWJlbGxlZEJ5LFxuICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHN1YkhlYWRlcklkID0gdXNlSWQoKTtcblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICgpID0+IHtcbiAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgfTtcblxuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyXG4gICAgICBza2lwUG9ydGFsPXtza2lwUG9ydGFsfVxuICAgICAgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9XG4gICAgICBiYWNrZHJvcFJlZj17YmFja2Ryb3BSZWZ9XG4gICAgPlxuICAgICAgPEZvY3VzVHJhcFxuICAgICAgICBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn1cbiAgICAgICAgaXNEaXNtaXNzaWJsZT17aXNEaXNtaXNzaWJsZX1cbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgIGJhY2tkcm9wUmVmPXtiYWNrZHJvcFJlZn1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWwgfHwgaGVhZGVyfVxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17YXJpYUxhYmVsbGVkQnl9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17XG4gICAgICAgICAgICBzdWJIZWFkZXIgPyBhcHBlbmRJZChhcmlhRGVzY3JpYmVkQnksIHN1YkhlYWRlcklkKSA6IGFyaWFEZXNjcmliZWRCeVxuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxDb250YWluZXIgZWxldmF0aW9uPXs0fT5cbiAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgICAge2hhc0ltYWdlICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT17W1wieGxcIiwgXCJsXCJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwieHhzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDYgYXM9XCJkaXZcIj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInplcm9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDIgYXM9XCJoMVwiPntoZWFkZXJ9PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCBhcz1cImgyXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiIGlkPXtzdWJIZWFkZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0g0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAge2lzRGlzbWlzc2libGUgJiYgPEJ1dHRvbkNsb3NlIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgICByZWY9e3Njcm9sbGFibGVSZWZ9XG4gICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b209e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxCb3R0b219XG4gICAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9XCJ4eHhzXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfSBoZWlnaHQ9XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L1N0eWxlZEJvZHk+XG5cbiAgICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICA8Rm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRhcnlCdXR0b249e3NlY29uZGFyeUJ1dHRvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICAgIDwvRm9jdXNUcmFwPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuU3RhY2sgPSBNb2RhbFN0YWNrO1xuTW9kYWwuVGV4dCA9IE1vZGFsVGV4dDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrTmtCIn0= */"),StyledMaxWidth=styled("div",{target:"e15xousc5",label:"StyledMaxWidth"})(({theme})=>({maxWidth:theme.variables.size.dimension.modal.fullScreenContentWidth,margin:"0 auto",height:"100%"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlTWVtbywgdXNlUmVmLCB1c2VJZCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHsgUG9ydGFsLCB1c2VQb3J0YWxDb250YWluZXJFbGVtZW50IH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IEgyLCBINCwgSDYgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9IZWFkZXIvSGVhZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN0YWNrUHJvcHMgfSBmcm9tIFwiLi4vLi4vU3RhY2svU3RhY2tcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vQ29udGFpbmVyL0NvbnRhaW5lclwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcblxuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uLy4uL0lubGluZS9JbmxpbmVcIjtcbmltcG9ydCB0eXBlIHsgQnV0dG9uR3JvdXBCdXR0b25Qcm9wcyB9IGZyb20gXCIuLi9CdXR0b25Hcm91cC9CdXR0b25Hcm91cFwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXAgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IFBpY3RvZ3JhbUJ1dHRvbiB9IGZyb20gXCIuLi8uLi9QaWN0b2dyYW1CdXR0b24vUGljdG9ncmFtQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IFRleHRQcm9wcyB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgdXNlUmVzcG9uc2l2ZVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9tZWRpYVF1ZXJpZXNcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCB7IGFwcGVuZElkIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9hcHBlbmRJZFwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IHtcbiAgaGVhZGVyPzogc3RyaW5nO1xuICBvbkFjdGlvbj86IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbiAgcHJpdmF0ZVByb3BzPzogeyBza2lwUG9ydGFsPzogYm9vbGVhbiB9O1xuICAvKiogSXQncyBhIGJhZCBwYXR0ZXJuIHRvIHVzZSBub24tZGlzbWlzc2libGUgTW9kYWwgKi9cbiAgaXNEaXNtaXNzaWJsZT86IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtbGFiZWxcIj86IHN0cmluZztcbiAgXCJhcmlhLWxhYmVsbGVkYnlcIj86IHN0cmluZztcbiAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI/OiBzdHJpbmc7XG59O1xuXG50eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIC8qKiBBc3BlY3QgcmF0aW8gMTY6OSAqL1xuICAgICAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gICAgICBJbWFnZUNvbXBvbmVudD86IG5ldmVyO1xuICAgIH1cbiAgfCB7XG4gICAgICBpbWFnZVVybD86IG5ldmVyO1xuICAgICAgLyoqIEFjY2VwdCByYXRpbyAxNjo5ICovXG4gICAgICBJbWFnZUNvbXBvbmVudD86IFJlYWN0LkVsZW1lbnRUeXBlPGFueT47XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgTW9kYWxQcm9wcyA9IEJhc2VQcm9wcyAmXG4gIENvbmRpdGlvbmFsUHJvcHMgJlxuICBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi51c2VSZXNwb25zaXZlVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIGhlaWdodDogW1xuICAgICAgICAgIHNpemUgPT09IFwibFwiIHx8IGlzRnVsbFNjcmVlbiA/IGZ1bGxTY3JlZW5Nb2JpbGUgOiBcImF1dG9cIixcbiAgICAgICAgICBnZXREZXNrdG9wSGVpZ2h0KCksXG4gICAgICAgIF0sXG4gICAgICAgIG1heEhlaWdodDogW2Z1bGxTY3JlZW5Nb2JpbGUsIGdldERlc2t0b3BNYXhIZWlnaHQoKV0sXG4gICAgICB9KSxcblxuICAgICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQm9keVByb3BzID0ge1xuICBib3JkZXJCb3R0b206IGJvb2xlYW47XG4gIGJvcmRlclRvcDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZEJvZHkgPSBzdHlsZWQuZGl2PFN0eWxlZEJvZHlQcm9wcyAmIFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgYm9yZGVyQm90dG9tLCBib3JkZXJUb3AsIHNpemUsIGlzRnVsbFNjcmVlbiB9KSA9PiAoe1xuICAgIG92ZXJmbG93WTogXCJhdXRvXCIsXG4gICAgbWF4SGVpZ2h0OiBcIjEwMCVcIixcblxuICAgIC4uLigoaXNGdWxsU2NyZWVuIHx8IHNpemUgPT09IFwibFwiKSAmJiB7XG4gICAgICBmbGV4OiAxLFxuICAgIH0pLFxuXG4gICAgLi4uKGJvcmRlckJvdHRvbSAmJiB7XG4gICAgICBib3JkZXJCb3R0b206IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gICAgLi4uKGJvcmRlclRvcCAmJiB7XG4gICAgICBib3JkZXJUb3A6IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRJbWcgPSBzdHlsZWQuaW1nKCgpID0+ICh7XG4gIHdpZHRoOiBcIjEwMCVcIixcbiAgYXNwZWN0UmF0aW86IFwiMTYvOVwiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRNYXhXaWR0aCA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oKHsgdGhlbWUgfSkgPT4gKHtcbiAgbWF4V2lkdGg6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5mdWxsU2NyZWVuQ29udGVudFdpZHRoLFxuICBtYXJnaW46IFwiMCBhdXRvXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFhDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGJhY2tkcm9wUmVmLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICBiYWNrZHJvcFJlZjogUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3AgcmVmPXtiYWNrZHJvcFJlZn0+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxudHlwZSBGb2N1c1RyYXBQcm9wcyA9IHtcbiAgb25Qb3N0RGVhY3RpdmF0ZTogKCkgPT4gdm9pZDtcbiAgYmFja2Ryb3BSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG59ICYgUGljazxNb2RhbFByb3BzLCBcImlzRGlzbWlzc2libGVcIiB8IFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5mdW5jdGlvbiBGb2N1c1RyYXAoe1xuICBvblBvc3REZWFjdGl2YXRlLFxuICBpc0Rpc21pc3NpYmxlLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGNoaWxkcmVuLFxuICBiYWNrZHJvcFJlZixcbn06IFByb3BzV2l0aENoaWxkcmVuPEZvY3VzVHJhcFByb3BzPikge1xuICBjb25zdCBwb3J0YWxDb250YWluZXJFbGVtZW50ID0gdXNlUG9ydGFsQ29udGFpbmVyRWxlbWVudChwb3J0YWxDb250YWluZXIpO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzID0gKGV2dDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHtcbiAgICAvLyBEbyBub3QgY2xvc2Ugb24gY2xpY2sgdGhhdCBvY2N1cnMgb24gZWxlbWVudHMgd2l0aGluIHRoZSBzYW1lIHBvcnRhbCwgZm9yIGVnLCBkcm9wZG93biBhbmQgc2VsZWN0IG1lbnVzXG4gICAgaWYgKFxuICAgICAgcG9ydGFsQ29udGFpbmVyRWxlbWVudC5jb250YWlucyhldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAmJlxuICAgICAgZXZ0LnRhcmdldCAhPT0gYmFja2Ryb3BSZWYuY3VycmVudFxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNEaXNtaXNzaWJsZTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxGb2N1c1RyYXBXcmFwcGVyXG4gICAgICBhY3RpdmVcbiAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzLFxuICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWUsXG4gICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIk1vZGFsXCJdYCxcbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1sYWJlbFwiOiBhcmlhTGFiZWwsXG4gIFwiYXJpYS1sYWJlbGxlZGJ5XCI6IGFyaWFMYWJlbGxlZEJ5LFxuICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHN1YkhlYWRlcklkID0gdXNlSWQoKTtcblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICgpID0+IHtcbiAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgfTtcblxuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyXG4gICAgICBza2lwUG9ydGFsPXtza2lwUG9ydGFsfVxuICAgICAgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9XG4gICAgICBiYWNrZHJvcFJlZj17YmFja2Ryb3BSZWZ9XG4gICAgPlxuICAgICAgPEZvY3VzVHJhcFxuICAgICAgICBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn1cbiAgICAgICAgaXNEaXNtaXNzaWJsZT17aXNEaXNtaXNzaWJsZX1cbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgIGJhY2tkcm9wUmVmPXtiYWNrZHJvcFJlZn1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWwgfHwgaGVhZGVyfVxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17YXJpYUxhYmVsbGVkQnl9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17XG4gICAgICAgICAgICBzdWJIZWFkZXIgPyBhcHBlbmRJZChhcmlhRGVzY3JpYmVkQnksIHN1YkhlYWRlcklkKSA6IGFyaWFEZXNjcmliZWRCeVxuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxDb250YWluZXIgZWxldmF0aW9uPXs0fT5cbiAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgICAge2hhc0ltYWdlICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT17W1wieGxcIiwgXCJsXCJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwieHhzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDYgYXM9XCJkaXZcIj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInplcm9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDIgYXM9XCJoMVwiPntoZWFkZXJ9PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCBhcz1cImgyXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiIGlkPXtzdWJIZWFkZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0g0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAge2lzRGlzbWlzc2libGUgJiYgPEJ1dHRvbkNsb3NlIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgICByZWY9e3Njcm9sbGFibGVSZWZ9XG4gICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b209e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxCb3R0b219XG4gICAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9XCJ4eHhzXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfSBoZWlnaHQ9XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L1N0eWxlZEJvZHk+XG5cbiAgICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICA8Rm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRhcnlCdXR0b249e3NlY29uZGFyeUJ1dHRvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICAgIDwvRm9jdXNUcmFwPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuU3RhY2sgPSBNb2RhbFN0YWNrO1xuTW9kYWwuVGV4dCA9IE1vZGFsVGV4dDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1TnVCIn0= */"),StyledXContainer=styled("div",{target:"e15xousc6",label:"StyledXContainer"})(({theme})=>({position:"absolute",...useResponsiveValue({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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvUGF0dGVybnMvTW9kYWwvTW9kYWwudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9QYXR0ZXJucy9Nb2RhbC9Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlTWVtbywgdXNlUmVmLCB1c2VJZCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHsgUG9ydGFsLCB1c2VQb3J0YWxDb250YWluZXJFbGVtZW50IH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IEgyLCBINCwgSDYgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9IZWFkZXIvSGVhZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN0YWNrUHJvcHMgfSBmcm9tIFwiLi4vLi4vU3RhY2svU3RhY2tcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tIFwiLi4vLi4vQ29udGFpbmVyL0NvbnRhaW5lclwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcblxuaW1wb3J0IHsgSW5saW5lIH0gZnJvbSBcIi4uLy4uL0lubGluZS9JbmxpbmVcIjtcbmltcG9ydCB0eXBlIHsgQnV0dG9uR3JvdXBCdXR0b25Qcm9wcyB9IGZyb20gXCIuLi9CdXR0b25Hcm91cC9CdXR0b25Hcm91cFwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXAgfSBmcm9tIFwiLi4vQnV0dG9uR3JvdXAvQnV0dG9uR3JvdXBcIjtcbmltcG9ydCB7IFBpY3RvZ3JhbUJ1dHRvbiB9IGZyb20gXCIuLi8uLi9QaWN0b2dyYW1CdXR0b24vUGljdG9ncmFtQnV0dG9uXCI7XG5pbXBvcnQgdHlwZSB7IFRleHRQcm9wcyB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgdXNlUmVzcG9uc2l2ZVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9tZWRpYVF1ZXJpZXNcIjtcbmltcG9ydCB7IHVzZVNjcm9sbERldGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvdXNlU2Nyb2xsRGV0ZWN0aW9uXCI7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQgfSBmcm9tIFwiLi9Nb2RhbENvbnRleHRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCB7IGFwcGVuZElkIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9hcHBlbmRJZFwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IHtcbiAgaGVhZGVyPzogc3RyaW5nO1xuICBvbkFjdGlvbj86IChhY3Rpb246IFwiY2FuY2VsXCIgfCBcImFjdGlvblwiKSA9PiB2b2lkO1xuICByb2xlPzogXCJkaWFsb2dcIiB8IFwiYWxlcnRkaWFsb2dcIjtcbiAgbGFiZWxIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUaGUgYmxhY2sgY29sb3IgaXMgZ29pbmcgdG8gYmUgcmVwbGFjZWQgd2l0aCBncmF5IG9uZSAqL1xuICBzdWJIZWFkZXI/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGFuZCBvdGhlciBwcm9wcyBmb3IgYWN0aW9uIEJ1dHRvbiAqL1xuICBhY3Rpb25CdXR0b24/OiBCdXR0b25Hcm91cEJ1dHRvblByb3BzO1xuICAvKiogVGV4dCBhbmQgb3RoZXIgcHJvcHMgZm9yIGFjdGlvbiBCdXR0b24gKi9cbiAgc2Vjb25kYXJ5QnV0dG9uPzogQnV0dG9uR3JvdXBCdXR0b25Qcm9wcztcbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBzZWNvbmRhcnlCdXR0b24gdG8gcGFzcyBpbiB0ZXh0IGFuZCBvdGhlciBwcm9wcyBmb3Igc2Vjb25kYXJ5IGJ1dHRvbiAqL1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgLyoqIEFpbSB0byB1c2UgPE1vZGFsLlRleHQ+IGFuZCA8TW9kYWwuU3RhY2s+ICovXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbiAgcHJpdmF0ZVByb3BzPzogeyBza2lwUG9ydGFsPzogYm9vbGVhbiB9O1xuICAvKiogSXQncyBhIGJhZCBwYXR0ZXJuIHRvIHVzZSBub24tZGlzbWlzc2libGUgTW9kYWwgKi9cbiAgaXNEaXNtaXNzaWJsZT86IGJvb2xlYW47XG4gIGlzRnVsbFNjcmVlbj86IGJvb2xlYW47XG4gIGlzTWF4V2lkdGhMaW1pdD86IGJvb2xlYW47XG4gIHNpemU/OiBcIm1cIiB8IFwibFwiO1xuICBcImFyaWEtbGFiZWxcIj86IHN0cmluZztcbiAgXCJhcmlhLWxhYmVsbGVkYnlcIj86IHN0cmluZztcbiAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI/OiBzdHJpbmc7XG59O1xuXG50eXBlIENvbmRpdGlvbmFsUHJvcHMgPVxuICB8IHtcbiAgICAgIC8qKiBBc3BlY3QgcmF0aW8gMTY6OSAqL1xuICAgICAgaW1hZ2VVcmw/OiBzdHJpbmc7XG4gICAgICBJbWFnZUNvbXBvbmVudD86IG5ldmVyO1xuICAgIH1cbiAgfCB7XG4gICAgICBpbWFnZVVybD86IG5ldmVyO1xuICAgICAgLyoqIEFjY2VwdCByYXRpbyAxNjo5ICovXG4gICAgICBJbWFnZUNvbXBvbmVudD86IFJlYWN0LkVsZW1lbnRUeXBlPGFueT47XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgTW9kYWxQcm9wcyA9IEJhc2VQcm9wcyAmXG4gIENvbmRpdGlvbmFsUHJvcHMgJlxuICBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjxQYXJ0aWFsPEJhc2VQcm9wcz4+KCh7IHRoZW1lIH0pID0+IHtcbiAgY29uc3QgZmFkZUluQmFja2Ryb3AgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBrZXlmcmFtZXNgXG4gICAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogJHt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW59O1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgfVxuICAgIGAsXG4gICAgW3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbiwgdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZV1cbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgIHRvcDogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICBoZWlnaHQ6IFwiMTAwZHZoXCIsXG4gICAgYmFja2dyb3VuZDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuYmFja2Ryb3AuZGVmYXVsdCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxleDogXCIxIDAgYXV0b1wiLFxuICAgIGFuaW1hdGlvbjogYCR7ZmFkZUluQmFja2Ryb3B9ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbEJhY2tkcm9wLm9wZW4udGltaW5nRnVuY3Rpb259IGJvdGhgLFxuICB9O1xufSk7XG5cbmNvbnN0IG1vYmlsZVNpemUgPSBcIm1cIjtcbmNvbnN0IGRlc2t0b3BTaXplID0gXCJ4bFwiO1xuY29uc3QgZ2V0RGVza3RvcFNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5sO1xuY29uc3QgZ2V0RGVza3RvcElubmVyU3BhY2UgPSAodGhlbWU6IFRoZW1lKSA9PlxuICB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nW2Rlc2t0b3BTaXplXTtcbmNvbnN0IGdldE1vYmlsZVNwYWNlID0gKHRoZW1lOiBUaGVtZSkgPT4gdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5tO1xuY29uc3QgZ2V0TW9iaWxlSW5uZXJTcGFjZSA9ICh0aGVtZTogVGhlbWUpID0+XG4gIHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmdbbW9iaWxlU2l6ZV07XG5cbmNvbnN0IFN0eWxlZE1vZGFsV3JhcHBlciA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oXG4gICh7IHRoZW1lLCBpc0Z1bGxTY3JlZW4sIHNpemUgfSkgPT4ge1xuICAgIGNvbnN0IGZhZGVJbk1vZGFsID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGtleWZyYW1lc2BcbiAgICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LmhpZGRlbn07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICBvcGFjaXR5OiAke3RoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGV9O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgYCxcbiAgICAgIFt0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sIHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGVdXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgYW5pbWF0aW9uOiBgJHtmYWRlSW5Nb2RhbH0gJHt0aGVtZS52YXJpYWJsZXMuYW5pbWF0aW9uLm1vZGFsLm9wZW4uZHVyYXRpb259ICR7dGhlbWUudmFyaWFibGVzLmFuaW1hdGlvbi5tb2RhbC5vcGVuLmRlbGF5fSAke3RoZW1lLnZhcmlhYmxlcy5hbmltYXRpb24ubW9kYWwub3Blbi50aW1pbmdGdW5jdGlvbn0gYm90aGAsXG4gICAgICAuLi51c2VSZXNwb25zaXZlVmFsdWUoe1xuICAgICAgICB3aWR0aDogW1xuICAgICAgICAgIGBjYWxjKDEwMCUgLSAke2dldE1vYmlsZVNwYWNlKHRoZW1lKX0gKiAyKWAsXG4gICAgICAgICAgaXNGdWxsU2NyZWVuXG4gICAgICAgICAgICA/IGBjYWxjKDEwMCUgLSAke2dldERlc2t0b3BTcGFjZSh0aGVtZSl9ICogMilgXG4gICAgICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC53aWR0aFtzaXplXSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZElubmVyID0gc3R5bGVkLmRpdjxQYXJ0aWFsPE1vZGFsUHJvcHM+PihcbiAgKHsgdGhlbWUsIGlzRnVsbFNjcmVlbiwgc2l6ZSB9KSA9PiB7XG4gICAgY29uc3QgbW9iaWxlVmVydGljYWxTcGFjZSA9IGdldE1vYmlsZVNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBtb2JpbGVJbm5lclZlcnRpY2FsU3BhY2UgPSBnZXRNb2JpbGVJbm5lclNwYWNlKHRoZW1lKTtcbiAgICBjb25zdCBkZXNrdG9wVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BTcGFjZSh0aGVtZSk7XG4gICAgY29uc3QgZGVza3RvcElubmVyVmVydGljYWxTcGFjZSA9IGdldERlc2t0b3BJbm5lclNwYWNlKHRoZW1lKTtcblxuICAgIC8vIGZ1bGxzY3JlZW4gYW5kIEwgc2l6ZSBkb24ndCBkZXBlbmQgb24gY29udGVudCBzaXplXG4gICAgLy8gTCBzaXplIGhlaWdodCBoYXMgbWF4SGllZ2h0IHJlc2l6ZSB1bnRpbCA4MDBweFxuICAgIC8vIGZ1bGxzY3JlZW4gbWF4SGVpZ2h0IGlzIG5vdCBsaW1pdGVkXG4gICAgLy8gTSBzaXplIGhlaWdodCBoYXMgY29udGVudCBzaXplIGFuZCBjZW50ZXJlZCBhdCB0b3AgYW5kIG1heEhlaWdodCBpcyBub3QgbGltaXRlZFxuXG4gICAgY29uc3QgZ2V0RGVza3RvcEhlaWdodCA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Z1bGxTY3JlZW4pIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgICB9XG4gICAgICBpZiAoc2l6ZSA9PT0gXCJsXCIpIHtcbiAgICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyIC0gJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5kaW1lbnNpb24ubW9kYWwubWFyZ2luLmx9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFwiYXV0b1wiO1xuICAgIH07XG5cbiAgICBjb25zdCBnZXREZXNrdG9wTWF4SGVpZ2h0ID0gKCkgPT4ge1xuICAgICAgaWYgKGlzRnVsbFNjcmVlbikge1xuICAgICAgICByZXR1cm4gYGF1dG9gO1xuICAgICAgfVxuICAgICAgaWYgKHNpemUgPT09IFwibFwiKSB7XG4gICAgICAgIHJldHVybiBgY2FsYygke3RoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5tYXhIZWlnaHQubH0gLSAke2Rlc2t0b3BJbm5lclZlcnRpY2FsU3BhY2V9ICogMilgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGBjYWxjKDEwMGR2aCAtICR7ZGVza3RvcFZlcnRpY2FsU3BhY2V9ICogMiAtICR7ZGVza3RvcElubmVyVmVydGljYWxTcGFjZX0gKiAyKWA7XG4gICAgfTtcblxuICAgIGNvbnN0IGZ1bGxTY3JlZW5Nb2JpbGUgPSBgY2FsYygxMDBkdmggLSAke21vYmlsZVZlcnRpY2FsU3BhY2V9ICogMiAtICR7bW9iaWxlSW5uZXJWZXJ0aWNhbFNwYWNlfSAqIDIpYDtcblxuICAgIHJldHVybiB7XG4gICAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICAgIGhlaWdodDogW1xuICAgICAgICAgIHNpemUgPT09IFwibFwiIHx8IGlzRnVsbFNjcmVlbiA/IGZ1bGxTY3JlZW5Nb2JpbGUgOiBcImF1dG9cIixcbiAgICAgICAgICBnZXREZXNrdG9wSGVpZ2h0KCksXG4gICAgICAgIF0sXG4gICAgICAgIG1heEhlaWdodDogW2Z1bGxTY3JlZW5Nb2JpbGUsIGdldERlc2t0b3BNYXhIZWlnaHQoKV0sXG4gICAgICB9KSxcblxuICAgICAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQm9keVByb3BzID0ge1xuICBib3JkZXJCb3R0b206IGJvb2xlYW47XG4gIGJvcmRlclRvcDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZEJvZHkgPSBzdHlsZWQuZGl2PFN0eWxlZEJvZHlQcm9wcyAmIFBhcnRpYWw8TW9kYWxQcm9wcz4+KFxuICAoeyB0aGVtZSwgYm9yZGVyQm90dG9tLCBib3JkZXJUb3AsIHNpemUsIGlzRnVsbFNjcmVlbiB9KSA9PiAoe1xuICAgIG92ZXJmbG93WTogXCJhdXRvXCIsXG4gICAgbWF4SGVpZ2h0OiBcIjEwMCVcIixcblxuICAgIC4uLigoaXNGdWxsU2NyZWVuIHx8IHNpemUgPT09IFwibFwiKSAmJiB7XG4gICAgICBmbGV4OiAxLFxuICAgIH0pLFxuXG4gICAgLi4uKGJvcmRlckJvdHRvbSAmJiB7XG4gICAgICBib3JkZXJCb3R0b206IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gICAgLi4uKGJvcmRlclRvcCAmJiB7XG4gICAgICBib3JkZXJUb3A6IGAxcHggc29saWQgJHt0aGVtZS52YWx1ZXMuY29sb3IuZGl2aWRlci5wcmltYXJ5fWAsXG4gICAgfSksXG4gIH0pXG4pO1xuXG5jb25zdCBTdHlsZWRJbWcgPSBzdHlsZWQuaW1nKCgpID0+ICh7XG4gIHdpZHRoOiBcIjEwMCVcIixcbiAgYXNwZWN0UmF0aW86IFwiMTYvOVwiLFxufSkpO1xuXG5jb25zdCBTdHlsZWRNYXhXaWR0aCA9IHN0eWxlZC5kaXY8UGFydGlhbDxNb2RhbFByb3BzPj4oKHsgdGhlbWUgfSkgPT4gKHtcbiAgbWF4V2lkdGg6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmRpbWVuc2lvbi5tb2RhbC5mdWxsU2NyZWVuQ29udGVudFdpZHRoLFxuICBtYXJnaW46IFwiMCBhdXRvXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFhDb250YWluZXIgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XG4gIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgdG9wOiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICAgIHJpZ2h0OiBbdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zLCB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLmxdLFxuICB9KSxcbn0pKTtcblxuY29uc3QgTW9kYWxTdGFjayA9ICh7IGNoaWxkcmVuLCAuLi5yZXN0IH06IE9taXQ8U3RhY2tQcm9wcywgXCJzcGFjZVwiPikgPT4gKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICA8U3RhY2sgey4uLnJlc3R9IHNwYWNlPVwibVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdGFjaz5cbik7XG5cbmNvbnN0IE1vZGFsVGV4dCA9ICh7XG4gIGNoaWxkcmVuLFxuICAuLi5yZXN0XG59OiBPbWl0PFRleHRQcm9wcywgXCJzaXplXCIgfCBcInZhcmlhbnRcIj4pID0+IChcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgPFRleHQgey4uLnJlc3R9IHNpemU9XCJtXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9UZXh0PlxuKTtcblxuY29uc3QgRm9vdGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIGFsaWduSXRlbXMgPSBbXCJzdHJldGNoXCIsIFwicmlnaHRcIl0sXG59OiB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGVbXSB8IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgYWxpZ25JdGVtcz86IFN0YWNrUHJvcHNbXCJhbGlnbkl0ZW1zXCJdO1xufSkgPT4gKFxuICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cImxcIj5cbiAgICA8U3RhY2sgYWxpZ25JdGVtcz17YWxpZ25JdGVtc30+e2NoaWxkcmVufTwvU3RhY2s+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgV3JhcHBlciA9ICh7XG4gIHNraXBQb3J0YWwsXG4gIGNoaWxkcmVuLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGJhY2tkcm9wUmVmLFxufToge1xuICBza2lwUG9ydGFsOiBib29sZWFuO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3RFbGVtZW50O1xuICBiYWNrZHJvcFJlZjogUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn0gJiBQYXJ0aWFsPE1vZGFsUHJvcHM+KTogUmVhY3QuUmVhY3RFbGVtZW50ID0+XG4gIHNraXBQb3J0YWwgPyAoXG4gICAgPD57Y2hpbGRyZW59PC8+XG4gICkgOiAoXG4gICAgPE1vZGFsQ29udGV4dC5Qcm92aWRlciB2YWx1ZT5cbiAgICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PlxuICAgICAgICA8U3R5bGVkQmFja2Ryb3AgcmVmPXtiYWNrZHJvcFJlZn0+e2NoaWxkcmVufTwvU3R5bGVkQmFja2Ryb3A+XG4gICAgICA8L1BvcnRhbD5cbiAgICA8L01vZGFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcblxudHlwZSBGb2N1c1RyYXBQcm9wcyA9IHtcbiAgb25Qb3N0RGVhY3RpdmF0ZTogKCkgPT4gdm9pZDtcbiAgYmFja2Ryb3BSZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG59ICYgUGljazxNb2RhbFByb3BzLCBcImlzRGlzbWlzc2libGVcIiB8IFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5mdW5jdGlvbiBGb2N1c1RyYXAoe1xuICBvblBvc3REZWFjdGl2YXRlLFxuICBpc0Rpc21pc3NpYmxlLFxuICBwb3J0YWxDb250YWluZXIsXG4gIGNoaWxkcmVuLFxuICBiYWNrZHJvcFJlZixcbn06IFByb3BzV2l0aENoaWxkcmVuPEZvY3VzVHJhcFByb3BzPikge1xuICBjb25zdCBwb3J0YWxDb250YWluZXJFbGVtZW50ID0gdXNlUG9ydGFsQ29udGFpbmVyRWxlbWVudChwb3J0YWxDb250YWluZXIpO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzID0gKGV2dDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHtcbiAgICAvLyBEbyBub3QgY2xvc2Ugb24gY2xpY2sgdGhhdCBvY2N1cnMgb24gZWxlbWVudHMgd2l0aGluIHRoZSBzYW1lIHBvcnRhbCwgZm9yIGVnLCBkcm9wZG93biBhbmQgc2VsZWN0IG1lbnVzXG4gICAgaWYgKFxuICAgICAgcG9ydGFsQ29udGFpbmVyRWxlbWVudC5jb250YWlucyhldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAmJlxuICAgICAgZXZ0LnRhcmdldCAhPT0gYmFja2Ryb3BSZWYuY3VycmVudFxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNEaXNtaXNzaWJsZTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxGb2N1c1RyYXBXcmFwcGVyXG4gICAgICBhY3RpdmVcbiAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzLFxuICAgICAgICBlc2NhcGVEZWFjdGl2YXRlczogaXNEaXNtaXNzaWJsZSwgLy8gZGUtYWN0aXZhdGUgZm9jdXMgdHJhcCBvbiBlc2NhcGUga2V5XG4gICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWUsXG4gICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIk1vZGFsXCJdYCxcbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgQnV0dG9uQ2xvc2UgPSAoeyBvbkNsaWNrIH06IHsgb25DbGljazogUmVhY3QuUmVhY3RFdmVudEhhbmRsZXIgfSkgPT4gKFxuICA8U3R5bGVkWENvbnRhaW5lcj5cbiAgICA8UGljdG9ncmFtQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGljb249XCJ4XCIgc2l6ZT1cInNcIiBvbkNsaWNrPXtvbkNsaWNrfSAvPlxuICA8L1N0eWxlZFhDb250YWluZXI+XG4pO1xuXG5jb25zdCBIb3Jpem9udGFsT2Zmc2V0ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGlzRnVsbFNjcmVlbixcbiAgaXNNYXhXaWR0aExpbWl0LFxuICBoZWlnaHQsXG59OiBQYXJ0aWFsPE1vZGFsUHJvcHM+ICYgeyBoZWlnaHQ/OiBzdHJpbmcgfSkgPT4gKFxuICA8Qm94IHNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfSB2U3BhY2U9XCJ6ZXJvXCIgaGVpZ2h0PXtoZWlnaHR9PlxuICAgIHtpc0Z1bGxTY3JlZW4gJiYgaXNNYXhXaWR0aExpbWl0ID8gKFxuICAgICAgPFN0eWxlZE1heFdpZHRoPntjaGlsZHJlbn08L1N0eWxlZE1heFdpZHRoPlxuICAgICkgOiAoXG4gICAgICBjaGlsZHJlblxuICAgICl9XG4gIDwvQm94PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1vZGFsKHtcbiAgaGVhZGVyLFxuICBzdWJIZWFkZXIsXG4gIGxhYmVsSGVhZGVyLFxuICBjaGlsZHJlbixcbiAgaW1hZ2VVcmwsXG4gIEltYWdlQ29tcG9uZW50LFxuICBzZWNvbmRhcnlCdXR0b24sXG4gIGNhbmNlbEJ1dHRvbkxhYmVsLFxuICBpc0Rpc21pc3NpYmxlID0gdHJ1ZSxcbiAgaXNGdWxsU2NyZWVuLFxuICBpc01heFdpZHRoTGltaXQgPSB0cnVlLFxuICBhY3Rpb25CdXR0b24sXG4gIHJvbGUgPSBcImRpYWxvZ1wiLFxuICBvbkFjdGlvbixcbiAgc2l6ZSA9IFwibVwiLFxuICBwcml2YXRlUHJvcHM6IHsgc2tpcFBvcnRhbCB9ID0geyBza2lwUG9ydGFsOiBmYWxzZSB9LFxuICBwb3J0YWxDb250YWluZXIsXG4gIFwiYXJpYS1sYWJlbFwiOiBhcmlhTGFiZWwsXG4gIFwiYXJpYS1sYWJlbGxlZGJ5XCI6IGFyaWFMYWJlbGxlZEJ5LFxuICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IE1vZGFsUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBtb2RhbFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHN1YkhlYWRlcklkID0gdXNlSWQoKTtcblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICgpID0+IHtcbiAgICBvbkFjdGlvbihcImNhbmNlbFwiKTtcbiAgfTtcblxuICBjb25zdCB7IHNjcm9sbGFibGVSZWYsIGlzU2Nyb2xsQm90dG9tLCBpc1Njcm9sbFRvcCwgaGFzU2Nyb2xsIH0gPVxuICAgIHVzZVNjcm9sbERldGVjdGlvbigpO1xuXG4gIGNvbnN0IGhhc0ltYWdlID0gaW1hZ2VVcmwgfHwgSW1hZ2VDb21wb25lbnQ7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXRQcm9wcyA9IHsgaXNGdWxsU2NyZWVuLCBpc01heFdpZHRoTGltaXQgfTtcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVyXG4gICAgICBza2lwUG9ydGFsPXtza2lwUG9ydGFsfVxuICAgICAgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9XG4gICAgICBiYWNrZHJvcFJlZj17YmFja2Ryb3BSZWZ9XG4gICAgPlxuICAgICAgPEZvY3VzVHJhcFxuICAgICAgICBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn1cbiAgICAgICAgaXNEaXNtaXNzaWJsZT17aXNEaXNtaXNzaWJsZX1cbiAgICAgICAgb25Qb3N0RGVhY3RpdmF0ZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgIGJhY2tkcm9wUmVmPXtiYWNrZHJvcFJlZn1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZE1vZGFsV3JhcHBlclxuICAgICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgICAgcm9sZT17cm9sZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgICAgIGRhdGEtZHMtaWQ9XCJNb2RhbFwiXG4gICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWwgfHwgaGVhZGVyfVxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17YXJpYUxhYmVsbGVkQnl9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17XG4gICAgICAgICAgICBzdWJIZWFkZXIgPyBhcHBlbmRJZChhcmlhRGVzY3JpYmVkQnksIHN1YkhlYWRlcklkKSA6IGFyaWFEZXNjcmliZWRCeVxuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxDb250YWluZXIgZWxldmF0aW9uPXs0fT5cbiAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgdlNwYWNlPXtbbW9iaWxlU2l6ZSwgZGVza3RvcFNpemVdfT5cbiAgICAgICAgICAgICAgPFN0eWxlZElubmVyIGlzRnVsbFNjcmVlbj17aXNGdWxsU2NyZWVufSBzaXplPXtzaXplfT5cbiAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfT5cbiAgICAgICAgICAgICAgICAgIDxCb3ggc3BhY2U9XCJ6ZXJvXCIgYlNwYWNlPVwic1wiPlxuICAgICAgICAgICAgICAgICAgICA8U3RhY2sgc3BhY2U9e2hhc0ltYWdlID8gW1wic1wiLCBcImxcIl0gOiBcInplcm9cIn0+XG4gICAgICAgICAgICAgICAgICAgICAge2hhc0ltYWdlICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZVVybCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT17W1wieGxcIiwgXCJsXCJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbWcgc3JjPXtpbWFnZVVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDb21wb25lbnQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPElubGluZSBhbGlnbkl0ZW1zPVwic3BhY2VCZXR3ZWVuXCIgbm9XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0YWNrIHNwYWNlPVwieHhzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsYWJlbEhlYWRlciAmJiA8SDYgYXM9XCJkaXZcIj57bGFiZWxIZWFkZXJ9PC9INj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxTdGFjayBzcGFjZT1cInplcm9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDIgYXM9XCJoMVwiPntoZWFkZXJ9PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c3ViSGVhZGVyICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCBhcz1cImgyXCIgY29sb3I9XCJ0ZXJ0aWFyeVwiIGlkPXtzdWJIZWFkZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzdWJIZWFkZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0g0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3RhY2s+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICAgICAgICAgICAge2lzRGlzbWlzc2libGUgJiYgPEJ1dHRvbkNsb3NlIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgIDwvSG9yaXpvbnRhbE9mZnNldD5cblxuICAgICAgICAgICAgICAgIDxTdHlsZWRCb2R5XG4gICAgICAgICAgICAgICAgICByZWY9e3Njcm9sbGFibGVSZWZ9XG4gICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgaXNGdWxsU2NyZWVuPXtpc0Z1bGxTY3JlZW59XG4gICAgICAgICAgICAgICAgICBib3JkZXJCb3R0b209e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxCb3R0b219XG4gICAgICAgICAgICAgICAgICBib3JkZXJUb3A9e2hhc1Njcm9sbCAmJiAhaXNTY3JvbGxUb3B9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPEJveCBzcGFjZT1cInplcm9cIiB2U3BhY2U9XCJ4eHhzXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICAgICAgICAgICAgICA8SG9yaXpvbnRhbE9mZnNldCB7Li4uaG9yaXpvbnRhbE9mZnNldFByb3BzfSBoZWlnaHQ9XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICA8L1N0eWxlZEJvZHk+XG5cbiAgICAgICAgICAgICAgICB7KGFjdGlvbkJ1dHRvbiB8fCBjYW5jZWxCdXR0b25MYWJlbCB8fCBzZWNvbmRhcnlCdXR0b24pICYmIChcbiAgICAgICAgICAgICAgICAgIDxIb3Jpem9udGFsT2Zmc2V0IHsuLi5ob3Jpem9udGFsT2Zmc2V0UHJvcHN9PlxuICAgICAgICAgICAgICAgICAgICA8Rm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uQnV0dG9uPXthY3Rpb25CdXR0b259XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRhcnlCdXR0b249e3NlY29uZGFyeUJ1dHRvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ9e2NhbmNlbEJ1dHRvbkxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25CdXR0b25DbGljaz17b25BY3Rpb259XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb290ZXI+XG4gICAgICAgICAgICAgICAgICA8L0hvcml6b250YWxPZmZzZXQ+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9TdHlsZWRJbm5lcj5cbiAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgIDwvQ29udGFpbmVyPlxuICAgICAgICA8L1N0eWxlZE1vZGFsV3JhcHBlcj5cbiAgICAgIDwvRm9jdXNUcmFwPlxuICAgIDwvV3JhcHBlcj5cbiAgKTtcbn1cblxuTW9kYWwuU3RhY2sgPSBNb2RhbFN0YWNrO1xuTW9kYWwuVGV4dCA9IE1vZGFsVGV4dDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2TnlCIn0= */"),Footer=({children,alignItems=["stretch","right"]})=>React.createElement(Box,{space:"zero",tSpace:"l"},React.createElement(Stack,{alignItems:alignItems},children)),Wrapper=({skipPortal,children,portalContainer,backdropRef})=>skipPortal?React.createElement(React.Fragment,null,children):React.createElement(ModalContext.Provider,{value:!0},React.createElement(Portal,{portalContainer:portalContainer},React.createElement(StyledBackdrop,{ref:backdropRef},children)));function FocusTrap({onPostDeactivate,isDismissible,portalContainer,children,backdropRef}){let portalContainerElement=usePortalContainerElement(portalContainer);return React.createElement(FocusTrapWrapper,{active:!0,focusTrapOptions:{clickOutsideDeactivates:evt=>(!portalContainerElement.contains(evt.target)||evt.target===backdropRef.current)&&isDismissible,escapeDeactivates:isDismissible,preventScroll:!0,fallbackFocus:'[data-ds-id="Modal"]',onPostDeactivate}},children)}let ButtonClose=({onClick})=>React.createElement(StyledXContainer,null,React.createElement(PictogramButton,{variant:"tertiary",icon:"x",size:"s",onClick:onClick})),HorizontalOffset=({children,isFullScreen,isMaxWidthLimit,height})=>React.createElement(Box,{space:["m","xl"],vSpace:"zero",height:height},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="dialog",onAction,size="m",privateProps:{skipPortal}={skipPortal:!1},portalContainer,"aria-label":ariaLabel,"aria-labelledby":ariaLabelledBy,"aria-describedby":ariaDescribedBy,"data-e2e-test-id":dataE2eTestId}){let modalRef=useRef(null),backdropRef=useRef(null),subHeaderId=useId(),handleClose=()=>{onAction("cancel")},{scrollableRef,isScrollBottom,isScrollTop,hasScroll}=useScrollDetection(),hasImage=imageUrl||ImageComponent,horizontalOffsetProps={isFullScreen,isMaxWidthLimit};return React.createElement(Wrapper,{skipPortal:skipPortal,portalContainer:portalContainer,backdropRef:backdropRef},React.createElement(FocusTrap,{portalContainer:portalContainer,isDismissible:isDismissible,onPostDeactivate:handleClose,backdropRef:backdropRef},React.createElement(StyledModalWrapper,{ref:modalRef,role:role,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"Modal",isFullScreen:isFullScreen,size:size,"aria-label":ariaLabel||header,"aria-labelledby":ariaLabelledBy,"aria-describedby":subHeader?appendId(ariaDescribedBy,subHeaderId):ariaDescribedBy},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,{as:"div"},labelHeader),React.createElement(Stack,{space:"zero"},React.createElement(H2,{as:"h1"},header),subHeader&&React.createElement(H4,{as:"h2",color:"tertiary",id:subHeaderId},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",height:"100%"},React.createElement(HorizontalOffset,{...horizontalOffsetProps,height:"100%"},children))),(actionButton||cancelButtonLabel||secondaryButton)&&React.createElement(HorizontalOffset,horizontalOffsetProps,React.createElement(Footer,null,React.createElement(ButtonGroup,{actionButton:actionButton,secondaryButton:secondaryButton,cancelButtonText:cancelButtonLabel,onButtonClick:onAction})))))))))}Modal.Stack=({children,...rest})=>React.createElement(Stack,{...rest,space:"m"},children),Modal.Text=({children,...rest})=>React.createElement(Text,{...rest,size:"m",color:"tertiary"},children);
|